/* Athena shared design: the same calm "Focus" look as LIBBY (yellow masthead, black type, yellow highlighter,
   hairline borders, soft shadows). Tokens live here so Ulysse, the Mall, Admin and the home page stay in step. */
:root{
  --yellow:#FDBB30;--yellow-deep:#F5A100;--yellow-pale:#FFF3CF;--black:#111111;
  --paper:#FFFFFF;--card:#FFFFFF;--ink:#111111;--muted:#5B5A55;--line:#E4E1D8;--line-strong:#BDBAB0;--chip:#F4F2EA;--hi:#FBF8EC;
  --red:#D4202A;--green:#2E7D32;--focus:#0B63CE;
  --c-committee:#1F4E79;--c-thinktank:#2E7D32;--c-media:#C77700;--c-polling:#7B3FA0;
  --radius:12px;--shadow:0 1px 2px rgba(17,17,17,.06),0 6px 18px rgba(17,17,17,.07);--shadow-hover:0 2px 4px rgba(17,17,17,.08),0 10px 26px rgba(17,17,17,.10);
  --head:'Libre Franklin','Franklin Gothic Medium','Segoe UI',Arial,sans-serif;--body:Arial,'Helvetica Neue',Helvetica,sans-serif;
}
@media (prefers-color-scheme:dark){:root{
  --paper:#141414;--card:#1D1D1B;--ink:#F2EFE6;--muted:#A8A498;--line:#2E2C27;--line-strong:#4A473F;--chip:#262520;--hi:#26230F;--yellow-pale:#2D2812;
  --c-committee:#6EA8E0;--c-thinktank:#5FBF68;--c-media:#F0A733;--c-polling:#B98AD6;
  --shadow:0 1px 2px rgba(0,0,0,.35),0 6px 18px rgba(0,0,0,.30);--shadow-hover:0 2px 4px rgba(0,0,0,.4),0 10px 26px rgba(0,0,0,.4)}}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 var(--body);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration-color:var(--yellow-deep);text-underline-offset:3px}
::selection{background:var(--yellow);color:var(--black)}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.muted{color:var(--muted);font-size:13px;text-decoration:none}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}

/* masthead: the yellow band, black type, a hairline under it */
.masthead{background:var(--yellow);color:var(--black);border-bottom:1px solid rgba(17,17,17,.18)}
.masthead .brand{margin:0;font:800 clamp(1.5rem,4vw,2rem)/1 var(--head);letter-spacing:-.025em;color:var(--black);display:flex;align-items:baseline;gap:.8rem}
.masthead .brand small{font:600 .72rem/1.2 var(--head);letter-spacing:.02em;opacity:.85}
.masthead a,.masthead .muted{color:var(--black);opacity:.8}
.masthead a:hover{opacity:1}
.masthead-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;padding-bottom:12px}
.masthead-bar .right{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.tabs{display:flex;gap:2px;overflow-x:auto;padding:0 16px 10px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}
.tabs button,.tabs a{font:700 .93rem var(--head);border:0;background:none;color:var(--black);padding:.4rem .8rem;border-radius:8px;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .12s}
@media(min-width:700px){.tabs{flex-wrap:wrap;overflow:visible}}
.tabs button:hover,.tabs a:hover{background:rgba(17,17,17,.09)}
.tabs button.on,.tabs a.on{background:var(--black);color:#fff}

/* headings and common pieces */
h2{font:800 1rem var(--head);margin:0}
.eyebrow{font:700 .72rem var(--head);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.panel,.card-box{background:var(--card);border:1px solid var(--line);border-top:3px solid var(--yellow);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}
input,select,textarea{font:inherit;font-size:14px;color:var(--ink);padding:8px 11px;border:1px solid var(--line-strong);border-radius:8px;background:var(--card);max-width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--black);box-shadow:0 0 0 3px rgba(253,187,48,.55)}
button.btn,.btn{font:700 .9rem var(--head);padding:.5rem 1.1rem;border:1px solid var(--black);border-radius:10px;background:var(--black);color:var(--yellow);cursor:pointer;text-decoration:none;display:inline-block;transition:background .12s,box-shadow .12s}
button.btn:hover,.btn:hover{background:#2a2a2a;box-shadow:var(--shadow)}
button.btn.quiet,.btn.quiet{background:var(--card);color:var(--ink);border-color:var(--line-strong)}
button.btn.quiet:hover,.btn.quiet:hover{background:var(--yellow-pale);border-color:var(--black);box-shadow:none}
button.ghost{font:600 .8rem var(--head);color:var(--muted);background:none;border:1px solid var(--line-strong);border-radius:999px;padding:5px 12px;cursor:pointer;transition:.12s}
button.ghost:hover{color:var(--ink);border-color:var(--black);background:var(--yellow-pale)}
@media(max-width:600px){
  .masthead .brand small{display:none}
  .masthead-bar{flex-wrap:wrap;row-gap:6px;padding-top:10px}
  .masthead-bar .right{gap:8px;font-size:12.5px}
}
