/* IQAI: evidence-aware interaction layer. No external fonts or dependencies. */
:root{--iq-ui-ink:#171717;--iq-ui-muted:#595959;--iq-ui-line:#d8d8d8;--iq-ui-field:#f6f6f4}
:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid #171717;outline-offset:5px;border-radius:1px}
:where(button,input,select,textarea){font:inherit;color:inherit}
:where(button,summary){touch-action:manipulation}
html{scroll-padding-top:92px}main:focus{outline:none}
.iq-skip{position:fixed;left:20px;top:-90px;padding:12px 18px;background:#111;color:#fff;z-index:1000;font-size:15px}
.iq-skip:focus{top:12px}
.iq-sr{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.iq-demo{isolation:isolate}.iq-demo *{box-sizing:border-box}
.iq-demo .instrument-meta,.iq-demo .diagram-meta{padding-bottom:16px}
.iq-demo svg{display:block}
.iq-demo svg [data-depth]{transform:none!important}
.iq-demo .trace-node,.iq-demo .trace-evidence,.iq-demo .trace-flow,.iq-demo .intel-pulse,.iq-demo .intel-core,.iq-demo .intel-challenge,.iq-demo .risk-evidence,.iq-demo .risk-auto-scan,.iq-demo .risk-unresolved,.iq-demo .scan-band,.iq-demo .chip,.iq-demo .place-halo{animation:none!important;opacity:1}
.iq-demo .draw,.iq-demo .draw-line{animation:none!important;stroke-dasharray:none;stroke-dashoffset:0!important}
.iq-demo .trace-lens,.iq-demo .diag-cursor,.iq-demo .intel-lens,.iq-demo .risk-scan,.iq-demo .probe,.iq-demo .scan-band{display:none}
.iq-demo [data-entity],.iq-demo [data-claim]{cursor:pointer}
.iq-demo .iq-selected :is(circle,rect){stroke:#111;stroke-width:2.1;fill:#e7e7e3}
.iq-demo [data-entity],.iq-demo [data-claim],.iq-demo [data-layer]{transition:opacity 160ms ease}
.iq-demo [data-layer-off]{opacity:.08;pointer-events:none}
.iq-legend-line{display:flex;gap:12px 28px;flex-wrap:wrap;padding:13px 0;border-top:1px solid var(--iq-ui-line);font:11px/1.5 'Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--iq-ui-muted)}
.iq-legend-line strong{font-weight:500;color:#222}.iq-legend-line span:last-child{margin-left:auto}
.iq-controls{display:flex;align-items:center;gap:4px 20px;flex-wrap:wrap;border-top:1px solid var(--iq-ui-line);border-bottom:1px solid var(--iq-ui-line);padding:5px 0;margin:0}
.iq-controls button,.iq-text-button{appearance:none;border:0;border-bottom:2px solid transparent;background:transparent;font-size:12px;line-height:1.3;min-height:44px;padding:10px 2px;cursor:pointer;color:#595959;text-align:left;border-radius:0}
.iq-controls button:hover,.iq-text-button:hover{color:#111;border-bottom-color:#aaa}
.iq-controls button[aria-pressed=true]{color:#111;border-bottom-color:#111}
.iq-controls button span{font-size:10px;color:#656565;margin-right:9px;font-variant-numeric:tabular-nums}
.iq-readout{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:26px 0 22px;border-top:1px solid var(--iq-ui-line);font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;min-height:208px}
.iq-readout>div{min-width:0}
.iq-kicker{display:block;margin:0 0 12px;font:10px/1.6 'Helvetica Neue',Helvetica,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#595959}
.iq-readout h3{font-size:22px;font-weight:400;line-height:1.18;letter-spacing:-.025em;margin:0 0 12px;max-width:35ch}
.iq-readout p{font-size:13px;line-height:1.6;margin:0;color:#444;max-width:67ch}
.iq-readout blockquote{margin:0 0 12px;border-left:1px solid #111;padding:0 0 0 16px;font-size:15px;line-height:1.55;color:#222;max-width:65ch}
.iq-readout code,.iq-data{font:11px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:#555;overflow-wrap:anywhere}
.iq-boundary{display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--iq-ui-line);font:12px/1.6 'Helvetica Neue',Helvetica,Arial,sans-serif;color:#555}
.iq-boundary strong{font-weight:500;white-space:nowrap;color:#111}
.iq-technical{border-top:1px solid var(--iq-ui-line);border-bottom:1px solid var(--iq-ui-line);margin-top:24px;padding:0}
.iq-technical summary{font-size:13px;line-height:1.5;padding:15px 24px 15px 0;cursor:pointer;min-height:48px;color:#333}
.iq-technical[open] summary{border-bottom:1px solid var(--iq-ui-line)}
.iq-technical .iq-spec{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:22px 0;margin:0}
.iq-spec dt{font-size:11px;color:#222;font-weight:500;margin:0 0 9px}.iq-spec dd{font-size:13px;line-height:1.6;color:#555;margin:0}.iq-spec a{text-decoration:underline;text-underline-offset:3px}
.iq-scope{margin:18px 0 0;font-size:12px;line-height:1.6;color:#595959;max-width:85ch}
.iq-systems-subnav{display:flex;flex-wrap:wrap;gap:12px 22px;padding:14px 0 0;border-top:1px solid var(--iq-ui-line);margin-top:28px;font-size:11px;line-height:1.6;color:#595959}
.iq-systems-subnav a[aria-current=page]{color:#111;text-decoration:underline;text-underline-offset:4px}
.iq-mobile-example{display:none}.iq-mobile-example strong{font-weight:400}
.iq-table-wrap{overflow-x:auto;padding:24px 0 4px}
.iq-table{border-collapse:collapse;font:13px/1.5 'Helvetica Neue',Helvetica,Arial,sans-serif;width:100%;text-align:left;font-variant-numeric:tabular-nums}
.iq-table th{font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:400;color:#555}
.iq-table th,.iq-table td{padding:12px 14px 12px 0;border-bottom:1px solid #ddd}
.iq-table td:last-child{color:#444}
.iq-metric{font-size:34px;letter-spacing:-.035em;color:#111;line-height:1.1;margin-right:8px}
.iq-demo .iq-chart{height:auto;width:100%;max-width:100%;background:linear-gradient(90deg,#fafafa,#fff)}
.iq-chart text{font:13px 'Helvetica Neue',Helvetica,Arial,sans-serif;fill:#555}.iq-chart .iq-axis{stroke:#d8d8d8;stroke-width:1;fill:none;vector-effect:non-scaling-stroke}
.iq-chart .iq-reference{stroke:#111;stroke-width:1;fill:none;vector-effect:non-scaling-stroke}
.iq-chart .iq-point{fill:white;stroke:#111;stroke-width:1.6;vector-effect:non-scaling-stroke}
.iq-chart .iq-mismatch{stroke-dasharray:3 3}.iq-chart .iq-value{font-size:24px;fill:#111}
.iq-review-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;border-top:1px solid #d8d8d8;padding:12px 0}
.iq-review-actions .iq-text-button{font-size:12px;min-height:44px;padding:8px 12px;border:1px solid #ccc}
.iq-review-actions button[aria-pressed=true]{background:#111;color:#fff;border-color:#111}
.iq-review-actions .iq-receipt{margin-left:auto}.iq-review-actions output{font-size:12px;color:#555;width:100%;line-height:1.6}
.iq-gates{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid #222;border-bottom:1px solid #ddd;padding:26px 0;margin-top:36px}
.iq-gates fieldset{border:0;padding:0;margin:0;min-width:0}.iq-gates legend{font-size:15px;line-height:1.5;margin-bottom:14px}
.iq-gates label{display:flex;gap:12px;align-items:center;min-height:48px;font-size:13px;line-height:1.5;cursor:pointer}
.iq-gates input{width:18px;height:18px;accent-color:#111;flex:0 0 auto}
.iq-gates output{display:block;font-size:15px;line-height:1.65;color:#333}.iq-gates h3{font-size:25px;line-height:1.2;letter-spacing:-.03em;font-weight:400;margin:8px 0 14px}
.iq-chooser{border-top:1px solid #222;border-bottom:1px solid #ddd;padding:26px 0;margin-top:32px;display:grid;grid-template-columns:1fr 1fr;gap:36px}
.iq-chooser label{font-size:12px;display:block;margin-bottom:12px}.iq-chooser select{background:white;border:1px solid #bbb;border-radius:0;min-height:48px;padding:10px;max-width:100%;width:100%;font-size:14px}
.iq-chooser p{font-size:14px;line-height:1.6;color:#444;margin:0}.iq-chooser a{text-decoration:underline;text-underline-offset:4px;display:inline-block;padding:12px 0;font-size:13px}
.iq-proof-links{display:flex;gap:10px 22px;flex-wrap:wrap;font-size:12px;margin:20px 0;line-height:1.5}.iq-proof-links a{text-decoration:underline;text-underline-offset:4px}
.iq-hint{font-size:12px;line-height:1.6;color:#555;margin:14px 0}.iq-hint a{text-decoration:underline}
.iq-home-inspect{padding:16px 0 4px;margin:0 22px;border-top:1px solid #ccc}.iq-home-inspect .iq-controls{border-top:0}.iq-home-inspect output{display:block;max-width:80ch;font-size:14px;line-height:1.55;color:#444;padding:18px 0;min-height:85px}
[data-js-only]{display:none!important}.iq-js [data-js-only]{display:initial!important}.iq-js .iq-controls[data-js-only],.iq-js .iq-review-actions[data-js-only]{display:flex!important}.iq-js .iq-gates[data-js-only],.iq-js .iq-chooser[data-js-only]{display:grid!important}
.iq-motion-control{background:none;border:0;font:11px 'Helvetica Neue',Helvetica,Arial,sans-serif;min-height:44px;padding:8px 0;color:#595959;cursor:pointer}
html.iq-motion-paused *,html.iq-motion-paused *::before,html.iq-motion-paused *::after{animation-play-state:paused!important}
.iq-js .iq-motion-control{display:block!important}
.iq-technical+.iq-systems-subnav{margin-top:20px}
.primary a,.rail-nav a,.footer-links a{transition:color 140ms ease}
[aria-current=page]{text-underline-offset:4px}
@media(min-width:761px){.iq-demo>svg:not(.iq-chart){max-height:350px;width:100%;object-fit:contain}}
@media(max-width:760px){
 .iq-demo.instrument,.iq-demo.diagram-wrap{overflow:visible}.iq-demo>svg:not(.iq-chart){display:none!important}
 .iq-mobile-example{display:grid;gap:6px;padding:28px 0;margin:0;min-height:144px;border-bottom:1px solid #ddd;font-size:14px;line-height:1.65;color:#444}
 .iq-mobile-example .iq-kicker{margin-bottom:3px}.iq-mobile-example .iq-mobile-path{font-size:23px;letter-spacing:-.035em;line-height:1.3;color:#111}
 .iq-legend-line{gap:5px;font-size:10px}.iq-legend-line span{width:100%}.iq-legend-line span:last-child{margin-left:0}
 .iq-controls{gap:0 18px;padding:4px 0}.iq-controls button{font-size:12px;min-height:44px;max-width:100%}
 .iq-readout{grid-template-columns:1fr;gap:22px;min-height:0;padding:23px 0}.iq-readout h3{font-size:23px}.iq-readout blockquote{font-size:15px}
 .iq-boundary{display:block}.iq-boundary strong{display:block;margin-bottom:5px}
 .iq-technical .iq-spec{grid-template-columns:1fr;gap:22px}.iq-gates,.iq-chooser{grid-template-columns:1fr;gap:22px}
 .iq-review-actions .iq-receipt{margin-left:0}.iq-demo .iq-chart{width:100%!important;max-width:100%!important;min-width:0}
 .iq-home-inspect{margin:0 21px}.iq-home-inspect output{min-height:120px}
 .iq-systems-subnav{gap:4px 16px}.iq-systems-subnav a{display:inline-flex;align-items:center;min-height:36px}
 .mobile-nav summary{min-width:44px;min-height:44px;display:grid;place-content:center}.mobile-nav nav a{min-height:44px;display:flex;align-items:center}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 .draw,.draw-line,.diag-run,[data-iqai-draw]{stroke-dashoffset:0!important}
 [data-iqai-step]{opacity:1!important;transform:none!important}
}
@media print{.iq-controls,.iq-review-actions,.iq-motion-control,.mobile-nav,.iq-systems-subnav{display:none!important}.iq-readout{break-inside:avoid}.iq-demo>svg{display:block!important;max-width:100%!important;width:100%!important}.iq-mobile-example{display:none!important}details>*{display:block!important}}
/* Small editorial labels still need readable contrast on white. */
:is(.eyebrow,.kicker,.section-label,.hero-meta,.arch-head,.rail-note,.footer-copy,.footer>span,.row-title span,.grid-card small,.contrast small,.flow-step small,.system-row .num,.iq-label--micro){color:#595959}
:is(.v-micro,.micro,.coordinate,.iq-label--micro,.iq-label--small,.arch-micro){fill:#595959}
@media(max-width:760px){.iq-demo .iq-chart{margin-top:16px}.iq-table th,.iq-table td{font-size:12px}.iq-table th{font-size:10px}}
img[src$="iqai-logo-compact.webp"]{height:auto!important;aspect-ratio:4/1;object-fit:contain}
.mobile-nav summary::after,.mobile-nav summary::before{content:none!important}
.iq-home-mobile,.iq-research-mobile{display:none}
@media(max-width:760px){
 .arch-stage{display:none!important}.arch-wrap .arch-legend{display:none}.arch-head span:first-child,.arch-head span:last-child{display:none}
 .iq-home-mobile{display:grid;gap:24px;padding:24px 20px;text-align:center;justify-items:center}
 .iq-home-mobile .iq-kicker{font-size:10px;line-height:1.7;margin:0;letter-spacing:.04em;max-width:29ch}
 .iq-mobile-core{border:1px solid #777;display:grid;grid-template-columns:1fr 1fr;width:min(250px,100%);font-size:13px;line-height:1.5;position:relative}
 .iq-mobile-core::before,.iq-mobile-core::after{content:'';height:19px;width:1px;background:#888;position:absolute;left:50%}
 .iq-mobile-core::before{top:-20px}.iq-mobile-core::after{bottom:-20px}
 .iq-mobile-core span{padding:18px 8px}.iq-mobile-core span:nth-child(2),.iq-mobile-core span:last-child{border-left:1px solid #bbb}
 .iq-mobile-core strong{font-weight:400;font-size:23px;letter-spacing:-.025em;grid-column:1/-1;border-top:1px solid #777;border-bottom:1px solid #777;padding:11px}
 .iq-demo .iq-chart{display:none!important}
 .iq-research-mobile{display:grid;gap:15px;justify-items:center;padding:30px 20px;background:#f4f4f4;margin-top:36px;font-size:13px;line-height:1.5;text-align:center;border-top:1px solid #aaa;border-bottom:1px solid #aaa}
 .iq-research-mobile strong{font-weight:400;font-size:20px;letter-spacing:-.025em}.hero-visual:has(+.iq-research-mobile){display:none}
}
