/* Public interaction protection and Liquid block surfaces. */
:root {
    --kb-protect-root: #050506;
    --kb-protect-surface: rgba(28,28,34,.92);
    --kb-protect-tile: rgba(255,255,255,.065);
    --kb-protect-rim: rgba(255,255,255,.14);
    --kb-protect-text: #f7f7f8;
    --kb-protect-muted: #b3b3bd;
    --kb-protect-subtle: #83838d;
    --kb-protect-blue: #0a84ff;
    --kb-protect-shadow: 0 26px 72px rgba(0,0,0,.42);
}
html[data-kb-theme="light"] {
    --kb-protect-root: #f2f2f7;
    --kb-protect-surface: rgba(255,255,255,.94);
    --kb-protect-tile: rgba(25,25,31,.045);
    --kb-protect-rim: rgba(25,25,31,.115);
    --kb-protect-text: #19191d;
    --kb-protect-muted: #5f6069;
    --kb-protect-subtle: #7b7c86;
    --kb-protect-shadow: 0 24px 62px rgba(38,42,58,.16);
}

body.kb-protection-locked { overflow: hidden !important; }

#kb-protection-notice {
    position: fixed !important;
    z-index: 2147483600 !important;
    top: max(18px,env(safe-area-inset-top,0px)) !important;
    left: 50% !important;
    width: min(390px,calc(100vw - 24px)) !important;
    min-height: 74px !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0,1fr) !important;
    align-items: center !important;
    gap: 13px !important;
    padding: 13px 15px !important;
    border: 0 !important;
    border-radius: 22px !important;
    background:
        radial-gradient(circle at 18% -28%,rgba(255,255,255,.30),transparent 46%),
        linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.018) 60%),
        var(--kb-protect-surface) !important;
    color: var(--kb-protect-text) !important;
    box-shadow: inset 0 0 0 1px var(--kb-protect-rim),inset 0 1px 0 rgba(255,255,255,.14),var(--kb-protect-shadow) !important;
    -webkit-backdrop-filter: blur(26px) saturate(155%) !important;
    backdrop-filter: blur(26px) saturate(155%) !important;
    -webkit-clip-path: inset(0 round 22px) !important;
    clip-path: inset(0 round 22px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-50%,-14px,0) scale(.96) !important;
    transition: opacity .2s ease,transform .38s cubic-bezier(.16,1,.3,1),visibility 0s linear .38s !important;
    font-family: -apple-system,BlinkMacSystemFont,"SF Pro Text",Inter,"Segoe UI",sans-serif !important;
}
#kb-protection-notice.is-visible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate3d(-50%,0,0) scale(1) !important;
    transition: opacity .2s ease,transform .38s cubic-bezier(.16,1,.3,1),visibility 0s !important;
}
#kb-protection-notice .kb-protection-icon {
    width: 44px !important;
    height: 44px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 15px !important;
    background: linear-gradient(145deg,rgba(255,255,255,.1),transparent),rgba(10,132,255,.12) !important;
    color: #63b3ff !important;
    box-shadow: inset 0 0 0 1px rgba(74,166,255,.24) !important;
}
#kb-protection-notice .kb-protection-icon svg { width: 23px !important; height: 23px !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.9 !important; stroke-linecap: round !important; stroke-linejoin: round !important; }
#kb-protection-notice strong { display: block !important; margin: 0 0 3px !important; color: var(--kb-protect-text) !important; font-size: 14px !important; line-height: 1.25 !important; font-weight: 780 !important; letter-spacing: -.015em !important; }
#kb-protection-notice span { display: block !important; color: var(--kb-protect-muted) !important; font-size: 12px !important; line-height: 1.45 !important; }

#kb-devtools-shield,
#adblock-takeover {
    position: fixed !important;
    z-index: 2147483500 !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 100svh !important;
    margin: 0 !important;
    padding: max(20px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(20px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px)) !important;
    display: none !important;
    place-items: center !important;
    overflow: auto !important;
    background: var(--kb-protect-root) !important;
    background-image: none !important;
    color: var(--kb-protect-text) !important;
    font-family: -apple-system,BlinkMacSystemFont,"SF Pro Display",Inter,"Segoe UI",sans-serif !important;
}
#kb-devtools-shield.is-visible,
#adblock-takeover:not([style*="display: none"]):not([hidden]) { display: grid !important; }

