@font-face{font-family:Varela Round;src:url(/varela-round-latin-ext-400-normal.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0100-0130,U+0134-0151,U+0154-017F,U+018F,U+0192,U+01A0-01A1,U+01AF-01B0,U+01C4-01CC,U+01E6-01E7,U+01EA-01EB,U+01FA-021B,U+022A-022D,U+0230-0233,U+0237,U+0259,U+02BE-02BF,U+02C7-02CC,U+02DD,U+1E08-1E09,U+1E0C-1E0F,U+1E14-1E17,U+1E1C-1E1D,U+1E20-1E21,U+1E24-1E25,U+1E2A-1E2B,U+1E2E-1E2F,U+1E36-1E37,U+1E3A-1E3B,U+1E42-1E49,U+1E4C-1E53,U+1E5A-1E5B,U+1E5E-1E69,U+1E6C-1E6F,U+1E78-1E7B,U+1E80-1E85,U+1E8E-1E8F,U+1E92-1E93,U+1E97,U+1E9E,U+1EF2-1EF9,U+2020,U+20A1,U+20A3-20A4,U+20A6-20A7,U+20A9-20AB,U+20AD,U+20B1-20B2,U+20B5,U+20B9-20BA,U+20BC-20BD,U+2113}@font-face{font-family:Varela Round;src:url(/varela-round-latin-400-normal.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0000,U+000D,U+0020-007E,U+00A0-00FF,U+0102,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+2009,U+200B,U+2013-2014,U+2018-201A,U+201C-201E,U+2022,U+2026,U+2032-2033,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+2215}:root{font-family:Varela Round,ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:weight;color-scheme:light;--bg: #FFF8F3;--surface: #FFFDFB;--text: #2F2526;--muted: #756769;--primary: #A86C7A;--primary-hover: #7C4654;--primary-dark: #7C4654;--secondary: #D9A5A7;--accent: #C8795A;--on-primary: #ffffff;--border: #E5D2D0;--success: #7E9B82;--attention: #D9A441;--danger: #B94B5D;--danger-surface: #FFF0F1;--disabled-bg: #E8DEDA;--disabled-text: #756769;--focus: #7C4654;--nav-bg: rgba(255, 253, 251, .97);--surface-task: #FDF1EA;--surface-task-hover: #FAE6DB;--border-task: #EBD3C4;--surface-task-complete: #F7F3F0;--radius: 18px;--shadow: 0 8px 30px rgba(124, 70, 84, .08);color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-width:0;min-height:100vh;font-size:16px;line-height:1.5;color:var(--text);background:var(--bg)}button,.button,input,textarea,select{font:inherit}button,.button{min-height:44px;border:0;border-radius:12px;background:var(--primary);color:var(--on-primary);padding:.7rem 1rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}button:hover,.button:hover{background:var(--primary-hover)}button:active,.button:active{transform:translateY(1px)}button:disabled,.button[aria-disabled=true]{background:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed}.secondary{background:color-mix(in srgb,var(--secondary) 18%,var(--surface));color:var(--primary-dark);box-shadow:inset 0 0 0 1px var(--secondary)}.secondary:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.secondary:disabled{background:transparent;color:var(--disabled-text);box-shadow:inset 0 0 0 1px var(--disabled-text)}.danger-button{background:var(--danger-surface);color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}.danger-button:hover{background:color-mix(in srgb,var(--danger) 16%,var(--surface));color:var(--danger)}.hero-shot{display:block;width:100%;max-width:340px;height:auto;margin-inline:auto;border-radius:18px;border:1px solid var(--border);box-shadow:var(--shadow);background:var(--surface)}.deletion-flow{margin-top:1.2rem;padding:1rem;border-radius:12px;background:var(--danger-surface);box-shadow:inset 0 0 0 1px var(--danger)}.deletion-flow h3{margin:0 0 .5rem;color:var(--danger)}.deletion-flow>.actions{margin-top:1rem}a{color:var(--primary-dark);font-weight:650}input,textarea,select{display:block;width:100%;margin-top:.4rem;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:.75rem;min-height:46px}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}textarea{resize:vertical}label,legend{font-weight:650}label{display:block;margin:1rem 0}.choice{display:flex;gap:.65rem;align-items:flex-start;font-weight:500}.choice input{width:auto;min-height:auto;margin:.25rem 0}fieldset{border:1px solid var(--border);border-radius:12px;padding:.5rem 1rem;margin:1rem 0;color:var(--text)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.topbar{min-height:64px;background:var(--surface);color:var(--text);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.65rem;padding:.45rem max(1rem,calc((100vw - 1100px)/2));position:sticky;top:0;z-index:5}.brand-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit;border-radius:10px}.brand-logo{width:34px;height:34px;flex:0 0 34px;border-radius:8px}.brandmark.large{display:block;width:72px;height:72px;margin:0 auto 1rem;border-radius:18px}.refresh-control{min-height:38px;padding:.4rem .7rem;background:transparent;color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.refresh-control:hover{background:color-mix(in srgb,var(--primary) 12%,transparent)}.account-menu{margin-left:auto;position:relative}.account-control{border:1px solid var(--border);border-radius:12px;padding:.35rem .65rem;text-decoration:none;display:grid;text-align:right;line-height:1.2;background:var(--bg);color:var(--text);max-width:min(55vw,360px)}.account-name{font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-details{color:var(--muted);font-size:.7rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-control:hover,.account-control:active{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.account-dropdown{position:absolute;right:0;top:calc(100% + .35rem);z-index:20;min-width:190px;display:grid;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.account-dropdown a,.account-dropdown button{justify-content:flex-start;min-height:46px;padding:.7rem .95rem;border-radius:0;background:transparent;color:var(--text);text-align:left;font-weight:500;box-shadow:none}.account-dropdown a+a,.account-dropdown button{border-top:1px solid var(--border)}.account-dropdown a:hover,.account-dropdown button:hover{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.topbar-error{max-width:1100px;margin:.75rem auto 0;padding-inline:1rem}.archive-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1100px;margin:.75rem auto 0;padding:.8rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-task)}.archive-banner .button{flex:0 0 auto}main{max-width:1100px;margin:auto;padding:1.3rem 1rem 7rem}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.page-heading h1,h1{font-size:clamp(1.8rem,5vw,2.5rem);line-height:1.1;margin:.2rem 0;color:var(--primary-dark)}h2,h3{color:var(--primary-dark)}.card{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:1.2rem;margin-bottom:1rem;box-shadow:var(--shadow)}.card h2,.card h3{margin:.25rem 0 .5rem}.card h2{font-size:1.2rem}.card h3{font-size:1.05rem}.eyebrow{text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;color:var(--muted);font-weight:800}.dose{font-size:clamp(2.8rem,12vw,4.8rem);line-height:1;font-weight:750;font-variant-numeric:tabular-nums;margin:1.2rem 0;color:var(--accent)}.dose small{font-size:.4em}.muted{color:var(--muted)}.actions{display:grid;gap:.65rem;margin-top:1.2rem}.actions-inline{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.65rem}.tomorrow{padding-top:1rem;border-top:1px solid var(--border)}.status{font-weight:750;text-transform:capitalize}.status-taken{color:#55735b}.status-skipped,.status-cancelled{color:var(--muted)}.status-pending{color:var(--attention)}.grid{display:grid;gap:0}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--nav-bg);color:var(--text);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(5,1fr);z-index:8;padding-bottom:env(safe-area-inset-bottom)}.app-update-prompt{position:fixed;left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));bottom:calc(5.25rem + env(safe-area-inset-bottom));z-index:70;max-width:34rem;margin:0 auto;padding:.75rem 1rem;border:1px solid var(--border);border-radius:.8rem;background:var(--surface);box-shadow:0 .4rem 1.5rem #2f252633;display:flex;align-items:center;justify-content:space-between;gap:1rem}.bottom-nav a{min-height:58px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--muted);font-size:.72rem;padding:.25rem}.bottom-nav a:hover{color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,transparent)}.bottom-nav a.active{color:var(--primary);box-shadow:inset 0 3px 0 var(--primary)}.bottom-nav a:active{background:color-mix(in srgb,var(--primary) 16%,transparent)}.preview{padding:0;list-style:none}.preview li{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--border)}.preview strong{font-variant-numeric:tabular-nums;white-space:nowrap}.error{color:var(--danger);display:block;font-weight:600;font-size:.875rem;min-height:1em}.field-error{color:var(--danger);display:block;font-weight:650;font-size:.875rem;margin-top:.35rem}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth{max-width:460px;width:100%;padding:2rem}.auth form>button{width:100%;margin-top:1rem}.turnstile-wrap{width:100%;min-height:65px;margin-top:1rem;overflow:hidden}.turnstile-wrap>div{width:100%}.otp-input{text-align:center;font-size:1.65rem;font-weight:650;letter-spacing:.45em;font-variant-numeric:tabular-nums;padding-left:calc(.75rem + .45em)}.auth-actions{display:grid;gap:.6rem;margin-top:1rem}.text-button{background:transparent;color:var(--primary)}.text-button:hover{background:color-mix(in srgb,var(--primary) 10%,transparent)}.auth-status{min-height:1.5em;margin-bottom:0;color:var(--muted)}.narrow{max-width:650px!important;padding-top:3rem!important}.menu{display:grid;gap:.6rem}.menu a{background:var(--surface);color:var(--primary-dark);border:1px solid var(--border);border-radius:14px;padding:1rem;text-decoration:none;display:flex;align-items:center;justify-content:space-between}.menu-label{display:flex;align-items:center;gap:.8rem}.menu-icon{width:1.5rem;height:1.5rem;fill:none;stroke:var(--primary);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.empty{text-align:center;padding:3rem 1rem}.install{display:block}@media(display-mode:standalone){.install{display:none}}@media(max-width:520px){.app-title{font-size:.82rem}.refresh-control{font-size:.76rem;padding-inline:.55rem}.account-control{max-width:43vw}.account-details{font-size:.64rem}}@media(min-width:760px){main{padding-top:2rem}.grid{grid-template-columns:1fr 1fr;gap:1rem}.grid .card{margin:0}.task-card{background:var(--surface-task);border-color:var(--border-task)}.task-card:before{content:"Task";display:block;margin-bottom:.35rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.task-card:hover:not([aria-disabled=true]){background:var(--surface-task-hover)}.task-card:focus-within{outline:3px solid var(--focus);outline-offset:3px}.task-card[aria-selected=true]{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.task-card.is-complete{background:var(--surface-task-complete);border-color:var(--border)}.task-card.is-complete:before{content:"Task · completed"}.task-card.is-complete h3{text-decoration:line-through}.task-card[aria-busy=true]{opacity:.75}.actions{display:flex}.bottom-nav{left:50%;transform:translate(-50%);max-width:760px;border:1px solid var(--border);border-bottom:0;border-radius:18px 18px 0 0}.bottom-nav a{font-size:.85rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.datetime-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(7rem,.65fr);gap:.5rem}@media(max-width:420px){.datetime-fields{grid-template-columns:1fr}}.follicle-entry{border-top:4px solid var(--accent)}.chart-scroll{overflow-x:auto}.follicle-chart{display:block;max-width:none;height:auto}.follicle-chart line{stroke:var(--border);stroke-width:1}.follicle-chart .gridline{stroke-dasharray:4 5}.follicle-chart polyline{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.follicle-chart circle{fill:currentColor;stroke:var(--surface);stroke-width:2}.follicle-chart text{fill:var(--muted);font-size:12px}.chart-legend{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.75rem}.chart-legend span{color:var(--muted);font-size:.85rem}.chart-legend i{display:inline-block;width:.75rem;height:.75rem;border-radius:50%}.public-shell{min-height:100vh;display:flex;flex-direction:column;overflow-x:clip;background:radial-gradient(circle at 85% 5%,color-mix(in srgb,var(--secondary) 28%,transparent),transparent 32rem),var(--bg)}.public-nav,.public-footer{width:100%;max-width:1180px;margin:auto;padding:1rem clamp(1rem,4vw,2rem);display:flex;align-items:center;justify-content:space-between;gap:1rem}.public-nav{margin-top:0}.public-nav nav,.public-footer nav{display:flex;align-items:center;gap:clamp(.7rem,2vw,1.4rem)}.public-nav nav a:not(.button),.public-footer a{text-decoration:none}.public-brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--primary-dark);font-size:1.25rem;font-weight:800}.public-brand img{width:42px;height:42px;border-radius:11px}.public-main{width:100%;max-width:1180px;padding:clamp(2rem,6vw,5rem) clamp(1rem,4vw,2rem);margin:auto}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.7fr);align-items:center;gap:clamp(2rem,5vw,4rem);min-height:auto}.hero h1{font-size:clamp(2.1rem,4.6vw,3.6rem);max-width:16ch;line-height:1.12}.about-page h1{font-size:clamp(2.5rem,6vw,5rem);max-width:13ch}.hero-copy{font-size:clamp(1.1rem,2vw,1.35rem);max-width:58ch;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}.microcopy{font-size:.86rem;color:var(--muted)}.check-list{list-style:none;padding:0}.check-list li{padding:.8rem 0 .8rem 1.8rem;border-bottom:1px solid var(--border);position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:900}.public-section{padding:clamp(2rem,5vw,4.5rem) 0}.public-section>h2{font-size:clamp(1.8rem,4vw,3rem);max-width:18ch}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.limits{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}.pricing-card{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(1.5rem,4vw,3rem)}.pricing-card>div{max-width:700px}.public-footer{border-top:1px solid var(--border);color:var(--muted);margin-top:auto}.about-page{max-width:720px;margin-inline:auto}.about-page>section{margin-bottom:2.5rem}.about-page h1{font-size:clamp(2rem,4.5vw,3rem);max-width:18ch;margin-bottom:1.2rem}.about-page h2{font-size:clamp(1.35rem,3vw,1.9rem);margin-top:0}.about-page p{font-size:1.05rem;line-height:1.7;max-width:64ch;margin:0 0 1rem}.about-signoff{margin-top:1.8rem;font-weight:700}.pass-gate{text-align:left}.pass-gate>.brandmark{margin-left:0}@media(max-width:720px){.public-nav nav a:not(.button):not(.nav-signin){display:none}.hero,.limits{grid-template-columns:1fr}.hero{min-height:auto}.feature-grid{grid-template-columns:1fr}.pricing-card,.public-footer{align-items:flex-start;flex-direction:column}.public-main{padding-top:2rem}}.consent-layer{position:fixed;inset:0;z-index:100;display:grid;place-items:end center;padding:1rem;background:#2f25266b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.consent-card{width:min(720px,100%);margin:0;padding:clamp(1.2rem,4vw,2rem);box-shadow:0 20px 70px #2f252640}.consent-card h2{font-size:clamp(1.4rem,4vw,2rem)}.consent-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.consent-actions button{flex:1 1 auto}.linklike{background:none;border:0;padding:0;min-height:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}.stepper{display:flex;align-items:stretch;gap:.5rem}.stepper input{flex:1 1 auto}.stepper-button{flex:0 0 auto;min-width:52px;font-size:1.15rem}.status-check{display:grid;gap:.5rem;margin-top:1.2rem}.status-check button{justify-self:start}.follicle-bars{display:block;max-width:none;height:auto}.follicle-bars .gridline{stroke:var(--border);stroke-width:1;stroke-dasharray:4 5}.follicle-bars text{fill:var(--muted);font-size:12px}.follicle-bars .bar-label{font-size:10px}.follicle-bars .group-label{font-size:12px;fill:var(--text)}.follicle-bar{rx:3}.follicle-bar.ovary-left{fill:var(--primary)}.follicle-bar.ovary-right{fill:var(--accent)}.chart-legend .swatch{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;border-radius:4px;color:var(--on-primary);font-size:.68rem;font-weight:700}.chart-legend .swatch-left{background:var(--primary)}.chart-legend .swatch-right{background:var(--accent)}.chart-table{margin-top:1rem}.chart-table summary{cursor:pointer;color:var(--primary-dark);min-height:44px;display:flex;align-items:center}.chart-table table{width:100%;border-collapse:collapse;margin-top:.5rem}.chart-table th,.chart-table td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border);font-size:.9rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.lab-row{border:1px solid var(--border);border-radius:12px;padding:.75rem 1rem;margin-bottom:.75rem;background:var(--bg)}.timeline-day{font-size:.95rem;color:var(--muted);margin:1.2rem 0 .5rem}.event-row{display:flex;gap:.8rem;align-items:flex-start}.event-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:50%;background:var(--surface-task);color:var(--primary-dark)}.event-body{flex:1 1 auto}.event-body h4{margin:.1rem 0 .3rem}details.card>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700}.manage-cycle{border-top:3px solid var(--attention)}.coming-up{margin-top:1.5rem}.coming-up h2{color:var(--muted);font-size:1.05rem}.upcoming-list{list-style:none;margin:.5rem 0 1rem;padding:0;display:grid;gap:.55rem}.upcoming-row{display:flex;flex-wrap:wrap;gap:.25rem .75rem;align-items:baseline;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.upcoming-row:last-child{border-bottom:0;padding-bottom:0}.upcoming-name{font-weight:700}.upcoming-detail{color:var(--text)}.bottom-nav{display:flex;align-items:flex-end;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom)}.nav-item,.nav-explore{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-width:44px;min-height:44px;padding:.4rem .6rem;font-size:.78rem}.nav-item{color:var(--muted);text-decoration:none;background:none}.nav-item[aria-current=page]{color:var(--primary-dark);font-weight:700}.nav-explore{position:relative;top:-14px;min-width:76px;min-height:62px;border-radius:20px;background:var(--primary);color:var(--on-primary);box-shadow:0 6px 18px #7c465447}.nav-explore:hover{background:var(--primary-hover)}.nav-explore-current{font-size:.62rem;font-weight:400;opacity:.92;max-width:9ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-backdrop{position:fixed;inset:0;z-index:60;background:#2f25266b;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:640px;background:var(--surface);border-radius:20px 20px 0 0;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));box-shadow:0 -12px 40px #2f252633}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.sheet-head h2{margin:0;font-size:1.15rem}.sheet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}.sheet-item{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-height:76px;padding:.8rem;border-radius:14px;background:var(--bg);color:var(--text);text-align:left;text-decoration:none;font-weight:500}.sheet-item:hover{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.sheet-item[aria-current=page]{box-shadow:inset 0 0 0 2px var(--primary)}.sheet-current{font-size:.68rem;color:var(--primary-dark);font-weight:700}.page-grid{margin-top:1rem}@media(min-width:600px){.sheet-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:860px){.sheet-backdrop{align-items:center}.sheet{border-radius:20px}.sheet-grid{grid-template-columns:repeat(4,1fr)}}@media(prefers-reduced-motion:no-preference){.sheet{animation:sheet-in .18s ease-out}@keyframes sheet-in{0%{transform:translateY(12px);opacity:.85}to{transform:none;opacity:1}}}.coming-up-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.coming-up-head .secondary{min-height:36px;padding:.3rem .7rem;font-size:.8rem}.hero-support{font-size:.95rem;color:var(--text);margin:.9rem 0 .2rem}.price-line{font-size:1.15rem;margin-bottom:.4rem}.public-nav nav a.nav-signin{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;border:1px solid currentColor;border-radius:12px;background:transparent;color:var(--primary-dark);font-weight:700;line-height:1.2}.public-nav nav a.nav-signin:hover{background:color-mix(in srgb,var(--primary-dark) 10%,transparent);color:var(--primary-dark)}.public-nav nav a.nav-signin:active{background:color-mix(in srgb,var(--primary-dark) 16%,transparent);transform:translateY(1px)}.public-nav nav a.nav-signin:focus-visible{outline:3px solid var(--focus);outline-offset:3px}@media(max-width:390px){.public-nav{padding-inline:.75rem;gap:.5rem}.public-nav nav{gap:.4rem}.public-brand{gap:.4rem;font-size:1.05rem}.public-brand img{width:36px;height:36px}.public-nav nav a.nav-signin,.public-nav nav a.button{padding:.65rem .55rem;font-size:.9rem;white-space:nowrap}}.scroll-reveal-sections{display:contents}.scroll-reveal{min-width:0}@media(max-width:720px)and (prefers-reduced-motion:no-preference){.scroll-reveal--ready{opacity:0;transition:opacity .56s cubic-bezier(.22,1,.36,1),transform .56s cubic-bezier(.22,1,.36,1);will-change:transform,opacity}.scroll-reveal--ready.scroll-reveal--left{transform:translate3d(-36px,0,0)}.scroll-reveal--ready.scroll-reveal--right{transform:translate3d(36px,0,0)}.scroll-reveal--ready.scroll-reveal--visible{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1!important;transform:none!important;transition:none!important;will-change:auto!important}}.check-list li{display:flex;align-items:flex-start;gap:.6rem;padding:.7rem 0}.check-list li:before{content:none}.check-list svg{flex:0 0 auto;color:var(--success);margin-top:.15rem}.benefit svg{color:var(--primary);margin-bottom:.4rem}.benefit h3{margin:.2rem 0 .35rem}.organised{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,4rem);align-items:center}.organised-sub{color:var(--muted);font-size:1.1rem;margin-top:-.4rem}.reassurance,.final-cta{max-width:60ch;margin-inline:auto}.final-cta .hero-actions{margin-top:1.2rem}.phone-preview{display:flex;justify-content:center}.phone-frame{width:min(300px,100%);border:1px solid var(--border);border-radius:26px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.phone-top{display:flex;align-items:center;gap:.45rem;padding:.7rem .9rem;border-bottom:1px solid var(--border);font-weight:700;font-size:.9rem}.phone-top img{width:20px;height:20px}.phone-body{padding:.85rem .9rem 1rem;background:var(--bg)}.phone-eyebrow{font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:0}.phone-title{margin:.1rem 0 .7rem;font-size:1.25rem}.phone-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.6rem .75rem;margin-bottom:.55rem}.phone-dose{border-left:3px solid var(--primary)}.phone-task{background:var(--surface-task);border-color:var(--border-task)}.phone-quiet{opacity:.85}.phone-label{margin:0;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.phone-strong{margin:.1rem 0;font-weight:700;font-size:.92rem}.phone-meta{margin:0;font-size:.78rem;color:var(--muted)}.phone-chip{display:inline-block;margin-top:.45rem;padding:.28rem .6rem;border-radius:999px;background:var(--primary);color:var(--on-primary);font-size:.72rem;font-weight:700}.phone-section{margin:.9rem 0 .4rem;font-size:.75rem;font-weight:700;color:var(--muted)}.phone-nav{display:flex;align-items:center;justify-content:space-around;padding:.5rem .6rem .7rem;border-top:1px solid var(--border);background:var(--surface);font-size:.7rem;color:var(--muted)}.phone-nav-centre{padding:.35rem .8rem;border-radius:12px;background:var(--primary);color:var(--on-primary);font-weight:700}.dash-preview{width:100%}.dash-frame{display:grid;grid-template-columns:minmax(110px,.34fr) minmax(0,1fr);border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.dash-side{display:flex;flex-direction:column;gap:.35rem;padding:.9rem .8rem;background:var(--bg);border-right:1px solid var(--border);font-size:.78rem;color:var(--muted)}.dash-brand{display:flex;align-items:center;gap:.4rem;font-weight:700;color:var(--text);margin-bottom:.5rem}.dash-brand img{width:18px;height:18px}.dash-link{padding:.3rem .45rem;border-radius:8px}.dash-current{background:var(--surface);color:var(--primary-dark);font-weight:700}.dash-main{padding:1rem}.dash-stats{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem;margin:.6rem 0 .9rem;font-size:.82rem;color:var(--muted)}.dash-stats strong{color:var(--text);font-size:1.05rem}.dash-row{display:flex;align-items:center;gap:.55rem;padding:.5rem 0;border-top:1px solid var(--border);font-size:.84rem}.dash-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--primary);flex:0 0 auto}.dash-dot-alt{background:var(--accent)}@media(max-width:720px){.organised{grid-template-columns:1fr}.organised-copy{display:contents}.organised-copy h2{order:1}.organised-sub{order:2}.dash-preview{order:3;margin:1rem 0}.check-list{order:4}.hero-actions .button{flex:1 1 100%;justify-content:center}.phone-frame{width:min(280px,100%)}.dash-frame{grid-template-columns:1fr}.dash-side{flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid var(--border)}.dash-brand{width:100%;margin-bottom:0}}.autocomplete{position:relative;display:block}.autocomplete-list{position:absolute;left:0;right:0;top:calc(100% + .3rem);z-index:20;margin:0;padding:.3rem;list-style:none;max-height:260px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.autocomplete-list li{padding:.6rem .7rem;border-radius:8px;cursor:pointer;font-weight:500}.autocomplete-list li.active,.autocomplete-list li:hover{background:var(--surface-task)}.access-comparison{padding:clamp(3rem,7vw,6rem) 0}.access-comparison>h2{font-size:clamp(1.8rem,4vw,3rem);max-width:22ch}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.comparison-card{height:100%}.comparison-card h3{margin-top:.25rem}.comparison-card li{margin:.55rem 0}.comparison-paid{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:0 10px 30px color-mix(in srgb,var(--primary) 12%,transparent)}.pricing-actions{display:flex;flex-direction:column;align-items:stretch;gap:.7rem;min-width:min(100%,240px)}.pricing-actions .button{justify-content:center}.follicle-public-page{padding-top:clamp(1rem,3vw,2rem)}.tracker-hero{min-height:560px}.tracker-preview{align-self:center;padding:1.2rem;min-width:0}.tracker-preview-head{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem}.tracker-preview .follicle-bars{margin-top:.6rem}.tracker-preview-note{margin:.6rem 0 0;color:var(--muted);font-size:.75rem}.tracker-steps .step-number{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--primary);color:var(--on-primary);font-weight:700}.tracker-price{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;padding:clamp(1.5rem,4vw,3rem);margin-bottom:clamp(3rem,7vw,6rem)}.tracker-price>div:first-child{max-width:720px}.sheet-item-locked{border-style:dashed}.sheet-lock{display:inline-flex;margin-top:.2rem;padding:.12rem .42rem;border-radius:999px;background:color-mix(in srgb,var(--attention) 18%,var(--surface));color:var(--text);font-size:.65rem;font-weight:700}.upgrade-prompt{max-width:760px;margin:1rem auto 2rem;border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}.upgrade-prompt h1,.upgrade-prompt h2{margin-top:.2rem}.upgrade-prompt-compact{margin:1.5rem 0 2rem;max-width:none}@media(max-width:720px){.comparison-grid{grid-template-columns:1fr}.tracker-hero{min-height:auto}.tracker-price{flex-direction:column}.pricing-actions{width:100%}}.public-footer nav{flex-wrap:wrap;column-gap:1rem;row-gap:0}.public-footer-identity{display:grid;gap:.35rem;max-width:48rem}.public-data-attribution{line-height:1.45}.public-footer nav a,.public-footer nav .linklike,.public-brand{min-height:44px;display:inline-flex;align-items:center}.public-nav nav a:not(.button){min-height:44px;display:inline-flex;align-items:center}.skeleton-line{height:1rem;width:70%;border-radius:999px;background:var(--border);margin-bottom:1rem}.notice{background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--text);border:1px solid var(--border);border-radius:12px;padding:1rem}.form-grid{display:grid;gap:0}.custom-row{display:grid;gap:.5rem;margin:1rem 0;padding:1rem;border:1px solid var(--border);border-radius:12px}.details{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1rem}.details dt,.entry-notes dt{font-weight:700}.details dd{margin:0}.entry-notes dd{margin:0 0 .75rem;white-space:pre-wrap}.invite-code{display:flex;align-items:center;gap:1rem;justify-content:space-between;padding:1rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:12px}.invite-code code{font-size:1.2rem;letter-spacing:.08em;overflow-wrap:anywhere}.cards-list{display:grid;gap:1rem}.quantity{font-size:1.7rem;font-weight:750;margin:.5rem 0}.low-stock{border-left:4px solid var(--attention);padding-left:.75rem}.preserve-lines{white-space:pre-wrap}@media(min-width:700px){.form-grid{grid-template-columns:1fr 1fr;gap:0 1rem}.custom-row{grid-template-columns:1.2fr 1fr 1fr .7fr auto;align-items:end}.custom-row input{margin:0}.cards-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
