/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.contents{display:contents}.table{display:table}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}.auth-form .code-sent{color:#ffffffb8;font-size:8px}.auth-form .otp-input{letter-spacing:.16em;text-align:center;font-size:16px}.auth-form .change-email{color:#ffffffc7;background:0 0;border:1px solid #fff3;padding:9px}.home-active .phone-frame{background:#f7f0e9}.home-active .topbar{background:#faf6f0b8;border-bottom:1px solid #ffffff80;box-shadow:0 10px 30px #49343d0a}.home-active .content{background-image:linear-gradient(#f8f4ef29,#f8f4ef6b),url(/bloom-luxury-bg.webp);background-position:top;background-size:cover;position:relative}.home-active .today-screen{min-height:100%;padding-top:24px;position:relative}.home-brand-intro{text-shadow:0 2px 18px #fffffff2;padding:2px 3px 7px}.home-brand-intro>p{color:var(--rose);letter-spacing:.28em;margin:0 0 6px;font-size:9px;font-weight:800}.home-brand-intro h1{max-width:330px;color:var(--plum);letter-spacing:-.025em;margin:0;font:400 31px/1.08 Georgia,serif}.home-brand-intro>span{color:#74656a;max-width:290px;margin-top:8px;font-size:10px;line-height:1.55;display:block}.home-active .cycle-hero{-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);background:#fffdf994;border:1px solid #ffffffc7;border-radius:28px;padding:17px 16px;box-shadow:0 18px 45px #573f4417,inset 0 1px #ffffffbd}.home-active .cycle-orbit{background:conic-gradient(#c98d92 0 82%,#ffffff94 82%);box-shadow:0 10px 28px #a369742e}.home-active .cycle-orbit:after{background:#fffaf6e6}.home-active .next-line{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#fffdf975;border:1px solid #ffffffa8;border-radius:14px;margin:15px 0}.home-active .ritual-card{background:linear-gradient(145deg,#49343dfa,#684b57f2);border:1px solid #d9bd8f38;box-shadow:0 18px 42px #49343d38}.ritual-teaser{text-align:left;cursor:pointer;width:100%;font-family:inherit}.ritual-teaser em{color:var(--champagne);letter-spacing:.04em;justify-content:space-between;align-items:center;margin-top:10px;font-size:8px;font-style:normal;font-weight:750;display:flex}.home-active .primary{background:linear-gradient(135deg,#c98d92,#b97782);border:1px solid #ffffff4d;box-shadow:0 12px 28px #ae69763d}.home-active .privacy-note{color:#6d5e62;text-shadow:0 1px 10px #ffffffe6}.home-active .start-prompt{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf6a3;border-color:#c98d9247;box-shadow:0 10px 28px #5b444914}:root{--ivory:#f8f4ef;--paper:#fffdf9;--ink:#30292b;--muted:#807376;--rose:#c98d92;--rose-soft:#ead7d5;--sage:#9baa91;--plum:#49343d;--champagne:#d9bd8f;--line:#49343d1f}*{box-sizing:border-box}body{color:var(--ink);background:#e9e1da;margin:0;font-family:Inter,Avenir,Segoe UI,sans-serif}.app-shell{place-items:center;min-height:100vh;padding:28px;display:grid;position:relative;overflow:hidden}.ambient{filter:blur(2px);opacity:.55;border-radius:999px;position:fixed}.ambient-one{background:#d8b9b2;width:480px;height:480px;top:-220px;right:-130px}.ambient-two{background:#c8d0bb;width:420px;height:420px;bottom:-230px;left:-140px}.phone-frame{background:var(--ivory);border:1px solid #ffffffbf;border-radius:38px;flex-direction:column;width:min(430px,100%);height:min(870px,100vh - 40px);display:flex;position:relative;overflow:hidden;box-shadow:0 30px 90px #3e2c3038}.topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:5;background:#f8f4efeb;justify-content:space-between;align-items:center;height:84px;padding:17px 22px 10px;display:flex}.brand{color:var(--plum);letter-spacing:.18em;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;font:700 13px/1.1 Georgia,serif;display:flex}.brand small{letter-spacing:.18em;color:var(--muted);margin-top:2px;font:500 7px/1.5 Inter,sans-serif;display:block}.brand-mark{background:var(--plum);color:#fff;letter-spacing:0;border-radius:50% 50% 45% 55%;place-items:center;width:34px;height:34px;font:italic 19px Georgia,serif;display:grid}.lang{border:1px solid var(--line);color:var(--plum);letter-spacing:.12em;cursor:pointer;background:#fff6;border-radius:999px;padding:9px 11px;font-size:11px;font-weight:700}.content{scrollbar-width:none;flex:1;padding-bottom:18px;overflow:auto}.content::-webkit-scrollbar{display:none}.screen{padding:20px 22px 24px;animation:.3s fade}.eyebrow{color:var(--rose);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:750}.today-screen>.eyebrow{color:var(--muted);text-transform:none;letter-spacing:.03em;font-weight:550}.cycle-hero{grid-template-columns:108px 1fr;align-items:center;gap:18px;margin-top:16px;display:grid}.cycle-orbit{text-align:center;background:conic-gradient(var(--rose) 0 82%,var(--rose-soft) 82%);border-radius:50%;place-content:center;width:108px;height:108px;display:grid;position:relative}.cycle-orbit:after{content:"";background:var(--ivory);border-radius:50%;position:absolute;inset:8px}.cycle-orbit span,.cycle-orbit small{z-index:1}.cycle-orbit span{color:var(--plum);font:italic 36px/1 Georgia,serif}.cycle-orbit small{color:var(--muted);margin-top:2px;font-size:9px}.phase-pill{background:var(--rose-soft);color:#81575e;letter-spacing:.1em;text-transform:uppercase;border-radius:99px;margin:0 0 7px;padding:6px 9px;font-size:9px;font-weight:800;display:inline-flex}.cycle-hero h1,.section-head h1,.loona-hero h1{color:var(--plum);letter-spacing:-.02em;margin:0;font:400 29px/1.12 Georgia,serif}.cycle-hero>div>p:last-child,.section-head>p:last-child,.loona-hero p{color:var(--muted);margin:9px 0 0;font-size:12px;line-height:1.65}.next-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:8px;margin:20px 0;padding:12px 14px;font-size:11px;display:flex}.mini-dot{background:var(--rose);border-radius:50%;width:7px;height:7px}.ritual-card{background:var(--plum);color:#fff;border-radius:24px;grid-template-columns:52px 1fr;gap:14px;padding:19px;display:grid;box-shadow:0 12px 30px #49343d2e}.ritual-symbol{width:46px;height:46px;color:var(--champagne);border:1px solid #ffffff38;border-radius:50%;place-items:center;font-size:19px;display:grid}.card-label{text-transform:uppercase;letter-spacing:.13em;color:var(--champagne);margin:0 0 5px;font-size:9px;font-weight:750}.ritual-card h2,.day-insight h2,.phase-card h2,.recommendation h2,.report-card h2,.premium-card h2{margin:0;font:400 20px/1.15 Georgia,serif}.ritual-card p:last-child{color:#ffffffb8;margin:7px 0 0;font-size:11px;line-height:1.6}.primary{background:var(--rose);color:#fff;cursor:pointer;border:0;border-radius:18px;justify-content:space-between;align-items:center;width:100%;margin-top:18px;padding:15px 18px;font-weight:700;display:flex;box-shadow:0 8px 20px #c98d9238}.privacy-note{color:var(--muted);justify-content:center;align-items:center;gap:7px;margin:16px 0 0;font-size:9px;display:flex}.bottom-nav{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:5;background:#fffdf9e6;grid-template-columns:repeat(5,1fr);height:74px;padding:7px 7px 10px;display:grid}.bottom-nav button{color:#9a8e90;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:8px;display:flex}.bottom-nav button span{color:#9c8c8e;height:19px;font-size:16px}.bottom-nav button.active{color:var(--plum);font-weight:750}.section-head{padding:3px 2px 14px}.calendar-card{background:var(--paper);border-radius:25px;padding:18px 14px;box-shadow:0 10px 34px #4735390f}.weekdays,.calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.weekdays{color:#a79a9c;margin-bottom:11px;font-size:9px;font-weight:800}.calendar-grid button{aspect-ratio:1;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;font-size:11px;position:relative}.calendar-grid button:after{content:"";opacity:.65;background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;bottom:2px;left:calc(50% - 2px)}.calendar-grid button.follicular{color:#829275}.calendar-grid button.ovulation{color:#a37a3d;background:#f5ead6}.calendar-grid button.luteal{color:#75545e}.calendar-grid button.selected{background:var(--plum);color:#fff;transform:scale(1.08);box-shadow:0 5px 13px #49343d33}.legend{grid-template-columns:1fr 1fr;gap:8px 12px;padding:15px 4px;display:grid}.legend span{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.legend i{background:var(--rose);border-radius:50%;width:7px;height:7px}.legend i.follicular{background:var(--sage)}.legend i.ovulation{background:var(--champagne)}.legend i.luteal{background:var(--plum)}.day-insight{background:#eee4dc;border-radius:20px;grid-template-columns:1fr auto;align-items:center;padding:16px;display:grid}.day-insight p{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;grid-column:1;margin:0 0 4px;font-size:9px}.day-insight h2{grid-column:1}.day-insight button{color:var(--plum);cursor:pointer;background:0 0;border:0;grid-area:1/2/3;align-items:center;gap:8px;font-size:9px;font-weight:750;display:flex}.phase-list{gap:11px;display:grid}.phase-card{background:var(--paper);color:inherit;border:1px solid #0000;border-radius:21px;grid-template-columns:36px 1fr auto;align-items:center;gap:11px;padding:16px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:grid}.phase-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px #47353912}.phase-card.menstrual{border-color:#e8c9ca}.phase-card.follicular{border-color:#cbd5c5}.phase-card.ovulation{border-color:#ead8b9}.phase-card.luteal{border-color:#d5c7cb}.phase-no{color:var(--rose);font:italic 17px Georgia,serif}.phase-card p{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 4px;font-size:8px}.phase-card small{color:var(--muted);font-size:10px}.phase-card em{color:var(--rose);letter-spacing:.04em;margin-top:7px;font-size:8px;font-style:normal;font-weight:750;display:block}.phase-card b{color:var(--rose);font-weight:400}.epo-link{border:1px solid var(--line);color:var(--muted);background:#ffffff73;border-radius:17px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:15px;padding:13px 14px;text-decoration:none;display:grid}.epo-link span{color:var(--plum);font:italic 15px Georgia,serif}.epo-link p{margin:0;font-size:8px;line-height:1.4}.epo-link b{color:var(--rose);font-weight:400}.safety{background:#eee7de;border-radius:16px;align-items:flex-start;gap:11px;margin-top:12px;padding:14px;display:flex}.safety span{border:1px solid var(--muted);border-radius:50%;flex:0 0 20px;place-items:center;height:20px;font:italic 12px Georgia,serif;display:grid}.safety p{color:var(--muted);margin:2px 0;font-size:9px;line-height:1.5}.loona-hero{background:var(--plum);color:#fff;border-radius:28px;margin:-3px 0 18px;padding:21px 19px;position:relative;overflow:hidden}.loona-hero:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:130px;height:130px;position:absolute;top:-43px;right:-37px}.loona-hero span{letter-spacing:.15em;color:var(--champagne);font-size:9px}.loona-hero h1{color:#fff;margin-top:18px}.quiz{gap:19px;display:grid}.choice h3{color:var(--plum);margin:0 0 10px;font:500 12px/1.4 Georgia,serif}.choice>div,.field>div{flex-wrap:wrap;gap:7px;display:flex}.choice button,.field button{border:1px solid var(--line);background:var(--paper);color:var(--muted);cursor:pointer;border-radius:999px;padding:10px 12px;font-size:10px}.choice button.chosen,.field button.selected-option{background:var(--rose-soft);border-color:var(--rose);color:var(--plum);font-weight:700}.partner-note{text-align:center;letter-spacing:.08em;color:var(--muted);margin-top:22px;font-size:8px}.recommendation{text-align:center;background:var(--paper);border-radius:25px;padding:18px;box-shadow:0 12px 36px #47353914}.recommendation .card-label{color:var(--rose)}.product-shape{background:linear-gradient(150deg,#3d3034,#766269);border-radius:48px 48px 20px 20px;justify-content:center;align-items:flex-end;width:100px;height:125px;margin:12px auto;padding-bottom:16px;display:flex;box-shadow:inset 0 0 0 7px #ffffff12,0 12px 24px #47353924}.product-shape span{letter-spacing:.15em;color:#fff;font-size:7px}.recommendation p{color:var(--muted);font-size:11px;line-height:1.5}.recommendation a{background:var(--rose);color:#fff;border-radius:14px;justify-content:space-between;margin-top:13px;padding:13px 15px;font-size:11px;font-weight:700;text-decoration:none;display:flex}.recommendation>button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-top:12px;font-size:9px}.stat-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.stat-grid article{background:var(--paper);text-align:center;border-radius:19px;padding:16px 8px}.stat-grid b{color:var(--plum);font:italic 25px Georgia,serif;display:block}.stat-grid span{color:var(--muted);font-size:8px}.report-card{background:#e7ded3;border-radius:23px;grid-template-columns:30px 1fr;gap:8px;margin-top:14px;padding:17px;display:grid}.report-card>span{color:var(--rose)}.report-card p,.premium-card p{color:var(--muted);font-size:9px;line-height:1.5}.fake-chart{align-items:flex-end;gap:6px;height:46px;margin-top:10px;display:flex}.fake-chart i{background:var(--rose);opacity:.6;border-radius:5px 5px 2px 2px;width:10px}.fake-chart i:first-child{height:30%}.fake-chart i:nth-child(2){height:55%}.fake-chart i:nth-child(3){height:40%}.fake-chart i:nth-child(4){height:85%}.fake-chart i:nth-child(5){height:64%}.fake-chart i:nth-child(6){height:45%}.fake-chart i:nth-child(7){height:72%}.premium-card{background:var(--plum);color:#fff;border-radius:22px;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:16px;display:grid}.premium-mark{width:40px;height:40px;color:var(--champagne);border:1px solid #fff3;border-radius:50%;place-items:center;font:italic 20px Georgia,serif;display:grid}.premium-card p{color:#fff9;margin:5px 0 0}.premium-card b{color:var(--champagne);font-size:21px}.account-card{background:var(--plum);color:#fff;border-radius:24px;grid-template-columns:40px 1fr;align-items:start;gap:12px;margin-bottom:14px;padding:18px;display:grid}.account-icon{width:38px;height:38px;color:var(--champagne);border:1px solid #ffffff2e;border-radius:50%;place-items:center;font:italic 16px Georgia,serif;display:grid}.account-copy p{letter-spacing:.14em;color:var(--champagne);margin:2px 0 5px;font-size:7px}.account-copy h2{word-break:break-word;margin:0;font:400 19px Georgia,serif}.account-copy small{color:#ffffff9e;margin-top:6px;font-size:8px;line-height:1.5;display:block}.auth-form{grid-column:1/3;gap:8px;margin-top:4px;display:grid}.auth-form input{color:#fff;background:#ffffff14;border:1px solid #ffffff29;border-radius:12px;outline:none;width:100%;padding:12px 13px;font-size:10px}.auth-form input::placeholder{color:#ffffff6b}.auth-form button{background:var(--rose);color:#fff;cursor:pointer;border:0;border-radius:12px;padding:12px;font-size:9px;font-weight:750}.auth-form em{color:var(--champagne);font-size:8px;font-style:normal;line-height:1.45}.signout{color:#ffffff9e;text-align:left;cursor:pointer;background:0 0;border:0;grid-column:2;padding:2px 0;font-size:8px}.data-trust{background:var(--paper);border:1px solid var(--line);border-radius:18px;grid-template-columns:28px 1fr;gap:9px;margin-top:12px;padding:15px;display:grid}.data-trust>b{color:var(--rose)}.data-trust h3{color:var(--plum);margin:0 0 5px;font:500 13px Georgia,serif}.data-trust p{color:var(--muted);margin:0;font-size:8px;line-height:1.55}.cycle-settings{background:#eee4dc;border-radius:19px;gap:10px;margin-bottom:12px;padding:14px;display:grid}.cycle-settings>div{justify-content:space-between;align-items:center;display:flex}.cycle-settings label{color:var(--plum);font-size:9px;font-weight:700}.cycle-settings span{align-items:center;gap:8px;display:flex}.cycle-settings span button{border:1px solid var(--line);background:var(--paper);width:27px;height:27px;color:var(--plum);cursor:pointer;border-radius:50%}.cycle-settings span b{text-align:center;min-width:20px;color:var(--plum);font:italic 18px Georgia,serif}.save-settings{background:var(--rose);color:#fff;cursor:pointer;border:0;border-radius:11px;padding:10px;font-size:8px;font-weight:750}.save-settings:disabled{cursor:not-allowed;background:#b9aaa8}.data-trust button{color:#a45f69;cursor:pointer;background:0 0;border:0;padding:9px 0 0;font-size:8px;text-decoration:underline}.privacy-tool{border:1px solid var(--line);background:#fff9;border-radius:23px;grid-template-columns:38px 1fr;gap:11px;margin:12px 0;padding:16px;display:grid;box-shadow:0 10px 30px #49343d0d}.tool-icon{width:36px;height:36px;color:var(--plum);background:#ead8d5;border-radius:50%;place-items:center;font:italic 18px Georgia,serif;display:grid}.tool-icon svg{width:19px}.tool-heading p{letter-spacing:.14em;color:var(--rose);margin:1px 0 5px;font-size:7px;font-weight:800}.tool-heading h2{color:var(--plum);margin:0;font:500 17px/1.2 Georgia,serif}.tool-heading small{color:var(--muted);margin-top:6px;font-size:9px;line-height:1.55;display:block}.tool-controls{grid-column:1/3;grid-template-columns:1fr 1fr;gap:9px;margin-top:3px;display:grid}.tool-controls>label{color:var(--plum);gap:5px;font-size:8px;font-weight:700;display:grid}.tool-controls select,.tool-controls input{border:1px solid var(--line);background:var(--paper);width:100%;height:44px;color:var(--plum);border-radius:12px;outline:none;padding:0 11px;font-size:10px}.tool-controls input:focus,.tool-controls select:focus{border-color:var(--rose);box-shadow:0 0 0 3px #b06f7721}.tool-primary,.tool-secondary{cursor:pointer;border:0;border-radius:12px;min-height:44px;padding:10px;font-size:9px;font-weight:750}.tool-primary{background:var(--plum);color:#fff}.tool-primary:disabled{color:#f3eeee;cursor:not-allowed;background:#b8abad}.tool-secondary{color:var(--plum);border:1px solid var(--line);background:#eee4dc}.tool-note{color:var(--muted);grid-column:1/3;margin:0;font-size:8px;line-height:1.5}.pin-setup input{text-align:center;letter-spacing:.2em;font-size:18px}.biometric-choice{align-items:center;gap:8px;grid-column:1/3!important;display:flex!important}.biometric-choice input{width:20px;height:20px;accent-color:var(--plum)}.biometric-choice span{font-size:9px;line-height:1.35}.pin-setup em{color:#a24756;grid-column:1/3;font-size:8px;font-style:normal}.lock-enabled{grid-template-columns:1fr}.lock-enabled>b{color:var(--plum);font:500 13px Georgia,serif}.lock-enabled>small{color:var(--muted);font-size:9px}.lock-screen{z-index:100;text-align:center;color:var(--plum);background:radial-gradient(circle at 20% 15%,#debeb9a6,#0000 34%),radial-gradient(circle at 86% 78%,#bec7b07a,#0000 36%),#f7f0e8;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.lock-screen:before{content:"";pointer-events:none;border:1px solid #49343d1a;border-radius:38px;position:absolute;inset:24px}.lock-bloom{background:var(--plum);width:68px;height:68px;color:var(--champagne);border-radius:50%;place-items:center;font:italic 32px Georgia,serif;display:grid;box-shadow:0 18px 45px #49343d33}.lock-screen>p{letter-spacing:.28em;margin:17px 0 8px;font-size:8px;font-weight:800}.lock-screen h1{margin:0;font:400 31px/1.1 Georgia,serif}.lock-screen>small{color:var(--muted);margin:9px 0 22px;font-size:10px}.lock-screen form{gap:9px;width:min(280px,100%);display:grid}.lock-screen input{border:1px solid var(--line);text-align:center;letter-spacing:.35em;height:51px;color:var(--plum);background:#ffffffb8;border-radius:15px;outline:none;font-size:24px}.lock-screen form button,.biometric-unlock{background:var(--plum);color:#fff;cursor:pointer;border:0;border-radius:14px;min-height:46px;padding:12px 17px;font-size:10px;font-weight:750}.lock-screen form button:disabled{opacity:.45}.biometric-unlock{background:var(--rose);width:min(280px,100%);margin-bottom:9px}.lock-screen>em{color:#a24756;margin-top:10px;font-size:9px;font-style:normal}.lock-screen>span{color:var(--muted);margin-top:17px;font-size:8px}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:20;background:#30292b6e;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.checkin{background:var(--ivory);border-radius:32px 32px 0 0;width:min(430px,100%);max-height:88vh;padding:12px 22px 28px;animation:.3s slide;overflow:auto;box-shadow:0 -20px 70px #30292b33}.modal-handle{background:#d5cac4;border-radius:8px;width:38px;height:4px;margin:0 auto 18px}.modal-title{justify-content:space-between;align-items:start;display:flex}.modal-title h2{margin:0;font:400 27px Georgia,serif}.modal-title button{width:31px;height:31px;color:var(--plum);cursor:pointer;background:#eae1dc;border:0;border-radius:50%;font-size:19px}.field>label,.energy-label{color:var(--plum);margin-bottom:9px;font-size:10px;font-weight:750;display:block}.energy-label{justify-content:space-between;margin-top:20px;display:flex}.range{width:100%;accent-color:var(--rose)}.toast{background:var(--plum);color:#fff;z-index:50;border-radius:999px;padding:11px 18px;font-size:11px;animation:.25s fade;position:fixed;top:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 25px #30292b33}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slide{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (width<=520px){.app-shell{padding:0}.phone-frame{border:0;border-radius:0;width:100%;height:100dvh}.topbar{padding-top:max(16px,env(safe-area-inset-top))}.bottom-nav{padding-bottom:max(9px,env(safe-area-inset-bottom));height:calc(66px + env(safe-area-inset-bottom))}.cycle-hero{grid-template-columns:96px 1fr}.cycle-orbit{width:96px;height:96px}.cycle-hero h1{font-size:26px}.modal-backdrop{align-items:flex-end}}@media (width>=900px){.phone-frame:after{content:"Interactive BLOOM mobile preview";color:#49343d6b;writing-mode:vertical-rl;letter-spacing:.06em;font:italic 18px Georgia,serif;position:fixed;top:50%;left:calc(50% + 245px)}}.calendar-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.month-nav{gap:6px;padding-top:18px;display:flex}.month-nav button{border:1px solid var(--line);background:var(--paper);width:31px;height:31px;color:var(--plum);cursor:pointer;border-radius:50%;font-size:20px;line-height:1}.embed-mode{background:0 0;min-height:100%;padding:0}.embed-mode .ambient{display:none}.embed-mode .phone-frame{width:100%;max-width:520px;height:min(820px,100dvh);box-shadow:none;border:0;border-radius:0}.embed-mode .phone-frame:after{display:none}@media (width>=521px){.embed-mode{padding:12px}.embed-mode .phone-frame{border:1px solid #49343d1a;border-radius:28px;box-shadow:0 18px 50px #49343d1a}}.guide-sources{text-align:center!important;color:var(--muted)!important;margin:11px 0 0!important;font-size:7px!important}.guide-sources a{color:var(--rose);text-decoration:none}.start-prompt,.mark-start,.modal-period-start{border:1px solid var(--line);background:var(--paper);text-align:left;width:100%;color:var(--plum);cursor:pointer;border-radius:17px;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:12px 13px;display:grid}.start-prompt{background:#eee2db;border-color:#e3cbc8;margin:4px 0 17px}.start-prompt>span,.mark-start>span,.modal-period-start>span{background:var(--rose);color:#fff;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.start-prompt div,.mark-start div,.modal-period-start div{flex-direction:column;gap:4px;display:flex}.start-prompt b,.mark-start b,.modal-period-start b{font:500 11px Georgia,serif}.start-prompt small,.mark-start small,.modal-period-start small{color:var(--muted);font-size:8px}.start-prompt i{color:var(--rose);font-size:18px;font-style:normal}.mark-start{margin:2px 0 11px}.mark-start.is-start{border-color:var(--rose);background:#ead7d5}.modal-period-start{background:#eee4dc;margin-top:16px}.calendar-grid button.untracked{color:#8e8385;background:0 0}.calendar-grid button.untracked:after{display:none}.calendar-grid button.period-start:before{content:"1";background:var(--rose);color:#fff;border:2px solid var(--paper);border-radius:50%;place-items:center;width:12px;height:12px;font-size:6px;display:grid;position:absolute;top:-3px;right:-2px}.cycle-day-card{background:var(--plum);color:#fff;border-radius:23px;grid-template-columns:1fr auto;gap:6px 10px;padding:17px;display:grid}.cycle-day-card>div p{letter-spacing:.12em;color:var(--champagne);margin:0 0 5px;font-size:8px}.cycle-day-card h2{margin:0;font:400 20px Georgia,serif}.cycle-day-card>div small{color:#ffffffa6;font-size:9px}.cycle-day-card>span{color:var(--champagne);background:#ffffff17;border-radius:999px;align-self:start;padding:7px 9px;font-size:8px}.cycle-day-card>p{color:#ffffffbf;grid-column:1/3;margin:7px 0 0;font-size:10px;line-height:1.55}.cycle-day-card>em{color:#ffffffb8;background:#ffffff12;border-radius:11px;grid-column:1/3;padding:9px 10px;font-size:8px;font-style:normal;line-height:1.45}.cycle-day-card>button{background:var(--rose);color:#fff;cursor:pointer;border:0;border-radius:12px;grid-column:1/3;justify-content:space-between;padding:11px 12px;font-size:9px;font-weight:750;display:flex}.cycle-day-card>button b{font-size:12px}.phase-card{text-align:left;width:100%;font:inherit;cursor:pointer}.epo-link{border:1px solid var(--line);width:100%;font:inherit;text-align:left;cursor:pointer}.learn-banner{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--plum);text-align:left;cursor:pointer;border-radius:17px;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;margin:-6px 0 18px;padding:13px 14px;display:grid}.learn-banner>span{color:var(--rose);font:italic 15px Georgia,serif}.learn-banner div{flex-direction:column;gap:4px;display:flex}.learn-banner b{font:500 12px Georgia,serif}.learn-banner small{color:var(--muted);font-size:8px}.learn-banner i{color:var(--rose);font-style:normal}.guide-screen{padding-top:7px}.guide-head{grid-template-columns:40px 1fr;align-items:start;gap:10px;margin-bottom:18px;display:grid}.guide-head>button{border:1px solid var(--line);background:var(--paper);width:34px;height:34px;color:var(--plum);cursor:pointer;border-radius:50%;font-size:25px;line-height:1}.guide-head p{letter-spacing:.14em;color:var(--rose);margin:1px 0 5px;font-size:8px;font-weight:800}.guide-head h1{color:var(--plum);margin:0;font:400 27px/1.1 Georgia,serif}.guide-intro{border-radius:27px;margin-bottom:17px;padding:22px;position:relative;overflow:hidden}.guide-intro>span{opacity:.75;border:1px solid;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:25px;display:grid}.guide-intro h2{max-width:290px;margin:0 0 9px;font:400 23px/1.15 Georgia,serif}.guide-intro p{opacity:.72;margin:0;font-size:10px;line-height:1.65}.oils-intro{background:var(--plum);color:#fff}.oils-intro:after,.loona-intro:after{content:"";opacity:.1;border:1px solid;border-radius:50%;width:150px;height:150px;position:absolute;top:-55px;right:-65px}.loona-intro{color:var(--plum);background:#e5d8cd}.guide-section{border-bottom:1px solid var(--line);grid-template-columns:31px 1fr;gap:10px;padding:17px 2px;display:grid}.guide-section>span{color:var(--rose);font:italic 15px Georgia,serif}.guide-section h3{color:var(--plum);margin:0 0 9px;font:500 17px/1.2 Georgia,serif}.guide-section p,.guide-section li{color:var(--muted);font-size:10px;line-height:1.65}.guide-section p{margin:0}.guide-section ul{margin:0;padding-left:16px}.guide-section li+li{margin-top:4px}.mini-flow{align-items:center;gap:5px;margin-top:13px;display:flex}.mini-flow span{border:1px solid var(--line);color:var(--plum);background:var(--paper);border-radius:999px;padding:6px 8px;font-size:8px}.mini-flow i{color:var(--rose);font-size:9px;font-style:normal}.evidence-note{background:#eee7de;border-radius:11px;padding:10px;margin-top:10px!important}.quality-grid{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px;display:grid}.quality-grid span{background:var(--paper);border:1px solid var(--line);color:var(--plum);border-radius:11px;padding:9px;font-size:8px}.safety-list li::marker{color:var(--rose)}.guide-cta{background:var(--plum);color:#fff;border-radius:24px;margin-top:18px;padding:20px}.guide-cta>p{letter-spacing:.1em;text-transform:uppercase;color:var(--champagne);margin:0 0 5px;font-size:8px}.guide-cta h2{margin:0 0 14px;font:400 21px Georgia,serif}.guide-cta a{background:var(--rose);color:#fff;border-radius:13px;justify-content:space-between;align-items:center;margin-top:7px;padding:12px 14px;font-size:10px;font-weight:750;text-decoration:none;display:flex}.guide-cta a.secondary-link{background:#ffffff14;border:1px solid #ffffff26}.loona-cta{color:var(--plum);background:#ddcdc0}.loona-cta>p{color:#845b62}.loona-cta button{width:100%;color:var(--plum);cursor:pointer;background:0 0;border:0;padding:12px 0 0;font-size:9px}.layer-stack{gap:5px;margin-bottom:11px;display:grid}.layer-stack span{color:var(--plum);border-left:3px solid var(--rose);background:#f2e7df;border-radius:8px;padding:8px 10px;font-size:8px}.layer-stack span:nth-child(2){background:#ead7d5}.layer-stack span:nth-child(3){border-left-color:var(--plum);background:#ddd2c7}.layer-stack span:nth-child(4){border-left-color:var(--sage);background:#c8d0bb}.absorbency{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px;display:grid}.absorbency div{background:var(--paper);border:1px solid var(--line);text-align:center;border-radius:12px;padding:9px 5px}.absorbency b{color:var(--rose);height:13px;font-size:9px;display:block}.absorbency span{color:var(--muted);font-size:8px}.care-row{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:11px;display:grid}.care-row>span{background:var(--paper);min-height:67px;color:var(--plum);text-align:center;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font:italic 15px Georgia,serif;display:flex}.care-row small{color:var(--muted);max-width:70px;font:500 7px/1.3 Inter,sans-serif}.ritual-start{margin-top:0}.synced-ritual{background:var(--plum);color:#fff;border-radius:25px;margin-bottom:18px;padding:18px;position:relative;overflow:hidden;box-shadow:0 12px 32px #49343d29}.synced-ritual:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:130px;height:130px;position:absolute;top:-60px;right:-62px}.sync-top{justify-content:space-between;align-items:center;display:flex}.sync-top span{letter-spacing:.14em;color:var(--champagne);font-size:8px;font-weight:800}.sync-top b{color:#ffffff80;font:italic 14px Georgia,serif}.synced-ritual>p{color:#ffffff8f;margin:17px 0 4px;font-size:9px}.synced-ritual>h2{margin:0;font:400 28px Georgia,serif}.ritual-instruction{background:#ffffff12;border-radius:14px;grid-template-columns:28px 1fr;align-items:center;gap:9px;margin:13px 0 8px;padding:11px;display:grid}.ritual-instruction>span{width:27px;height:27px;color:var(--champagne);border:1px solid #ffffff26;border-radius:50%;place-items:center;display:grid}.ritual-instruction p{color:#ffffffbf;margin:0;font-size:9px;line-height:1.5}.synced-ritual>small{color:#ffffff7a;font-size:8px}.synced-ritual>button{background:var(--rose);color:#fff;cursor:pointer;border:0;border-radius:12px;justify-content:space-between;width:100%;margin-top:13px;padding:11px 12px;font-size:9px;font-weight:750;display:flex}.ritual-library-title{justify-content:space-between;align-items:flex-end;margin:4px 2px 10px;display:flex}.ritual-library-title p{color:var(--plum);margin:0;font:500 14px Georgia,serif}.ritual-library-title span{color:var(--muted);font-size:7px}.phase-card.current-phase{border:1.5px solid var(--rose);background:#f3e7e2;box-shadow:0 8px 24px #c98d9221}.phase-card.current-phase .phase-no{font-size:12px}.phase-card.current-phase em{color:var(--plum)}:root{--rose-strong:#b56f7a;--glass:#fffdf9b8;--shadow-soft:0 14px 38px #49343d17}button,input,textarea,summary{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--plum);outline-offset:3px}button:disabled{opacity:.62!important;color:#ffffffd1!important}.content{padding-bottom:22px;overflow-x:hidden}.inner-screen{background-color:#0000;background-image:linear-gradient(#f8f4efd1,#f7f0e9f5),url(/bloom-luxury-bg.webp);background-position:top;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:100%}.inner-screen .section-head>p:last-child,.inner-screen .loona-hero p{color:#6f6266;font-size:12px}.bottom-nav{height:76px;min-height:76px;padding:7px 8px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px);background:#fffaf4db;border-top:1px solid #49343d1a;box-shadow:0 -10px 30px #49343d14}.bottom-nav button{color:#685b60;border-radius:17px;gap:3px;min-width:48px;min-height:48px;margin:auto 1px;padding:5px 2px;font-size:11px;font-weight:650;transition:background .2s,color .2s,transform .2s}.bottom-nav button span{color:#685b60;place-items:center;width:24px;height:24px;display:grid}.bottom-nav svg{width:23px;height:23px}.bottom-nav button.active{color:var(--plum);background:#ead7d5;font-weight:800;box-shadow:inset 0 0 0 1px #b56f7a1f}.bottom-nav button.active span{color:var(--plum)}.bottom-nav button:active{transform:scale(.96)}.calendar-heading{padding-bottom:17px}.calendar-heading h1{text-transform:capitalize}.period-estimate{font-weight:650;color:#765b63!important;margin-top:7px!important;font-size:11px!important}.month-nav button{background:#fffdf9c7;width:42px;height:42px;box-shadow:0 6px 18px #49343d0f}.calendar-card{background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-soft);border:1px solid #ffffffd6;padding:19px 14px}.weekdays{color:#75686c;font-size:11px}.calendar-grid{gap:6px}.calendar-grid button{color:#44393d;min-width:38px;min-height:38px;font-size:12px;font-weight:700;transition:transform .18s,box-shadow .18s}.calendar-grid button:after{display:none}.calendar-grid button.ovulation{color:#6f5533;box-shadow:inset 0 0 0 2px var(--champagne);background:0 0}.calendar-grid button.luteal{color:#59434b;background:#49343d17}.calendar-grid button.today{box-shadow:inset 0 0 0 1.5px var(--plum)}.calendar-grid button.ovulation.today{box-shadow:inset 0 0 0 2px var(--champagne),0 0 0 1.5px var(--plum)}.calendar-grid button.selected,.calendar-grid button.selected.today{background:var(--plum);color:#fff;transform:scale(1.08);box-shadow:0 7px 16px #49343d3d}.calendar-grid button.period-start:before{width:14px;height:14px;font-size:7px;top:-2px;right:-1px}.legend{padding:16px 5px}.legend span{color:#5f5357;font-size:11px;font-weight:650}.legend i{width:10px;height:10px}.legend i.ovulation{border:2px solid var(--champagne);background:0 0}.mark-start{background:#fffdf9b3;min-height:58px;box-shadow:0 8px 24px #49343d0f}.mark-start b,.mark-start small{font-size:11px}.mark-start small{line-height:1.4}.cycle-day-card{background:linear-gradient(145deg,#49343d,#684b57);border-radius:26px;padding:20px;box-shadow:0 18px 42px #49343d33}.cycle-day-card>div p,.cycle-day-card>div small,.cycle-day-card>span,.cycle-day-card>em,.cycle-day-card>button{font-size:11px}.cycle-day-card>p{font-size:12px}.cycle-day-card>button{min-height:48px}.synced-ritual{background:linear-gradient(145deg,#49343d,#684b57);border-radius:27px;padding:21px}.sync-top span,.synced-ritual>p,.synced-ritual>small,.synced-ritual>button,.ritual-instruction p{font-size:11px}.synced-ritual>h2 small,.phase-card h2 small{opacity:.7;margin-left:4px;font:500 11px Inter,sans-serif}.ritual-instruction>span{width:32px;height:32px}.ritual-instruction svg{width:18px;height:18px}.synced-ritual>button{align-items:center;min-height:48px}.ritual-library-title{align-items:start}.ritual-library-title p{font-size:17px}.ritual-library-title span{text-align:right;max-width:145px;font-size:10px;line-height:1.35}.phase-list{gap:12px}.phase-card{-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);background:#fffdf9b8;border-color:#49343d1a;min-height:112px;padding:18px;box-shadow:0 10px 28px #49343d0f}.phase-card p,.phase-card small,.phase-card em{font-size:11px;line-height:1.45}.phase-card.current-phase{background:linear-gradient(145deg,#f4e6e2,#efe0dc);border-color:#c98d92;box-shadow:0 13px 30px #b56f7a26}.epo-link{background:#fffdf9b8;min-height:68px;box-shadow:0 8px 24px #49343d0d}.epo-link p{font-size:10px}.safety{background:#eee7dedb;border:1px solid #49343d14}.safety span{border:0;width:25px;height:25px}.safety svg{width:23px;height:23px}.safety p{font-size:11px}.loona-hero{background:linear-gradient(145deg,#49343d,#6d5260);padding:23px 21px;box-shadow:0 18px 44px #49343d33}.loona-hero p{color:#ffffffc7!important}.loona-moon{width:44px;height:44px;color:var(--champagne);background:#ffffff14;border-radius:50%;place-items:center;display:grid;position:absolute;top:20px;right:20px}.loona-moon svg{width:26px;height:26px}.chat-card{background:var(--glass);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #ffffffd1;border-radius:24px;margin-bottom:16px;padding:16px}.chat-message{align-items:flex-start;gap:9px;display:flex}.chat-message>span{background:var(--plum);width:29px;height:29px;color:var(--champagne);border-radius:50%;place-items:center;font:italic 14px Georgia,serif;display:grid}.chat-message p{color:#594c51;background:#eee3dc;border-radius:4px 15px 15px;flex:1;margin:0;padding:10px 12px;font-size:11px;line-height:1.5}.user-message{justify-content:flex-end;margin-top:8px}.user-message p{color:var(--plum);background:#ead7d5;border-radius:15px 4px 15px 15px;flex:0 84%}.chat-suggestions{scrollbar-width:none;gap:7px;margin:14px -2px 11px;padding:2px;display:flex;overflow:auto}.chat-suggestions button{color:#604b52;background:#fffdf9e6;border:1px solid #d9c6c6;border-radius:999px;flex:none;min-height:42px;padding:9px 12px;font-size:10px}.chat-input{grid-template-columns:1fr 44px;gap:8px;display:grid}.chat-input input{min-width:0;height:46px;color:var(--plum);background:#fffdf9;border:1px solid #49343d26;border-radius:15px;padding:0 13px;font-size:12px}.chat-input button{background:var(--rose);color:#fff;border:0;border-radius:14px;width:44px;height:44px;font-size:18px}.medical-note{color:#695c61;margin:9px 2px 0;font-size:10px;line-height:1.45}.learn-banner{background:#fffdf9b3;min-height:64px;margin:0 0 14px;box-shadow:0 8px 24px #49343d0d}.learn-banner small{font-size:10px}.model-finder{background:#fffdf9ad;border:1px solid #49343d1a;border-radius:20px;padding:15px}.model-finder summary{min-height:30px;color:var(--plum);cursor:pointer;font:500 16px Georgia,serif}.model-finder .quiz{padding-top:15px}.choice h3{font-size:14px}.choice button{min-height:44px;font-size:11px}.recommendation{margin-top:14px}.loona-privacy{color:#4f5e49;background:#e6ebdf;border-radius:16px;grid-template-columns:25px 1fr;gap:9px;margin-top:13px;padding:13px;display:grid}.loona-privacy svg{width:23px;height:23px}.loona-privacy p{margin:0;font-size:10px;line-height:1.5}.account-card{background:linear-gradient(145deg,#49343d,#684b57);border-radius:27px;padding:20px;box-shadow:0 18px 42px #49343d33}.account-card.signed-in{background:linear-gradient(145deg,#52604d,#6e7b67)}.account-copy p,.account-copy small,.auth-form .code-sent,.auth-form em,.signout{font-size:10px}.auth-form input,.auth-form button{min-height:46px;font-size:12px}.auth-form button:disabled{background:#9e7c83;opacity:.72!important}.signout{min-height:40px}.storage-explainer{box-shadow:var(--shadow-soft);background:#fffdf9b8;border:1px solid #ffffffd1;border-radius:22px;margin-bottom:13px;padding:17px}.storage-explainer h2{color:var(--plum);margin:0 0 12px;font:500 18px Georgia,serif}.storage-explainer>div{gap:9px;display:grid}.storage-explainer article{border-left:3px solid var(--rose);padding-left:12px}.storage-explainer b{color:var(--plum);font-size:11px}.storage-explainer p{color:#685b60;margin:3px 0 0;font-size:10px;line-height:1.5}.cycle-settings{background:#eee4dcdb;border:1px solid #ffffffb3;padding:17px}.cycle-settings label{font-size:11px}.cycle-settings span button{width:44px;height:44px;font-size:20px;box-shadow:0 4px 12px #49343d0f}.save-settings{min-height:46px;font-size:11px}.save-settings:disabled{background:#8f7e80;color:#fff!important;opacity:.72!important}.stat-grid span,.report-card p,.data-trust p,.data-trust button{font-size:10px}.report-card{box-shadow:var(--shadow-soft);background:linear-gradient(145deg,#eadfd3,#e2d3c7);border:1px solid #ffffffa6}.data-trust{background:#f1f3ec;border-color:#ccd6c4;border-radius:21px;padding:17px}.data-trust>b{color:#5e7057;width:25px;height:25px}.data-trust svg{width:24px;height:24px}.data-trust h3{font-size:15px}.checkin{padding-bottom:calc(28px + env(safe-area-inset-bottom));background:linear-gradient(#fbf7f2,#f7efe8)}.modal-title small{color:#76696d;margin-top:5px;font-size:11px;display:block}.modal-title button{width:44px;height:44px}.modal-period-start{min-height:58px}.modal-period-start>span{width:31px;height:31px}.modal-period-start svg{width:18px;height:18px}.modal-period-start b,.modal-period-start small{font-size:11px}.field{margin-top:16px}.field>label,.range-field label,.note-field>span{color:var(--plum);align-items:center;gap:7px;margin-bottom:9px;font-size:12px;font-weight:750;display:flex}.field>label svg,.range-field label svg,.note-field svg{width:18px;height:18px;color:var(--rose-strong)}.field button{min-height:44px;padding:10px 14px;font-size:11px}.range-field{margin-top:17px}.range-field label{justify-content:space-between}.range-field label span{align-items:center;gap:7px;display:flex}.range{height:30px}.note-field{margin-top:17px;display:block}.note-field textarea{resize:vertical;border:1px solid var(--line);background:var(--paper);width:100%;min-height:76px;color:var(--plum);border-radius:15px;padding:12px;font-size:12px;line-height:1.45}.checkin>.primary{min-height:50px}.guide-intro p,.guide-section p,.guide-section li{font-size:11px}.guide-cta a{min-height:46px;font-size:11px}.guide-sources{font-size:9px!important}.quality-grid span,.layer-stack span,.absorbency span,.care-row small{font-size:10px}.insight-chart{align-items:flex-end;gap:7px;height:48px;margin-top:12px;display:flex}.insight-chart i{background:linear-gradient(180deg,var(--rose),#b8757d);opacity:.78;border-radius:6px 6px 2px 2px;width:11px;min-height:8px}.insight-chart:empty:after{content:"";background:var(--line);width:100%;height:1px;display:block}.age-consent{color:#ffffffc7;align-items:flex-start;gap:8px;font-size:10px;line-height:1.45;display:flex}.age-consent input{accent-color:var(--rose);flex:none;width:18px!important;height:18px!important;margin:0!important}.privacy-intro{color:#fff;background:#52604d}.privacy-intro svg{width:22px;height:22px}.data-trust button+button{display:block}.cycle-hero h2{color:var(--plum);letter-spacing:-.02em;margin:0;font:400 29px/1.12 Georgia,serif}.brand{min-height:44px}.lang{min-width:44px;min-height:44px}.guide-head>button{width:44px;height:44px}.cycle-disclaimer{color:#685b60;align-items:flex-start;gap:8px;margin:12px 2px 0;font-size:10px;line-height:1.5;display:flex}.cycle-disclaimer svg{color:#7a8a70;flex:none;width:20px;height:20px}button,a,input,textarea,summary{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #9b6470}.bottom-nav button{font-size:11px}.bottom-nav button span{height:24px}.bottom-nav button span svg{width:23px;height:23px}.privacy-note,.ritual-teaser em,.guide-sources{font-size:10px!important}.home-brand-intro>span{font-size:12px}.brand small{font-size:9px}.calendar-grid button{min-width:40px;min-height:40px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=520px){.bottom-nav{height:calc(76px + env(safe-area-inset-bottom));min-height:calc(76px + env(safe-area-inset-bottom))}.screen{padding-left:18px;padding-right:18px}.calendar-grid button{min-width:36px;min-height:36px}.checkin{max-height:92dvh}.phone-frame{overflow-x:hidden}}@media (width<=360px){.screen{padding-left:14px;padding-right:14px}.bottom-nav{padding-left:3px;padding-right:3px}.bottom-nav button{font-size:10px}.calendar-card{padding-left:9px;padding-right:9px}.calendar-grid{gap:4px}.calendar-grid button{min-width:34px;min-height:34px}.cycle-day-card{padding:16px}.ritual-library-title{display:block}.ritual-library-title span{text-align:left;margin-top:4px;display:block}}:root{--ivory:#fbf6ef;--paper:#fffdf9;--ink:#382b31;--muted:#76676d;--rose:#c77f83;--rose-strong:#ad626f;--rose-soft:#f0d5d3;--sage:#a7b09a;--plum:#4a2138;--champagne:#d1ad69;--line:#4a213821;--font-display:"Bodoni 72","Bodoni Moda",Didot,"Didot LT STD","Cormorant Garamond",Georgia,serif;--font-body:Avenir,"Avenir Next",Montserrat,Inter,"Segoe UI",sans-serif}body{color:var(--ink);font-family:var(--font-body);background:#e9ddd4}h1,h2,h3,.phase-no,.premium-mark,.account-icon,.tool-icon{font-family:var(--font-display)}.phone-frame{background:var(--ivory);border-color:#ffffffd1;box-shadow:0 34px 100px #4a213833}.ambient-one{background:#e7c7c2}.ambient-two{background:#cdd3c2}.topbar{background:#fbf6efe0;border-bottom:1px solid #d1ad6933;height:88px}.brand{color:var(--plum);flex-direction:column;align-items:flex-start;gap:1px;padding:0;display:flex}.brand>small{color:#9d6e73;font:700 7px/1.2 var(--font-body);letter-spacing:.18em;text-transform:uppercase;margin:0 0 0 2px}.bloom-wordmark{color:var(--plum);font:400 24px/.82 var(--font-display);letter-spacing:-.045em;white-space:nowrap;align-items:center;gap:.025em;display:inline-flex}.bloom-wordmark .bloom-mark{width:.92em;height:.92em;color:var(--plum);margin:0 -.045em;overflow:visible}.bloom-wordmark .bloom-flower{color:var(--rose)}.hero-wordmark{filter:drop-shadow(0 4px 14px #4a213814);margin:0 0 9px;font-size:43px}.lock-screen>.bloom-wordmark{margin:18px 0 4px;font-size:31px}.lock-bloom{background:#fffaf4;border:1px solid #d1ad696b;box-shadow:0 18px 45px #4a213824}.lock-bloom .bloom-mark{width:58px;height:58px;color:var(--plum)}.lock-bloom .bloom-flower{color:var(--rose)}.home-brand-intro>p{color:#a5656e;font:750 8px/1.2 var(--font-body);letter-spacing:.24em;margin:0 0 7px}.home-brand-intro h1,.cycle-hero h1,.cycle-hero h2,.section-head h1,.loona-hero h1,.ritual-card h2,.day-insight h2,.phase-card h2,.recommendation h2,.report-card h2,.premium-card h2,.guide-head h1,.guide-intro h2,.guide-section h3,.tool-heading h2,.storage-explainer h2,.modal-title h2{font-family:var(--font-display)}.home-brand-intro h1{letter-spacing:-.03em;font-size:34px;line-height:1.02}.home-brand-intro>span{color:#6f6066;max-width:315px}.home-active .content,.inner-screen{background-image:linear-gradient(#fffbf638,#fbf6ef9e),url(/bloom-luxury-bg.webp)}.home-active .cycle-hero,.calendar-card,.phase-card,.chat-card,.storage-explainer,.privacy-tool{background:#fffcf7ba;border-color:#ffffffdb;box-shadow:0 15px 38px #4a213813}.home-active .ritual-card,.cycle-day-card,.synced-ritual,.loona-hero,.account-card,.premium-card{background:linear-gradient(145deg,#4a2138,#6b3d55)}.home-active .primary,.cycle-day-card>button,.synced-ritual>button,.recommendation a,.guide-cta a,.auth-form button{background:linear-gradient(135deg,#ce8589,#b76876)}.phase-pill,.bottom-nav button.active,.choice button.chosen,.field button.selected-option{color:#633747;background:#f0d5d3}.calendar-grid button.period{color:#5b3240;background:#e9bec0}.calendar-grid button.follicular{color:#4c5b47;background:#a7b09a47}.calendar-grid button.ovulation{box-shadow:inset 0 0 0 2px var(--champagne);color:#76572c}.bottom-nav{background:#fffaf4e6;border-top-color:#4a213817}.bottom-nav button.active{box-shadow:inset 0 0 0 1px #ad626f21,0 5px 14px #4a21380d}.lang{color:var(--plum);background:#fffdf9a8;border-color:#d1ad696b}@media (width<=520px){.topbar{padding-left:19px;padding-right:17px}.hero-wordmark{font-size:40px}.home-brand-intro h1{font-size:32px}}@media (width<=360px){.bloom-wordmark{font-size:22px}.brand>small{font-size:6px}.hero-wordmark{font-size:36px}.home-brand-intro h1{font-size:29px}}.bloom-wordmark{letter-spacing:normal;width:134px;height:auto;line-height:1}.bloom-wordmark>img{object-fit:contain;width:100%;height:auto;display:block}.hero-wordmark{width:220px;max-width:80%;margin-bottom:14px}.lock-screen>.bloom-wordmark{width:180px}.bloom-mark{object-fit:contain;border-radius:16px}.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.bottom-nav button{min-height:48px;font-size:12px}.support-screen{font-size:16px;line-height:1.55}.support-screen h1{font-size:32px}.support-screen h2{color:var(--plum);margin:0 0 12px;font-size:25px;line-height:1.2}.support-screen h3{font:700 15px/1.4 var(--font-body);margin:14px 0 5px}.support-screen p{margin:10px 0 16px}.support-screen a{color:#71344f;text-underline-offset:3px}.support-options{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.support-options button{color:#4a2138;font:600 14px/1.3 var(--font-body);cursor:pointer;background:#fffaf5;border:1px solid #bba5ac;border-radius:18px;flex:90px;min-height:48px;padding:12px 8px}.support-options button[aria-pressed=true]{color:#fff;background:#4a2138;border-color:#4a2138}.stage-note{color:#66565e;font-size:14px}.support-focus{background:#fffaf5;border:1px solid #e5d6d4;border-radius:24px;margin:20px 0;padding:22px}.support-safety{background:#f9ebe7;border:1px solid #b28b94;border-radius:16px;margin:20px 0;padding:16px}.support-screen summary{cursor:pointer;align-content:center;min-height:44px;font-weight:650;list-style-position:inside}.oil-library{margin-top:28px}.oil-basics{border-left:3px solid #a76376;padding-left:14px;font-size:14px}.oil-detail{background:#fffcf8;border:1px solid #dfd0d4;border-radius:20px;margin:12px 0;padding:16px 18px}.oil-detail summary{justify-content:space-between;align-items:center;gap:12px;display:flex}.oil-detail summary strong{font-size:18px}.oil-detail summary small{color:#79606d;font-size:13px;font-weight:400;display:block}.oil-detail .oil-warning{background:#f5e9e6;border-radius:12px;padding:12px;font-size:14px}.oil-detail a{padding:10px 0;font-size:14px;font-weight:650;display:inline-block}.support-screen>.screen{background:0 0;padding:0}.support-screen .epo-link{font-size:16px}.support-screen button:focus-visible,.support-screen summary:focus-visible,.support-screen a:focus-visible{outline-offset:4px;outline:3px solid #834964}@media (width<=360px){.hero-wordmark{width:190px}.support-screen{padding:18px 16px}.support-options button{font-size:13px}}.loona-hero h2{font:400 29px/1.12 var(--font-display);color:inherit;margin:12px 0}.auth-form>label:not(.age-consent){color:inherit;text-align:left;font-size:14px}.auth-form .auth-help{color:inherit;font-size:14px;line-height:1.5}.auth-status{color:#fff;background:#ffffff15;border-radius:12px;flex-basis:100%;padding:12px;font-size:14px;line-height:1.5}.auth-form button:disabled{opacity:.65;cursor:default}
