:root{--desk-bg:#f4f0e8;--desk-ink:#142b40;--desk-rule:#b8b3a7;--desk-link:#165d96}
[data-theme="dark"]{--desk-bg:#101a23;--desk-ink:#e9e5db;--desk-rule:#53606b;--desk-link:#8dc4ef}
body{background:var(--desk-bg);color:var(--desk-ink)}
[hidden]{display:none!important}
.desk-header{padding:18px max(16px,calc((100% - 1160px)/2));border-bottom:2px solid var(--desk-ink);display:flex;gap:20px;align-items:center;justify-content:space-between}
.desk-header>a{font:bold 24px Georgia,serif;white-space:nowrap}
.desk-header nav,.desk-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.fantasy-desk{max-width:1160px;margin:32px auto;padding:0 16px 48px}
.fantasy-desk h1{font:700 clamp(32px,6vw,48px) Georgia,serif;margin:8px 0}
.fantasy-desk p{margin:12px 0 22px;line-height:1.6}
.desk-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:12px}
a{color:var(--desk-link)}
.desk-controls{padding:18px 0;border-top:1px solid var(--desk-rule);border-bottom:1px solid var(--desk-rule);align-items:end}
.desk-controls label{display:grid;gap:8px;font-size:13px;font-weight:600;flex:1;min-width:170px}
.desk-controls input,.desk-controls select,button{font:inherit;color:inherit;background:var(--desk-bg);border:1px solid var(--desk-rule);padding:10px 12px;border-radius:2px;max-width:100%}
button{cursor:pointer}button:disabled{opacity:.5;cursor:default}
:focus-visible{outline:3px solid var(--desk-link);outline-offset:3px}
.desk-data{overflow:auto;margin:22px 0}.desk-data table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:14px}
.desk-data th,.desk-data td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--desk-rule)}
.desk-data th{font-size:12px;text-transform:uppercase}.desk-data .num{text-align:right}
.desk-data caption{text-align:left;padding:0 0 12px;font-weight:600}
pre{padding:18px;border:1px solid var(--desk-rule);overflow:auto;max-height:480px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
summary{cursor:pointer;padding:12px 0}.auth-control{display:flex;gap:8px;align-items:center}
@media(max-width:640px){.desk-header{align-items:start;flex-direction:column}.desk-header nav{width:100%;gap:12px}.desk-controls label{flex-basis:100%}.desk-controls button{flex:1}.fantasy-desk{margin-top:22px}.auth-control{flex-wrap:wrap}}
