body.modal-open{overflow:hidden}
.legal-inline{display:inline;padding:0;border:0;background:none;color:#e89cff;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.modal-shell{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:24px;background:rgba(5,5,8,.78);backdrop-filter:blur(12px)}
.modal-shell[hidden]{display:none}
.modal-panel{display:flex;flex-direction:column;width:min(820px,100%);max-height:min(820px,calc(100vh - 48px));overflow:hidden;border:1px solid rgba(224,102,255,.28);border-radius:26px;background:#151519;box-shadow:0 32px 100px rgba(0,0,0,.7),0 0 45px rgba(192,0,255,.1)}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:26px 28px 22px;border-bottom:1px solid var(--line)}
.modal-head span{display:block;margin-bottom:8px;color:#b76ed3;font-family:ui-monospace,monospace;font-size:10px;font-weight:800;letter-spacing:.16em}
.modal-head h2{margin:0;font-size:clamp(28px,4vw,42px);line-height:1;letter-spacing:-.045em}
.modal-close{flex:0 0 auto;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#202026;color:#fff;font-size:27px;line-height:1;cursor:pointer}
.modal-close:hover{border-color:rgba(224,102,255,.5);background:#29232d}
.modal-scroll{overflow:auto;padding:28px;overscroll-behavior:contain}
.modal-scroll>p:first-child{margin-top:0}
.modal-scroll p,.modal-scroll li{color:#bbb6c1;font-size:15px;line-height:1.7}
.modal-scroll h3{margin:32px 0 10px;color:#fff;font-size:20px}
.modal-scroll a{color:#e89cff;text-decoration:underline;text-underline-offset:3px}
.legal-meta{padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#101014}
.legal-cookie-table{display:grid;gap:8px;margin:16px 0}
.legal-cookie-table>div{display:grid;grid-template-columns:minmax(180px,.75fr) 1.25fr;gap:18px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#101014}
.legal-cookie-table span{color:#aaa6b1;line-height:1.5}
.modal-lead{font-size:16px!important}
.cookie-category{display:flex!important;align-items:center;justify-content:space-between;gap:24px;margin:10px 0!important;padding:18px;border:1px solid var(--line);border-radius:15px;background:#101014;cursor:pointer}
.cookie-category div{min-width:0}
.cookie-category strong{display:block;margin-bottom:6px;color:#fff;font-size:15px}
.cookie-category p{margin:0;color:#96919c;font-size:12px;line-height:1.55}
.cookie-category input{flex:0 0 auto;width:22px;height:22px;margin:0;accent-color:#c000ff}
.always-on{flex:0 0 auto;padding:7px 9px;border-radius:999px;background:rgba(192,0,255,.12);color:#df91fa;font-size:10px;font-weight:800;text-transform:uppercase}
.cookie-note{margin:20px 0 0!important;color:#827d88!important;font-size:12px!important}
.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:18px 28px;border-top:1px solid var(--line)}
.modal-actions button{padding:12px 15px;border:1px solid var(--line);border-radius:10px;background:#232329;color:#fff;font-size:12px;font-weight:800;cursor:pointer}
.modal-actions .cookie-accept{border-color:#c000ff;background:#c000ff}
.cookie-actions{flex-wrap:wrap}
.cookie-actions button{white-space:nowrap}
.cookie-banner .cookie-accept,.cookie-banner .cookie-reject{border-color:rgba(224,102,255,.46);background:rgba(192,0,255,.13);box-shadow:none}
@media(max-width:700px){
  .modal-shell{align-items:end;padding:10px}
  .modal-panel{max-height:calc(100dvh - 20px);border-radius:22px}
  .modal-head{padding:21px 20px 18px}
  .modal-scroll{padding:20px}
  .modal-actions{display:grid;grid-template-columns:1fr 1fr;padding:15px 20px}
  .legal-cookie-table>div{grid-template-columns:1fr;gap:6px}
  .cookie-category{gap:14px;padding:15px}
  .cookie-banner{max-height:calc(100dvh - 28px);overflow:auto}
  .cookie-actions{grid-template-columns:1fr!important}
  .cookie-actions button{width:100%}
}
