:root{--cream:#fbf1e9;--cream-deep:#f0e0d2;--cream-card:#fffaf4;--peach:#ffb892;--rose:#f5a1b3;--rose-deep:#e36a89;--mauve:#c39fb1;--plum:#8b4b7a;--aubergine:#2a1428;--aubergine-soft:#4a2647;--magenta:#dc2a6f;--magenta-deep:#b01c56;--magenta-glow:#dc2a6f33;--sage:#809a77;--sage-soft:#c5d4be;--amber:#d89642;--amber-soft:#f2d7a6;--ink:var(--aubergine);--ink-soft:var(--aubergine-soft);--ink-mute:#2a14289e;--ink-faint:#2a14286b;--hairline:#2a14281a;--hairline-strong:#2a142833;--font-display:"Bricolage Grotesque", "Iowan Old Style", Georgia, serif;--font-body:"Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-pop:cubic-bezier(.34, 1.56, .64, 1);font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;text-rendering:optimizelegibility;font-size:16px;line-height:1.55}*{box-sizing:border-box}html,body,#root{background:var(--cream);min-height:100vh;color:var(--ink);margin:0;padding:0}body{background:radial-gradient(ellipse 60% 45% at 12% -5%, #f5a1b38c, transparent 65%), radial-gradient(ellipse 50% 40% at 92% 18%, #ffb89273, transparent 65%), radial-gradient(ellipse 70% 35% at 78% 105%, #dc2a6f1f, transparent 65%), radial-gradient(ellipse 55% 40% at 8% 78%, #8b4b7a2e, transparent 70%), var(--cream);background-attachment:fixed;overflow-x:hidden}body:before{content:"";pointer-events:none;opacity:.45;mix-blend-mode:multiply;z-index:1;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.18  0 0 0 0 0.10  0 0 0 0 0.17  0 0 0 0.09 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}.ambient{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.ambient .blob{filter:blur(48px);opacity:.42;will-change:transform;border-radius:50%;position:absolute}.ambient .b1{background:var(--rose);width:340px;height:340px;animation:22s ease-in-out infinite drift1;top:8%;left:-120px}.ambient .b2{background:var(--peach);width:260px;height:260px;animation:26s ease-in-out infinite drift2;top:38%;right:-90px}.ambient .b3{background:var(--mauve);opacity:.3;width:300px;height:300px;animation:30s ease-in-out infinite drift3;bottom:-120px;left:30%}@keyframes drift1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,30px)scale(1.05)}}@keyframes drift2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-30px,50px)scale(.95)}}@keyframes drift3{0%,to{transform:translate(0)scale(1)}50%{transform:translate(60px,-40px)scale(1.08)}}a{color:var(--magenta-deep);transition:color .2s var(--ease-out);border-bottom:1px solid;text-decoration:none}a:hover{color:var(--magenta)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.022em;color:var(--ink);margin:0;font-weight:500}button{cursor:pointer;color:inherit;font-family:inherit;font-size:inherit;background:0 0;border:none}input,textarea,select{font-family:inherit;font-size:inherit;color:var(--ink)}.shell{z-index:2;flex-direction:column;max-width:760px;min-height:100vh;margin:0 auto;padding:24px 22px 80px;display:flex;position:relative}.shell-top{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:10px;font-size:18px;font-weight:600;display:inline-flex}.brand-mark{background:conic-gradient(from 130deg, var(--magenta), var(--rose), var(--peach), var(--mauve), var(--magenta));width:28px;height:28px;box-shadow:inset 0 0 0 1px #2a142826, 0 2px 8px -2px var(--magenta-glow);border-radius:9px;animation:18s linear infinite brand-spin;position:relative}.brand-mark:after{content:"";background:var(--cream);border-radius:50%;position:absolute;inset:8px}@keyframes brand-spin{to{transform:rotate(360deg)}}.tag-pill{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);border:1px solid var(--hairline-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap;background:#fffaf4a6;border-radius:999px;padding:6px 12px;font-size:11px}@media (width<=560px){.tag-pill{display:none}}.view{animation:view-in .42s var(--ease-out) both}@keyframes view-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.welcome{flex-direction:column;gap:26px;margin-top:8px;display:flex}.welcome h1{letter-spacing:-.032em;font-size:clamp(2.5rem,8vw,4.2rem);font-weight:500;line-height:.98}.welcome h1 em{color:var(--magenta-deep);font-style:italic;font-weight:400;display:inline-block;position:relative}.welcome h1 em:after{content:"";background:var(--peach);z-index:-1;opacity:.85;border-radius:2px;height:.18em;position:absolute;bottom:4%;left:4%;right:4%;transform:skew(-6deg)}.lede{color:var(--ink-soft);max-width:56ch;margin:0;font-size:clamp(1.05rem,2.2vw,1.18rem);line-height:1.6}.welcome-bullets{gap:14px;margin:4px 0;padding:0;list-style:none;display:grid}.welcome-bullets li{border:1px solid var(--hairline);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .28s var(--ease-out), background .24s var(--ease-out), border-color .24s var(--ease-out);background:#fffaf48c;border-radius:14px;grid-template-columns:36px 1fr;align-items:start;gap:16px;padding:16px 18px;display:grid}.welcome-bullets li:hover{background:var(--cream-card);border-color:var(--hairline-strong);transform:translateY(-2px)}.welcome-bullets b{color:var(--ink);font-size:1rem;font-weight:600}.welcome-bullets li>span:last-child{color:var(--ink-mute);font-size:.95rem;line-height:1.5;display:block}.welcome-bullets .num{font-family:var(--font-display);color:#fff;background:var(--aubergine);border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;font-weight:600;display:inline-flex;position:relative}.welcome-bullets li:first-child .num{background:var(--rose-deep)}.welcome-bullets li:nth-child(2) .num{background:var(--plum)}.welcome-bullets li:nth-child(3) .num{background:var(--magenta)}.welcome-bullets li:nth-child(4) .num{background:var(--amber);color:var(--aubergine)}.assurance-card{border:1px solid var(--hairline);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffaf4b3;border-radius:18px;flex-direction:column;gap:8px;padding:20px 22px;display:flex;position:relative;overflow:hidden}.assurance-card:before{content:"";background:radial-gradient(circle at center, var(--rose) 0%, transparent 65%);opacity:.18;pointer-events:none;width:200px;height:200px;position:absolute;top:-50%;right:-10%}.assurance-card h3{font-size:1.05rem;font-family:var(--font-body);letter-spacing:0;font-weight:700}.assurance-card p{color:var(--ink-mute);margin:0;font-size:.94rem;line-height:1.55}.cta-row{flex-wrap:wrap;align-items:center;gap:14px;margin-top:6px;display:flex}.btn-primary{background:var(--aubergine);color:var(--cream);letter-spacing:-.01em;transition:transform .22s var(--ease-pop), background .22s var(--ease-out), box-shadow .24s var(--ease-out);box-shadow:0 10px 24px -10px #2a142873, 0 0 0 0 var(--magenta-glow);border-radius:999px;align-items:center;gap:12px;padding:16px 28px;font-size:1rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn-primary:before{content:"";transition:transform .7s var(--ease-out);background:linear-gradient(120deg,#0000 30%,#ffffff2e 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.btn-primary:hover:not(:disabled):before{transform:translate(100%)}.btn-primary:hover:not(:disabled){background:var(--magenta-deep);box-shadow:0 18px 28px -12px var(--magenta-glow), 0 8px 24px -10px #2a142866;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)scale(.98)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-primary .arrow{transition:transform .24s var(--ease-out);font-family:var(--font-display)}.btn-primary:hover:not(:disabled) .arrow{transform:translate(5px)}.btn-ghost{border:1px solid var(--hairline-strong);color:var(--ink);transition:background .22s var(--ease-out), border-color .22s var(--ease-out), transform .22s var(--ease-out);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffaf466;border-radius:999px;align-items:center;gap:8px;padding:13px 20px;font-size:.95rem;font-weight:500;display:inline-flex}.btn-ghost:hover{background:var(--cream-card);border-color:var(--ink);transform:translateY(-1px)}.btn-text{color:var(--ink-faint);padding:10px 4px;font-size:.88rem}.progress{letter-spacing:.06em;color:var(--ink-mute);align-items:center;gap:14px;margin-bottom:26px;font-size:.8rem;font-weight:500;display:flex}.progress-pos{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:.95rem;font-weight:600}.progress-pos .of{color:var(--ink-faint)}.progress-track{background:var(--hairline);border-radius:2px;flex:1;height:3px;position:relative;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--rose-deep) 0%, var(--magenta) 50%, var(--plum) 100%);transform-origin:0;transition:transform .7s var(--ease-out);box-shadow:0 0 10px var(--magenta-glow);border-radius:2px;position:absolute;inset:0}.progress-section{color:var(--magenta-deep);letter-spacing:.04em;font-weight:600}.q-stage{flex-direction:column;gap:22px;display:flex;position:relative}.q-section-label{letter-spacing:.22em;text-transform:uppercase;color:var(--magenta-deep);align-items:center;gap:10px;font-size:11.5px;font-weight:700;display:inline-flex}.q-section-label:before{content:"";background:var(--magenta-deep);width:16px;height:1px}.q-prompt{font-family:var(--font-display);letter-spacing:-.022em;color:var(--ink);max-width:22ch;font-size:clamp(1.7rem,5vw,2.3rem);font-weight:500;line-height:1.12}.q-hint{color:var(--ink-mute);max-width:56ch;margin:0;font-size:.96rem;line-height:1.55}.field-stack{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field-label{letter-spacing:.05em;color:var(--ink-mute);text-transform:uppercase;font-size:.78rem;font-weight:600}.field input,.field textarea{background:var(--cream-card);border:1.5px solid var(--hairline);transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out), background .2s var(--ease-out), transform .2s var(--ease-out);border-radius:14px;outline:none;width:100%;padding:14px 18px;font-size:1rem;line-height:1.4}.field input:hover,.field textarea:hover{border-color:var(--mauve)}.field input:focus,.field textarea:focus{border-color:var(--magenta);box-shadow:0 0 0 4px var(--magenta-glow);background:#fff;transform:translateY(-1px)}.field input::placeholder,.field textarea::placeholder{color:#2a14284d}.field textarea{resize:vertical;min-height:130px;font-family:inherit}.field-note{color:var(--ink-faint);padding-left:2px;font-size:.82rem}.q-content{animation:q-content-in .38s var(--ease-out) both;flex-direction:column;gap:22px;display:flex}@keyframes q-content-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.options{flex-direction:column;gap:10px;display:flex}.option{background:var(--cream-card);border:1.5px solid var(--hairline);text-align:left;width:100%;transition:background .22s var(--ease-out), border-color .22s var(--ease-out), transform .22s var(--ease-out), box-shadow .22s var(--ease-out);cursor:pointer;animation:opt-in .38s var(--ease-out) both;border-radius:14px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex;position:relative}@keyframes opt-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.field{animation:opt-in .38s var(--ease-out) both}.option:hover{border-color:var(--mauve);background:#fff;transform:translateY(-2px);box-shadow:0 6px 14px -8px #2a14282e}.option .dot{border:1.5px solid var(--hairline-strong);width:20px;height:20px;transition:all .22s var(--ease-pop);border-radius:50%;flex:none;margin-top:1px;position:relative}.option.selected{border-color:var(--magenta);box-shadow:0 8px 20px -8px var(--magenta-glow);background:linear-gradient(135deg,#fff 0%,#fff5ee 100%)}.option.selected .dot{border-color:var(--magenta);background:var(--magenta);transform:scale(1.1);box-shadow:inset 0 0 0 4px #fff}.option.selected:after{content:"✓";color:var(--magenta);animation:tick-in .28s var(--ease-pop) both;font-size:1.1rem;font-weight:700;position:absolute;top:50%;right:18px;transform:translateY(-50%)}@keyframes tick-in{0%{opacity:0;transform:translateY(-50%)scale(.5)}to{opacity:1;transform:translateY(-50%)scale(1)}}.option-main{flex-direction:column;gap:4px;padding-right:30px;display:flex}.option-main>span:first-child{color:var(--ink);font-size:1rem;font-weight:500;line-height:1.35}.option-main .option-sub{color:var(--ink-mute);font-size:.85rem;line-height:1.45}.q-nav{justify-content:space-between;align-items:center;gap:14px;margin-top:22px;display:flex}.loading-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:70vh;padding:40px 0;display:flex}.loading-orb{background:conic-gradient(from 0deg, var(--magenta), var(--rose), var(--peach), var(--mauve), var(--plum), var(--magenta));width:120px;height:120px;box-shadow:0 30px 60px -20px var(--magenta-glow);border-radius:50%;animation:5s linear infinite spin;position:relative}.loading-orb:before{content:"";background:var(--cream);border-radius:50%;position:absolute;inset:10px}.loading-orb:after{content:"";background:radial-gradient(circle at 30% 30%, var(--rose), var(--magenta-deep));animation:pulse 2s var(--ease-in-out) infinite;border-radius:50%;position:absolute;inset:30px}.loading-text{flex-direction:column;align-items:center;gap:10px;display:flex}.loading-text h2{letter-spacing:-.02em;font-size:clamp(1.7rem,4.5vw,2.1rem)}.loading-text p{color:var(--ink-mute);max-width:42ch;margin:0;font-size:1rem}.loading-checks{flex-direction:column;gap:10px;width:100%;max-width:380px;margin-top:8px;display:flex}.loading-check{border:1px solid var(--hairline);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left;animation:opt-in .38s var(--ease-out) both;opacity:.5;background:#fffaf4b3;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;display:flex}.loading-check.active,.loading-check.done{opacity:1}.loading-check .check-dot{border:2px solid var(--hairline-strong);border-radius:50%;flex:none;width:16px;height:16px;position:relative}.loading-check.active .check-dot{border-color:var(--magenta);border-top-color:#0000;animation:.9s linear infinite spin}.loading-check.done .check-dot{border-color:var(--sage);background:var(--sage);color:#fff;justify-content:center;align-items:center;font-size:11px;display:flex}.loading-check.done .check-dot:after{content:"✓";color:#fff;font-size:10px;font-weight:700;line-height:1}.loading-check .check-label{color:var(--ink);font-size:.9rem;line-height:1.3}.loading-check.done .check-label{color:var(--ink-mute)}.find-card{animation:opt-in .38s var(--ease-out) both}.report-shell{flex-direction:column;gap:24px;display:flex}.report-header{flex-direction:column;gap:10px;display:flex}.report-header h1{letter-spacing:-.026em;font-size:clamp(2rem,5.8vw,2.8rem);font-weight:500;line-height:1.06}.tier-card{--tier-bg:var(--cream-card);--tier-border:var(--hairline);--tier-accent:var(--mauve);background:linear-gradient(135deg, var(--tier-bg) 0%, #fff9 100%);border:1px solid var(--tier-border);border-left:5px solid var(--tier-accent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 18px 40px -22px var(--tier-accent);border-radius:22px;flex-direction:column;gap:14px;padding:24px 26px;display:flex;position:relative;overflow:hidden}.tier-card:after{content:"";background:var(--tier-accent);opacity:.12;pointer-events:none;border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-60px}.tier-card:before{content:"";background:var(--tier-accent);opacity:.06;pointer-events:none;border-radius:50%;width:140px;height:140px;position:absolute;bottom:-40px;right:-20px}.tier-green{--tier-accent:var(--sage);--tier-bg:#f1f5ec;--tier-border:#809a774d}.tier-amber{--tier-accent:var(--amber);--tier-bg:#faeed4;--tier-border:#d8964247}.tier-red{--tier-accent:#b43055;--tier-bg:#fae4ec;--tier-border:#b430554d}.tier-insufficient{--tier-accent:var(--plum);--tier-bg:var(--cream-card)}.tier-meta{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);flex-wrap:wrap;align-items:center;gap:12px;font-size:.78rem;font-weight:700;display:flex}.tier-pill{background:var(--tier-accent);color:#fff;letter-spacing:.14em;border-radius:999px;align-items:center;gap:10px;padding:6px 14px;font-size:.74rem;display:inline-flex}.tier-pill .pulse{width:8px;height:8px;animation:pulse-dot 1.8s var(--ease-in-out) infinite;background:#fff;border-radius:50%}.tier-card .headline{font-family:var(--font-display);color:var(--ink);letter-spacing:-.015em;max-width:38ch;margin:0;font-size:clamp(1.2rem,3vw,1.45rem);font-weight:500;line-height:1.3}.section{flex-direction:column;gap:14px;display:flex}.section-title{letter-spacing:.22em;text-transform:uppercase;color:var(--magenta-deep);align-items:center;gap:10px;font-size:.76rem;font-weight:700;display:flex}.section-title:before{content:"";background:var(--magenta-deep);width:20px;height:1px}.summary-stack{color:var(--ink-soft);flex-direction:column;gap:14px;font-size:1.04rem;line-height:1.65;display:flex}.summary-stack p{margin:0}.cards-grid{gap:12px;display:grid}.find-card{border:1px solid var(--hairline);border-left:4px solid var(--mauve);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:transform .24s var(--ease-out), box-shadow .24s var(--ease-out);background:#fffaf4bf;border-radius:16px;flex-direction:column;gap:6px;padding:18px 20px;display:flex}.find-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px -14px #2a14284d}.find-card.severity-high{border-left-color:#b43055}.find-card.severity-medium{border-left-color:var(--amber)}.find-card.severity-low{border-left-color:var(--plum)}.find-card.positive{border-left-color:var(--sage)}.find-card h4{font-family:var(--font-body);letter-spacing:0;color:var(--ink);font-size:1rem;font-weight:600;line-height:1.35}.find-card p{color:var(--ink-mute);margin:0;font-size:.93rem;line-height:1.55}.find-card .sev-label{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-size:.68rem;font-weight:700}.bullet-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.bullet-list li{color:var(--ink-soft);border:1px solid var(--hairline);background:#fffaf48c;border-radius:12px;grid-template-columns:28px 1fr;gap:12px;padding:14px 16px;font-size:1rem;line-height:1.55;display:grid}.bullet-list li:before{content:counter(li);counter-increment:li;color:var(--magenta-deep);font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.4}.bullet-list{counter-reset:li}.web-findings{border-top:1px solid var(--hairline);padding-top:24px}.web-list{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.web-list li{color:var(--ink-soft);border:1px solid var(--hairline);background:#fffaf466;border-radius:10px;grid-template-columns:16px 1fr;gap:12px;padding:10px 12px;font-size:.92rem;line-height:1.4;display:grid}.web-list li .web-dot{background:var(--mauve);border-radius:50%;width:10px;height:10px;margin-top:7px}.web-list li.ok .web-dot{background:var(--sage)}.web-list li.fail .web-dot{background:var(--rose);opacity:.7}.web-list li .web-label{color:var(--ink);font-weight:600}.web-list li .web-note{color:var(--ink-mute);margin-top:3px;font-size:.82rem;display:block}.disclaimer{color:var(--ink-mute);border:1px solid var(--hairline);background:#2a14280a;border-radius:14px;margin:6px 0 0;padding:16px 18px;font-size:.86rem;line-height:1.6}.report-actions{flex-wrap:wrap;gap:12px;margin-top:10px;padding-top:10px;display:flex}.report-footer{text-align:center;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;margin-top:16px;font-size:.8rem;font-weight:600}.error-card{color:#6a1432;background:#fae4ec;border:1px solid #b4305566;border-radius:14px;padding:16px 18px;font-size:.94rem;line-height:1.5}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(.85)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}@media (width>=720px){.shell{padding:36px 40px 80px}.welcome-bullets,.cards-grid{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.ambient{display:none}}
