@font-face{font-family:Aleo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/aleo-latin-400-normal-OgDqGupK.woff2) format("woff2"),url(/assets/aleo-latin-400-normal-BZ-Yjf7h.woff) format("woff")}@font-face{font-family:Aleo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/aleo-latin-500-normal-R0Dsy8vj.woff2) format("woff2"),url(/assets/aleo-latin-500-normal-K2EXa8Ww.woff) format("woff")}@font-face{font-family:Aleo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/aleo-latin-600-normal-CDjlM8TB.woff2) format("woff2"),url(/assets/aleo-latin-600-normal-BbTtw8up.woff) format("woff")}@font-face{font-family:Aleo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/aleo-latin-700-normal-BxmGKhHp.woff2) format("woff2"),url(/assets/aleo-latin-700-normal-B7QbzXDM.woff) format("woff")}@font-face{font-family:Aleo;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/aleo-latin-800-normal-oZVgf7T5.woff2) format("woff2"),url(/assets/aleo-latin-800-normal-DRSjru1D.woff) format("woff")}@font-face{font-family:Aleo;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/aleo-latin-900-normal-DR9tP-YG.woff2) format("woff2"),url(/assets/aleo-latin-900-normal-CojjneBF.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2) format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-latin-900-normal-D4nM5aha.woff2) format("woff2"),url(/assets/inter-latin-900-normal-EUCDUbiG.woff) format("woff")}/*! tailwindcss v4.1.8 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@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;--color-black:#000;--spacing:.25rem;--font-weight-bold:700;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--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);--color-primary:#2a2825}}@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%;-moz-tab-size:4;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;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}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black)40%,transparent)}}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-primary{--tw-ring-color:var(--color-primary)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.sepia{--tw-sepia:sepia(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.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,visibility,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))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{color:var(--text-primary);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility;--ink:#0f172a;--muted:#475569;--line:#d7dee7;--paper:#f8fafc;--cream:#f1f5f9;--accent:#a16207;--accent-soft:#f3ead5;--sage:#e8eee8;--blue:#e6edf3;--shadow:0 20px 55px #2a28251a;--text-primary:#0f172a;--text-secondary:#475569;--text-secondary-strong:#334155;--text-on-dark:#fff;--navy:#242458;--gold:#a16207;--gold-border:#c9a227;--gold-fill-a:#f0d98a;--gold-fill-b:#d9a92c;--sage-deep:#3f6b4d;--coffee-deep:#6b4a2f;--surface-caliza:#f1f5f9;--surface-paper:#f8fafc;--surface-celeste:#e6edf3;--surface-niebla:#ecf1f5;--border-soft:#e5e0d8;--space-page:24px;--space-page-y:48px;--space-bottom-safe:160px;--space-section:28px;--space-related:12px;--content-max:1000px;--font-brand:Aleo,Georgia,serif;--type-eyebrow:13px;--type-card-title:17px;--type-screen-title:20px;--type-figure:22px;--type-body:13px;--type-note:11px;--type-axis:11px;--type-menu:11px;--type-title:clamp(2.625rem,6vw,4.5rem);--type-dashboard-title:clamp(2rem,4vw,3rem);--motion-duration:.15s;--motion-ease:ease;--press-down:60ms cubic-bezier(.32,.72,0,1);--press-up:.15s cubic-bezier(.34,1.56,.64,1);--spring:linear(0 0%,.0825 2.9412%,.2731 5.8824%,.5012 8.8235%,.7175 11.7647%,.8935 14.7059%,1.0179 17.6471%,1.0916 20.5882%,1.123 23.5294%,1.1235 26.4706%,1.105 29.4118%,1.0776 32.3529%,1.0489 35.2941%,1.0238 38.2353%,1.0048 41.1765%,.9923 44.1176%,.9859 47.0588%,.984 50%,.9854 52.9412%,.9884 55.8824%,.992 58.8235%,.9955 61.7647%,.9983 64.7059%,1.0003 67.6471%,1.0015 70.5882%,1.002 73.5294%,1.002 76.4706%,1.0017 79.4118%,1.0012 82.3529%,1.0008 85.2941%,1.0004 88.2353%,1.0001 91.1765%,.9999 94.1176%,.9998 97.0588%,.9997 100%);--spring-travel:linear(0 0%,.0608 3.125%,.2012 6.25%,.3726 9.375%,.543 12.5%,.6939 15.625%,.8164 18.75%,.9087 21.875%,.973 25%,1.0136 28.125%,1.0359 31.25%,1.045 34.375%,1.0453 37.5%,1.0404 40.625%,1.033 43.75%,1.025 46.875%,1.0175 50%,1.0112 53.125%,1.0062 56.25%,1.0026 59.375%,1.0002 62.5%,.9988 65.625%,.9981 68.75%,.9979 71.875%,.998 75%,.9983 78.125%,.9987 81.25%,.999 84.375%,.9993 87.5%,.9996 90.625%,.9998 93.75%,.9999 96.875%,1 100%);--sheet-speed:1;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:100%}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{background:var(--paper);min-width:320px;margin:0;overflow-x:clip}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #ba8b008c}.app-shell{min-height:100vh;overflow:clip}.topbar{width:min(1160px,calc(100% - (var(--space-page)*2)));border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin:0 auto;padding:24px 0;display:flex}.brand{color:var(--ink);font-family:var(--font-brand);font-size:var(--type-card-title);letter-spacing:-.02em;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.brand-button{text-align:left;transition:transform var(--press-up);background:0 0;border:0;padding:0}.brand-mark{color:#fff;background:var(--ink);border-radius:11px;place-items:center;width:32px;height:32px;display:grid}.topbar-actions{align-items:center;gap:18px;display:flex}.save-state{color:var(--muted);font-size:var(--type-body);align-items:center;gap:7px;display:inline-flex}.status-dot{background:var(--sage-deep);border-radius:50%;width:7px;height:7px}.save-saving .status-dot{background:var(--accent);animation:1.1s infinite pulse}.save-error .status-dot{background:#d97777}.icon-button{border:1px solid var(--line);width:38px;height:38px;color:var(--ink);transition:background var(--motion-duration)var(--motion-ease),transform var(--press-up);background:#ffffffb3;border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.icon-button:hover{background:#fff;transform:translateY(-2px)}.eyebrow svg,.date-nav-button svg,.notes-heading svg,.privacy-note svg,.primary-button svg,.secondary-button svg,.expand-button svg,.home-customize svg,.quick-add-title svg,.quick-add-item svg,.section-title-inline svg,.quick-action>svg,.settings-nav-chevron,.settings-search>svg,.settings-note svg,.fab svg,.bottom-nav-item svg,.latest-stats svg,.sleep-notice svg,.calendar-legend-item svg,.text-icon-button svg,.notice svg,.more-button svg,.add-tag-button svg,.food-create-button svg,.food-search-input svg,.food-search-result svg,.wizard-warnings li svg{flex:none;width:1.2cap;height:1.2cap}.main-content{width:min(var(--content-max),calc(100% - (var(--space-page)*2)));padding:var(--space-page-y)0;margin:0 auto}.intro-section{justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px;display:flex}.tracker-intro{display:block}.eyebrow{color:var(--gold);font-size:var(--type-eyebrow);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:7px;margin:0 0 14px;font-weight:800;display:flex}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-brand)}h1{max-width:690px;color:var(--ink);font-size:var(--type-title);letter-spacing:-.075em;margin-bottom:20px;font-weight:500;line-height:.98}h1 em{color:var(--sage-deep);font-style:normal}.intro-copy{max-width:450px;color:var(--muted);font-size:var(--type-body);margin:0;line-height:1.65}.date-nav{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:min(100%,520px);margin:0 auto;display:grid}.date-nav .eyebrow{white-space:nowrap;justify-content:center;min-width:0;margin:0}.date-nav-button{border:1px solid var(--line);min-width:0;color:var(--muted);font-size:var(--type-body);white-space:nowrap;transition:transform var(--press-up);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-weight:700;display:inline-flex}.date-nav-button:hover:not(:disabled){color:var(--ink);border-color:#b8c9bc}.date-nav-button:disabled{cursor:not-allowed;opacity:.35}.progress-card{border:1px solid var(--line);background:#ffffffa6;border-radius:18px;flex:0 0 190px;align-items:center;gap:13px;padding:13px;display:flex}.progress-card>div:last-child{gap:5px;display:grid}.progress-card strong{font-size:var(--type-body)}.progress-card div:last-child span{color:var(--muted);font-size:var(--type-note);line-height:1.3}.progress-ring{--progress:0deg;background:conic-gradient(var(--accent)var(--progress),#e8ede8 0);border-radius:50%;place-items:center;width:57px;height:57px;display:grid;position:relative}.progress-ring:after{content:"";background:var(--paper);border-radius:50%;position:absolute;top:5px;right:5px;bottom:5px;left:5px}.progress-ring span{z-index:1;font-size:15px;font-weight:800}.progress-ring small{font-size:var(--type-note)}.privacy-note{color:#7b8f83;font-size:var(--type-note);align-items:center;gap:8px;margin:6px 0 0;display:flex}.privacy-note b{color:#c5ccc5}.tracker-grid{gap:14px;display:grid}.tracker-card{--module-icon-bg:var(--sage);--module-icon-color:var(--sage-deep);border:1px solid var(--line);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 4px 18px #2a28250f}.tracker-card.blue{--module-icon-bg:var(--blue);--module-icon-color:#5d9daf;background:#fff}.tracker-card.warm{--module-icon-bg:var(--accent-soft);--module-icon-color:#c3844e;background:#fff}.tracker-card.coffee{--module-icon-bg:#f3e9e0;--module-icon-color:#9a6a45;background:#fff}.tracker-card.food-breakfast{--module-icon-bg:#fff1e6;--module-icon-color:#9a5b2a;background:#fff}.tracker-card.food-lunch{--module-icon-bg:#eaf3f6;--module-icon-color:#256779;background:#fff}.tracker-card.food-snacks{--module-icon-bg:#f3eef9;--module-icon-color:#6a4c93;background:#fff}.tracker-card.food-dinner{--module-icon-bg:#edf4e8;--module-icon-color:#3f6b4d;background:#fff}.tracker-card.food-today{--module-icon-bg:#eceff9;--module-icon-color:#4a5fa5;background:#fff}.tracker-card.extras{--module-icon-bg:#f8eee8;--module-icon-color:#92523d;background:#fff}.tracker-card.intimacy{--module-icon-bg:#fbe9f1;--module-icon-color:#a63d68;background:#fff}.tracker-card.cycle{--module-icon-bg:#fbe9ec;--module-icon-color:#b03a52;background:#fff}.activity-selector.flow-picker{padding:2px 0 14px}.flow-picker .activity-option.selected{color:#b03a52;background:#fbeef1;border-color:#b03a52}.flow-drops{color:#b03a52;gap:1px;display:inline-flex}.cycle-close{margin:4px 0 0 2px}.cycle-nudge{background:#fdf3f5;border:1px dashed #c98a97;border-radius:14px;margin:12px 0 4px;padding:12px 14px}.cycle-nudge p{font-size:var(--type-body);margin:0 0 10px}.cycle-nudge div{flex-wrap:wrap;gap:8px;display:flex}.cycle-history{gap:4px;margin:10px 0 0;padding:0;list-style:none;display:grid}.cycle-history li{font-size:var(--type-body);color:var(--muted)}.card-header{width:100%;color:var(--ink);text-align:left;transition:transform var(--press-up);background:0 0;border:0;align-items:center;gap:14px;padding:20px 22px;display:flex}.card-header:hover .card-icon{background:var(--module-icon-bg);transform:rotate(-5deg)}@supports (color:color-mix(in lab,red,red)){.card-header:hover .card-icon{background:color-mix(in srgb,var(--module-icon-bg)78%,white)}}.static-card .card-header{cursor:default}.static-card .card-header:hover .card-icon{transform:none}.card-icon{width:38px;height:38px;color:var(--module-icon-color);background:var(--module-icon-bg);transition:transform var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease);border-radius:13px;flex:none;place-items:center;display:grid}.card-title{flex:1;gap:3px;display:grid}.card-title-text{font-size:var(--type-card-title);letter-spacing:-.01em}.card-subtitle{color:var(--muted);font-size:var(--type-body);font-weight:400}.card-body{padding:0 22px 24px}.emotion-grid{grid-template-columns:repeat(5,1fr);gap:8px;padding-top:3px;display:grid}.emotion-option{color:#78837e;min-height:104px;font-size:var(--type-body);transition:transform var(--press-up),color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),border-color var(--motion-duration)var(--motion-ease);background:0 0;border:1px solid #0000;border-radius:14px;align-content:center;place-items:center;gap:8px;padding:10px 5px;display:grid}.emotion-option.selected{color:var(--ink);border-color:var(--emotion-color)}@supports (color:color-mix(in lab,red,red)){.emotion-option.selected{border-color:color-mix(in srgb,var(--emotion-color)42%,white)}}.emotion-option.selected{background:var(--emotion-color)}@supports (color:color-mix(in lab,red,red)){.emotion-option.selected{background:color-mix(in srgb,var(--emotion-color)14%,white)}}.emotion-face{width:48px;height:48px;color:var(--emotion-stroke,var(--emotion-color));background:0 0;place-items:center;display:grid}.emotion-face svg{fill:var(--emotion-fill,transparent);stroke:var(--emotion-stroke,currentColor)}.emotion-option>span:last-child{text-align:center;justify-content:center;align-items:flex-start;min-height:2.45em;line-height:1.2;display:flex}@media(hover:hover)and (pointer:fine){.emotion-option:hover,.emotion-option.selected:hover{background:#e9f1ea;border-color:#b7cabb;transform:translateY(-2px)}}.emotion-option:focus-visible{outline-offset:2px;outline:2px solid #6e9b77}.time-field{border:1px solid var(--line);width:100%;max-width:100%;color:var(--muted);font-size:var(--type-body);background:#fbfcfa;border-radius:12px;align-items:center;gap:10px;margin-top:17px;padding:8px 12px;display:flex}.time-field>span{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.time-field .time-input-button{flex:auto;min-width:0;max-width:160px;margin-left:auto}.time-field.is-big{background:0 0;border:none;margin-top:12px;padding:0}.time-field.is-big>span svg{width:22px;height:22px}.time-field.is-big .time-input-button{background:0 0;border:none;flex:none;max-width:none;min-height:0;margin-left:0;padding:2px 4px;font-size:30px;line-height:1.15}.time-field.is-big .time-input-button:hover{background:0 0}.tag-grid{flex-wrap:wrap;gap:8px;display:flex}.tag-chip{border:1px solid var(--module-icon-color);align-items:center;gap:7px;max-width:100%;min-height:38px;padding:7px 13px 7px 8px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.tag-chip{border:1px solid color-mix(in srgb,var(--module-icon-color)58%,white)}}.tag-chip{color:var(--text-primary);font-size:var(--type-body);transition:transform var(--press-up),border var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),color var(--motion-duration)var(--motion-ease);background:#fff;border-radius:999px;font-weight:600}.tag-chip:hover{border-color:var(--module-icon-color);background:var(--module-icon-bg);transform:translateY(-2px)}@supports (color:color-mix(in lab,red,red)){.tag-chip:hover{background:color-mix(in srgb,var(--module-icon-bg)24%,white)}}.tag-chip.selected{border-color:var(--module-icon-color);color:var(--text-primary);background:var(--module-icon-bg)}@supports (color:color-mix(in lab,red,red)){.tag-chip.selected{background:color-mix(in srgb,var(--module-icon-bg)42%,white)}}.chip-check{border:1px solid var(--module-icon-color);flex-shrink:0;place-items:center;width:23px;height:23px;display:grid}@supports (color:color-mix(in lab,red,red)){.chip-check{border:1px solid color-mix(in srgb,var(--module-icon-color)58%,white)}}.chip-check{color:var(--module-icon-color);background:#fff;border-radius:50%}.tag-chip .chip-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tag-chip.selected .chip-check{border-color:var(--module-icon-color);color:#fff;background:var(--module-icon-color)}.tag-chip.locked{opacity:.45;cursor:not-allowed}.tag-chip.locked:hover{transform:none}.tag-chip.static{cursor:default}.tag-chip.static:hover{transform:none}.intimacy-picker{gap:14px}.intimacy-group{gap:8px;display:grid}.intimacy-group-title{font-size:var(--type-card-title);color:var(--text-secondary);margin:0;font-weight:700}.activity-selector.intimacy-desire{grid-template-columns:repeat(3,minmax(0,1fr));padding:0}.activity-selector.intimacy-desire .activity-option{min-height:52px;font-size:var(--type-body)}.selected .chip-check{color:var(--module-icon-color);background:#ffffffa6}.expandable-tags{gap:12px;margin-top:15px;display:grid}.more-button,.add-tag-button{color:#356b4a;width:max-content;font-size:var(--type-body);transition:transform var(--press-up);background:0 0;border:0;align-items:center;gap:6px;padding:6px 0;font-weight:700;display:inline-flex}.more-button:hover,.add-tag-button:hover{color:#234d34}.add-tag-button{color:#356b4a;border:1px dashed #8fb39a;border-radius:10px;margin-top:14px;padding:8px 12px}.tag-composer{gap:6px;margin-top:14px;display:flex}.tag-composer input,.wide-input,.editor-row input[type=text],.editor-row input:not([type]){border:1px solid var(--line);min-width:0;color:var(--ink);font-size:var(--type-body);background:#fff;border-radius:10px;flex:1;padding:10px 12px}.tag-composer button{border:1px solid var(--line);width:36px;color:var(--ink);background:#fbfcfa;border-radius:10px;place-items:center;display:grid}.tag-composer button:first-of-type{color:#3e7654;background:var(--sage)}.water-list{gap:8px;display:grid}.water-control{transition:border var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease);background:#f8fbfb;border:1px solid #0000;border-radius:14px;align-items:center;gap:11px;padding:9px 10px;display:flex}.water-control.active{background:#edf8fa;border-color:#b8dbe1}.water-symbol{color:#6eabb8;background:#dff1f4;border-radius:11px;place-items:center;width:35px;height:35px;display:grid}.water-label{flex:1;gap:3px;display:grid}.water-label strong{font-size:var(--type-body)}.water-label small{color:var(--muted);font-size:var(--type-note)}.stepper{align-items:center;gap:9px;display:flex}.stepper button{color:#568d99;width:28px;height:28px;transition:transform var(--press-up);background:#fff;border:1px solid #c9dfe3;border-radius:8px;font-size:17px;line-height:1}.stepper button:hover{background:#dff1f4}.water-total{color:#256779;font-size:var(--type-note);align-items:center;gap:6px;margin:16px 0 0;display:flex}.water-total strong{color:#164e63;margin-left:8px}.bottom-grid{grid-template-columns:.8fr 1.2fr;gap:14px;display:grid}.finish-card{background:linear-gradient(110deg,#fff8ef,#fffdf9);border:1px solid #efd5b9;border-radius:20px;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.finish-card>div{align-items:center;gap:12px;display:flex}.finish-icon{color:#b77a49;background:#ffecd9;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.finish-card.finished{background:linear-gradient(110deg,#f3faf3,#fff);border-color:#c8ddcb}.finish-card.finished .finish-icon{color:#588063;background:#e3f0e3}.finish-card h2{font-size:var(--type-card-title);margin:0 0 4px}.finish-card p{color:var(--muted);font-size:var(--type-note);margin:0}.finish-button{white-space:nowrap;flex:none}.time-card,.notes-card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:20px 22px;box-shadow:0 4px 18px #2a28250f}.time-card-heading,.notes-heading{align-items:center;gap:11px;margin-bottom:20px;display:flex}.small-icon{color:#8a75a3;background:#f0ebf7;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.time-card h2{font-size:var(--type-card-title);letter-spacing:-.01em;margin:0 0 3px;font-weight:700}.time-card p{color:var(--muted);font-size:var(--type-note);margin:0}.notes-heading{color:#6b4a2f;font-size:var(--type-card-title);font-weight:700}.notes-heading svg{color:var(--accent)}textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);font-size:var(--type-body);background:#fbfcfa;border-radius:11px;padding:11px 12px;line-height:1.5}textarea::placeholder{color:#64748b}.secondary-button,.primary-button{border:1px solid var(--line);color:#56645d;font-size:var(--type-body);transition:transform var(--press-up),box-shadow var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-weight:700;display:inline-flex}.secondary-button:hover{background:#fff;transform:translateY(-2px);box-shadow:0 5px 14px #273a3614}.file-button{cursor:pointer}.file-button input{display:none}.primary-button{border-color:var(--ink);color:var(--text-on-dark);background:var(--ink)}.primary-button:hover{background:#403c38}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes quick-sheet-rise{0%{translate:0 100%}to{translate:0}}.overlay-backdrop{animation:overlay-in calc(.2s*var(--sheet-speed))ease}.modal-backdrop{z-index:10;background:#273a364d;place-items:center;padding:22px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.settings-modal{width:min(660px,100%);max-height:min(820px,100vh - 44px);animation:sheet-in calc(.4s*var(--sheet-speed))cubic-bezier(.32,.72,0,1);background:#fff;border:1px solid #ffffffb3;border-radius:24px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 30px 90px #273a3638}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:20px;padding:25px 27px 17px;display:flex}.modal-header .eyebrow{margin-bottom:9px}.modal-header h2{font-size:var(--type-screen-title);letter-spacing:-.055em;margin:0;font-weight:700}.settings-scroll{overscroll-behavior:contain;padding:4px 27px 14px;overflow-y:auto}.settings-section{border-bottom:1px solid var(--line);padding:22px 0}.settings-section:last-child{border-bottom:0}.settings-section h3{font-size:var(--type-card-title);margin-bottom:7px}.settings-help{color:var(--muted);font-size:var(--type-body);margin-bottom:15px;line-height:1.5}.module-list{gap:6px;display:grid}.module-row{cursor:pointer;border:1px solid #0000;border-radius:12px;align-items:center;gap:11px;padding:11px;display:flex;position:relative}.module-row:hover,.module-row.active{border-color:var(--line);background:#fbfcfa}.module-row input{opacity:0;position:absolute}.module-row>.module-row-text{flex:1;gap:4px;min-width:0;display:grid}.module-row strong{font-size:var(--type-card-title)}.module-row small{color:var(--muted);font-size:var(--type-body);line-height:1.35}.scale-control{color:var(--muted);font-size:var(--type-body);justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;display:flex}.scale-control select{border:1px solid var(--line);color:var(--ink);font-size:var(--type-body);background:#fbfcfa;border-radius:9px;padding:8px 10px}.emotion-editor{gap:7px;display:grid}.editor-row{align-items:center;gap:8px;display:flex}.editor-number{color:#799080;width:21px;height:21px;font-size:var(--type-note);background:#edf4ed;border-radius:50%;place-items:center;font-weight:800;display:grid}.editor-row input:not([type=color]){border:1px solid var(--line);min-width:0;font-size:var(--type-body);border-radius:9px;flex:1;padding:8px 10px}.editor-row input[type=color]{border:1px solid var(--line);background:0 0;border-radius:8px;width:31px;height:31px;padding:2px}.tag-editor-group{border:1px solid var(--line);border-radius:11px;margin-top:7px;overflow:hidden}.tag-editor-group summary{cursor:pointer;color:#5e6d64;font-size:var(--type-body);justify-content:space-between;align-items:center;padding:11px 12px;font-weight:700;list-style:none;display:flex}.tag-editor-group summary::-webkit-details-marker{display:none}.tag-editor-group[open] summary{border-bottom:1px solid var(--line);background:#fbfcfa}.tag-editor-group>div{gap:6px;padding:10px;display:grid}.tag-editor-row{color:var(--muted);font-size:var(--type-body);align-items:center;gap:10px;display:flex}.tag-editor-row span{text-overflow:ellipsis;white-space:nowrap;width:120px;overflow:hidden}.tag-editor-row input{border:1px solid var(--line);min-width:0;font-size:var(--type-body);border-radius:8px;flex:1;padding:7px 9px}.wide-input{width:100%}.modal-footer{border-top:1px solid var(--line);background:#fbfcfa;justify-content:space-between;align-items:center;gap:12px;padding:17px 27px;display:flex}.text-button{color:#6b4a2f;font-size:var(--type-body);transition:transform var(--press-up),color var(--motion-duration)var(--motion-ease);background:0 0;border:0;padding:8px 0}.text-button:hover{color:#4a2f1c}.app-loading{min-height:100vh;color:var(--muted);font-size:var(--type-body);align-content:center;place-items:center;gap:12px;display:grid}.loader{border:3px solid #dce9dd;border-top-color:#6e9b77;border-radius:50%;width:25px;height:25px;animation:.8s linear infinite spin}@keyframes pulse{50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-content{width:min(var(--content-max),calc(100% - (var(--space-page)*2)));padding:var(--space-page-y)0;margin:0 auto}.home-hero{max-width:650px;margin-bottom:28px}.home-hero h1{font-size:var(--type-dashboard-title);margin-bottom:16px}.home-intro{max-width:520px;color:var(--muted);font-size:var(--type-body);margin:0;line-height:1.55}.home-actions{border:1px solid var(--line);background:#fff;border-radius:22px;margin-top:28px;padding:20px}.quick-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quick-action{border:1px solid var(--line);min-width:0;color:var(--ink);text-align:left;transition:transform var(--press-up),border-color var(--motion-duration)var(--motion-ease),box-shadow var(--motion-duration)var(--motion-ease);background:#fbfcfa;border-radius:15px;align-items:center;gap:11px;padding:15px;display:flex}.quick-action:hover{border-color:#b7cabb;transform:translateY(-2px);box-shadow:0 7px 18px #273a3614}.quick-action>span{flex:1;gap:4px;min-width:0;display:grid}.quick-action strong{font-size:var(--type-body)}.quick-action small{color:var(--muted);font-size:var(--type-body)}.quick-action>svg:first-child{flex:none}.quick-action>svg:last-child{color:var(--text-secondary);flex:none}.quick-action-coffee>svg:first-child{color:#a0714f}.quick-action-water>svg:first-child{color:#5d9daf}.quick-action-cigarettes>svg:first-child{color:#a46f63}.quick-action-full>svg:first-child{color:var(--sage-deep)}.home-secondary-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.quick-counter-grid{grid-template-columns:1fr;gap:10px;display:grid}.quick-counter-grid .tracker-card{margin:0}.quick-open-today{grid-column:1/-1;width:100%;min-height:48px}.sleep-band{height:74px;position:relative}.home-actions .sleep-band{grid-column:1/-1}.sleep-band-wake{margin-bottom:18px}.sleep-band-bar{width:100%;height:74px;color:var(--ink);font:inherit;text-align:left;transition:width var(--band-collapse,.42s)cubic-bezier(.34,1.18,.64,1),height var(--band-collapse,.42s)cubic-bezier(.34,1.18,.64,1),top var(--band-collapse,.42s)cubic-bezier(.34,1.18,.64,1),border-radius var(--band-collapse,.42s)ease,background .3s ease,color .3s ease,border-color .3s ease,transform var(--press-up);background:#f2f8f4;border:1px solid #cfe0d6;border-radius:18px;align-items:center;gap:11px;padding:0 16px;font-size:15px;font-weight:700;display:flex;position:absolute;top:0;left:0}.sleep-band-icon{flex:0 0 22px;width:22px;height:22px;display:inline-flex}.sleep-band-icon svg{width:22px;height:22px;display:block}.sleep-band-label,.sleep-band-hint{transition:opacity .18s}.sleep-band-hint{color:#5c7a68;margin-left:auto;font-size:12px;font-weight:600}.sleep-band.is-done .sleep-band-bar{background:var(--ink);color:#fff;border-color:var(--ink);border-radius:50%;width:54px;height:54px;top:10px}.sleep-band.is-done .sleep-band-label,.sleep-band.is-done .sleep-band-hint{opacity:0;pointer-events:none;position:absolute}.sleep-band-stamp{color:var(--muted);opacity:0;transition:opacity var(--band-stamp,.25s)cubic-bezier(.32,.72,0,1)var(--band-delay,.42s),transform var(--band-stamp,.25s)cubic-bezier(.32,.72,0,1)var(--band-delay,.42s);font-size:13.5px;position:absolute;top:50%;left:70px;transform:translateY(calc(6px - 50%))}.sleep-band.is-done .sleep-band-stamp{opacity:1;transform:translateY(-50%)}.sleep-band.is-done .sleep-band-stamp b{color:var(--ink)}.home-customize{width:fit-content;color:var(--muted);font-size:var(--type-body);transition:color var(--motion-duration)var(--motion-ease),transform var(--press-up);background:0 0;border:none;align-items:center;gap:6px;margin:12px 0 2px auto;padding:6px 2px;font-weight:800;display:flex}.home-customize:hover{color:var(--ink)}.quick-counter-grid.is-editing .tracker-card{pointer-events:none}.quick-edit-wrap{min-width:0;position:relative}.quick-edit-overlay{pointer-events:none;justify-content:space-between;align-items:center;padding:0 10px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.quick-edit-overlay button{pointer-events:auto}.quick-move{gap:6px;display:grid}.quick-move button{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);transition:transform var(--press-up);background:#fff;border-radius:10px;place-items:center;display:grid;box-shadow:0 3px 10px #273a361f}.quick-move button:disabled{opacity:.35;box-shadow:none}.quick-remove{color:#fff;width:42px;height:42px;transition:transform var(--press-up);background:#c0392b;border:0;border-radius:50%;place-items:center;animation:1.1s ease-in-out infinite quick-remove-nudge;display:grid;box-shadow:0 4px 14px #c0392b66}@keyframes quick-remove-nudge{0%,to{transform:rotate(0)scale(1)}25%{transform:rotate(-9deg)scale(1.06)}75%{transform:rotate(9deg)scale(1.06)}}.quick-add-card{background:#f8fbf9;border:2px dashed #9fc1a7;border-radius:16px;grid-column:1/-1;gap:8px;padding:14px;display:grid}.quick-add-title{color:#356b4a;font-size:var(--type-card-title);align-items:center;gap:7px;margin:0;font-weight:800;display:flex}.quick-add-item{border:1px solid var(--line);min-height:42px;color:var(--ink);font-size:var(--type-body);transition:transform var(--press-up);background:#fff;border-radius:11px;justify-self:start;align-items:center;gap:7px;padding:9px 14px;font-weight:700;display:inline-flex}.quick-add-item:hover{background:#eef5ee;border-color:#9fc1a7}.quick-add-empty{color:var(--muted);font-size:var(--type-body);margin:0}@media(min-width:1024px){.quick-counter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.dashboard-hero{justify-content:space-between;align-items:end;gap:36px;margin-bottom:18px;display:flex}.dashboard-hero h1{font-size:var(--type-dashboard-title);margin-bottom:12px}.hero-summary{border:1px solid var(--line);background:#ffffffb3;border-radius:15px;align-items:center;gap:11px;min-width:200px;padding:11px 13px;display:flex}.summary-icon{color:#6b8e7a;background:#eaf3eb;border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.hero-summary div{gap:3px;display:grid}.hero-summary strong{font-size:var(--type-body)}.hero-summary span{color:var(--muted);font-size:var(--type-note)}.reminder-bell-wrap{flex:none;position:relative}.reminder-bell{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);transition:color var(--motion-duration)var(--motion-ease),border-color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),transform var(--press-up);background:#fff;border-radius:10px;place-items:center;display:grid}.reminder-bell:hover,.reminder-bell:focus-visible,.reminder-bell.configured{color:var(--ink);background:#fbfdfb;border-color:#b7cabb}.reminder-bell.configured{color:#6e9b77}.reminder-bell-popover{z-index:4;border:1px solid var(--line);width:max-content;max-width:220px;color:var(--muted);font-size:var(--type-note);white-space:nowrap;background:#fff;border-radius:11px;gap:7px;padding:9px 10px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 26px #273a3624}.reminder-bell-popover button{color:#3e7654;font-size:var(--type-body);text-align:left;transition:transform var(--press-up);background:0 0;border:0;padding:0;font-weight:800}.reminder-bell-tooltip{opacity:0;pointer-events:none;transition:opacity var(--motion-duration)var(--motion-ease),transform var(--motion-duration)var(--motion-ease);transform:translateY(-3px)}.reminder-bell-wrap:hover .reminder-bell-tooltip,.reminder-bell-wrap:focus-within .reminder-bell-tooltip{opacity:1;transform:translateY(0)}.hero-summary .reminder-bell-wrap{display:block}.hero-summary .reminder-bell-popover{gap:7px;display:grid}.bento-grid{--bento-gap:12px;flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.bento-cycle-row,.bento-nav-row{flex:100%;min-width:0;margin-bottom:0}@media(min-width:640px){.bento-grid{--bento-gap:12px;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense;gap:12px;display:grid}.bento-grid>*{grid-column:span 2;min-width:0}.bento-cycle-row>.bento-widget,.bento-nav-row>.bento-widget{height:100%}}.bento-pop-layer{z-index:6;animation:overlay-in calc(.2s*var(--sheet-speed))ease;touch-action:none;overscroll-behavior:contain;background:#14282352;place-items:center;padding:14px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.bento-pop{--scroll-fade:#fcfdfb;width:min(560px,100%);max-height:100%;animation:bento-pop-in calc(.56s*var(--sheet-speed))var(--spring)both;background:#fcfdfb;border:1px solid #b7cabb;border-radius:18px;flex-direction:column;padding:0 2px 2px;display:flex;position:relative;overflow-y:auto;box-shadow:0 18px 44px #14282342}.bento-pop .analytics-panel{background:0 0;border:0;border-radius:18px;margin:0}.bento-pop-close{z-index:1;border:1px solid var(--line);width:34px;height:34px;color:var(--ink);cursor:pointer;transition:transform var(--press-up);background:#fff;border-radius:50%;flex:0 0 34px;align-self:flex-end;place-items:center;margin:7px 7px -41px 0;display:grid;position:sticky;top:7px;box-shadow:0 2px 8px #273a361a}.bento-pop .panel-heading{padding-right:38px}.bento-pop-close:active{transform:scale(.94)}@keyframes bento-pop-in{0%{opacity:0;transform:translateY(-14px)scale(.965)}to{opacity:1;transform:none}}.bento-widget{border:1px solid var(--line);background:#fff;border-radius:17px;flex:150px;align-items:center;gap:12px;min-width:0;padding:13px 14px;display:flex;position:relative}.bento-widget.expandable,.bento-widget.navigable{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;transition:border-color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),box-shadow var(--motion-duration)var(--motion-ease),transform var(--press-up)}.bento-widget.expandable:hover,.bento-widget.navigable:hover{border-color:#b7cabb}.bento-widget.has-arrow{padding-right:40px}.bento-widget.active{--scroll-fade:#fcfdfb;background:#fcfdfb;border-color:#b7cabb;box-shadow:0 4px 14px #273a3614}.bento-expand{color:var(--text-secondary);transition:transform var(--motion-duration)var(--motion-ease),color var(--motion-duration)var(--motion-ease);place-items:center;display:grid;position:absolute;top:10px;right:10px}.bento-expand.open{color:#6b8e7a;transform:rotate(180deg)}.bento-nav-arrow{color:var(--text-secondary);place-items:center;display:grid;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.bento-widget.expandable .bento-icon{margin-right:0}.bento-icon{border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.bento-widget div{gap:2px;min-width:0;display:grid}.bento-widget p{color:var(--muted);font-size:var(--type-note);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:700;overflow:hidden}.bento-widget p.metric-label{color:var(--text-primary);font-family:var(--font-brand);font-size:var(--type-card-title);font-weight:700;line-height:1.15}.bento-widget strong{color:var(--ink);font-size:var(--type-figure);letter-spacing:-.05em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bento-widget strong.data-highlight{color:var(--text-primary);font-size:var(--type-figure);font-weight:800;line-height:1.1}.bento-widget small{color:var(--muted);font-size:var(--type-note);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bento-widget small.metric-sub{color:var(--text-secondary);font-size:var(--type-body);font-weight:400;line-height:1.25}.bento-widget.lavender .bento-icon{color:#8c79a5;background:#f0ebf7}.bento-widget.blue .bento-icon{color:#659dab;background:#e5f3f5}.bento-widget.green .bento-icon{color:#6c9677;background:#e7f2e8}.bento-widget.warm .bento-icon{color:#c3844e;background:var(--accent-soft)}.bento-widget.coffee .bento-icon{color:#a0714f;background:#f3e9e0}.bento-widget.cigarettes .bento-icon{color:#a46f63;background:#f7e9e5}.bento-widget.cycle .bento-icon{color:#b03a52;background:#fbe9ec}.bento-widget.intimacy .bento-icon{color:#a63d68;background:#fbe9f1}.day-cell.has-record:not(:has(.cycle-dot)):before{content:"";background:var(--day-color);border-radius:50%;width:6px;height:6px;position:absolute;top:6px;right:6px}.cycle-dot{border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.cycle-dot.logged{background:#c22744}.cycle-dot.estimated{background:#f6cdd6;border:1.5px dotted #b03a52}.day-chip{position:relative}.day-chip .cycle-dot{top:6px;right:8px}.cycle-dot-legend{display:inline-block;position:static}.cycle-est-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.cycle-est-card{border:1px solid var(--line);background:#fff;border-radius:14px;gap:2px;padding:10px 12px;display:grid}.cycle-est-card span{font-size:var(--type-note);color:var(--muted);font-weight:700}.cycle-est-card strong{font-size:var(--type-card-title);color:var(--ink)}.cycle-est-card small{font-size:var(--type-note);color:var(--muted)}.cycle-edu-slot{color:var(--ink);font-size:var(--type-body);background:#f1f7f0;border:1px solid #d8e7d8;border-radius:14px;margin:0 0 12px;padding:10px 14px;line-height:1.45}.cycle-flow-chart{gap:6px;margin:0;padding:0;list-style:none;display:grid}.cycle-flow-row{font-size:var(--type-body);align-items:center;gap:10px;display:flex}.cycle-flow-row span:first-child{min-width:92px;color:var(--muted);font-size:var(--type-body)}.cycle-flow-row small{color:var(--muted);font-size:var(--type-body)}.cycle-symptom-chips{flex-wrap:wrap;gap:8px;display:flex}.cycle-symptom-chip{border:1px solid var(--line);font-size:var(--type-body);background:#fdf3f5;border-radius:999px;padding:6px 12px;font-weight:600}.symptom-timeline{grid-template-columns:58px minmax(0,1fr);align-items:stretch;min-width:0;margin-top:6px;display:grid}.symptom-timeline-axis{min-height:182px;color:var(--muted);background:var(--card);z-index:2;position:relative}.symptom-axis-title{font-size:var(--type-axis);color:#9a7200;font-weight:700;position:absolute;top:0;right:6px}.symptom-axis-labels{font-size:var(--type-axis);position:absolute;top:0;right:0;bottom:0;left:0}.symptom-axis-labels span{color:#9a7200;position:absolute;right:8px;transform:translateY(0)}.symptom-timeline-scroll{overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;min-width:0;overflow-x:auto}.symptom-timeline-scroll::-webkit-scrollbar{display:none}.symptom-timeline-scroll svg{min-width:700px;max-width:none;display:block}.cycle-history-list li{color:var(--ink)}.hormone-map .chart-scroll svg,.period-compare .chart-scroll svg,.hormone-map .sleep-line-scroll svg,.period-compare .sleep-line-scroll svg{max-width:none;display:block}.hormone-map{width:100%}.hormone-map .sleep-line-scroll svg{width:100%;min-width:560px;height:auto}.period-compare{width:100%}.period-compare .sleep-line-scroll svg{height:auto}.cycle-bottom-grid{gap:14px;margin-bottom:14px;display:grid}.cycle-bottom-grid .analytics-panel{margin-bottom:0}@media(min-width:768px){.cycle-bottom-grid{grid-template-columns:1fr 1fr}}.hormone-legend{flex-wrap:wrap;gap:8px;margin:10px 0 4px;display:flex}.hormone-chip{border:1px solid var(--line);font-size:var(--type-body);color:var(--ink);cursor:pointer;min-height:36px;transition:transform var(--press-up);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:7px 13px;font-weight:700;display:inline-flex}.hormone-chip i{border-radius:50%;width:10px;height:10px}.hormone-chip.selected{border-color:#31523c;box-shadow:0 0 0 1px #31523c}.hormone-chart-inner{min-width:560px;height:300px;position:relative}.hormone-map .hormone-chart-inner svg{width:720px;min-width:0;max-width:none;height:300px;display:block}.hormone-phases{flex-wrap:wrap;gap:8px;margin:10px 0 0;display:flex}.phase-chip{border:1px solid var(--line);font-size:var(--type-body);color:var(--ink);cursor:pointer;min-height:36px;transition:transform var(--press-up);background:#f6f3ec;border-radius:999px;align-items:center;padding:7px 13px;font-weight:700;display:inline-flex}.phase-chip.selected{background:#eef4ec;border-color:#31523c;box-shadow:0 0 0 1px #31523c}.symptom-timeline g[role=button]{cursor:pointer;outline:none}.symptom-timeline g[role=button]:focus-visible{outline-offset:-2px;border-radius:8px;outline:2px solid #2c3e50}.period-compare g[role=img]{outline:none}.period-compare g[role=img]:focus-visible{outline-offset:2px;border-radius:6px;outline:2px solid #2c3e50}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hormone-delay{color:#8a5a00;font-size:var(--type-body);background:#fff8e6;border:1px solid #e8d9a0;border-radius:14px;margin:8px 0 0;padding:10px 14px;font-weight:700;line-height:1.45}.symptom-day-detail{border:1px solid var(--line);background:#fdf6ec;border-radius:14px;grid-column:1/-1;justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;margin-top:10px;padding:12px 14px;display:flex}.symptom-day-detail strong{font-size:var(--type-card-title);color:var(--ink)}.symptom-day-detail .cycle-symptom-chips{margin-top:8px}.symptom-day-hint{font-size:var(--type-note);color:var(--muted);margin:6px 0 0}.hormone-education{color:var(--ink);background:#f1f7f0;border:1px solid #d8e7d8;border-radius:14px;margin-top:10px;padding:12px 14px}.hormone-education strong{font-size:var(--type-card-title)}.hormone-education p{font-size:var(--type-body);margin:5px 0 0;line-height:1.45}.hormone-note{font-size:var(--type-body);color:var(--ink);margin:8px 0 0;font-weight:600}.hormone-source{font-size:var(--type-note);color:var(--muted);margin:4px 0 0}.cycle-compare-summary{font-size:var(--type-body);color:var(--ink);margin:0 0 6px;font-weight:600}.cycle-disclaimer{border-top:1px solid var(--line);color:var(--muted);font-size:var(--type-body);margin:12px 0 0;padding:12px 14px;line-height:1.5}.chart-placeholder{color:var(--muted);font-size:var(--type-body);background:#fff8f9;border:1px dashed #d7b7be;border-radius:14px;margin-top:10px;padding:12px 14px;line-height:1.45}.period-compare .chart-scroll{background:0 0;border:0}.period-compare g[role=button]{cursor:pointer;outline:none}.period-compare g[role=button]:focus-visible{outline:none}.period-compare g[role=button]:focus-visible rect{stroke:#2c3e50;stroke-width:2px;stroke-dasharray:5 4}.period-compare g[role=button]:focus-visible path{stroke:#2c3e50;stroke-width:3px}.drop-detail{border:1px solid var(--line);background:#fdf3f5;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:10px;margin-top:10px;padding:12px 14px;display:flex}.drop-detail strong{font-size:var(--type-card-title);color:var(--ink)}.drop-detail p{font-size:var(--type-body);color:var(--muted);margin:6px 0 0}.drop-detail .cycle-symptom-chips{margin-top:8px}.compare-export{margin-top:10px}.compare-tabs{margin-bottom:10px}.chart-placeholder.compare-ready{color:#2f5a3c;background:#f0f8f1;border-style:solid;border-color:#b7d9bf;font-weight:600}.bento-widget.bump{animation:.28s ease-out quick-bump}.week-strip{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin-bottom:12px;padding:6px;display:grid}.day-chip{min-width:0;color:var(--muted);font:inherit;transition:transform var(--press-up),background var(--motion-duration)var(--motion-ease),box-shadow var(--motion-duration)var(--motion-ease);background:0 0;border:1px solid #0000;border-radius:12px;place-items:center;gap:3px;padding:8px 4px 10px;display:grid}.day-chip:hover{background:#f6f9f6;transform:translateY(-1px)}.day-chip.today{color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink),0 4px 12px #273a361a;background:#f4f8f4}.chip-weekday{font-size:var(--type-note);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-weight:800}.day-chip.today .chip-weekday{color:#6b8e7a}.day-chip.today .chip-number{font-size:19px;font-weight:800}.chip-number{font-size:15px;font-weight:700;line-height:1}.chip-emotion{background:var(--emotion-color,#e3e8e1);border-radius:50%;width:8px;height:8px}.calendar-long{max-height:250px;padding-right:4px;overflow-y:auto}.calendar-weekdays{z-index:2;border-bottom:1px solid var(--line);background:#fff;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:8px;padding:6px 0;display:grid;position:sticky;top:0}.calendar-weekdays span{text-align:center;color:var(--text-secondary);font-size:var(--type-note);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.calendar-month-block+.calendar-month-block{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.month-block-title{color:var(--ink);font-size:var(--type-card-title);letter-spacing:-.02em;text-transform:capitalize;margin:0 0 10px}.month-grid .day-cell{border-radius:9px}.day-cell:disabled{pointer-events:none}.day-cell.future{color:#64748b;background:#f8fafc;border-color:#e2e8f0}.day-cell.future:hover{border-color:#eef1ec;transform:none}.counter-control{background:#fbf4f1;border:1px solid #0000;border-radius:14px;align-items:center;gap:11px;margin-top:14px;padding:9px 10px;display:flex;position:relative}.counter-control.bumped{animation:.28s ease-out quick-bump}.counter-symbol{color:#a46f63;background:#f4dfda;border-radius:10px;place-items:center;width:31px;height:31px;display:grid}.counter-label{gap:2px;display:grid}.counter-label strong{font-size:var(--type-card-title)}.counter-control .stepper button{color:#975f54;border-color:#e5ccc6}.counter-feedback{color:#a46f63;font-size:var(--type-body);pointer-events:none;font-weight:800;animation:.65s ease-out forwards float-feedback;position:absolute;top:-9px;right:19px}@keyframes quick-bump{0%{transform:scale(1)}45%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes float-feedback{0%{opacity:0;transform:translateY(8px)scale(.8)}25%{opacity:1}to{opacity:0;transform:translateY(-26px)scale(1.05)}}.direct-counter-card{padding:0;overflow:hidden}.direct-counter-card .counter-control{background:0 0;border:0;border-radius:0;min-height:102px;margin:0;padding:18px 20px}.direct-counter-card .counter-symbol{border-radius:15px;width:48px;height:48px}.direct-counter-card .counter-label{flex:1;gap:5px;min-width:0}.direct-counter-card .counter-label strong{font-family:var(--font-brand);font-size:var(--type-card-title)}.direct-counter-card .counter-label small{font-size:var(--type-body)}.direct-counter-card .counter-value{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:800;line-height:1.1}.direct-counter-card .stepper{flex:none;gap:12px;margin-left:auto}.direct-counter-card .stepper button{border-radius:50%;width:48px;height:48px;font-size:26px}.direct-counter-card.coffee .counter-control{background:#fdf9f4}.direct-counter-card.coffee .counter-symbol{color:#a0714f;background:#f3e9e0}.direct-counter-card.coffee .stepper button{color:#8a6444;border-color:#e4d3c2}.direct-counter-card.warm .counter-control{background:#fbf4f1}.direct-counter-card.warm .counter-symbol{color:#a46f63;background:#f4dfda}.direct-counter-card.warm .stepper button{color:#975f54;border-color:#e5ccc6}.water-counter-card .counter-control{background:#f8fbfb}.water-counter-card .counter-symbol{color:#5d9daf;background:#dff1f4}.water-counter-card .stepper button{color:#568d99;border-color:#b8dbe1}.water-counter-card .counter-label{flex:0 auto}.water-counter-card .counter-value{text-align:left;min-width:7ch;display:inline-block}.water-glass{background:#f4fafb;border:2px solid #b8dbe1;border-radius:6px 6px 14px 14px;flex:none;width:46px;height:64px;display:block;position:relative;overflow:hidden}.water-glass-fill{background:linear-gradient(#cfe3e8,#a9cdd8);height:0;transition:height .45s cubic-bezier(.32,.72,0,1);position:absolute;bottom:0;left:0;right:0}.water-glass-glug{pointer-events:none;background:radial-gradient(circle at 50% 55%,#fffffff2,#a9cdd800 70%);border-radius:50%;width:30px;height:20px;margin-left:-15px;animation:.5s ease-out both water-glass-glug;position:absolute;bottom:-6px;left:50%}@keyframes water-glass-glug{0%{opacity:.9;transform:scale(.5)}to{opacity:0;transform:scale(1.4)}}.water-goal-bar{background:#e4eff2;border-radius:4px;height:5px;margin-top:2px;display:block;overflow:hidden}.water-goal-bar-fill{background:#659dab;border-radius:4px;width:0;height:100%;transition:width .45s cubic-bezier(.32,.72,0,1);display:block}.water-done .water-glass{border-color:var(--gold-border);background:#fdf7e6}.water-done .water-glass-fill{background:linear-gradient(180deg,var(--gold-fill-a),var(--gold-fill-b))}.water-done .water-goal-bar{background:#f3e6c4}.water-done .water-goal-bar-fill{background:var(--gold)}.water-done .stepper button{color:var(--gold);border-color:#e0cb8e}.water-glass-slot{flex:none;display:block;position:relative}.water-spill{pointer-events:none;position:absolute;top:-3px;right:-7px;bottom:-2px;left:-7px}.water-spill-rim{background:linear-gradient(90deg,#e3b93f00,#e8c46a,#e3b93f00);border-radius:3px;height:3px;position:absolute;top:3px;left:3px;right:3px}.water-spill i{background:linear-gradient(180deg,var(--gold-fill-a),var(--gold-fill-b));border-radius:50% 50% 55% 55%;width:5px;height:7px;animation:1.2s ease-in infinite water-spill-drop;position:absolute;top:4px}.water-spill i:nth-child(2){left:5px}.water-spill i:nth-child(3){animation-delay:.25s;left:15px}.water-spill i:nth-child(4){animation-delay:.5s;left:24px}.water-spill i:nth-child(5){animation-delay:.75s;left:33px}.water-spill i:nth-child(6){animation-delay:1s;left:42px}@keyframes water-spill-drop{0%{opacity:0;transform:translateY(0)scale(.6)}18%{opacity:1}to{opacity:0;transform:translateY(30px)scale(.9)}}@media(prefers-reduced-motion:reduce){.water-spill i{animation:none}}.counter-actions{border-top:1px solid var(--line);align-items:center;gap:15px;min-height:51px;padding:0 20px;display:flex}.counter-adjust,.counter-reminder{color:#356b4a;font-size:var(--type-body);transition:transform var(--press-up);background:0 0;border:0;align-items:center;gap:5px;padding:0;font-weight:800;display:inline-flex}.counter-adjust:hover,.counter-reminder:hover{color:#234d34}.counter-reminder{color:var(--ink);margin-left:auto;font-weight:700}.counter-feedback{top:7px;right:84px}.sleep-picker{gap:8px;display:grid}.sleep-fields{gap:8px;display:flex}.sleep-fields .time-input-button{flex:1;min-width:0}.sleep-fields .sleep-date-button{flex:1.3}.sleep-notice{color:#7b5c3f;font-size:var(--type-body);background:#fdf3e7;border-radius:10px;align-items:center;gap:6px;margin:0;padding:8px 10px;display:flex}.sleep-notice svg{flex:none}.sleep-notice button{color:#a0714f;font-size:var(--type-body);transition:transform var(--press-up);background:0 0;border:0;margin-left:auto;padding:0;font-weight:800;text-decoration:underline}.reminder-shortcut{border:0;border-top:1px solid var(--line);width:100%;min-height:50px;color:var(--ink);text-align:left;font-size:var(--type-body);transition:transform var(--press-up);background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:11px 2px 0;font-weight:700;display:flex}.reminder-shortcut>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.reminder-shortcut-icon{border:1px solid var(--line);color:#6b8e7a;width:36px;height:36px;transition:border-color var(--motion-duration)var(--motion-ease),color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease);background:#fbfcfa;border-radius:11px;flex:none;justify-content:center;align-items:center;gap:1px;display:inline-flex}.reminder-shortcut:hover .reminder-shortcut-icon{color:var(--ink);background:#fff;border-color:#b7cabb}.analytics-panel{border:1px solid var(--line);--scroll-fade:#fff;background:#fff;border-radius:20px;margin-bottom:14px;padding:20px 22px}@keyframes reminder-highlight{0%{box-shadow:0 0 #273a3600}18%{box-shadow:0 0 0 3px #273a3638,0 10px 24px #273a3614}75%{box-shadow:0 0 0 3px #273a3638,0 10px 24px #273a3614}to{box-shadow:0 0 #273a3600}}.panel-heading{align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.panel-heading-icon{color:#6b8e7a;background:#eaf3eb;border-radius:12px;flex:none;place-items:center;width:36px;height:36px;display:grid}.panel-heading h3.analytics-title{font-size:var(--type-card-title);margin:0;font-weight:600;line-height:1.2}.panel-heading p.analytics-subtitle{color:var(--text-secondary);font-size:var(--type-body);margin:2px 0 0;font-weight:400;line-height:1.25}.panel-back{border:1px solid var(--line);color:#6b8e7a;font-size:var(--type-body);background:#fbfcfa;border-radius:10px;align-items:center;gap:5px;margin-left:auto;padding:7px 11px;font-weight:700;display:inline-flex}.panel-back:hover{color:#31523c;border-color:#b7cabb}.chart-layout{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;margin:-4px 0 14px;display:grid}.chart-layout .records-tabs{margin-bottom:0}.chart-layout .records-tab{white-space:nowrap;padding:7px 10px}.chart-granularity-tabs{grid-column:1}.chart-granularity-tabs .records-tab{min-width:52px}.chart-granularity-tabs .records-tab:nth-child(2){min-width:64px}.chart-mode-tabs{grid-column:2}.chart-mode-tabs .records-tab{color:#8c9a91;flex:0 0 58px}.chart-mode-tabs .records-tab.active{color:var(--ink)}.chart-scroll{overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;cursor:grab;touch-action:pan-x pan-y;grid-column:1/-1;min-width:0;overflow-x:auto}.chart-scroll::-webkit-scrollbar{display:none}.chart-scroll:active{cursor:grabbing}.bar-chart{align-items:flex-end;gap:4px;height:180px;padding-top:22px;display:flex}.bar-chart.bars-12{min-width:738px}.bar-column{flex-direction:column;flex:1;align-items:center;min-width:0;height:100%;display:flex}.bar-value{color:var(--muted);font-size:var(--type-axis);white-space:nowrap;margin-bottom:6px}.bar-track{background:#f0f3ef;border-radius:8px 8px 4px 4px;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.bar-fill{width:100%;min-height:3px;transition:height var(--motion-duration)var(--motion-ease);border-radius:8px 8px 4px 4px}.bar-fill.bars-sleep{background:#83c995}.bar-fill.bars-water{background:#659dab}.bar-fill.bars-coffee{background:#b0895f}.bar-fill.bars-cigarettes{background:#a46f63}.bar-fill.bars-intimacy{background:#a63d68}.bar-fill.empty{background:0 0}.bar-label{color:var(--muted);font-size:var(--type-axis);margin-top:8px;font-weight:700}.bar-chart.bars-12 .bar-label,.bar-chart.bars-12 .bar-value{font-size:var(--type-axis)}.donut-layout{flex-wrap:wrap;align-items:center;gap:30px;display:flex}.donut-wrap{flex:none;width:160px;height:160px;position:relative}.donut-wrap svg{width:100%;height:100%}.donut-total{pointer-events:none;align-content:center;place-items:center;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.donut-total strong{font-size:var(--type-figure)}.donut-total span{color:var(--muted);font-size:var(--type-note)}.donut-empty{width:160px;height:160px;color:var(--muted);font-size:var(--type-note);text-align:center;background:#f4f7f3;border-radius:50%;place-items:center;padding:20px;display:grid}.donut-legend{flex:0 auto;gap:6px;width:min(320px,100%);min-width:0;margin:0;padding:0;list-style:none;display:grid}.food-ranking-summary{color:var(--muted);align-items:baseline;gap:7px;margin:2px 0 12px;display:flex}.food-ranking-summary strong{color:var(--ink);font-size:var(--type-figure)}.food-ranking-summary span{font-size:var(--type-note)}.food-ranking,.food-ranking-empty{width:100%;margin:0;padding:0;list-style:none}.food-ranking{gap:8px;display:grid}.food-ranking-empty{min-height:100px;color:var(--muted);font-size:var(--type-note);background:#f4f7f3;border-radius:12px;place-items:center;display:grid}.food-ranking-row{gap:5px;min-width:0;display:grid}.food-ranking-label{min-width:0;color:var(--ink);font-size:var(--type-body);justify-content:space-between;align-items:center;gap:12px;display:flex}.food-ranking-label span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.food-ranking-label strong{font-size:var(--type-body);flex:none}.food-ranking-track{background:#eef2ee;border-radius:999px;height:8px;overflow:hidden}.food-ranking-track span{border-radius:inherit;min-width:0;height:100%;transition:width var(--motion-duration)var(--motion-ease);display:block}.food-ranking-more{color:#5e7967;width:100%;font-size:var(--type-body);text-align:left;transition:transform var(--press-up);background:#f4f8f4;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-weight:700;display:flex}.food-ranking-more span:first-child{flex:1}.food-ranking-more:hover,.food-ranking-more:focus-visible{background:#edf4ed;border-color:#b7cabb}.legend-row{width:100%;min-width:0;color:var(--ink);font-size:var(--type-body);text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:9px;padding:8px 10px;display:flex}.legend-row.drillable{cursor:pointer}.legend-row.drillable:hover{border-color:var(--line);background:#fbfcfa}.legend-row:disabled{opacity:1}.legend-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.legend-swatch{border-radius:3px;flex:none;width:11px;height:11px}.legend-count{color:var(--muted);font-size:var(--type-note);flex:none;margin-left:2px}.latest-card{border:1px solid var(--line);min-width:0;color:inherit;cursor:pointer;transition:border-color var(--motion-duration)var(--motion-ease),box-shadow var(--motion-duration)var(--motion-ease),transform var(--press-up);background:linear-gradient(115deg,#fff,#fafdfa);border-radius:18px;margin-bottom:12px;padding:15px 58px 15px 16px;display:block;position:relative}.latest-card:hover{border-color:#b7cabb;transform:translateY(-1px);box-shadow:0 6px 18px #273a3614}.latest-card:active{transition:transform var(--press-down);transform:scale(.97)}.latest-card:focus-visible{outline-offset:3px;outline:3px solid #e3a46e80}.latest-info{min-width:0}.latest-info .eyebrow{margin-bottom:4px}.latest-info h2{color:var(--ink);font-size:var(--type-figure);letter-spacing:-.025em;margin:0 0 2px}.latest-desc{color:var(--muted);font-size:var(--type-body);margin:0 0 5px}.latest-stats{min-width:0;color:var(--muted);font-size:var(--type-note);white-space:nowrap;align-items:center;display:flex}.latest-stats span{align-items:center;gap:5px;display:inline-flex}.latest-stats span+span:before{content:"·";color:#c6cec8;margin:0 9px}@keyframes latest-check-pop{0%{transform:scale(.7)}55%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes latest-check-ring{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}@keyframes latest-check-spark{0%{opacity:0;transform:rotate(var(--spark-angle))translateY(0)scale(.35)}30%{opacity:1}to{opacity:0;transform:rotate(var(--spark-angle))translateY(-9px)scale(1)}}.latest-stats .latest-check{place-items:center;display:inline-grid;position:relative}.celebration-seal{z-index:50;pointer-events:none;background:#273a362e;place-items:center;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.celebration-seal .celebration-disk{color:#a16207;background:#fff;border-radius:50%;place-items:center;width:64px;height:64px;animation:.5s cubic-bezier(.34,1.56,.64,1) both latest-check-pop;display:grid;position:relative;box-shadow:0 10px 30px #14282340}.celebration-seal .celebration-ring,.celebration-seal .celebration-sparks{opacity:0;pointer-events:none;position:absolute;top:50%;left:50%}.celebration-seal .celebration-ring{border:2px solid #a16207;border-radius:50%;width:64px;height:64px;margin:-32px 0 0 -32px;animation:.8s ease-out both latest-check-ring}.celebration-seal .celebration-sparks{width:0;height:0}.celebration-seal .celebration-sparks i{background:#a16207;border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;animation:.9s ease-out both latest-check-spark;position:absolute;top:0;left:0}.celebration-seal .celebration-sparks i:first-child{--spark-angle:-60deg}.celebration-seal .celebration-sparks i:nth-child(2){--spark-angle:-20deg;animation-delay:60ms}.celebration-seal .celebration-sparks i:nth-child(3){--spark-angle:20deg;animation-delay:.12s}.celebration-seal .celebration-sparks i:nth-child(4){--spark-angle:60deg;animation-delay:.18s}.latest-edit{border:1px solid var(--line);color:#6b8e7a;pointer-events:none;background:#fbfcfa;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:14px;right:15px}.dashboard-section{border:1px solid var(--line);background:#fff;border-radius:20px}.calendar-card{padding:15px 17px}.records-card{padding:18px 20px 16px;scroll-margin-top:24px}.records-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:0;display:grid}.records-calendar-pane{min-width:0;padding-right:20px}.calendar-pane-heading{color:var(--muted);font-size:var(--type-card-title);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:0;font-weight:800;display:flex}.records-analytics-pane{border-left:1px solid var(--line);min-width:0;padding-left:20px}.records-tabs{border:1px solid var(--line);background:#fbfcfa;border-radius:13px;gap:5px;margin-bottom:14px;padding:4px;display:flex}.records-tab{min-width:0;color:var(--muted);font:inherit;font-size:var(--type-body);cursor:pointer;transition:color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),border-color var(--motion-duration)var(--motion-ease),box-shadow var(--motion-duration)var(--motion-ease),transform var(--press-up);background:0 0;border:1px solid #0000;border-radius:9px;flex:1;padding:8px 10px;font-weight:700}.records-tab:hover{color:#31523c}.records-tab.active{color:var(--ink);background:#fff;border-color:#c8d9cb;box-shadow:0 2px 7px #273a3612}.liquid-container-toggle{margin-bottom:0}.liquid-container-option{min-height:42px}.records-panel-title{color:var(--ink);font-size:var(--type-card-title);margin:0;font-weight:600;line-height:1.2}.records-panel-question{color:var(--text-secondary);font-size:var(--type-body);margin:3px 0 0;line-height:1.3}.records-panel-empty{border:1px dashed var(--line);color:var(--text-secondary);font-size:var(--type-body);border-radius:12px;margin:12px 0 0;padding:10px 12px;line-height:1.4}.records-summary-chip.up b{color:#31523c}.records-summary-chip.down b{color:#92523d}.records-summary-compare .records-summary-chip{background:#fbfcfa}.records-controls{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.records-series{background:var(--surface-caliza);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--line)transparent;border-radius:14px;flex-wrap:nowrap;flex:100%;gap:6px;min-width:0;padding:4px 16px;scroll-padding-inline:16px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 16px calc(100% - 16px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 16px,#000 calc(100% - 16px),#0000)}.records-series::-webkit-scrollbar{height:5px}.records-series::-webkit-scrollbar-track{background:0 0}.records-series::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px}.records-series .records-series-button{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:999px;flex:none;min-height:44px;padding:8px 14px}.records-series .records-series-button.on{border-color:var(--ink)}.records-series-button:focus-visible{outline-offset:-3px;outline:3px solid #ba8b008c}.records-range{border:1px solid var(--line);background:#fff;border-radius:999px;display:inline-flex;overflow:hidden}.records-range-button{min-height:40px;color:var(--muted);font-size:var(--type-body);transition:transform var(--press-up);background:0 0;border:0;padding:7px 12px;font-weight:700}.records-range-button.on{color:var(--text-on-dark);background:var(--ink)}.records-trend-frame{border:1px solid var(--line);--scroll-fade:#fff;background:#fff;border-radius:12px;margin-top:12px;padding:10px}.records-trend-chart{min-width:0}.records-trend-legend{color:var(--text-secondary);font-size:var(--type-note);flex-wrap:wrap;gap:14px;margin-top:8px;display:flex}.records-trend-legend i{vertical-align:middle;border-radius:2px;width:16px;height:3px;margin-right:6px;display:inline-block}.records-trend-legend i.previous{background:#7b8f83}.records-trend-summary{color:var(--text-secondary);font-size:var(--type-body);margin:8px 0 0;font-weight:700}.records-trend-summary.up{color:#31523c}.records-trend-summary.down{color:#92523d}.records-goals{gap:14px;margin:14px 0 0;padding:0;list-style:none;display:grid}.records-goal-top{color:var(--text-primary);font-size:var(--type-body);justify-content:space-between;gap:12px;margin:0;font-weight:700;display:flex}.records-goal-track{background:#eef1ea;border-radius:999px;height:9px;margin-top:6px;overflow:hidden}.records-goal-track span{background:#6c9677;border-radius:999px;height:100%;display:block}.records-goal.goal-water .records-goal-track span{background:#659dab}.records-goal.goal-coffee .records-goal-track span{background:#b0895f}.records-goal-detail{color:var(--text-secondary);font-size:var(--type-note);margin-top:5px;font-weight:600;display:block}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px;display:flex}.section-heading .eyebrow{margin-bottom:5px}.section-heading h2{font-size:var(--type-card-title);letter-spacing:-.055em;margin:0;font-weight:700}.section-title-inline{align-items:center;gap:8px;display:flex}.section-title-inline svg{color:#6b8e7a}.calendar-subtitle{color:var(--muted);font-size:var(--type-body);margin:4px 0 0}.expand-button{border:1px solid var(--line);color:#6b8e7a;font-size:var(--type-body);transition:transform var(--press-up),border-color var(--motion-duration)var(--motion-ease),color var(--motion-duration)var(--motion-ease);background:#fbfcfa;border-radius:10px;align-items:center;gap:6px;padding:6px 10px;font-weight:700;display:inline-flex}.expand-button:hover{color:#31523c;border-color:#b7cabb}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:5px;display:grid}.day-cell{color:#64748b;min-width:0;height:42px;transition:transform var(--press-up),border var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease);background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:12px;display:flex;position:relative}.day-cell:hover{z-index:1;border-color:#b7cabb;transform:translateY(-2px)}.day-cell.has-record{border-color:var(--day-color);color:#304d3b;background:var(--day-color)}@supports (color:color-mix(in lab,red,red)){.day-cell.has-record{background:color-mix(in srgb,var(--day-color)22%,white)}}.day-cell.today{box-shadow:0 0 0 2px var(--ink)}.day-number{font-size:13px;font-weight:700;line-height:1}.day-indicators{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;display:inline-flex}.day-indicator{width:11px;height:11px}.day-indicator.ind-sleep{color:#8c79a5}.day-indicator.ind-water{color:#659dab}.day-indicator.ind-food{color:#6c9677}.day-indicator.ind-coffee{color:#b0895f}.calendar-caption{color:var(--text-secondary);font-size:var(--type-note);justify-content:space-between;gap:15px;margin-top:12px;display:flex}.fab{z-index:5;color:#fff;background:var(--ink);font-size:var(--type-body);transition:transform var(--press-up),box-shadow var(--motion-duration)var(--motion-ease);border:0;border-radius:14px;align-items:center;gap:8px;padding:14px 18px;font-weight:800;display:inline-flex;position:fixed;bottom:27px;right:28px;box-shadow:0 12px 28px #273a3640}.fab:hover{transform:translateY(-3px);box-shadow:0 16px 32px #273a364d}.bottom-bar{display:none}@media(max-width:720px){.topbar,.main-content,.dashboard-content{width:min(calc(100% - 32px),var(--content-max))}.intro-section{display:block}.date-nav{gap:6px;width:100%}.date-nav-button{font-size:var(--type-body);padding:7px 10px}.progress-card{width:max-content;margin-top:26px}.emotion-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.emotion-option{min-height:96px}.bottom-grid{grid-template-columns:1fr;gap:22px;display:grid}}@media(max-width:800px){.records-layout{grid-template-columns:1fr;gap:18px}.records-calendar-pane{border-bottom:1px solid var(--line);padding-bottom:18px;padding-right:0}.records-analytics-pane{border-left:0;padding-left:0}}@media(max-width:639px){:root{--space-page-y:30px}.main-content,.dashboard-content{padding-bottom:var(--space-bottom-safe)}.card-title-text{font-size:var(--type-card-title)}.card-subtitle,.emotion-option,.tag-chip,.time-field{font-size:var(--type-body)}.secondary-button,.primary-button,.danger-button{min-height:44px;font-size:var(--type-body);padding:10px 14px}.dashboard-hero{margin-bottom:20px;display:block}.home-hero{margin-bottom:22px}.home-hero h1{font-size:clamp(2rem,8vw,2.5rem)}.home-actions{border-radius:17px;padding:15px}.quick-action-grid{grid-template-columns:1fr}.home-secondary-actions{justify-content:stretch}.home-secondary-actions .secondary-button{flex:1}.dashboard-hero h1{letter-spacing:-.025em;font-size:clamp(2rem,8vw,2.5rem);font-weight:900;line-height:1.1}.hero-summary{width:max-content;margin-top:20px}.bento-grid{--bento-gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bento-widget{border-radius:14px;padding:12px}.bento-widget p.metric-label{color:var(--text-primary);font-family:var(--font-brand);font-size:var(--type-card-title);font-weight:700;line-height:1.15}.bento-widget strong.data-highlight{color:var(--text-primary);font-size:var(--type-figure);font-weight:800;line-height:1.1}.bento-widget small.metric-sub{color:var(--text-secondary);font-size:var(--type-body);font-weight:400;line-height:1.25}.week-strip{gap:5px;margin-bottom:12px}.day-chip{border-radius:12px;padding:8px 2px 10px}.day-chip.today .chip-number{font-size:17px}.calendar-long{max-height:260px}.analytics-panel{border-radius:17px;padding:15px}.panel-heading{margin-bottom:14px}.panel-heading h3.analytics-title{font-size:var(--type-card-title);font-weight:600;line-height:1.2}.panel-heading p.analytics-subtitle{color:var(--text-secondary);font-size:var(--type-body);line-height:1.25}.panel-back{min-height:40px;font-size:var(--type-body);padding:7px 11px}.chart-layout{grid-template-columns:1fr;gap:12px;margin:-2px 0 14px}.chart-granularity-tabs{grid-column:1;width:100%}.chart-mode-tabs{grid-column:1;justify-self:end;width:max-content}.chart-scroll{grid-column:1;width:100%}.bar-chart{gap:4px;height:150px;padding-top:20px}.bar-value,.bar-label{font-size:var(--type-axis)}.donut-layout{justify-content:center;gap:16px}.donut-wrap,.donut-empty{width:130px;height:130px}.donut-legend{width:100%;min-width:0}.latest-card{border-radius:17px;padding:15px 54px 15px 14px}.latest-info h2.data-highlight{color:var(--text-primary);font-size:var(--type-figure);letter-spacing:-.025em;font-weight:800;line-height:1.1}.latest-desc{font-size:var(--type-body)}.latest-stats{font-size:var(--type-note);flex-wrap:wrap}.calendar-card{border-radius:17px;padding:15px}.records-card{padding:15px}.records-tabs{margin-bottom:12px}.records-tab{min-height:44px;font-size:var(--type-body);padding:8px 6px}.chart-layout .records-tabs{margin-bottom:0}.chart-layout .records-tab{padding:8px 6px}.section-heading h2{font-size:var(--type-card-title)}.calendar-subtitle{font-size:var(--type-body);line-height:1.4}.expand-button{min-height:40px;font-size:var(--type-body);padding:7px 11px}.legend-row{font-size:var(--type-body);padding:9px 10px}.legend-count,.donut-total span{font-size:var(--type-note)}.food-search-input input,.food-search-result,.food-create-button,.add-tag-button,.more-button{font-size:var(--type-body)}.day-cell{border-radius:9px}.day-indicator{width:9px;height:9px}.day-cell.has-record:before{width:5px;height:5px;top:4px;right:4px}.fab{padding:13px 15px;bottom:15px;right:15px}.finish-card{display:none}.main-content{padding-bottom:var(--space-bottom-safe)}#notes{scroll-margin-bottom:180px}.bottom-bar{z-index:30;padding:10px 14px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);background:#f6f7f3f0;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-bar .bottom-back,.bottom-bar .bottom-finish{border-radius:13px;flex:1;min-height:46px}}@media(max-width:430px){.topbar{width:calc(100% - 28px);padding:17px 0}.main-content,.dashboard-content{width:calc(100% - 28px)}.save-state{display:none}h1{font-size:clamp(2.25rem,11vw,2.75rem)}.card-header{gap:10px;padding:17px 15px}.card-body{padding:0 15px 18px}.direct-counter-card .counter-control{gap:9px;min-height:84px;padding:14px 15px}.direct-counter-card .counter-symbol{width:42px;height:42px}.direct-counter-card .counter-label strong{font-size:var(--type-card-title)}.direct-counter-card .counter-label small{font-size:var(--type-body)}.direct-counter-card .stepper{gap:7px}.direct-counter-card .stepper button{width:42px;height:42px;font-size:22px}.water-glass{width:36px;height:50px}.counter-actions{padding:0 15px}.emotion-grid{gap:3px}.emotion-option{min-height:88px;font-size:var(--type-body);padding:6px 1px}.emotion-face{width:38px;height:38px}.tag-chip{padding-left:6px;padding-right:10px}.time-card,.notes-card{padding:17px 15px}.modal-backdrop{align-items:end;padding:0}.settings-modal{border-radius:22px 22px 0 0;max-height:94vh}.modal-header,.settings-scroll,.modal-footer{padding-left:18px;padding-right:18px}.modal-header h2{font-size:var(--type-screen-title)}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.reminder-editor{gap:10px;min-width:0;display:grid}.day-pills{flex-wrap:wrap;gap:6px;display:flex}.day-pill{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);font:inherit;font-size:var(--type-body);cursor:pointer;transition:border-color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),color var(--motion-duration)var(--motion-ease),transform var(--press-up);background:#fff;border-radius:11px;place-items:center;font-weight:700;display:grid}.day-pill:hover{border-color:#b7cabb}.day-pill.active{color:#31523c;background:var(--sage);border-color:#9fc1a7}.primary-button:active,.secondary-button:active,.icon-button:active,.tag-chip:active,.emotion-option:active,.day-chip:active,.day-pill:active,.quick-action:active,.expand-button:active,.reminder-bell:active,.bento-widget.expandable:active,.bento-widget.navigable:active,.text-button:active,.text-icon-button:active{transition:transform var(--press-down);transform:scale(.97)}.reminder-row{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.reminder-row-label{font-size:var(--type-body);color:#56645d;flex:none;font-weight:700}.reminder-row .time-input-button{flex:140px;min-width:0}.reminder-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex}.reminder-warning{color:#b45555}.data-actions{gap:8px;display:grid}.counter-settings-group{border-bottom:1px solid var(--line);gap:14px;min-height:150px;padding:16px 0;display:grid}.counter-settings-group:last-child{border-bottom:0}.counter-settings-heading{align-items:center;gap:10px;display:flex}.counter-settings-heading h3{font-size:var(--type-card-title);margin:0 0 3px}.counter-settings-heading p{color:var(--muted);font-size:var(--type-body);margin:0}.counter-settings-reminder{border-top:1px solid var(--line);gap:10px;min-height:250px;padding-top:8px;display:grid}.counter-settings-reminder h3{font-size:var(--type-card-title);margin:0}.counters-screen .field-label{color:var(--ink);font-size:var(--type-body);gap:6px;font-weight:700;display:grid}.counters-screen .field-label input{border:1px solid var(--line);width:100%;color:var(--ink);background:#fbfcfa;border-radius:10px;padding:10px 12px}.counters-screen .field-label small{color:var(--muted);font-size:var(--type-body);font-weight:400}.calendar-backdrop{padding:20px}.calendar-modal{--scroll-fade:#fff;width:min(1120px,100% - 40px);max-height:94vh;animation:sheet-in calc(.4s*var(--sheet-speed))cubic-bezier(.32,.72,0,1);background:#fff;border-radius:24px;flex-direction:column;padding:24px 26px 20px;display:flex;overflow:hidden;box-shadow:0 24px 60px #14282340}.calendar-modal-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.calendar-modal-title{font-size:var(--type-screen-title);letter-spacing:-.02em;color:#273a36;margin:0;font-weight:600}.calendar-modal-title span{color:var(--text-secondary);font-weight:400}.calendar-modal-scroll{overscroll-behavior:contain;flex:1;min-height:0;margin:16px 0;padding-right:4px;position:relative;overflow-y:auto}.calendar-modal .calendar-long{max-height:none}.calendar-modal .calendar-weekdays span{font-size:var(--type-note)}.calendar-modal .day-cell{height:64px;font-size:14px}.calendar-modal .day-number{font-size:16px}.calendar-modal .day-indicators{gap:5px}.calendar-modal .day-indicator{width:14px;height:14px}.calendar-legend{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.calendar-legend-title{color:var(--ink);font-size:var(--type-card-title);letter-spacing:-.01em;margin:0 0 10px}.calendar-legend-title:not(:first-child){margin-top:18px}.calendar-legend-grid{flex-wrap:wrap;gap:6px 16px;display:flex}.calendar-legend-item{color:#56645d;font-size:var(--type-note);align-items:center;gap:7px;display:inline-flex}.calendar-legend-item.legend-sleep svg{color:#8c79a5}.calendar-legend-item.legend-water svg{color:#659dab}.calendar-legend-item.legend-food svg{color:#6c9677}.calendar-legend-item.legend-coffee svg{color:#b0895f}.calendar-legend-swatch{border-radius:3px;width:11px;height:11px;display:inline-block}.calendar-legend-note{color:var(--muted);font-size:var(--type-note);margin:12px 0 0}.calendar-modal-footer{border-top:1px solid var(--line);color:var(--text-secondary);font-size:var(--type-note);flex-shrink:0;justify-content:space-between;align-items:center;gap:15px;padding-top:14px;display:flex}@media(max-width:639px){.calendar-backdrop{padding:0}.calendar-modal{border-radius:0;width:100%;height:100dvh;max-height:100dvh;padding:14px 14px 18px}.calendar-modal-scroll{margin:12px 0}.calendar-modal .day-cell{height:52px;font-size:12px}.calendar-modal .day-number{font-size:14px}.calendar-modal .day-indicators{gap:3px}.calendar-modal .day-indicator{width:10px;height:10px}.calendar-modal .calendar-weekdays span{font-size:var(--type-note)}.settings-modal,.calendar-modal{position:relative}.settings-modal:before,.calendar-modal:before{content:"";background:var(--line);pointer-events:none;border-radius:999px;width:40px;height:5px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.modal-header,.calendar-modal-header{touch-action:none}}.food-picker,.extra-picker{gap:10px;display:grid}.extras-more-panel{align-items:flex-start}.more-panel{border:1px solid var(--line);background:#fbfcfa;border-radius:14px;flex-wrap:wrap;gap:8px;max-height:240px;padding:10px;display:flex;overflow-y:auto}.liquid-form{gap:12px;margin-bottom:10px;display:grid}.liquid-container-fieldset{border:0;min-width:0;margin:0;padding:0}.liquid-container-fieldset legend{color:#56645d;font-size:var(--type-body);margin-bottom:7px;font-weight:700}.liquid-container-toggle{scrollbar-width:thin;-webkit-overflow-scrolling:touch;gap:6px;display:flex;overflow-x:auto}.liquid-container-option{border:1px solid var(--line);color:#64736b;min-width:0;min-height:42px;font:inherit;font-size:var(--type-body);cursor:pointer;transition:border-color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),color var(--motion-duration)var(--motion-ease),box-shadow var(--motion-duration)var(--motion-ease);background:#fff;border-radius:10px;flex:1 0 auto;padding:8px 10px;font-weight:700}.liquid-container-option:hover{border-color:#9fc1a7}.liquid-amount-row{grid-template-columns:minmax(0,1fr) 86px;gap:8px;display:grid}.liquid-field{color:#56645d;min-width:0;font-size:var(--type-body);gap:6px;font-weight:700;display:grid}.liquid-field input,.liquid-field select{box-sizing:border-box;border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:inherit;font-size:var(--type-body);background:#fff;border-radius:10px;padding:10px 12px;font-weight:400}.liquid-field input:focus,.liquid-field select:focus,.liquid-container-option:focus-visible{outline-offset:1px;border-color:#7cae8b;outline:3px solid #6fa38038}.liquid-error{color:#a34e4e;font-size:var(--type-body);margin:-3px 0 0}.liquid-save{justify-self:start;min-height:40px;padding:9px 16px}@media(min-width:640px){.liquid-amount-row{align-items:flex-end;gap:8px;display:flex}.liquid-amount-row .liquid-field:first-child{flex:none}.liquid-amount-row .liquid-field:first-child input{width:100px}.liquid-amount-row .liquid-field:last-child{flex:none}.liquid-amount-row .liquid-field:last-child select{width:84px}}.liquid-list{gap:8px;margin-bottom:10px;display:grid}.liquid-row{background:#f8fbfb;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.liquid-symbol{color:#5b8fa0;place-items:center;display:grid}.liquid-label{gap:1px;display:grid}.liquid-label strong{font-size:var(--type-body);color:var(--ink)}.liquid-label small{font-size:var(--type-note);color:var(--text-secondary)}.liquid-remove{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;margin-left:auto;display:grid}.liquid-remove:hover{color:#b45555;background:#fdf0f0}.food-search{gap:8px;max-width:480px;margin-top:12px;display:grid}.food-search-input{border:1px solid var(--line);transition:border var(--motion-duration)var(--motion-ease),box-shadow var(--motion-duration)var(--motion-ease);background:#fff;border-radius:12px;align-items:center;gap:9px;padding:0 12px;display:flex}.food-search-input:focus-within{border-color:#9fc1a7;box-shadow:0 0 0 3px #8fb59a2e}.food-search-input svg{color:#8aa098;flex-shrink:0}.food-search-input input{min-width:0;color:var(--ink);font-size:var(--type-body);background:0 0;border:0;outline:none;flex:1;padding:12px 0}.food-search-input input::placeholder{color:#64748b}.food-search-clear{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:transform var(--press-up);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.food-search-clear:hover{color:#5a6a63;background:#f1f5f1}.food-search-results{gap:4px;margin:0;padding:0;list-style:none;display:grid}.food-search-result{color:#4a5750;width:100%;min-height:44px;font-size:var(--type-body);text-align:left;cursor:pointer;transition:background var(--motion-duration)var(--motion-ease),transform var(--press-up);background:#fbfcfa;border:0;border-radius:11px;align-items:center;gap:9px;padding:8px 12px;display:flex}.food-search-result:hover{background:#f1f5f1}.food-search-result.selected{color:#31523c;background:var(--sage)}.food-search-result .result-check{color:#7c9684;place-items:center;display:grid}.food-search-result.selected .result-check{color:#3e7654}.food-create{background:#fdfefb;border:1px dashed #b8c9bc;border-radius:12px;gap:5px;padding:10px 12px;display:grid}.food-no-match{font-size:var(--type-body);color:var(--text-secondary);margin:0}.food-create-button{color:#3e7654;width:100%;min-height:40px;font-weight:700;font-size:var(--type-body);text-align:left;cursor:pointer;transition:transform var(--press-up);background:0 0;border:0;align-items:center;gap:7px;padding:0;display:inline-flex}.food-create-button:hover{color:#2f5a41}.settings-backdrop{padding:var(--space-page)}.settings-shell{width:min(680px,100%)}.settings-header{flex-direction:column;align-items:stretch;gap:14px;padding:18px 25px 16px}.settings-header-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-back{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);transition:transform var(--press-up),color var(--motion-duration)var(--motion-ease),border-color var(--motion-duration)var(--motion-ease);background:#ffffffb3;border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.settings-back:hover{color:var(--ink);border-color:#b7cabb}.settings-menu,.settings-screen-content{padding:6px 0 14px}.settings-menu>.settings-help{margin:18px 0 0}.settings-nav{gap:8px;display:grid}.settings-nav-item{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;transition:border var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),transform var(--press-up);background:#fff;border-radius:15px;align-items:center;gap:13px;padding:14px 13px;display:flex}.settings-nav-item:hover{background:#fbfdfb;border-color:#b7cabb;transform:translateY(-1px)}.settings-nav-item>span:nth-child(2){flex:1;gap:3px;min-width:0;display:grid}.settings-nav-item strong{font-size:var(--type-card-title)}.settings-nav-item small{color:var(--muted);font-size:var(--type-body);line-height:1.35}.settings-nav-chevron{color:var(--text-secondary);flex:none}.settings-nav-icon{color:#6e9678;background:#e8f3e9;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.settings-nav-icon.blue{color:#6099a5;background:#e5f3f5}.settings-nav-icon.warm{color:#c3844e;background:var(--accent-soft)}.settings-nav-icon.cycle{color:#b03a52;background:#fbe9ec}.settings-reset{margin-top:18px}.settings-screen-footer{border-top:1px solid var(--line);background:#fbfcfa;justify-content:flex-start;padding:14px 25px;display:flex}.settings-screen-content>.settings-help{max-width:560px;margin-bottom:18px}.settings-group-card,.settings-screen-content>.module-list,.settings-screen-content .settings-subsection,.settings-screen-content .tag-section{border:1px solid var(--line);background:#fbfcfa;border-radius:16px;padding:16px}.settings-group-card{gap:14px;margin-bottom:16px;display:grid}.settings-group-card .settings-help{margin-bottom:0}.settings-screen-content>.module-list{gap:6px;margin-bottom:16px;display:grid}.settings-screen-content .settings-subsection,.counters-screen .counter-settings-group{margin-bottom:16px}.module-row-button{text-align:left;width:100%;transition:transform var(--press-up);background:0 0;border:1px solid #0000}.module-row-button:hover{border-color:var(--line);background:#fbfcfa}.module-row-button .switch{width:34px;height:20px;transition:background var(--motion-duration)var(--motion-ease);background:#dce3dd;border-radius:999px;align-items:center;margin-left:auto;padding:2px;display:grid}.module-row-button .switch span{width:16px;height:16px;transition:transform var(--motion-duration)var(--motion-ease);background:#fff;border-radius:50%;box-shadow:0 1px 3px #273a3633}.module-row-button .switch.on{background:#6e9b77}.module-row-button .switch.on span{transform:translate(14px)}.scale-toolbar{color:var(--muted);font-size:var(--type-body);justify-content:space-between;align-items:center;gap:15px;margin-bottom:17px;display:flex}.scale-toolbar select,.scale-editor select,.merge-panel select{border:1px solid var(--line);color:var(--ink);background:#fbfcfa;border-radius:10px;padding:9px 10px}.scale-preview{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:18px;display:grid}.scale-face{border:1px solid var(--line);min-width:0;color:var(--muted);font-size:var(--type-body);text-align:center;transition:transform var(--press-up);background:#fbfcfa;border-radius:14px;place-items:center;gap:7px;padding:10px 4px;display:grid}.scale-face:hover,.scale-face.selected{color:var(--ink);background:#f3faf3;border-color:#9fc1a7}.scale-face-icon{width:52px;height:52px;color:var(--emotion-stroke,#6e9b77);background:var(--emotion-fill,#edf4ed);border-radius:50%;place-items:center;display:grid}.scale-face-icon svg{fill:var(--emotion-fill,transparent);stroke:var(--emotion-stroke,currentColor)}.scale-face-icon.large{width:58px;height:58px}.scale-editor{border:1px solid var(--line);background:#fbfcfa;border-radius:16px;gap:14px;padding:16px;display:grid}.scale-editor-heading{align-items:center;gap:11px;display:flex}.scale-editor-heading>div{gap:3px;display:grid}.scale-editor-heading strong{font-size:var(--type-card-title)}.scale-editor-heading small{color:var(--muted);font-size:var(--type-note)}.field-label{color:#56645d;font-size:var(--type-body);gap:5px;font-weight:700;display:grid}.field-label input:not([type=color]),.field-label select{border:1px solid var(--line);width:100%;color:var(--ink);font-size:var(--type-body);background:#fff;border-radius:10px;padding:10px 11px;font-weight:400}.field-label small{color:var(--muted);font-size:var(--type-note);font-weight:400}.color-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.color-fields input[type=color]{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;height:39px;padding:3px}.settings-search{border:1px solid var(--line);color:#8aa098;background:#fff;border-radius:12px;align-items:center;gap:9px;margin-bottom:18px;padding:0 12px;display:flex}.settings-search:focus-within{border-color:#9fc1a7;box-shadow:0 0 0 3px #8fb59a2e}.settings-search input{min-width:0;color:var(--ink);font-size:var(--type-body);background:0 0;border:0;outline:0;flex:1;padding:12px 0}.settings-search button{width:27px;height:27px;color:var(--muted);transition:transform var(--press-up);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.tag-section+.tag-section{margin-top:16px}.tag-section h3{font-size:var(--type-card-title);align-items:center;gap:7px;margin-bottom:8px;font-weight:700;display:flex}.tag-section h3 small{color:var(--muted);font-size:var(--type-note);font-weight:400}.tag-list{gap:5px;display:grid}.tag-management-row{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:10px;min-width:0;padding:10px 11px;display:flex}.tag-management-main{flex:1;gap:3px;min-width:0;display:grid}.tag-management-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--type-body);overflow:hidden}.tag-management-main small{color:var(--muted);font-size:var(--type-note)}.tag-management-main input{border:1px solid var(--line);min-width:0;font-size:var(--type-body);border-radius:8px;padding:7px 9px}.tag-management-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.text-icon-button{color:#356b4a;font-size:var(--type-body);transition:transform var(--press-up),background var(--motion-duration)var(--motion-ease);background:0 0;border:0;border-radius:7px;align-items:center;gap:4px;padding:5px 6px;font-weight:700;display:inline-flex}.text-icon-button:hover{background:#edf4ed}.icon-button.small{border-radius:8px;width:28px;height:28px}.icon-button:disabled,.icon-button.danger:disabled{cursor:not-allowed;opacity:.35}.settings-empty,.settings-note{color:var(--muted);font-size:var(--type-note);align-items:center;gap:6px;margin:12px 0 0;display:flex}.merge-panel{background:#f8fbf9;border:1px dashed #b8c9bc;border-radius:14px;gap:9px;margin-top:17px;padding:14px;display:grid}.merge-panel strong{font-size:var(--type-card-title)}.merge-panel p{color:var(--muted);font-size:var(--type-body);margin:0}.merge-panel>div{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tags-screen .tag-management-main small,.tags-screen .settings-block-title small,.tags-screen .settings-empty{font-size:var(--type-body)}.settings-panel .tag-list>div.merge-panel{border:1px dashed #b8c9bc;margin:6px 0 8px}.danger-button{color:#fff;font-size:var(--type-body);transition:background var(--motion-duration)var(--motion-ease),transform var(--press-up);background:#b42318;border:1px solid #8f1d15;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-weight:700;display:inline-flex}.danger-button:hover{background:#8f1d15}.reminders-screen{gap:15px;display:grid}.reminder-tools{border:1px solid var(--line);background:#fbfcfa;border-radius:15px;gap:10px;padding:14px;display:grid}.reminder-tools .settings-help{margin:0}.reminder-tools .secondary-button{justify-self:start;min-height:42px}.reminder-card{background:#fbffff;border:1px solid #c8e1e5;border-radius:16px;min-height:180px;padding:15px}.reminder-card.context-highlight{border-color:var(--ink);animation:1.8s ease-in-out reminder-highlight}.reminder-card-heading{align-items:center;gap:10px;margin-bottom:15px;display:flex}.reminder-card-heading div{gap:3px;display:grid}.reminder-card-heading h3{font-size:var(--type-card-title);margin:0}.reminder-card-heading p{color:var(--muted);font-size:var(--type-note);margin:0}.reminder-frequency{grid-template-columns:1.2fr 1fr 1fr;gap:9px;min-width:0;display:grid}.reminder-frequency .field-label{min-width:0}.reminder-frequency .time-input-button{width:100%;min-width:0}.inline-field{color:var(--muted);align-items:center;gap:5px;font-weight:400;display:flex}.inline-field input{border:1px solid var(--line);width:68px;color:var(--ink);background:#fff;border-radius:9px;padding:9px 8px}.reminder-preferences{color:#56645d;font-size:var(--type-body);gap:14px;margin-top:5px;display:flex}.reminder-preferences label{align-items:center;gap:6px;display:inline-flex}.reminder-summary{color:#66929b;font-size:var(--type-note);margin:0}.data-actions .secondary-button{justify-content:flex-start;min-height:43px}.settings-panel{border:1px solid var(--line);background:#fbfcfa;border-radius:16px;padding:2px 16px}.settings-panel>.module-list,.settings-panel>.tag-section,.settings-panel>.settings-subsection,.settings-panel>.settings-group-card,.settings-panel>.scale-editor,.settings-panel>.counter-settings-group,.settings-panel>.data-actions{background:0 0;border:0;border-radius:0;margin:0;padding:14px 0}.settings-panel>:not(:first-child),.settings-panel .module-list>:not(:first-child),.settings-panel .tag-list>:not(:first-child){border-top:1px solid var(--line)}.settings-panel .module-list{gap:0;display:grid}.settings-panel .tag-list{gap:0}.settings-panel .tag-section+.tag-section{margin-top:0}.settings-panel .module-row,.settings-panel .module-row:hover,.settings-panel .module-row.active,.settings-panel .module-row-button,.settings-panel .module-row-button:hover,.settings-panel .module-row-button.active{background:0 0;border-radius:0}.settings-panel .module-row,.settings-panel .module-row-button{border:0}.settings-panel .module-row{padding:13px 0}.settings-panel .module-row-button:hover{background:#f1f6f1}.settings-panel .tag-management-row{background:0 0;border:0;border-radius:0;padding:11px 0}.settings-block-title{font-size:var(--type-card-title);align-items:center;gap:7px;margin:0 0 8px;font-weight:700;display:flex}.settings-block-title small{color:var(--muted);font-size:var(--type-note);font-weight:400}.settings-screen-content>*+.settings-block-title{margin-top:22px}.settings-panel-toned{background:#f1f7f0;border-color:#d8e7d8}.settings-panel-toned .module-row-button:hover{background:#e5efe3}.settings-panel>.tag-list{margin:0;padding:14px 0}.module-row-static{cursor:default}.module-fixed-tag{color:#31523c;font-size:var(--type-note);background:#eaf3eb;border-radius:999px;flex:none;margin-left:auto;padding:3px 9px;font-weight:700}.settings-mode-actions{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.settings-mode-actions .secondary-button[aria-pressed=true]{color:#31523c;box-shadow:none;background:#eaf3eb;border-color:#6e9b77}.settings-subsection>h3{font-size:var(--type-card-title);margin:0 0 7px;font-weight:700}@media(max-width:639px){.settings-backdrop{align-items:end;padding:0}.settings-shell{border-radius:22px 22px 0 0;width:100%;min-height:92dvh;max-height:100dvh}.settings-header,.settings-scroll,.settings-screen-footer{padding-left:18px;padding-right:18px}.settings-scroll{padding-bottom:18px}.settings-help{font-size:var(--type-body)}.settings-nav-item{padding:15px 13px}.settings-nav-item strong{font-size:var(--type-card-title)}.settings-nav-item small{font-size:var(--type-body)}.module-row{padding:12px 11px}.module-row strong{font-size:var(--type-card-title)}.module-row small,.tag-management-main strong{font-size:var(--type-body)}.tag-management-main small{font-size:var(--type-note)}.settings-search input{font-size:var(--type-body)}.scale-preview{gap:4px}.scale-face{font-size:var(--type-body);padding-left:1px;padding-right:1px}.scale-face-icon{width:43px;height:43px}.reminder-frequency{grid-template-columns:1fr 1fr}.reminder-frequency .field-label:first-child{grid-column:1/-1}.tag-management-row{flex-direction:column;align-items:flex-start}.tag-management-actions{justify-content:flex-start;width:100%}}@media(max-width:380px){.reminder-frequency{grid-template-columns:1fr}.reminder-frequency .field-label:first-child{grid-column:auto}}.panel-heading>div:not(.panel-heading-icon),.calendar-pane-heading>span{flex:auto;min-width:0}.panel-heading .expand-button,.calendar-pane-heading .expand-button{flex:none;margin-left:auto}.sleep-granularity-tabs{flex-shrink:0;margin:16px 0 0}.sleep-granularity-tabs .records-tab{flex:1}.sleep-modal .calendar-modal-scroll{flex-direction:column;gap:14px;display:flex}.sleep-modal .analytics-panel{margin-bottom:0}.sleep-line-scroll{overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none;overflow-x:auto}.sleep-line-scroll::-webkit-scrollbar{display:none}.sleep-line-chart-frame{width:100%;min-width:0}.sleep-line-chart{width:auto;min-width:0;max-width:none;height:auto;display:block}.sleep-grid{stroke:#e4ebe4;stroke-width:1px}.sleep-tick,.sleep-axis{fill:#8c9a91;font-size:var(--type-axis);font-weight:600}.sleep-dot-label{fill:#54645c;font-size:var(--type-axis);font-weight:700}.sleep-caption{color:var(--text-secondary);font-size:var(--type-body);margin:12px 0 0}.sleep-reference-note{max-width:62ch;margin-top:18px;padding:0 2px;line-height:1.45}.sleep-summary-lead,.records-summary-lead{color:var(--text-secondary);font-size:var(--type-body);margin:0;line-height:1.3}.sleep-summary-lead b,.records-summary-lead b{color:var(--ink);font-size:var(--type-figure);font-weight:800;line-height:1.1}.sleep-summary-chips,.records-summary-chips{flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;display:flex}.sleep-summary-chip,.records-summary-chip{border:1px solid var(--line);color:var(--text-secondary);font-size:var(--type-body);white-space:nowrap;background:#f4f8f4;border-radius:999px;padding:5px 12px}.sleep-summary-chip b,.records-summary-chip b{color:var(--ink);margin-left:2px;font-weight:800}.intimacy-modal .calendar-modal-scroll{flex-direction:column;gap:14px;display:flex}.intimacy-modal .analytics-panel{margin-bottom:0}.intimacy-granularity-tabs{flex-shrink:0;margin:16px 0 0}.intimacy-granularity-tabs .records-tab{flex:1}.intimacy-modal-actions{flex-shrink:0;justify-content:flex-end;margin-top:12px;display:flex}.intimacy-config-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.intimacy-config-item{border:1px solid var(--line);min-height:44px;color:var(--ink);font-size:var(--type-body);background:#fbfcfa;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;font-weight:600;display:flex}.intimacy-config-item input{accent-color:#a63d68;flex:none;width:20px;height:20px}.intimacy-config-families{gap:16px;display:grid}.intimacy-config-family{gap:8px;display:grid}.intimacy-config-family-head{align-items:center;gap:8px;min-height:44px;display:flex}.intimacy-config-family-title{color:var(--text-secondary-strong);font-size:var(--type-eyebrow);letter-spacing:.04em;margin:0;font-weight:800}.intimacy-config-family-count{color:var(--muted);font-size:var(--type-note);font-weight:600}.intimacy-config-family-toggle{place-items:center;min-width:44px;min-height:44px;margin-left:auto;display:grid}.intimacy-config-family-toggle input{accent-color:#a63d68;width:20px;height:20px}.intimacy-protection-tabs{background:var(--surface-caliza);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;border:none;border-radius:14px;flex-wrap:nowrap;gap:6px;margin:2px 0 12px;padding:4px 16px;scroll-padding-inline:16px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 16px calc(100% - 16px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 16px,#000 calc(100% - 16px),#0000)}.intimacy-protection-tabs::-webkit-scrollbar{display:none}.intimacy-protection-tabs .records-tab{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:999px;flex:none;min-height:44px;padding:8px 14px}.intimacy-protection-tabs .records-tab.active{color:#fff;background:var(--ink);border-color:var(--ink)}.intimacy-protection-tabs .records-tab:focus-visible{outline-offset:-3px;outline:3px solid #ba8b008c}.intimacy-chart .sleep-line-scroll{margin-top:4px}.intimacy-card-actions{justify-content:flex-end;margin-bottom:10px;display:flex}@media(min-width:640px){.intimacy-config-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.scroll-hint{--scroll-fade:var(--paper);position:relative}.scroll-hint:before,.scroll-hint:after{content:"";pointer-events:none;opacity:0;width:22px;transition:opacity var(--motion-duration)var(--motion-ease);position:absolute;top:0;bottom:0}.scroll-hint:before{background:linear-gradient(to right,var(--scroll-fade),transparent);left:0}.scroll-hint:after{background:linear-gradient(to left,var(--scroll-fade),transparent);right:0}.scroll-hint.can-left:before,.scroll-hint.can-right:after{opacity:1}.scroll-hint-button{z-index:2;border:1px solid var(--line);color:#31523c;width:40px;height:40px;transition:transform var(--press-up);background:#fffffff2;border-radius:999px;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 14px #273a3624}.scroll-hint-button.left{left:4px}.scroll-hint-button.right{right:4px}.scroll-hint-button:hover{border-color:#b7cabb}.update-banner{border-bottom:1px solid var(--line);color:var(--ink);font-size:var(--type-body);background:#eef4ec;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-weight:600;display:flex}.update-banner-button{color:#fff;min-height:40px;font-size:var(--type-body);transition:transform var(--press-up);background:#31523c;border:none;border-radius:999px;flex:none;padding:8px 16px;font-weight:700}.update-banner-button:hover{background:#243d2c}@media(max-width:360px){.expand-button{border-radius:999px;justify-content:center;gap:0;min-width:40px;min-height:40px;padding:7px}.expand-button .expand-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.activity-card{gap:12px;display:grid}.activity-control{align-items:center;gap:10px;display:flex}.activity-selector{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 20px;display:grid}.activity-selector:last-child{padding-bottom:18px}.activity-option{border:1px solid var(--line);min-height:56px;color:var(--ink);transition:transform var(--press-up);background:#fbfcfa;border-radius:14px;place-items:center;gap:2px;padding:8px 4px;display:grid}.activity-option strong{font-size:var(--type-card-title)}.activity-option span{font-size:var(--type-body);font-weight:700}.activity-option:hover{border-color:#b7cabb}.activity-option.selected{color:#31523c;background:#eef4ec;border-color:#31523c}.activity-feedback{color:var(--text-secondary);font-size:var(--type-body);margin:0;padding:0 20px 18px;line-height:1.45}.app-shell{padding-bottom:104px}.bottom-nav{z-index:5;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);background:#ffffffc7;border:1px solid #ffffffb3;border-radius:24px;grid-template-columns:1fr 1fr auto 1fr;align-items:end;gap:2px;width:min(560px,100% - 24px);padding:8px 10px 10px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 50px #2a282529}.bottom-nav-item{min-width:64px;min-height:54px;color:var(--muted);font-size:var(--type-menu);transition:transform var(--press-up),color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease);background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-weight:700;display:flex}.bottom-nav-item:hover{color:var(--ink);background:#0f172a0d}.bottom-nav-item.active{color:var(--ink);background:var(--sage)}.bottom-nav-register{min-width:76px;color:var(--ink);font-size:var(--type-menu);transition:transform var(--press-up),color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease);background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;font-weight:800;display:flex}.bottom-nav-fab{color:#fff;background:var(--ink);width:58px;height:58px;transition:transform var(--motion-duration)var(--motion-ease);border:3px solid #fff;border-radius:50%;place-items:center;margin-top:-30px;display:grid;box-shadow:0 12px 26px #2a28254d}.bottom-nav-register:hover .bottom-nav-fab{transform:translateY(-2px)}.bottom-nav-item:active,.bottom-nav-register:active{transition:transform var(--press-down);transform:scale(.97)}.fab{display:none}.notice-stack{z-index:60;top:calc(12px + env(safe-area-inset-top));pointer-events:none;gap:8px;width:min(560px,100% - 32px);display:grid;position:fixed;left:50%;transform:translate(-50%)}.app-shell:has(>.update-banner) .notice-stack{top:calc(72px + env(safe-area-inset-top))}.notice{width:100%;min-height:44px;color:var(--ink);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font:inherit;font-size:var(--type-body);text-align:left;pointer-events:auto;background:#ffffffc7;border:1px solid #ffffffb3;border-radius:20px;align-items:center;gap:8px;padding:12px 16px;font-weight:700;animation:.4s cubic-bezier(.32,.72,0,1) notice-in;display:flex;box-shadow:0 18px 50px #2a282529}.notice svg{color:var(--sage-deep);flex:none}.notice-text{min-width:0}.notice.is-leaving{animation:.25s ease-in forwards notice-out}@keyframes notice-in{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}@keyframes notice-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-24px)}}@media(max-width:639px){.bottom-bar{width:min(var(--content-max),calc(100% - 28px));-webkit-backdrop-filter:none;background:0 0;border:0;margin:18px auto 0;padding:0;position:static}}.time-input-button{border:1px solid var(--line);min-height:44px;color:var(--ink);font:inherit;font-size:var(--type-body);font-variant-numeric:tabular-nums;cursor:pointer;transition:border-color var(--motion-duration)var(--motion-ease),background var(--motion-duration)var(--motion-ease),transform var(--press-up);background:#fbfcfa;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-weight:700;display:inline-flex}.time-input-button:hover{background:#fff;border-color:#b7cabb}.time-picker-overlay{z-index:40;background:#fff;place-items:center;width:100vw;padding:24px;display:grid;position:fixed;top:0;bottom:0;left:0}.time-picker-sheet{justify-items:center;gap:22px;width:min(420px,100%);animation:.32s cubic-bezier(.32,.72,0,1) sheet-in;display:grid}.time-picker-title{color:var(--muted);font-size:var(--type-body);text-align:center;margin:0;font-weight:700}.time-picker-wheels{justify-content:center;align-items:center;gap:16px;display:flex}.time-picker-separator{color:var(--ink);font-size:var(--type-figure);font-weight:800}.time-wheel{border:1px solid var(--line);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border-radius:16px;width:108px;position:relative;overflow:hidden}.time-wheel:active{cursor:grabbing}.time-wheel:focus-visible{outline-offset:3px;outline:3px solid #ba8b008c}.time-wheel-band{z-index:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--sage);position:absolute;left:0;right:0}.time-wheel-rows{z-index:1;transition:transform .14s var(--motion-ease);position:absolute;top:0;right:0;bottom:0;left:0}.time-wheel[data-dragging=true] .time-wheel-rows{transition:none}.time-wheel-row{color:var(--muted);font-variant-numeric:tabular-nums;place-items:center;font-size:1rem;font-weight:700;display:grid;position:absolute;left:0;right:0}.time-wheel-row.is-near{color:var(--text-secondary);font-size:1.25rem}.time-wheel-row.is-current{color:var(--ink);letter-spacing:-.04em;font-size:2.125rem;font-weight:800}.time-wheel-fade{z-index:2;pointer-events:none;height:20%;position:absolute;left:0;right:0}.time-wheel-fade.top{background:linear-gradient(#fff,#fff0);top:0}.time-wheel-fade.bottom{background:linear-gradient(#fff0,#fff);bottom:0}.time-picker-actions{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.time-picker-actions .primary-button,.time-picker-actions .secondary-button{min-height:56px;font-size:var(--type-body);border-radius:14px}@media(max-width:360px){.time-picker-wheels{gap:10px}.time-wheel{width:96px}}@media(max-height:520px){.time-picker-sheet{gap:14px}.time-picker-actions .primary-button,.time-picker-actions .secondary-button{min-height:48px}}.date-picker-wheels{justify-content:center;align-items:center;gap:10px;width:100%;display:flex}.date-picker-wheels .time-wheel{flex:1 1 0;width:auto;min-width:0}.date-picker-wheels .date-wheel-day{flex-grow:.85}.date-picker-wheels .date-wheel-month{flex-grow:1.05}.date-picker-wheels .date-wheel-year{flex-grow:1.2}.date-picker-wheels .time-wheel-row{white-space:nowrap}.date-picker-wheels .time-wheel-row.is-current{letter-spacing:-.03em;font-size:1.5rem}.date-picker-wheels .time-wheel-row.is-near{font-size:1.0625rem;font-weight:600}@media(max-width:360px){.date-picker-wheels{gap:7px}.date-picker-wheels .time-wheel-row.is-current{font-size:1.3125rem}}.quick-sheet-card{cursor:pointer;transition:transform var(--press-up),border-color var(--motion-duration)var(--motion-ease)}.quick-sheet-card .counter-control{background:0 0}.quick-sheet-card .counter-label{flex:1;min-width:0}.quick-sheet-card .counter-value{color:var(--ink);font-size:var(--type-body);font-weight:700}.quick-sheet-card:hover{border-color:#b9c6d2}.quick-sheet-card.cycle{background:#fbeef1;border-color:#f0c6d2}.quick-sheet-card.cycle .counter-symbol{color:#b03a52;background:#f7dbe3}.quick-sheet-card.cycle .counter-value{color:#8d2f49}.quick-sheet-card.activity{background:#e8f0f4;border-color:#cfe0e8}.quick-sheet-card.activity .counter-symbol{color:#4a7f9c;background:#dceaf1}.quick-sheet-card.activity .counter-value{color:#33627a}.quick-sheet-card.intimacy{background:#fbe9f1;border-color:#f0c6db}.quick-sheet-card.intimacy .counter-symbol{color:#a63d68;background:#f7dbe9}.quick-sheet-card.intimacy .counter-value{color:#7d2a4d}.quick-sheet-card.extras{background:#f8eee8;border-color:#e8d4c8}.quick-sheet-card.extras .counter-symbol{color:#92523d;background:#f0dcd2}.quick-sheet-card.extras .counter-value{color:#6f3d2c}.quick-sheet-hint{width:32px;height:32px;color:var(--muted);background:#ffffffb3;border:1px solid #0000000f;border-radius:10px;flex:none;place-items:center;display:grid}.quick-sheet-dot{display:none}@media(max-width:1023.98px){.quick-counter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-counter-grid>*{grid-column:1/-1}.quick-counter-grid>.quick-sheet-card,.quick-counter-grid>.quick-edit-wrap:has(.quick-sheet-card){grid-column:auto}.quick-counter-grid.is-editing>.quick-edit-wrap:has(.quick-sheet-card){grid-column:span 2}.quick-sheet-card{border-radius:16px;min-height:88px}.quick-counter-grid .quick-sheet-card .counter-control{flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:88px;padding:12px 6px 10px}.quick-counter-grid .quick-sheet-card .counter-symbol{border-radius:50%;width:44px;height:44px}.quick-counter-grid .quick-sheet-card .counter-label{text-align:center;flex:0 auto;gap:0;max-width:100%}.quick-counter-grid .quick-sheet-card .counter-label strong{font-size:var(--type-note);overflow-wrap:anywhere;line-height:1.2}.quick-counter-grid .quick-sheet-card .counter-value,.quick-counter-grid .quick-sheet-card .quick-sheet-hint{display:none}.quick-sheet-dot{background:var(--line);border-radius:50%;width:9px;height:9px;display:block}.quick-sheet-card.cycle.is-marked .quick-sheet-dot{background:#b03a52}.quick-sheet-card.activity.is-marked .quick-sheet-dot{background:#4a7f9c}.quick-sheet-card.intimacy.is-marked .quick-sheet-dot{background:#a63d68}.quick-sheet-card.extras.is-marked .quick-sheet-dot{background:#92523d}}.quick-sheet-backdrop{align-items:end;padding:0}.quick-sheet{width:min(560px,100%);height:auto;max-height:92dvh;animation:quick-sheet-rise calc(.5s*var(--sheet-speed))var(--spring-travel)both;--module-icon-bg:var(--sage);--module-icon-color:var(--sage-deep);background:#fff;border:1px solid #ffffffb3;border-radius:22px 22px 0 0;flex-direction:column;transition:height .3s cubic-bezier(.32,.72,0,1),max-height .3s cubic-bezier(.32,.72,0,1),transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:relative;overflow:hidden;box-shadow:0 -14px 40px #14282333}.quick-sheet-cycle{--module-icon-bg:#fbe9ec;--module-icon-color:#b03a52}.quick-sheet-activity{--module-icon-bg:#e8f0f4;--module-icon-color:#4a7f9c}.quick-sheet-intimacy{--module-icon-bg:#fbe9f1;--module-icon-color:#a63d68}.quick-sheet-extras{--module-icon-bg:#f8eee8;--module-icon-color:#92523d}.quick-sheet.is-expanded{max-height:92dvh}.quick-sheet:before{content:"";background:var(--line);pointer-events:none;border-radius:999px;width:40px;height:5px;position:absolute;top:7px;left:50%;transform:translate(-50%)}.quick-sheet-header{padding-top:26px}.quick-sheet-body{flex:1;padding-top:0}.quick-sheet-label{color:var(--ink);font-size:var(--type-body);align-items:center;gap:6px;margin:14px 0 8px;font-weight:700;display:flex}.quick-sheet-label small,.quick-sheet-intimacy-picker .intimacy-group-title small{color:var(--muted);font-size:var(--type-body);font-weight:600}.quick-sheet-intimacy-picker{padding-top:12px}.quick-sheet-body .flow-picker,.quick-sheet-body .activity-selector{padding:0}.quick-sheet-feedback{margin:9px 0 0;padding:0}.quick-sheet-footer{justify-content:stretch}.quick-sheet-footer .primary-button{flex:1}.update-banner-button:active,.brand-button:active,.settings-back:active,.records-tab:active,.records-range-button:active,.phase-chip:active,.hormone-chip:active,.more-button:active,.card-header:active,.food-ranking-more:active,.add-tag-button:active,.food-search-clear:active,.food-search-result:active,.food-create-button:active,.counter-adjust:active,.counter-reminder:active,.day-cell:active,.activity-option:active,.quick-sheet-card:active,.quick-remove:active,.quick-add-item:active,.home-customize:active,.date-nav-button:active,.reminder-shortcut:active,.time-input-button:active,.settings-nav-item:active,.danger-button:active,.module-row-button:active,.scale-face:active,.fab:active,.stepper button:active,.quick-move button:active,.reminder-bell-popover button:active,.settings-search button:active,.sleep-notice button:active{transition:transform var(--press-down);transform:scale(.97)}.scroll-hint-button:active{transition:transform var(--press-down);transform:translateY(-50%)scale(.97)}.quick-remove:active{animation:none}.quick-sheet-card.press-sunk,.quick-action.press-sunk,.sleep-band-bar.press-sunk,.expand-button.press-sunk,.bento-widget.expandable.press-sunk,.bento-widget.navigable.press-sunk{transition:transform var(--press-down);transform:scale(.97)}.home-settings-screen .tag-management-row{flex-direction:row;justify-content:space-between;align-items:center;gap:10px;padding:14px 0}.home-settings-screen .tag-management-actions{justify-content:flex-end;width:auto}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.wizard-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:0;padding:0 18px 14px;list-style:none}.wizard-steps li{padding:7px 3px;border-bottom:2px solid var(--line);color:var(--muted);font-size:var(--type-body);font-weight:700;line-height:1.35;text-align:center}.wizard-steps li.active{border-color:#31523c;color:#31523c}.wizard-steps li.done{border-color:#b7cabb;color:#6b8e7a}.wizard-subtitle{margin:18px 0 8px;color:var(--ink);font-size:var(--type-card-title)}.wizard-fieldset{display:grid;gap:8px;margin:16px 0 0;padding:12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);font-size:var(--type-body)}.wizard-fieldset legend{padding:0 5px;color:var(--muted);font-size:var(--type-note);font-weight:700}.emotion-map{display:grid;gap:7px;margin:12px 0 18px;padding:0;list-style:none}.emotion-map li{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:var(--type-body)}.wizard-warnings{display:grid;gap:7px;margin:12px 0;padding:0;list-style:none}.wizard-warnings li{display:flex;align-items:flex-start;gap:7px;padding:9px 10px;border-radius:10px;color:#7e4b38;background:#fff3ed;font-size:var(--type-note)}.report-button{display:inline-flex;align-items:center;min-height:40px;margin-top:8px;padding:8px 12px;border-radius:10px;color:#8d342c;background:#fff0ee;font-size:var(--type-body);font-weight:700;text-decoration:none}.report-button:hover,.report-button:focus-visible{outline:2px solid #d6867d;outline-offset:2px;background:#ffe5e2}.assigned-list{display:grid;gap:6px;margin:8px 0;padding:0;list-style:none}.assigned-row{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #7ba889;border-radius:10px;color:#2c4a36;background:#eef6ef;font-size:var(--type-body);font-weight:700}@media(max-width:520px){.wizard-steps{gap:2px;padding-inline:10px}.wizard-steps li{font-size:var(--type-note);line-height:1.35}}
