.gb-privacy-root{
  --gb-room:#071426;--gb-room-2:#0d1d33;--gb-blue:#2ea8e5;--gb-cyan:#67d8f3;
  --gb-white:#f8fafd;--gb-ink:#101a2b;--gb-muted:#aebbd0;--gb-border:rgba(103,216,243,.24);
  --gb-danger:#d55c6a;--gb-warning:#e6a642;--gb-radius:16px;
}
.gb-privacy-root,.gb-privacy-root *{box-sizing:border-box}
.gb-privacy-root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--gb-white)}
.gb-privacy-root button,.gb-privacy-root a,.gb-privacy-root input{font:inherit}
.gb-privacy-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:2147483000;display:grid;grid-template-columns:auto minmax(260px,1fr) auto;gap:18px;align-items:center;padding:20px;border:1px solid var(--gb-border);border-radius:20px;background:linear-gradient(145deg,rgba(13,29,51,.98),rgba(7,20,38,.99));box-shadow:0 24px 80px rgba(0,0,0,.52),0 0 0 1px rgba(46,168,229,.05) inset;backdrop-filter:blur(18px)}
.gb-privacy-banner[hidden],.gb-privacy-dialog[hidden],.gb-privacy-backdrop[hidden]{display:none!important}
.gb-privacy-mark{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(103,216,243,.35);border-radius:16px;background:linear-gradient(145deg,rgba(46,168,229,.24),rgba(123,97,255,.15));color:var(--gb-cyan);font-weight:900;letter-spacing:.08em}
.gb-privacy-copy strong{display:block;margin-bottom:5px;font-size:1.13rem;line-height:1.25;color:var(--gb-white)}
.gb-privacy-copy p{margin:0;color:#d7e0ee;line-height:1.5;font-size:.95rem;max-width:760px}
.gb-privacy-copy a{display:inline-flex;margin-top:7px;color:var(--gb-cyan);font-size:.88rem;text-decoration:none}
.gb-privacy-copy a:hover{text-decoration:underline}
.gb-privacy-actions,.gb-privacy-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.gb-privacy-root .gb-button{min-height:46px;padding:11px 17px;border-radius:12px;border:1px solid transparent;cursor:pointer;font-weight:800;line-height:1.15;transition:transform .15s ease,border-color .15s ease,background .15s ease}
.gb-privacy-root .gb-button:hover{transform:translateY(-1px)}
.gb-privacy-root .gb-button:focus-visible,.gb-privacy-launcher:focus-visible,.gb-privacy-launcher-dismiss:focus-visible,.gb-privacy-dialog header button:focus-visible,.gb-privacy-withdraw:focus-visible,.gb-privacy-option input:focus-visible+.gb-privacy-switch{outline:3px solid var(--gb-cyan);outline-offset:3px}
.gb-privacy-root .gb-button-primary{background:linear-gradient(135deg,var(--gb-blue),#1d7fc9);color:#04101f;box-shadow:0 10px 28px rgba(46,168,229,.25)}
.gb-privacy-root .gb-button-outline{background:rgba(7,20,38,.5);border-color:rgba(248,250,253,.34);color:var(--gb-white)}
.gb-privacy-root .gb-button-quiet{background:transparent;border-color:rgba(46,168,229,.45);color:var(--gb-cyan)}
.gb-privacy-launcher-group{position:fixed;left:18px;bottom:18px;z-index:2147482990;display:inline-flex;align-items:center;gap:7px}.gb-privacy-launcher-group[hidden]{display:none!important}.gb-privacy-launcher{position:static;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid var(--gb-border);border-radius:999px;background:rgba(7,20,38,.96);color:var(--gb-white);box-shadow:0 12px 34px rgba(0,0,0,.4);cursor:pointer;font-weight:750}.gb-privacy-launcher-dismiss{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;padding:0;border:1px solid var(--gb-border);border-radius:999px;background:rgba(7,20,38,.96);color:var(--gb-muted);box-shadow:0 12px 34px rgba(0,0,0,.4);cursor:pointer;font-size:20px;line-height:1}.gb-privacy-launcher-dismiss:hover{border-color:rgba(103,216,243,.58);color:var(--gb-white);background:rgba(13,29,51,.98)}
.gb-privacy-launcher span{color:var(--gb-cyan)}
.gb-privacy-backdrop{position:fixed;inset:0;z-index:2147483001;background:rgba(2,9,18,.76);backdrop-filter:blur(5px)}
.gb-privacy-dialog{position:fixed;left:50%;top:50%;z-index:2147483002;width:min(680px,calc(100vw - 32px));max-height:min(850px,calc(100vh - 32px));overflow:auto;transform:translate(-50%,-50%);border:1px solid var(--gb-border);border-radius:24px;background:linear-gradient(160deg,var(--gb-room-2),var(--gb-room));box-shadow:0 32px 110px rgba(0,0,0,.68);padding:24px}
.gb-privacy-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid rgba(174,187,208,.18)}
.gb-privacy-kicker{display:block;color:var(--gb-cyan);font-size:.74rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.gb-privacy-dialog h2{margin:5px 0 7px;font-size:clamp(1.45rem,4vw,2rem);line-height:1.12;color:var(--gb-white)}
.gb-privacy-dialog header p{margin:0;color:var(--gb-muted);line-height:1.45}
.gb-privacy-dialog header button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid rgba(248,250,253,.22);border-radius:12px;background:rgba(255,255,255,.03);color:var(--gb-white);font-size:1.75rem;cursor:pointer}
.gb-privacy-option{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid rgba(174,187,208,.16);cursor:pointer}
.gb-privacy-option-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(46,168,229,.3);border-radius:12px;background:rgba(46,168,229,.09);color:var(--gb-cyan);font-size:1.2rem;font-weight:900}
.gb-privacy-option strong{display:block;color:var(--gb-white);font-size:1rem}
.gb-privacy-option p{margin:4px 0 0;color:var(--gb-muted);font-size:.89rem;line-height:1.45}
.gb-privacy-always{color:var(--gb-cyan);font-size:.86rem;font-weight:800;white-space:nowrap}
.gb-privacy-option input{position:absolute;opacity:0;pointer-events:none}
.gb-privacy-switch{position:relative;width:52px;height:30px;border-radius:999px;background:#536078;box-shadow:0 0 0 1px rgba(255,255,255,.12) inset;transition:background .18s ease}
.gb-privacy-switch:before{content:"";position:absolute;left:4px;top:4px;width:22px;height:22px;border-radius:50%;background:var(--gb-white);box-shadow:0 2px 7px rgba(0,0,0,.4);transition:transform .18s ease}
.gb-privacy-option input:checked+.gb-privacy-switch{background:var(--gb-blue)}
.gb-privacy-option input:checked+.gb-privacy-switch:before{transform:translateX(22px)}
.gb-privacy-option input:disabled+.gb-privacy-switch{opacity:.48;cursor:not-allowed}
.gb-privacy-dialog-actions{padding-top:22px}
.gb-privacy-root .gb-privacy-dialog-actions .gb-button{flex:1 1 210px}
.gb-privacy-withdraw{display:block;margin:15px auto 0;padding:9px 12px;border:0;background:transparent;color:#ff9aaa;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:.88rem}
.gb-privacy-status{min-height:1.4em;margin:11px 0 0;text-align:center;color:var(--gb-cyan);font-size:.86rem}
body.gb-privacy-locked{overflow:hidden}
@media (max-width:900px){
  .gb-privacy-banner{grid-template-columns:auto 1fr;left:12px;right:12px;bottom:12px;padding:17px;gap:13px}
  .gb-privacy-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;width:100%}
  .gb-privacy-root .gb-button{padding:11px 12px}
}
@media (max-width:620px){
  body:has(.gbv2-bottom-nav) .gb-privacy-launcher-group,body:has(.gb-mobile-bottom-nav) .gb-privacy-launcher-group{bottom:calc(82px + env(safe-area-inset-bottom))}

  .gb-privacy-banner{display:block;max-height:calc(100vh - 24px);overflow:auto}
  .gb-privacy-mark{width:44px;height:44px;margin-bottom:12px}
  .gb-privacy-copy p{font-size:.91rem}
  .gb-privacy-actions{display:flex;flex-direction:column;margin-top:15px}
  .gb-privacy-root .gb-privacy-actions .gb-button{width:100%}
  .gb-privacy-dialog{top:auto;bottom:0;left:0;width:100%;max-height:92vh;transform:none;border-radius:22px 22px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}
  .gb-privacy-option{grid-template-columns:40px minmax(0,1fr) auto;gap:10px}
  .gb-privacy-option p{font-size:.84rem}
  .gb-privacy-launcher-group{left:10px;bottom:calc(10px + env(safe-area-inset-bottom))}.gb-privacy-launcher{font-size:.85rem}.gb-privacy-launcher-dismiss{width:32px;height:32px;flex-basis:32px}
}
@media (prefers-reduced-motion:reduce){.gb-privacy-root *{scroll-behavior:auto!important;transition:none!important}}