#kb-devtools-shield .kb-protection-panel,
#adblock-takeover > div:first-child,
#adblock-takeover .kb-protection-panel {
    position: relative !important;
    width: min(590px,100%) !important;
    max-width: 590px !important;
    margin: auto !important;
    padding: clamp(28px,6vw,46px) !important;
    border: 0 !important;
    border-radius: 30px !important;
    background:
        radial-gradient(circle at 22% -16%,rgba(255,255,255,.29),rgba(255,255,255,.04) 29%,transparent 51%),
        linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.018) 60%),
        var(--kb-protect-surface) !important;
    color: var(--kb-protect-text) !important;
    box-shadow: inset 0 0 0 1px var(--kb-protect-rim),inset 0 1px 0 rgba(255,255,255,.16),var(--kb-protect-shadow) !important;
    -webkit-backdrop-filter: blur(30px) saturate(155%) !important;
    backdrop-filter: blur(30px) saturate(155%) !important;
    -webkit-clip-path: inset(0 round 30px) !important;
    clip-path: inset(0 round 30px) !important;
    text-align: center !important;
    transform: none !important;
}
html[data-kb-theme="light"] #kb-devtools-shield .kb-protection-panel,
html[data-kb-theme="light"] #adblock-takeover > div:first-child {
    background:
        radial-gradient(circle at 20% -14%,#fff,rgba(255,255,255,.34) 29%,transparent 52%),
        linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.15) 60%),
        var(--kb-protect-surface) !important;
    box-shadow: inset 0 0 0 1px var(--kb-protect-rim),inset 0 1px 0 #fff,var(--kb-protect-shadow) !important;
}
#kb-devtools-shield .kb-protection-mark,
#adblock-takeover .kb-protection-mark,
#adblock-takeover > div:first-child > :first-child {
    width: 72px !important;
    height: 72px !important;
    margin: 0 auto 21px !important;
    display: grid !important;
    place-items: center !important;
    border: 0 !important;
    border-radius: 23px !important;
    background: linear-gradient(145deg,rgba(255,255,255,.105),transparent 58%),rgba(10,132,255,.12) !important;
    color: #65b5ff !important;
    box-shadow: inset 0 0 0 1px rgba(74,166,255,.27),0 12px 30px rgba(0,83,170,.12) !important;
}
#kb-devtools-shield .kb-protection-mark svg { width: 34px !important; height: 34px !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.75 !important; stroke-linecap: round !important; stroke-linejoin: round !important; }
#kb-devtools-shield h1,
#adblock-takeover h1,
#adblock-takeover h2 {
    margin: 0 !important;
    color: var(--kb-protect-text) !important;
    font-size: clamp(30px,7vw,46px) !important;
    line-height: 1.06 !important;
    font-weight: 830 !important;
    letter-spacing: -.04em !important;
    text-shadow: none !important;
}
#kb-devtools-shield p,
#adblock-takeover p {
    max-width: 450px !important;
    margin: 13px auto 0 !important;
    color: var(--kb-protect-muted) !important;
    font-size: clamp(14px,3.8vw,17px) !important;
    line-height: 1.62 !important;
    text-shadow: none !important;
}
#kb-devtools-shield .kb-protection-meta,
#adblock-takeover .kb-protection-meta,
#adblock-takeover > div:first-child > div:last-child {
    margin-top: 25px !important;
    padding: 15px 16px !important;
    border: 0 !important;
    border-radius: 18px !important;
    background: var(--kb-protect-tile) !important;
    color: var(--kb-protect-subtle) !important;
    box-shadow: inset 0 0 0 1px var(--kb-protect-rim) !important;
    font: 620 11px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace !important;
    overflow-wrap: anywhere !important;
}
#adblock-takeover button,
#adblock-takeover a,
#kb-devtools-shield button {
    min-height: 46px !important;
    margin-top: 22px !important;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 17px !important;
    background: linear-gradient(145deg,rgba(255,255,255,.12),transparent 60%),rgba(255,255,255,.08) !important;
    color: var(--kb-protect-text) !important;
    box-shadow: inset 0 0 0 1px var(--kb-protect-rim) !important;
    font: 730 13px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text",Inter,sans-serif !important;
    text-decoration: none !important;
}

/* Final Liquid ownership for server-rendered 403/404/429/503 and ban pages. */
body.kb-error-page > .container,
body.kb-error-page .kb-error-shell {
    -webkit-clip-path: inset(0 round 26px) !important;
    clip-path: inset(0 round 26px) !important;
    background-clip: padding-box !important;
}

@media (max-width: 760px) {
    #kb-protection-notice {
        top: auto !important;
        bottom: max(104px,calc(env(safe-area-inset-bottom,0px) + 92px)) !important;
        border-radius: 20px !important;
        -webkit-clip-path: inset(0 round 20px) !important;
        clip-path: inset(0 round 20px) !important;
        transform: translate3d(-50%,14px,0) scale(.96) !important;
    }
    #kb-protection-notice.is-visible { transform: translate3d(-50%,0,0) scale(1) !important; }
    #kb-devtools-shield .kb-protection-panel,
    #adblock-takeover > div:first-child {
        padding: 30px 21px !important;
        border-radius: 24px !important;
        -webkit-clip-path: inset(0 round 24px) !important;
        clip-path: inset(0 round 24px) !important;
    }
    body.kb-error-page > .container,
    body.kb-error-page .kb-error-shell {
        -webkit-clip-path: inset(0 round 22px) !important;
        clip-path: inset(0 round 22px) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #kb-protection-notice { transition: none !important; }
}
