/* The workspace is OUR interface, not a customer's site, so it has its own
   colours rather than reading a palette. It must look the same for every client
   and stay legible whatever their site is wearing. */
:root{--ink:#16181c;--paper:#f7f7f6;--card:#fff;--muted:#666a70;--line:#e2e2e0;
  --accent:#1f5c7a;--warn:#8a5a1c;--ok:#2e6b4f;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--ink:#eceef1;--paper:#15171a;--card:#1c1f23;
  --muted:#9aa0a8;--line:#2c3036;--accent:#7fb4cd;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);
  font:16px/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.w-in{max-width:1080px;margin-inline:auto;padding-inline:clamp(16px,3vw,28px)}
main.w-in{padding-block:clamp(26px,4vw,44px) 90px}
a{color:var(--accent)}
h1{font-size:clamp(1.5rem,1.2rem + 1.4vw,2.1rem);letter-spacing:-.02em;margin:0 0 .3em}
h2{font-size:1.1rem;margin:0 0 .6em}
.w-lede{color:var(--muted);max-width:70ch;margin:0 0 1.6em}
.w-note{color:var(--muted);font-size:.9rem;max-width:76ch;margin-top:2em}
.w-empty{color:var(--muted)}

.w-top{background:var(--card);border-block-end:1px solid var(--line);position:sticky;top:0;z-index:9}
.w-top .w-in{display:flex;gap:14px 22px;align-items:center;flex-wrap:wrap;padding-block:10px}
.w-brand{font-weight:700;text-decoration:none;color:inherit;line-height:1.15}
.w-brand small{display:block;font-weight:400;font-size:9.5px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted)}
.w-top nav{display:flex;gap:2px;flex-wrap:wrap;flex:1}
.w-top nav a{text-decoration:none;color:var(--muted);padding:8px 11px;border-radius:5px;font-size:.9rem}
.w-top nav a:hover{background:var(--paper);color:var(--ink)}
.w-top nav a[aria-current]{color:var(--ink);background:var(--paper);font-weight:600}
.w-out{font-size:.85rem;color:var(--muted);text-decoration:none}

.w-cards{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));margin:26px 0}
.w-cards a{display:flex;flex-direction:column;gap:4px;background:var(--card);border:1px solid var(--line);
  border-radius:7px;padding:16px 18px;text-decoration:none;color:inherit;min-width:0}
.w-cards a:hover{border-color:var(--accent)}
.w-cards strong{font-size:1.02rem}
.w-cards span,.w-cards small{color:var(--muted);font-size:.87rem}

.w-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 22px;
  position:sticky;top:52px;background:var(--paper);padding-block:10px;z-index:8}
.w-find{display:flex;flex-direction:column;gap:3px;flex:1 1 250px;min-width:0}
.w-find span,.w-only{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.w-only{display:flex;gap:7px;align-items:center;text-transform:none;letter-spacing:0;font-size:.9rem}
input[type=search]{font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:5px;
  background:var(--card);color:var(--ink);min-height:42px;width:100%}
.w-count{color:var(--muted);font-size:.85rem}
.w-btn{font:inherit;font-size:.9rem;background:var(--accent);color:#fff;border:1px solid var(--accent);
  border-radius:5px;padding:9px 15px;min-height:42px;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center}
.w-btn:disabled{opacity:.4;cursor:not-allowed}
.w-btn.w-ghost{background:none;color:var(--accent)}
.w-btn[hidden]{display:none}

.w-grp{margin:0 0 34px}
.w-grp h2{display:flex;gap:10px;align-items:baseline;border-block-end:1px solid var(--line);
  padding-block-end:8px}
.w-grp h2 small{color:var(--muted);font-weight:400;font-size:.8rem}
.w-grp--off h2{color:var(--warn)}
.w-tbl{width:100%;border-collapse:collapse;table-layout:fixed}
.w-tbl tr{border-block-end:1px solid var(--line)}
.w-tbl td{padding:11px 10px 11px 0;vertical-align:top;min-width:0}
.w-where{width:31%}
.w-go{width:76px;text-align:end;font-size:.85rem}
.w-key{display:block;font-size:.85rem;color:var(--muted);word-break:break-word}
.w-badge{display:inline-block;margin-top:4px;font-size:9.5px;letter-spacing:.09em;
  text-transform:uppercase;padding:2px 6px;border-radius:3px;border:1px solid var(--line)}
.w-badge.on{color:var(--ok);border-color:var(--ok)}
.w-badge.alt{color:var(--muted);border-color:var(--line)}
.w-badge.off{color:var(--warn);border-color:var(--warn)}
.w-none{color:var(--muted)}
.w-val textarea{font:inherit;width:100%;border:1px solid transparent;border-radius:5px;
  background:none;color:inherit;padding:6px 8px;resize:vertical;min-height:38px;
  field-sizing:content;overflow:hidden}
.w-val textarea:hover{border-color:var(--line)}
.w-val textarea:focus{border-color:var(--accent);background:var(--card);outline:none}
.w-val textarea[data-changed]{border-color:var(--accent);background:var(--card)}
.w-tbl--facts .w-where{width:38%}

.w-links{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:10px}
.w-links a{display:flex;flex-direction:column;gap:3px;background:var(--card);border:1px solid var(--line);
  border-radius:7px;padding:15px 18px;text-decoration:none;color:inherit}
.w-links a:hover{border-color:var(--accent)}
.w-links span{color:var(--muted);font-size:.9rem}
.w-recs{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px}
.w-recs li{background:var(--card);border:1px solid var(--line);border-inline-start:3px solid var(--warn);
  border-radius:7px;padding:16px 18px}
.w-recs h2{font-size:1rem;margin:0 0 .35em}
.w-recs p{margin:0 0 .8em;color:var(--muted)}

.w-back{display:inline-block;margin-bottom:18px;font-size:.9rem;text-decoration:none}
.w-doc{max-width:74ch;background:var(--card);border:1px solid var(--line);border-radius:8px;
  padding:clamp(20px,3vw,38px)}
.w-doc h2{font-size:1.35rem;margin-top:0}
.w-doc h3{font-size:1.08rem;margin-top:1.8em}
.w-doc h4{font-size:.95rem;margin-top:1.5em}
.w-doc blockquote{margin:1.2em 0;padding-inline-start:16px;border-inline-start:3px solid var(--accent);
  color:var(--muted)}
.w-doc code{background:var(--paper);padding:1px 5px;border-radius:3px;font-size:.9em}
.w-doc hr{border:0;border-block-start:1px solid var(--line);margin:2em 0}
.w-doc table.w-md{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:.92rem}
.w-doc table.w-md td{border-block-end:1px solid var(--line);padding:8px 10px 8px 0;vertical-align:top}
.w-home{padding-block-start:clamp(34px,7vw,72px)}
@media (max-width:720px){
  .w-where{width:44%}.w-go{width:56px}
  .w-tools{position:static}
}
