:root{--ui-bg: var(--app-bg);--ui-surface: var(--app-bg);--ui-surface-secondary: var(--app-secondary-bg);--ui-surface-elevated: var(--app-bg);--ui-text: var(--app-text);--ui-text-secondary: color-mix(in srgb, var(--app-hint) 72%, var(--app-text));--ui-accent: color-mix(in srgb, var(--app-button) 85%, #000000);--ui-on-accent: var(--app-button-text);--ui-accent-text: color-mix( in srgb, var(--tg-theme-accent-text-color, var(--app-button)) 75%, var(--app-text) );--ui-destructive: color-mix(in srgb, var(--app-destructive) 80%, #000000);--ui-destructive-text: color-mix(in srgb, var(--app-destructive) 70%, var(--app-text));--ui-border: color-mix(in srgb, var(--app-hint) 30%, transparent);--ui-focus: var(--ui-accent-text);--ui-backdrop: color-mix(in srgb, #000 45%, transparent);--ui-space-1: 4px;--ui-space-2: 8px;--ui-space-3: 12px;--ui-space-4: 16px;--ui-space-5: 20px;--ui-space-6: 24px;--ui-radius-sm: 8px;--ui-radius-md: 12px;--ui-radius-lg: 16px;--ui-radius-pill: 999px;--ui-shadow-popover: 0 8px 24px color-mix(in srgb, #000 12%, transparent);--ui-shadow-modal: 0 12px 32px color-mix(in srgb, #000 18%, transparent)}body{position:relative}#root{isolation:isolate}.ui-button,.ui-icon-button{min-width:44px;min-height:44px;border:0;border-radius:var(--ui-radius-md);font:inherit;color:inherit;cursor:pointer;position:relative}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-space-2);padding:var(--ui-space-3) var(--ui-space-4);font-size:1rem;font-weight:600;line-height:1.25}.ui-button__label{display:inline-flex;align-items:center}.ui-button--loading .ui-button__label{visibility:hidden}.ui-button--loading .ui-spinner{position:absolute}.ui-button--primary{color:var(--ui-on-accent);background:var(--ui-accent)}.ui-button--secondary{color:var(--ui-text);background:var(--ui-surface);box-shadow:inset 0 0 0 1px var(--ui-border)}.ui-button--destructive{color:#fff;background:var(--ui-destructive)}.ui-button--ghost{color:var(--ui-accent-text);background:transparent}.ui-icon-button{display:inline-grid;place-items:center;padding:0;color:var(--ui-text);background:transparent}.ui-button:disabled,.ui-icon-button:disabled,.ui-menu-item[data-disabled],.ui-sheet-action:disabled{opacity:.55;cursor:not-allowed}@media(hover:hover){.ui-button--primary:hover:not(:disabled){filter:brightness(.96)}.ui-button--secondary:hover:not(:disabled),.ui-button--ghost:hover:not(:disabled),.ui-icon-button:hover:not(:disabled){background:var(--ui-surface-secondary)}.ui-button--destructive:hover:not(:disabled){filter:brightness(.96)}.ui-menu-item:hover:not([data-disabled]),.ui-sheet-action:hover:not(:disabled){background:var(--ui-surface-secondary)}}.ui-button:active:not(:disabled),.ui-icon-button:active:not(:disabled),.ui-menu-item:active:not([data-disabled]),.ui-sheet-action:active:not(:disabled){transform:scale(.98)}.ui-button:focus-visible,.ui-icon-button:focus-visible,.ui-menu-item:focus-visible,.ui-sheet-action:focus-visible,.ui-sheet-cancel:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-spinner{width:1rem;height:1rem;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--ui-radius-pill);animation:ui-spin .7s linear infinite;flex-shrink:0}.ui-menu-positioner{z-index:50;outline:0}.ui-menu{box-sizing:border-box;min-width:10rem;max-width:min(18rem,var(--available-width));max-height:min(24rem,var(--available-height));overflow:auto;overscroll-behavior:contain;padding:var(--ui-space-1);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);color:var(--ui-text);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow-popover);outline:0}.ui-menu-item{min-height:44px;display:flex;align-items:center;padding:0 var(--ui-space-3);border-radius:var(--ui-radius-md);cursor:default;outline:0;font-size:1rem}.ui-menu-item[data-highlighted]{background:var(--ui-surface-secondary)}.ui-menu-item--destructive{color:var(--ui-destructive-text)}.ui-overlay-backdrop{position:fixed;inset:0;min-height:100dvh;z-index:60;background:var(--ui-backdrop)}.ui-overlay-viewport{position:fixed;inset:0;z-index:61;display:grid;place-items:center;padding:calc(var(--ui-space-5) + var(--ui-safe-top)) calc(var(--ui-space-5) + var(--ui-safe-right)) calc(var(--ui-space-5) + var(--ui-safe-bottom)) calc(var(--ui-space-5) + var(--ui-safe-left))}.ui-dialog{width:min(100%,22rem);max-width:100%;min-width:0;max-height:min(36rem,calc(100dvh - var(--ui-safe-top) - var(--ui-safe-bottom) - 2 * var(--ui-space-5)));overflow-y:auto;overscroll-behavior:contain;display:grid;gap:var(--ui-space-3);padding:var(--ui-space-5);border-radius:var(--ui-radius-lg);color:var(--ui-text);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow-modal);outline:0}.ui-dialog-form{display:grid;gap:var(--ui-space-3);min-width:0}.ui-dialog-title,.ui-dialog-description,.ui-dialog-error,.ui-dialog p{margin:0;min-width:0;overflow-wrap:anywhere}.ui-dialog-title{font-size:1.125rem;font-weight:700}.ui-dialog-description{display:grid;gap:var(--ui-space-2);color:var(--ui-text-secondary);font-size:1rem}.ui-dialog-error{color:var(--ui-destructive-text);font-size:.875rem}.ui-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--ui-space-2)}.ui-sheet-viewport{position:fixed;inset:0;z-index:61;display:flex;align-items:flex-end}.ui-sheet{width:100%;max-width:100%;min-width:0;max-height:min(82dvh,36rem);overflow-y:auto;overscroll-behavior:contain;padding:var(--ui-space-3) calc(var(--ui-space-4) + var(--ui-safe-right)) calc(var(--ui-space-4) + var(--ui-safe-bottom)) calc(var(--ui-space-4) + var(--ui-safe-left));border-radius:var(--ui-radius-lg) var(--ui-radius-lg) 0 0;color:var(--ui-text);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow-modal);outline:0}.ui-sheet-handle{width:2.25rem;height:.25rem;margin:0 auto var(--ui-space-4);border-radius:var(--ui-radius-pill);background:var(--ui-border)}.ui-sheet-actions{display:grid;margin:var(--ui-space-4) 0 var(--ui-space-3)}.ui-sheet-action{width:100%;min-height:44px;display:grid;align-content:center;gap:2px;padding:var(--ui-space-2) var(--ui-space-4);border:0;border-radius:var(--ui-radius-md);color:var(--ui-text);background:transparent;font:inherit;font-size:1rem;text-align:left;cursor:pointer}.ui-sheet-action__label{min-width:0;overflow-wrap:anywhere}.ui-sheet-action__description{min-width:0;overflow-wrap:anywhere;color:var(--ui-text-secondary);font-size:.875rem;font-weight:400}.ui-sheet-action--destructive{color:var(--ui-destructive-text)}.ui-sheet-cancel{width:100%}.ui-surface{border-radius:var(--ui-radius-lg);background:var(--ui-surface)}.ui-section{display:grid;gap:var(--ui-space-3)}.ui-section__header,.ui-placeholder{display:grid;gap:var(--ui-space-2)}.ui-section__title,.ui-placeholder__title,.ui-section__description,.ui-placeholder__description{margin:0}.ui-section__title,.ui-placeholder__title{font-size:1rem;font-weight:600}.ui-section__description,.ui-placeholder__description{color:var(--ui-text-secondary);font-size:.875rem}.ui-field{display:flex;flex-direction:column;gap:var(--ui-space-1);min-width:0}.ui-fieldset{margin:0;padding:0;border:none;gap:var(--ui-space-2)}.ui-field__label{margin:0;font-size:1rem;font-weight:600;color:var(--ui-text)}.ui-field__optional{font-weight:400;font-size:.875rem;color:var(--ui-text-secondary)}.ui-field__description{margin:0;font-size:.8125rem;color:var(--ui-text-secondary)}.ui-field__control{width:100%;max-width:100%;min-width:0;min-height:44px}.ui-field__control:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-field__error{margin:0;color:var(--ui-destructive-text);font-size:.875rem}.ui-cell{min-height:52px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--ui-space-3);padding:var(--ui-space-3) var(--ui-space-4)}.ui-cell__before{grid-column:1}.ui-cell__content{grid-column:2;min-width:0}.ui-cell__after{grid-column:3}.ui-placeholder{justify-items:start;padding:var(--ui-space-5) 0}.ui-skeleton{display:grid;gap:var(--ui-space-3)}.ui-skeleton__line{display:block;height:4rem;border-radius:var(--ui-radius-lg);background:color-mix(in srgb,var(--ui-text-secondary) 16%,var(--ui-surface));animation:ui-pulse 1.4s ease-in-out infinite}.ui-toast-viewport{position:fixed;z-index:80;box-sizing:border-box;left:calc(var(--ui-space-4) + var(--ui-safe-left));right:calc(var(--ui-space-4) + var(--ui-safe-right));bottom:calc(var(--ui-space-4) + var(--ui-safe-bottom) + max(0px,calc(var(--tg-viewport-stable-height) - var(--tg-viewport-height))));width:auto;max-width:min(22rem,100%);margin-inline:auto;outline:0}.ui-toast{position:absolute;right:0;left:0;bottom:0;width:auto;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);color:var(--ui-text);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow-popover);transition:transform .2s ease,opacity .2s ease}.ui-toast[data-type=success]{box-shadow:var(--ui-shadow-popover),inset 3px 0 0 var(--ui-accent)}.ui-toast[data-type=error]{box-shadow:var(--ui-shadow-popover),inset 3px 0 0 var(--ui-destructive)}.ui-toast[data-type=warning]{box-shadow:var(--ui-shadow-popover),inset 3px 0 0 var(--ui-text-secondary)}.ui-toast-content{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-3);padding:var(--ui-space-3)}.ui-toast-title,.ui-toast-description{margin:0}.ui-toast-title{font-size:1rem;font-weight:700}.ui-toast-description{color:var(--ui-text-secondary);font-size:.875rem}@supports (-webkit-touch-callout: none){.ui-overlay-backdrop{position:absolute}}@media(prefers-reduced-motion:reduce){.ui-spinner,.ui-skeleton__line,.ui-button:active:not(:disabled),.ui-icon-button:active:not(:disabled),.ui-menu-item:active:not([data-disabled]),.ui-sheet-action:active:not(:disabled),.ui-toast,.ui-toast-viewport,.ui-toast[data-starting-style],.ui-toast[data-ending-style]{animation:none;transition:none;transform:none}}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-pulse{50%{opacity:.55}}:root{color-scheme:light dark;font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;--tg-viewport-height: 100vh;--tg-viewport-stable-height: 100vh;--tg-safe-area-inset-top: 0px;--tg-safe-area-inset-bottom: 0px;--tg-safe-area-inset-left: 0px;--tg-safe-area-inset-right: 0px;--tg-content-safe-area-inset-top: 0px;--tg-content-safe-area-inset-bottom: 0px;--tg-content-safe-area-inset-left: 0px;--tg-content-safe-area-inset-right: 0px;--app-bg: #ffffff;--app-text: #000000;--app-secondary-bg: #f1f1f1;--app-button: #2481cc;--app-button-text: #ffffff;--app-hint: #999999;--app-destructive: #ff3b30;--ui-safe-top: calc(var(--tg-safe-area-inset-top) + var(--tg-content-safe-area-inset-top));--ui-safe-right: calc(var(--tg-safe-area-inset-right) + var(--tg-content-safe-area-inset-right));--ui-safe-bottom: calc( var(--tg-safe-area-inset-bottom) + var(--tg-content-safe-area-inset-bottom) );--ui-safe-left: calc(var(--tg-safe-area-inset-left) + var(--tg-content-safe-area-inset-left))}*{box-sizing:border-box}html,body,#root{min-height:var(--tg-viewport-stable-height, 100vh);max-width:100%}html{overflow-x:clip;font-size:100%}body{margin:0;padding:0;min-width:min(320px,100%);color:var(--ui-text, var(--app-text));background-color:var(--ui-bg, var(--app-bg))}.app-shell{width:100%;max-width:100%;min-width:0;min-height:var(--tg-viewport-stable-height, 100vh);margin:0;padding-top:calc(var(--ui-space-3, 12px) + var(--ui-safe-top));padding-right:calc(var(--ui-space-4, 16px) + var(--ui-safe-right));padding-bottom:calc(var(--ui-space-4, 16px) + var(--ui-safe-bottom));padding-left:calc(var(--ui-space-4, 16px) + var(--ui-safe-left));display:flex;flex-direction:column;gap:var(--ui-space-3, 12px);color:var(--ui-text, var(--app-text));background:var(--ui-bg, var(--app-bg))}.app-shell[data-color-scheme=light]{color-scheme:light}.app-shell[data-color-scheme=dark]{color-scheme:dark}.app-shell__header{flex:0 0 auto;display:flex;flex-direction:column;gap:var(--ui-space-1, 4px);min-width:0}.app-shell[data-route=list],.app-shell[data-route=calendar]{gap:var(--ui-space-2, 8px)}.app-shell[data-route=list] .app-shell__header,.app-shell[data-route=calendar] .app-shell__header{flex-direction:column;align-items:stretch;gap:var(--ui-space-2, 8px);min-height:44px}.app-root-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ui-space-1, 4px);min-width:0}.app-root-nav__tab{width:100%;min-width:0;min-height:44px;margin:0;padding:0 var(--ui-space-2, 8px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:0;border-radius:var(--ui-radius-md, 12px);background:var(--ui-surface-secondary, var(--app-secondary-bg));color:var(--ui-text-secondary, var(--app-hint));font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer}.app-root-nav__tab--active,.app-root-nav__tab[aria-selected=true]{color:var(--ui-text, var(--app-text));box-shadow:inset 0 0 0 2px var(--ui-accent, var(--app-button))}.app-root-nav__tab:focus-visible{outline:2px solid var(--ui-focus, var(--app-button));outline-offset:2px}.app-shell__header[hidden]{display:none}.app-shell__brand{margin:0;font-size:1rem;font-weight:600;line-height:1.25;letter-spacing:0}.app-shell__subtitle{margin:0;color:var(--ui-text-secondary, var(--app-hint));font-size:.875rem;line-height:1.3}.app-shell__body{flex:1 1 auto;min-width:0;width:100%;margin:0;padding:0;background:transparent;border-radius:0}.shell-probe{margin:0;font-size:.95rem}.shell-probe--error{color:var(--ui-destructive-text, var(--app-destructive))}.shell-probe--ok{color:var(--app-text)}.app-state{min-height:var(--tg-viewport-stable-height, 100vh);max-width:100%;margin:0;padding-top:calc(var(--ui-space-6, 24px) + var(--ui-safe-top));padding-right:calc(var(--ui-space-4, 16px) + var(--ui-safe-right));padding-bottom:calc(var(--ui-space-6, 24px) + var(--ui-safe-bottom));padding-left:calc(var(--ui-space-4, 16px) + var(--ui-safe-left));display:flex;flex-direction:column;justify-content:center;gap:var(--ui-space-3, 12px);color:var(--ui-text, var(--app-text));background:var(--ui-bg, var(--app-bg))}.app-state h1{margin:0;font-size:1.125rem;font-weight:600}.app-state h2{margin:0;font-size:1.15rem;font-weight:600}.app-state p{margin:0;color:var(--ui-text-secondary, var(--app-hint))}.app-state--loading{align-items:center;text-align:center}.app-state__spinner{width:2rem;height:2rem;border-radius:50%;border:2px solid var(--app-hint);border-top-color:var(--app-button);animation:app-spin .8s linear infinite}@media(prefers-reduced-motion:reduce){.app-state__spinner{animation:none;border-top-color:var(--app-hint)}}@keyframes app-spin{to{transform:rotate(360deg)}}:root{--timer-accent-coral: #e07060;--timer-accent-amber: #d4a017;--timer-accent-lime: #7aa31a;--timer-accent-teal: #2a9d8f;--timer-accent-sky: #3a8fd4;--timer-accent-violet: #7b6bb0;--timer-accent-rose: #d46a8a;--timer-accent-slate: #6b7c8a}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.touch-target{min-width:44px;min-height:44px}.btn-primary,.btn-secondary,.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.65rem 1.1rem;border-radius:.75rem;border:none;font:inherit;font-weight:600;cursor:pointer}.btn-primary{color:var(--ui-on-accent, var(--app-button-text));background:var(--ui-accent, var(--app-button))}.btn-secondary{color:var(--ui-text, var(--app-text));background:var(--ui-surface, var(--app-bg));border:1px solid var(--ui-border, color-mix(in srgb, var(--app-hint) 45%, transparent))}.btn-danger{color:#fff;background:var(--ui-destructive, var(--app-destructive))}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-danger:focus-visible,.timer-card__menu-button:focus-visible,.timer-form__input:focus-visible{outline:2px solid var(--ui-focus, var(--app-button));outline-offset:2px}.timers-screen{display:flex;flex-direction:column;gap:var(--ui-space-2, 8px);min-width:0;container-type:inline-size;container-name:timers-screen}.timers-screen--loading,.timers-screen--empty,.timers-screen--error{align-items:stretch;gap:var(--ui-space-3, 12px)}.timers-screen--empty .ui-placeholder,.timers-screen--error .ui-placeholder{padding-top:0;padding-bottom:var(--ui-space-2, 8px)}.timers-screen__heading{margin:0;font-size:1.15rem;font-weight:600}.timers-screen__message{margin:0;color:var(--ui-text-secondary, var(--app-hint))}.timers-screen__alert{color:var(--ui-destructive-text, var(--app-destructive))}.timers-screen__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--ui-space-1, 4px);min-width:0}.timers-screen__create{min-width:44px;padding-right:var(--ui-space-3, 12px);padding-left:var(--ui-space-3, 12px);font-size:.9375rem}.timers-screen__settings{color:var(--ui-accent-text, var(--app-button));font-size:1.25rem}.timers-screen__archive{min-width:44px}.timers-list-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--ui-space-2, 8px);min-width:0}.timers-list-filters .ui-field__control{box-sizing:border-box;padding:.55rem .75rem;border-radius:var(--ui-radius-md, 12px);border:1px solid var(--ui-border, color-mix(in srgb, var(--app-hint) 45%, transparent));background:var(--ui-surface, var(--app-bg));color:var(--ui-text, var(--app-text));font:inherit;font-size:1rem}.timers-list-section{display:flex;flex-direction:column;gap:var(--ui-space-2, 8px);min-width:0}.timers-list-section__title{margin:0;font-size:.8125rem;font-weight:600;color:var(--ui-text-secondary, var(--app-hint))}.archive-screen{display:flex;flex-direction:column;gap:var(--ui-space-3, 12px);min-width:0;container-type:inline-size;container-name:timers-screen}.archive-screen__header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ui-space-2, 8px);min-width:0}.archive-screen__title{margin:0;font-size:1.15rem;font-weight:600}.archive-screen__title:focus{outline:none}.archive-screen__title:focus-visible{outline:2px solid var(--ui-focus, var(--app-button));outline-offset:2px}@media(min-width:390px){.timers-list-filters{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)}}.timers-layout-toggle{display:inline-flex;align-items:center;gap:0;min-width:0}.timers-layout-toggle__button{color:var(--ui-text-secondary, var(--app-hint));font-size:1.125rem}.timers-layout-toggle__button--active,.timers-layout-toggle__button[aria-pressed=true]{color:var(--ui-text, var(--app-text));background:var(--ui-surface-secondary, var(--app-secondary-bg))}.timers-list-skeleton{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ui-space-2, 8px);width:100%;min-width:0;align-items:stretch}.timers-list-skeleton__card{display:grid;grid-template-columns:32px minmax(0,1fr) 44px;grid-template-areas:"accent . menu" "body body body";gap:var(--ui-space-1, 4px);align-items:start;min-width:0;min-height:140px;padding:var(--ui-space-2, 8px);border-radius:var(--ui-radius-md, 12px);background:var(--ui-surface-secondary, var(--app-secondary-bg))}.timers-list-skeleton__accent{grid-area:accent;width:32px;height:32px;border-radius:var(--ui-radius-pill, 999px)}.timers-list-skeleton__menu{grid-area:menu;justify-self:end;width:44px;height:44px;border-radius:var(--ui-radius-md, 12px)}.timers-list-skeleton__card .ui-skeleton{grid-area:body;gap:var(--ui-space-1, 4px)}.timers-list-skeleton__card .ui-skeleton__line:nth-child(1){height:2.5rem;width:92%}.timers-list-skeleton__card .ui-skeleton__line:nth-child(2){height:1.125rem;width:58%}.timers-list-skeleton__card .ui-skeleton__line:nth-child(3){height:.875rem;width:44%}.timers-list-skeleton__card .ui-skeleton__line:nth-child(4){height:.8125rem;width:50%}.timers-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ui-space-2, 8px);min-width:0;width:100%;align-items:stretch}.timers-list[data-layout=list]{display:flex;flex-direction:column}.timers-list[data-overflow="1"]{grid-template-columns:minmax(0,1fr)}.timers-list__item{margin:0;min-width:0;display:flex}.timers-list__item .timer-card{flex:1 1 auto;width:100%}.timer-card{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr) 44px;grid-template-areas:"avatar . menu" "title title title" "elapsed elapsed elapsed" "started started started";column-gap:var(--ui-space-2, 8px);row-gap:2px;align-items:start;align-content:start;min-width:0;max-width:100%;min-height:140px;padding:var(--ui-space-2, 8px);border-radius:var(--ui-radius-md, 12px);background:var(--ui-surface-secondary, var(--app-secondary-bg));color:var(--ui-text, var(--app-text))}.timer-card[data-color]{box-shadow:inset 3px 0 color-mix(in srgb,var(--timer-card-accent) 72%,transparent);background:color-mix(in srgb,var(--timer-card-accent) 16%,var(--ui-surface-secondary, var(--app-secondary-bg)))}.timer-card[data-color=coral]{--timer-card-accent: var(--timer-accent-coral)}.timer-card[data-color=amber]{--timer-card-accent: var(--timer-accent-amber)}.timer-card[data-color=lime]{--timer-card-accent: var(--timer-accent-lime)}.timer-card[data-color=teal]{--timer-card-accent: var(--timer-accent-teal)}.timer-card[data-color=sky]{--timer-card-accent: var(--timer-accent-sky)}.timer-card[data-color=violet]{--timer-card-accent: var(--timer-accent-violet)}.timer-card[data-color=rose]{--timer-card-accent: var(--timer-accent-rose)}.timer-card[data-color=slate]{--timer-card-accent: var(--timer-accent-slate)}.timer-card__avatar{grid-area:avatar;box-sizing:border-box;width:32px;height:32px;display:grid;place-items:center;border-radius:var(--ui-radius-pill, 999px);background:color-mix(in srgb,var(--ui-text-secondary, var(--app-hint)) 16%,var(--ui-surface, var(--app-bg)));overflow:hidden}.timer-card__avatar[data-avatar=empty]{box-shadow:inset 0 0 0 1px var(--ui-border, color-mix(in srgb, var(--app-hint) 30%, transparent))}.timer-card__emoji{font-size:1.125rem;line-height:1}.timer-card__title{grid-area:title;margin:0;min-width:0;padding-top:2px;color:var(--ui-text, var(--app-text));font-size:1rem;font-weight:600;line-height:1.25;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.5em}.timer-card__elapsed{grid-area:elapsed;display:flex;flex-direction:column;gap:0;margin:0;min-width:0;max-width:100%;overflow:visible}.timer-card__days,.timer-card__time{margin:0;min-width:0;max-width:100%;overflow:visible;overflow-wrap:anywhere;word-break:break-word;font-variant-numeric:tabular-nums}.timer-card__days{color:var(--ui-text, var(--app-text));font-size:1.125rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.timer-card__time{color:var(--ui-text, var(--app-text));font-size:.875rem;font-weight:600;letter-spacing:.02em;line-height:1.2}.timer-card__started{grid-area:started;margin:0;min-width:0;color:var(--ui-text-secondary, var(--app-hint));font-size:.8125rem;line-height:1.35;overflow-wrap:anywhere}.timer-card__actions{grid-area:menu;position:relative;z-index:2;justify-self:end}.timer-card__menu-button{font-size:1.35rem;line-height:1}.timer-card__open{position:absolute;inset:0;z-index:1;width:auto;height:auto;min-width:44px;min-height:44px;padding:0;border:0;border-radius:inherit;background:transparent;color:inherit;appearance:none;cursor:pointer}.timer-card__open:focus-visible{outline:2px solid var(--ui-focus, var(--ui-accent-text));outline-offset:2px}.timer-card__avatar,.timer-card__title,.timer-card__elapsed,.timer-card__started{position:relative;z-index:1;pointer-events:none}@container timers-screen (max-width: 287px){.timers-list:not([data-layout=list]),.timers-list-skeleton{grid-template-columns:minmax(0,1fr)}}.timer-form-screen{display:flex;flex-direction:column;gap:var(--ui-space-3, 12px);min-width:0;max-width:100%;overflow-x:clip;padding-bottom:calc(var(--ui-space-6, 24px) + var(--ui-safe-bottom))}.timer-form-screen__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--ui-space-3, 12px)}.timer-form-screen__heading{margin:0;font-size:1rem;font-weight:600}.timer-form{display:flex;flex-direction:column;gap:var(--ui-space-3, 12px);min-width:0}.timer-form__section-body{display:grid;gap:var(--ui-space-3, 12px);min-width:0;padding:var(--ui-space-3, 12px);background:var(--ui-surface-secondary)}.timer-form__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--ui-space-3, 12px);min-width:0}@media(max-width:389px){.timer-form__row{grid-template-columns:minmax(0,1fr)}}.timer-form__input{width:100%;max-width:100%;min-width:0;min-height:44px;padding:.55rem .75rem;border-radius:var(--ui-radius-md, 12px);border:1px solid var(--ui-border, color-mix(in srgb, var(--app-hint) 45%, transparent));background:var(--ui-surface, var(--app-bg));color:var(--ui-text, var(--app-text));font:inherit;font-size:1rem}.timer-form__input[type=date],.timer-form__input[type=time],.timer-form select.timer-form__input{display:block}.timer-form__input--emoji{max-width:6rem;font-size:1.35rem;text-align:center}.timer-form__emoji-block{display:grid;gap:var(--ui-space-2, 8px);min-width:0}.timer-form__emoji-presets,.timer-form__choice-list{display:flex;flex-wrap:wrap;gap:var(--ui-space-2, 8px);min-width:0}.timer-form__choice{position:relative;min-width:44px;min-height:44px;display:inline-flex;align-items:center;gap:var(--ui-space-2, 8px);padding:0 var(--ui-space-3, 12px);border-radius:var(--ui-radius-md, 12px);border:1px solid var(--ui-border, color-mix(in srgb, var(--app-hint) 45%, transparent));background:var(--ui-surface, var(--app-bg));color:var(--ui-text, var(--app-text));font:inherit;font-size:.9375rem;line-height:1.25;cursor:pointer;text-align:left}.timer-form__choice--mode{flex:1 1 100%;align-items:flex-start;padding:var(--ui-space-3, 12px)}.timer-form__choice-text{display:grid;gap:2px;min-width:0}.timer-form__choice-label{font-weight:600}.timer-form__choice-description{color:var(--ui-text-secondary, var(--app-hint));font-size:.8125rem;font-weight:400}.timer-form__choice input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.timer-form__choice[data-selected=true]{box-shadow:inset 0 0 0 2px var(--ui-accent, var(--app-button))}.timer-form__choice:focus-visible,.timer-form__choice:has(input:focus-visible),.timer-form__emoji-preset:focus-visible{outline:2px solid var(--ui-focus, var(--app-button));outline-offset:2px}.timer-form__emoji-preset{width:44px;min-width:44px;min-height:44px;display:inline-grid;place-items:center;border-radius:var(--ui-radius-md, 12px);border:1px solid var(--ui-border, color-mix(in srgb, var(--app-hint) 45%, transparent));background:var(--ui-surface, var(--app-bg));color:var(--ui-text, var(--app-text));font-size:1.25rem;cursor:pointer}.timer-form__emoji-preset[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--ui-accent, var(--app-button))}.timer-form__choice--color{padding-right:var(--ui-space-3, 12px)}.timer-form__swatch{width:16px;height:16px;flex:0 0 16px;border-radius:var(--ui-radius-pill, 999px);background:var(--timer-choice-accent, var(--ui-text-secondary));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ui-text) 18%,transparent)}.timer-form__swatch--none{background:transparent;box-shadow:inset 0 0 0 1px var(--ui-border, color-mix(in srgb, var(--app-hint) 45%, transparent))}.timer-form__choice--color[data-color=coral]{--timer-choice-accent: var(--timer-accent-coral)}.timer-form__choice--color[data-color=amber]{--timer-choice-accent: var(--timer-accent-amber)}.timer-form__choice--color[data-color=lime]{--timer-choice-accent: var(--timer-accent-lime)}.timer-form__choice--color[data-color=teal]{--timer-choice-accent: var(--timer-accent-teal)}.timer-form__choice--color[data-color=sky]{--timer-choice-accent: var(--timer-accent-sky)}.timer-form__choice--color[data-color=violet]{--timer-choice-accent: var(--timer-accent-violet)}.timer-form__choice--color[data-color=rose]{--timer-choice-accent: var(--timer-accent-rose)}.timer-form__choice--color[data-color=slate]{--timer-choice-accent: var(--timer-accent-slate)}.timer-form__preview{max-width:175px;min-width:0}.timer-form__preview .timer-card{width:100%}.timer-form__preview .timer-card__actions{min-height:44px}.timer-form__input:disabled,.timer-form__choice:disabled,.timer-form__emoji-preset:disabled{opacity:.65}.timer-form__error{margin:0;color:var(--ui-destructive-text, var(--app-destructive));font-size:.875rem}.timer-form__error--form{padding:var(--ui-space-3, 12px) var(--ui-space-4, 16px);border-radius:var(--ui-radius-md, 12px);background:color-mix(in srgb,var(--ui-destructive, var(--app-destructive)) 12%,var(--ui-bg, var(--app-bg)))}.timer-form__actions{display:flex;flex-wrap:wrap;gap:var(--ui-space-2, 8px);padding-top:var(--ui-space-1, 4px)}.timer-form__actions:empty{display:none}.timer-form__submit-fallback{min-width:44px;min-height:44px}@media(max-width:320px){.timer-form-screen{padding-bottom:calc(96px + var(--ui-safe-bottom))}.timer-form__choice--mode{flex-basis:100%}.timer-form__input--emoji{max-width:100%}}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.6;cursor:not-allowed}.settings-screen{display:grid;gap:var(--ui-space-5, 20px);min-width:0}.settings-screen__group{overflow:hidden;background:var(--ui-surface-secondary, var(--app-secondary-bg))}.settings-screen__group .ui-cell{min-height:0;padding:0}.settings-screen__group .ui-button{width:100%;justify-content:flex-start;border-radius:0;box-shadow:none}.settings-screen__danger .ui-section__title{color:var(--ui-destructive-text, var(--app-destructive))}.account-delete-dialog .ui-field__control{padding:.55rem .75rem;border-radius:var(--ui-radius-md, 12px);border:1px solid var(--ui-border, color-mix(in srgb, var(--app-hint) 45%, transparent));background:var(--ui-surface, var(--app-bg));color:var(--ui-text, var(--app-text));font:inherit;font-size:1rem}.account-deleted-screen{display:grid;justify-items:start;gap:var(--ui-space-3, 12px);min-width:0}.account-deleted-screen .ui-placeholder{padding-top:0}.timer-details-screen{display:flex;flex-direction:column;gap:var(--ui-space-4, 16px);min-width:0;max-width:100%;overflow-x:clip}.timer-details__header{display:flex;min-width:0}.timer-details__hero{display:grid;gap:var(--ui-space-2, 8px);min-width:0;padding:var(--ui-space-4, 16px);border-radius:var(--ui-radius-md, 12px);background:var(--ui-surface-secondary, var(--app-secondary-bg))}.timer-details__hero[data-color]{box-shadow:inset 3px 0 color-mix(in srgb,var(--timer-card-accent) 72%,transparent);background:color-mix(in srgb,var(--timer-card-accent) 16%,var(--ui-surface-secondary, var(--app-secondary-bg)))}.timer-details__hero[data-color=coral]{--timer-card-accent: var(--timer-accent-coral)}.timer-details__hero[data-color=amber]{--timer-card-accent: var(--timer-accent-amber)}.timer-details__hero[data-color=lime]{--timer-card-accent: var(--timer-accent-lime)}.timer-details__hero[data-color=teal]{--timer-card-accent: var(--timer-accent-teal)}.timer-details__hero[data-color=sky]{--timer-card-accent: var(--timer-accent-sky)}.timer-details__hero[data-color=violet]{--timer-card-accent: var(--timer-accent-violet)}.timer-details__hero[data-color=rose]{--timer-card-accent: var(--timer-accent-rose)}.timer-details__hero[data-color=slate]{--timer-card-accent: var(--timer-accent-slate)}.timer-details__identity{display:flex;align-items:flex-start;gap:var(--ui-space-3, 12px);min-width:0}.timer-details__emoji{font-size:2rem;line-height:1}.timer-details__title{margin:0;min-width:0;overflow-wrap:anywhere;font-size:1.25rem;font-weight:700;line-height:1.25}.timer-details__title:focus{outline:none}.timer-details__title:focus-visible{outline:2px solid var(--ui-focus, var(--ui-accent-text));outline-offset:2px}.timer-details__color{margin:0;color:var(--ui-text-secondary, var(--app-hint));font-size:.875rem}.timer-details__count{display:grid;gap:0;min-width:0}.timer-details__status,.timer-details__days,.timer-details__time{margin:0;min-width:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.timer-details__status{font-size:1rem;font-weight:600}.timer-details__days{font-size:clamp(1.75rem,8vw,2.5rem);font-weight:700;letter-spacing:-.03em;line-height:1.15}.timer-details__time{font-size:1.25rem;font-weight:600}.timer-details__anchor{margin:0;min-width:0;overflow-wrap:anywhere;color:var(--ui-text-secondary, var(--app-hint));font-size:.9375rem}.timer-details__celebration{padding:var(--ui-space-3, 12px) var(--ui-space-4, 16px);border-radius:var(--ui-radius-md, 12px);background:color-mix(in srgb,var(--ui-accent) 16%,var(--ui-surface-secondary));animation:timer-details-celebrate .6s ease-out}.timer-details__celebration[data-reduced-motion=true]{animation:none}@keyframes timer-details-celebrate{0%{transform:translateY(-4px);opacity:.4}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.timer-details__celebration{animation:none}}.timer-details__goal{display:grid;gap:var(--ui-space-2, 8px);padding:var(--ui-space-3, 12px)}.timer-details__goal-bar{width:100%;height:8px;overflow:hidden;border-radius:var(--ui-radius-pill, 999px);background:var(--ui-border, color-mix(in srgb, var(--app-hint) 30%, transparent))}.timer-details__goal-fill{height:100%;max-width:100%;background:var(--ui-accent)}.timer-details__goal-exact,.timer-details__goal-over{margin:0}.timer-details__milestones{margin:0;padding:0;list-style:none;display:grid;gap:var(--ui-space-3, 12px)}.timer-details__milestone{display:grid;gap:var(--ui-space-1, 4px);min-width:0;padding:var(--ui-space-3, 12px);border-radius:var(--ui-radius-md, 12px);background:var(--ui-surface-secondary, var(--app-secondary-bg))}.timer-details__milestone-title,.timer-details__milestone-message,.timer-details__milestone-when{margin:0;min-width:0;overflow-wrap:anywhere}.timer-details__milestone-title{font-weight:600}.timer-notify-toggle{display:flex;align-items:center;gap:12px;min-height:44px;font-size:1rem}.timer-notify-toggle input{width:24px;height:24px;min-width:24px;min-height:24px;margin:0;flex:0 0 auto}.timer-notify-toggle__hint,.timer-notify-toggle__medical{margin:8px 0 0;color:var(--ui-text-secondary);font-size:.875rem}.timer-details__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ui-space-2, 8px)}.timer-details__actions .ui-button{width:100%}.timer-details__share-preview{display:block;width:min(100%,360px);height:auto;aspect-ratio:1 / 1;border-radius:var(--ui-radius-md, 12px);background:var(--ui-surface-secondary, var(--app-secondary-bg))}.timer-details__source-body{display:grid;gap:var(--ui-space-2, 8px);margin:var(--ui-space-4, 16px) 0;min-width:0}.timer-details__source-body p,.timer-details__disclaimer{margin:0;min-width:0;overflow-wrap:anywhere}.timer-details__source-body a{color:var(--ui-accent-text);overflow-wrap:anywhere}@media(max-width:359px){.timer-details__actions{grid-template-columns:minmax(0,1fr)}}.timer-details__history{margin:0;padding:0;list-style:none;display:grid;gap:var(--ui-space-2, 8px)}.timer-details__history-item{display:grid;gap:2px;min-width:0;padding:var(--ui-space-3, 12px);border-radius:var(--ui-radius-md, 12px);background:var(--ui-surface-secondary, var(--app-secondary-bg))}.timer-details__history-when,.timer-details__history-duration,.timer-details__history-error{margin:0;min-width:0;overflow-wrap:anywhere}.timer-details__history-error{color:var(--ui-destructive-text, var(--app-destructive))}.calendar-screen{display:flex;flex-direction:column;gap:var(--ui-space-3, 12px);min-width:0;max-width:100%;overflow-x:clip}.calendar-screen__header{display:grid;gap:var(--ui-space-2, 8px);min-width:0}.calendar-screen__heading{margin:0;font-size:1.15rem;font-weight:600}.calendar-screen__timezone{margin:0;color:var(--ui-text-secondary, var(--app-hint));font-size:.875rem;overflow-wrap:anywhere}.calendar-screen__nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px auto;align-items:center;gap:var(--ui-space-1, 4px);min-width:0}.calendar-screen__month{margin:0;text-align:center;font-weight:600;overflow-wrap:anywhere}.calendar-screen__today{justify-self:end}.calendar-screen__filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--ui-space-2, 8px);min-width:0}.calendar-screen__empty{margin:0;color:var(--ui-text-secondary, var(--app-hint))}.calendar-grid{width:calc(100% + 2 * var(--ui-space-4, 16px));margin-left:calc(-1 * var(--ui-space-4, 16px));margin-right:calc(-1 * var(--ui-space-4, 16px));border-collapse:collapse;table-layout:fixed}.calendar-grid th{padding:var(--ui-space-1, 4px) 0;color:var(--ui-text-secondary, var(--app-hint));font-size:.75rem;font-weight:600;text-align:center}.calendar-grid td{padding:0;vertical-align:top}.calendar-day{width:100%;min-width:0;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;padding:4px 2px;border:0;border-radius:var(--ui-radius-sm, 8px);background:transparent;color:inherit;font:inherit;cursor:pointer}.calendar-day[data-outside=true]{color:var(--ui-text-secondary, var(--app-hint))}.calendar-day[data-today=true]{box-shadow:inset 0 0 0 2px var(--ui-accent, var(--app-button))}.calendar-day[aria-selected=true],.calendar-grid td[aria-selected=true] .calendar-day{background:var(--ui-surface-secondary, var(--app-secondary-bg))}.calendar-day:focus-visible{outline:2px solid var(--ui-focus, var(--app-button));outline-offset:-2px}.calendar-day__number{font-variant-numeric:tabular-nums;font-weight:600;line-height:1.2}.calendar-day__markers{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;min-width:0}.calendar-day__marker{padding:0 3px;border-radius:var(--ui-radius-sm, 8px);background:var(--ui-surface-secondary, var(--app-secondary-bg));color:var(--ui-text, var(--app-text));font-size:.625rem;font-weight:700;line-height:1.3}.calendar-day__marker[data-kind=reset]{box-shadow:inset 0 0 0 1px var(--ui-accent, var(--app-button))}.calendar-day__marker[data-kind=goal]{box-shadow:inset 0 0 0 1px var(--timer-accent-lime)}.calendar-day__marker[data-kind=milestone]{box-shadow:inset 0 0 0 1px var(--timer-accent-violet)}@media(max-width:359px){.calendar-screen__filters{grid-template-columns:minmax(0,1fr)}.calendar-screen__nav{grid-template-columns:44px minmax(0,1fr) 44px}.calendar-screen__today{grid-column:1 / -1;justify-self:stretch}}
