@import "https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";

:root{--brand-blue:#0076e4;--brand-navy:#001040;--brand-green:#00a127;--ink:#020202;--paper:#f4f4f4;--white:#fff;--blue-50:#eaf4fe;--blue-100:#d0e7fd;--blue-200:#a6d0fb;--blue-300:#6fb2f7;--blue-400:#3492f0;--blue-500:#0076e4;--blue-600:#005fc0;--blue-700:#004b9b;--blue-800:#003a78;--blue-900:#002b5a;--navy-900:#001040;--navy-800:#0a1c52;--navy-700:#17275f;--navy-600:#26386f;--green-50:#e6f7ec;--green-100:#c3ecd0;--green-200:#8fdca8;--green-300:#4cc57a;--green-400:#14b04e;--green-500:#00a127;--green-600:#008a21;--green-700:#06701d;--red-50:#fdeaea;--red-100:#f9d0d0;--red-300:#f08a8a;--red-500:#e02424;--red-600:#c81e1e;--red-700:#a51818;--amber-50:#fdf3e2;--amber-100:#f9e2bd;--amber-500:#e8930c;--amber-600:#c87908;--gray-0:#fff;--gray-50:#f7f8fa;--gray-100:#f4f4f4;--gray-150:#eceef2;--gray-200:#e2e6ec;--gray-300:#d4dae3;--gray-400:#b7c0cd;--gray-500:#8a93a3;--gray-600:#5b6472;--gray-700:#3a4150;--gray-800:#232a38;--gray-900:#020202;--text-heading:var(--brand-navy);--text-body:#1f2740;--text-muted:var(--gray-600);--text-subtle:var(--gray-500);--text-inverse:var(--white);--text-on-brand:var(--white);--text-link:var(--brand-blue);--surface-page:var(--paper);--surface-card:var(--white);--surface-sunken:var(--gray-150);--surface-subtle:var(--gray-50);--surface-inverse:var(--brand-navy);--surface-hover:var(--gray-100);--surface-nav:#ffffffd1;--meter-track:var(--gray-200);--hero-bg:linear-gradient(180deg,#fff 0%, #eef4fb 100%);--hero-badge-bg:#ffffffe6;--hero-badge-fg:var(--blue-700);--hero-badge-border:var(--accent-border);--border-subtle:#e7eaf0;--border-default:var(--gray-200);--border-strong:var(--gray-300);--border-input:var(--gray-300);--border-inverse:#ffffff24;--accent:var(--brand-blue);--accent-hover:var(--blue-600);--accent-active:var(--blue-700);--accent-surface:var(--blue-50);--accent-border:var(--blue-200);--cta:var(--brand-green);--cta-hover:var(--green-600);--cta-active:var(--green-700);--cta-surface:var(--green-50);--status-pass:var(--brand-green);--status-pass-surface:var(--green-50);--status-pass-border:var(--green-200);--status-fail:var(--red-500);--status-fail-surface:var(--red-50);--status-fail-border:var(--red-100);--status-warn:var(--amber-500);--status-warn-surface:var(--amber-50);--status-warn-border:var(--amber-100);--status-na:var(--gray-400);--status-na-surface:var(--gray-100);--status-na-border:var(--gray-200);--ring-accent:0 0 0 3px #0076e447;--ring-cta:0 0 0 3px #00a12742;--ring-danger:0 0 0 3px #e024243d;--gradient-brand:linear-gradient(120deg, var(--brand-blue) 0%, var(--brand-green) 100%);--gradient-brand-vivid:linear-gradient(120deg, #0a86f5 0%, #10b83a 100%);--gradient-navy:linear-gradient(160deg, #001040 0%, #0a1c52 100%);--gradient-page:radial-gradient(1200px 600px at 50% -10%, #eef4fb 0%, var(--paper) 60%)}
:root{--font-display:"Sora", "Segoe UI", system-ui, sans-serif;--font-body:"Manrope", "Segoe UI", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:15px;--text-md:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--text-3xl:36px;--text-4xl:48px;--text-5xl:64px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--leading-none:1;--leading-tight:1.12;--leading-snug:1.28;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tighter:-.03em;--tracking-tight:-.018em;--tracking-normal:0em;--tracking-wide:.02em;--tracking-label:.08em;--font-heading:var(--font-display);--font-ui:var(--font-body);--font-code:var(--font-mono);--type-display-size:var(--text-5xl);--type-display-weight:var(--weight-extrabold);--type-display-leading:var(--leading-tight);--type-display-tracking:var(--tracking-tight);--type-title-size:var(--text-xl);--type-title-weight:var(--weight-bold);--type-title-leading:var(--leading-snug);--type-body-size:var(--text-base);--type-body-weight:var(--weight-regular);--type-body-leading:var(--leading-normal);--type-label-size:var(--text-xs);--type-label-weight:var(--weight-bold);--type-label-tracking:var(--tracking-label)}
:root{--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--pad-input:14px 16px;--pad-card:24px;--pad-card-lg:32px;--pad-chip:5px 10px;--container-max:1200px;--container-wide:1360px;--gutter:24px;--section-gap:64px;--control-sm:34px;--control-md:44px;--control-lg:56px}
:root{--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--radius-pill:999px;--radius-card:var(--radius-lg);--border-hairline:1px;--border-thick:2px;--shadow-xs:0 1px 2px #0010400f;--shadow-sm:0 1px 3px #00104014, 0 1px 2px #0010400a;--shadow-md:0 6px 20px #00104014;--shadow-lg:0 14px 36px #0010401a;--shadow-xl:0 28px 64px #00104024;--shadow-card:var(--shadow-md);--shadow-card-hover:0 12px 34px #00104021;--shadow-inset:inset 0 1px 2px #0010400d;--dur-fast:.15s;--dur-base:.25s;--dur-slow:.45s;--dur-gauge:1.2s;--dur-stagger:70ms;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-gauge:cubic-bezier(.16, 1, .3, 1);--blur-nav:saturate(140%) blur(12px);--blur-overlay:blur(4px)}
*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-heading);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-weight:var(--weight-bold);margin:0}p{margin:0}a{color:var(--text-link);transition:color var(--dur-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--accent-hover)}code,pre,kbd,samp{font-family:var(--font-code)}::selection{color:var(--brand-navy);background:#0076e42e}:focus-visible{box-shadow:var(--ring-accent);border-radius:var(--radius-sm);outline:none}.df-eyebrow{font-family:var(--font-body);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--type-label-tracking);text-transform:uppercase;color:var(--text-subtle)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
[data-theme=dark]{--text-heading:#f3f6ff;--text-body:#d6deef;--text-muted:#9aa6c2;--text-subtle:#74809e;--text-inverse:var(--brand-navy);--text-on-brand:#fff;--text-link:#5aa0f5;--surface-page:#050c1e;--surface-card:#0c1732;--surface-sunken:#0a142c;--surface-subtle:#101d40;--surface-inverse:#eef2fb;--surface-hover:#14213f;--surface-nav:#080f22d1;--meter-track:#ffffff1f;--hero-bg:linear-gradient(180deg,#0b1636 0%, #060e24 100%);--hero-badge-bg:#ffffff0f;--hero-badge-fg:#7bb9f8;--hero-badge-border:#3d97f261;--border-subtle:#ffffff12;--border-default:#ffffff1c;--border-strong:#ffffff2e;--border-input:#ffffff2e;--border-inverse:#00104024;--accent:#3d97f2;--accent-hover:#5aa8f6;--accent-active:#7bb9f8;--accent-surface:#3d97f226;--accent-border:#3d97f261;--cta:#17b452;--cta-hover:#2dc665;--cta-active:#46d07d;--cta-surface:#17b45229;--status-pass:#2dc665;--status-pass-surface:#17b45226;--status-pass-border:#17b45257;--status-fail:#f26a6a;--status-fail-surface:#e024242b;--status-fail-border:#e024245c;--status-warn:#f0a52e;--status-warn-surface:#e8930c29;--status-warn-border:#e8930c57;--status-na:#6b768f;--status-na-surface:#ffffff0d;--status-na-border:#ffffff1a;--ring-accent:0 0 0 3px #3d97f266;--ring-cta:0 0 0 3px #17b45261;--ring-danger:0 0 0 3px #f26a6a5c;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000073, 0 1px 2px #0000004d;--shadow-md:0 6px 22px #00000073;--shadow-lg:0 16px 40px #00000085;--shadow-xl:0 30px 66px #0009;--shadow-card:var(--shadow-md);--shadow-card-hover:0 14px 38px #0000008c;--shadow-inset:inset 0 1px 2px #00000059;--gradient-page:radial-gradient(1200px 600px at 50% -10%, #0c1b42 0%, #050c1e 62%);--gradient-navy:linear-gradient(160deg, #0c1732 0%, #16295c 100%)}[data-theme=dark] .df-navlogo{filter:brightness(0)invert()}body,.hero-section,[data-theme]{transition:background-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out)}
html,body{margin:0}@keyframes df-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes df-fade{0%{opacity:0}to{opacity:1}}.check-in{opacity:1;animation:df-rise .5s var(--ease-out) both}.results-in{opacity:1;animation:df-fade .4s var(--ease-out)}.site-footer a{transition:color var(--dur-fast) var(--ease-out)}.site-footer a:hover{color:var(--accent)}.nav-contact{white-space:nowrap}.cta-glow{box-shadow:var(--shadow-md);border-radius:15px;padding:3px;display:inline-flex;position:relative;overflow:hidden}.cta-glow:before{content:"";background:conic-gradient(from 0deg, transparent 0 55%, #7cffb0 74%, #fff 85%, transparent 100%);animation:2.4s linear infinite df-borderspin;position:absolute;inset:-45%}.cta-glow .contact-btn{position:relative}@keyframes cta-arrowfloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.contact-btn:hover svg{animation:.8s ease-in-out infinite cta-arrowfloat}@media (prefers-reduced-motion:reduce){.cta-glow:before,.contact-btn:hover svg{animation:none!important}}@keyframes df-borderspin{to{transform:rotate(360deg)}}@keyframes df-scandot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.scanning-wrap{box-shadow:var(--shadow-sm);border-radius:15px;padding:3px;display:inline-flex;position:relative;overflow:hidden}.scanning-wrap:before{content:"";background:conic-gradient(from 0deg, transparent 0 52%, #001040 65%, #0076e4 78%, #4fe38a 87%, transparent 100%);animation:1.5s linear infinite df-borderspin;position:absolute;inset:-45%}[data-theme=dark] .scanning-wrap:before{background:conic-gradient(from 0deg, transparent 0 55%, #7cffb0 74%, #fff 85%, transparent 100%)}.scanning-btn{background:var(--cta);color:#fff;height:52px;font-family:var(--font-body);font-size:var(--text-md);letter-spacing:.01em;cursor:progress;border-radius:12px;justify-content:center;align-items:center;gap:9px;padding:0 30px;font-weight:800;display:inline-flex;position:relative}.scan-dots{gap:4px;margin-left:1px;display:inline-flex}.scan-dot{opacity:.4;background:#fff;border-radius:50%;width:6px;height:6px;animation:1.05s ease-in-out infinite df-scandot}.scan-dot:nth-child(2){animation-delay:.15s}.scan-dot:nth-child(3){animation-delay:.3s}@media (prefers-reduced-motion:reduce){.scanning-wrap:before,.scan-dot{animation:none!important}}@media (max-width:880px){.rp-bento{grid-template-columns:1fr!important}.rp-dials{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))!important}.nav-newscan{display:none!important}}@media (max-width:640px){.df-navbar{gap:10px!important;padding:0 14px!important}.df-navlogo{max-width:130px!important;height:auto!important}.results-meta{flex-direction:column!important;align-items:flex-start!important;gap:10px!important}.hero-section{flex-direction:column;justify-content:center;min-height:calc(100dvh - 72px);border-left:none!important;border-right:none!important;border-radius:0!important;margin:-32px -24px 0!important;padding:40px 20px 44px!important;display:flex!important}.scan-row{flex-direction:column!important;gap:12px!important}.scan-row .scan-input{flex:none!important;width:100%!important;min-width:0!important}.scan-row .scan-btn,.scan-row .scanning-btn{width:100%!important}.scan-presets{flex-direction:column!important;width:100%!important}.scan-presets>button{flex:none!important;width:100%!important}.footer-inner{text-align:center!important;flex-direction:column!important;gap:10px!important}.app-main{padding-bottom:0!important}.app-main:has(.results-in){padding-bottom:72px!important}}.print-report{display:none}@media print{html,body{background:#fff!important}.app-shell{display:none!important}.print-report{-webkit-print-color-adjust:exact;print-color-adjust:exact;display:block!important}@page{margin:12mm}.print-card,.print-cta{break-inside:avoid}.print-cat-header{break-after:avoid}}@media (prefers-reduced-motion:reduce){.check-in,.results-in{opacity:1;animation:none}}
