:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e7edf5;background:#060a10;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 12% 0%,#102444 0,transparent 34rem),linear-gradient(180deg,#080d14,#05080d)}button,input,select,textarea{font:inherit}button,select,input,textarea{outline:none}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,pre:focus-visible,summary:focus-visible{box-shadow:0 0 0 3px #3b82f666;border-color:#60a5fa}.app-shell{width:min(1640px,100%);margin:0 auto;padding:clamp(1rem,2.5vw,2.25rem)}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1.15rem}.brand-lockup{display:flex;gap:1rem;align-items:flex-start}.brand-mark{display:grid;place-items:center;width:3.2rem;height:3.2rem;flex:0 0 auto;border:1px solid #2f81f7;border-radius:.9rem;color:#dbeafe;background:linear-gradient(145deg,#15345f,#0c1d35);box-shadow:0 0 2.5rem #2563eb28;font-weight:900;letter-spacing:.04em}.eyebrow,.panel-kicker{color:#6ee7b7;font-size:.72rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}h1{margin:.35rem 0 .45rem;color:#f7faff;font-size:clamp(2.2rem,4.2vw,4.3rem);line-height:.95;letter-spacing:-.045em}.topbar p{margin:0;max-width:50rem;color:#98a6b8;font-size:1rem}.status-cluster{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem;max-width:36rem}.status-item{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .72rem;border:1px solid #263346;border-radius:999px;color:#b7c3d2;background:#0b121cdd;font-size:.78rem;font-weight:700}.status-item-safe{color:#86efac;border-color:#14532d;background:#052e1675}.status-dot{width:.5rem;height:.5rem;border-radius:50%;box-shadow:0 0 .7rem currentColor}.status-dot-online{color:#22c55e;background:#22c55e}.status-dot-ai{color:#38bdf8;background:#38bdf8}.hero-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-bottom:1rem}.hero-strip div{display:grid;gap:.18rem;padding:.8rem 1rem;border:1px solid #202c3c;border-radius:.75rem;background:#0a111be8}.hero-strip strong{color:#e5edf7;font-size:.85rem}.hero-strip span{color:#8492a6;font-size:.76rem}.workspace{display:grid;grid-template-columns:minmax(350px,33%) minmax(0,1fr);gap:1rem;align-items:start}.control-panel,.results{border:1px solid #243145;border-radius:1rem;background:linear-gradient(180deg,#101823f2,#0c131df2);box-shadow:0 1.2rem 4rem #0007}.control-panel{display:grid;gap:.65rem;padding:1.1rem;position:sticky;top:1rem}.panel-heading,.section-heading,.ai-panel-heading,.code-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.panel-heading h2,.section-heading h2,.ai-panel-heading h2{margin:.15rem 0 0;font-size:1.25rem;color:#f5f8fc}label{color:#b5c0ce;font-size:.8rem;font-weight:800}select,input,textarea{width:100%;border:1px solid #334155;border-radius:.55rem;color:#e7edf5;background:#070c13;padding:.72rem .78rem}select:hover,input:hover,textarea:hover{border-color:#475569}.scenario-description{margin:-.25rem 0 .15rem;color:#8291a4;font-size:.76rem;line-height:1.45}.editor-label-row{display:flex;justify-content:space-between;align-items:center}.editor-label-row span{color:#708096;font-size:.72rem}.editor-shell{overflow:hidden;border:1px solid #334155;border-radius:.65rem;background:#060a0f}.editor-toolbar{display:flex;align-items:center;gap:.38rem;padding:.55rem .65rem;border-bottom:1px solid #263244;color:#8291a4;background:#0c131d;font-size:.72rem}.editor-toolbar strong{margin-left:.25rem;color:#aeb9c8;font-weight:700}.editor-dot{width:.52rem;height:.52rem;border-radius:50%;background:#475569}textarea{min-height:27rem;resize:vertical;border:0;border-radius:0;font-family:Cascadia Code,Consolas,monospace;font-size:.78rem;line-height:1.55;tab-size:2}textarea:focus-visible{box-shadow:inset 0 0 0 2px #3b82f688}.ai-control-card{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin-top:.2rem;padding:.75rem;border:1px solid #244463;border-radius:.65rem;background:linear-gradient(135deg,#0c1c2d,#101827)}.ai-toggle{display:flex;align-items:center;gap:.7rem;cursor:pointer}.ai-toggle input{width:1rem;height:1rem;flex:0 0 auto;accent-color:#38bdf8}.ai-toggle span{display:grid;gap:.15rem}.ai-toggle strong{color:#dbeafe;font-size:.82rem}.ai-toggle small{color:#7f8da0;font-size:.7rem;font-weight:500}.helper-text{margin:-.2rem 0 .2rem;color:#7f8da0;font-size:.72rem;line-height:1.45}.mode-pill,.result-badge,.code-language{display:inline-flex;align-items:center;border:1px solid #2563eb;border-radius:999px;padding:.25rem .58rem;color:#93c5fd;background:#1e3a5f66;font-size:.7rem;font-weight:800;white-space:nowrap}.mode-pill-safe{border-color:#166534;color:#86efac;background:#14532d44}.primary-action{display:inline-flex;justify-content:center;align-items:center;gap:.55rem;min-height:2.8rem;margin-top:.25rem;border:1px solid #22c55e66;border-radius:.62rem;padding:.78rem 1rem;color:#fff;background:linear-gradient(180deg,#24933c,#187b30);box-shadow:inset 0 1px #ffffff24,0 .6rem 1.7rem #16a34a1f;font-weight:900;cursor:pointer}.primary-action:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.primary-action:disabled{opacity:.55;cursor:not-allowed}.spinner{width:.9rem;height:.9rem;border:2px solid #ffffff55;border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{margin:.1rem 0 0;padding:.75rem;border:1px solid #f8514966;border-radius:.55rem;color:#fecaca;background:#7f1d1d38}.results{min-height:42rem;padding:1rem}.empty-state{display:grid;min-height:39rem;place-content:center;justify-items:center;max-width:34rem;margin:auto;text-align:center;color:#8492a6}.empty-state h2{margin:.8rem 0 .25rem;color:#eef4fb}.empty-state p{line-height:1.55}.empty-icon{display:grid;place-items:center;width:3.6rem;height:3.6rem;border:1px solid #2563eb;border-radius:1rem;color:#93c5fd;background:#17255477;font-size:1.5rem}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin-bottom:.8rem}.metric-card{display:grid;gap:.2rem;min-width:0;padding:.8rem;border:1px solid #263347;border-radius:.72rem;background:#080f18}.metric-card>span{color:#7e8da1;font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.metric-card strong{color:#eff6ff;font-size:1.35rem}.metric-card small{overflow:hidden;color:#738298;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.risk-critical,.status-bad{color:#fb7185!important}.risk-high{color:#fb923c!important}.risk-moderate{color:#facc15!important}.risk-low{color:#a78bfa!important}.risk-clear,.status-good{color:#4ade80!important}.result-tabs{display:flex;gap:.25rem;overflow-x:auto;margin-bottom:.9rem;padding:.25rem;border:1px solid #223044;border-radius:.7rem;background:#080f18}.result-tabs button{display:inline-flex;align-items:center;gap:.45rem;border:0;border-radius:.5rem;padding:.55rem .75rem;color:#8896a9;background:transparent;font-size:.78rem;font-weight:800;cursor:pointer;white-space:nowrap}.result-tabs button:hover:not(:disabled){color:#dbe7f4;background:#111b28}.result-tabs button.active{color:#eaf2fb;background:#1d4ed855}.result-tabs button:disabled{opacity:.38;cursor:not-allowed}.result-tabs button span{display:grid;place-items:center;min-width:1.15rem;height:1.15rem;border-radius:999px;background:#334155;font-size:.65rem}.findings-panel,.ai-panel{padding:.2rem}.section-heading{align-items:center;margin-bottom:.75rem}.result-badge{border-color:#475569;color:#cbd5e1;background:#1e293b}.finding{margin:.65rem 0;padding:.9rem;border:1px solid #2b394d;border-left-width:3px;border-radius:.72rem;background:#080f18}.finding-critical{border-left-color:#fb7185}.finding-high{border-left-color:#fb923c}.finding-medium{border-left-color:#c084fc}.finding-low,.finding-informational{border-left-color:#60a5fa}.finding h3{margin:.58rem 0 .28rem;color:#edf4fc;font-size:1rem}.finding p{margin:.3rem 0;color:#9aa8ba;font-size:.82rem;line-height:1.5}.finding-heading{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;color:#7f8da1;font-size:.7rem}.finding-heading code,.ai-finding code{color:#bfdbfe}.severity{padding:.18rem .42rem;border-radius:999px;font-weight:900}.severity-critical{color:#fda4af;background:#88133755}.severity-high{color:#fdba74;background:#7c2d1255}.severity-medium{color:#d8b4fe;background:#581c8755}.severity-low,.severity-informational{color:#93c5fd;background:#1e3a8a55}.auto-fix-label{margin-left:auto;color:#86efac}.recommendation{display:grid;gap:.18rem;margin-top:.65rem;padding:.62rem .7rem;border-radius:.55rem;background:#101a27}.recommendation strong{color:#b8c4d4;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.recommendation span{color:#d1dae6;font-size:.8rem}.success-card{display:grid;gap:.25rem;padding:1rem;border:1px solid #166534;border-radius:.7rem;color:#bbf7d0;background:#052e164d}.success-card span{color:#86a995;font-size:.8rem}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.code-panel{min-width:0;overflow:hidden;border:1px solid #29364a;border-radius:.75rem;background:#060a0f}.code-panel-original{box-shadow:inset 0 3px #ef4444a8}.code-panel-proposed{box-shadow:inset 0 3px #22c55ea8}.code-panel-header{align-items:center;padding:.75rem .8rem;border-bottom:1px solid #253145;background:#0d141e}.code-panel-header h3{margin:.12rem 0 0;color:#e8eef7;font-size:.92rem}.code-language{border-color:#475569;color:#94a3b8;background:#1e293b}pre{min-height:30rem;max-height:43rem;margin:0;padding:.9rem;overflow:auto;color:#cbd5e1;background:#060a0f;font:.75rem/1.55 Cascadia Code,Consolas,monospace;white-space:pre}.ai-panel{padding:1rem;border:1px solid #244766;border-radius:.8rem;background:linear-gradient(145deg,#0b1a29,#101724)}.ai-panel-heading{margin-bottom:.75rem}.advisor-notice{display:flex;gap:.65rem;align-items:baseline;padding:.65rem .75rem;border:1px solid #1d4ed855;border-radius:.6rem;color:#bfdbfe;background:#17255466;font-size:.78rem}.advisor-notice span{color:#90a4bf}.warning{padding:.65rem .75rem;border-left:3px solid #f59e0b;background:#78350f30;color:#fde68a;font-size:.8rem}.advisor-summary{margin:.85rem 0;padding:.85rem;border:1px solid #2b394d;border-radius:.65rem;background:#080f18}.advisor-summary p{margin:.4rem 0 0;color:#c8d3e0;line-height:1.55}.advisor-findings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.ai-finding{padding:.8rem;border:1px solid #2a3b50;border-radius:.65rem;background:#080f18}.ai-finding header{display:flex;justify-content:space-between;gap:.5rem;color:#7dd3fc;font-size:.72rem}.ai-finding p{display:grid;gap:.2rem;margin:.65rem 0 0;color:#aab7c7;font-size:.8rem;line-height:1.45}.ai-finding p strong{color:#d8e2ee;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.next-step{display:grid;gap:.2rem;margin-top:.8rem;padding:.75rem;border-radius:.6rem;background:#0e2632}.next-step strong{color:#67e8f9;font-size:.75rem;text-transform:uppercase}.next-step span{color:#c9d8e2;font-size:.82rem}details{margin-top:.75rem;color:#91a0b3;font-size:.78rem}summary{cursor:pointer;color:#b9c5d3;font-weight:800}@media(max-width:1100px){.topbar{flex-direction:column}.status-cluster{justify-content:flex-start}.workspace{grid-template-columns:minmax(310px,40%) minmax(0,1fr)}.summary-grid{grid-template-columns:repeat(2,1fr)}.advisor-findings{grid-template-columns:1fr}}@media(max-width:820px){.hero-strip,.workspace{grid-template-columns:1fr}.control-panel{position:static}.comparison{grid-template-columns:1fr}pre{min-height:20rem}}@media(max-width:520px){.app-shell{padding:.75rem}.brand-mark{display:none}h1{font-size:2.25rem}.summary-grid{grid-template-columns:1fr 1fr}.ai-control-card,.advisor-notice{align-items:flex-start;flex-direction:column}textarea{min-height:22rem}}@media(min-width:1024px)and (min-height:640px){.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.workspace{flex:1 1 auto;min-height:0;margin-bottom:0}.results{min-height:0;max-height:100%;overflow-y:auto}.control-panel{display:flex;flex-direction:column;min-height:0;max-height:100%;overflow:hidden}.control-panel>*{flex:0 0 auto}.editor-shell{flex:1 1 auto;min-height:5rem;display:flex;flex-direction:column}.editor-shell textarea{flex:1 1 auto;height:100%;resize:none}.control-panel{position:static}.results{min-height:0}.empty-state{min-height:0;padding:3rem 0}pre{min-height:0;max-height:none}textarea{min-height:clamp(9rem,24vh,27rem)}.topbar{margin-bottom:.8rem}.hero-strip{margin-bottom:.7rem}.source-switcher{margin:.7rem 0}}@media(min-width:1024px)and (min-height:640px)and (max-height:950px){.app-shell{padding:.85rem 1.1rem}h1{font-size:1.75rem;line-height:1.15}.topbar{margin-bottom:.5rem;gap:1rem}.topbar p{font-size:.85rem;max-width:44rem}.hero-strip{margin-bottom:.5rem;gap:.5rem}.hero-strip div{padding:.5rem .7rem}.hero-strip strong{font-size:.78rem}.hero-strip span{font-size:.7rem}.source-switcher{margin:.5rem 0;padding:.25rem}.source-switcher button{padding:.45rem .85rem}.control-panel{padding:.8rem;gap:.4rem}.panel-heading h2{font-size:1.1rem}.ai-control-card{padding:.55rem .7rem}select,input{padding:.5rem .6rem}.primary-action{padding:.6rem}}@media(min-width:1024px)and (min-height:640px)and (max-height:820px){h1{font-size:1.5rem}.topbar p{display:none}.hero-strip{margin-bottom:.4rem;gap:.4rem}.hero-strip div{padding:.4rem .6rem}.hero-strip span{display:none}.source-switcher{margin:.4rem 0}.control-panel{gap:.3rem;padding:.7rem}.editor-shell{min-height:4rem}}.pane-switcher{display:none}.pane-count{margin-left:.4rem;padding:.05rem .4rem;border-radius:999px;background:#1e3a5f;color:#bfdbfe;font-size:.7rem;font-weight:700}@media(max-width:820px){.pane-switcher{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin:.5rem 0;padding:.3rem;background:#111827;border:1px solid #26334a;border-radius:12px}.pane-switcher button{border:0;background:transparent;color:#9caac0;padding:.7rem .5rem;border-radius:9px;font-weight:700;cursor:pointer}.pane-switcher button.active{background:#26334a;color:#fff}.workspace[data-mobile-pane=input] .results,.workspace[data-mobile-pane=results] .control-panel{display:none}}@media(max-width:640px){.app-shell{padding:.7rem}.topbar{gap:.6rem;margin-bottom:.5rem}h1{font-size:1.55rem;line-height:1.1}.topbar p{display:none}.eyebrow{font-size:.6rem}.brand-lockup{gap:.6rem}.status-cluster{max-width:none;gap:.3rem}.status-item{font-size:.66rem;padding:.3rem .5rem}.source-switcher{margin:.4rem 0;padding:.2rem}.source-switcher button{padding:.5rem .6rem;font-size:.85rem}.pane-switcher{margin:.4rem 0;padding:.2rem}.pane-switcher button{padding:.55rem .5rem}.control-panel{padding:.75rem;gap:.45rem}.panel-heading{gap:.3rem}.panel-heading h2{font-size:1.05rem}.ai-control-card{padding:.5rem .6rem;gap:.3rem}.ai-control-card span,.ai-control-card p{font-size:.72rem}.helper-text{display:none}.primary-action{position:sticky;bottom:.5rem;z-index:5;box-shadow:0 .6rem 1.4rem #000a}select,input,button,.source-switcher button{min-height:44px}textarea{font-size:16px;min-height:13rem}pre{font-size:.8rem;min-height:0;max-height:60vh}.summary-grid,.remediation-metrics{grid-template-columns:1fr 1fr}.source-metadata,table{max-width:100%;overflow-x:auto}.hero-strip{grid-template-columns:repeat(3,1fr);gap:.35rem;margin-bottom:.6rem}.hero-strip div{padding:.45rem .5rem}.hero-strip strong{font-size:.68rem;line-height:1.25}.hero-strip span{display:none}.empty-state{min-height:0;padding:2rem 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.source-switcher{display:flex;gap:.5rem;margin:1rem 0;padding:.35rem;background:#111827;border:1px solid #26334a;border-radius:12px;width:max-content}.source-switcher button{border:0;background:transparent;color:#9caac0;padding:.65rem 1rem;border-radius:9px;font-weight:700;cursor:pointer}.source-switcher button.active{background:#26334a;color:#fff}.read-only-tag,.editor-readonly{font-size:.65rem;letter-spacing:.08em;margin-left:.45rem;color:#8ad8ff}.mode-pill-readonly{background:#102d3c;color:#8ad8ff;border:1px solid #245b75}.github-connection-card{display:flex;flex-direction:column;gap:.25rem;padding:.8rem;border-radius:10px;border:1px solid}.github-connection-card.connected{background:#0d2d23;border-color:#1f6e53}.github-connection-card.disconnected{background:#351a1e;border-color:#7f3038}.github-connection-card span{font-size:.82rem;color:#aebbd0}.source-metadata{display:flex;flex-wrap:wrap;gap:.7rem;font-size:.78rem;color:#aebbd0;padding:.6rem .75rem;background:#111827;border-radius:9px}.source-metadata a{color:#76c7ff;margin-left:auto}.editor-readonly{margin-left:auto}.readonly-banner{display:flex;gap:.75rem;align-items:center;padding:.75rem 1rem;margin-bottom:1rem;border:1px solid #245b75;border-radius:10px;background:#102d3c;color:#bfeaff}.readonly-banner span{color:#9fc4d8}@media(max-width:700px){.source-switcher{width:100%}.source-switcher button{flex:1}.source-metadata a{margin-left:0;width:100%}}.remediation-panel{display:grid;gap:1rem}.remediation-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.remediation-metrics article{border:1px solid var(--border, #30363d);border-radius:12px;padding:1rem;background:#ffffff06}.remediation-metrics span{display:block;opacity:.7;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.remediation-metrics strong{display:block;margin-top:.35rem;font-size:1.35rem}.export-actions{display:flex;flex-wrap:wrap;gap:.6rem}.export-actions button{border:1px solid #3b82f6;background:transparent;color:inherit;padding:.65rem .85rem;border-radius:8px;cursor:pointer}.remediation-change{border:1px solid var(--border, #30363d);border-left:4px solid #22c55e;border-radius:10px;padding:1rem}.remediation-change.remaining{border-left-color:#f59e0b}.remediation-change header{display:flex;justify-content:space-between;gap:1rem}.diff-view{background:#080c12;border:1px solid #30363d;border-radius:12px;padding:1rem;max-height:420px;overflow:auto;white-space:pre}@media(max-width:800px){.remediation-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.access-gate{width:min(34rem,100%);margin:4rem auto;padding:1.4rem;border:1px solid #244766;border-radius:1rem;background:linear-gradient(145deg,#0b1a29,#101724);box-shadow:0 1.2rem 4rem #0007}.access-gate h2{margin:.35rem 0 .5rem;color:#f5f8fc}.access-gate p{color:#9aa8ba;line-height:1.55}.access-gate form{display:grid;gap:.65rem;margin-top:1rem}.status-action{cursor:pointer}.status-action:hover{border-color:#60a5fa;color:#dbeafe}
