#cookie-banner,#cookie-banner *,#cookie-legal-reader,#cookie-legal-reader *{box-sizing:border-box}
#cookie-overlay{display:none!important}
#cookie-banner,#cookie-legal-reader{color:#243247;background:#fff;border:0;box-shadow:0 12px 60px #07172b33;font:inherit}
#cookie-banner::backdrop,#cookie-legal-reader::backdrop{background:rgba(8,20,36,.48)}
#cookie-banner{position:fixed;inset:auto 0 0;margin:0 auto;padding:24px max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom));width:100%;max-width:none;max-height:88vh;max-height:88dvh;overflow:auto;border-radius:20px 20px 0 0;overscroll-behavior:contain}
.cookie-layout{max-width:1060px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px 36px;align-items:center}
#cookie-banner h2{font-size:1.25rem;font-weight:700;margin:0 0 10px;color:#17283d}
#cookie-banner p{font-size:1rem;line-height:1.5;margin:0 0 9px}
#cookie-banner a{color:#145ba5;text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#cookie-banner button,#cookie-legal-reader button{font:inherit;cursor:pointer;border-radius:9px;min-height:46px;padding:10px 12px;line-height:1.3}
#cookie-banner button:focus-visible,#cookie-legal-reader button:focus-visible{outline:3px solid #f4ac35;outline-offset:3px}
#btn-configure{grid-column:1/-1;border:1px solid #a8b4c2;background:#fff;color:#243247}
#cookie-banner .cookie-decision{background:#163e68;color:#fff;border:1px solid #163e68;font-weight:600}
#cookie-banner .cookie-decision:hover{background:#0e2b49}
#config-panel{grid-column:1/-1;border-top:1px solid #dce3eb;padding-top:12px}
#config-panel[hidden],#btn-cancel[hidden]{display:none!important}
.cookie-purpose{display:flex;align-items:flex-start;gap:14px;padding:12px 0;border-bottom:1px solid #e8edf2;cursor:pointer}
.cookie-purpose input{flex:none;width:21px;height:21px;margin-top:3px;accent-color:#163e68}
.cookie-purpose small{display:block;color:#536276;line-height:1.45;font-size:.9rem;margin-top:4px}
.cookie-save-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
#btn-cancel{background:#fff;color:#243247;border:1px solid #a8b4c2}
.cookie-reopen{border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:3px;font:inherit;padding:0;cursor:pointer}
#cookie-legal-reader{padding:0;border-radius:16px;max-width:820px;width:calc(100% - 24px);max-height:88vh;max-height:88dvh;overflow:hidden;margin:auto}
#cookie-legal-reader[open]{display:flex;flex-direction:column}
.cookie-legal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e1e7ee;padding:16px 20px;flex-shrink:0}
#cookie-legal-title{font-size:1.1rem;margin:0;font-weight:700}
#cookie-legal-close{background:#edf2f7;color:#243247;border:1px solid #b6c3d1;flex-shrink:0}
#cookie-legal-content{padding:20px;overflow:auto;overscroll-behavior:contain;font-size:1rem;line-height:1.65;overflow-wrap:anywhere}
#cookie-legal-content h1{font-size:1.6rem}#cookie-legal-content h2{font-size:1.25rem;margin-top:1.5rem}#cookie-legal-content h3{font-size:1.1rem}
#cookie-legal-content table{width:100%;border-collapse:collapse}#cookie-legal-content td,#cookie-legal-content th{padding:8px;border:1px solid #dce3eb;vertical-align:top}
@media(max-width:767px){.cookie-layout{grid-template-columns:1fr;gap:15px}#cookie-banner{padding:20px 18px max(20px,env(safe-area-inset-bottom))}#cookie-banner p{font-size:.95rem}.cookie-actions{gap:9px}#cookie-legal-content{padding:16px}#cookie-legal-content table,#cookie-legal-content tbody,#cookie-legal-content tr,#cookie-legal-content td,#cookie-legal-content th{display:block}.cookie-save-row button{flex:1}}

/* Shared legal summary in the standalone document and content-only reader. */
.legal-summary{background:color-mix(in srgb,var(--brand-accent,#2875a7) 9%,white);border:1px solid color-mix(in srgb,var(--brand-accent,#2875a7) 24%,white);border-left:4px solid var(--brand-accent,#2875a7);border-radius:14px;padding:clamp(18px,4vw,28px);margin:0 0 28px;color:#253346}
.legal-summary h2,#cookie-legal-content .legal-summary h2{margin:0 0 16px;color:var(--brand-header,#17385f);font-size:1.4rem}
.legal-summary>p:first-child{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px}
.legal-summary li{margin-bottom:10px;line-height:1.6}.legal-summary ul{padding-left:22px}.legal-summary>p:last-child{font-size:.9rem;margin:14px 0 0}
#cookie-legal-content table{width:100%;border-collapse:collapse}#cookie-legal-content td,#cookie-legal-content th{padding:10px;border:1px solid #dce4ee;text-align:left}
@media(max-width:600px){#cookie-legal-content table,#cookie-legal-content tbody,#cookie-legal-content tr,#cookie-legal-content td,#cookie-legal-content th{display:block}}
