.sy-cb{--sy-layer-banner:45;font-family:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font-size:15px;line-height:1.45;color:#1a1a1a}
html:not([data-sy-consent=ok]){scroll-padding-bottom:200px}
html[data-sy-consent=ok] .sy-cb-banner,html[data-sy-consent=ok] .sy-cb-skip{display:none}
.sy-cb-banner{position:fixed;left:0;right:0;bottom:0;z-index:var(--sy-layer-banner);background:#ffffff;color:#1a1a1a;box-shadow:0 -2px 12px rgba(0,0,0,.18);border-top:1px solid #8a8a8a;max-height:70vh;overflow:auto}
.sy-cb-banner:focus{outline:none}
.sy-cb-inner{max-width:960px;margin:0 auto;padding:16px;display:grid;gap:12px}
.sy-cb-title{font-size:1.1em;font-weight:700;margin:0}
.sy-cb p{margin:0}
.sy-cb a{color:#0b57d0;text-decoration:underline}
.sy-cb-gpc{display:none;font-weight:600}
html[data-sy-consent=gpc] .sy-cb-gpc{display:block}
.sy-cb-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sy-cb-dialog .sy-cb-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:600px){.sy-cb-actions,.sy-cb-dialog .sy-cb-actions{grid-template-columns:1fr}}
.sy-cb-btn{box-sizing:border-box;min-height:44px;margin:0;padding:10px 16px;font:inherit;font-size:15px;font-weight:600;line-height:1.2;background:#ffffff;color:#1a1a1a;border:2px solid #1a1a1a;border-radius:6px;cursor:pointer;text-align:center}
.sy-cb-btn:hover{text-decoration:underline}
.sy-cb a:focus-visible,.sy-cb-btn:focus-visible,.sy-cb-x:focus-visible,.sy-cb-skip:focus-visible,.sy-cb-dialog input:focus-visible{outline:3px solid #0b57d0;outline-offset:2px}
.sy-cb-skip{position:absolute;left:8px;top:8px;z-index:var(--sy-layer-banner,45);padding:8px 12px;background:#ffffff;color:#0b57d0;transform:translateY(-200%)}
.sy-cb-skip:focus{transform:none}
.sy-cb-dialog{max-width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #8a8a8a;border-radius:6px;background:#ffffff;color:#1a1a1a}
.sy-cb-dialog::backdrop{background:rgba(0,0,0,.45)}
.sy-cb-dialog>.sy-cb-inner{--sy-cb-dp:16px;max-height:inherit;padding:0;display:flex;flex-direction:column;gap:0}
.sy-cb-dhead{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px var(--sy-cb-dp);border-bottom:1px solid #8a8a8a}
.sy-cb-x{flex:none;display:grid;place-items:center;box-sizing:border-box;width:44px;height:44px;margin:0;padding:0;font:inherit;background:none;color:inherit;border:0;border-radius:6px;cursor:pointer}
.sy-cb-x svg{width:22px;height:22px}
.sy-cb-x:hover{background:#e2e8f0}
.sy-cb-dbody{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;display:grid;gap:12px;padding:var(--sy-cb-dp)}
.sy-cb-dialog .sy-cb-actions{flex:none;padding:12px var(--sy-cb-dp);border-top:1px solid #8a8a8a;background:#ffffff}
.sy-cb-cat{border:1px solid #8a8a8a;border-radius:6px;padding:12px;display:grid;gap:8px}
.sy-cb-cat h3,.sy-cb-dialog h3{margin:0;font-size:1em}
.sy-cb-cat label{display:flex;gap:8px;align-items:center;font-weight:600}
.sy-cb-cat input{width:20px;height:20px;margin:0}
.sy-cb-cat dl{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:4px 12px;color:#4a4a4a}
.sy-cb-cat dt{font-weight:600}.sy-cb-cat dd{margin:0}
.sy-cb-cat ul{margin:0;padding-left:1.2em;color:#4a4a4a}
/* mybody.pl theme for the @sylentis/consent-banner shell (appended to its CSS by scripts/build-consent.mjs).
   Mirrors the Claude Design consent overlay: scrim + white card, Schibsted Grotesk, #5A3C8F buttons,
   switch-style category rows. Structure and copy stay the package's; only presentation is overridden. */
.sy-cb { font-family: 'Schibsted Grotesk', system-ui, sans-serif; color: #1E1D22; font-size: 16px; line-height: 1.55; }
.sy-cb a { color: #5A3C8F; }
.sy-cb a:focus-visible, .sy-cb-btn:focus-visible, .sy-cb-dialog input:focus-visible { outline: 3px solid #5A3C8F; outline-offset: 2px; }

/* Main view: full-screen scrim with a centred card */
.sy-cb-banner {
  inset: 0; max-height: none; display: flex; align-items: center; justify-content: center;
  padding: 16px; background: rgba(30, 29, 34, .55); border: 0; box-shadow: none; overflow: auto;
}
.sy-cb-banner .sy-cb-inner {
  width: 100%; max-width: 520px; padding: 28px; gap: 16px; background: #fff; border-radius: 16px;
  box-shadow: 0 20px 60px rgba(30, 29, 34, .3);
}
.sy-cb-title { font-size: 26px; font-weight: 800; line-height: 1.15; letter-spacing: -.025em; }
.sy-cb-body { color: #2E2C33; }
.sy-cb-btn {
  min-height: 52px; border: 0; border-radius: 10px; background: #5A3C8F; color: #fff;
  font-size: 16px; font-weight: 700; font-family: inherit;
}
.sy-cb-btn:hover { background: #452D70; text-decoration: none; }
.sy-cb-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sy-cb-banner .sy-cb-btn[data-sy-action="manage"] {
  grid-column: 1 / -1; min-height: 48px; background: #fff; color: #1E1D22; border: 1.5px solid #D9D3CA; font-weight: 600; font-size: 15px;
}
.sy-cb-banner .sy-cb-btn[data-sy-action="manage"]:hover { border-color: #5A3C8F; background: #fff; }
@media (max-width: 600px) { .sy-cb-actions, .sy-cb-dialog .sy-cb-actions { grid-template-columns: 1fr; } }

/* Settings view */
.sy-cb-dialog {
  width: 100%; max-width: min(520px, calc(100vw - 32px)); border: 0; border-radius: 16px;
  box-shadow: 0 20px 60px rgba(30, 29, 34, .3); font-family: 'Schibsted Grotesk', system-ui, sans-serif; color: #1E1D22;
}
.sy-cb-dialog::backdrop { background: rgba(30, 29, 34, .55); }
.sy-cb-dialog .sy-cb-inner { padding: 28px; gap: 4px; }
.sy-cb-dialog .sy-cb-title { font-size: 24px; margin-bottom: 8px; }
.sy-cb-cat { border: 0; border-top: 1px solid #EEE9E2; border-radius: 0; padding: 16px 0; gap: 6px; }
.sy-cb-cat label { width: 100%; font-weight: 700; font-size: 16px; }
.sy-cb-cat label input { order: 3; margin-left: auto; }
.sy-cb-cat label span { order: 2; color: #17694A; font-size: 13px; font-weight: 600; margin-left: 4px; }
.sy-cb-cat dl, .sy-cb-cat ul, .sy-cb-dialog p { color: #4A4650; font-size: 14px; line-height: 1.5; }
.sy-cb-dialog h3 { font-size: 14px; font-weight: 700; margin-top: 6px; }
.sy-cb-dialog code { font-size: 13px; }
.sy-cb-dialog .sy-cb-inner > div:not(.sy-cb-cat):not(.sy-cb-actions) { border-top: 1px solid #EEE9E2; padding: 14px 0 0; margin-top: 4px; }
.sy-cb-dialog .sy-cb-actions { margin-top: 16px; }
.sy-cb-dialog .sy-cb-btn { background: #fff; color: #5A3C8F; border: 1.5px solid #5A3C8F; }
.sy-cb-dialog .sy-cb-btn[data-sy-action="save_preferences"] { background: #5A3C8F; color: #fff; }
.sy-cb-dialog .sy-cb-btn:hover { background: #F0EBF7; }
.sy-cb-dialog .sy-cb-btn[data-sy-action="save_preferences"]:hover { background: #452D70; }

/* Checkboxes drawn as the design's 52x30 switch (still real, keyboard-operable inputs) */
.sy-cb-cat input[type="checkbox"] {
  appearance: none; -webkit-appearance: none; flex: none; width: 52px; height: 30px; border-radius: 99px; margin: 0;
  background: #B9B3C0; position: relative; cursor: pointer; transition: background .15s;
}
.sy-cb-cat input[type="checkbox"]::after {
  content: ''; position: absolute; top: 3px; left: 3px; width: 24px; height: 24px; border-radius: 50%; background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .25); transition: transform .15s;
}
.sy-cb-cat input[type="checkbox"]:checked { background: #5A3C8F; }
.sy-cb-cat input[type="checkbox"]:checked::after { transform: translateX(22px); }
.sy-cb-cat input[type="checkbox"]:disabled { background: #17694A; cursor: default; opacity: .85; }
@media (prefers-reduced-motion: reduce) { .sy-cb-cat input[type="checkbox"], .sy-cb-cat input[type="checkbox"]::after { transition: none; } }
