:root{--paper: #F6F7F9;--surface: #FFFFFF;--surface-sunk: #EEF0F3;--rule: #DCE0E6;--rule-strong: #B9C0C9;--ink: #14181F;--ink-mid: #262C36;--ink-soft: #3E4652;--ink-faint: #7B8492;--layer-1: #6D28D9;--layer-2: #0284C7;--layer-3: #15803D;--layer-4: #A21CAF;--layer-5: #0D9488;--sev-critical: #9F1239;--sev-high: #C2410C;--sev-medium: #A16207;--sev-low: #57534E;--sev-info: #A8A29E;--sev-gap: #475569;--ok: #15803D;--warn: #A16207;--shadow-raise: 0 1px 2px rgba(20, 24, 31, .06);--shadow-float: 0 8px 28px -12px rgba(20, 24, 31, .28);--measure: 68ch}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:Archivo,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}.prose{font-family:"Source Serif 4",Georgia,serif;font-size:15px;line-height:1.62;color:var(--ink-mid);max-width:var(--measure)}.prose strong{color:var(--ink);font-weight:600}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.015em}h1{font-size:26px;letter-spacing:-.03em}h2{font-size:19px;letter-spacing:-.02em}h3{font-size:15px}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--layer-2);outline-offset:2px;border-radius:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.rail{background:var(--surface);border-right:1px solid var(--rule);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.rail-brand{padding:20px 18px 16px;border-bottom:1px solid var(--rule)}.rail-brand .mark{display:flex;align-items:baseline;gap:8px;font-size:15px;font-weight:700;letter-spacing:-.02em}.rail-brand .sub{margin-top:3px;font-size:11.5px;color:var(--ink-soft);letter-spacing:.01em}.rail-section{padding:14px 10px 4px}.rail-section>.title{padding:0 8px 7px;font-size:11px;font-weight:600;color:var(--ink-faint);letter-spacing:.04em}.rail-item{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;margin-bottom:1px;background:none;border:0;border-radius:5px;text-align:left;cursor:pointer;color:var(--ink-mid);font-size:13.5px}.rail-item:hover{background:var(--surface-sunk);color:var(--ink)}.rail-item[aria-current=page]{background:var(--surface-sunk);color:var(--ink);font-weight:600}.rail-item .spine{width:3px;height:17px;border-radius:2px;background:var(--rule-strong);flex:none}.rail-item .num{width:15px;font-size:11px;font-weight:700;color:var(--ink-faint);flex:none}.rail-item[aria-current=page] .num{color:var(--ink)}.rail-item .tally{margin-left:auto;font-size:11px;color:var(--ink-faint);font-weight:600}.rail-item .tally[data-critical=true]{color:var(--sev-critical)}.rail-foot{margin-top:auto;padding:14px 16px;border-top:1px solid var(--rule);font-size:12px;color:var(--ink-soft)}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;padding:0 26px;height:54px;background:var(--surface);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:20}.topbar .grow{flex:1}.topbar .stamp{font-size:12px;color:var(--ink-soft)}.page{padding:26px;max-width:1520px;width:100%}.page-head{display:grid;gap:14px}.page-head-row{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.page-head-row .grow{flex:1}.page-head h1{font-size:30px;letter-spacing:-.035em}.page-head-band{display:grid;gap:12px}.page-head[data-split=true] .page-head-band{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;align-items:start}.page-head-main{display:grid;gap:10px;min-width:0}.page-head-main .page-note{max-width:none}.page-head .deck{font-size:15px;max-width:78ch}.page-head[data-split=true] .deck{max-width:none}.page-aside{border-left:2px solid var(--ink-faint);padding:2px 0 2px 16px;min-width:0}.page-aside-title{font-size:12.5px;font-weight:600;color:var(--ink);margin-bottom:6px}.page-aside-body{font-size:13px;line-height:1.6;color:var(--ink-soft)}.page-aside-body p{margin:0 0 8px}.page-aside-body strong{color:var(--ink);font-weight:600}.page-aside-body ul{margin:0;padding-left:17px}.page-aside-body li{margin-bottom:7px}.page-aside-body li:last-child,.page-aside-body p:last-child{margin-bottom:0}@media (max-width: 1180px){.page-head[data-split=true] .page-head-band{grid-template-columns:minmax(0,1fr);gap:14px}}.page-scope{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-soft);white-space:nowrap}.page-scope i{width:9px;height:9px;border-radius:2px;display:inline-block}.page-note{font-size:12.5px;line-height:1.55;color:var(--ink-soft);max-width:82ch;border-left:2px solid var(--rule-strong);padding-left:11px}.btn{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:5px;border:1px solid var(--rule-strong);background:var(--surface);cursor:pointer;font-size:13px;font-weight:500}.btn:hover:not(:disabled){background:var(--surface-sunk)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-primary:hover:not(:disabled){background:#000}.btn-sm{padding:4px 9px;font-size:12px}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:7px}.panel-head{display:flex;align-items:baseline;gap:12px;padding:13px 16px;border-bottom:1px solid var(--rule)}.panel-head .grow{flex:1}.panel-head .note{font-size:12px;color:var(--ink-soft)}.panel-body{padding:16px}.field{display:block;margin-bottom:14px}.field>.label{display:block;font-size:12.5px;font-weight:600;margin-bottom:4px}.field>.help{font-size:12px;color:var(--ink-soft);margin-top:4px;max-width:62ch}input[type=text],input[type=password],textarea,select{width:100%;padding:7px 10px;border:1px solid var(--rule-strong);border-radius:5px;background:var(--surface);color:var(--ink);font:inherit}textarea{min-height:110px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11.5px;font-weight:600;color:var(--ink-soft);padding:8px 12px;border-bottom:1px solid var(--rule);white-space:nowrap}td{padding:9px 12px;border-bottom:1px solid var(--rule);vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-sunk)}.scroll-x{overflow-x:auto}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.sev{display:inline-flex;align-items:center;gap:5px;padding:1px 7px 2px;border-radius:3px;font-size:11px;font-weight:700;letter-spacing:.02em;color:#fff;white-space:nowrap}.sev[data-sev=CRITICAL]{background:var(--sev-critical)}.sev[data-sev=HIGH]{background:var(--sev-high)}.sev[data-sev=MEDIUM]{background:var(--sev-medium)}.sev[data-sev=LOW]{background:var(--sev-low)}.sev[data-sev=INFO]{background:var(--sev-info);color:var(--ink)}.tag{display:inline-block;padding:1px 7px 2px;border-radius:3px;border:1px solid var(--rule-strong);font-size:11px;color:var(--ink-mid);white-space:nowrap}.tag[data-kind=gap]{border-color:var(--sev-gap);color:var(--sev-gap);font-weight:600;background:repeating-linear-gradient(135deg,transparent 0 4px,rgba(71,85,105,.1) 4px 8px)}.tag[data-kind=public]{border-color:var(--sev-critical);color:var(--sev-critical);font-weight:600}.section-hero{display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:7px;overflow:hidden}.stratum{display:grid;grid-template-columns:54px 1fr 172px 108px;align-items:center;gap:18px;padding:15px 18px 15px 0;background:var(--surface);border:0;width:100%;text-align:left;cursor:pointer;position:relative}.stratum:hover{background:#fcfcfd}.stratum:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--accent)}.stratum[data-assessed=false]:before{background:repeating-linear-gradient(135deg,var(--rule-strong) 0 3px,transparent 3px 7px)}.stratum .ordinal{padding-left:18px;font-size:28px;font-weight:700;line-height:1;letter-spacing:-.05em;color:var(--accent)}.stratum[data-assessed=false] .ordinal{color:var(--ink-faint)}.stratum .name{font-size:15.5px;font-weight:600;letter-spacing:-.015em}.stratum .tagline{font-size:12.5px;color:var(--ink-soft);margin-top:2px}.stratum .score{text-align:right}.stratum .score .value{font-size:24px;font-weight:700;letter-spacing:-.04em;line-height:1}.stratum .score .unit{font-size:11px;color:var(--ink-soft);margin-top:3px}.stratum .score .unassessed{font-size:12px;color:var(--sev-gap);font-weight:600}.meter{display:flex;height:9px;gap:2px}.meter span{display:block;border-radius:2px;min-width:3px}.meter-legend{display:flex;flex-wrap:wrap;gap:4px 11px;margin-top:7px;font-size:11px;color:var(--ink-soft)}.meter-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px;vertical-align:-1px;font-style:normal}.stat-row{display:flex;flex-wrap:wrap;gap:26px;align-items:flex-end}.stat{flex:1 1 0;min-width:130px}.stat .value{font-size:30px;font-weight:700;letter-spacing:-.045em;line-height:1}.stat .value[data-dim=true]{color:var(--ink-faint)}.stat[data-zero=true] .value{color:var(--ink-faint);font-weight:600}.stat[data-zero=true] .label{color:var(--ink-faint)}.stat .label{font-size:12px;color:var(--ink-soft);margin-top:5px}.hero-posture{display:flex;align-items:flex-end;gap:30px;flex-wrap:wrap}.hero-posture .figure{display:flex;align-items:baseline;gap:9px}.hero-posture .figure .n{font-size:62px;font-weight:700;letter-spacing:-.05em;line-height:.9}.hero-posture .figure .of{font-size:15px;color:var(--ink-soft)}.notice{border:1px solid var(--rule-strong);border-left:4px solid var(--ink-mid);border-radius:5px;padding:14px 16px;background:var(--surface);max-width:104ch}.notice .prose,.panel-body .notice{max-width:none}.notice[data-tone=blocked]{border-left-color:var(--sev-gap)}.notice[data-tone=warn]{border-left-color:var(--warn)}.notice[data-tone=bad]{border-left-color:var(--sev-critical)}.notice[data-tone=good]{border-left-color:var(--ok)}.notice .title{font-weight:600;margin-bottom:5px}.state-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:-1px}.state-dot[data-state=scanned]{background:var(--ok)}.state-dot[data-state=partial]{background:var(--warn)}.state-dot[data-state=denied]{background:var(--sev-critical)}.state-dot[data-state=not_configured]{background:var(--rule-strong)}.empty{padding:40px 22px;text-align:center;color:var(--ink-soft)}.empty .headline{font-size:15px;color:var(--ink);font-weight:600;margin-bottom:6px}.stack{display:grid;gap:16px}.stack-l{display:grid;gap:26px}.cols-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.cols-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media (max-width: 1080px){.cols-2,.cols-3{grid-template-columns:minmax(0,1fr)}.stratum{grid-template-columns:44px 1fr 128px}.stratum .score{grid-column:1 / -1;text-align:left;padding-left:18px}}@media (max-width: 800px){.shell{grid-template-columns:1fr}.rail{position:static;height:auto;border-right:0;border-bottom:1px solid var(--rule)}.page{padding:16px}}.period-bar{position:relative;width:100%;border-radius:3px;overflow:hidden;border:1px solid var(--rule)}.period-bar[data-ground=covered]{background:var(--ok)}.period-bar[data-ground=empty]{background:var(--surface-sunk)}.period-bar .seg{position:absolute;top:0;bottom:0;min-width:2px}.period-bar .seg[data-kind=blind]{background:repeating-linear-gradient(-45deg,var(--rule-strong) 0 3px,var(--surface-sunk) 3px 7px)}.period-bar .seg[data-kind=lapse]{background:var(--sev-critical)}.period-bar .seg[data-kind=accepted]{background:repeating-linear-gradient(-45deg,var(--sev-medium) 0 3px,color-mix(in srgb,var(--sev-medium) 35%,white) 3px 7px)}.bar-axis{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:11px;color:var(--ink-soft)}.bar-key i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;vertical-align:-1px;font-style:normal;border:1px solid var(--rule)}.bar-key i[data-kind=covered]{background:var(--ok)}.bar-key i[data-kind=blind]{background:repeating-linear-gradient(-45deg,var(--rule-strong) 0 2px,var(--surface-sunk) 2px 5px)}.period-switch{display:inline-flex;border:1px solid var(--rule-strong);border-radius:5px;overflow:hidden}.period-switch button{border:0;background:var(--surface);color:var(--ink-soft);font:inherit;font-size:12px;padding:4px 10px;cursor:pointer}.period-switch button+button{border-left:1px solid var(--rule)}.period-switch button[data-active=true]{background:var(--ink);color:#fff;font-weight:600}.verdict{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px;font-weight:600;color:var(--ink)}.verdict i{width:9px;height:9px;border-radius:50%;background:var(--verdict, var(--ink-faint));flex:none}.layer-verdicts{display:grid;grid-template-columns:28px minmax(120px,200px) 1fr 130px;gap:12px;align-items:center;padding:6px 0;border-bottom:1px solid var(--rule)}.layer-verdicts:last-child{border-bottom:0}.layer-verdicts .ordinal{font-size:17px;font-weight:700;letter-spacing:-.04em}.layer-verdicts .name{font-weight:600;font-size:13px}.layer-verdicts .days{font-size:12px;color:var(--ink-soft);text-align:right}.lapse{border-left:3px solid var(--sev-critical);padding:6px 0 6px 12px;background:var(--surface);border-radius:0 4px 4px 0}.lapse .when{font-size:13px}.lapse .what{margin-top:4px}.lapse .accepted{margin-top:6px;padding:8px 10px;border-radius:4px;background:var(--surface-sunk);font-size:12.5px}.lapse .note{font-size:12px;color:var(--ink-soft)}.exc-status{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:3px;border:1px solid var(--rule-strong);color:var(--ink-soft)}.exc-status[data-status=active]{border-color:var(--ok);color:var(--ok)}.exc-status[data-status=expired]{border-color:var(--sev-high);color:var(--sev-high)}.exc-status[data-status=revoked]{border-color:var(--rule-strong);color:var(--ink-faint)}.exc-status[data-status=pending]{border-color:var(--warn);color:var(--warn)}.verdict-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px}.verdict-tile{text-align:left;border:1px solid var(--rule);border-left:3px solid var(--verdict);border-radius:6px;background:var(--surface);padding:12px 14px;font:inherit;cursor:pointer;display:block;transition:background .14s ease,border-color .14s ease}.verdict-tile:hover{background:var(--surface-sunk)}.verdict-tile[data-active=true]{background:var(--surface-sunk);border-color:var(--verdict)}.verdict-tile[data-zero=true]{border-left-color:var(--rule-strong)}.verdict-tile[data-zero=true] .value,.verdict-tile[data-zero=true] .label{color:var(--ink-faint)}.verdict-tile .value{font-size:27px;font-weight:700;letter-spacing:-.045em;line-height:1;display:block}.verdict-tile .label{display:block;font-size:12.5px;font-weight:600;margin-top:6px}.verdict-tile .blurb{display:block;font-size:11.5px;color:var(--ink-soft);margin-top:3px}.detail-head{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:12px 0 5px}.detail-head:first-child{margin-top:0}.detail-list{margin:0;padding-left:18px;font-size:13px;color:var(--ink-mid)}.detail-list li{margin-bottom:5px}.cmd{margin:0;padding:11px 13px;border-radius:5px;overflow-x:auto;background:#14181f;color:#e6eaf0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55;white-space:pre}.cmd[data-tone=rollback]{background:#22242b;color:#cbd2dc}.wave{border:1px solid var(--rule);border-radius:6px;overflow:hidden;background:var(--surface)}.wave-head{display:flex;gap:12px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--rule)}.wave-head .grow{flex:1}.wave-head .n{width:26px;height:26px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:13px;font-weight:700;background:var(--surface-sunk);color:var(--ink)}.wave[data-wave="1"] .wave-head .n{background:var(--ok);color:#fff}.wave[data-wave="2"] .wave-head .n{background:var(--warn);color:#fff}.wave[data-wave="3"] .wave-head .n{background:var(--sev-high);color:#fff}.wave[data-wave="4"] .wave-head .n{background:var(--ink-mid);color:#fff}.wave[data-wave="0"] .wave-head .n{background:repeating-linear-gradient(-45deg,var(--rule-strong) 0 3px,var(--surface-sunk) 3px 7px);color:var(--ink)}.wave-projects{padding:4px 14px 10px}.wave-project{display:flex;gap:14px;align-items:baseline;padding:5px 0;border-bottom:1px solid var(--rule);font-size:12.5px}.wave-project:last-child{border-bottom:0}.wave-project .note{flex:1}.wave .cmd{margin:0 14px 14px}.trust-path{border-bottom:1px solid var(--rule)}.trust-path:last-child{border-bottom:0}.trust-head{display:flex;align-items:center;gap:10px;padding:11px 16px;cursor:pointer;border-left:3px solid transparent;transition:background .14s ease,border-color .14s ease}.trust-head:hover{background:var(--surface-sunk)}.trust-head .grow{flex:1}.trust-path[data-reach=world] .trust-head{border-left-color:var(--sev-critical)}.trust-path[data-reach=tenant] .trust-head{border-left-color:var(--sev-high)}.trust-path[data-reach=identity] .trust-head{border-left-color:var(--sev-medium)}.trust-path[data-reach=workload] .trust-head{border-left-color:var(--ok)}.trust-path[data-reach=unknown] .trust-head{border-left-color:var(--sev-gap)}.trust-path[data-reach=none] .trust-head{border-left-color:var(--rule-strong)}.trust-head .chain{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0;font-size:12.5px}.trust-head .party{font-weight:600;font-size:13.5px;border-bottom:2px solid var(--sev-critical);padding-bottom:1px}.trust-head .arrow{color:var(--ink-faint)}.trust-body{padding:4px 16px 16px 19px;background:var(--surface-sunk)}.condition{border:1px solid var(--rule);border-radius:6px;overflow:hidden}.condition-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border-bottom:1px solid var(--rule)}.condition-head .grow{flex:1}.condition .cmd{border-radius:0}.condition-read{padding:9px 12px;font-size:12.5px;color:var(--ink-mid);display:grid;gap:4px}.condition-read .detail-head{display:inline;margin:0}.cap-row{display:grid;grid-template-columns:150px 1fr;gap:2px 12px;padding:6px 0;border-bottom:1px solid var(--rule);font-size:12.5px}.cap-row:last-child{border-bottom:0}.cap-row .cap-label{font-weight:600}.cap-row .mono{grid-column:2;color:var(--ink-soft)}@keyframes shield-sweep{0%{transform:translateY(-6%);opacity:0}8%{opacity:1}92%{opacity:1}to{transform:translateY(560%);opacity:0}}@keyframes shield-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes shield-rise{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes shield-flash{0%{background:color-mix(in srgb,var(--layer-2) 22%,transparent)}to{background:transparent}}@keyframes shield-breathe{0%,to{opacity:.35}50%{opacity:1}}@keyframes shield-shimmer{0%{background-position:-420px 0}to{background-position:420px 0}}.reveal{animation:shield-rise .42s cubic-bezier(.22,.61,.36,1) both}.reveal[data-step="1"]{animation-delay:.04s}.reveal[data-step="2"]{animation-delay:.1s}.reveal[data-step="3"]{animation-delay:.16s}.reveal[data-step="4"]{animation-delay:.22s}.reveal[data-step="5"]{animation-delay:.28s}.reveal[data-step="6"]{animation-delay:.34s}.section-hero{position:relative}.section-hero[data-scanning=true]:after{content:"";position:absolute;left:0;right:0;top:0;height:64px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--layer-2) 13%,transparent) 62%,color-mix(in srgb,var(--layer-2) 34%,transparent) 88%,var(--layer-2));animation:shield-sweep 2.3s cubic-bezier(.5,0,.5,1) infinite;pointer-events:none;z-index:3}.stratum{transition:background .16s ease,padding-left .18s cubic-bezier(.22,.61,.36,1)}.stratum:hover{background:#fbfcfd;padding-left:4px}.stratum:active{background:var(--surface-sunk)}.stratum:before{transition:width .18s cubic-bezier(.22,.61,.36,1)}.stratum:hover:before{width:8px}.stratum .ordinal{transition:transform .22s cubic-bezier(.34,1.4,.64,1)}.stratum:hover .ordinal{transform:translate(2px)}.meter span{transform-origin:left center;animation:shield-draw .62s cubic-bezier(.22,.61,.36,1) both}.meter span:nth-child(2){animation-delay:.05s}.meter span:nth-child(3){animation-delay:.1s}.meter span:nth-child(4){animation-delay:.15s}.meter span:nth-child(5){animation-delay:.2s}.changed{animation:shield-flash 1.4s ease-out;border-radius:3px}.rail-item{transition:background .14s ease,color .14s ease,padding-left .16s ease}.rail-item:hover{padding-left:11px}.rail-item .spine{transition:height .2s cubic-bezier(.34,1.4,.64,1),background .2s ease}.rail-item[aria-current=page] .spine{height:22px}.rail-item .tally{transition:color .2s ease}.scan-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--layer-2);margin-right:7px;vertical-align:0px;animation:shield-breathe 1.15s ease-in-out infinite}.topbar{position:relative}.topbar[data-scanning=true]:after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:linear-gradient(90deg,transparent,var(--layer-2),transparent);background-size:42% 100%;background-repeat:no-repeat;animation:shield-shimmer 1.25s linear infinite}.btn{transition:background .14s ease,border-color .14s ease,transform .1s ease}.btn:active:not(:disabled){transform:translateY(1px)}.panel{transition:box-shadow .18s ease,border-color .18s ease}.panel-interactive:hover{box-shadow:var(--shadow-raise);border-color:var(--rule-strong)}tbody tr{transition:background .12s ease}.skeleton{border-radius:4px;background:linear-gradient(90deg,var(--surface-sunk) 0%,#F5F6F8 42%,var(--surface-sunk) 84%);background-size:420px 100%;animation:shield-shimmer 1.15s linear infinite}.platform-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(214px,1fr));gap:12px}.platform-card{display:flex;flex-direction:column;gap:5px;padding:14px 15px 15px;background:var(--surface);border:1px solid var(--rule);border-radius:7px;border-top:3px solid var(--accent);text-align:left;cursor:pointer;transition:box-shadow .17s ease,border-color .17s ease,transform .12s ease}.platform-card:hover{box-shadow:var(--shadow-raise);transform:translateY(-1px)}.platform-card[data-active=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset,var(--shadow-raise)}.platform-card[data-assessed=false]{border-top-color:transparent;background:linear-gradient(var(--surface),var(--surface)) padding-box,repeating-linear-gradient(135deg,var(--rule-strong) 0 3px,transparent 3px 7px) border-box;border-top:3px solid transparent}.platform-card .kind{font-size:11px;color:var(--ink-faint);font-weight:600}.platform-card .name{font-size:16px;font-weight:600;letter-spacing:-.02em}.platform-card .count{font-size:27px;font-weight:700;letter-spacing:-.045em;line-height:1.1;margin-top:3px;display:flex;align-items:baseline;gap:7px}.platform-card .count-label{font-size:11.5px;font-weight:400;color:var(--ink-soft);letter-spacing:0}.platform-card .count.unassessed{font-size:13.5px;font-weight:600;color:var(--sev-gap);letter-spacing:0}.platform-card .breakdown{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.chip{display:inline-block;padding:1px 7px 2px;border-radius:3px;font-size:11px;font-weight:500;border:1px solid var(--rule-strong);color:var(--ink-mid);white-space:nowrap}.chip[data-tone=critical]{border-color:var(--sev-critical);color:var(--sev-critical);font-weight:700}.chip[data-tone=high]{border-color:var(--sev-high);color:var(--sev-high);font-weight:600}.chip[data-tone=ok]{border-color:var(--ok);color:var(--ok)}.chip[data-tone=gap]{border-color:var(--sev-gap);color:var(--sev-gap);background:repeating-linear-gradient(135deg,transparent 0 4px,rgba(71,85,105,.1) 4px 8px)}.mode-switch{display:inline-flex;gap:2px;padding:2px;background:var(--surface-sunk);border:1px solid var(--rule);border-radius:6px}.mode-switch button{padding:3px 12px;border:0;border-radius:4px;cursor:pointer;background:transparent;color:var(--ink-soft);font-size:12px;font-weight:600;transition:background .14s ease,color .14s ease}.mode-switch button:hover{color:var(--ink)}.mode-switch button[data-active=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-raise)}.mode-switch button[data-active=true]:last-child{background:var(--sev-medium);color:#fff}.topbar[data-mode=demo]{border-bottom-color:var(--sev-medium);box-shadow:inset 0 -2px 0 var(--sev-medium)}.demo-banner{padding:10px 26px;background:#fef7e6;border-bottom:1px solid #E8CE8A;color:#6b4e06;font-size:13px;position:sticky;top:54px;z-index:19}.demo-banner strong{font-weight:700}@media (max-width: 800px){.demo-banner{position:static}}.graph-scroll{overflow-x:auto;padding:4px 16px 18px}.atk-col{font-size:12px;font-weight:700;fill:var(--ink);letter-spacing:-.01em}.atk-col-note{font-size:10.5px;fill:var(--ink-faint)}.atk-edge{fill:none;stroke:var(--rule-strong);stroke-width:1.4;transition:stroke .2s ease,stroke-width .2s ease,opacity .2s ease}.atk-edge[data-on=true]{stroke:var(--sev-critical);stroke-width:2.6}.atk-edge[data-dim=true]{opacity:.12}.atk-flow{fill:var(--layer-2);opacity:.85}.atk-flow[data-on=true]{fill:var(--sev-critical);opacity:1;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--sev-critical) 60%,transparent))}@keyframes atk-radiate{0%{r:30px;opacity:.55;stroke-width:2}to{r:128px;opacity:0;stroke-width:.5}}.atk-ring{animation:atk-radiate 3.2s cubic-bezier(.3,.5,.6,1) infinite;transform-box:fill-box}.atk-ring[data-i="0"]{animation-delay:0s}.atk-ring[data-i="1"]{animation-delay:1.06s}.atk-ring[data-i="2"]{animation-delay:2.13s}@keyframes atk-breathe{0%,to{opacity:.18;stroke-width:2}50%{opacity:.85;stroke-width:3}}.atk-halo{animation:atk-breathe 2.8s ease-in-out infinite}.atk-node{transition:opacity .2s ease}.atk-node[data-dim=true]{opacity:.18}.atk-box{fill:var(--surface);stroke:var(--rule);stroke-width:1;transition:stroke .2s ease,filter .2s ease}.atk-box[data-crown=true]{stroke:var(--sev-high)}.atk-box[data-on=true]{stroke:var(--sev-critical);stroke-width:2;filter:drop-shadow(0 3px 9px rgba(159,18,57,.22))}.atk-title{font-family:Archivo,sans-serif;font-size:12.5px;font-weight:600;fill:var(--ink)}.atk-tech{font-family:ui-monospace,Menlo,monospace;font-size:10px;fill:var(--ink-soft)}.atk-sev{font-family:Archivo,sans-serif;font-size:8.5px;font-weight:700;fill:#fff;letter-spacing:.04em}.atk-crown{font-size:11px;fill:var(--sev-high)}.atk-project{font-family:ui-monospace,Menlo,monospace;font-size:9.5px;fill:var(--ink-faint)}.graph-legend{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:12px;color:var(--ink-soft)}.graph-legend>span{display:inline-flex;align-items:center;gap:7px}.lg-pulse,.lg-dot,.lg-halo,.lg-rail{display:inline-block;flex:none}.lg-pulse{width:12px;height:12px;border-radius:50%;border:1.5px solid var(--sev-critical);animation:atk-legend-pulse 3.2s ease-out infinite}@keyframes atk-legend-pulse{0%,to{transform:scale(.6);opacity:1}70%{transform:scale(1.15);opacity:.25}}.lg-dot{width:8px;height:8px;border-radius:50%;background:var(--layer-2);animation:atk-legend-travel 2.6s linear infinite}@keyframes atk-legend-travel{0%{transform:translate(-5px);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translate(7px);opacity:0}}.lg-halo{width:13px;height:10px;border-radius:3px;border:2px solid var(--sev-high);animation:atk-breathe 2.8s ease-in-out infinite}.lg-rail{width:4px;height:13px;border-radius:2px;background:linear-gradient(180deg,var(--layer-1),var(--layer-2),var(--layer-3),var(--layer-4),var(--layer-5))}@media (prefers-reduced-motion: reduce){.atk-ring,.atk-halo,.lg-pulse,.lg-dot,.lg-halo{animation:none}.atk-ring{opacity:.35}.atk-halo{opacity:.6}.atk-flow{display:none}}.panel[data-active=true]{box-shadow:var(--shadow-raise)}@keyframes shieldPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.86)}}@media (prefers-reduced-motion: reduce){@keyframes shieldPulse{0%,to{opacity:1;transform:none}}}.shield-mark{position:relative;display:inline-block;flex:none;line-height:0}.shield-mark svg{position:relative;z-index:1;display:block}.shield-aura{position:absolute;top:-22%;right:-22%;bottom:-22%;left:-22%;border-radius:50%;background:conic-gradient(from 0deg,#8b5cf6,#0891b2,#16a34a,#d946ef,#0d9488,#8b5cf6);filter:blur(13px);opacity:.34;animation:shield-spin 9s linear infinite}@keyframes shield-spin{to{transform:rotate(360deg)}}@keyframes shield-band-in{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:none}}@keyframes shield-scanline{0%{transform:translateY(0)}to{transform:translateY(74px)}}.shield-mark[data-animated=true] .shield-band{animation:shield-band-in .5s cubic-bezier(.22,.61,.36,1) both}.shield-mark[data-animated=true] .shield-band[data-n="1"]{animation-delay:0s}.shield-mark[data-animated=true] .shield-band[data-n="2"]{animation-delay:.08s}.shield-mark[data-animated=true] .shield-band[data-n="3"]{animation-delay:.16s}.shield-mark[data-animated=true] .shield-band[data-n="4"]{animation-delay:.24s}.shield-mark[data-animated=true] .shield-band[data-n="5"]{animation-delay:.32s}.shield-mark[data-animated=true] .shield-scanline{animation:shield-scanline 2.9s cubic-bezier(.45,0,.55,1) .7s infinite}.shield-mark[data-animated=false] .shield-scanline,.shield-mark[data-animated=false] .shield-aura{display:none}@media (prefers-reduced-motion: reduce){.shield-aura{animation:none}.shield-scanline{display:none}}.signin{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(380px,.85fr);background:#0a0f1a;color:#fff}.signin-brand{position:relative;overflow:hidden;padding:46px 52px;display:flex;align-items:center;background:radial-gradient(ellipse 70% 60% at 18% 22%,rgba(139,92,246,.17),transparent 60%),radial-gradient(ellipse 60% 55% at 82% 78%,rgba(8,145,178,.15),transparent 60%),linear-gradient(160deg,#0c1322,#080d17);border-right:1px solid rgba(255,255,255,.07)}.signin-brand:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(180deg,transparent 0 43px,rgba(255,255,255,.022) 43px 44px);pointer-events:none}.signin-brand-inner{position:relative;width:100%;max-width:620px}.signin-lockup{display:flex;align-items:center;gap:18px;margin-bottom:34px}.signin-tagline{font-size:33px;font-weight:700;letter-spacing:-.035em;line-height:1.17;margin:0 0 14px}.signin-tagline-accent{background:linear-gradient(90deg,#a78bfa,#22d3ee);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.signin-lede{font-family:"Source Serif 4",Georgia,serif;font-size:15.5px;line-height:1.6;max-width:52ch;color:#ffffff9e;margin:0 0 30px}.signin-strata{position:relative;display:grid;gap:9px;margin-bottom:32px}.signin-stratum{display:grid;grid-template-columns:22px minmax(0,200px) minmax(0,1fr);align-items:center;gap:15px;animation:shield-rise .5s cubic-bezier(.22,.61,.36,1) both}.signin-stratum[data-step="1"]{animation-delay:.06s}.signin-stratum[data-step="2"]{animation-delay:.14s}.signin-stratum[data-step="3"]{animation-delay:.22s}.signin-stratum[data-step="4"]{animation-delay:.3s}.signin-stratum[data-step="5"]{animation-delay:.38s}.signin-stratum .sn{font-size:17px;font-weight:800;letter-spacing:-.04em;text-align:right}.signin-stratum .sname{font-size:13.5px;font-weight:600;color:#ffffffe6;display:flex;flex-direction:column;gap:1px;min-width:0}.signin-stratum .snote{font-size:11.5px;font-weight:400;color:#fff6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signin-stratum .sbar{height:9px;border-radius:3px;background:#ffffff0f;overflow:hidden;display:block}.signin-stratum .sfill{display:block;height:100%;border-radius:3px;transform-origin:left center;animation:shield-draw .66s cubic-bezier(.22,.61,.36,1) both}.signin-stratum .sfill[data-step="1"]{animation-delay:.18s}.signin-stratum .sfill[data-step="2"]{animation-delay:.26s}.signin-stratum .sfill[data-step="3"]{animation-delay:.34s}.signin-stratum .sfill[data-step="4"]{animation-delay:.42s}.signin-stratum .sfill[data-step="5"]{animation-delay:.5s}.signin-scan{position:absolute;left:-10px;right:-10px;top:0;height:54px;background:linear-gradient(180deg,transparent,rgba(34,211,238,.06) 62%,rgba(34,211,238,.16) 88%,rgba(34,211,238,.62));animation:shield-sweep 3.6s cubic-bezier(.5,0,.5,1) 1.2s infinite;pointer-events:none;z-index:2}.signin-coverage{display:flex;flex-wrap:wrap;gap:34px;margin:0;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}.signin-coverage dt{font-size:21px;font-weight:700;letter-spacing:-.03em;color:#fff}.signin-coverage dd{margin:3px 0 0;font-size:11.5px;color:#ffffff73}.signin-form{display:flex;align-items:center;justify-content:center;padding:46px 44px;background:#0f1524}.signin-form-inner{width:100%;max-width:352px}.signin-compact{display:none;align-items:center;gap:13px;margin-bottom:30px}.signin-heading{font-size:25px;font-weight:700;letter-spacing:-.03em;margin:0 0 5px;color:#fff}.signin-sub{font-size:13px;color:#ffffff73;margin:0 0 26px}.signin-field{display:block;margin-bottom:16px}.signin-field>span{display:block;font-size:12.5px;font-weight:600;color:#ffffffb8;margin-bottom:6px}.signin-field input{width:100%;padding:10px 13px;background:#ffffff0b;border:1px solid rgba(255,255,255,.13);border-radius:7px;color:#fff;font:inherit;transition:border-color .15s ease,background .15s ease}.signin-field input:hover{border-color:#ffffff3d}.signin-field input:focus{outline:none;border-color:#22d3ee;background:#ffffff12;box-shadow:0 0 0 3px #22d3ee29}.signin-error{font-size:13px;color:#fda4af;margin:0 0 14px;padding:9px 12px;border-radius:6px;background:#9f123938;border:1px solid rgba(253,164,175,.28)}.signin-submit{width:100%;padding:11px 16px;margin-top:4px;border:0;border-radius:7px;cursor:pointer;font-size:14px;font-weight:600;color:#06121a;background:linear-gradient(95deg,#22d3ee,#a78bfa);transition:filter .15s ease,transform .1s ease}.signin-submit:hover:not(:disabled){filter:brightness(1.08)}.signin-submit:active:not(:disabled){transform:translateY(1px)}.signin-submit:disabled{opacity:.42;cursor:default}.signin-note{margin:22px 0 0;font-size:12.5px;line-height:1.55;color:#ffffff6b;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}.signin :focus-visible{outline-color:#22d3ee}@media (max-width: 1180px){.signin-brand{padding:38px 36px}.signin-tagline{font-size:28px}.signin-stratum{grid-template-columns:20px minmax(0,168px) minmax(0,1fr);gap:12px}}@media (max-width: 940px){.signin{grid-template-columns:1fr}.signin-brand{display:none}.signin-compact{display:flex}.signin-form{align-items:flex-start;padding:56px 24px}}.rail-brand{display:flex;align-items:center;gap:11px}.signin-personas{margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08)}.signin-personas-title{margin:0 0 10px;font-size:11.5px;font-weight:600;color:#ffffff80}.signin-personas ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}.signin-personas button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title role" "user role";align-items:center;column-gap:10px;width:100%;padding:8px 11px;background:#ffffff09;border:1px solid rgba(255,255,255,.09);border-radius:7px;cursor:pointer;text-align:left;transition:background .14s ease,border-color .14s ease}.signin-personas button:hover{background:#ffffff12;border-color:#fff3}.signin-personas button[data-active=true]{border-color:#22d3ee;background:#22d3ee1a}.signin-personas .pt{grid-area:title;font-size:12.5px;font-weight:600;color:#ffffffeb}.signin-personas .pu{grid-area:user;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#ffffff6b}.signin-personas .pr{grid-area:role;font-size:10.5px;font-weight:600;white-space:nowrap;color:#ffffff80;padding:2px 7px;border-radius:3px;border:1px solid rgba(255,255,255,.14)}.signin-personas-hint{margin:11px 0 0;font-size:11.5px;line-height:1.5;color:#ffffff59}
