:root{color-scheme:light dark;--bg:#f4f7f6;--card:#fff;--ink:#173630;--fg:var(--ink);--soft:var(--wash);--acc:var(--accent);--muted:#465d57;--line:#b5c9c3;--accent:#086451;--wash:#e4f1ec}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 system-ui,sans-serif}header{display:flex;justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:auto;padding:20px}header>a{font-weight:750;text-decoration:none}nav{display:flex;gap:16px;flex-wrap:wrap}a{color:var(--accent);overflow-wrap:anywhere}a,button{touch-action:manipulation}header a{display:inline-flex;align-items:center;min-height:44px}main{max-width:1200px;margin:0 auto;padding:12px 24px 64px}h1{font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.15;margin:.5em 0}h2{font-size:1.4rem}h3{font-size:1.15rem}.intro{max-width:760px;color:var(--muted)}.pill{font-size:.85rem;background:var(--wash);padding:6px 12px;border-radius:30px;display:inline-block}.grid{display:grid;grid-template-columns:minmax(270px,350px) minmax(0,1fr);gap:24px;align-items:start}.panel,.card{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--card);margin-bottom:18px}.tabs{display:flex;gap:8px;margin:24px 0}.tabs button{flex:1}.tabs button[aria-pressed=true]{background:var(--accent);color:#fff}label{display:block;margin:16px 0 6px}input,select,textarea,button{font:inherit;min-height:46px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;max-width:100%}input:not([type=checkbox]),select,textarea{width:100%;background:var(--card);color:var(--ink)}button{cursor:pointer;background:var(--wash);color:var(--ink)}button.primary{width:100%;margin-top:20px;background:var(--accent);color:#fff}button:disabled{opacity:.6;cursor:wait}input[type=checkbox]{width:22px;height:22px;min-height:22px;vertical-align:middle;margin-right:8px}.check{display:flex;align-items:flex-start;gap:8px}.check input{flex:none;margin-top:6px}.note{color:var(--muted);font-size:.9rem}.link{display:block;padding:12px 0;min-height:44px}.cost{border-left:3px solid var(--accent);padding-left:14px}.card p{margin:.6em 0}.status{padding:14px;background:var(--wash);border-radius:10px}summary{cursor:pointer;padding:12px 0;min-height:44px}details ul{padding-left:22px}*:focus-visible{outline:3px solid #b86805;outline-offset:3px}[hidden]{display:none!important}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(prefers-color-scheme:dark){:root{--bg:#10231e;--card:#18332b;--ink:#edf7f1;--muted:#bfcec8;--line:#567068;--accent:#7bd5b5;--wash:#254a3d}.tabs button[aria-pressed=true],button.primary{color:#10231e}}@media(max-width:700px){header{padding:14px 18px;align-items:start}header nav{gap:8px}main{padding:6px 16px 40px}.grid{grid-template-columns:1fr;gap:0}.panel,.card{padding:18px}.tabs{margin:18px 0}.quote-grid{grid-template-columns:1fr}}@media print{header,.tabs,form,button{display:none}.grid{display:block}.card{break-inside:avoid}body{color:#000;background:#fff}}

/* The full checkbox label remains a touch target in both colour schemes. */
.check{min-height:44px;align-items:center}summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}

/* Bridge the shared G39 controls to the experts palette and page theme toggle. */
:root.light{--bg:#f4f7f6;--card:#fff;--ink:#173630;--muted:#465d57;--line:#b5c9c3;--accent:#086451;--wash:#e4f1ec}
:root.dark{--bg:#10231e;--card:#18332b;--ink:#edf7f1;--muted:#bfcec8;--line:#567068;--accent:#7bd5b5;--wash:#254a3d}
:root.dark .tabs button[aria-pressed=true],:root.dark button.primary{color:#10231e}
:root.light .tabs button[aria-pressed=true],:root.light button.primary{color:#fff}
