.kairos-logo{flex:none;width:1.75rem;height:1.75rem;display:block}.kairos-logo--monochrome{filter:grayscale()}.kairos-logo__cycle{fill:none;stroke:var(--color-period);stroke-width:3.5px;stroke-linecap:round}.kairos-logo__moment{fill:var(--color-fertile)}.sheet{--sheet-padding-x:var(--space-lg);width:100%;max-width:40rem;height:calc(100dvh - var(--space-xl) - 30px);border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--color-background);color:var(--color-text);animation:sheet-rise var(--motion-standard);border:0;margin:auto auto 0;padding:0;overflow:hidden}.sheet:focus,.sheet:focus-visible,.sheet__close:focus:not(:focus-visible),.sheet__close:focus-visible{outline:none}.sheet--medium{height:60dvh}.sheet--fit{height:fit-content;max-height:calc(100dvh - var(--space-xl))}.sheet--fit .sheet__body{flex:0 auto}.sheet--rest{height:62dvh}.sheet__handle{width:2.25rem;height:5px;margin:var(--space-sm) 0 0;background:var(--color-text-muted);opacity:.4;border-radius:3px;align-self:center}.sheet[open]{flex-direction:column;display:flex}.sheet::backdrop{background:var(--color-scrim)}.sheet__bar{align-items:center;column-gap:var(--space-sm);min-height:var(--size-touch-target);padding:var(--space-xs) var(--sheet-padding-x);border-bottom:1px solid var(--color-border);background:var(--color-background);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.sheet__title{font-size:var(--font-size-headline);font-weight:var(--font-weight-headline);text-align:center;text-wrap:balance;margin:0}.sheet__spacer{justify-self:start}.sheet__close{color:var(--color-accent);font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;border:0;justify-self:end}.sheet__close--leading{justify-self:start}.sheet__close:disabled{opacity:.4;cursor:not-allowed}.sheet__body{padding:var(--space-md) var(--sheet-padding-x) var(--space-lg);overscroll-behavior:contain;flex:1;overflow-y:auto}.sheet__footer{gap:var(--space-sm);padding:var(--space-md) var(--sheet-padding-x) calc(var(--space-md) + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-background);flex-direction:column;display:flex}.sheet__body>.screen{margin:calc(-1 * var(--space-md)) calc(-1 * var(--sheet-padding-x)) calc(-1 * var(--space-lg))}@keyframes sheet-rise{0%{transform:translateY(100%)}}.button{justify-content:center;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);border-radius:var(--radius-card);font-size:var(--font-size-headline);font-weight:var(--font-weight-semibold);cursor:pointer;transition:transform var(--motion-standard), opacity var(--motion-standard);border:1px solid #0000;display:flex}.button--primary{background:var(--color-accent);color:var(--color-on-accent);box-shadow:0 4px 0 color-mix(in srgb, var(--color-shadow) 15%, transparent)}.button--primary:active{box-shadow:0 1px 0 color-mix(in srgb, var(--color-shadow) 15%, transparent);transform:translateY(3px)}.button--secondary{background:var(--color-surface);color:var(--color-text);position:relative}.button--secondary:active{opacity:.7}.button:disabled{opacity:.5;cursor:not-allowed}.button--secondary:after{content:"";border-radius:inherit;background:var(--gradient-card-edge);pointer-events:none;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.update-banner{left:var(--space-md);right:var(--space-md);bottom:calc(var(--size-touch-target) + var(--space-md) + var(--tab-safe-bottom,env(safe-area-inset-bottom)));z-index:20;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 4px 0 color-mix(in srgb, var(--color-shadow) 15%, transparent);display:flex;position:fixed}.update-banner__text{flex:1;margin:0}.update-banner__action{width:auto;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-body)}.state-view{align-items:center;gap:var(--space-sm);padding:var(--space-xl) var(--space-md);text-align:center;flex-direction:column;display:flex}.state-view__title{font-size:var(--font-size-headline)}.state-view__message{color:var(--color-text-muted);font-size:var(--font-size-caption);margin:0}.state-view--error .state-view__title{color:var(--color-accent)}.state-view__action{width:auto;margin-top:var(--space-sm)}.state-view__spinner{width:var(--space-lg);height:var(--space-lg);border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:.8s linear infinite state-view-spin}@keyframes state-view-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.state-view__spinner{animation-duration:3s}}.state-view--loading{z-index:5;pointer-events:none;justify-content:center;padding:0;position:fixed;inset:0}.state-view--loading .state-view__spinner{width:2.75rem;height:2.75rem;box-shadow:0 0 1.25rem color-mix(in srgb, var(--color-accent) 35%, transparent);border-width:4px}.state-view__sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.desktop-shell{--desktop-menu-width:15rem;--desktop-content-max-width:44rem;grid-template-columns:var(--desktop-menu-width) 1fr;min-height:100dvh;display:grid}.desktop-shell__menu{align-self:start;gap:var(--space-xs);height:100dvh;padding:var(--space-lg) var(--space-md);border-inline-end:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;display:flex;position:sticky;top:0}.desktop-shell__brand{align-items:center;gap:var(--space-sm);padding:0 var(--space-sm) var(--space-md);font-size:var(--font-size-brand);font-weight:var(--font-weight-brand);display:flex}.desktop-shell__item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-small);color:var(--color-text-muted);font-weight:var(--font-weight-semibold);text-decoration:none;display:flex}.desktop-shell__item:hover{background:color-mix(in srgb, var(--color-text) 6%, transparent)}.desktop-shell__item[aria-current=page]{color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 12%, transparent)}.desktop-shell__item svg{flex:none;width:1.5rem;height:1.5rem}.desktop-shell__content{width:100%;max-width:var(--desktop-content-max-width);padding-block:var(--space-lg);margin-inline:auto}:root{--tab-safe-bottom:max(env(safe-area-inset-bottom) - 28px, 0px)}.tab-bar{--tab-bar-height:62px;--tab-bar-inset:21px;--tab-bar-gap:12px;--tab-count:3;--tab-bar-glass:color-mix(in srgb, var(--color-surface) 32%, transparent);inset:auto var(--tab-bar-inset) calc(var(--tab-bar-gap) + var(--tab-safe-bottom));height:var(--tab-bar-height);box-sizing:border-box;background:var(--tab-bar-glass);-webkit-backdrop-filter:blur(30px)saturate(200%);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-text) 20%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--color-text) 5%, transparent), 0 12px 32px color-mix(in srgb, var(--color-shadow) 28%, transparent), 0 2px 6px color-mix(in srgb, var(--color-shadow) 14%, transparent);border-radius:999px;gap:4px;padding:4px;display:flex;position:fixed}.tab-bar:before{content:"";border-radius:inherit;background:linear-gradient(to bottom, color-mix(in srgb, var(--color-text) 42%, transparent), color-mix(in srgb, var(--color-text) 6%, transparent) 50%, color-mix(in srgb, var(--color-text) 22%, transparent));-webkit-mask:linear-gradient(var(--color-text) 0 0) content-box, linear-gradient(var(--color-text) 0 0);-webkit-mask-composite:xor;-webkit-mask:linear-gradient(var(--color-text) 0 0) content-box exclude, linear-gradient(var(--color-text) 0 0);mask:linear-gradient(var(--color-text) 0 0) content-box exclude, linear-gradient(var(--color-text) 0 0);pointer-events:none;padding:1px;position:absolute;inset:0}.tab-bar__item{z-index:1;color:var(--color-text-muted);border-radius:999px;flex:1;justify-content:center;align-items:center;text-decoration:none;transition:color .2s,transform .2s;display:flex;position:relative}.tab-bar__item:active{transform:scale(.92)}.tab-bar__icon{width:1.75rem;height:1.75rem}.tab-bar__item[aria-current=page]{color:var(--color-accent)}.tab-bar__indicator{width:calc((100% - 8px - (var(--tab-count) - 1) * 4px) / var(--tab-count));background:radial-gradient(90% 120% at 50% 0%, color-mix(in srgb, var(--color-text) 20%, transparent), transparent 70%), color-mix(in srgb, var(--color-text) 10%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-text) 14%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-text) 30%, transparent), 0 4px 14px color-mix(in srgb, var(--color-shadow) 20%, transparent);pointer-events:none;border-radius:999px;transition:transform .5s cubic-bezier(.34,1.4,.64,1);position:absolute;top:4px;bottom:4px;left:4px}.tab-bar:not([data-active-index]) .tab-bar__indicator{opacity:0}.tab-bar[data-active-index="1"] .tab-bar__indicator{transform:translate(calc(100% + 4px))}.tab-bar[data-active-index="2"] .tab-bar__indicator{transform:translate(calc(200% + 8px))}@media (prefers-reduced-motion:reduce){.tab-bar__item,.tab-bar__indicator{transition:none}}.screen-title{text-align:center;text-transform:uppercase;letter-spacing:3px;font-size:var(--font-size-brand);font-weight:var(--font-weight-brand);margin:0}.top-bar{z-index:10;align-items:center;gap:var(--space-sm);padding:34px var(--space-md) var(--space-xs);background:linear-gradient(var(--color-background) 40%, transparent);grid-template-columns:1fr auto 1fr;display:grid;position:sticky;top:0}.top-bar__slot{min-height:var(--size-touch-target);align-items:center;display:flex}.top-bar__slot--trailing{justify-content:flex-end}.top-bar__center{min-height:var(--size-touch-target);justify-content:center;align-items:center;display:flex}.top-bar__button{width:var(--size-touch-target);height:var(--size-touch-target);color:var(--color-accent);cursor:pointer;background:color-mix(in srgb, var(--color-surface) 55%, transparent);-webkit-backdrop-filter:blur(20px)saturate(180%);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-text) 12%, transparent), 0 4px 12px color-mix(in srgb, var(--color-shadow) 16%, transparent);border:0;border-radius:50%;justify-content:center;align-items:center;display:flex}.top-bar__button:active{background:color-mix(in srgb, var(--color-accent) 15%, transparent)}.top-bar__icon{width:24px;height:24px}.top-bar__button--static{cursor:default}.top-bar__led{align-items:center;margin-inline-start:var(--space-xs);display:flex}.account-led{background:var(--color-fertile);width:8px;height:8px;box-shadow:0 0 6px 1px color-mix(in srgb, var(--color-fertile) 70%, transparent);border-radius:50%;flex:none}.account-led--signedOut{background:var(--color-destructive);box-shadow:0 0 6px 1px color-mix(in srgb, var(--color-destructive) 70%, transparent)}.account-led--off{background:var(--color-text-muted);box-shadow:none;opacity:.5}.account-led--busy{animation:1s ease-in-out infinite account-led-pulse}@keyframes account-led-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.account-led--busy{animation:none}}.lock{justify-content:center;align-items:center;gap:var(--space-lg);min-height:100dvh;padding:var(--space-lg) var(--space-md);background:var(--color-background);color:var(--color-text);flex-direction:column;display:flex}.lock__title{font-size:var(--font-size-title);margin:0}.lock__form{gap:var(--space-md);flex-direction:column;width:100%;max-width:20rem;display:flex}.lock__field{gap:var(--space-xs);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);flex-direction:column;display:flex}.lock__input{min-height:var(--size-touch-target);padding:var(--space-xs) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface);font:inherit;font-size:var(--font-size-body);letter-spacing:.3em;text-align:center;color:var(--color-text)}.lock__error{text-align:center;color:var(--color-destructive);margin:0}.lock-curtain{z-index:1000;background:var(--color-background);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}:root{--color-background:#fffbfa;--color-surface:#fff;--color-text:#2b1f26;--color-text-muted:#6b5a63;--color-period:#b83a63;--color-fertile:#1f7a73;--color-border:#e8dce1;--color-edge-highlight:#ffffffe6;--color-hero-tint:#b83a6324;--color-shadow:#2b1f26;--color-on-accent:#fff;--color-scrim:#00000073;--color-destructive:#b3261e;--color-cat-flow:#b83a63;--color-cat-mood:#6b4bb8;--color-cat-pain:#b3481f;--color-cat-digestive:#8a6100;--color-cat-body:#2a6f97;--color-cat-skin:#3a7d2c;--color-cat-other:#5b6770;--color-cat-activity:#0f766e;--color-cat-test:#9a3b8a;--color-accent:var(--color-period);--color-focus-ring:var(--color-period);--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--radius-small:.625rem;--radius-card:1.25rem;--size-touch-target:44px;--font-family-base:ui-rounded, "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", sans-serif;--font-size-eyebrow:.6875rem;--font-size-caption:.75rem;--font-size-body:1.0625rem;--font-size-headline:1.0625rem;--font-size-title:1.25rem;--font-size-brand:1.375rem;--font-size-metric:1.75rem;--font-size-display:2.125rem;--font-weight-regular:400;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-heavy:800;--line-height-base:1.4;--font-weight-display:var(--font-weight-bold);--font-weight-title:var(--font-weight-semibold);--font-weight-headline:var(--font-weight-semibold);--font-weight-numeric:var(--font-weight-semibold);--font-weight-metric:var(--font-weight-heavy);--font-weight-eyebrow:var(--font-weight-bold);--font-weight-brand:var(--font-weight-heavy);--font-numeric-variant:tabular-nums;--motion-standard:.35s cubic-bezier(.34, 1.2, .64, 1);--gradient-card-edge:linear-gradient(to bottom, var(--color-edge-highlight), color-mix(in srgb, var(--color-border) 60%, transparent));--gradient-hero:linear-gradient(to bottom right, var(--color-hero-tint), var(--color-surface));--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--color-background:#171115;--color-surface:#221a1f;--color-text:#f3e9ee;--color-text-muted:#b9a8b1;--color-period:#e26c93;--color-fertile:#4fb7ae;--color-border:#3a2e35;--color-edge-highlight:#ffffff12;--color-hero-tint:#e26c9329;--color-shadow:#000;--color-on-accent:#171115;--color-destructive:#ff8a80;--color-cat-flow:#e26c93;--color-cat-mood:#b79cf2;--color-cat-pain:#f2956b;--color-cat-digestive:#e3b94f;--color-cat-body:#6bb4e6;--color-cat-skin:#7fcf6e;--color-cat-other:#a9b6c2;--color-cat-activity:#4fb7ae;--color-cat-test:#d98bd0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-background:#171115;--color-surface:#221a1f;--color-text:#f3e9ee;--color-text-muted:#b9a8b1;--color-period:#e26c93;--color-fertile:#4fb7ae;--color-border:#3a2e35;--color-edge-highlight:#ffffff12;--color-hero-tint:#e26c9329;--color-shadow:#000;--color-on-accent:#171115;--color-destructive:#ff8a80;--color-cat-flow:#e26c93;--color-cat-mood:#b79cf2;--color-cat-pain:#f2956b;--color-cat-digestive:#e3b94f;--color-cat-body:#6bb4e6;--color-cat-skin:#7fcf6e;--color-cat-other:#a9b6c2;--color-cat-activity:#4fb7ae;--color-cat-test:#d98bd0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@media (prefers-reduced-motion:reduce){:root{--motion-standard:0s linear}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;touch-action:manipulation}body{background:var(--color-background);min-height:100dvh;color:var(--color-text);font-family:var(--font-family-base);font-size:var(--font-size-body);line-height:var(--line-height-base);padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left);margin:0}*{scrollbar-width:none}::-webkit-scrollbar{display:none}h1,h2,h3{font-weight:var(--font-weight-bold);margin:0}button,a,input,select,textarea,[role=button],[role=tab]{min-height:var(--size-touch-target);min-width:var(--size-touch-target);font:inherit}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.screen{gap:var(--space-sm);padding:var(--space-xs) var(--space-md) var(--space-lg);flex-direction:column;display:flex}.screen__title{font-size:var(--font-size-title)}.app-content{padding-bottom:calc(64px + 8px + var(--space-md) + var(--tab-safe-bottom,0px))}input,textarea,select{font-size:max(16px,1em)}input[type=checkbox],input[type=radio]{accent-color:var(--color-accent)}button,[role=button],[role=tab]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
