/* Approved visual finishing layer, 10 November 2026.
   Base: live version156. Loaded only on the three reviewed surfaces.
   Remove its link in server/appearance.js to reverse these visual changes. */

/* Each kind of action has one clear treatment. */
body .button,
body .button.cm-plain-link { text-decoration:none; border-radius:6px; box-shadow:none; }
body .button.gold,
body .button.gold.cm-plain-link {
  background:#e2c582; border:1px solid #e2c582; color:#17150f;
  font-weight:650; box-shadow:none; text-decoration:none;
}
body .button.gold:hover { background:#ecd59f; border-color:#ecd59f; }
body .button.outline,
body .button.outline.cm-plain-link {
  background:transparent; border-color:#ffffff38; color:#ece8de; text-decoration:none;
}
body .button.outline:hover { border-color:#d8c18f; background:#d8c18f08; }
body :is(.text-link,.hero-forum) { border-bottom:0; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:5px; }
body .cm-plain-link { text-decoration-thickness:1px; text-underline-offset:5px; }
body :is(.catalogue-card,.product-card,.topic-row) :is(h2,h3).cm-plain-link {
  color:#f0ede7; text-decoration:none;
}
body :is(.catalogue-card,.product-card,.topic-row):hover :is(h2,h3).cm-plain-link { color:#e6cb92; }
body :is(.button,.text-link,.topic-row):focus-visible { outline:2px solid #f0d79b; outline-offset:4px; }

/* The established phone and wide-desktop headers are retained. */
@media(min-width:761px) and (max-width:1350px) {
  body header:not(.cms-header) {
    display:grid; grid-template-columns:auto 1fr; align-items:center;
    gap:8px 24px; padding-top:15px; padding-bottom:0; height:auto;
  }
  body header:not(.cms-header)>.brand { grid-area:1 / 1; }
  body header:not(.cms-header)>.header-actions { grid-area:1 / 2; justify-content:flex-end; gap:14px; }
  body header:not(.cms-header)>nav[aria-label="Main navigation"] {
    grid-area:2 / 1 / 3 / 3; display:flex; justify-content:center;
    gap:40px; margin:0; border-top:1px solid #ffffff13; min-width:0;
  }
  body header:not(.cms-header)>nav[aria-label="Main navigation"]>a { min-height:44px; padding:12px 3px; font-size:14px; }
  body header:not(.cms-header)>nav[aria-label="Main navigation"]>a:nth-child(n+5) { display:none; }
  body header:not(.cms-header) .header-register-link { border-color:#ffffff30; }
}

/* A quieter desktop forum, with the same text, order and actions. */
.forum-workspace .topic-list { overflow:visible; }
.forum-workspace .topic-row:focus-visible { position:relative; z-index:1; }
@media(min-width:601px) {
  body:has(.forum-workspace) .workspace-bar { padding-top:5px; padding-bottom:5px; min-height:46px; }
  body:has(.forum-workspace) .workspace-bar a { border:0; background:transparent; padding:8px 4px; color:#bdbab2; text-decoration:none; }
  body:has(.forum-workspace) .workspace-bar a:hover { color:#e2c582; text-decoration:underline; text-underline-offset:4px; }
  .forum-workspace { padding-top:34px; }
  .forum-workspace .workspace-heading { align-items:center; margin-bottom:22px; padding-bottom:22px; }
  .forum-workspace .workspace-heading h1 { margin-top:10px; margin-bottom:10px; }
  .forum-workspace .workspace-heading p { margin-bottom:0; }
  .forum-workspace .forum-compose-entry {
    background:#151517; border:1px solid #ffffff1b; border-radius:8px;
    margin-bottom:18px; padding:18px 22px;
  }
  .forum-workspace .forum-compose-entry>div {
    display:grid; grid-template-columns:minmax(165px,.7fr) minmax(0,1.3fr);
    align-items:center; gap:4px 22px; width:100%;
  }
  .forum-workspace .forum-compose-entry strong { grid-column:1; font-size:15px; }
  .forum-workspace .forum-compose-prompt {
    grid-column:2; grid-row:1 / 3; margin:0; padding:14px 16px;
    min-height:48px; display:flex; align-items:center; border-radius:5px;
  }
  .forum-workspace .forum-compose-entry p { grid-column:1; font-size:12px; line-height:1.6; margin:0; }
  .forum-workspace .forum-banner {
    display:grid; grid-template-columns:100px minmax(0,1fr) auto; align-items:start;
    background:transparent; border:0; border-left:2px solid #bda063;
    border-radius:0; padding:4px 18px; margin-bottom:24px; gap:15px;
  }
  .forum-workspace .forum-banner .pin-mark { padding:0; background:none; border:0; color:#d5b87b; }
  .forum-workspace .forum-banner p { font-size:12px; line-height:1.7; margin-bottom:0; }
  .forum-workspace .forum-banner>a { font-size:12px; white-space:nowrap; }
  .forum-workspace .forum-filters { margin-top:0; gap:10px; }
  .forum-workspace .forum-filters label { font-size:12px; color:#c0bcb5; }
  .forum-workspace .forum-filters :is(input,select) { min-height:44px; border-color:#ffffff25; background:#121214; font-size:14px; }
  .forum-workspace .forum-filters .button { min-height:44px; padding:11px 20px; font-size:14px; }
  .forum-workspace .list-summary { font-size:12px; color:#b6b2a9; padding:0; margin-top:0; margin-bottom:14px; }
  .forum-workspace .topic-list { gap:9px; }
  .forum-workspace .topic-row {
    gap:15px;
    padding:20px; border:1px solid #ffffff18; border-radius:7px; background:#141416;
  }
  .forum-workspace .topic-row:hover { border-color:#bda0638c; background:#1a1917; }
  .forum-workspace .topic-open { display:none; }
  .forum-workspace .topic-avatar { width:38px; height:38px; border-radius:50%; }
  .forum-workspace .topic-row h2 { font-size:17px; line-height:1.5; letter-spacing:-.015em; margin:6px 0; }
  .forum-workspace .topic-description p { color:#aaa7a0; font-size:12px; margin-bottom:0; }
  .forum-workspace .topic-labels { font-size:10px; letter-spacing:.035em; gap:9px; }
  .forum-workspace .pinned-label { background:transparent; border:0; border-radius:0; padding:0; color:#d4b16b; }
  .forum-workspace .reply-summary strong { font-size:18px; color:#ddd5c3; font-weight:500; }
  .forum-workspace .reply-summary span { font-size:11px; }
  .forum-workspace .side-panel { background:#111113; border:1px solid #ffffff18; border-radius:8px; padding:22px 16px; }
  .forum-workspace .side-panel h2 { padding:0 10px 15px; margin-bottom:6px; border-bottom:1px solid #ffffff13; font-size:18px; }
  .forum-workspace .category-link { display:flex; align-items:center; justify-content:space-between; gap:10px; text-align:left; padding:10px; font-size:13px; border-radius:4px; }
  .forum-workspace .category-link>span:first-child { text-align:left; background:transparent; }
  .forum-workspace .category-link>.forum-category-name { background:transparent; color:inherit; }
  .forum-workspace .category-link>.forum-category-count { background:transparent; font-size:11px; color:#aaa69c; }
  .forum-workspace .category-link.selected { background:#d9b96f0d; }
}
@media(min-width:601px) and (max-width:800px) {
  .forum-workspace .workspace-heading { align-items:flex-start; }
}
@media(min-width:801px) and (max-width:1100px) {
  .forum-workspace .workspace-layout { grid-template-columns:minmax(0,1fr) 230px; gap:24px; }
}
