/* Cookie consent — styled to match the app, and deliberately not a dark pattern:
   "Reject optional" is the same size and weight as "Accept all", in the same row. */
.cc{position:fixed;inset:auto 0 0 0;z-index:400;display:flex;justify-content:center;
  padding:0 12px calc(12px + env(safe-area-inset-bottom));opacity:0;transform:translateY(14px);
  transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.cc.in{opacity:1;transform:none;pointer-events:auto}
.cc-prefs{inset:0;align-items:center;background:rgba(6,6,10,.72);padding:20px}
.cc-card{width:100%;max-width:560px;background:var(--card,#111116);border:1px solid var(--border-2,#2a2a33);
  border-radius:14px;box-shadow:0 24px 70px rgba(0,0,0,.62);padding:18px 20px;max-height:86vh;overflow-y:auto}
.cc-title{font-weight:700;font-size:1.02rem;margin-bottom:6px}
.cc-lead{color:var(--text-2,#a8b0bd);font-size:.88rem;line-height:1.55;margin:0 0 12px}
.cc-lead b{color:var(--text,#e6ebf2)}
.cc-cats{display:none;flex-direction:column;gap:10px;margin:12px 0 4px}
.cc-cats.open{display:flex}
.cc-cat{display:flex;gap:11px;align-items:flex-start;background:var(--card-2,#17171c);
  border:1px solid var(--border,#24242c);border-radius:10px;padding:11px 12px;cursor:pointer}
.cc-cat input{margin-top:3px;accent-color:var(--gold,#c9a227);width:17px;height:17px;flex:none}
.cc-cat input:disabled{opacity:.55}
.cc-cat-t{min-width:0}
.cc-cat-t b{display:block;font-size:.87rem;color:var(--text,#e6ebf2)}
.cc-cat-t span{display:block;font-size:.79rem;color:var(--text-3,#8a8a94);line-height:1.45;margin-top:2px}
.cc-always{font-weight:600;font-size:.68rem;color:var(--gold,#c9a227);text-transform:uppercase;letter-spacing:.05em}
.cc-acts{display:flex;gap:9px;margin-top:14px}
.cc-btn{flex:1;min-width:0;padding:12px 10px;border-radius:9px;font-size:.87rem;font-weight:600;cursor:pointer;
  background:var(--card-2,#17171c);border:1px solid var(--border-2,#2a2a33);color:var(--text,#e6ebf2)}
.cc-btn:hover{border-color:var(--gold,#c9a227)}
.cc-primary{background:linear-gradient(135deg,#c9a227,#e6c34d);border:none;color:#0a0a0c;font-weight:700}
.cc-link{display:block;width:100%;margin-top:9px;background:none;border:none;color:var(--blue,#5b9dff);
  font-size:.82rem;cursor:pointer;padding:6px;text-decoration:underline}
.cc-foot{margin-top:12px;font-size:.76rem;color:var(--text-3,#8a8a94)}
.cc-foot a{color:var(--text-3,#8a8a94)}
.cc-foot a:hover{color:var(--gold,#c9a227)}
@media(max-width:520px){
  .cc-acts{flex-direction:column-reverse}      /* on a phone, stacked — still equal weight */
  .cc-btn{width:100%}
}
