/* Samtykke-banner og valgdialog (ck-*). Fixed-posisjonert: ingen layout shift. */
.ck-live,.ck-dlg .sr-only,.ck-sw .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ck-bar{position:fixed;left:20px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:160;width:min(460px,calc(100vw - 40px));background:#fff;color:var(--ink);border-radius:var(--r-m);padding:20px 20px 18px;box-shadow:var(--shadow-l),0 0 0 1.5px var(--line);opacity:0;transform:translateY(16px);transition:opacity .3s var(--ease),transform .3s var(--ease);visibility:hidden}
.ck-bar.on{opacity:1;transform:none;visibility:visible}
.ck-bar.hold{visibility:hidden}
.ck-bar h2{font-family:var(--f-display);font-weight:400;font-size:21px;line-height:1.2;margin:0 0 6px}
.ck-bar p{font-size:14.5px;line-height:1.5;color:var(--ink-2);margin:0 0 14px}
.ck-bar p a,.ck-fine a{text-decoration:underline;text-underline-offset:3px;color:var(--deep)}
.ck-acts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ck-btn{min-height:44px;padding:8px 10px;border-radius:999px;background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink);font-weight:600;font-size:14px;line-height:1.2;text-align:center;transition:background .2s,color .2s}
.ck-btn:hover{background:var(--ink);color:#fff}
.ck-wrap{position:fixed;inset:0;z-index:310;display:grid;place-items:center;padding:16px;opacity:0;transition:opacity .22s}
.ck-wrap.on{opacity:1}
.ck-back{position:absolute;inset:0;background:rgba(42,18,48,.55);backdrop-filter:blur(6px)}
.ck-dlg{position:relative;background:var(--cream);color:var(--ink);border-radius:var(--r-l);width:min(560px,100%);max-height:92vh;max-height:92dvh;overflow:auto;overscroll-behavior:contain;padding:28px 26px 22px;box-shadow:var(--shadow-l);outline:0}
.ck-dlg h2{font-family:var(--f-display);font-weight:400;font-size:28px;line-height:1.1;margin:0 40px 10px 0}
.ck-lead{font-size:14.5px;color:var(--ink-2);margin:0 0 16px;line-height:1.5}
.ck-x{position:absolute;right:10px;top:10px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:20px;background:#fff;box-shadow:var(--shadow-s)}
.ck-row{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line)}
.ck-rn{font-weight:700;font-size:16px;display:block;margin-bottom:2px}
.ck-rt p{font-size:13.5px;color:var(--muted);line-height:1.45;margin:0}
.ck-always{flex:none;font-size:12.5px;font-weight:700;color:var(--ok);background:#fff;border-radius:99px;padding:6px 12px;box-shadow:inset 0 0 0 1.5px var(--line);white-space:nowrap}
.ck-sw{flex:none;position:relative;width:52px;height:44px;display:block;cursor:pointer}
.ck-sw input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:2}
.ck-sw i{position:absolute;left:0;top:10px;width:52px;height:28px;border-radius:99px;background:#d9cfdc;transition:background .2s}
.ck-sw i::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s var(--ease)}
.ck-sw input:checked+i{background:var(--deep)}
.ck-sw input:checked+i::after{transform:translateX(24px)}
.ck-sw input:focus-visible+i{outline:2px solid var(--deep);outline-offset:3px}
.ck-acts-dlg{margin-top:8px;padding-top:16px;border-top:1px solid var(--line)}
.ck-fine{font-size:13px;color:var(--muted);margin:14px 0 0;text-align:center}
html.ck-lock{overflow:hidden}
.ck-tw{overflow-x:auto;margin:0 0 22px}
.ck-t{border-collapse:collapse;width:100%;min-width:560px;font-size:14px}
.ck-t th,.ck-t td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}
.ck-t thead th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ck-t code,.legal-page .prose code{font-size:13px;background:var(--blush);padding:2px 6px;border-radius:6px;word-break:break-word}
.legal-page .prose h2{font-family:var(--f-display);font-weight:400;font-size:clamp(24px,3vw,32px);margin:36px 0 12px}
.legal .linkbtn{background:none;border:0;padding:0;margin-left:18px;font:inherit;color:rgba(255,255,255,.7);cursor:pointer;text-decoration:underline;text-underline-offset:3px;min-height:24px}
.legal .linkbtn:hover{color:#fff}
@media(max-width:700px){
  .ck-bar{left:12px;right:12px;width:auto;bottom:calc(var(--bu-b,88px) - 4px);padding:16px 16px 14px;max-height:calc(100dvh - 120px);overflow:auto}
  .ck-bar h2{font-size:19px}.ck-bar p{font-size:13.5px;margin-bottom:12px}
  .ck-bar .ck-acts{gap:6px}.ck-bar .ck-btn{font-size:13px;padding:6px 4px;min-height:48px}
  html.ck-on .bu-launch,html.ck-on .to-top{opacity:0;pointer-events:none;visibility:hidden}
  .ck-wrap{place-items:end center;padding:0}.ck-dlg{border-radius:var(--r-l) var(--r-l) 0 0;max-height:94dvh;padding:24px 18px calc(18px + env(safe-area-inset-bottom))}
  .ck-dlg .ck-acts-dlg{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.ck-bar,.ck-wrap,.ck-sw i,.ck-sw i::after{transition:none}.ck-bar{transform:none}}
