html{background:#fff9fb}body{margin:0}#root{min-height:100vh}:root{color:#3e3542;font-synthesis:none;text-rendering:optimizelegibility;background:#fff9fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#f6d4e194,#0000 34%),radial-gradient(circle at 100% 0,#e0d7f87a,#0000 30%),#fff9fb;min-width:320px;min-height:100vh;margin:0}button{font:inherit}.app-shell{min-height:100vh;padding-bottom:102px}.topbar{justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);margin:0 auto;padding:28px 0 18px;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand-mark{background:#fffc;border:1px solid #b17d9629;border-radius:17px;place-items:center;width:50px;height:50px;font-size:25px;display:grid;box-shadow:0 10px 30px #6e4b5f1a}.eyebrow,.card-label{letter-spacing:.13em;color:#9b7588;margin:0;font-size:.72rem;font-weight:800}.brand h1{color:#433743;margin:3px 0 0;font-size:1.18rem;font-weight:780}.profile-button{color:#fff;cursor:pointer;background:linear-gradient(145deg,#d98aa9,#b276a5);border:0;border-radius:50%;width:46px;height:46px;font-weight:800;box-shadow:0 9px 25px #a7658d33}.dashboard{width:min(1180px,100% - 40px);margin:0 auto}.welcome{background:linear-gradient(135deg,#fffffff5,#fff5f9e6);border:1px solid #b8809721;border-radius:30px;justify-content:space-between;align-items:center;gap:28px;margin-top:16px;padding:32px;display:flex;box-shadow:0 18px 55px #69465814}.date{color:#9e7b8b;margin:0 0 6px;font-size:.94rem;font-weight:650}.welcome h2{color:#3c303b;letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,4vw,2.75rem);line-height:1.05}.welcome-copy{color:#756a73;max-width:680px;margin:14px 0 0;font-size:1rem;line-height:1.65}.primary-button,.secondary-button{cursor:pointer;border:0;font-weight:750;transition:transform .16s,box-shadow .16s}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px)}.primary-button{color:#fff;background:linear-gradient(135deg,#c77f9e,#9d76ad);border-radius:16px;flex:none;padding:15px 22px;box-shadow:0 12px 26px #a269923d}.cycle-overview{grid-template-columns:minmax(300px,.85fr) minmax(0,1.6fr);gap:24px;margin-top:24px;display:grid}.hero-card,.summary-card,.notice-card{border:1px solid #b0809521;box-shadow:0 16px 45px #61455512}.hero-card{background:linear-gradient(145deg,#fff9fc,#f6edf7);border-radius:30px;flex-direction:column;min-height:465px;padding:28px;display:flex}.hero-card-top{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.hero-card h3{color:#483b47;margin:6px 0 0;font-size:1.4rem}.status-pill{color:#906e91;white-space:nowrap;background:#a5789f1a;border-radius:999px;padding:8px 11px;font-size:.76rem;font-weight:750}.cycle-circle{background:conic-gradient(#c47799 0deg 78deg,#ded0dc 78deg 360deg);border-radius:50%;width:200px;height:200px;margin:30px auto 22px;padding:10px;box-shadow:0 17px 35px #9c688929,inset 0 0 0 1px #fff9}.cycle-circle-inner{text-align:center;background:#fffafb;border-radius:50%;place-content:center;width:100%;height:100%;display:grid}.cycle-number{color:#5a4656;font-size:3.4rem;font-weight:820;line-height:.95;display:block}.cycle-word{color:#a08091;margin-top:8px;font-size:.88rem;font-weight:700}.helper-text{color:#756975;text-align:center;margin:auto 0 18px;line-height:1.55}.secondary-button{color:#8e617c;background:#fff;border:1px solid #ae709338;border-radius:15px;width:100%;padding:14px 18px;box-shadow:0 8px 22px #704c600f}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.summary-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc2;border-radius:26px;min-height:218px;padding:24px}.summary-card:first-child{background:linear-gradient(145deg,#fff9fa,#fff1f3)}.summary-card:nth-child(2){background:linear-gradient(145deg,#fbfff9,#eef7f0)}.summary-card:nth-child(3){background:linear-gradient(145deg,#fffdfa,#fbf2e9)}.summary-card:nth-child(4){background:linear-gradient(145deg,#fbfaff,#f1eefb)}.icon-bubble{background:#ffffffc2;border-radius:15px;place-items:center;width:44px;height:44px;margin-bottom:20px;font-size:1.25rem;display:grid;box-shadow:0 8px 22px #563f4b12}.summary-card h3{color:#4c404a;margin:7px 0 8px;font-size:1.25rem}.summary-card p{color:#796e77;margin:0;font-size:.92rem;line-height:1.55}.notice-card{background:#ffffffb8;border-radius:24px;align-items:flex-start;gap:18px;margin-top:24px;padding:24px 28px;display:flex}.notice-icon{color:#956f9a;background:#f2e9f4;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;font-size:1.25rem;display:grid}.notice-card h3{color:#514551;margin:1px 0 7px;font-size:1rem}.notice-card p{color:#7c7179;margin:0;font-size:.9rem;line-height:1.6}.bottom-nav{z-index:20;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffeb;border:1px solid #aa7e9229;border-radius:24px;grid-template-columns:repeat(5,1fr);gap:4px;width:min(680px,100% - 28px);padding:8px;display:grid;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 18px 50px #583d4c29}.nav-item{color:#9a8993;cursor:pointer;background:0 0;border:0;border-radius:17px;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:10px 5px;font-size:.72rem;font-weight:680;display:flex}.nav-icon{font-size:1.2rem}.nav-item.active{color:#975e7e;background:linear-gradient(145deg,#f8eaf1,#f1e9f6)}@media (width<=850px){.cycle-overview{grid-template-columns:1fr}.hero-card{min-height:auto}.helper-text{margin-top:0}}@media (width<=620px){.topbar,.dashboard{width:min(100% - 24px,1180px)}.topbar{padding-top:18px}.brand-mark{width:44px;height:44px}.welcome{flex-direction:column;align-items:stretch;padding:24px 20px}.primary-button{width:100%}.summary-grid{grid-template-columns:1fr}.hero-card,.summary-card{padding:22px}.notice-card{padding:20px}.nav-item{font-size:.63rem}}.notice-card{margin-bottom:105px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#3f2e3a47;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.cycle-modal{background:#fffafc;border:1px solid #b080952e;border-radius:30px;width:min(480px,100%);padding:32px;box-shadow:0 28px 80px #50374638}.modal-icon{background:#fff0f3;border-radius:17px;place-items:center;width:52px;height:52px;margin-bottom:18px;font-size:1.4rem;display:grid}.cycle-modal h2{color:#463944;letter-spacing:-.025em;margin:7px 0 10px;font-size:1.65rem;line-height:1.15}.modal-copy{color:#786d75;margin:0 0 24px;line-height:1.6}.date-field{color:#594b55;gap:8px;font-size:.88rem;font-weight:750;display:grid}.date-field input{color:#483c45;width:100%;font:inherit;background:#fff;border:1px solid #a4768f38;border-radius:15px;outline:none;padding:15px 16px}.date-field input:focus{border-color:#bd789a;box-shadow:0 0 0 4px #bd789a1c}.form-error{color:#ad5366;margin:10px 0 0;font-size:.85rem;font-weight:650}.modal-actions{grid-template-columns:1fr 1.35fr;gap:10px;margin-top:26px;display:grid}.modal-actions button{font:inherit;cursor:pointer;border-radius:15px;padding:14px 16px;font-weight:750}.modal-cancel{color:#765f6c;background:#fff;border:1px solid #a0778c2e}.modal-save{color:#fff;background:linear-gradient(135deg,#c77f9e,#9d76ad);border:0;box-shadow:0 10px 24px #9d699133}@media (width<=520px){.cycle-modal{border-radius:25px;padding:25px 20px}.modal-actions{grid-template-columns:1fr}}.daily-log-modal{max-height:min(760px,100vh - 40px);overflow-y:auto}.log-field{color:#594b55;gap:9px;margin-top:19px;font-size:.88rem;font-weight:750;display:grid}.choice-row{flex-wrap:wrap;gap:8px;display:flex}.choice{color:#796571;font:inherit;cursor:pointer;background:#fff;border:1px solid #a979912e;border-radius:999px;padding:9px 13px;font-size:.8rem;font-weight:650}.choice.active{color:#8d5575;background:#f5e4ed;border-color:#b9719766}.log-field select,.log-field textarea{color:#4e4149;width:100%;font:inherit;background:#fff;border:1px solid #a4768f38;border-radius:14px;outline:none;padding:13px 14px}.log-field textarea{resize:vertical}.log-field select:focus,.log-field textarea:focus{border-color:#bd789a;box-shadow:0 0 0 4px #bd789a1c}.page-panel{background:#ffffffc7;border:1px solid #b0809521;border-radius:30px;min-height:620px;margin-top:16px;padding:34px;box-shadow:0 18px 55px #69465814}.page-heading{margin-bottom:28px}.page-heading h2,.coming-soon h2{color:#413540;letter-spacing:-.04em;margin:6px 0 8px;font-size:clamp(2rem,4vw,3rem)}.page-heading>p:last-child,.coming-soon>p:last-child{color:#796e77;margin:0;line-height:1.6}.history-card{background:linear-gradient(145deg,#fffafb,#faf3f7);border:1px solid #b0809521;border-radius:22px;margin-bottom:14px;padding:22px}.history-date{align-items:center;gap:16px;display:flex}.history-day{color:#955f7d;background:#f5e5ed;border-radius:18px;flex:0 0 58px;place-items:center;width:58px;height:58px;font-size:1.4rem;font-weight:800;display:grid}.history-date strong{color:#51434d;font-size:1rem}.history-date p{color:#907d88;margin:4px 0 0;font-size:.85rem}.history-details{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.history-tag{color:#785f6d;background:#fff;border:1px solid #ae7d9529;border-radius:999px;padding:8px 11px;font-size:.78rem;font-weight:650}.history-drop{background:#fff0f3;border-radius:18px;flex:0 0 58px;place-items:center;width:58px;height:58px;font-size:1.3rem;display:grid}.empty-history{color:#998892;margin:0;font-size:.88rem}.empty-calendar,.coming-soon{text-align:center}.empty-calendar{padding:70px 20px}.empty-calendar>span,.coming-icon{margin-bottom:15px;font-size:2.5rem;display:block}.empty-calendar h3{color:#544650;margin:0 0 7px}.empty-calendar p{color:#8a7882;margin:0}.coming-soon{place-content:center;display:grid}@media (width<=620px){.page-panel{padding:24px 18px}}.fertility-page{padding-bottom:140px}.fertility-empty,.fertility-setup{text-align:center;background:linear-gradient(145deg,#fbfff9,#eef8f1);border:1px solid #74a07c24;border-radius:28px;max-width:620px;margin:60px auto 0;padding:34px}.fertility-empty>span{margin-bottom:14px;font-size:2.8rem;display:block}.fertility-empty h3,.fertility-setup h3{color:#465149;margin:0 0 10px;font-size:1.45rem}.fertility-empty p,.fertility-setup>p:not(.card-label):not(.setup-help){color:#748078;max-width:500px;margin:0 auto 24px;line-height:1.6}.fertility-setup-icon{margin-bottom:14px;font-size:2.4rem}.cycle-length-field{text-align:left;color:#526057;gap:9px;max-width:280px;margin:24px auto;font-size:.88rem;font-weight:750;display:grid}.cycle-length-input{align-items:center;gap:10px;display:flex}.cycle-length-input input{color:#425047;width:100%;font:inherit;background:#fff;border:1px solid #779e7f38;border-radius:14px;outline:none;padding:14px 15px}.cycle-length-input input:focus{border-color:#83ad8b;box-shadow:0 0 0 4px #6c9c751a}.cycle-length-input span{color:#79857e;font-weight:650}.setup-help{font-size:.8rem;color:#89928d!important;margin:20px 0 0!important;line-height:1.55!important}.fertility-status{border:1px solid #78967e1f;border-radius:26px;align-items:center;gap:20px;margin-bottom:20px;padding:26px;display:flex}.fertility-status.lower{background:linear-gradient(145deg,#f8f7fc,#f0eff8)}.fertility-status.fertile{background:linear-gradient(145deg,#f9fff8,#eaf6ec)}.fertility-status.peak{background:linear-gradient(145deg,#fffdf4,#f8f2d9)}.fertility-status-icon{background:#ffffffc2;border-radius:21px;flex:0 0 66px;place-items:center;width:66px;height:66px;font-size:1.8rem;display:grid}.fertility-status h3{color:#465047;margin:5px 0 6px;font-size:1.45rem}.fertility-status p:last-child{color:#748078;margin:0;line-height:1.55}.fertility-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.fertility-info-card{background:#ffffffc7;border:1px solid #86a18b21;border-radius:24px;min-height:220px;padding:24px;box-shadow:0 14px 38px #4b67510f}.fertility-card-icon{margin-bottom:18px;font-size:1.6rem;display:block}.fertility-info-card h3{color:#475149;margin:7px 0 9px;font-size:1.25rem}.fertility-info-card p:last-child{color:#768078;margin:0;font-size:.9rem;line-height:1.55}.text-button{color:#8a6380;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:.85rem;font-weight:750}.fertility-disclaimer{background:#fffafc;border:1px solid #b0809521;border-radius:22px;gap:16px;margin-top:20px;padding:22px 24px;display:flex}.fertility-disclaimer>span{color:#966b83;font-size:1.35rem}.fertility-disclaimer h3{color:#574951;margin:0 0 5px;font-size:.95rem}.fertility-disclaimer p{color:#81747c;margin:0;font-size:.86rem;line-height:1.55}@media (width<=700px){.fertility-grid{grid-template-columns:1fr}.fertility-status{align-items:flex-start}}.insights-page{padding-bottom:140px}.insights-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.insight-card{background:linear-gradient(145deg,#fffafd,#f8f2f7);border:1px solid #b0809521;border-radius:25px;min-height:220px;padding:26px;box-shadow:0 14px 38px #5c42510f}.insight-card:nth-child(2){background:linear-gradient(145deg,#fbfff9,#eef7f0)}.insight-card:nth-child(3){background:linear-gradient(145deg,#fffdf8,#f8f2e8)}.insight-card:nth-child(4){background:linear-gradient(145deg,#faf9ff,#f1eef9)}.insight-icon{margin-bottom:20px;font-size:1.65rem;display:block}.insight-card h3{color:#4c404a;margin:7px 0 9px;font-size:1.45rem}.insight-card>p:last-child{color:#7b7078;margin:0;font-size:.9rem;line-height:1.58}.insight-summary{background:#ffffffc2;border:1px solid #b0809521;border-radius:24px;gap:18px;margin-top:20px;padding:24px;display:flex}.insight-summary-icon{background:#f5e9f2;border-radius:16px;flex:0 0 48px;place-items:center;width:48px;height:48px;font-size:1.35rem;display:grid}.insight-summary h3{color:#524650;margin:1px 0 7px}.insight-summary p{color:#7e737b;margin:0;font-size:.9rem;line-height:1.6}@media (width<=700px){.insights-grid{grid-template-columns:1fr}}.settings-page{padding-bottom:140px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-card{background:#fffc;border:1px solid #b0809521;border-radius:25px;align-items:flex-start;gap:18px;min-height:205px;padding:25px;display:flex;box-shadow:0 14px 38px #5c42510f}.settings-icon{background:#f6eaf1;border-radius:16px;flex:0 0 48px;place-items:center;width:48px;height:48px;font-size:1.35rem;display:grid}.settings-card h3{color:#4d4149;margin:7px 0 8px;font-size:1.18rem}.settings-card p:last-of-type{color:#7d7179;margin:0;font-size:.9rem;line-height:1.58}.danger-button{color:#a94f63;font:inherit;cursor:pointer;background:#fff4f5;border:1px solid #b1526533;border-radius:13px;margin-top:18px;padding:11px 15px;font-size:.84rem;font-weight:750}.privacy-note{background:linear-gradient(145deg,#fffafd,#f6eef5);border:1px solid #b0809521;border-radius:22px;gap:16px;margin-top:20px;padding:22px 24px;display:flex}.privacy-note>span{color:#996a84;font-size:1.35rem}.privacy-note h3{color:#544650;margin:0 0 6px}.privacy-note p{color:#7f737b;margin:0;font-size:.9rem;line-height:1.6}@media (width<=700px){.settings-grid{grid-template-columns:1fr}}.goal-settings-card{grid-column:1/-1}.goal-settings-content{width:100%}.goal-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.goal-option{text-align:left;color:#594b54;min-height:110px;font:inherit;cursor:pointer;background:#fff;border:1px solid #b0809526;border-radius:17px;align-items:flex-start;gap:11px;padding:15px;transition:transform .15s,border-color .15s,background .15s;display:flex}.goal-option:hover{transform:translateY(-1px)}.goal-option.active{background:linear-gradient(145deg,#fff5fa,#f6edf7);border-color:#be6f976b;box-shadow:0 8px 22px #8c5b7714}.goal-option>span{font-size:1.25rem}.goal-option div{gap:5px;display:grid}.goal-option strong{color:#594752;font-size:.84rem}.goal-option small{color:#887781;font-size:.74rem;line-height:1.45}@media (width<=780px){.goal-options{grid-template-columns:1fr}}.ttc-log-section{border-top:1px solid #b0809526;margin-top:26px;padding-top:24px}.ttc-log-heading{align-items:center;gap:12px;margin-bottom:5px;display:flex}.ttc-log-heading>span{font-size:1.5rem}.ttc-log-heading h3{color:#4d494a;margin:4px 0 0;font-size:1rem}.log-input{color:#4e4149;width:100%;font:inherit;background:#fff;border:1px solid #a4768f38;border-radius:14px;outline:none;padding:13px 14px}.log-input:focus{border-color:#bd789a;box-shadow:0 0 0 4px #bd789a1c}.field-help{color:#92858d;font-size:.73rem;font-weight:500;line-height:1.5}.ttc-dashboard{background:linear-gradient(145deg,#fbfff9,#eff8f1);border:1px solid #74a07c26;border-radius:25px;margin-top:20px;padding:25px}.ttc-dashboard-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ttc-dashboard-heading h3{color:#465047;margin:6px 0 0;font-size:1.3rem}.ttc-observation-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.ttc-observation{background:#ffffffd1;border:1px solid #7b9e821f;border-radius:18px;gap:5px;padding:16px;display:grid}.ttc-observation>span{margin-bottom:4px;font-size:1.3rem}.ttc-observation small{color:#7c897f;font-size:.72rem}.ttc-observation strong{color:#4e5b51;font-size:.83rem}.fertility-signal{background:#ffffffc7;border-radius:16px;align-items:flex-start;gap:12px;margin-top:13px;padding:14px 16px;display:flex}.fertility-signal p{color:#67746b;margin:0;font-size:.82rem;line-height:1.55}@media (width<=780px){.ttc-observation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.ttc-observation-grid{grid-template-columns:1fr}}.pregnancy-possibility{border:1px solid #b0809521;border-radius:25px;margin-top:20px;padding:26px}.pregnancy-possibility.unknown{background:linear-gradient(145deg,#fffafd,#f7f2f6)}.pregnancy-possibility.lower{background:linear-gradient(145deg,#faf9ff,#f1eff9)}.pregnancy-possibility.possible{background:linear-gradient(145deg,#f9fff8,#ebf7ed)}.pregnancy-possibility.higher{background:linear-gradient(145deg,#fffdf5,#faf2d9)}.pregnancy-possibility-top{align-items:center;gap:15px;display:flex}.pregnancy-possibility-icon{background:#ffffffd6;border-radius:17px;flex:0 0 52px;place-items:center;width:52px;height:52px;font-size:1.45rem;display:grid}.pregnancy-possibility h3{color:#4c4549;margin:5px 0 0;font-size:1.35rem}.pregnancy-possibility>p{color:#716970;margin:17px 0 0;font-size:.9rem;line-height:1.6}.possibility-factors{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:20px;display:grid}.possibility-factors>div{background:#ffffffc7;border-radius:15px;gap:5px;padding:13px;display:grid}.possibility-factors span{color:#91838b;font-size:.7rem}.possibility-factors strong{color:#5c5057;font-size:.78rem;line-height:1.35}.possibility-caution{border-top:1px solid #8769791c;padding-top:15px;color:#91858c!important;font-size:.78rem!important}@media (width<=780px){.possibility-factors{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.possibility-factors{grid-template-columns:1fr}}.log-date-field{background:#faf3f7;border-radius:16px;margin-top:0;margin-bottom:22px;padding:15px}.calendar-log-button{color:#955f7d;font:inherit;cursor:pointer;background:#fff5fa;border:1px solid #b5749733;border-radius:14px;margin-top:17px;padding:11px 16px;font-size:.84rem;font-weight:750}.calendar-log-button:hover{background:#f9eaf2}.daily-history-card{background:linear-gradient(145deg,#fffdfd,#f8f3f7)}.history-date-copy{flex:1;min-width:0}.history-edit-button{color:#90647c;font:inherit;cursor:pointer;background:#fff;border:1px solid #b080952b;border-radius:12px;margin-left:auto;padding:8px 13px;font-size:.78rem;font-weight:750}.history-edit-button:hover{background:#faf0f5}.history-notes{color:#756972;background:#ffffffb8;border-radius:14px;margin:14px 0 0;padding:13px 15px;font-size:.84rem;line-height:1.55}.month-calendar{background:linear-gradient(145deg,#fffafd,#f8f3f7);border:1px solid #b0809521;border-radius:25px;margin-bottom:22px;padding:24px}.month-calendar-header{text-align:center;grid-template-columns:44px 1fr 44px;align-items:center;gap:14px;margin-bottom:22px;display:grid}.month-calendar-header h3{color:#4e414a;margin:5px 0 0;font-size:1.35rem}.month-nav-button{color:#8e647b;cursor:pointer;background:#fff;border:1px solid #b0809529;border-radius:14px;width:44px;height:44px;font-size:1.65rem}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{margin-bottom:7px}.calendar-weekdays span{text-align:center;color:#99858f;padding:7px 3px;font-size:.72rem;font-weight:750}.calendar-grid{gap:7px}.calendar-day{color:#5d5058;min-height:74px;font:inherit;cursor:pointer;background:#ffffffc7;border:1px solid #b080951a;border-radius:15px;flex-direction:column;justify-content:space-between;align-items:center;padding:9px 6px 7px;display:flex;position:relative}.calendar-day:hover{background:#fff;border-color:#b46f9447}.calendar-day.outside-month{opacity:.32}.calendar-day.today{box-shadow:inset 0 0 0 2px #b86f9673}.calendar-day.period-start{background:#fff2f5}.calendar-day.fertile-day{background:#f4fbf3}.calendar-day.ovulation-day{background:#fff9e8}.calendar-day.period-start.fertile-day,.calendar-day.period-start.ovulation-day{background:linear-gradient(145deg,#fff1f5,#f5faf1)}.calendar-day-number{font-size:.9rem;font-weight:750}.calendar-day-markers{justify-content:center;align-items:center;gap:3px;min-height:8px;display:flex}.day-dot{border-radius:50%;flex:0 0 6px;width:6px;height:6px;display:inline-block}.period-dot{background:#c86d87}.fertile-dot{background:#79a884}.ovulation-dot{background:#d6ac4f}.log-dot{background:#8f78aa}.calendar-legend{flex-wrap:wrap;gap:12px 18px;margin-top:18px;display:flex}.calendar-legend span{color:#7d7078;align-items:center;gap:7px;font-size:.75rem;display:flex}.calendar-guidance{color:#94858e;margin:15px 0 0;font-size:.76rem;line-height:1.55}@media (width<=620px){.month-calendar{padding:16px 10px}.calendar-grid{gap:4px}.calendar-day{border-radius:11px;min-height:58px}.calendar-weekdays span{font-size:.62rem}}
