/* Shared visual system for the guide, owner dashboard and access screens. */
:root{--bg:#f4f2ed;--surface:#fff;--surface-2:#f8f9fc;--ink:#1b2b43;--muted:#52647b;--line:#dce3ed;--accent:#24538a;--accent-soft:#e9f0fa;--on-accent:#fff;--gold:#916416;--gold-soft:#fff5df;--bad:#a3262a;--bad-soft:#fbeceb;--good:#256346;--good-soft:#eaf5ef;--shadow:0 2px 5px rgba(17,42,75,.035),0 12px 30px rgba(17,42,75,.045);--sans:"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;color-scheme:light}
:root[data-theme=dark]{--bg:#0e131a;--surface:#151f2d;--surface-2:#1a2739;--ink:#eaf0f9;--muted:#afbed2;--line:#304258;--accent:#a9ccff;--accent-soft:#203855;--on-accent:#112a47;--gold:#f2cf83;--gold-soft:#332b1c;--bad:#ffb2bc;--bad-soft:#3c202a;--good:#a4dfbd;--good-soft:#18362a;--shadow:0 2px 6px rgba(0,0,0,.12),0 12px 30px rgba(0,0,0,.10);color-scheme:dark}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e131a;--surface:#151f2d;--surface-2:#1a2739;--ink:#eaf0f9;--muted:#afbed2;--line:#304258;--accent:#a9ccff;--accent-soft:#203855;--on-accent:#112a47;--gold:#f2cf83;--gold-soft:#332b1c;--bad:#ffb2bc;--bad-soft:#3c202a;--good:#a4dfbd;--good-soft:#18362a;--shadow:0 2px 6px rgba(0,0,0,.12),0 12px 30px rgba(0,0,0,.10);color-scheme:dark}}
:root{background:var(--bg);color:var(--ink)}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.6}
.card:not(.ask){background:var(--surface);border-color:var(--line);border-radius:18px;box-shadow:var(--shadow)}
.card:not(.ask) h2{font-family:var(--serif);font-weight:600;color:var(--ink);line-height:1.3}
.example,details,.table-wrap{border-radius:12px}
.example{box-shadow:0 2px 8px rgba(17,42,75,.025)}
.example:hover{border-color:var(--accent)}
.card.answer{border-top:3px solid var(--accent)}
.workspace-guide .masthead{background:radial-gradient(ellipse at top right,rgba(88,137,202,.18),transparent 65%),linear-gradient(120deg,#183d70,#10233e)}
.workspace-guide .masthead-tools>a{color:#e2edfc;text-underline-offset:4px}
.workspace-guide #access-logout{font:inherit;font-size:.85rem;color:#e2edfc;background:rgba(255,255,255,.07);border:1px solid #7792b6;border-radius:9px;padding:7px 12px;cursor:pointer}
.workspace-guide .section-title{color:var(--gold);font-weight:700}
.workspace-guide .panel-head h2{font-size:1.6rem}
.workspace-guide .drawer{box-shadow:-12px 0 40px rgba(0,0,0,.18)}
.workspace-admin,.workspace-access{margin:0;font-size:16px;color:var(--ink);background:var(--bg)}
.workspace-admin header,.workspace-access header{background:radial-gradient(ellipse at top right,rgba(98,153,219,.18),transparent 65%),linear-gradient(120deg,#183d70,#10233e);color:#fff;border-bottom:3px solid #dfbd72}
.workspace-admin header{padding:32px max(20px,calc((100vw - 1160px)/2)) 28px}
.workspace-admin header h1,.workspace-access header h1{font:600 clamp(1.8rem,3vw,2.3rem)/1.2 var(--serif);letter-spacing:.005em;color:#fff;margin:8px 0}
.workspace-admin header p,.workspace-access header p{color:#dbe7f6}
.workspace-admin header .eyebrow,.workspace-access header .eyebrow{color:#f2cf83;font-weight:600;font-size:.7rem;letter-spacing:.14em}
.header-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:20px}
.header-actions{display:flex;gap:8px;flex-wrap:wrap}
.theme-control{display:inline-flex;align-items:center;gap:3px;padding:4px;border:1px solid #7792b6;border-radius:999px;background:rgba(255,255,255,.05);flex-wrap:wrap}
.theme-control button[data-theme-choice]{font:500 .8rem/1.4 var(--sans);margin:0;padding:6px 12px;min-height:32px;border:1px solid transparent;border-radius:999px;background:transparent;color:#dbe7f6;cursor:pointer}
.theme-control button[data-theme-choice][aria-pressed=true]{color:#142a47;background:#f2cf83;border-color:#f2cf83}
.theme-control button[data-theme-choice]:hover{color:#fff;border-color:#8ca6c9}
.theme-control button[data-theme-choice][aria-pressed=true]:hover{color:#142a47}
.workspace-admin main{max-width:1200px;margin:auto;padding:28px 20px 48px}
.workspace-admin .grid{gap:24px;margin-bottom:24px;align-items:stretch}
.workspace-admin .grid>.card{margin:0}
.workspace-admin .card{padding:26px;margin-bottom:24px;overflow-wrap:anywhere}
.workspace-admin h2{font-size:1.45rem;margin-bottom:12px}
.workspace-admin h3{color:var(--ink)}
.workspace-admin .small,.workspace-admin small,.workspace-access .small,.workspace-access small{color:var(--muted);font-size:.85rem}
.workspace-admin label,.workspace-access label{color:var(--ink);font-size:.9rem;font-weight:600}
.workspace-admin input:not([type=checkbox]),.workspace-admin textarea,.workspace-admin select,.workspace-access input{font:inherit;background:var(--surface-2);color:var(--ink);border:1px solid var(--line);border-radius:10px;min-height:44px;padding:11px 13px;max-width:100%;box-shadow:inset 0 1px 2px rgba(17,42,75,.025)}
.workspace-admin input::placeholder,.workspace-admin textarea::placeholder,.workspace-access input::placeholder{color:var(--muted);opacity:1}
.workspace-admin input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);vertical-align:middle;margin-right:7px}
.workspace-admin input:focus,.workspace-admin textarea:focus,.workspace-admin select:focus,.workspace-access input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.workspace-admin button:not([data-theme-choice]),.workspace-admin .button,.workspace-access button:not([data-theme-choice]),.workspace-access .button{font:600 .875rem/1.4 var(--sans);border:1px solid var(--line);border-radius:10px;min-height:42px;padding:10px 15px;background:var(--surface-2);color:var(--accent);white-space:normal;overflow-wrap:anywhere;max-width:100%;transition:background .15s,border-color .15s}
.workspace-admin button:not([data-theme-choice]):hover,.workspace-access button:not([data-theme-choice]):hover{border-color:var(--accent);background:var(--accent-soft)}
.workspace-admin form button[type=submit],.workspace-admin form button:not([type]),.workspace-access #submit,.workspace-access #recovery .button{background:#f2cf83;color:#142a47;border-color:#dfbd72;box-shadow:0 2px 4px rgba(0,0,0,.05)}
.workspace-admin form button:hover,.workspace-access #submit:hover{background:#ffe0a1;color:#142a47;border-color:#dfbd72}
.workspace-admin button.danger{background:var(--bad-soft);color:var(--bad);border-color:var(--bad)}
.workspace-admin button.danger:hover{background:var(--bad-soft);filter:brightness(1.08)}
.workspace-admin .header-actions button,.workspace-admin header .button{background:rgba(255,255,255,.07);color:#f0f5fc;border-color:#7792b6;margin:0}
.workspace-admin .header-actions button:hover,.workspace-admin header .button:hover{background:rgba(255,255,255,.14);color:#fff;border-color:#dbe7f6}
.workspace-admin a,.workspace-access a{color:var(--accent);text-underline-offset:4px}
.workspace-admin .notice,.workspace-access .notice{background:var(--gold-soft);color:var(--ink);border-left:3px solid var(--gold);border-radius:10px}
.workspace-admin .success{background:var(--good-soft);color:var(--good);border-left:3px solid var(--good);border-radius:10px}
.workspace-admin .error,.workspace-access .error{color:var(--bad)}
.workspace-admin #message:empty{display:none}
.workspace-admin .table-wrap{border:1px solid var(--line);overflow:auto;scrollbar-color:var(--muted) var(--surface-2)}
.workspace-admin table{min-width:640px}
.workspace-admin th{background:var(--surface-2);color:var(--muted);font-size:.73rem;letter-spacing:.05em;text-transform:uppercase;font-weight:600}
.workspace-admin td,.workspace-admin th{padding:13px 14px;border-bottom-color:var(--line)}
.workspace-admin td{color:var(--ink)}
.workspace-admin td button{margin-top:2px;margin-bottom:4px}
.workspace-admin tr:last-child td{border-bottom:0}
.workspace-admin .rows>p{border-bottom-color:var(--line);font-size:.85rem;color:var(--muted);padding:12px 0;margin:0}
.workspace-admin details{background:var(--surface-2);border:1px solid var(--line);padding:14px 16px}
.workspace-admin summary{color:var(--ink)}
.workspace-admin .overview-hero{color:#f0f5fc;border-color:#416796;border-top:3px solid #dfbd72;background:linear-gradient(125deg,#1c467c,#102b50)}
.workspace-admin .overview-hero h2{color:#fff}
.workspace-admin .overview-hero .small{color:#dbe7f6}
.workspace-admin .metrics{gap:12px;margin:18px 0}
.workspace-admin .metric{padding:18px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);min-width:min(150px,100%)}
.workspace-admin .overview-hero .metric{background:rgba(255,255,255,.06);border-color:rgba(219,231,246,.22)}
.workspace-admin .overview-hero .metric b{font-size:1.7rem;color:#f2cf83;line-height:1.3;margin-bottom:5px}
.workspace-admin .overview-hero .metric span{font-size:.8rem;color:#dbe7f6}
.workspace-access main{max-width:680px;margin:32px auto;padding:0 20px 32px}
.workspace-access header{padding:28px;border-radius:18px;margin-bottom:22px;box-shadow:var(--shadow)}
.workspace-access header .theme-control{margin-top:14px}
.workspace-access .card{padding:28px}
.workspace-access h2{font-size:1.6rem;margin-top:0}
.workspace-access #intro{color:var(--muted)}
.workspace-access #links{gap:8px;margin-bottom:0;padding-top:18px;border-top:1px solid var(--line)}
.workspace-access #links a{font-size:.82rem;padding:7px 11px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);text-decoration:none}
.workspace-access #links a:hover{border-color:var(--accent)}
.workspace-access #signed-in{background:var(--accent-soft);padding:14px;border-radius:12px;margin:16px 0}
.workspace-access code{background:var(--surface-2);border-radius:5px;padding:2px 4px;color:var(--ink)}
.workspace-admin :focus-visible,.workspace-access :focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.workspace-admin header :focus-visible,.workspace-access header :focus-visible{outline-color:#f2cf83}
@media(max-width:760px){.workspace-admin .grid{grid-template-columns:1fr}.workspace-admin header{padding:26px 20px}.workspace-admin main{padding:20px 12px}.workspace-admin .card{padding:20px}.header-tools{align-items:flex-start}.workspace-admin h2{font-size:1.3rem}}
@media(max-width:400px){.workspace-access main{padding:0 12px 24px;margin-top:12px}.workspace-access header,.workspace-access .card{padding:20px}.workspace-admin .metrics{gap:8px}.workspace-admin .metric{flex-basis:100%}.workspace-admin .card{padding:16px}.theme-control button[data-theme-choice]{padding:6px 10px}}
@media(prefers-reduced-motion:reduce){button,a{transition:none!important}}
@media print{body{background:#fff;color:#111}.theme-control{display:none}}
