.secret-expiry-banner{display:flex;align-items:center;gap:12px;padding:10px 16px;font-size:14px;border-bottom:1px solid}.secret-expiry-banner .icon{font-size:18px}.secret-expiry-banner .message{flex:1}.secret-expiry-banner .dismiss{background:none;border:0;font-size:18px;cursor:pointer;color:inherit;padding:0 4px;opacity:.6}.secret-expiry-banner .dismiss:hover{opacity:1}.secret-expiry-banner.warning{background:#fef3c7;color:#78350f;border-bottom-color:#fbbf24}.secret-expiry-banner.critical{background:#fed7aa;color:#7c2d12;border-bottom-color:#f97316}.secret-expiry-banner.expired{background:#fecaca;color:#7f1d1d;border-bottom-color:#dc2626}.risk-matrix{--zone-green-bg: #d1fadf;--zone-green-fg: #065f46;--zone-yellow-bg: #fef3c7;--zone-yellow-fg: #92400e;--zone-red-bg: #fecaca;--zone-red-fg: #991b1b;background:#fff;border:1px solid var(--rule);border-radius:8px;padding:20px 24px}.risk-matrix-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.risk-matrix-controls label{display:flex;flex-direction:column;font-size:13px;color:var(--ink-soft);font-weight:500}.risk-matrix-controls span{margin-bottom:4px}.risk-matrix-controls select{font-size:14px;padding:8px 10px;border:1px solid var(--rule);border-radius:4px;background:#fff}.risk-matrix-wrap{display:flex;align-items:stretch;gap:12px;margin:8px 0 12px}.axis-y-label{writing-mode:vertical-rl;transform:rotate(180deg);font-size:11px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;padding:4px 0;display:flex;align-items:center}.axis-x-label{text-align:center;font-size:11px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;margin-top:6px}.risk-matrix-table{border-collapse:collapse;font-size:13px}.risk-matrix-table td,.risk-matrix-table th{border:1px solid var(--rule);padding:10px 14px;text-align:center;min-width:56px}.risk-matrix-table th[scope=row]{text-align:right;background:#f8fafc;color:var(--ink-soft);font-weight:500;min-width:110px;white-space:nowrap}.risk-matrix-table .axis-row th{background:#f1f5f9;color:var(--ink-soft);font-weight:500;border-top:2px solid var(--rule)}.risk-matrix-table td.zone-green{background:var(--zone-green-bg);color:var(--zone-green-fg);font-weight:600}.risk-matrix-table td.zone-yellow{background:var(--zone-yellow-bg);color:var(--zone-yellow-fg);font-weight:600}.risk-matrix-table td.zone-red{background:var(--zone-red-bg);color:var(--zone-red-fg);font-weight:600}.risk-matrix-table td.is-active{outline:3px solid var(--accent);outline-offset:-3px;position:relative}.risk-result{display:grid;grid-template-columns:auto auto 1fr;gap:24px;align-items:center;margin-top:16px;padding:12px 18px;border-radius:6px}.risk-result.zone-green{background:var(--zone-green-bg);color:var(--zone-green-fg)}.risk-result.zone-yellow{background:var(--zone-yellow-bg);color:var(--zone-yellow-fg)}.risk-result.zone-red{background:var(--zone-red-bg);color:var(--zone-red-fg)}.risk-result .result-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;opacity:.75;margin-bottom:2px}.risk-result strong{font-size:18px;font-weight:700}.risk-result .result-action{font-size:13px;font-weight:500;text-align:right}.risk-matrix-legend{display:flex;gap:16px;font-size:12px;color:var(--ink-soft);margin-top:14px;flex-wrap:wrap}.risk-matrix-legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}.risk-matrix-legend i.zone-green{background:var(--zone-green-bg);border:1px solid var(--zone-green-fg)}.risk-matrix-legend i.zone-yellow{background:var(--zone-yellow-bg);border:1px solid var(--zone-yellow-fg)}.risk-matrix-legend i.zone-red{background:var(--zone-red-bg);border:1px solid var(--zone-red-fg)}.tester-picker{position:relative}.tester-picker input{width:100%;padding:8px 10px;font-size:14px;border:1px solid var(--rule);border-radius:4px}.tester-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.tester-pills .pill{display:inline-flex;align-items:center;gap:4px;background:var(--accent-soft);color:var(--accent);padding:4px 4px 4px 10px;border-radius:16px;font-size:13px;font-weight:500}.pill-x{background:none;border:0;color:var(--accent);cursor:pointer;font-size:16px;padding:0 6px;border-radius:50%}.pill-x:hover{background:#1d4ed826}.tester-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--rule);border-radius:4px;box-shadow:0 4px 12px #00000014;margin:2px 0 0;padding:4px 0;list-style:none;z-index:10;max-height:280px;overflow-y:auto}.tester-results li button{display:flex;flex-direction:column;width:100%;text-align:left;background:none;border:0;padding:8px 12px;cursor:pointer;gap:2px}.tester-results li button:hover{background:var(--accent-soft)}.tester-results li strong{color:var(--ink);font-size:14px}.tester-results li .muted{font-size:12px}.tester-results li .title{font-size:11px;color:var(--ink-soft)}.intake-form{max-width:880px;margin:0 auto}.intake-form>section{background:#fff;border:1px solid var(--rule);border-radius:8px;padding:20px 24px;margin-bottom:18px}.intake-form section h2{margin:0 0 14px;font-size:16px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);border-bottom:1px solid var(--rule);padding-bottom:8px}.intake-form section>p{margin-top:-10px;margin-bottom:14px}.intake-form label{display:flex;flex-direction:column;font-size:13px;color:var(--ink-soft);font-weight:500;margin-bottom:14px}.intake-form label>span{margin-bottom:4px}.intake-form label em{color:var(--bad);font-style:normal;margin-left:2px}.intake-form input[type=text],.intake-form input[type=number],.intake-form input[type=date],.intake-form input:not([type]),.intake-form select,.intake-form textarea{font:inherit;font-size:14px;padding:8px 10px;border:1px solid var(--rule);border-radius:4px;background:#fff;color:var(--ink)}.intake-form textarea{font-family:inherit;resize:vertical}.intake-form .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.intake-form .grid-2 .span-2{grid-column:span 2}.intake-form input[type=checkbox]+span{display:inline-block;margin-left:8px;font-weight:400}.intake-form label:has(input[type=checkbox]){flex-direction:row;align-items:center}.intake-form .hint{font-size:12px;color:var(--ink-soft);margin-top:4px}.intake-form .hint.ok{color:var(--good)}.intake-form .hint.error{color:var(--bad)}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}:root{--ink: #1f2937;--ink-soft: #475569;--rule: #e2e8f0;--bg: #f8fafc;--accent: #1d4ed8;--accent-soft: #eff6ff;--warn-soft: #fffbeb;--good: #047857;--good-soft: #ecfdf5;--bad: #b91c1c;--bad-soft: #fef2f2;--code-bg: #f1f5f9}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button.primary{background:var(--accent);color:#fff;border:0;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}button.primary:hover{background:#1e40af}button.link{background:none;border:0;padding:0 0 0 12px;color:var(--ink-soft);cursor:pointer;font-size:13px}button.link:hover{color:var(--accent);text-decoration:underline}.signin-card{max-width:400px;margin:80px auto;background:#fff;border:1px solid var(--rule);border-radius:12px;padding:40px;text-align:center}.signin-card h1{margin:0 0 4px;font-size:28px;color:var(--accent)}.signin-card p{margin:4px 0 18px;color:var(--ink-soft)}.signin-card .hint{font-size:13px}.app-header{display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--rule);padding:12px 24px;gap:24px}.app-header .brand a{font-weight:700;font-size:18px;color:var(--accent)}.app-header nav{flex:1;display:flex;gap:18px}.app-header nav a{color:var(--ink);font-size:14px}.app-header .user{display:flex;align-items:center;font-size:13px;color:var(--ink-soft)}.app-main{max-width:1100px;margin:0 auto;padding:32px 24px}.page h1{margin-top:0}.muted{color:var(--ink-soft)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px}.card{background:#fff;border:1px solid var(--rule);border-radius:8px;padding:18px 20px;display:block;color:var(--ink)}.card:hover{border-color:var(--accent);text-decoration:none}.card h3{margin:0 0 6px;color:var(--accent)}.card p{margin:0;color:var(--ink-soft);font-size:14px}.callout{border-radius:8px;padding:16px 20px;margin:16px 0}.callout.ok{background:var(--good-soft);border-left:4px solid var(--good);color:var(--good)}.callout.error{background:var(--bad-soft);border-left:4px solid var(--bad);color:var(--bad)}.callout strong{display:block;margin-bottom:8px}.callout pre{background:#0000000a;padding:12px;border-radius:4px;overflow-x:auto;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12.5px;margin:0;color:var(--ink)}
