.privacy-gate[aria-hidden=true]{display:none}.privacy-gate{position:fixed;inset:auto 0 0;z-index:999;display:flex;justify-content:center;pointer-events:none;padding:0 max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.privacy-card{box-sizing:border-box;pointer-events:auto;width:min(100%,660px);max-height:65vh;max-height:65dvh;animation:privacy-slide-up .3s ease-out;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(120% 120% at 100% 0%,rgb(var(--rgb-brand) / 12%),rgb(var(--rgb-brand) / 0%) 46%),linear-gradient(165deg,#1f161bfa,#120e11f0);border:1px solid rgba(214,194,170,.18);border-radius:22px;padding:22px;box-shadow:var(--shadow)}body.mode-light .privacy-card{background:radial-gradient(120% 120% at 100% 0%,rgb(var(--rgb-brand) / 16%),rgb(var(--rgb-brand) / 0%) 48%),linear-gradient(165deg,#fffcf8fc,#f5eaddf5);border:1px solid rgb(var(--rgb-ink) / 20%);box-shadow:0 24px 48px #27171138;color:var(--palette-ink-soft)}body.mode-light .privacy-prefs-card{background:radial-gradient(120% 120% at 100% 0%,rgb(var(--rgb-brand) / 14%),rgb(var(--rgb-brand) / 0%) 50%),linear-gradient(165deg,#fffcf8,#f7eee3fa)}.privacy-prefs-card{width:min(100%,660px);overflow-y:auto}.privacy-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.privacy-card-head h2{margin:0;flex:1;font-size:18px;line-height:1.3;font-family:var(--font-display)}.privacy-accept-necessary{background:none;border:none;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;min-height:44px;padding:8px 10px;border-radius:8px;white-space:nowrap;text-decoration:underline;flex-shrink:0;line-height:1.2}.privacy-accept-necessary:hover{color:var(--fg)}body.mode-light .privacy-accept-necessary{color:var(--palette-clay-strong)}body.mode-light .privacy-accept-necessary:hover,body.mode-light .privacy-accept-necessary:focus-visible{color:var(--palette-ink)}.privacy-desc{margin:0 0 12px;color:var(--muted);font-size:14px;line-height:1.6}body.mode-light .privacy-desc{color:#4a342b}.privacy-policy-wrap{margin:0 0 14px;font-size:13px}.privacy-policy-wrap a{color:var(--muted);text-decoration:underline}body.mode-light .privacy-policy-wrap,body.mode-light .privacy-policy-wrap a{color:#5a4338}.privacy-policy-wrap a:hover{color:var(--fg)}body.mode-light .privacy-policy-wrap a:hover,body.mode-light .privacy-policy-wrap a:focus-visible{color:var(--palette-ink)}.privacy-actions{display:flex;flex-direction:column;gap:10px;margin:14px 0 0}.btn-consent-all{background:linear-gradient(135deg,var(--palette-clay),var(--palette-clay-strong));color:var(--palette-cream);border-color:#6f342dd1;font-weight:700}.btn-consent-all:hover,.btn-consent-all:focus-visible{background:linear-gradient(135deg,#a56d5c,#7e4238)}.privacy-prefs-link{background:none;border:none;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;text-decoration:underline;text-align:center}.privacy-prefs-link:hover{color:var(--fg)}body.mode-light .privacy-prefs-link{color:var(--palette-clay-strong)}body.mode-light .privacy-prefs-link:hover,body.mode-light .privacy-prefs-link:focus-visible{color:var(--palette-ink)}.privacy-footnote{margin:10px 0 0;color:#fff9;font-size:12px}body.mode-light .privacy-footnote{color:var(--palette-text-dark-muted)}.prefs-categories-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:16px 0 8px}.prefs-accordion{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}body.mode-light .prefs-categories-label{color:var(--palette-text-dark-muted)}.prefs-category{border:1px solid var(--line);border-radius:14px;overflow:hidden}body.mode-light .prefs-category{background:#ffffffb8;border-color:var(--border-warm-strong)}.prefs-category summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;font-weight:700;font-size:14px;user-select:none}body.mode-light .prefs-category summary{color:var(--palette-ink-soft)}.prefs-category summary::-webkit-details-marker{display:none}.prefs-category[open] summary{border-bottom:1px solid var(--line)}body.mode-light .prefs-category[open] summary{border-bottom-color:rgb(var(--rgb-ink) / 16%)}.prefs-category-desc{padding:10px 14px 14px;font-size:13px;color:var(--muted);line-height:1.55}body.mode-light .prefs-category-desc{color:#5a4338}.prefs-toggle-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;background:rgb(var(--rgb-brand) / 16%);color:var(--palette-brand-light);white-space:nowrap;flex-shrink:0}body.mode-light .prefs-toggle-badge{background:rgb(var(--rgb-brand) / 12%);color:var(--palette-clay)}.prefs-toggle{position:relative;width:46px;height:28px;flex-shrink:0}.prefs-toggle input{position:absolute;width:0;height:0;opacity:0}.prefs-toggle-track{position:absolute;inset:0;background:rgb(var(--rgb-white) / 14%);border:1px solid var(--line);border-radius:999px;cursor:pointer;transition:background .18s,border-color .18s}body.mode-light .prefs-toggle-track{background:rgb(var(--rgb-ink) / 14%);border-color:rgb(var(--rgb-ink) / 24%)}.prefs-toggle input:checked+.prefs-toggle-track{background:var(--palette-clay);border-color:var(--palette-clay)}.prefs-toggle-track:after{content:"";position:absolute;top:3px;left:2px;width:20px;height:20px;border-radius:999px;background:#fff;transition:transform .18s}body.mode-light .prefs-toggle-track:after{background:#fffdf9}.prefs-toggle input:checked+.prefs-toggle-track:after{transform:translate(20px)}.privacy-check-wrap{min-height:44px}.privacy-check-wrap input[type=checkbox]{width:20px;height:20px;margin-top:2px;accent-color:var(--accent-strong)}.privacy-blocked-msg{margin:10px 0 0;padding:10px 12px;border-radius:10px;font-size:13px;font-weight:700;color:#ffd6d6;background:#dc262638;border:1px solid rgba(220,38,38,.48)}body.mode-light .privacy-blocked-msg{color:var(--palette-social);background:#fee2e2f2;border-color:#b91c1c66}.privacy-preferences{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}body.mode-light .privacy-preferences{border-top-color:var(--border-warm-strong)}.pref-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0}.pref-title{font-weight:800}.pref-sub{color:var(--muted);font-size:12px;margin-top:4px}body.mode-light .pref-sub{color:var(--palette-text-dark-muted)}.switch{position:relative;display:inline-flex;align-items:center}.switch input{display:none}.switch-track{width:46px;height:26px;border-radius:999px;background:rgb(var(--rgb-white) / 12%);border:1px solid rgba(255,255,255,.16);position:relative;cursor:pointer}.switch-track:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:999px;background:#ffffffd9;transition:transform .18s ease}.switch input:checked+.switch-track:after{transform:translate(20px)}.switch-locked{width:46px;height:26px;border-radius:999px;background:rgb(var(--rgb-white) / 8%);border:1px solid rgb(var(--rgb-white) / 10%);position:relative}.switch-locked .switch-dot{position:absolute;top:3px;left:23px;width:20px;height:20px;border-radius:999px;background:rgb(var(--rgb-white) / 40%)}.notice-bar{position:static;background:color-mix(in srgb,var(--surface-strong) 86%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.notice-inner{display:flex;align-items:center;justify-content:flex-start;gap:0;padding:10px 22px}.notice-text{color:var(--fg);font-size:13px;letter-spacing:.01em;font-weight:600;flex:1;min-width:0}.notice-marquee{width:100%;overflow:hidden;white-space:nowrap}.notice-track{display:inline-flex;align-items:center;gap:18px;min-width:max-content;animation:notice-marquee-scroll 26s linear infinite}.notice-item{position:relative;padding-right:18px;color:var(--fg)}.notice-item:after{content:"\2022";position:absolute;right:4px;color:color-mix(in srgb,var(--fg) 50%,transparent)}@keyframes notice-marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.notice-track{animation:none}}body.is-locked{overflow:hidden}@keyframes privacy-slide-up{0%{transform:translateY(calc(100% + 24px))}to{transform:translateY(0)}}@media(min-width:1200px){.privacy-gate{inset:auto auto 24px 24px;width:520px;padding:0}.privacy-card{max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);animation:none}}@media(prefers-reduced-motion:reduce){.privacy-card{animation:none}}
