:root{--ink:#2f2945;--muted:#746e83;--bg:#faf8f4;--paper:#fff;--purple:#6956b8;--purple-soft:#eee9ff;--rose:#e87989;--rose-soft:#fff0f2;--teal:#4fa89c;--teal-soft:#eaf8f5;--amber:#fff5d8;--line:#eae5e0;--shadow:0 16px 45px rgba(56,43,79,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",system-ui,sans-serif}.app-shell{min-height:100vh;padding-bottom:95px}.app-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1140px)/2));background:rgba(250,248,244,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(226,221,216,.75);position:sticky;top:0;z-index:20}.brand{border:0;background:transparent;display:flex;align-items:center;gap:10px;color:var(--ink);cursor:pointer;text-align:left}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:var(--purple);color:#fff;font-size:24px;box-shadow:0 6px 14px rgba(105,86,184,.25)}.brand b{display:block;font-family:Georgia,serif;font-size:22px;line-height:1}.brand small{font-size:10px;color:var(--muted);letter-spacing:1.6px;text-transform:uppercase}.header-actions{display:flex;gap:8px}.icon-button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:9px 12px;color:var(--ink);font-weight:700;cursor:pointer}.icon-button span{font-size:12px;margin-left:4px}main{max-width:1140px;margin:auto;padding:42px 22px}.view{display:none;animation:fade .25s ease}.view.active{display:block}@keyframes fade{from{opacity:0;transform:translateY(6px)}}.welcome-card{min-height:330px;border-radius:32px;background:#e9f2ec;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;padding:52px 58px;position:relative}.welcome-card>div:first-child{position:relative;z-index:2}.soft-label{font-size:11px;letter-spacing:1.7px;font-weight:900;color:var(--purple)}.welcome-card h1,.page-heading h1{font:600 clamp(42px,5vw,66px)/1.05 Georgia,serif;margin:14px 0 18px;letter-spacing:-1.5px}.welcome-card h1 em{font-weight:400;color:#725f86}.welcome-card p{color:var(--muted);font-size:17px;line-height:1.65;max-width:560px}.welcome-art{position:absolute;right:0;top:0;width:43%;height:100%;background:linear-gradient(145deg,#d9e8db,#e7e0f0);border-radius:45% 0 0 45%}.welcome-art>span{position:absolute;top:45px;right:80px;color:#fff;font-size:28px}.welcome-art .moon{position:absolute;top:80px;left:50%;transform:translateX(-50%);width:145px;height:145px;display:grid;place-items:center;border-radius:50%;background:#fff7d6;color:#c4a25d;font-size:95px;box-shadow:0 18px 40px rgba(86,71,103,.13)}.welcome-art i{position:absolute;display:block;border-radius:100px;background:#b6d3bd}.welcome-art i:nth-of-type(1){height:170px;width:60px;bottom:-30px;left:80px;transform:rotate(-18deg)}.welcome-art i:nth-of-type(2){height:200px;width:55px;bottom:-55px;right:65px;transform:rotate(22deg);background:#c3b1d4}.privacy-note{display:flex;align-items:center;gap:14px;padding:15px 20px;background:#f1ede7;border-radius:16px;margin:18px 0 28px}.privacy-note>span{width:36px;height:36px;background:#fff;display:grid;place-items:center;border-radius:50%}.privacy-note b{font-size:13px}.privacy-note p{display:inline;margin-left:7px;color:var(--muted);font-size:12px}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.summary-card{min-height:275px;border-radius:25px;background:#fff;padding:25px;box-shadow:var(--shadow);border:1px solid #f1eeeb}.card-top{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.5px;font-weight:900}.card-top button{margin-left:auto;border:0;background:transparent;color:var(--muted);cursor:pointer;font-weight:800}.card-icon{width:29px;height:29px;border-radius:9px;display:grid;place-items:center}.rose{color:var(--rose);background:var(--rose-soft)}.lavender{color:var(--purple);background:var(--purple-soft)}.empty-summary{padding:29px 5px 0}.summary-card h2{font:600 30px/1.2 Georgia,serif;margin:10px 0}.summary-card p{color:var(--muted)}.small-action{border:0;background:var(--rose-soft);color:#b84f61;border-radius:11px;padding:10px 14px;font-weight:800;cursor:pointer}.purple-action{background:var(--purple-soft);color:var(--purple)}.summary-kicker{font-size:10px!important;font-weight:900;letter-spacing:1.5px;margin-top:32px}.progress-track{height:7px;background:#f1edef;border-radius:10px;overflow:hidden;margin-top:27px}.progress-track i{display:block;height:100%;background:var(--rose);border-radius:10px}.pregnancy-summary h2 small{font:500 16px system-ui}.checkin-card{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:25px;background:#fff;border-radius:25px;padding:34px;margin-top:22px;border:1px solid #f0ece8}.checkin-card h2{font:600 27px Georgia,serif;margin:8px 0}.checkin-card p{color:var(--muted);font-size:13px}.mood-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mood-row button{border:2px solid transparent;background:#faf8f6;border-radius:17px;min-height:98px;font-size:29px;cursor:pointer;transition:.2s}.mood-row button span{display:block;font-size:11px;color:var(--muted);font-weight:700;margin-top:8px}.mood-row button:hover,.mood-row button.selected{border-color:#c7bce9;background:#f4f0ff;transform:translateY(-2px)}.learn-strip{display:flex;align-items:center;gap:16px;background:#332d4d;color:#fff;margin-top:22px;border-radius:20px;padding:22px 25px}.learn-strip>span{font-size:28px}.learn-strip b{font-family:Georgia,serif}.learn-strip p{display:inline;color:#c7c1d6;font-size:12px;margin-left:7px}.learn-strip button{margin-left:auto;border:0;background:#fff;color:var(--ink);border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:10px 0 38px}.page-heading h1{font-size:52px;margin:10px 0 8px}.page-heading p{color:var(--muted);margin:0}.heading-orb{width:74px;height:74px;border-radius:24px;display:grid;place-items:center;font-size:32px}.rose-text{color:#bf5667}.purple-text{color:var(--purple)}.teal-text{color:#2f897d}.blue-text{color:#4873a0}.heading-orb.teal{background:var(--teal-soft);color:var(--teal)}.heading-orb.blue{background:#e9f2fb;color:#4873a0}.form-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{background:#fff;border:1px solid #eeeae5;border-radius:25px;padding:30px;box-shadow:var(--shadow)}.panel h2{font:600 26px Georgia,serif;margin:0 0 20px}.panel>p{color:var(--muted);font-size:14px;line-height:1.6}.panel label{display:block;color:var(--ink);font-size:13px;font-weight:800;margin:18px 0}.panel input:not([type=range]),.panel select,.panel textarea{display:block;width:100%;border:1px solid #ddd7d2;border-radius:12px;padding:13px 14px;margin-top:7px;background:#fcfbfa;color:var(--ink);font:600 15px system-ui;outline:none}.panel input:focus,.panel select:focus,.panel textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #eeeaff}.panel textarea{min-height:90px;resize:vertical}.panel label small{display:block;color:var(--muted);font-weight:500;margin-top:5px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.primary{border:0;background:var(--ink);color:#fff;border-radius:13px;padding:14px 20px;font-weight:900;cursor:pointer;box-shadow:0 7px 18px rgba(47,41,69,.18)}.panel .primary{width:100%;margin-top:7px}.primary:hover{transform:translateY(-1px)}.purple-primary{background:var(--purple)}.teal-primary{background:var(--teal)}.form-hint{font-size:11px!important;text-align:center}.result-panel{text-align:center;background:linear-gradient(150deg,#fff,#fff7f8)}.result-icon{margin:auto;width:60px;height:60px;border-radius:20px;display:grid;place-items:center;font-size:30px}.result-panel h2{font-size:34px;margin:8px}.date-line{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 3px;font-size:13px;text-align:left}.date-line:first-of-type{margin-top:28px}.notice{display:flex;gap:14px;align-items:flex-start;margin-top:22px;padding:18px 20px;border-radius:15px}.notice>span{font-size:23px}.notice p{margin:0;font-size:13px;line-height:1.55}.amber{background:var(--amber);color:#6f5820}.pregnancy-result{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:linear-gradient(150deg,#fff,#f4f0ff)}.week-ring{width:116px;height:116px;border-radius:50%;display:grid;place-items:center;align-content:center;background:var(--purple);color:#fff;box-shadow:0 0 0 9px #e7e0ff}.week-ring span{font:600 46px/1 Georgia,serif}.week-ring small{font-size:11px;letter-spacing:1.5px}.pregnancy-result h2{font-size:22px;margin:7px 0}.due-box{grid-column:1/-1;background:#fff;border-radius:15px;padding:16px 18px;display:flex;justify-content:space-between;font-size:13px}.text-button{border:0;background:transparent;color:var(--muted);font-weight:800;cursor:pointer;margin-top:13px}.week-card{margin-top:22px;border-radius:25px;background:#e9e5fa;min-height:220px;padding:36px 40px;display:grid;grid-template-columns:1.5fr .5fr;align-items:center;overflow:hidden}.week-card h2{font:600 30px Georgia,serif;margin:9px 0}.week-card p{color:#645e75;line-height:1.65}.week-art{font-size:115px;color:#9c8bd1;text-align:center}.purple-notice{background:#f1edff}.journal-layout{grid-template-columns:.85fr 1.15fr}.panel-heading{display:flex;justify-content:space-between;align-items:start}.danger-text{color:#b95360}.journal-list{display:flex;flex-direction:column;gap:11px}.journal-item{padding:15px;border-radius:14px;background:#f8f6f3;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.journal-item .mood-dot{width:38px;height:38px;border-radius:50%;background:var(--teal-soft);display:grid;place-items:center}.journal-item b{font-size:13px}.journal-item p{margin:3px 0 0;color:var(--muted);font-size:11px}.journal-item time{font-size:10px;color:var(--muted)}.empty-list{text-align:center;color:var(--muted);padding:45px 0}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.info-grid article{background:#fff;border-radius:22px;padding:27px;border:1px solid #eeeae5}.info-grid article>span{font-size:30px}.info-grid h2{font:600 23px Georgia,serif;margin:13px 0 6px}.info-grid p{color:var(--muted);font-size:13px;line-height:1.65}.urgent-card{margin-top:22px;background:#ffe9e8;border-radius:22px;padding:25px;display:grid;grid-template-columns:.7fr 1.3fr;align-items:center}.urgent-card>div{display:flex;align-items:center;gap:14px}.urgent-card>div span{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#d85a62;color:#fff;font-size:25px}.urgent-card h2{font:600 22px Georgia,serif}.urgent-card p{color:#78454a;font-size:13px;line-height:1.7}.data-card{margin-top:22px;background:#fff;border-radius:22px;padding:24px;display:flex;align-items:center;justify-content:space-between;border:1px solid #eeeae5}.data-card>div{display:flex;align-items:center;gap:14px}.data-card h2{font:600 20px Georgia,serif;margin:0}.data-card p{margin:4px 0;color:var(--muted);font-size:12px}.danger-button{border:1px solid #e2a7ad;background:#fff5f6;color:#a63e4a;border-radius:11px;padding:11px 14px;font-weight:800;cursor:pointer}.medical-disclaimer{text-align:center;color:var(--muted);font-size:11px;margin:25px}.bottom-nav{position:fixed;z-index:25;left:50%;bottom:16px;transform:translateX(-50%);width:min(650px,calc(100% - 24px));height:70px;background:rgba(47,41,69,.96);backdrop-filter:blur(12px);border-radius:20px;display:grid;grid-template-columns:repeat(5,1fr);padding:7px;box-shadow:0 16px 35px rgba(37,30,54,.25)}.bottom-nav button{border:0;background:transparent;color:#aaa4b9;border-radius:14px;font-size:10px;font-weight:800;cursor:pointer}.bottom-nav button span{display:block;font-size:20px;margin-bottom:3px}.bottom-nav button.active{background:#fff;color:var(--purple)}.privacy-screen{position:fixed;inset:0;background:#edf2e9;z-index:99;display:grid;place-items:center;align-content:center;text-align:center;padding:25px}.privacy-screen[hidden]{display:none}.breathing-orb{width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#fff 10%,#bfd2b9 65%);animation:breathe 5s ease-in-out infinite;box-shadow:0 0 0 30px rgba(191,210,185,.25)}@keyframes breathe{50%{transform:scale(1.14)}}.privacy-screen h1{font:600 45px Georgia,serif;margin:45px 0 8px}.privacy-screen p{color:var(--muted);margin-bottom:25px}.toast{position:fixed;z-index:120;left:50%;bottom:105px;transform:translate(-50%,150%);background:#29243b;color:#fff;padding:13px 18px;border-radius:12px;transition:.25s;max-width:90%;font-size:13px;text-align:center}.toast.show{transform:translate(-50%,0)}@media(max-width:800px){main{padding-top:25px}.welcome-card{grid-template-columns:1fr;padding:38px;min-height:380px}.welcome-art{opacity:.42;width:55%}.dashboard-grid,.form-layout,.journal-layout{grid-template-columns:1fr}.checkin-card{grid-template-columns:1fr}.urgent-card{grid-template-columns:1fr}.data-card{align-items:flex-start;gap:18px}.privacy-note p{display:block;margin:3px 0}.pregnancy-result{min-height:280px}}@media(max-width:520px){.app-header{height:66px;padding:0 14px}.icon-button span{display:none}.brand b{font-size:19px}main{padding:18px 14px}.welcome-card{padding:30px 24px;min-height:390px;border-radius:24px}.welcome-card h1{font-size:43px}.welcome-card p{font-size:15px}.welcome-art{width:68%}.welcome-art .moon{width:115px;height:115px;font-size:75px;top:115px}.mood-row{grid-template-columns:repeat(2,1fr)}.learn-strip{align-items:flex-start}.learn-strip p{display:block;margin:4px 0}.learn-strip button{display:none}.page-heading h1{font-size:40px}.heading-orb{width:55px;height:55px;border-radius:18px}.panel{padding:23px}.field-pair{grid-template-columns:1fr}.pregnancy-result{grid-template-columns:1fr;text-align:center}.week-ring{margin:auto}.due-box{font-size:11px}.week-card{padding:28px 24px;grid-template-columns:1fr}.week-art{display:none}.info-grid{grid-template-columns:1fr}.data-card{display:block}.danger-button{width:100%;margin-top:15px}.bottom-nav{bottom:8px;height:64px}.bottom-nav button{font-size:9px}.bottom-nav button span{font-size:18px}.privacy-note{align-items:flex-start}}
