/* XPScerpto Security Disclosure — calm, high-trust, mobile-first surface. */
:root{
  --security-ink:var(--xps-color-text);
  --security-muted:var(--xps-color-text-muted);
  --security-faint:var(--xps-color-text-muted);
  --security-line:var(--xps-color-border);
  --security-soft:var(--xps-color-text-muted);
  --security-paper:var(--xps-color-surface);
  --security-action:var(--xps-color-accent);
  --security-action-hover:var(--xps-color-accent);
  --security-positive:var(--xps-color-success);
  --security-warning:var(--xps-color-warning);
  --security-danger:var(--xps-color-danger);
  --security-focus:var(--xps-color-focus);
  --security-radius:1rem;
  --security-shadow:0 18px 45px var(--xps-shadow-color);
  --security-max:76rem;
}
html{scroll-behavior:smooth;}
body.page-security{background:linear-gradient(180deg,var(--xps-color-canvas-deep) 0,var(--xps-color-canvas-deep) 24rem);color:var(--security-ink);}
body.page-security main{min-height:60vh;}
.security-skip-link{position:fixed;inset-block-start:.5rem;inset-inline-start:.5rem;z-index:1000;padding:.75rem 1rem;border:2px solid var(--security-ink);border-radius:.45rem;background:var(--security-paper);color:var(--security-ink);font-weight:800;text-decoration:none;transform:translateY(calc(-100% - 1rem));transition:transform .14s ease;}
.security-skip-link:focus{transform:translateY(0);}
body.page-security .btn{display:inline-flex;align-items:center;justify-content:center;min-block-size:2.75rem;padding:.72rem 1.1rem;border:1px solid transparent;border-radius:.7rem;font:inherit;font-weight:720;text-decoration:none;cursor:pointer;transition:transform .14s ease,background-color .14s ease,border-color .14s ease;}
body.page-security .btn.primary{background:var(--security-action);color:var(--xps-color-text-inverse);}
body.page-security .btn.primary:hover{background:var(--security-action-hover);transform:translateY(-1px);}
body.page-security .btn.secondary{background:var(--security-paper);border-color:var(--xps-color-border-strong);color:var(--security-ink);}
body.page-security .btn.secondary:hover{border-color:var(--security-action);color:var(--security-action);}
body.page-security .btn:disabled{cursor:not-allowed;opacity:.62;transform:none;}
body.page-security :where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--security-focus);outline-offset:3px;}
body.page-security :is(.security-local-nav a,.security-mobile-nav summary,.security-mobile-nav a):focus-visible{outline:3px solid var(--security-focus);outline-offset:3px;}
/* Route-level section navigation. Desktop uses non-shrinking links; mobile uses
   a native disclosure selector so long labels never compete for one row. */
