/* Approved additions on top of the verbatim design CSS (uses its tokens). */
.consent-banner{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:50;max-width:640px;margin:0 auto;padding:18px 22px;background:rgba(17,27,51,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--white);border:1px solid var(--line);border-radius:18px;font-family:var(--font-body);font-size:.9rem;line-height:1.5;box-shadow:0 18px 50px -20px #000}
.consent-banner p{margin:0;color:var(--muted)}
.consent-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:14px}
.consent-actions button{flex:1;max-width:160px;min-height:42px;border-radius:999px;font-family:var(--font-sub);font-weight:800;font-size:.9rem;cursor:pointer}
.consent-actions button:focus-visible{outline:3px solid var(--white);outline-offset:3px}
.consent-reject{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.3)}
.consent-accept{background:var(--lime);color:var(--ink);border:0}
.sys-page{position:relative;overflow:hidden;min-height:100svh;display:flex;align-items:center;justify-content:center;padding:22px;text-align:center}
.sys-page::before{content:"";position:absolute;left:50%;top:50%;width:min(820px,150vw);aspect-ratio:1.6;transform:translate(-50%,-50%);background:radial-gradient(ellipse,rgba(43,72,172,.45) 0%,rgba(15,22,41,0) 65%);pointer-events:none}
.sys-box{position:relative;max-width:28rem}
.sys-code{font-family:var(--font-heading);font-size:clamp(4rem,18vw,6rem);line-height:1;color:var(--lime)}
.sys-title{margin-top:16px;font-family:var(--font-heading);font-size:clamp(1.8rem,7vw,2.4rem);line-height:1.08}
.sys-code+.sys-title{font-family:var(--font-sub);font-weight:800;font-size:1.2rem}
.sys-text{margin:10px 0 0;color:var(--muted);font-size:.94rem}
.sys-actions{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.sys-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;border-radius:999px;font-family:var(--font-sub);font-weight:800;font-size:.9rem;text-decoration:none;cursor:pointer;color:var(--white);background:transparent;border:1px solid rgba(255,255,255,.3)}
.sys-btn--primary{background:var(--lime);color:var(--ink);border-color:transparent}
.sys-btn:focus-visible{outline:3px solid var(--white);outline-offset:4px}
.cta-status{margin:10px 0 0;min-height:0;font-size:.85rem;color:var(--muted)}
.cta-status:empty{display:none}
