:root{--ink:#131C19;--paper:#F1F2EF;--card:#fff;--line:#DDE1DA;--accent:#1E6E5C;--crit:#A93A26;--high:#A96F14;--med:#3D6EA8;--ok:#2E7D5B;--text:#22302B;--muted:#6C7A72}*{box-sizing:border-box;margin:0}body{font-family:IBM Plex Sans,system-ui,sans-serif;background:var(--paper);color:var(--text);font-size:14px}.shell{display:grid;grid-template-columns:210px 1fr;min-height:100vh}.side{background:var(--ink);color:#C9D4CE;padding:20px 14px;display:flex;flex-direction:column;gap:6px}.brand{font-family:Georgia,serif;font-weight:600;font-size:17px;color:#fff;margin-bottom:14px}.brand em{font-style:normal;color:#6FBFA8}.side a{color:#B9C6BF;text-decoration:none;padding:7px 10px;border-radius:6px}.side a:hover{background:#1E2B26;color:#fff}.main{padding:26px 30px;max-width:1100px}h1{font-family:Georgia,serif;font-size:23px;margin-bottom:4px}.sub{color:var(--muted);margin-bottom:20px}.ribbon{background:#1C2823;color:#E8EEEA;border-radius:8px;padding:14px 20px;display:flex;gap:30px;flex-wrap:wrap;margin-bottom:22px}.ribbon .k{font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:#8FA098}.ribbon .k,.ribbon .v{font-family:ui-monospace,monospace}.ribbon .v{font-size:19px;margin-top:3px}.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:0 0 6px}.card h3{font-family:Georgia,serif;font-size:15.5px;padding:13px 18px 11px}.card h3,.finding{border-bottom:1px solid #ebede8}.finding{display:grid;grid-template-columns:4px 90px 1fr auto;grid-gap:0 14px;gap:0 14px;padding:11px 18px 11px 0;align-items:start}.spine{align-self:stretch;border-radius:0 2px 2px 0}.spine.critical{background:var(--crit)}.spine.high{background:var(--high)}.spine.medium{background:var(--med)}.spine.low{background:var(--ok)}.rule{font-family:ui-monospace,monospace;font-size:11px;color:var(--muted)}.sev{display:block;font-size:9.5px;letter-spacing:1px;text-transform:uppercase;margin-top:3px}.sev.critical{color:var(--crit)}.sev.high{color:var(--high)}.sev.medium{color:var(--med)}.amt{font-family:ui-monospace,monospace;font-size:13px;text-align:right}.where{font-size:12.5px;margin-top:2px}.empty,.where{color:var(--muted)}.empty{padding:20px 18px}.side-spacer{flex:1 1}.side-user{font-size:11.5px;color:#8FA098;padding:0 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px}.side-signout{width:100%;text-align:left;background:none;border:none;color:#B9C6BF;font:inherit;font-size:14px;padding:7px 10px;border-radius:6px;cursor:pointer}.side-signout:hover{background:#1E2B26;color:#fff}.landing{min-height:100vh;display:flex;flex-direction:column}.landing-nav{background:var(--ink);color:#fff;padding:18px 34px;display:flex;align-items:center;justify-content:space-between}.landing-nav .brand{margin:0}.landing-nav .signin-link{color:#E8EEEA;text-decoration:none;font-size:13.5px;border:1px solid #35443d;border-radius:6px;padding:7px 14px}.landing-nav .signin-link:hover{background:#1E2B26;border-color:#1E2B26}.hero{padding:64px 34px 56px;max-width:960px;margin:0 auto;width:100%}.hero h1{font-family:Georgia,serif;font-size:40px;line-height:1.15;max-width:680px;margin-bottom:16px;color:var(--ink)}.hero .hero-sub{font-size:16px;color:var(--muted);max-width:560px;margin-bottom:26px;line-height:1.55}.hero-cta{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-size:14px;padding:12px 22px;border-radius:7px;margin-bottom:44px}.hero-cta:hover{background:#175A4B}.example-block{margin-bottom:44px}.example-block .eyebrow{font-family:ui-monospace,monospace;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#8FA098;display:block;padding-bottom:10px}.rules-section{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:54px 34px}.rules-inner{max-width:960px;margin:0 auto}.rules-inner>h2{font-family:Georgia,serif;font-size:22px;margin-bottom:8px;color:var(--ink)}.rules-inner>.rules-lede{color:var(--muted);margin-bottom:34px;max-width:560px}.rule-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:26px;gap:26px}.rule-card{border:1px solid var(--line);border-radius:8px;padding:20px}.rule-card .rule-code{font-family:ui-monospace,monospace;font-size:11px;letter-spacing:1px;color:var(--accent);margin-bottom:10px;display:block}.rule-card h3{font-family:Georgia,serif;font-size:16.5px;margin-bottom:8px;color:var(--ink)}.rule-card p{font-size:13.5px;color:var(--muted);line-height:1.55}.trust-section{background:var(--ink);color:#E8EEEA;padding:56px 34px;text-align:center}.trust-section h2{font-family:Georgia,serif;font-size:24px;margin-bottom:12px;color:#fff}.trust-section p{color:#AEBDB6;max-width:520px;margin:0 auto;line-height:1.6;font-size:14.5px}.landing-footer{margin-top:auto;background:var(--ink);border-top:1px solid #263129;padding:22px 34px;display:flex;align-items:center;justify-content:space-between}.landing-footer .brand{margin:0;font-size:14px}.landing-footer .signin-link{color:#8FA098;text-decoration:none;font-size:13px}.landing-footer .signin-link:hover{color:#fff}@media (max-width:760px){.hero h1{font-size:30px}.rule-grid{grid-template-columns:1fr}}.auth-shell{min-height:100vh;background:var(--ink);display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{background:#fff;border-radius:10px;padding:34px 32px;width:100%;max-width:380px}.auth-brand{display:block;text-align:center;text-decoration:none;margin-bottom:22px;font-family:Georgia,serif;font-weight:600;font-size:17px;color:var(--ink)}.auth-brand em{font-style:normal;color:var(--accent)}.auth-h1{font-family:Georgia,serif;font-size:21px;margin-bottom:4px;color:var(--ink)}.auth-sub{color:var(--muted);font-size:13.5px;margin-bottom:22px}.auth-error{background:#FBEAE6;color:var(--crit);font-size:13px;padding:10px 12px;border-radius:6px;margin-bottom:16px}.auth-form{display:flex;flex-direction:column;gap:5px}.auth-label{font-family:ui-monospace,monospace;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:12px}.auth-input{border:1px solid var(--line);border-radius:6px;padding:10px 12px;font-size:14px;font-family:inherit;color:var(--text)}.auth-input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.auth-button{margin-top:20px;background:var(--accent);color:#fff;border:none;border-radius:6px;padding:11px;font-size:14px;font-family:inherit;cursor:pointer}.auth-button:hover{background:#175A4B}.auth-footnote{margin-top:20px;color:var(--muted);font-size:12px;text-align:center;line-height:1.5}.auth-code-input{letter-spacing:6px;font-family:ui-monospace,monospace;font-size:18px;text-align:center}.mfa-panel{padding:18px}.mfa-block{max-width:360px}.mfa-lede{color:var(--muted);font-size:13.5px;line-height:1.55;margin-bottom:16px}.mfa-cta{margin-top:0;width:auto;padding:11px 20px}.mfa-qr{width:180px;height:180px;border:1px solid var(--line);border-radius:8px;padding:10px;margin-bottom:14px;background:#fff}.mfa-secret{font-size:12px;color:var(--muted);margin-bottom:6px}.mfa-secret code{font-family:ui-monospace,monospace;background:var(--paper);padding:2px 6px;border-radius:4px}.mfa-cancel{margin-top:10px;background:none;border:none;color:var(--muted);font-size:12.5px;text-decoration:underline;cursor:pointer;padding:0}.mfa-status-on{color:var(--ok);font-size:14px;font-weight:600;margin-bottom:14px}.mfa-remove-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.mfa-factor-name{font-size:13.5px;color:var(--text)}.mfa-remove-btn{background:none;border:1px solid var(--line);color:var(--crit);font-size:12.5px;padding:6px 12px;border-radius:6px;cursor:pointer}.mfa-remove-btn:hover{background:#FBEAE6}