.security-local-nav{position:sticky;inset-block-start:0;z-index:20;border-block:1px solid var(--xps-color-border-strong);background:var(--xps-color-surface-raised);backdrop-filter:blur(12px);}
.security-local-nav>ul{box-sizing:border-box;display:flex;flex-wrap:nowrap;gap:.25rem;max-width:var(--security-max);margin:0 auto;padding:.65rem clamp(1rem,3vw,2rem);overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;scrollbar-width:thin;list-style:none;}
.security-local-nav li{flex:0 0 auto;min-width:max-content;scroll-snap-align:start;}
.security-local-nav a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:max-content;min-block-size:2.75rem;padding:.58rem .78rem;border-radius:.55rem;color:var(--security-muted);font-weight:680;white-space:nowrap;overflow:visible;text-overflow:clip;text-decoration:none;}
.security-local-nav a:hover,
.security-local-nav a.active{background:var(--xps-color-status-success-surface);color:var(--security-action);}
.security-local-nav a.active{box-shadow:inset 0 -2px 0 var(--security-action);}
.security-mobile-nav{display:none;}
.security-hero,
.security-form-shell,
.security-status-shell,
.security-advisories-shell,
.security-policy-grid,
.security-final-action{max-width:var(--security-max);margin-inline:auto;padding-inline:clamp(1rem,3vw,2rem);}
.security-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(2rem,6vw,6rem);align-items:end;padding-block:clamp(3rem,8vw,7rem) clamp(2.5rem,6vw,5rem);}
.security-hero-copy{max-width:52rem;}.eyebrow{margin:0 0 .7rem;color:var(--security-action);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
.security-hero h1,
.security-form-intro h1,
.security-status-intro h1{max-width:20ch;margin:.15rem 0 1rem;font-size:clamp(2.25rem,6vw,5.1rem);line-height:.98;letter-spacing:-.045em;}
.security-hero-copy>p:not(.eyebrow),
.security-form-intro>p:not(.eyebrow),
.security-status-intro>p:not(.eyebrow){max-width:64ch;margin:0;color:var(--security-muted);font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.7;}
.security-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-block-start:1.75rem;}
.security-policy-stamp{display:grid;gap:.35rem;min-width:15rem;padding:1.25rem;border-inline-start:3px solid var(--security-action);background:var(--xps-color-canvas-deep);color:var(--security-muted);}
.security-policy-stamp strong{overflow-wrap:anywhere;color:var(--security-ink);font-size:.78rem;}
.security-legal-status{max-width:var(--security-max);margin:0 auto clamp(2rem,5vw,4rem);padding:1rem clamp(1rem,3vw,2rem);border-block:1px solid var(--xps-color-border-strong);background:var(--xps-color-canvas-deep);color:var(--xps-color-text-inverse);}
.security-legal-status.approved{background:var(--xps-color-status-success-surface);color:var(--xps-color-success);}.security-legal-status strong{display:block;margin-block-end:.3rem;}.security-legal-status p{margin:0;max-width:82ch;line-height:1.62;}
.security-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding-block-end:clamp(3rem,7vw,6rem);}
.security-policy-section{position:relative;min-width:0;padding:clamp(1.4rem,3vw,2.4rem);border-block-start:1px solid var(--security-line);}
.security-policy-section:nth-child(odd){border-inline-end:1px solid var(--security-line);}
.security-policy-section.security-wide{grid-column:1/-1;border-inline-end:0;}
.security-policy-section h2{margin:.2rem 0 1rem;font-size:clamp(1.35rem,2.3vw,1.9rem);}
.security-policy-section p,
.security-policy-section li{color:var(--security-muted);line-height:1.65;}
.security-policy-section ul{margin:.7rem 0 0;padding-inline-start:1.25rem;}.security-policy-section li+li{margin-block-start:.5rem;}
.security-index{margin:0!important;color:var(--xps-color-text-inverse)!important;font:700 .75rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;}
.security-asset-list{list-style:none;padding:0!important;}.security-asset-list li{display:inline-block;margin:.25rem .25rem .25rem 0;padding:.45rem .65rem;border:1px solid var(--xps-color-border-strong);border-radius:.5rem;background:var(--xps-color-canvas-deep);}
.security-prohibited{background:var(--xps-color-canvas-deep);}.security-final-action{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-block-end:5rem;padding-block:2rem;border-block:1px solid var(--security-line);}
.security-final-action h2{margin:.2rem 0 0;font-size:clamp(1.6rem,3vw,2.5rem);}
.security-form-shell,
.security-status-shell{padding-block:clamp(3rem,7vw,6rem);}
.security-form-intro,
.security-status-intro{max-width:52rem;margin-block-end:2rem;}
.security-form-assurance{display:flex;flex-wrap:wrap;gap:.5rem;margin-block-start:1.3rem;}.security-form-assurance span{padding:.38rem .55rem;border:1px solid var(--xps-color-border-strong);border-radius:.45rem;background:var(--xps-color-canvas-deep);color:var(--xps-color-text-inverse);font:700 .72rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;}
.security-report-form,
.security-status-form,
.security-followup-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;padding:clamp(1.1rem,3vw,2rem);border:1px solid var(--security-line);border-radius:var(--security-radius);background:var(--security-paper);box-shadow:var(--security-shadow);}
.security-report-form label,
.security-status-form label,
.security-followup-form label{display:grid;gap:.45rem;min-width:0;color:var(--xps-color-text-inverse);font-weight:700;}
.security-report-form input,
.security-report-form select,
.security-report-form textarea,
.security-status-form input,
.security-followup-form textarea{box-sizing:border-box;width:100%;min-height:2.9rem;padding:.72rem .82rem;border:1px solid var(--xps-color-border-strong);border-radius:.55rem;background:var(--xps-color-surface-raised);color:var(--xps-color-text-inverse);font:inherit;line-height:1.5;}
.security-report-form textarea,
.security-followup-form textarea{resize:vertical;}.security-report-form :is(input,select,textarea):hover,
.security-status-form input:hover,
.security-followup-form textarea:hover{border-color:var(--xps-color-border-strong);}
.security-report-form [aria-invalid=true],
.security-status-form [aria-invalid=true],
.security-followup-form [aria-invalid=true]{border-color:var(--security-danger);box-shadow:0 0 0 1px var(--security-danger);}
.security-field-wide{grid-column:1/-1;}.security-progressive{min-width:0;padding:.85rem;border:1px solid var(--xps-color-border-strong);border-radius:.6rem;background:var(--xps-color-canvas-deep);}.security-progressive summary{display:flex;align-items:center;min-block-size:2.75rem;padding-inline:.2rem;cursor:pointer;font-weight:750;}.security-progressive label{margin-block-start:.85rem;}.security-honeypot{position:absolute!important;inset-inline-start:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
.security-submit-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block-start:.5rem;}.security-submit-row p,
.security-attachment-disabled{margin:0;color:var(--security-faint);font-size:.9rem;line-height:1.5;}.security-attachment-disabled{padding:.8rem 1rem;border-inline-start:3px solid var(--security-warning);background:var(--xps-color-canvas-deep);}
.security-error-summary{max-width:62rem;margin:0 0 1.25rem;padding:1rem 1.1rem;border:2px solid var(--security-danger);border-radius:.65rem;background:var(--xps-color-status-danger-surface);color:var(--xps-color-denied);}.security-error-summary h2{margin:0 0 .4rem;font-size:1.1rem;}.security-error-summary p,
.security-error-summary ul{margin:.35rem 0;}.security-error-summary a{color:inherit;font-weight:700;}
.security-report-success{max-width:55rem;margin-block-start:1.5rem;padding:clamp(1.3rem,3vw,2.2rem);border:2px solid var(--xps-color-success);border-radius:var(--security-radius);background:var(--xps-color-status-success-surface);}.security-report-success h2{margin:.2rem 0 1.3rem;font-size:clamp(1.55rem,3vw,2.3rem);}.security-report-success dl{display:grid;gap:.8rem;}.security-report-success dl div{display:grid;grid-template-columns:minmax(9rem,.35fr) 1fr;gap:1rem;padding-block:.6rem;border-block-end:1px solid var(--xps-color-success);}.security-report-success dt{font-weight:750;}.security-report-success dd{margin:0;}.security-report-success code{display:block;overflow-wrap:anywhere;font-size:clamp(.85rem,2vw,1.08rem);}
.security-status-form{grid-template-columns:1fr 1fr auto;align-items:end;max-width:70rem;}.security-status-result{margin-block-start:1.4rem;padding:clamp(1.1rem,3vw,2rem);border:1px solid var(--security-line);border-radius:var(--security-radius);background:var(--xps-color-canvas-deep);}.security-status-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-block-end:1rem;border-block-end:1px solid var(--security-line);}.security-status-head h2{margin:0;}.security-status-badge{display:inline-flex;padding:.38rem .62rem;border:1px solid var(--xps-color-border-strong);border-radius:999px;background:var(--xps-color-canvas-deep);font-weight:750;}.security-status-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin-block:1rem;}.security-status-meta div{padding:.75rem;background:var(--xps-color-canvas-deep);}.security-status-meta dt{color:var(--security-faint);font-size:.8rem;}.security-status-meta dd{margin:.25rem 0 0;overflow-wrap:anywhere;font-weight:700;}.security-timeline{position:relative;margin:1.2rem 0 0;padding:0;list-style:none;}.security-timeline li{position:relative;margin-inline-start:.55rem;padding:0 0 1.2rem 1.4rem;border-inline-start:2px solid var(--xps-color-border-strong);}.security-timeline li::before{content:"";position:absolute;inset-inline-start:-.42rem;inset-block-start:.15rem;width:.72rem;height:.72rem;border:2px solid var(--security-action);border-radius:50%;background:var(--xps-color-canvas-deep);}.security-timeline strong{display:block;}.security-timeline time{color:var(--security-faint);font-size:.85rem;}.security-message-list article{margin-block:.75rem;padding:.85rem;border-inline-start:3px solid var(--xps-color-border-strong);background:var(--xps-color-canvas-deep);}.security-message-list p{white-space:pre-wrap;}.security-followup-form{grid-template-columns:1fr;max-width:70rem;margin-block-start:1.4rem;}.security-followup-form h2{margin:0;}
.security-advisories-shell{padding-block:clamp(3rem,7vw,6rem);}.security-empty{padding:2rem;border-block:1px solid var(--security-line);color:var(--security-muted);}.security-advisory{padding-block:2rem;border-block-start:1px solid var(--security-line);}.security-advisory header{max-width:60rem;}.security-advisory h2{margin:.2rem 0 .7rem;font-size:clamp(1.6rem,3vw,2.4rem);}.security-advisory header>p:not(.eyebrow){color:var(--security-muted);font-size:1.08rem;line-height:1.65;}.security-advisory dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;}.security-advisory dl div{padding:1rem;background:var(--xps-color-canvas-deep);}.security-advisory dt{color:var(--security-faint);font-weight:700;}.security-advisory dd{margin:.5rem 0 0;line-height:1.55;}
.security-live-note{padding:.8rem 1rem;border-inline-start:3px solid var(--security-action);background:var(--xps-color-canvas-deep);color:var(--xps-color-text-inverse);}
[hidden]{display:none!important;}
@media (max-width:820px){
 .security-local-nav{display:none;}
 .security-mobile-nav{box-sizing:border-box;display:block;width:min(calc(100% - 1.5rem),var(--security-max));margin:.75rem auto 0;border:1px solid var(--security-line);border-radius:.8rem;background:var(--xps-color-canvas-deep);box-shadow:0 8px 24px var(--xps-shadow-color);}
 .security-mobile-nav summary{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;min-block-size:3.25rem;padding:.72rem .9rem;cursor:pointer;list-style:none;color:var(--security-ink);}
 .security-mobile-nav summary::-webkit-details-marker{display:none;}
 .security-mobile-nav-copy{display:grid;gap:.18rem;min-width:0;}
 .security-mobile-nav-copy>span{color:var(--security-faint);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
 .security-mobile-nav-copy>strong{min-width:0;overflow-wrap:anywhere;line-height:1.35;}
 .security-mobile-nav-chevron{font-size:1.35rem;line-height:1;transition:transform .14s ease;}
 .security-mobile-nav[open] .security-mobile-nav-chevron{transform:rotate(180deg);}
 .security-mobile-nav>nav{border-block-start:1px solid var(--security-line);padding:.4rem;}
 .security-mobile-nav ul{display:grid;gap:.25rem;margin:0;padding:0;list-style:none;}
 .security-mobile-nav li{min-width:0;}
 .security-mobile-nav a{box-sizing:border-box;display:flex;align-items:center;width:100%;min-width:0;min-block-size:3rem;padding:.7rem .75rem;border-radius:.55rem;color:var(--security-muted);font-weight:700;white-space:normal;overflow-wrap:anywhere;text-decoration:none;}
 .security-mobile-nav a:hover,
.security-mobile-nav a.active{background:var(--xps-color-status-success-surface);color:var(--security-action);}
 .security-mobile-nav a.active{box-shadow:inset 3px 0 0 var(--security-action);}
 html[dir="rtl"] .security-mobile-nav a.active{box-shadow:inset -3px 0 0 var(--security-action);}
 .security-hero{grid-template-columns:1fr;align-items:start;}.security-policy-stamp{min-width:0;}.security-policy-grid{grid-template-columns:1fr;}.security-policy-section:nth-child(odd){border-inline-end:0;}.security-policy-section.security-wide{grid-column:auto;}.security-final-action,
.security-submit-row,
.security-status-head{align-items:stretch;flex-direction:column;}.security-report-form,
.security-status-form{grid-template-columns:1fr;}.security-field-wide{grid-column:auto;}.security-status-meta,
.security-advisory dl{grid-template-columns:1fr;}.security-report-success dl div{grid-template-columns:1fr;gap:.25rem;}.security-hero h1,
.security-form-intro h1,
.security-status-intro h1{font-size:clamp(2.15rem,12vw,3.5rem);}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,
*::before,
*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}}
@media (forced-colors:active){.security-policy-stamp,
.security-form-assurance span,
.security-legal-status,
.security-attachment-disabled{border:1px solid CanvasText;}.security-timeline li::before{forced-color-adjust:auto;}}
@media print{.security-local-nav,
.security-actions,
.security-final-action,
.security-report-form,
.security-status-form,
.security-followup-form{display:none!important;}body.page-security{background:var(--xps-color-canvas-deep);}.security-policy-grid{display:block;}.security-policy-section{break-inside:avoid;}}

