@import "https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700&family=Zen+Old+Mincho:wght@600&display=swap";
:root{--ink:#294843;--muted:#718984;--green:#5b9b8d;--green-dark:#37766a;--mint:#e6f4ee;--cream:#fffaf3;--line:#e5ece6;--white:#fffefa;--amber:#eaa84b;--orange:#e77949;--red:#d8534f}*{box-sizing:border-box}html{background:#f1f5ef}body{color:var(--ink);background:radial-gradient(circle at 10% 0,#e2f0e9 0,#0000 34%),radial-gradient(circle at 95% 85%,#f7e9de 0,#0000 30%),#f3f6f1;margin:0;font-family:Zen Kaku Gothic New,system-ui,sans-serif}button,a{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #79bfb2}.app-shell{background:var(--cream);width:min(100%,520px);min-height:100dvh;margin:0 auto;overflow:hidden;box-shadow:0 0 60px #2a4b4414}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf3eb;border-bottom:1px solid #e5ece6d9;justify-content:space-between;align-items:center;height:76px;padding:0 22px;display:flex}.brand{text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-family:Zen Old Mincho,serif;font-size:19px;font-weight:600;display:flex}.brand small{color:var(--muted);letter-spacing:.06em;font:400 8px/1.1 Zen Kaku Gothic New;display:block}.brand-mark{background:var(--green);color:#fff;border-radius:14px 14px 14px 4px;place-items:center;width:38px;height:38px;display:grid;transform:rotate(-4deg)}.brand-mark svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:21px}.audio-toggle{color:var(--muted);background:#e8eeeb;border:0;border-radius:30px;align-items:center;gap:5px;padding:8px 11px;font-size:12px;font-weight:700;display:flex}.audio-toggle.on{background:var(--mint);color:var(--green-dark)}.audio-toggle svg,.safe-time svg,.listen-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:18px}.screen{min-height:calc(100dvh - 76px);padding:30px 22px 42px;animation:.35s both rise}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.eyebrow{color:var(--green);letter-spacing:.09em;margin:0 0 9px;font-size:12px;font-weight:700;display:block}h1{letter-spacing:-.04em;margin:0;font-family:Zen Old Mincho,serif;font-size:clamp(30px,8vw,41px);line-height:1.45}.lead,.helper{color:var(--muted);font-size:15px;line-height:1.85}.weather-card{color:#fff;background:linear-gradient(135deg,#568f84,#87b7aa);border-radius:27px;grid-template-columns:1fr 1.25fr;gap:14px;padding:18px;display:grid;box-shadow:0 14px 34px #4e877a29}.weather-card .eyebrow{color:#d8f5eb;margin-bottom:0}.weather-card strong{font-family:Zen Old Mincho;font-size:38px;line-height:1.1;display:block}.weather-card div:first-child>span:last-child{opacity:.8;font-size:10px}.weather-metrics{border-left:1px solid #ffffff40;justify-content:space-around;padding-left:8px;display:flex}.weather-metrics span{text-align:center;opacity:.8;font-size:10px}.weather-metrics b{color:#fff;margin-top:7px;font-size:17px;display:block}.nurse-card{padding:26px 4px 22px;position:relative}.nurse-intro{align-items:center;min-height:260px;display:flex;position:relative;overflow:visible}.nurse-copy{z-index:2;width:65%;position:relative}.nurse-copy h1{font-size:clamp(29px,7.5vw,37px)}.hero-illustration{z-index:1;justify-content:center;align-items:flex-end;width:47%;height:272px;display:flex;position:absolute;bottom:-2px;right:-18px}.hero-illustration img{z-index:2;object-fit:contain;filter:drop-shadow(0 12px 14px #47695f1f);width:auto;height:260px;position:relative}.soft-blob{z-index:0;background:linear-gradient(160deg,#e0f2ea,#f8eadf);border-radius:50% 48% 46% 54%;width:170px;height:205px;position:absolute;bottom:11px;right:2px;transform:rotate(7deg)}.nurse-lead{z-index:3;max-width:92%;margin-top:3px;position:relative}.nurse-avatar{float:right;color:#d87662;background:#f7ded1;border-radius:50% 50% 47% 45%;place-items:center;width:50px;height:50px;display:grid}.nurse-avatar svg,.big-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;width:24px}.primary{background:var(--green);color:#fff;border:0;border-radius:21px;justify-content:center;align-items:center;gap:16px;width:100%;min-height:58px;padding:14px 20px;font-size:17px;font-weight:700;text-decoration:none;display:flex;box-shadow:0 9px 24px #4c8b7d33}.primary span{font-size:23px}.primary:disabled{opacity:.4}.primary.small{width:48%;min-height:52px}.time-note,.medical-note{text-align:center;color:#82958f;font-size:11px;line-height:1.6}.safe-time{border:1px solid var(--line);background:#fffdf9;border-radius:22px;align-items:center;gap:14px;padding:17px;display:flex;box-shadow:0 8px 24px #435b540d}.safe-time svg{color:#e7a248;width:27px}.safe-time span{color:var(--muted);font-size:11px;display:block}.safe-time strong{margin-top:3px;font-size:14px;display:block}.text-button{color:var(--muted);background:0 0;border:0;border-bottom:1px solid #9baca7;margin:20px auto 0;padding:3px;font-size:12px;display:block}.step-line{background:#e1e9e5;border-radius:10px;height:5px;margin-bottom:26px;overflow:hidden}.step-line span{background:var(--green);border-radius:inherit;height:100%;transition:width .35s;display:block}.form-screen h1,.question-screen h1{font-size:31px}.option-list{gap:11px;margin:28px 0;display:grid}.option{border:1.5px solid var(--line);text-align:left;background:#fffefa;border-radius:20px;justify-content:space-between;align-items:center;width:100%;min-height:58px;padding:13px 16px;font-size:16px;font-weight:500;display:flex;box-shadow:0 6px 18px #455b5509}.option i{border:1.5px solid #c8d7d2;border-radius:50%;place-items:center;width:25px;height:25px;font-size:13px;font-style:normal;display:grid}.option.selected{border-color:var(--green);background:#eaf6f1}.option.selected i{border-color:var(--green);background:var(--green);color:#fff}.chip-group{flex-wrap:wrap;gap:8px;padding:6px 0;display:flex}.chip{border:1px solid var(--line);background:#fff;border-radius:30px;padding:11px 14px;font-size:13px}.chip.selected{background:var(--green);border-color:var(--green);color:#fff}.nav-row{justify-content:space-between;align-items:center;gap:10px;margin-top:25px;display:flex}.secondary{border:1px solid var(--line);min-height:50px;color:var(--ink);background:#fff;border-radius:16px;padding:11px 20px;font-weight:700}.question-screen{flex-direction:column;display:flex}.question-options{margin-top:40px}.question-options .option{min-height:72px;font-size:17px}.big-icon{border-radius:22px;place-items:center;width:62px;height:62px;margin-bottom:21px;display:grid}.big-icon.amber{color:#a86c19;background:#f9e6c8}.big-icon.red{color:#fff;background:var(--red)}.big-icon svg{width:31px}.symptom-chips{margin:24px 0}.symptom-chips .chip{border-radius:14px;padding:13px;font-size:14px}.emergency-screen{text-align:center;background:#fff6f2}.emergency-screen .big-icon{margin-left:auto;margin-right:auto}.danger-text{color:var(--red)}.emergency-box{text-align:left;background:#fff;border:2px solid #efc2ba;border-radius:20px;margin:26px 0 20px;padding:23px}.emergency-box strong{color:var(--red);text-align:center;font-size:22px;display:block}.emergency-box p{color:#654f4b;line-height:1.8}.emergency-call{background:var(--red);box-shadow:0 9px 22px #d8534f33}.symptom-care-screen{background:#fffaf1}.symptom-care-screen .big-icon{margin-left:auto;margin-right:auto}.care-box{border-color:#efd4a9}.care-box strong{color:#a9681e}.care-steps{text-align:left;margin:0 0 20px}.care-steps p{align-items:flex-start;gap:10px;margin:9px 0;font-size:14px;line-height:1.6;display:flex}.care-steps b{color:#8a591e;background:#f4dfbc;border-radius:8px;flex:none;place-items:center;width:24px;height:24px;display:grid}.care-call{background:#bd762a;box-shadow:0 9px 22px #bd762a33}.result-screen{padding-top:0}.result-hero{text-align:center;background:linear-gradient(#e9f5ef,#f7f8f2);margin:0 -22px;padding:31px 22px 28px}.result-hero h1{font-size:34px}.risk-orb{background:#fff;border-radius:50%;place-items:center;width:64px;height:64px;margin:4px auto 8px;font-size:36px;display:grid;box-shadow:0 9px 25px #00000012}.safe .risk-orb{color:#62a67a}.care .risk-orb{color:#e4b94f}.warning .risk-orb{color:var(--orange)}.danger .risk-orb{color:var(--red)}.risk-scale{grid-template-columns:repeat(4,1fr);gap:4px;width:190px;margin:15px auto 0;display:grid}.risk-scale i{background:#dce5e1;border-radius:10px;height:5px}.safe .risk-scale i:first-child{background:#62a67a}.care .risk-scale i:nth-child(-n+2){background:#e4b94f}.warning .risk-scale i:nth-child(-n+3){background:var(--orange)}.danger .risk-scale i{background:var(--red)}.advice-card{border:1px solid var(--line);background:#fffefa;border-radius:25px;margin-top:8px;padding:20px;box-shadow:0 9px 26px #3f59520f}.nurse-message{align-items:flex-start;gap:15px;display:flex}.nurse-portrait{background:linear-gradient(145deg,#e5f3ed,#f7e7dc);border-radius:21px;flex:none;width:56px;height:56px;position:relative;overflow:hidden}.nurse-portrait img{object-fit:contain;width:86px;max-width:none;height:129px;position:absolute;top:-7px;left:-14px}.nurse-message p{margin:0;font-size:15px;font-weight:500;line-height:1.75}.listen-button{width:100%;color:var(--green-dark);background:#e9f6f1;border:1px solid #b5d5cb;border-radius:15px;justify-content:center;align-items:center;gap:9px;margin:11px 0 27px;padding:15px;font-weight:700;display:flex}.listen-button.speaking{animation:1.4s infinite pulse}@keyframes pulse{50%{background:#d6eee5}}.today-actions h2{margin:0 0 15px;font-family:Zen Old Mincho;font-size:23px}.today-actions ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.today-actions li{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:34px 1fr 22px;align-items:center;gap:10px;min-height:69px;padding:13px;display:grid}.today-actions li>span{background:var(--mint);width:31px;height:31px;color:var(--green-dark);border-radius:10px;place-items:center;font-weight:700;display:grid}.today-actions li p{margin:0;font-size:14px;font-weight:500;line-height:1.5}.today-actions li svg{fill:none;stroke:#82ac9d;stroke-width:2px;width:20px}.hourly-card{color:#fff;background:#183c37;border-radius:20px;margin:18px 0;padding:18px}.hourly-card>div:first-child{justify-content:space-between;align-items:center;display:flex}.hourly-card span{color:#c3d8d3;font-size:11px}.hourly-card strong{font-size:17px}.hour-bars{grid-template-columns:repeat(4,1fr);align-items:end;gap:5px;height:28px;margin-top:15px;display:grid}.hour-bars i{border-radius:7px 7px 2px 2px}.hour-bars .hot{background:#e77a57;height:100%}.hour-bars .warm{background:#e5bd61;height:70%}.hour-bars .cool{background:#74b9a9;height:42%}.hourly-card small{text-align:center;color:#9eb8b2;word-spacing:12px;margin-top:5px;display:block}.full{width:100%}.loading{min-height:100dvh;color:var(--muted);place-content:center;justify-items:center;display:grid}@media (min-width:521px){body{padding:20px}.app-shell{border-radius:30px;width:min(100%,760px);min-height:calc(100dvh - 40px)}.screen{min-height:calc(100dvh - 116px)}}@media (min-width:900px){body{padding:28px}.app-shell{border-radius:34px;width:min(100%,1180px);min-height:calc(100dvh - 56px)}.topbar{height:88px;padding:0 42px}.brand{gap:13px;font-size:22px}.brand-mark{border-radius:16px 16px 16px 5px;width:44px;height:44px}.audio-toggle{padding:10px 15px;font-size:13px}.screen{min-height:calc(100dvh - 144px)}.welcome-screen{grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1.45fr) minmax(330px,.8fr);gap:20px 28px;padding:40px 44px 42px;display:grid}.welcome-screen .weather-card{grid-area:1/2;align-content:center;min-height:164px;padding:25px}.welcome-screen .weather-card strong{font-size:48px}.welcome-screen .weather-metrics b{font-size:20px}.welcome-screen .nurse-card{background:linear-gradient(145deg,#fffefa 0%,#f7fbf5 62%,#f9eee5 100%);border:1px solid #e2ece5;border-radius:32px;grid-area:1/1/4;min-height:590px;padding:42px 40px 34px;overflow:hidden;box-shadow:0 18px 48px #46655c14}.welcome-screen .nurse-intro{min-height:355px}.welcome-screen .nurse-copy{width:64%}.welcome-screen .nurse-copy h1{font-size:clamp(39px,3.15vw,45px);line-height:1.46}.welcome-screen .hero-illustration{width:47%;height:390px;bottom:-18px;right:-12px}.welcome-screen .hero-illustration img{height:380px}.welcome-screen .soft-blob{width:280px;height:325px;bottom:12px;right:-8px}.welcome-screen .nurse-lead{max-width:57%;margin-top:8px;font-size:16px}.welcome-screen .primary{width:56%;margin-top:24px}.welcome-screen .time-note{width:56%}.welcome-screen .safe-time{grid-area:2/2;min-height:94px;padding:22px}.welcome-screen .safe-time svg{width:34px}.welcome-screen .safe-time span{font-size:12px}.welcome-screen .safe-time strong{font-size:16px}.welcome-screen>.text-button{grid-area:3/2;align-self:start;margin:4px auto 0}.form-screen,.question-screen,.urgent-check,.emergency-screen{border:1px solid var(--line);background:#fffefaf0;border-radius:30px;width:min(100% - 80px,760px);min-height:auto;margin:42px auto;padding:46px 54px;box-shadow:0 18px 48px #3c5a5212}.form-screen h1,.question-screen h1{font-size:38px}.form-screen .option-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.question-screen{width:min(100% - 80px,920px)}.question-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:44px}.question-options .option{align-items:flex-start;min-height:108px;padding:20px;font-size:18px}.question-options .option i{flex:none}.symptom-chips{grid-column:1/-1}.emergency-screen{width:min(100% - 80px,760px)}.result-screen{grid-template-rows:auto auto auto 1fr auto auto;grid-template-columns:minmax(320px,.78fr) minmax(460px,1.22fr);gap:16px 28px;padding:38px 44px 30px;display:grid}.result-hero{border:1px solid var(--line);border-radius:28px;grid-area:1/1;margin:0;padding:35px 28px}.result-hero h1{font-size:39px}.risk-orb{width:76px;height:76px;font-size:43px}.result-screen .nurse-message{grid-area:2/1;margin-top:0}.result-screen .listen-button{grid-area:3/1;min-height:54px;margin:0}.result-screen .today-actions{grid-area:1/2/3;padding:12px 0 0}.today-actions h2{margin-bottom:20px;font-size:29px}.today-actions ol{gap:13px}.today-actions li{border-radius:20px;min-height:88px;padding:18px}.today-actions li p{font-size:16px}.result-screen .hourly-card{grid-area:3/2/5;min-height:142px;margin:0;padding:24px}.result-screen .hour-bars{height:42px}.result-screen .full{grid-area:5/1/auto/-1;justify-self:center;width:260px}.result-screen>.medical-note{grid-area:6/1/auto/-1}}@media (min-width:900px) and (max-height:820px){.welcome-screen{padding-top:28px}.welcome-screen .nurse-card{min-height:520px;padding-top:30px}.welcome-screen .nurse-intro{min-height:315px}.welcome-screen .hero-illustration{height:340px}.welcome-screen .hero-illustration img{height:335px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation:none!important}}
