/* Existing Jukeblox graphite palette, expressed as shared semantic tokens. */
:root{color-scheme:dark;--bg:#151A21;--surface:#1B2129;--control:#232A34;--hover:#2B333E;--line:#353E4B;--text:#E8ECF1;--muted:#A5AEBB;--accent:#4CA0EA;--on-accent:#07111C;--danger:#E5484D;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:48px;--radius:12px;--font:15px;--small:13px;--title:32px;--heading:20px;--content-width:900px;--form-width:440px;--control-height:44px;--line-width:1px;--line-height:1.7;--title-line-height:1.35;--weight:600;--tracking:.12em;--log-height:320px;--focus-width:2px;--focus-offset:3px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:var(--font)/var(--line-height) system-ui,"Segoe UI","Yu Gothic",sans-serif}header,footer{max-width:var(--content-width);margin:auto;padding:var(--space-3);display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}header span,footer,.muted,small{font-size:var(--small);color:var(--muted)}.brand{font-weight:var(--weight);color:var(--text);text-decoration:none}main{max-width:var(--content-width);margin:auto;padding:var(--space-4) var(--space-3)}section{margin-bottom:var(--space-5)}h1{font-size:var(--title);line-height:var(--title-line-height);margin:var(--space-1) 0 var(--space-2)}h2{font-size:var(--heading);margin:var(--space-4) 0 var(--space-2)}p{margin:0 0 var(--space-3)}.description{color:var(--muted)}.eyebrow{font-size:var(--small);letter-spacing:var(--tracking);color:var(--muted);margin:0}form{max-width:var(--form-width);display:grid;gap:var(--space-3);margin-bottom:var(--space-3)}label{display:grid;gap:var(--space-1)}input,select,button,textarea,.download-link{font:inherit;color:var(--text);border:var(--line-width) solid var(--line);border-radius:var(--radius);background:var(--control);min-height:var(--control-height);padding:var(--space-1) var(--space-2);max-width:100%}input{width:100%;min-width:0}button{cursor:pointer}button:hover,.download-link:hover{background:var(--hover)}button:disabled{opacity:.55;cursor:wait}button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:var(--weight)}button.quiet-button{background:transparent}.heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap}.heading h2{margin:0}.provider-row,.download-row{padding:var(--space-3) 0;border-bottom:var(--line-width) solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap}.provider-row small,.download-row small{display:block}.download-row h3{font-size:var(--font);font-weight:var(--weight);margin:0 0 var(--space-1)}.download-actions{display:flex;gap:var(--space-1);flex-wrap:wrap}.download-link{display:inline-flex;align-items:center;text-decoration:none}#notice{color:var(--danger);white-space:pre-wrap}.invite-link{overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);border-radius:var(--radius);padding:var(--space-2);max-height:var(--log-height);overflow:auto;font-size:var(--small)}a{color:var(--accent)}[hidden]{display:none!important}:focus-visible{outline:var(--focus-width) solid var(--accent);outline-offset:var(--focus-offset)}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:var(--space-2) var(--space-1);border-bottom:var(--line-width) solid var(--line)}.table-scroll{overflow:auto}.actions{display:flex;gap:var(--space-1);flex-wrap:wrap}dl{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-3)}dd{margin:0}.danger{color:var(--danger)}