/* R03 actual-browser visual closure: isolate the light security surface from
   the dark public-site heading tokens and restore WCAG-readable footer text. */
body.page-security main :is(h1,h2,h3,h4){color:var(--security-ink);}
body.page-security .security-error-summary h2{color:var(--xps-color-denied);}
body.page-security .security-report-success h2{color:var(--xps-color-success);}
html[dir="rtl"] body.page-security main :is(h1,h2,h3,h4){letter-spacing:0;line-height:1.15;}
.security-followup-session{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:70rem;margin-block:1rem;padding:.85rem 1rem;border:1px solid var(--security-line);border-inline-start:4px solid var(--security-action);border-radius:.65rem;background:var(--xps-color-canvas-deep);}.security-followup-session p{margin:0;line-height:1.55;}.security-followup-session .btn{flex:0 0 auto;}
@media (max-width:820px){.security-followup-session{align-items:stretch;flex-direction:column;}.security-followup-session .btn{width:100%;}}

.security-posture-section{max-width:var(--security-max);margin-inline:auto;padding-inline:clamp(1rem,3vw,2rem);}

.security-posture-section{padding-block:clamp(1.75rem,4vw,3rem);}
.security-posture-section>h2{margin:0 0 1rem;font-size:clamp(1.45rem,2.5vw,2rem);}
.security-posture-section>.security-posture-grid{max-width:none;margin:0;padding-inline:0;}
