/* Government & Defense wing — shared look for the free GovCon tools. Loaded relatively: ../_shared/gov.css
   Tokens: gunmetal ground, brass accent, steel-blue secondary, ruled "form" texture. Paid apps in this wing inline a copy of these tokens. */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;600&display=swap');
:root{--bg:#0e1620;--panel:#16212e;--panel2:#1c2836;--line:rgba(217,166,43,.28);--line-soft:rgba(255,255,255,.08);--fg:#eef2f6;--muted:#9aa8b8;--accent:#d9a62b;--accent-ink:#0e1620;--steel:#7fb0e6;--ok:#5be3a0;--warn:#f2b544;--bad:#ff7a6e;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--radius:6px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--fg);max-width:900px;margin:0 auto;padding:32px 20px 64px;line-height:1.55}
h1{color:var(--fg);font-size:2em;line-height:1.15;margin:0 0 8px;letter-spacing:-.01em;font-weight:700}
h1 .k{color:var(--accent)}
h2{font-size:1.15em;margin:26px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line-soft)}h3{font-size:1em;margin:16px 0 6px}
.subtitle{color:var(--muted);font-size:1.05em;margin:0 0 24px;max-width:680px}
.crumb{font-family:var(--mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.crumb a{color:var(--muted);text-decoration:none}.crumb b{color:var(--accent);font-weight:600}
.wing-tag{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid var(--line);border-radius:3px;padding:2px 7px;margin-left:8px;vertical-align:middle}
label{display:block;font-size:14px;color:var(--muted);margin:14px 0 6px}
textarea,input[type=text],input[type=number],input[type=email],input[type=date],input[type=url],select{width:100%;padding:11px 12px;border:1px solid var(--line-soft);background:var(--panel);color:var(--fg);border-radius:var(--radius);font-size:15px;font-family:inherit}
textarea:focus,input:focus,select:focus{outline:none;border-color:var(--accent)}
textarea{min-height:160px;resize:vertical}
input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:16px;height:16px;margin-right:8px;vertical-align:-2px}
button,.btn{background:var(--accent);color:var(--accent-ink);border:0;padding:11px 22px;font-size:15px;font-weight:700;border-radius:var(--radius);cursor:pointer;font-family:inherit;text-decoration:none;display:inline-block;margin-top:14px}
button:hover,.btn:hover{filter:brightness(1.08)}
button.secondary,.btn.secondary{background:transparent;color:var(--fg);border:1px solid var(--line-soft)}
button.small,.btn.small{padding:7px 12px;font-size:13px;margin-top:0}
#results{margin-top:28px;display:none;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px}
.score{font-family:var(--mono);font-size:3em;color:var(--accent);font-weight:600;text-align:center;line-height:1}.score small{display:block;font-family:"IBM Plex Sans",sans-serif;font-size:14px;color:var(--muted);font-weight:500;margin-top:6px}
.verdict{display:inline-block;font-family:var(--mono);font-weight:600;letter-spacing:.06em;padding:6px 12px;border-radius:4px;border:1px solid}
.verdict.go{color:var(--ok);border-color:var(--ok)}.verdict.caution{color:var(--warn);border-color:var(--warn)}.verdict.no{color:var(--bad);border-color:var(--bad)}.verdict.info{color:var(--steel);border-color:var(--steel)}
.metric{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line-soft)}.metric:last-child{border-bottom:0}
.bar{flex:1;height:8px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;max-width:200px}.bar i{display:block;height:100%;background:var(--accent)}
ul.fix{margin:8px 0 0;padding-left:20px}ul.fix li{margin:6px 0}
.good{color:var(--ok)}.warn{color:var(--warn)}.bad{color:var(--bad)}.steel{color:var(--steel)}
.flag{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-left:3px solid var(--line-soft);background:var(--panel2);border-radius:0 var(--radius) var(--radius) 0;margin:8px 0}
.flag.kill{border-left-color:var(--bad)}.flag.risk{border-left-color:var(--warn)}.flag.fit{border-left-color:var(--ok)}
.flag .tag{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;min-width:44px;padding-top:3px}
.flag.kill .tag{color:var(--bad)}.flag.risk .tag{color:var(--warn)}.flag.fit .tag{color:var(--ok)}
.flag q{display:block;font-size:13px;color:var(--muted);margin-top:4px;font-style:italic}
.cta{margin-top:36px;padding:22px 24px;background:linear-gradient(135deg,rgba(217,166,43,.12),rgba(127,176,230,.06));border:1px solid var(--line);border-radius:8px}.cta p{margin:0 0 8px}.cta a{color:var(--accent);font-weight:700}
.note{font-size:13px;color:var(--muted)}
.foot{margin-top:44px;padding-top:16px;border-top:1px solid var(--line-soft);font-size:13px;color:var(--muted)}.foot a{color:var(--muted)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.card{background:var(--panel);border:1px solid var(--line-soft);border-radius:8px;padding:16px}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line-soft);vertical-align:top}th{font-family:var(--mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:600}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--mono)}
.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;background:rgba(217,166,43,.15);color:var(--accent);font-family:var(--mono)}
.pill.steel{background:rgba(127,176,230,.15);color:var(--steel)}.pill.ok{background:rgba(91,227,160,.15);color:var(--ok)}.pill.bad{background:rgba(255,122,110,.15);color:var(--bad)}
.copy{cursor:pointer}.copy:hover{color:var(--accent)}
.mono{font-family:var(--mono)}
.check{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line-soft)}.check:last-child{border-bottom:0}.check label{margin:0;color:var(--fg);font-size:15px;flex:1;cursor:pointer}.check .why{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.progress{height:10px;background:rgba(255,255,255,.08);border-radius:5px;overflow:hidden;margin:10px 0}.progress i{display:block;height:100%;background:var(--accent);transition:width .3s}
.steps{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.steps span{font-family:var(--mono);font-size:12px;padding:4px 9px;border-radius:3px;border:1px solid var(--line-soft);color:var(--muted)}.steps span.on{border-color:var(--accent);color:var(--accent)}.steps span.done{color:var(--ok);border-color:var(--ok)}
.q{background:var(--panel);border:1px solid var(--line-soft);border-radius:8px;padding:16px;margin:12px 0}.q h3{margin-top:0}.q .opts label{display:block;color:var(--fg);font-size:15px;margin:6px 0;cursor:pointer}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}.toolbar button{margin-top:0}
.disclaimer{font-size:12px;color:var(--muted);margin-top:14px;padding:10px 12px;border:1px dashed var(--line-soft);border-radius:var(--radius)}
@media print{body{background:#fff;color:#111;max-width:none;padding:0}.crumb,.cta,.foot,button,.toolbar,#sf-capture,.no-print{display:none!important}#results{display:block;border:0;background:#fff;padding:0}.card,.q{border-color:#ccc;background:#fff}a{color:#111}}
