:root{--bg:#0e1013;--surface:#171a1f;--surface-2:#1f232a;--border:#2b303a;--text:#e9e7e0;--text-dim:#8a92a0;--text-faint:#5c6472;--gate:#d9a441;--gate-dim:#3a2c14;--reason:#7fa3ea;--reason-dim:#1c2740;--write:#5ec98d;--write-dim:#123020;--risk:#e2685f;--risk-dim:#3a1f1c;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Consolas, monospace;--sans:"IBM Plex Sans", -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(760px 420px at 15% -8%, #7fa3ea17, transparent 60%), radial-gradient(680px 380px at 100% 12%, #d9a4410d, transparent 55%), var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;background-attachment:fixed;line-height:1.55}::selection{background:var(--reason);color:#0c1220}::-webkit-scrollbar{width:11px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--surface-2);border:3px solid var(--bg);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--border)}#root{min-height:100vh}.page{flex-direction:column;gap:24px;max-width:720px;margin:0 auto;padding:48px 20px 72px;display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.header{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;padding-bottom:20px;display:flex}.eyebrow{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-size:11.5px}.auth-bar{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-status{color:var(--text-dim);align-items:center;gap:10px;font-size:12.5px;display:flex}.auth-link{color:var(--text-dim);font-family:var(--sans);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:12.5px}.auth-link:hover{color:var(--reason);-webkit-text-decoration-color:var(--reason);text-decoration-color:var(--reason)}.auth-signin{background:var(--reason);color:#0c1220;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.auth-signin:hover{filter:brightness(1.1)}.header h1{font-family:var(--mono);letter-spacing:-.01em;background:linear-gradient(115deg, var(--text) 35%, var(--reason) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;width:fit-content;margin:0;font-size:clamp(28px,6vw,36px);font-weight:600}.thesis{color:var(--text-dim);text-wrap:balance;max-width:58ch;margin:0;font-size:15px}.thesis em{color:var(--text);font-style:normal}.pipeline{align-items:center;padding:4px 2px 0;display:flex}.pipeline-step{flex:1;align-items:center;display:flex}.pipeline-step:last-child{flex:none}.pipeline-dot{background:var(--surface-2);border:1.5px solid var(--border);border-radius:50%;flex-shrink:0;width:9px;height:9px;transition:background .3s,border-color .3s,box-shadow .3s}.pipeline-label{font-family:var(--mono);letter-spacing:.02em;color:var(--text-faint);white-space:nowrap;margin-left:7px;font-size:11px;transition:color .3s}.pipeline-line{background:var(--border);flex:1;height:1.5px;margin:0 10px;transition:background .3s}.pipeline-done .pipeline-dot{background:var(--write);border-color:var(--write)}.pipeline-done .pipeline-label{color:var(--text-dim)}.pipeline-done .pipeline-line{background:var(--write);opacity:.5}.pipeline-active .pipeline-dot{background:var(--reason);border-color:var(--reason);animation:1.4s ease-in-out infinite pulseDot;box-shadow:0 0 0 4px #7fa3ea2e}.pipeline-active .pipeline-label{color:var(--reason);font-weight:500}.pipeline-skipped .pipeline-dot{opacity:.5;background:0 0;border-style:dashed}.pipeline-skipped .pipeline-label{color:var(--text-faint);opacity:.5}@keyframes pulseDot{0%,to{box-shadow:0 0 0 4px #7fa3ea2e}50%{box-shadow:0 0 0 7px #7fa3ea14}}@media (width<=560px){.pipeline-label{display:none}.pipeline-line{margin:0 4px}}.signin-gate{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:center;gap:10px;padding:36px 24px;display:flex}.signin-gate-icon{background:var(--reason-dim);width:52px;height:52px;color:var(--reason);border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.signin-gate-title{color:var(--text);margin:0;font-size:18px;font-weight:600}.signin-gate-copy{color:var(--text-dim);max-width:46ch;margin:0;font-size:13.5px}.signin-cta{background:var(--reason);color:#0c1220;font-family:var(--sans);border-radius:8px;align-items:center;gap:8px;margin-top:10px;padding:11px 22px;font-size:14.5px;font-weight:600;text-decoration:none;transition:filter .15s,transform .1s,box-shadow .15s;display:inline-flex;box-shadow:inset 0 1px #ffffff26,0 6px 16px #7fa3ea38}.signin-cta:hover{filter:brightness(1.08);box-shadow:inset 0 1px #ffffff26,0 8px 20px #7fa3ea52}.signin-cta:active{transform:translateY(1px)}.analyze-form{gap:10px;display:flex}.analyze-form input{background:var(--surface);border:1px solid var(--border);color:var(--text);font-family:var(--mono);border-radius:8px;outline:none;flex:1;padding:12px 14px;font-size:13.5px;transition:border-color .15s}.analyze-form input:focus{border-color:var(--reason);box-shadow:0 0 0 3px #7fa3ea29}.analyze-form input::placeholder{color:var(--text-faint)}.analyze-form input:disabled{opacity:.6}.analyze-form button{background:var(--reason);color:#0c1220;font-family:var(--sans);cursor:pointer;white-space:nowrap;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:14px;font-weight:600;transition:filter .15s,transform .1s,box-shadow .15s;display:inline-flex;box-shadow:inset 0 1px #ffffff26,0 6px 16px #7fa3ea2e}.analyze-form button:hover:not(:disabled){filter:brightness(1.08);box-shadow:inset 0 1px #ffffff26,0 8px 20px #7fa3ea47}.analyze-form button:active:not(:disabled){transform:translateY(1px)}.analyze-form button:disabled{opacity:.55;cursor:default}.examples{color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:4px;margin-top:-10px;font-size:12.5px;display:flex}.example-link{color:var(--text-dim);font-family:var(--mono);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;background:0 0;border:none;padding:2px 0;font-size:12.5px}.example-link:hover:not(:disabled){color:var(--reason);-webkit-text-decoration-color:var(--reason);text-decoration-color:var(--reason)}.example-link:disabled{cursor:default;opacity:.5}.example-sep{color:var(--text-faint);margin:0 6px}.banner{border:1px solid #0000;border-radius:8px;padding:13px 16px;font-size:14px;animation:.35s both fadeInUp}.spinner{border:2px solid #0c12204d;border-top-color:currentColor;border-radius:50%;flex-shrink:0;width:13px;height:13px;animation:.6s linear infinite spin}.banner-error{background:var(--risk-dim);color:#f2b3ac;border-color:#5a2f2a}.banner-info{background:var(--surface-2);border-color:var(--border);color:var(--text-dim)}.banner-success{background:var(--write-dim);border-color:var(--write);color:#c9f2da}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;padding:22px;animation:.4s both fadeInUp;display:flex;box-shadow:inset 0 1px #ffffff05,0 12px 28px -16px #0000008c}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-head h2{text-wrap:balance;margin:0;font-size:19px;font-weight:600}.section-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin:0;font-size:12px}.meta-row{flex-wrap:wrap;align-items:center;gap:14px;font-size:13.5px;display:flex}.mono{font-family:var(--mono)}.dim{color:var(--text-dim);font-size:13px}.badge{font-family:var(--mono);letter-spacing:.03em;text-transform:lowercase;border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.badge-classification{background:var(--reason-dim);color:#cfe0ff;border-color:#3f5a8f}.badge-severity-low{background:var(--write-dim);border-color:var(--write);color:#c9f2da}.badge-severity-medium{background:var(--gate-dim);border-color:var(--gate);color:#ffe6ad}.badge-severity-high{background:var(--risk-dim);border-color:var(--risk);color:#ffd2cd}.badge-approve{background:var(--write-dim);border-color:var(--write);color:#c9f2da}.badge-escalate{background:var(--gate-dim);border-color:var(--gate);color:#ffe6ad}.expander{border-top:1px solid var(--border);padding-top:10px}.expander summary{cursor:pointer;color:var(--text-dim);-webkit-user-select:none;user-select:none;font-size:13.5px}.expander summary:hover{color:var(--text)}.body-text{color:var(--text-dim);white-space:pre-wrap;margin:10px 0 0;font-size:13.5px}.root-cause{margin:0;font-size:14.5px;line-height:1.6}.sub-block{flex-direction:column;gap:6px;display:flex}.sub-block ul{color:var(--text);flex-direction:column;gap:4px;margin:0;padding-left:20px;font-size:13.5px;display:flex}.citations{flex-wrap:wrap;gap:6px;display:flex}.citation-chip{font-family:var(--mono);color:var(--text-faint);background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:2px 7px;font-size:11px}.checks-row{flex-wrap:wrap;gap:8px;display:flex}.check-pill{font-family:var(--mono);background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.check-dot{border-radius:50%;width:6px;height:6px}.check-ok .check-dot{background:var(--write)}.check-fail .check-dot{background:var(--risk)}.reasoning-text{color:var(--text-dim);margin:0;font-size:13.5px;line-height:1.6}.card-gate{border-color:var(--gate);background:linear-gradient(180deg, #d9a44114, transparent 45%), var(--surface);box-shadow:inset 0 1px #ffffff05,0 0 0 1px #d9a4411f,0 16px 32px -18px #d9a44140}.section-label-gate{color:var(--gate)}.gate-caption{color:var(--text-dim);margin:0;font-size:13px}.proposed-comment{background:var(--surface-2);border:1px solid var(--border);font-family:var(--mono);color:var(--text);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:0;padding:14px 16px;font-size:13px;overflow-x:auto}.label-to-add{color:var(--text-dim);font-size:13px}.gate-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.btn-approve,.btn-reject{font-family:var(--sans);cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:600;transition:filter .15s,background .15s,box-shadow .15s;display:inline-flex}.btn-approve{background:var(--write);color:#08170f;box-shadow:inset 0 1px #fff3,0 8px 20px #5ec98d38}.btn-approve:hover:not(:disabled){filter:brightness(1.08);box-shadow:inset 0 1px #fff3,0 10px 24px #5ec98d52}.btn-reject{border-color:var(--border);color:var(--text-dim);background:0 0}.btn-reject:hover:not(:disabled){border-color:var(--text-faint);color:var(--text)}.btn-approve:active:not(:disabled),.btn-reject:active:not(:disabled){transform:translateY(1px)}.btn-approve:disabled,.btn-reject:disabled{opacity:.5;cursor:default}.footer{border-top:1px solid var(--border);color:var(--text-faint);font-size:12px;font-family:var(--mono);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:8px;padding-top:20px;display:flex}.footer a{color:var(--text-faint);border-bottom:1px solid var(--border);text-decoration:none}.footer a:hover{color:var(--text-dim);border-color:var(--text-faint)}@media (width<=520px){.analyze-form{flex-direction:column}.analyze-form button{padding:12px 20px}.footer{flex-direction:column}}
