@font-face{font-family:Outfit;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/outfit-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/outfit-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--color-base, #2a0f1c);color:var(--color-text, #fff3f7);font-family:var(--font-body, system-ui, sans-serif);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}.shell{position:relative;z-index:1;min-height:100%;padding:calc(env(safe-area-inset-top) + 20px) calc(env(safe-area-inset-right) + 18px) calc(env(safe-area-inset-bottom) + 92px) calc(env(safe-area-inset-left) + 18px);max-width:560px;margin:0 auto}.page-head{margin-bottom:22px}.page-title{font-family:var(--font-display);font-weight:var(--font-display-weight, 400);letter-spacing:var(--font-display-tracking, 0);text-transform:var(--font-display-transform, none);font-size:clamp(28px,7vw,38px);line-height:1.1}.page-sub{margin-top:6px;color:var(--color-text-muted);font-size:14px}.pet-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 16px;margin-bottom:18px;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-large);box-shadow:var(--shadow)}.pet-level{font-family:var(--font-display);font-size:15px}.pet-bar{height:8px;border-radius:999px;background:var(--color-surface-muted);overflow:hidden}.pet-bar-fill{height:100%;border-radius:999px;background:var(--color-accent);transition:width var(--motion-medium) var(--motion-easing)}.pet-xp{font-size:12px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tile{display:flex;flex-direction:column;gap:8px;min-height:120px;padding:16px;text-decoration:none;color:inherit;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-large);box-shadow:var(--shadow);transition:transform var(--motion-fast) var(--motion-easing),border-color var(--motion-fast) var(--motion-easing)}.tile:active{transform:scale(.985)}.tile:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tile-head{display:flex;align-items:center;gap:8px}.tile-glyph{color:var(--color-accent);font-size:15px}.tile-title{font-size:13px;color:var(--color-text-muted)}.tile-value{margin-top:auto;font-family:var(--font-display);font-size:clamp(20px,5.4vw,26px);line-height:1.15}.tile-hint{font-size:11.5px;color:var(--color-text-muted)}.meter{display:flex;flex-direction:column;align-items:center;gap:6px}.meter-track{position:relative;width:26px;height:132px;border-radius:999px;background:var(--color-surface-muted);overflow:hidden}.meter-fill{position:absolute;left:0;right:0;bottom:0;background:var(--color-accent);border-radius:999px;transition:height var(--motion-medium) var(--motion-easing)}.meter-value{font-family:var(--font-display);font-size:15px;font-variant-numeric:tabular-nums}.meter-label{font-size:11px;color:var(--color-text-muted)}.empty{padding:28px 20px;text-align:center;background:var(--color-surface);border:var(--border-width) dashed var(--color-border);border-radius:var(--radius-large)}.empty p{font-size:15px}.empty-sub{margin-top:8px;font-size:13px;color:var(--color-text-muted);line-height:1.55}.empty code{font-family:ui-monospace,monospace;font-size:.92em;padding:1px 5px;border-radius:5px;background:var(--color-surface-muted)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-around;padding:8px 8px calc(env(safe-area-inset-bottom) + 8px);background:color-mix(in srgb,var(--color-base) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:var(--border-width) solid var(--color-border)}.tab{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 12px;border-radius:var(--radius);text-decoration:none;color:var(--color-text-muted);transition:color var(--motion-fast) var(--motion-easing)}.tab.active{color:var(--color-accent)}.tab-glyph{font-size:17px;line-height:1}.tab-label{font-size:10.5px}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.sheet,.panel,.task-section{padding:var(--space-5) var(--space-4);margin-bottom:var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-large);box-shadow:var(--shadow)}.sheet-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.sheet-stage{font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--line-tight)}.sheet-level{font-size:var(--text-sm);color:var(--color-text-muted)}.sheet-blurb{margin:var(--space-2) 0 var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--line-body)}.sheet-party{color:var(--color-accent);font-size:var(--text-sm);text-decoration:none}.sheet-foot{display:flex;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.bar-row{display:grid;grid-template-columns:4.5rem 1fr auto;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.bar-label{font-size:var(--text-xs);color:var(--color-text-muted)}.bar-value{font-size:var(--text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.bar{height:10px;border-radius:999px;background:var(--color-surface-muted);overflow:hidden}.bar-boss{height:16px;margin-top:var(--space-3)}.bar-fill{height:100%;border-radius:999px;transition:width var(--motion-slow) var(--ease-soft)}.bar-fill-accent{background:var(--color-accent)}.bar-fill-success{background:var(--color-success)}.bar-fill-danger{background:var(--color-danger)}.section-title{font-family:var(--font-display);font-size:var(--text-lg);line-height:var(--line-tight)}.section-sub{margin:var(--space-1) 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--line-body)}.task-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.task{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-muted);border-radius:var(--radius)}.task[data-tone=waiting]{box-shadow:inset 3px 0 0 var(--color-accent)}.task[data-tone=drifting]{box-shadow:inset 2px 0 0 var(--color-accent)}.task-done{opacity:.55}.task-tick{flex:0 0 auto;width:var(--tap);height:var(--tap);border-radius:999px;border:var(--border-width) solid var(--color-border);background:var(--color-surface);color:var(--color-accent);font-size:var(--text-xl);line-height:1;cursor:pointer;transition:transform var(--motion-fast) var(--ease-soft)}.task-tick:active{transform:scale(.9)}.task-tick:disabled{color:var(--color-success);cursor:default}.task-body{flex:1 1 auto;min-width:0}.task-title{font-size:var(--text-base);line-height:var(--line-tight)}.task-line{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--line-body)}.task-streak{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--color-accent)}.task-down{flex:0 0 auto;width:var(--tap);height:var(--tap);border:none;background:none;color:var(--color-text-muted);font-size:var(--text-lg);cursor:pointer}.primary{display:block;width:100%;min-height:var(--tap);padding:var(--space-3) var(--space-4);margin-top:var(--space-3);border:none;border-radius:var(--radius-large);background:var(--color-accent);color:var(--color-accent-text);font-family:var(--font-display);font-size:var(--text-base);cursor:pointer;transition:transform var(--motion-fast) var(--ease-soft)}.primary:active{transform:scale(.985)}.primary:disabled{opacity:.5;cursor:default}.quiet{display:block;width:100%;min-height:var(--tap);margin-top:var(--space-2);padding:var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-large);background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);cursor:pointer}.row{display:flex;gap:var(--space-2)}.row>*{flex:1 1 0}.add-task{margin-top:var(--space-4)}.field{width:100%;min-height:var(--tap);padding:var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base)}.field:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.chip{min-height:40px;padding:var(--space-2) var(--space-3);border:var(--border-width) solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);cursor:pointer;text-transform:capitalize}.chip-on{background:var(--color-accent);color:var(--color-accent-text);border-color:transparent}.chip-locked{opacity:.45}.receipt{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 84px);z-index:3;transform:translate(-50%);display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;max-width:min(92vw,420px);padding:var(--space-3) var(--space-4);border-radius:var(--radius-large);background:var(--color-surface);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow);font-size:var(--text-sm);text-align:center}.receipt-payout{color:var(--color-success)}.receipt-level{color:var(--color-accent)}.pet-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.pet{padding:var(--space-4);background:var(--color-surface-muted);border-radius:var(--radius)}.pet-chosen{box-shadow:inset 0 0 0 var(--border-width) var(--color-accent)}.pet-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.pet-name{font-family:var(--font-display);font-size:var(--text-lg)}.pet-rarity{font-size:var(--text-xs);color:var(--color-text-muted)}.pet-skill{margin-top:var(--space-3);font-size:var(--text-sm)}.pet-lore{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--line-body);font-style:italic}.slot{margin-top:var(--space-4)}.slot-name{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.voice{margin-top:var(--space-3)}.voice-mic{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-4);background:var(--color-surface-muted);color:var(--color-text);border:var(--border-width) solid var(--color-border);border-radius:999px;font:inherit;font-size:var(--text-sm);cursor:pointer;transition:background var(--motion-fast) var(--ease-soft),transform var(--motion-fast) var(--ease-soft)}.voice-mic:active{transform:scale(.96)}.voice-mic:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.voice-hint{margin-left:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.voice-live{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface-muted);border:var(--border-width) solid var(--color-accent);border-radius:999px}.voice-dot{flex:none;width:9px;height:9px;border-radius:999px;background:var(--color-danger);animation:voice-pulse 1.6s ease-in-out infinite}@keyframes voice-pulse{0%,to{opacity:1}50%{opacity:.3}}.voice-wave{flex:1 1 auto;height:26px;min-width:60px}.voice-clock{flex:none;font-size:var(--text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.voice-stop,.voice-cancel{flex:none;min-height:36px;padding:0 var(--space-3);border:none;border-radius:999px;font:inherit;font-size:var(--text-xs);cursor:pointer}.voice-stop{background:var(--color-accent);color:var(--color-accent-text)}.voice-cancel{background:transparent;color:var(--color-text-muted);padding:0 var(--space-2)}.voice-working{font-size:var(--text-sm);color:var(--color-text-muted)}.voice-failed{padding:var(--space-4);background:var(--color-surface-muted);border:var(--border-width) solid var(--color-danger);border-radius:var(--radius)}.voice-failed-title{display:block;font-size:var(--text-base)}.voice-failed-body{margin:var(--space-2) 0 var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--line-body)}.voice-diag{margin-top:var(--space-3);background:none;border:none;padding:0;font:inherit;font-size:var(--text-xs);color:var(--color-text-muted);text-decoration:underline;cursor:pointer}@media(prefers-reduced-motion:reduce){.voice-dot{animation:none}}.heard{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--line-body)}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.cal-month{font-family:var(--font-display);font-size:var(--text-lg)}.cal-step{min-width:var(--tap);min-height:var(--tap);background:none;border:none;color:var(--color-text-muted);font-size:var(--text-xl);cursor:pointer;border-radius:999px}.cal-step:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:var(--space-3);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-large);box-shadow:var(--shadow)}.cal-weekday{text-align:center;padding-bottom:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.cal-blank{aspect-ratio:1}.cal-day{position:relative;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:none;border-radius:var(--radius);color:var(--color-text);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:background var(--motion-fast) var(--ease-soft)}.cal-day:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.cal-day[data-selected=true]{background:var(--color-accent);color:var(--color-accent-text)}.cal-day[data-today=true]{box-shadow:inset 0 0 0 var(--border-width) var(--color-accent)}.cal-num{font-variant-numeric:tabular-nums;line-height:1}.cal-dots{display:flex;gap:2px;height:4px}.cal-dot{width:4px;height:4px;border-radius:999px;background:var(--color-accent)}.cal-day[data-selected=true] .cal-dot{background:var(--color-accent-text)}.cal-count{font-size:9px;line-height:1;color:var(--color-accent);font-variant-numeric:tabular-nums}.cal-day[data-selected=true] .cal-count{color:var(--color-accent-text)}.cal-sheet{margin-top:var(--space-5)}.cal-events{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0}.cal-event{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius)}.cal-event-time{flex:none;min-width:5.5rem;font-size:var(--text-xs);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.cal-event-title{flex:1 1 auto;min-width:0;font-size:var(--text-base)}.cal-event-edit,.cal-event-remove{flex:none;background:none;border:none;padding:var(--space-2);font:inherit;font-size:var(--text-xs);color:var(--color-text-muted);cursor:pointer}.cal-event-edit{text-decoration:underline}.cal-time{display:block;margin-top:var(--space-3)}.cal-time .field{margin-top:var(--space-1)}.chat-pill{position:fixed;right:calc(env(safe-area-inset-right) + 14px);bottom:calc(env(safe-area-inset-bottom) + 78px);z-index:3;display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-4);background:var(--color-accent);color:var(--color-accent-text);border:none;border-radius:999px;box-shadow:var(--shadow);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:transform var(--motion-fast) var(--ease-soft)}.chat-pill:active{transform:scale(.95)}.chat-pill:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.chat-unread{min-width:20px;padding:0 5px;border-radius:999px;background:var(--color-base);color:var(--color-text);font-size:var(--text-xs);line-height:20px;text-align:center;font-variant-numeric:tabular-nums}.chat{position:fixed;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 66px);z-index:3;display:flex;flex-direction:column;max-height:min(70vh,520px);max-width:560px;margin:0 auto;padding:var(--space-4) calc(env(safe-area-inset-left) + 16px) var(--space-4) calc(env(safe-area-inset-right) + 16px);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-large) var(--radius-large) 0 0;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.chat-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.chat-title{flex:1 1 auto;font-family:var(--font-display);font-size:var(--text-lg)}.chat-state{font-size:var(--text-xs);color:var(--color-text-muted)}.chat-close{min-width:36px;min-height:36px;background:none;border:none;color:var(--color-text-muted);font:inherit;cursor:pointer}.chat-thread{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.chat-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.chat-msg{display:flex;flex-direction:column;gap:2px;max-width:78%;padding:var(--space-2) var(--space-3);border-radius:var(--radius);font-size:var(--text-sm);line-height:var(--line-body);overflow-wrap:anywhere}.chat-mine{align-self:flex-end;background:var(--color-accent);color:var(--color-accent-text)}.chat-theirs{align-self:flex-start;background:var(--color-surface-muted)}.chat-msg[data-pending=true]{opacity:.6}.chat-time{font-size:var(--text-xs);opacity:.7}.chat-composer{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.chat-composer .field{flex:1 1 auto}.chat-send{flex:none}.set-block{margin-bottom:var(--space-6)}.set-toggle{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3);min-height:var(--tap);font-size:var(--text-sm);cursor:pointer}.set-toggle input{width:20px;height:20px;accent-color:var(--color-accent)}.invite{margin:var(--space-3) 0;padding:var(--space-4);background:var(--color-surface-muted);border:var(--border-width) solid var(--color-accent);border-radius:var(--radius);text-align:center}.invite-code{display:block;font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:.22em;color:var(--color-accent)}.border-glow{position:relative;isolation:isolate;border-radius:var(--radius-large)}.border-glow:before,.border-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1.5px;pointer-events:none;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}.border-glow:before{background:var(--bg-gradient);opacity:.45;z-index:1}.border-glow:after{background:radial-gradient(var(--glow-radius) var(--glow-radius) at var(--gx) var(--gy),var(--color-accent) 0%,transparent 62%);opacity:var(--go, 0);transition:opacity .25s ease-out;z-index:2}.border-glow-animated:before{background-size:220% 220%;animation:aurora-slide 9s ease-in-out infinite}@keyframes aurora-slide{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes aurora-drift{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.12);opacity:.85}}@keyframes spark{0%,to{transform:scale(.7);opacity:.35}50%{transform:scale(1.15);opacity:1}}@keyframes lift{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-5px,0)}}:root[data-calm=true] .border-glow-animated:before,:root[data-calm=true] .lifts,:root[data-calm=true] .sparks{animation:none}@media(prefers-reduced-motion:reduce){.border-glow-animated:before,.lifts,.sparks{animation:none}.border-glow:after{transition:none}}.pet-list>li{list-style:none}.pet.border-glow{border-radius:var(--radius)}.pet-chosen{animation:lift 5.5s ease-in-out infinite}:root[data-calm=true] .pet-chosen{animation:none}@media(prefers-reduced-motion:reduce){.pet-chosen{animation:none}}.cycle-summary{margin-bottom:var(--space-5);padding:var(--space-4);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-large)}.cycle-summary-lead{font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--line-tight)}.cycle-summary-sub{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.cycle-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:var(--space-3);margin-top:var(--space-4)}.cycle-facts dt{font-size:var(--text-xs);color:var(--color-text-muted)}.cycle-facts dd{margin-top:2px;font-size:var(--text-sm)}.cycle-disclaimer{margin-top:var(--space-4);padding-top:var(--space-3);border-top:var(--border-width) solid var(--color-border);font-size:var(--text-xs);line-height:var(--line-body);color:var(--color-text-muted)}.cal-day[data-flow=true]{background:var(--color-danger);color:var(--color-accent-text)}.cal-day[data-predicted=true]{box-shadow:inset 0 0 0 var(--border-width) var(--color-danger)}.cal-day[data-fertile=true]{background:var(--color-surface-muted)}.cal-day[data-ovulation=true]{box-shadow:inset 0 0 0 2px var(--color-accent)}.cycle-dot{width:4px;height:4px;border-radius:50%;background:var(--color-text-muted)}.cal-day[data-selected=true] .cycle-dot{background:var(--color-accent-text)}.cycle-legend{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.cycle-legend li{display:flex;align-items:center;gap:6px}.cycle-key{width:12px;height:12px;border-radius:4px;flex:none}.cycle-key-flow{background:var(--color-danger)}.cycle-key-predicted{box-shadow:inset 0 0 0 var(--border-width) var(--color-danger)}.cycle-key-fertile{background:var(--color-surface-muted)}.cycle-key-logged{background:var(--color-text-muted)}.cycle-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-4)}.cycle-group{margin-top:var(--space-4);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.cycle-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.cycle-note{width:100%;margin-top:var(--space-3);resize:vertical;font:inherit}.cycle-readout{list-style:none;display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--text-sm)}.cycle-readout strong{display:block;font-size:var(--text-xs);color:var(--color-text-muted);font-weight:400}.cal-sheet-day{font-family:var(--font-display);font-size:var(--text-lg)}.cycle-choice{display:flex;flex-direction:column;gap:var(--space-3)}.spread{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.cycle-lock,.cycle-lock-form{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);margin-top:var(--space-4)}.cycle-lock-label{font-size:var(--text-xs);color:var(--color-text-muted)}.cycle-pin{width:100%;max-width:12rem;letter-spacing:.35em}.cycle-unlock:disabled{opacity:.45}.cycle-lock-error{font-size:var(--text-sm);color:var(--color-danger)}.cycle-lock-hint{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--line-body)}.cycle-lock-settings{margin-top:var(--space-6);padding-top:var(--space-4);padding-bottom:64px;border-top:var(--border-width) solid var(--color-border);font-size:var(--text-sm);color:var(--color-text-muted)}
