:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:left;box-sizing:border-box;border:none;width:100%;max-width:none;min-height:100svh;margin:0;padding:0;display:block}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{color:#24384b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f5f8fc;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0;display:block}#root{text-align:left;max-width:none;margin:0;padding:0}a{color:inherit;text-decoration:none}.app-layout{min-height:100vh;display:flex}.sidebar{color:#fff;background:#102d43;flex-direction:column;width:250px;padding:28px 20px;display:flex}.brand{align-items:center;gap:12px;margin-bottom:45px;display:flex}.brand-icon{background:#22b8a4;border-radius:12px;padding:8px 14px;font-size:24px;font-weight:700}.brand strong,.brand small{display:block}.brand small{color:#a9c4d3;margin-top:4px}.sidebar nav{gap:12px;display:grid}.sidebar nav a{border-radius:9px;padding:13px}.sidebar nav a:hover,.sidebar nav a:focus-visible{background:#254c64}.sidebar-footer{color:#aac4d3;margin-top:auto;font-size:12px}.main-content{flex:1;min-width:0;padding:30px 45px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;font-weight:600;display:flex}.status,.module-status{color:#16765a;background:#dcf5ed;border-radius:20px;padding:7px 12px;font-size:12px}.hero{color:#fff;background:linear-gradient(120deg,#123c56,#176a72);border-radius:20px;padding:46px}.eyebrow{color:#9ee6d9;letter-spacing:1px;font-size:12px;font-weight:700}.hero h1{max-width:600px;margin:16px 0;font-size:clamp(28px,3vw,42px);line-height:1.2}.hero p{color:#daebee;max-width:580px}.primary-link{color:#145168;background:#fff;border-radius:9px;margin-top:18px;padding:12px 20px;font-weight:600;display:inline-block}.modules-section{margin-top:38px}.section-heading p{color:#6c8092}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px;display:grid}.module-card{background:#fff;border:1px solid #e1eaf0;border-radius:16px;padding:26px}.module-number{color:#0f948a;font-weight:700}.module-card h3{margin:16px 0 8px}.module-card p{color:#687b8e;line-height:1.6}.module-status{margin-top:12px;display:inline-block}.notice{background:#e9f3fa;border-radius:12px;margin-top:30px;padding:22px}.notice p{margin-bottom:0;line-height:1.6}@media (width<=800px){.app-layout{flex-direction:column}.sidebar{width:100%}.sidebar-footer{display:none}.main-content{padding:22px}.hero{padding:28px}.module-grid{grid-template-columns:1fr}}.upload-section{background:#fff;border:1px solid #e1eaf0;border-radius:16px;margin-top:30px;padding:28px}.upload-card{grid-template-columns:1fr 1fr;gap:24px;margin-top:20px;display:grid}.upload-controls label{margin-bottom:12px;font-weight:600;display:block}.upload-input{width:100%;font:inherit;background:#f6fcfc;border:2px dashed #91c7c6;border-radius:10px;padding:15px;font-size:14px;display:block}.upload-hint,.upload-disclaimer{color:#687b8e;font-size:13px;line-height:1.6}.upload-preview{color:#758799;background:#f1f6fa;border:1px solid #e1eaf0;border-radius:12px;justify-content:center;align-items:center;min-height:220px;padding:15px;display:flex}.upload-preview img{object-fit:contain;border-radius:8px;max-width:100%;max-height:260px}.file-details{overflow-wrap:anywhere;background:#eef9f5;border-radius:10px;margin-top:20px;padding:14px}.upload-success{color:#16805e;font-size:13px;font-weight:600}.upload-error{color:#b42332;font-size:13px}.upload-disclaimer{margin-top:18px}@media (width<=800px){.upload-card{grid-template-columns:1fr}.upload-section{padding:20px}}.section-heading h2{color:#24384b}.upload-button{color:#fff;cursor:pointer;background:#176a72;border:none;border-radius:8px;width:100%;margin-top:16px;padding:12px;font-size:14px;font-weight:600;display:block}.upload-button:hover{background:#124f57}.upload-button:disabled{opacity:.6;cursor:not-allowed}.upload-feedback{overflow-wrap:anywhere;margin-top:12px;font-size:13px;line-height:1.6}@media (width<=600px){.app-layout{flex-direction:column;width:100%;display:flex}.sidebar{width:100%;padding:16px}.brand{gap:10px;margin-bottom:16px}.brand-icon{padding:8px 11px;font-size:19px}.brand strong{font-size:15px}.brand small{font-size:12px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sidebar nav a{text-align:center;overflow-wrap:anywhere;background:#1c4058;border-radius:8px;padding:12px 8px;font-size:13px}.sidebar nav a:hover,.sidebar nav a:focus-visible{background:#2b596f}.sidebar-footer{display:none}.main-content{width:100%;min-width:0;padding:16px 12px 28px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;font-size:13px;display:flex}.hero{border-radius:14px;padding:24px 20px}.hero h1{overflow-wrap:anywhere;font-size:28px;line-height:1.25}.hero p{font-size:14px;line-height:1.7}.primary-link{text-align:center;min-height:44px;padding:13px 16px}.modules-section{margin-top:26px}.section-heading h2{font-size:22px;line-height:1.35}.module-grid{grid-template-columns:minmax(0,1fr);gap:14px}.module-card{min-width:0;padding:18px}.module-card h3{font-size:17px}.module-card p{font-size:14px}.upload-section{margin-top:20px;padding:16px}.upload-card{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.upload-controls,.upload-preview{min-width:0}.upload-input{width:100%;max-width:100%;padding:10px;font-size:13px}.upload-preview{min-height:180px;padding:10px}.upload-preview img{max-width:100%;height:auto;max-height:240px}.upload-button{width:100%;min-height:44px;padding:12px;font-size:14px}.notice{margin-top:20px;padding:16px}.upload-disclaimer{font-size:13px;line-height:1.7}#risk-awareness{width:100%;min-width:0}#risk-awareness>div{gap:14px;display:grid;grid-template-columns:minmax(0,1fr)!important}#risk-awareness article{overflow-wrap:anywhere;min-width:0}}.analysis-mode-selector{background:#f6fafc;border:1px solid #c8dbe2;border-radius:12px;min-width:0;margin:0 0 18px;padding:14px 16px}.analysis-mode-selector legend{padding:0 6px;font-weight:700}.analysis-mode-options{flex-wrap:wrap;gap:14px;display:flex}.analysis-mode-option{cursor:pointer;align-items:center;gap:7px;font-size:14px;margin:0!important;display:inline-flex!important}.analysis-mode-option input,.research-check-label input{accent-color:#176a72;flex:none}.analysis-mode-help{color:#566d7a;overflow-wrap:anywhere;margin:12px 0 0;font-size:13px;line-height:1.6}.research-acknowledgement{background:#fffaf0;border:1px solid #cba97b;border-radius:9px;margin:14px 0;padding:14px}.research-warning{color:#6b4b20;margin:0 0 10px;font-size:13px;line-height:1.6}.research-check-label{cursor:pointer;align-items:flex-start;gap:9px;font-size:13px;line-height:1.55;margin:0!important;display:flex!important}.research-check-label input{margin-top:3px}.category-explanation{color:#4e6274;font-size:13px;font-weight:400}.result-mode-tag{color:#176a72;margin:0 0 8px;font-size:12px;font-weight:600;display:inline-block}@media (width<=600px){.analysis-mode-options{flex-direction:column;gap:10px}.analysis-mode-selector{padding:12px}}.no-image-section{color:#173c45;background:#effaf7;border:1px solid #c7e5e0;border-radius:16px;margin:24px 0;padding:28px}.no-image-section h2{color:#173c45;margin:0 0 12px;font-size:clamp(1.3rem,2.5vw,1.8rem)}.no-image-section p{max-width:720px;line-height:1.7}.no-image-links{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.no-image-links a{color:#fff;text-align:center;background:#176b66;border-radius:10px;padding:12px 16px;font-weight:600;text-decoration:none;display:inline-block}.no-image-links a:hover{background:#10524e}.no-image-links a:focus-visible{outline-offset:3px;outline:3px solid #14314a}@media (width<=600px){.no-image-section{padding:20px}.no-image-links{flex-direction:column}.no-image-links a{width:100%}}:root{--ui-navy:#102d43;--ui-teal:#0d8b85;--ui-text:#19364a;--ui-border:#e0eaf0;--ui-surface:#fff}body{color:var(--ui-text);-webkit-font-smoothing:antialiased;background:#f6f9fc}.app-layout{width:100%}.sidebar{background:linear-gradient(165deg,#0b2336 0%,#103a4c 100%)}.brand-icon{background:linear-gradient(135deg,#16b8aa,#087d84);box-shadow:0 5px 18px #00000024}.sidebar nav a{border:1px solid #0000;font-weight:600;transition:background-color .2s,border-color .2s}.sidebar nav a:hover,.sidebar nav a:focus-visible{background:#ffffff1a;border-color:#ffffff29}.main-content{background:radial-gradient(circle at 90% 0,#e8f7f5 0%,#0000 32%),#f7fafc}.topbar{border-bottom:1px solid var(--ui-border);padding-bottom:18px}.hero{background:radial-gradient(circle at 95% 10%,#34d3c238,#0000 40%),linear-gradient(120deg,#0b293d,#10566a 65%,#087e7b);border:1px solid #ffffff1f;box-shadow:0 16px 40px #102d4321}.hero h1{letter-spacing:-.035em;font-weight:800}.hero p{line-height:1.75}.primary-link{box-shadow:0 5px 15px #0000001a}.module-card,.upload-section{background:var(--ui-surface);border-color:var(--ui-border);box-shadow:0 5px 24px #0f2c410b}.module-card{transition:transform .2s,box-shadow .2s}.module-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0f2c411a}.no-image-section{background:linear-gradient(135deg,#effbf8,#e6f5f3)}@media (width>=801px){.main-content{padding:36px clamp(28px,4vw,72px) 72px}.hero{padding:clamp(36px,4vw,64px)}}@media (prefers-reduced-motion:reduce){.module-card,.sidebar nav a{transition:none}}.upload-section{background:#fff;border:1px solid #dae7ec;border-radius:22px;padding:clamp(22px,3vw,38px);box-shadow:0 12px 38px #13384c0f}.upload-card{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;gap:24px}.upload-controls{background:linear-gradient(145deg,#f8fcfc,#eef8f7);border:1px solid #d6e9e7;border-radius:18px;min-width:0;padding:24px}.analysis-mode-selector{background:#fff;border:1px solid #cde0e4;border-radius:14px;padding:18px}.upload-input{color:#456174;background:#fff;border:2px dashed #80c5c0;border-radius:14px;width:100%;padding:18px;transition:border-color .2s}.upload-input:hover{border-color:#087f7b}.upload-input:focus-visible{outline-offset:3px;outline:3px solid #0a827c}.upload-input::file-selector-button{color:#fff;font:inherit;cursor:pointer;background:#0e7574;border:0;border-radius:9px;margin-right:14px;padding:11px 16px;font-weight:700}.upload-input::file-selector-button:hover{background:#095b5b}.upload-preview{background:radial-gradient(circle at 50% 35%,#fff,#0000 65%),linear-gradient(145deg,#edf7f8,#e6f0f5);border:1px solid #cfe2e6;border-radius:18px;min-width:0;min-height:310px;padding:24px;box-shadow:inset 0 0 0 5px #ffffff73}.upload-preview img{border-radius:12px;max-height:320px;box-shadow:0 8px 26px #0f2d3f1f}.upload-button{background:linear-gradient(135deg,#0e8580,#095b70);border-radius:11px;box-shadow:0 5px 15px #0a646e26}.upload-button:hover:not(:disabled){background:linear-gradient(135deg,#096d69,#07495c)}.module-grid{gap:22px}.module-card{background:#fff;border:1px solid #dce8ee;border-radius:20px;padding:30px;position:relative;box-shadow:0 8px 28px #1030450e}.module-card:before{content:"";background:linear-gradient(90deg,#0cae9f,#89d9d2);border-radius:0 0 8px 8px;height:3px;position:absolute;top:0;left:28px;right:28px}.module-number{color:#087b76;background:#e8f7f5;border-radius:12px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:6px;display:inline-flex}.module-card h3{color:#143549;letter-spacing:-.015em}@media (width<=800px){.upload-card{grid-template-columns:minmax(0,1fr)}.upload-controls{padding:18px}.upload-preview{min-height:220px}.module-card{padding:22px}}@media (width<=600px){.upload-section{padding:18px}.upload-input{padding:12px}.upload-input::file-selector-button{padding:10px 12px}}.brand:focus-visible{outline-offset:5px;border-radius:10px;outline:3px solid #9ee6d9}.sidebar nav a[aria-current=page]{color:#fff;background:#36cdbc29;border-color:#82e8dd8c}.welcome-screen{isolation:isolate;text-align:center;background:radial-gradient(circle at 17% 15%,#2dbea821,#0000 37%),radial-gradient(circle at 85% 83%,#4298ba1c,#0000 36%),linear-gradient(155deg,#fff 0%,#f3fbf9 65%,#edf7fa 100%);border:1px solid #deedea;border-radius:26px;justify-content:center;align-items:center;min-height:min(740px,100dvh - 165px);padding:clamp(40px,7vw,90px) clamp(24px,6vw,72px);display:flex;position:relative;overflow:hidden;box-shadow:0 22px 64px #1031430e}.welcome-screen-content{z-index:1;width:100%;max-width:760px;position:relative}.welcome-screen .eyebrow{color:#0b7471;letter-spacing:.1em;background:#eaf7f4;border:1px solid #d5ebe7;border-radius:999px;padding:9px 15px;font-size:11px;display:inline-block}.welcome-screen h1{color:#15394d;letter-spacing:-.045em;text-wrap:balance;max-width:750px;margin:28px auto 20px;font-size:clamp(32px,4.3vw,62px);font-weight:800;line-height:1.13}.welcome-screen p{color:#527080;max-width:630px;margin:0 auto;font-size:clamp(15px,1.35vw,18px);line-height:1.8}.welcome-screen .primary-link{color:#fff;background:#0b7775;border:1px solid #0c7575;border-radius:12px;margin-top:30px;padding:14px 26px;transition:background-color .2s,transform .2s}.welcome-screen .primary-link:hover,.welcome-screen .primary-link:focus-visible{background:#095d60}.welcome-screen .primary-link:focus-visible{outline-offset:4px;outline:3px solid #0a827c}.overview-view{min-width:0}.overview-view .hero{margin-top:0}#overview,#upload,#modules,#about,#awareness,#symptom-guidance,#risk-awareness{scroll-margin-top:18px}@media (width<=800px){.welcome-screen{min-height:480px;padding:48px 25px}}@media (width<=600px){.welcome-screen{border-radius:18px;min-height:420px;padding:38px 20px}.welcome-screen h1{font-size:clamp(30px,8vw,42px)}.welcome-screen p{font-size:14px}.welcome-screen .primary-link{width:100%;max-width:260px}}@media (prefers-reduced-motion:reduce){.welcome-screen .primary-link{transition:none}}.guidance-view{min-width:0}.guidance-back{color:#116c6e;background:#e7f5f2;border:1px solid #c7e5e0;border-radius:10px;align-items:center;gap:6px;width:fit-content;margin:0 0 22px;padding:10px 16px;font-weight:650;line-height:1.4;display:inline-flex}.guidance-back:hover{background:#d7efea}.guidance-back:focus-visible{outline-offset:3px;outline:3px solid #116c6e}
