.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:10000;background:var(--surface);color:var(--fg);border-top:1px solid var(--border);box-shadow:0 -12px 40px rgb(24 40 70 / 12%);padding:22px max(28px,calc((100vw - 1160px)/2)) max(18px,env(safe-area-inset-bottom));max-height:65dvh;overflow-y:auto}
.cookie-banner[hidden],.cookie-launcher[hidden]{display:none}
.cookie-inner{display:flex;align-items:center;gap:36px;justify-content:space-between}.cookie-copy{max-width:710px}.cookie-eyebrow{display:block;font-size:10px;font-weight:750;letter-spacing:.16em;color:var(--strong);margin-bottom:6px}.cookie-copy h2{font-size:20px;margin:0 0 8px;letter-spacing:-.035em}.cookie-copy p{font-size:13px;line-height:1.65;margin:0}.cookie-copy .cookie-note{margin-top:9px;color:var(--muted);font-size:12px}.cookie-actions{display:grid;grid-template-columns:1fr;gap:8px;flex:0 0 168px}.cookie-actions .cookie-choice{width:100%;min-height:40px;border:1px solid var(--border-hover);background:var(--surface-soft);color:var(--fg);font-size:13px;font-weight:650;border-radius:10px;padding:8px 12px;box-shadow:none}.cookie-actions .cookie-choice:hover{background:var(--surface);border-color:var(--strong)}.cookie-actions #cookie-all{background:var(--strong);color:var(--on-strong);border-color:var(--strong)}.cookie-actions #cookie-all:hover{background:var(--strong);border-color:var(--strong);filter:brightness(.96)}.cookie-policy-link{display:inline-block;color:var(--muted);font-size:12px;margin-top:10px}.cookie-launcher{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));right:18px;z-index:9999;padding:7px 13px;font-size:12px;min-height:34px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted);box-shadow:var(--shadow)}.cookie-result{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.cookie-policy{max-width:900px;width:calc(100% - 48px);margin:28px auto 24px}.cookie-policy table{border-collapse:collapse;width:100%;font-size:13px}.cookie-policy td,.cookie-policy th{padding:12px;border:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere}.cookie-policy th{background:var(--surface-soft)}.cookie-policy h2{margin-top:28px}.cookie-policy code{overflow-wrap:anywhere;word-break:break-word}
html body.viewer-page #scroll-area{height:calc(100% - var(--cookie-space,0px))}.viewer-page #cookie-spacer{display:none}
@media(max-width:767px){.cookie-banner{padding:18px 20px max(18px,env(safe-area-inset-bottom))}.cookie-inner{display:block}.cookie-copy h2{font-size:18px}.cookie-copy p{font-size:12px}.cookie-copy .cookie-note{font-size:11px}.cookie-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:15px}.cookie-actions .cookie-choice{padding:9px 4px;font-size:11px;min-height:42px}.cookie-policy{width:calc(100% - 32px);margin:20px auto;padding:20px}.cookie-policy table{display:block;font-size:13px}.cookie-policy thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.cookie-policy tbody{display:grid;gap:12px}.cookie-policy tr{display:block;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--bg)}.cookie-policy td{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;padding:10px 12px;border:0;font-size:13px;line-height:1.65}.cookie-policy td+td{border-top:1px solid var(--border)}.cookie-policy td::before{content:attr(data-label);color:var(--muted);font-weight:650}.cookie-policy td:first-child{background:var(--surface-soft)}.cookie-policy ul{padding-left:20px}.cookie-launcher{right:12px}}
