/* Cookie consent banner — shared by the landing and inner pages, follows the active theme. */
.cookie{position:fixed;left:0;right:0;bottom:0;z-index:90;padding:12px;pointer-events:none}
.cookie[hidden]{display:none}
.cookie-in{pointer-events:auto;max-width:900px;margin:0 auto;border-radius:24px;padding:clamp(18px,2.6vw,26px);
  background:var(--cookie-bg,rgba(8,24,18,.9));border:1px solid var(--line-2);color:var(--ink);
  backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);
  box-shadow:0 30px 90px -30px rgba(0,0,0,.7);transform:translateY(24px);opacity:0;transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .5s}
.cookie.show .cookie-in{transform:none;opacity:1}
:root[data-theme="light"] .cookie-in{--cookie-bg:rgba(255,255,255,.94);box-shadow:0 30px 80px -30px rgba(11,40,26,.35)}
.cookie-top{display:flex;gap:22px;align-items:flex-start;justify-content:space-between}
.cookie-badge{display:inline-flex;align-items:center;gap:8px;font:500 11px/1 "JetBrains Mono",ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);
  padding:7px 11px;border-radius:999px;border:1px solid rgba(var(--acc-rgb),.25);background:rgba(34,197,94,.08)}
.cookie-badge svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cookie-text{margin:12px 0 0;font-size:14px;line-height:1.6;color:var(--ink-2);max-width:60ch}
.cookie-text a{color:var(--acc);text-underline-offset:3px}
.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:270px;flex:none}
.cookie-actions .wide{grid-column:1/-1}
.cbtn{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;font:600 14px "Inter",system-ui,sans-serif;padding:11px 14px;border-radius:12px;border:1px solid var(--line-2);color:var(--ink);background:rgba(var(--fg-rgb),.04);transition:background .2s,border-color .2s,transform .2s}
.cbtn:hover{background:rgba(var(--fg-rgb),.09)}
.cbtn:active{transform:scale(.97)}
.cbtn:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.cbtn.go{background:#22c55e;border-color:transparent;color:#032013}
.cbtn.go:hover{background:#3ad872}
.cookie-settings{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.cookie-settings[hidden]{display:none}
.cookie-settings>p{margin:0;font-size:14px;color:var(--ink-2)}
.cookie-opts{display:grid;gap:10px;margin-top:14px;max-width:520px}
.copt{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-radius:14px;border:1px solid var(--line);background:rgba(var(--fg-rgb),.03);cursor:pointer}
.copt b{display:block;font-size:14px;font-weight:600}
.copt small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.copt input{appearance:none;-webkit-appearance:none;flex:none;width:40px;height:24px;border-radius:999px;background:var(--line-2);position:relative;cursor:pointer;transition:background .25s;margin:0}
.copt input::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.copt input:checked{background:#22c55e}
.copt input:checked::after{transform:translateX(16px)}
.copt input:disabled{opacity:.6;cursor:not-allowed}
.copt input:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.cookie-save{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px}
@media (max-width:760px){
  .cookie{padding:8px}
  .cookie-top{flex-direction:column;gap:16px}
  .cookie-actions{min-width:0;width:100%}
  .cookie-save .cbtn{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){.cookie-in{transition:none}}
