.task-card{position:relative;display:flex;flex-direction:column;gap:var(--space-2);width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-card);color:var(--color-text);text-align:left;font:inherit;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation;transition:border-color .12s ease,box-shadow .12s ease}.task-card:hover{border-color:var(--color-border-strong)}.task-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.task-card.is-placeholder{opacity:.35}.task-card.is-overlay{cursor:grabbing;box-shadow:var(--shadow-drag);transform:rotate(1.5deg)}.task-card__title{font-weight:700;font-size:var(--text-md);line-height:1.3;overflow-wrap:anywhere}.task-card__assignee{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700}.task-card__assignee svg{width:14px;height:14px}.task-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--text-xs)}.task-card__topic{padding:2px var(--space-2);border-radius:999px;background:var(--color-primary-soft);color:var(--color-text);font-weight:600}.task-card__due{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted)}.task-card__due.is-overdue{color:var(--color-danger);font-weight:700}.task-card__due.is-today,.task-card__due.is-soon{color:var(--color-warning);font-weight:700}.task-card__due-tag{text-transform:uppercase;letter-spacing:.04em;font-size:.65rem}.task-card__entry{display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-2);border-top:1px dashed var(--color-border);font-size:var(--text-sm)}.task-card__entry-note{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--color-text)}.task-card__entry-footer{display:flex;justify-content:space-between;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs)}.task-card__count{font-weight:700;white-space:nowrap}.task-card__entry-empty{color:var(--color-text-muted);font-size:var(--text-xs);font-style:italic}.task-card.is-high{border-left:4px solid var(--status-urgent)}.task-card.is-low{border-left:4px solid var(--color-border-strong)}.task-card__priority{display:inline-block;margin-right:var(--space-2);padding:1px var(--space-2);border-radius:999px;font-size:var(--text-xs);font-weight:700;vertical-align:2px}.task-card__priority.is-high{background:var(--color-danger-soft);color:var(--color-danger)}.task-card__priority.is-low{background:var(--color-column);color:var(--color-text-muted)}.task-card__badge{display:inline-flex;align-items:center;gap:3px;color:var(--color-text-muted);font-weight:700}.task-card__badge svg{width:14px;height:14px}.task-card__badge.is-complete{color:var(--color-text)}.task-card.is-scheduled{opacity:.7;border-style:dashed}.task-card__scheduled{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600}.column{display:flex;flex-direction:column;min-height:0;border-radius:var(--radius-lg);background:var(--panel-column);border-top:4px solid var(--column-accent);transition:box-shadow .12s ease,background-color .12s ease}.column.is-over{box-shadow:inset 0 0 0 2px var(--column-accent)}.column__header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-2)}.column__title{margin:0;font-family:var(--font-heading);color:var(--color-heading);font-size:var(--text-lg);font-weight:700;line-height:1.1}.column__toggle{display:flex;align-items:center;gap:var(--space-1);min-height:var(--tap-target);margin-block:calc((var(--tap-target) - 1.5rem) / -2);padding:0;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.column__toggle svg{flex:none;width:18px;height:18px;color:var(--color-text-muted)}.column.is-collapsed .column__header{padding-bottom:var(--space-3)}@media(max-width:599px){.column{flex:none}.column__body{overflow-y:visible}}.column__count{min-width:1.5rem;padding:0 var(--space-2);border-radius:999px;background:var(--color-surface);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;line-height:1.5rem;text-align:center}.column__add{margin-left:auto;width:var(--tap-target);height:var(--tap-target);margin-block:calc((var(--tap-target) - 2rem) / -2);border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);font-size:var(--text-lg);cursor:pointer}.column__add:hover{background:var(--color-surface);color:var(--color-text)}.column__body{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-height:6rem;padding:var(--space-2) var(--space-3) var(--space-3);overflow-y:auto;overscroll-behavior:contain}.column__empty{margin:0;padding:var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.board-area{display:flex;flex-direction:column;height:100%;min-height:0}.board-area>.board{flex:1;min-height:0}.board__scheduled{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin:var(--space-3) var(--space-4) 0;padding:var(--space-2) var(--space-3);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--panel-surface, var(--color-surface));color:var(--color-text-muted);font-size:var(--text-sm)}.board{display:flex;flex-direction:column;gap:var(--space-3);height:100%;padding:var(--space-3) var(--space-4) calc(var(--space-4) + var(--pet-room));overflow-y:auto;overscroll-behavior-y:contain}@media(min-width:600px){.board{display:grid;grid-auto-flow:column;grid-auto-columns:min(85vw,22rem);overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding-inline:var(--space-4);overscroll-behavior-x:contain}.board>.column{scroll-snap-align:start}.board.is-dragging{scroll-snap-type:none}}@media(min-width:1100px){.board{grid-auto-columns:minmax(0,1fr);overflow-x:visible;scroll-snap-type:none}}.toast{position:fixed;left:50%;bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;gap:var(--space-3);width:min(calc(100vw - 2 * var(--space-4)),32rem);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);box-shadow:var(--shadow-modal);font-size:var(--text-sm);font-weight:600;transform:translate(-50%)}.toast button{margin-left:auto;border:none;background:transparent;color:inherit;font-size:var(--text-lg);cursor:pointer}.swatches{margin:0;padding:0;border:none}.swatches>legend{margin-bottom:var(--space-1);padding:0}.swatches__options{display:flex;flex-wrap:wrap;gap:2px}.swatches__group-title{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700}.swatches__current{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--text-xs)}.swatch--custom input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;pointer-events:auto}.swatch__dot--custom{display:inline-flex;align-items:center;justify-content:center;background:var(--color-column);color:var(--color-text-muted);font-weight:700;box-shadow:inset 0 0 0 1px var(--color-border-strong)}.swatch--custom.is-checked .swatch__dot{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-text)}.swatch--custom input:focus-visible+.swatch__dot{outline:2px solid var(--color-focus);outline-offset:4px}.swatch{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--tap-target);height:var(--tap-target);cursor:pointer}.swatch input{position:absolute;opacity:0;pointer-events:none}.swatch__dot{width:26px;height:26px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--color-border-strong)}.swatch input:checked+.swatch__dot{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-text)}.swatch input:focus-visible+.swatch__dot{outline:2px solid var(--color-focus);outline-offset:4px}.modal{width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;border:none;background:var(--color-surface);color:var(--color-text)}.modal::backdrop{background:var(--color-overlay)}.modal__content{display:flex;flex-direction:column;height:100%}.modal__header{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:var(--space-3);padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.modal__title{margin:0;font-family:var(--font-heading);color:var(--color-heading);font-size:var(--text-xl);font-weight:700;line-height:1.1}.modal__actions{display:flex;align-items:center;gap:var(--space-1);margin-left:auto}.modal__icon-button{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-target);height:var(--tap-target);border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);font-size:1.75rem;line-height:1;cursor:pointer}.modal__icon-button:hover{background:var(--color-column);color:var(--color-text)}.modal__icon-button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.modal__body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-4) calc(var(--space-6) + env(safe-area-inset-bottom))}@media(min-width:720px){.modal{width:min(44rem,calc(100vw - 2 * var(--space-6)));height:auto;max-height:calc(100vh - 2 * var(--space-6));margin:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-modal)}.modal__content{max-height:calc(100vh - 2 * var(--space-6))}.modal__header{padding-top:var(--space-4)}.modal__body{padding:var(--space-5)}}.board-editor{display:flex;flex-direction:column;gap:var(--space-4)}.board-editor__workspace{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.board-editor__intro{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.board-editor__list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.board-editor__row{display:flex;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised)}.board-editor__grip{align-self:center;cursor:grab;touch-action:none}.board-editor__row.is-dragging{position:relative;z-index:2;border-color:var(--color-primary-hover);box-shadow:var(--shadow-drag)}.board-editor__row.is-dragging .board-editor__grip{cursor:grabbing}.board-editor__order{display:flex;flex-direction:column}.board-editor__main{display:flex;flex:1;flex-direction:column;gap:var(--space-2);min-width:0}.board-editor__line{display:flex;align-items:center;gap:var(--space-2)}.board-editor__name{flex:1;min-width:0}.board-editor__color{flex:none;width:32px;height:32px;border:none;border-radius:50%;box-shadow:inset 0 0 0 1px var(--color-border-strong);cursor:pointer}.board-editor__color[aria-expanded=true]{box-shadow:0 0 0 2px var(--color-surface-raised),0 0 0 4px var(--color-text)}.board-editor__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer}.board-editor__icon:hover:not(:disabled){background:var(--color-column);color:var(--color-text)}.board-editor__icon:disabled{opacity:.35;cursor:default}.board-editor__delete:hover:not(:disabled){background:var(--color-danger-soft);color:var(--color-danger)}.board-editor__color:focus-visible,.board-editor__icon:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.board-editor__meta{display:flex;align-items:center;gap:var(--space-3);padding-left:40px;font-size:var(--text-sm)}.board-editor__done{display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px;font-weight:600;cursor:pointer}.board-editor__done input{width:18px;height:18px;accent-color:var(--color-primary-hover)}.board-editor__count{margin-left:auto;color:var(--color-text-muted)}.board-editor__add{align-self:flex-start}.board-editor__removed{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-column)}.board-editor__subtitle{margin:0;font-size:var(--text-md);font-weight:700}.board-editor__move{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.board-editor__move .field{flex:1;min-width:14rem}.board-editor__problems{margin:0;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-5);border-radius:var(--radius-sm);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--text-sm);font-weight:600}.completed__empty{margin:0;color:var(--color-text-muted)}.completed__list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.completed__item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised)}.completed__title{justify-self:start;padding:0;border:none;background:none;color:var(--color-text);font:inherit;font-weight:700;text-align:left;text-decoration:line-through;text-decoration-color:var(--color-border-strong);cursor:pointer}.completed__title:hover{text-decoration-color:currentColor}.completed__title:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.completed__meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-3);grid-column:1;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600}.completed__column{display:inline-flex;align-items:center;gap:var(--space-1)}.completed__column:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--column-color)}.completed__reopen{grid-column:2;grid-row:1 / span 2}.archive{display:grid;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.archive__title{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-lg)}.archive__text{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.archive__controls{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-2)}.archive__year{display:grid;gap:var(--space-1);font-size:var(--text-sm)}.archive__done{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-primary-soft);font-weight:600}.archive__done a{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-link)}.archive__done svg{width:14px;height:14px}.history{display:inline-flex;align-items:center;gap:var(--space-1)}.history__button:disabled{opacity:.4;cursor:default}.history__error{position:fixed;left:50%;bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:60;display:flex;align-items:center;gap:var(--space-3);width:min(calc(100vw - 2 * var(--space-4)),32rem);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);box-shadow:var(--shadow-modal);font-size:var(--text-sm);font-weight:600;transform:translate(-50%)}.history__error button{margin-left:auto;border:none;background:transparent;color:inherit;font-size:var(--text-lg);cursor:pointer}@media(max-width:599px){.history{position:fixed;left:var(--space-4);bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:40;padding:4px;border:1px solid var(--color-border-strong);border-radius:999px;background:var(--color-surface-raised);box-shadow:var(--shadow-modal)}.history:not(.has-history){display:none}.history__error{bottom:calc(var(--space-4) + var(--tap-target) + var(--space-4) + env(safe-area-inset-bottom))}}.brand-logo{display:inline-flex}.brand-logo img{width:auto;height:100%}.brand-logo__dark{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .brand-logo__light{display:none}:root:not([data-theme=light]) .brand-logo__dark{display:block}}:root[data-theme=dark] .brand-logo__light{display:none}:root[data-theme=dark] .brand-logo__dark{display:block}.login{display:grid;min-height:100dvh;padding:var(--space-4);place-items:center;background:var(--color-bg)}.login__card{width:100%;max-width:380px;padding:var(--space-6) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.login__title{display:flex;justify-content:center;margin:0 0 var(--space-2)}.login__logo{height:64px}.login__subtitle,.login__hint{margin:0;color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.login__submit{width:100%}.login__divider{display:flex;align-items:center;gap:var(--space-3);margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.login__divider:before,.login__divider:after{flex:1;border-top:1px solid var(--color-border);content:""}.login__google{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:var(--space-2)}.login__google-icon{width:18px;height:18px}.agenda{display:grid;gap:var(--space-4);align-content:start;max-width:760px;margin:0 auto;padding:var(--space-3) var(--space-4) calc(var(--space-6) + var(--pet-room))}.agenda__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3)}.agenda__nav,.agenda__tools{display:flex;align-items:center;gap:var(--space-2)}.agenda__day{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl)}.agenda__today,.agenda__now{padding:0 var(--space-2);border-radius:999px;background:var(--color-primary);color:var(--color-on-primary);font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;line-height:1.4rem}.agenda__picker{width:auto}.agenda__summary{flex-basis:100%;margin:0;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.agenda__filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.agenda__filter{display:inline-flex;align-items:center;gap:var(--space-1);min-height:36px;padding:var(--space-1) var(--space-3);border:1px solid var(--color-border-strong);border-radius:999px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);cursor:pointer}.agenda__filter[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary-soft);font-weight:700}.agenda__dot{flex-shrink:0;width:10px;height:10px;border-radius:50%;background:var(--workspace-color, var(--color-border-strong))}.agenda__status,.agenda__empty{margin:0;color:var(--color-text-muted)}.agenda__empty{padding:var(--space-6) 0;font-size:var(--text-lg);text-align:center}.agenda__block{display:grid;gap:var(--space-2)}.agenda__block-title{margin:0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.agenda__block.is-danger .agenda__block-title{color:var(--color-danger)}.agenda__list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.agenda__item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-left:4px solid var(--workspace-color, var(--color-link));border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.agenda__item.is-now{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),var(--shadow-card)}.agenda__item.is-past{opacity:.6}.agenda__item.is-reminder{border-left-color:var(--color-warning)}.agenda__block.is-done .agenda__item{opacity:.7}.agenda__block.is-done .agenda__title{text-decoration:line-through}.agenda__item.is-task .agenda__dot{margin-top:6px}.agenda__time{display:grid;flex-shrink:0;gap:var(--space-1);justify-items:start;min-width:6.5rem;font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-weight:700}.agenda__main{display:grid;flex:1;gap:2px;min-width:0}.agenda__title{justify-self:start;color:var(--color-text);font-weight:700;overflow-wrap:anywhere}a.agenda__title{display:inline-flex;align-items:center;gap:var(--space-1);text-decoration:none}a.agenda__title svg{width:14px;height:14px;color:var(--color-link)}.agenda__open{padding:0;border:none;background:none;font:inherit;font-weight:700;text-align:left;text-decoration:underline;text-decoration-color:var(--color-border-strong);text-underline-offset:3px;cursor:pointer}.agenda__meta{color:var(--color-text-muted);font-size:var(--text-sm)}.agenda__check{display:grid;flex-shrink:0;width:26px;height:26px;place-items:center;border:2px solid var(--color-border-strong);border-radius:50%;background:transparent;color:transparent;cursor:pointer}.agenda__check svg{width:14px;height:14px}.agenda__check:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}@media(max-width:480px){.agenda__item.is-event{flex-direction:column;gap:var(--space-1)}}.assistant-setup{display:grid;gap:var(--space-4)}.assistant-setup__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.assistant-setup__row+.assistant-setup__row{padding-top:var(--space-4);border-top:1px solid var(--color-border)}.assistant-setup__text{display:grid;flex:1 1 260px;gap:var(--space-1);font-size:var(--text-sm)}.assistant-setup__text span{color:var(--color-text-muted)}.assistant-setup__text a{color:var(--color-link)}.assistant-setup__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.assistant-setup__key{display:flex;flex:1 1 260px;flex-wrap:wrap;align-items:end;gap:var(--space-2)}.assistant-setup__key>:first-child{flex:1 1 180px}.assistant-setup .form__error{flex-basis:100%}.jimia{display:flex;flex-direction:column;gap:var(--space-3);min-height:0;height:100%}.jimia--setup{gap:var(--space-5);overflow-y:auto}.jimia__status{padding:var(--space-4);color:var(--color-text-muted)}.jimia__messages{display:flex;flex:1;flex-direction:column;gap:var(--space-3);min-height:0;padding:var(--space-1);overflow-y:auto;overscroll-behavior:contain}.jimia__empty{display:grid;gap:var(--space-3);margin:auto 0}.jimia__greeting{display:flex;align-items:flex-start;gap:var(--space-3)}.jimia__avatar{display:grid;flex-shrink:0;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--color-primary);color:var(--color-on-primary)}.jimia__greeting-title{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl)}.jimia__greeting-text,.jimia__hint{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--text-sm)}.jimia__bubble{display:grid;gap:var(--space-2);max-width:min(85%,36rem);padding:var(--space-3);border-radius:var(--radius-lg);overflow-wrap:anywhere}.jimia__bubble p{margin:0;white-space:pre-wrap}.jimia__bubble.is-user{align-self:flex-end;border-bottom-right-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-on-primary)}.jimia__bubble.is-assistant{align-self:flex-start;border:1px solid var(--color-border);border-bottom-left-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text)}.jimia__bubble.is-thinking{color:var(--color-text-muted);font-style:italic}.jimia__images-note{font-size:var(--text-sm);opacity:.85}.jimia__actions{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.jimia__action{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-text);text-decoration:none}a.jimia__action:hover{background:var(--color-column)}.jimia__action>svg{flex-shrink:0;width:14px;height:14px;color:var(--color-link)}.jimia__action-icon{display:grid;flex-shrink:0;color:var(--color-primary)}.jimia__action-text{display:grid;flex:1;min-width:0}.jimia__action-kind{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;text-transform:uppercase}.jimia__action-title{font-weight:600}.jimia__action-detail{color:var(--color-text-muted);font-size:var(--text-sm)}.jimia__suggestions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.jimia__chip{min-height:var(--tap-target);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border-strong);border-radius:999px;background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);cursor:pointer}.jimia__chip:hover:not(:disabled){border-color:var(--color-primary)}.jimia__error{margin:0}.jimia__composer{display:grid;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface)}.jimia__composer:focus-within{border-color:var(--color-primary)}.jimia__row{display:flex;align-items:flex-end;gap:var(--space-2)}.jimia__icon-button{display:grid;flex-shrink:0;width:var(--tap-target);height:var(--tap-target);place-items:center;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer}.jimia__icon-button:hover:not(:disabled){background:var(--color-primary-soft);color:var(--color-text)}.jimia__icon-button:disabled{opacity:.4;cursor:default}.jimia__input{flex:1;min-width:0;min-height:var(--tap-target);max-height:10rem;padding:var(--space-2);border:none;background:transparent;color:var(--color-text);font:inherit;resize:none;field-sizing:content}.jimia__input:focus{outline:none}.jimia__send{flex-shrink:0}.jimia__attachments{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.jimia__attachments li{position:relative}.jimia__attachments img{display:block;width:64px;height:64px;border-radius:var(--radius-md);object-fit:cover}.jimia__remove{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border:none;border-radius:50%;background:var(--color-text);color:var(--color-surface);font-size:var(--text-md);line-height:1;cursor:pointer}.jimia__clear{align-self:center;border:none;background:none;color:var(--color-text-muted);font:inherit;font-size:var(--text-xs);text-decoration:underline;cursor:pointer}.jimia-page{display:flex;flex-direction:column;width:100%;max-width:760px;height:calc(100dvh - 9rem);margin:0 auto}.jimia-launcher{position:fixed;right:var(--space-4);bottom:calc(var(--space-4) + env(safe-area-inset-bottom));z-index:45;display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:var(--space-2) var(--space-4);border:none;border-radius:999px;background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-modal);font:inherit;font-weight:700;cursor:pointer}.jimia-launcher:hover{background:var(--color-primary-hover)}.jimia-panel__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:var(--color-overlay)}.jimia-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:56;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-3) calc(var(--space-3) + env(safe-area-inset-bottom));background:var(--color-bg)}@media(min-width:720px){.jimia-panel{inset:var(--space-4) var(--space-4) var(--space-4) auto;width:420px;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal)}}.jimia-panel__header{display:flex;align-items:center;gap:var(--space-3)}.jimia-panel__title{flex:1;margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl)}.jimia-panel__expand{color:var(--color-link);font-size:var(--text-sm);font-weight:600}.jimia-panel__close{width:var(--tap-target);height:var(--tap-target);border:none;border-radius:50%;background:transparent;color:var(--color-text);font-size:var(--text-xl);cursor:pointer}.jimia-panel__close:hover{background:var(--color-primary-soft)}.reminders{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);max-width:760px;margin:0 auto;padding:var(--space-3) var(--space-4) calc(var(--space-6) + var(--pet-room))}.reminders__intro,.reminders__status,.reminders__hint{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.reminders__new{display:grid;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.reminders__quick{display:flex;gap:var(--space-2)}.reminders__quick-input{flex:1;min-width:0;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit}.reminders__quick-input:focus{border-color:var(--color-primary);outline:none}.reminders__more{justify-self:start;padding:0;border:none;background:none;color:var(--color-link);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer}.reminders__fields{display:grid;gap:var(--space-3)}@media(min-width:600px){.reminders__fields{grid-template-columns:2fr 1fr 1fr}.reminders__fields>.field:has(textarea),.reminders__fields>.field:has([maxlength="200"]){grid-column:1 / -1}}.reminders__list{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.reminder{display:grid;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-left:4px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.reminder.is-today,.reminder.is-soon{border-left-color:var(--color-primary)}.reminder.is-overdue{border-left-color:var(--color-danger)}.reminder__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.reminder__check{display:grid;flex-shrink:0;width:28px;height:28px;place-items:center;border:2px solid var(--color-border-strong);border-radius:50%;background:transparent;color:transparent;cursor:pointer}.reminder__check svg{width:16px;height:16px}.reminder__check:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.reminder__title{flex:1;min-width:0;margin:0;font-size:var(--text-md);font-weight:700;overflow-wrap:anywhere}.reminder__date{padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary-soft);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.reminder__alarm{display:inline-flex;align-items:center;gap:2px;margin-left:var(--space-1)}.reminder__alarm svg{width:13px;height:13px}.reminder.is-overdue .reminder__date{background:var(--color-danger-soft);color:var(--color-danger)}.reminder__missing,.reminder__notes{margin:0;font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:anywhere}.reminder__missing{justify-self:start;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-bg)}.reminder__missing strong{color:var(--color-warning)}.reminder__notes{color:var(--color-text-muted)}.reminder__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.reminder__spacer{flex:1}.reminder__icon{display:grid;width:var(--tap-target);height:var(--tap-target);place-items:center;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer}.reminder__icon:hover:not(:disabled){background:var(--color-primary-soft);color:var(--color-text)}.reminder__icon.is-danger:hover:not(:disabled){background:var(--color-danger-soft);color:var(--color-danger)}.reminder__panel{display:grid;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}@media(min-width:600px){.reminder__times{grid-template-columns:2fr 1fr 1fr}}.reminders__done summary{color:var(--color-text-muted);font-weight:600;cursor:pointer}.reminders__done .reminders__list{margin-top:var(--space-3)}.reminder.is-done{display:flex;align-items:center;gap:var(--space-2);border-left-color:var(--color-border);box-shadow:none}.reminder.is-done .reminder__title{color:var(--color-text-muted);font-weight:400;text-decoration:line-through}.habits{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);max-width:760px;margin:0 auto;padding:var(--space-3) var(--space-4) calc(var(--space-6) + var(--pet-room))}.habits__intro,.habits__status,.habits__hint{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.habits__new{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.habits__quick{display:flex;align-items:center;gap:var(--space-2)}.habits__quick-input{flex:1;min-width:0;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit}.habits__quick-input:focus{border-color:var(--color-primary);outline:none}.habits__presets{display:flex;flex-wrap:wrap;gap:var(--space-2)}.habits__preset{display:inline-flex;align-items:center;gap:var(--space-1);min-height:36px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:var(--text-sm);cursor:pointer}.habits__preset svg{width:16px;height:16px;color:var(--color-primary)}.habits__preset:hover{border-color:var(--color-primary)}.habits__more{justify-self:start;padding:0;border:none;background:none;color:var(--color-link);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer}.habits__fields{display:grid;gap:var(--space-3)}.habits__icons{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0;border:none}.habits__icons legend{margin-bottom:var(--space-1)}.habits__icon-choice{display:grid;width:var(--tap-target);height:var(--tap-target);place-items:center;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-muted);cursor:pointer}.habits__icon-choice:hover{border-color:var(--color-primary);color:var(--color-text)}.habits__icon-choice[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-text)}.habits__goal{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--space-3)}.habits__summary{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-primary-soft)}.habits__summary p{margin:0}.habits__summary-title{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700}.habits__summary-text{color:var(--color-text-muted);font-size:var(--text-sm)}.habits__week{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.habits__week-label{min-width:9rem;font-family:var(--font-heading);font-size:var(--text-lg);font-weight:600;text-align:center}.habits__list{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.progress-ring{flex-shrink:0}.progress-ring__track{stroke:var(--color-border)}.progress-ring__value{stroke:var(--color-primary);transition:stroke-dashoffset .35s ease}.progress-ring__label{fill:var(--color-text);font-size:15px;font-weight:700}.badge-medal__ribbon{fill:var(--color-border-strong)}.badge-medal__disc{fill:var(--color-surface);stroke:var(--color-border-strong);stroke-width:2;stroke-dasharray:4 3}.badge-medal__days{fill:var(--color-text-muted);font-size:11px;font-weight:700}.badge-medal.is-earned .badge-medal__ribbon{fill:var(--color-primary-hover)}.badge-medal.is-earned .badge-medal__disc{fill:var(--color-primary);stroke:var(--color-primary-hover);stroke-dasharray:none}.badge-medal.is-earned .badge-medal__days{fill:var(--color-on-primary)}.habit{display:grid;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.habit__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.habit__badge{display:grid;flex-shrink:0;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--color-primary-soft);color:var(--color-text);transition:background .2s}.habit__badge.is-done{background:var(--color-primary);color:var(--color-on-primary)}.habit__title{min-width:0;margin:0;font-size:var(--text-md);font-weight:700;overflow-wrap:anywhere}.habit__streak{padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary-soft);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.habit__spacer{flex:1}.habit__icon{display:grid;width:var(--tap-target);height:var(--tap-target);place-items:center;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer}.habit__icon:hover:not(:disabled){background:var(--color-primary-soft);color:var(--color-text)}.habit__icon.is-danger:hover:not(:disabled){background:var(--color-danger-soft);color:var(--color-danger)}.habit__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1);margin:0;padding:0;list-style:none}@media(min-width:600px){.habit__days{gap:var(--space-2)}}.habit__day{--habit-fill: 0;display:grid;width:100%;min-height:56px;place-content:center;gap:2px;padding:var(--space-1) 0;border:2px solid var(--color-border);border-radius:var(--radius-md);background:linear-gradient(to top,var(--color-primary-soft) calc(var(--habit-fill) * 100%),var(--color-bg) calc(var(--habit-fill) * 100%));color:var(--color-text);font:inherit;cursor:pointer;transition:border-color .15s}.habit__day:hover:not(:disabled){border-color:var(--color-primary)}.habit__day.is-today{border-color:var(--color-primary)}.habit__day.is-selected{outline:2px solid var(--color-primary);outline-offset:2px}.habit__day.is-done{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.habit__day.is-done:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.habit__day:disabled{opacity:.45;cursor:default}.habit__weekday{font-size:var(--text-xs);text-transform:capitalize}.habit__number{font-size:var(--text-md);font-weight:700}.habit__counter{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg)}.habit__counter-body{display:grid;flex:1;min-width:0;gap:var(--space-2)}.habit__counter-title{margin:0;font-size:var(--text-sm);font-weight:700}.habit__goal-met{color:var(--color-primary-hover)}.habit__pips{display:flex;flex-wrap:wrap;gap:2px}.habit__pip{display:grid;width:34px;height:34px;place-items:center;padding:0;border:none;border-radius:50%;background:transparent;color:var(--color-border-strong);cursor:pointer;transition:color .15s,transform .15s}.habit__pip svg{width:24px;height:24px}.habit__pip.is-full{color:var(--color-primary)}.habit__pip:hover{transform:scale(1.12)}.habit__pip:active{transform:scale(.92)}.habit__stepper{display:flex;flex-wrap:wrap;gap:var(--space-2)}.habit__stepper .button{min-width:var(--tap-target);font-weight:700}.habit__badges{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4)}.habit__medals{display:flex;gap:var(--space-1);margin:0;padding:0;list-style:none}.habit__next{display:flex;flex:1;align-items:center;gap:var(--space-2);min-width:12rem}.habit__next-body{display:grid;flex:1;gap:var(--space-1)}.habit__next-text{color:var(--color-text-muted);font-size:var(--text-xs)}.habit__bar{display:block;height:6px;overflow:hidden;border-radius:999px;background:var(--color-border)}.habit__bar span{display:block;height:100%;border-radius:inherit;background:var(--color-primary);transition:width .35s ease}.habit__meta{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}@media(prefers-reduced-motion:reduce){.progress-ring__value,.habit__bar span,.habit__pip{transition:none}}.habits__archived summary{color:var(--color-text-muted);font-weight:600;cursor:pointer}.habits__archived .habits__list{margin-top:var(--space-3)}.habit.is-archived{display:flex;align-items:center;gap:var(--space-2);box-shadow:none}.habit.is-archived .habit__title{color:var(--color-text-muted);font-weight:400}.motivation{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);max-width:760px;margin:0 auto;padding:var(--space-3) var(--space-4) calc(var(--space-6) + var(--pet-room))}.motivation__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3)}.motivation__day{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl);font-weight:600}.motivation__day:first-letter{text-transform:uppercase}.motivation__nav,.motivation__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.motivation__status,.motivation__notice,.motivation__source{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.motivation__card{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.motivation__eyebrow{margin:0;color:var(--color-primary-hover);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.motivation__verse{border-top:4px solid var(--color-primary);background:linear-gradient(to bottom,var(--color-primary-soft),var(--color-surface) 70%)}.motivation__quote,.motivation__message,.motivation__saint{margin:0}.motivation__quote p{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:calc(var(--text-xl) * 1.2);font-style:italic;font-weight:600;line-height:1.3}.motivation__message{font-family:var(--font-heading);font-size:var(--text-lg);line-height:1.4}.motivation__writing{animation:motivation-pulse 1.4s ease-in-out infinite}@keyframes motivation-pulse{50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.motivation__writing{animation:none}}.motivation__saint{padding-left:var(--space-3);border-left:3px solid var(--color-primary)}.motivation__saint p{margin:0;font-style:italic}.motivation__quote footer,.motivation__saint footer{margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm)}.motivation__quote cite,.motivation__saint cite{font-style:normal;font-weight:700}.motivation__quote footer:before,.motivation__saint footer:before{content:"— "}.motivation__liturgy{justify-self:start;margin:0;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary-soft);font-size:var(--text-sm);font-weight:700}.motivation__gospel summary{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;cursor:pointer}.motivation__gospel-text{display:grid;gap:var(--space-2);margin-top:var(--space-3)}.motivation__gospel-text p{margin:0;line-height:1.6}.motivation__saints{margin:0;font-size:var(--text-sm)}.motivation__source a{color:var(--color-link)}.bell,.bell__button{position:relative}.bell__count{position:absolute;top:-4px;right:-4px;display:grid;min-width:20px;height:20px;place-items:center;padding:0 5px;border:2px solid var(--color-surface);border-radius:999px;background:var(--color-primary-hover);color:var(--color-on-primary);font-size:var(--text-xs);font-weight:700;line-height:1}.bell__panel{position:fixed;top:calc(var(--tap-target) + var(--space-4));right:var(--space-2);left:var(--space-2);z-index:40;display:grid;gap:var(--space-2);max-height:min(70vh,560px);padding:var(--space-3);overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-card)}@media(min-width:600px){.bell__panel{position:absolute;top:calc(100% + var(--space-2));right:0;left:auto;width:360px}}.bell__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.bell__title{margin:0;font-family:var(--font-heading);font-size:var(--text-lg)}.bell__link{padding:0;border:none;background:none;color:var(--color-link);font:inherit;font-size:var(--text-sm);font-weight:600;cursor:pointer}.bell__empty{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.bell__list{display:grid;gap:2px;margin:0;padding:0;list-style:none}.bell__item,.bell__toast-body{display:flex;width:100%;align-items:flex-start;gap:var(--space-2);padding:var(--space-2);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.bell__item:hover{background:var(--color-bg)}.bell__item.is-new{background:var(--color-primary-soft)}.bell__icon{display:grid;flex-shrink:0;width:32px;height:32px;place-items:center;border-radius:50%;background:var(--color-bg);color:var(--color-primary-hover)}.bell__icon svg{width:18px;height:18px}.bell__text{display:grid;min-width:0;gap:2px}.bell__text strong{font-size:var(--text-sm);overflow-wrap:anywhere}.bell__body{color:var(--color-text-muted);font-size:var(--text-sm);white-space:pre-line;overflow-wrap:anywhere}.bell__time{color:var(--color-text-muted);font-size:var(--text-xs)}.bell__toast{position:fixed;right:var(--space-3);bottom:calc(var(--space-6) + var(--tap-target));left:var(--space-3);z-index:50;display:flex;align-items:flex-start;border:1px solid var(--color-primary);border-left-width:4px;border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-card);animation:bell-in .25s ease-out}@media(min-width:600px){.bell__toast{left:auto;width:360px}}.bell__toast-close{flex-shrink:0;width:var(--tap-target);height:var(--tap-target);border:none;background:none;color:var(--color-text-muted);font-size:var(--text-lg);cursor:pointer}@keyframes bell-in{0%{opacity:0;transform:translateY(8px)}}@media(prefers-reduced-motion:reduce){.bell__toast{animation:none}}.pet{position:fixed;bottom:calc(var(--space-2) + env(safe-area-inset-bottom) + var(--pet-lift, 0px));z-index:40;pointer-events:none;transition:left var(--pet-walk, 0ms) linear,bottom var(--pet-fall, 0ms) cubic-bezier(.55,0,1,.45)}.pet.is-dragging{z-index:60}.pet__anim{display:block;width:auto;height:130px;-webkit-user-select:none;user-select:none}.pet.is-left .pet__anim{scale:-1 1}.pet__anim.is-agarrado{height:138.125px}@media(max-width:599px){.pet__anim{height:104px}.pet__anim.is-agarrado{height:110.5px}}.pet__cat{position:relative;display:block;padding:0;border:none;background:none;cursor:grab;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent}.pet.is-dragging .pet__cat{cursor:grabbing}.pet.is-dragging .pet__anim{filter:drop-shadow(0 10px 8px color-mix(in srgb,var(--color-text) 22%,transparent))}.pet__cat:focus-visible{border-radius:var(--radius-md);outline:2px solid var(--color-focus);outline-offset:2px}.pet__svg{display:block;width:96px;height:auto;overflow:visible}.pet.is-left .pet__svg{transform:scaleX(-1)}.pet__shadow{fill:var(--color-text);opacity:.12}.pet__fur{fill:var(--pet-fur)}.pet__line{stroke:var(--pet-outline);stroke-width:1.3}.pet__shade{fill:var(--pet-shade)}.pet__ear-inner,.pet__nose{fill:var(--pet-nose)}.pet__blush{fill:var(--pet-nose);opacity:.4}.pet__eye-white,.pet__shine{fill:var(--pet-shine)}.pet__eye-white{stroke:var(--pet-outline);stroke-width:.8}.pet__iris{fill:var(--pet-eye)}.pet__pupil{fill:var(--pet-pupil)}.pet__closed,.pet__mouth,.pet__toes{fill:none;stroke:var(--pet-outline);stroke-width:1.4;stroke-linecap:round}.pet__closed{stroke:var(--pet-pupil);stroke-width:1.8}.pet__tongue{fill:var(--pet-tongue)}.pet__whisker{stroke:var(--pet-outline);stroke-width:.7;stroke-linecap:round;opacity:.6}.pet__tail-outline,.pet__tail-fur,.pet__tail-curl{fill:none;stroke-linecap:round}.pet__tail-outline{stroke:var(--pet-outline);stroke-width:10.5}.pet__tail-fur,.pet__tail-curl{stroke:var(--pet-fur);stroke-width:8}.pet__tail-curl.pet__tail-outline{stroke:var(--pet-outline);stroke-width:10.5}.pet__tail{transform-origin:38px 94px;animation:pet-tail 2.6s ease-in-out infinite}@keyframes pet-tail{50%{transform:rotate(-16deg)}}.pet__eyes{transform-box:fill-box;transform-origin:center;animation:pet-blink 5s infinite}@keyframes pet-blink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.08)}}.pet__eyes-shut{opacity:0}.pet__head{transform-origin:50px 66px;animation:pet-tilt 7s ease-in-out infinite}@keyframes pet-tilt{0%,60%,to{transform:rotate(0)}70%,85%{transform:rotate(-6deg)}}.pet__paw{transform-box:fill-box;transform-origin:center bottom}.pet.is-walking .pet__svg{animation:pet-waddle .6s ease-in-out infinite}.pet.is-walking .pet__paw--a{animation:pet-paw .6s ease-in-out infinite}.pet.is-walking .pet__paw--b{animation:pet-paw .6s ease-in-out infinite .3s}.pet.is-walking .pet__tail{animation-duration:1s}@keyframes pet-waddle{0%,to{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-2px)}}@keyframes pet-paw{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.pet.is-left .pet__svg{scale:-1 1}.pet__svg.is-eat .pet__head{animation:pet-munch .5s ease-in-out infinite}.pet__svg.is-eat .pet__eyes{opacity:0}.pet__svg.is-eat .pet__eyes-shut{opacity:1}@keyframes pet-munch{0%,to{transform:translateY(5px) rotate(3deg)}50%{transform:translateY(7px) rotate(3deg)}}.pet__svg.is-play{animation:pet-hop .7s ease-in-out infinite}@keyframes pet-hop{50%{transform:translateY(-14px) rotate(-4deg)}}.pet__breath{transform-box:fill-box;transform-origin:center bottom;animation:pet-breathe 3.2s ease-in-out infinite}@keyframes pet-breathe{50%{transform:scale(1.02,1.05)}}.pet .pet-bowl{position:absolute;right:-18px;bottom:0;width:34px}.pet.is-left .pet-bowl{right:auto;left:-18px}.pet__toy{position:absolute;right:-22px;bottom:2px;width:24px;height:24px;animation:pet-toy-roll .7s ease-in-out infinite}.pet.is-left .pet__toy{right:auto;left:-22px}@keyframes pet-toy-roll{50%{transform:translate(6px,-8px) rotate(90deg)}}.pet__sparkles{position:absolute;top:-6px;left:50%;color:var(--color-primary-hover);font-size:var(--text-sm);letter-spacing:.3em;white-space:nowrap;transform:translate(-50%);animation:pet-sparkle 1.2s ease-out infinite}@keyframes pet-sparkle{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-14px)}}.pet__bubble{position:absolute;bottom:calc(100% + 6px);left:50%;padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-card);color:var(--color-text);font-size:var(--text-sm);font-weight:600;white-space:nowrap;transform:translate(-50%);animation:pet-bubble-in .25s ease-out}.pet__bubble:after{position:absolute;top:100%;left:50%;border:6px solid transparent;border-top-color:var(--color-surface-raised);content:"";transform:translate(-50%)}@keyframes pet-bubble-in{0%{opacity:0;transform:translate(-50%,6px)}}.pet__zzz{position:absolute;right:12%;bottom:45%;color:var(--color-text-muted);font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;animation:pet-zzz 2.4s ease-in-out infinite}.pet__zzz span{display:inline-block;font-size:.8em;transform:translateY(-.4em)}.pet__dream{position:absolute;bottom:60%;left:50%;pointer-events:none}.pet__dream-dot,.pet__dream-cloud{position:absolute;border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface-raised);box-shadow:var(--shadow-card)}.pet__dream-dot--small{bottom:0;left:0;width:7px;height:7px}.pet__dream-dot--big{bottom:10px;left:8px;width:11px;height:11px}.pet__dream-cloud{bottom:22px;left:14px;display:grid;place-items:center;width:54px;height:46px;font-size:24px;line-height:1;animation:pet-dream-in .6s ease-out,pet-dream-float 3s ease-in-out infinite}.pet__dream-cloud img{width:32px;height:auto;max-height:30px;object-fit:contain}@keyframes pet-dream-in{0%{opacity:0;scale:.6}}@keyframes pet-dream-float{50%{translate:0 -3px}}@media(max-width:599px){.pet__dream-cloud{width:46px;height:40px;font-size:20px}.pet__dream-cloud img{width:26px}}@keyframes pet-zzz{50%{opacity:.4;transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){.pet,.pet *,.pet__svg{animation:none!important;transition:none!important}}.pet-bowl__dish{fill:var(--pet-bowl)}.pet-bowl__food{fill:var(--pet-food)}.pet-litter{position:relative;display:block}.pet-litter img{display:block;width:100%;height:auto}.pet-litter__mess{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.pet-litter__dirt{fill:var(--pet-dirt)}.pet-litter__stink{fill:none;stroke:var(--color-text-muted);stroke-width:4;stroke-linecap:round;animation:pet-zzz 1.8s ease-in-out infinite}.pet-panel{position:fixed;right:var(--space-2);bottom:calc(110px + env(safe-area-inset-bottom));left:var(--space-2);z-index:46;display:grid;gap:var(--space-3);max-height:calc(100vh - 140px);padding:var(--space-4);overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-modal);animation:pet-bubble-in-panel .2s ease-out}@media(min-width:600px){.pet-panel{right:auto;left:var(--space-4);width:340px}}@keyframes pet-bubble-in-panel{0%{opacity:0;transform:translateY(8px)}}.pet-panel__header{display:flex;align-items:flex-start;justify-content:space-between}.pet-panel__name{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl);line-height:1.1}.pet-panel__mood,.pet-panel__hint{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.pet-panel__close{width:var(--tap-target);height:var(--tap-target);margin:calc(var(--space-2) * -1);border:none;background:none;color:var(--color-text-muted);font-size:var(--text-xl);cursor:pointer}.pet-panel__scene{display:flex;align-items:flex-end;justify-content:space-around;padding:var(--space-3) var(--space-2) var(--space-2);border-radius:var(--radius-md);background:var(--color-bg)}.pet-panel__scene-bowl{width:64px;height:auto}.pet-panel__scene .pet-litter{width:88px}.pet-panel__scene-toy{width:34px;height:34px}.pet-panel__meters{display:grid;gap:var(--space-2)}.pet-panel__meter{display:grid;gap:3px}.pet-panel__meter-label{display:flex;justify-content:space-between;font-size:var(--text-sm);font-weight:600}.pet-panel__meter-label span{color:var(--color-text-muted);font-weight:400}.pet-panel__bar{display:block;height:8px;overflow:hidden;border-radius:999px;background:var(--color-border)}.pet-panel__fill{display:block;height:100%;border-radius:inherit;background:var(--color-primary);transition:width .4s ease}.pet-panel__fill.is-mid{background:var(--color-warning)}.pet-panel__fill.is-low{background:var(--color-danger)}.pet-panel__actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.pet-panel__play img{width:22px;height:22px}.pet-panel__feed img{width:28px;height:auto}.calendar{display:grid;gap:var(--space-4);align-content:start;height:100%;padding:var(--space-3) var(--space-4) calc(var(--space-5) + var(--pet-room));overflow-y:auto}@media(min-width:1100px){.calendar{grid-template-columns:minmax(0,1fr) 340px;align-items:start}}.calendar__month,.calendar__day-panel{border-radius:var(--radius-lg);background:var(--panel-column);padding:var(--space-3)}.calendar__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3)}.calendar__title{margin:0;font-family:var(--font-heading);color:var(--color-heading);font-size:var(--text-xl);font-weight:700;line-height:1.1}.calendar__summary{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.calendar__nav{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar__weekday{padding-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;text-align:center;text-decoration:none;text-transform:uppercase}.calendar__day{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;min-height:var(--tap-target);padding:var(--space-1) 2px;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);font:inherit;cursor:pointer}.calendar__day:hover{border-color:var(--color-border-strong)}.calendar__day:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.calendar__day.is-outside{background:transparent;color:var(--color-text-muted)}.calendar__day.is-selected{border-color:var(--color-primary-hover);box-shadow:inset 0 0 0 1px var(--color-primary-hover)}.calendar__date{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:50%;font-size:var(--text-sm);font-weight:600}.calendar__day.is-today .calendar__date{background:var(--color-primary);color:var(--color-on-primary);font-weight:700}.calendar__dot.is-event,.calendar__key.is-event:before,.calendar__preview.is-event,.calendar__entry.is-event{--calendar-kind: var(--color-link)}.calendar__dot.is-due,.calendar__key.is-due:before,.calendar__preview.is-due,.calendar__entry.is-due{--calendar-kind: var(--color-warning)}.calendar__dot.is-entry,.calendar__key.is-entry:before,.calendar__preview.is-entry,.calendar__entry.is-entry{--calendar-kind: var(--color-primary)}.calendar__dots{display:flex;gap:3px}.calendar__dot{width:6px;height:6px;border-radius:50%;background:var(--calendar-kind)}.calendar__legend{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600}.calendar__main-toggle{display:inline-flex;align-items:center;gap:var(--space-1);margin-left:auto;cursor:pointer}.calendar__key{display:inline-flex;align-items:center;gap:var(--space-1)}.calendar__key:before{width:8px;height:8px;border-radius:50%;background:var(--calendar-kind);content:""}.calendar__sync{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--text-sm)}.calendar__sync.is-error{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);font-weight:600}.calendar__previews{display:none}@media(min-width:700px){.calendar__day{align-items:stretch;min-height:6rem;padding:var(--space-1)}.calendar__date{align-self:flex-start}.calendar__dots{display:none}.calendar__previews{display:flex;flex-direction:column;gap:2px;min-width:0}.calendar__preview{overflow:hidden;padding:1px var(--space-1);border-left:3px solid var(--calendar-kind);border-radius:4px;background:var(--color-primary-soft);font-size:var(--text-xs);text-align:left;text-overflow:ellipsis;white-space:nowrap}.calendar__more{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;text-align:left}}.calendar__day-title{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-family:var(--font-heading);color:var(--color-heading);font-size:var(--text-lg);font-weight:700}.calendar__today-tag{padding:0 var(--space-2);border-radius:999px;background:var(--color-primary);color:var(--color-on-primary);font-family:var(--font-body);font-size:var(--text-xs);line-height:1.4rem}.calendar__empty{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.calendar__entries{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.calendar__group+.calendar__group{margin-top:var(--space-4)}.calendar__group-title{margin:0 0 var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;text-transform:uppercase}.calendar__entry-title{align-self:flex-start;color:var(--color-text);font-weight:700;overflow-wrap:anywhere}a.calendar__entry-title{display:inline-flex;align-items:center;gap:var(--space-1);text-decoration:none}a.calendar__entry-title svg{width:14px;height:14px;color:var(--color-link)}.calendar__entry{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);border:1px solid var(--color-border);border-left:4px solid var(--calendar-kind, var(--color-border));border-radius:var(--radius-md);background:var(--color-surface-raised)}.calendar__entry-task{align-self:flex-start;padding:0;border:none;background:none;color:var(--color-text);font:inherit;font-weight:700;text-align:left;text-decoration:underline;text-decoration-color:var(--color-border-strong);text-underline-offset:3px;cursor:pointer}.calendar__entry-task:hover{text-decoration-color:currentColor}.calendar__entry-task:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.calendar__entry-meta{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600}.calendar__entry-note{margin:var(--space-1) 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.calendar__entry-link{color:var(--color-link);font-size:var(--text-sm);overflow-wrap:anywhere}.search{display:flex;flex-direction:column;gap:var(--space-3)}.search__input{font-size:max(16px,var(--text-md))}.search__syntax{margin:calc(-1 * var(--space-1)) 0 0;color:var(--color-text-muted);font-size:var(--text-xs)}.search__syntax code{font-family:inherit;font-weight:700}.search__filters{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-column)}.search__filters>summary{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-3);font-weight:700;cursor:pointer}.search__filters>summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-md)}.search__filters[open]{padding-bottom:var(--space-3)}.search__filters[open]>summary{margin-bottom:var(--space-1)}.search__badge{min-width:1.4rem;padding:0 var(--space-2);border-radius:999px;background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-xs);line-height:1.4rem;text-align:center}.search__group{margin:0;padding:var(--space-2) var(--space-3);border:none}.search__group legend{padding:0;margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:700}.search__chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.search__chip{min-height:36px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:999px;background:var(--color-surface-raised);color:var(--color-text);font-size:var(--text-sm);font-weight:600;cursor:pointer}.search__chip.is-pressed{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.search__chip:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.search__hint{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-xs)}.search__dates,.search__row{display:grid;gap:var(--space-3)}.search__row{padding:var(--space-2) var(--space-3);align-items:end}@media(min-width:520px){.search__dates{grid-template-columns:repeat(3,minmax(0,1fr))}.search__row{grid-template-columns:1fr auto}}.search__check{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap-target);font-weight:600;cursor:pointer}.search__check input{width:20px;height:20px;accent-color:var(--color-primary-hover)}.search__clear{margin:var(--space-2) var(--space-3) 0}.search__status{margin:var(--space-2) 0;color:var(--color-text-muted);font-size:var(--text-sm)}.search__list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.search__result{display:flex;flex-direction:column;gap:var(--space-1);width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.search__result:hover{border-color:var(--color-border-strong)}.search__result:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.search__result-meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-3);color:var(--color-text-muted);font-size:var(--text-xs)}.search__kind{color:var(--color-text);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.search__done{padding:0 var(--space-2);border-radius:999px;background:var(--color-primary-soft);color:var(--color-text);font-weight:700}.search__snippet{overflow-wrap:anywhere}.search__snippet mark{padding:0 2px;border-radius:3px;background:var(--color-primary-soft);color:var(--color-text);font-weight:700}.search__origin{color:var(--color-text-muted);font-size:var(--text-sm)}.search__origin strong{color:var(--color-text)}.search__more{align-self:center;margin-top:var(--space-3)}.appearance{display:flex;flex-direction:column;gap:var(--space-5)}.appearance__hint,.appearance__note{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.appearance__see-through{display:flex;flex-direction:column;gap:var(--space-3)}.appearance__check{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap-target);font-weight:600;cursor:pointer}.appearance__check input{width:20px;height:20px;accent-color:var(--color-primary-hover)}.appearance__slider{width:100%;max-width:24rem;min-height:var(--tap-target);accent-color:var(--color-primary-hover)}.appearance__background{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.appearance__thumb{display:flex;align-items:center;justify-content:center;width:9rem;aspect-ratio:16 / 10;overflow:hidden;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-column);color:var(--color-text-muted);font-size:var(--text-sm)}.appearance__thumb img{width:100%;height:100%;object-fit:cover}.appearance__background-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.appearance__background-actions input:focus-visible+label{outline:2px solid var(--color-focus);outline-offset:2px}.button.is-disabled{opacity:.6;pointer-events:none}.appearance__colors{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.appearance__colors .settings__subtitle{margin:0}.appearance__tab{min-height:calc(var(--tap-target) - 6px);padding:0 var(--space-4);border:none;border-radius:calc(var(--radius-md) - 3px);background:transparent;color:var(--color-text-muted);font:inherit;font-weight:700;cursor:pointer}.appearance__tab.is-selected{background:var(--color-primary);color:var(--color-on-primary)}.appearance__tab:focus-visible,.appearance__link:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.appearance__link{padding:0;border:none;background:none;color:var(--color-link);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.appearance__contrast{align-self:stretch;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-column);color:var(--color-text-muted);font-size:var(--text-sm)}.appearance__contrast p{margin:0}.appearance__contrast.has-issues{background:var(--color-danger-soft);color:var(--color-danger);font-weight:600}.appearance__contrast ul{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.appearance__group{align-self:stretch;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised)}.appearance__group>summary{min-height:var(--tap-target);padding:0 var(--space-3);font-weight:700;line-height:var(--tap-target);cursor:pointer}.appearance__group>summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.appearance__tokens{margin:0;padding:0 var(--space-3) var(--space-2);list-style:none}.appearance__token{display:grid;grid-template-columns:auto minmax(0,1fr) 6.5rem auto;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--color-border)}.appearance__picker{width:var(--tap-target);height:var(--tap-target);padding:2px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-raised);cursor:pointer}.appearance__picker:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.appearance__token-label{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);font-size:var(--text-sm);font-weight:600}.appearance__changed{padding:0 var(--space-2);border-radius:999px;background:var(--color-primary-soft);font-size:var(--text-xs);font-weight:700}.appearance__hex{min-height:36px;padding:var(--space-1) var(--space-2);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:max(16px,var(--text-sm))}.appearance__reset{width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);font-size:var(--text-lg);cursor:pointer}.appearance__reset:hover:not(:disabled){background:var(--color-column);color:var(--color-text)}.appearance__reset:disabled{opacity:.35;cursor:default}.appearance__reset:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media(max-width:420px){.appearance__token{grid-template-columns:auto minmax(0,1fr) auto}.appearance__hex{grid-column:2;grid-row:2}}.themes{margin:0;padding:0;border:none}.themes>legend{margin-bottom:var(--space-2);padding:0}.themes__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:var(--space-3)}.themes__card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.themes__card:hover{border-color:var(--color-border-strong)}.themes__card.is-selected{border-color:var(--color-primary-hover);box-shadow:0 0 0 2px var(--color-primary-soft)}.themes__card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.themes__preview{position:relative;display:flex;gap:4px;height:4.5rem;margin-bottom:var(--space-1);padding:6px;border-radius:var(--radius-sm)}.themes__column{display:flex;flex:1;flex-direction:column;padding:4px;border-top:3px solid;border-radius:4px}.themes__card-mini{display:flex;flex-direction:column;gap:3px;padding:4px;border-radius:3px}.themes__line{height:3px;border-radius:2px}.themes__line.is-short{width:60%}.themes__button{position:absolute;right:8px;bottom:8px;width:1.6rem;height:.6rem;border-radius:999px}.themes__name{font-weight:700}.themes__description{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.35}.fonts{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.fonts__group{margin:0;padding:0;border:none}.fonts__legend{margin-bottom:var(--space-2);padding:0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.fonts__options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.fonts__option{min-height:var(--tap-target);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);font-size:var(--text-md);cursor:pointer}.fonts__option:hover{border-color:var(--color-primary-hover)}.fonts__option.is-selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.fonts__option:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.fonts__preview{display:flex;flex-direction:column;gap:var(--space-1);align-self:stretch;padding:var(--space-3);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised)}.fonts__preview-title{font-size:var(--text-xl);font-weight:700;line-height:1.15}.fonts__colors{align-self:stretch}.fonts__colors .appearance__tokens{padding:0;border-bottom:1px solid var(--color-border)}.fonts__warnings{margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-5);border-radius:var(--radius-sm);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--text-sm);font-weight:600}.settings{display:flex;flex-direction:column;gap:var(--space-4);max-width:44rem;height:100%;padding:var(--space-3) var(--space-4) calc(var(--space-6) + var(--pet-room));overflow-y:auto}.settings__section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--panel-surface)}.settings__summary{display:flex;align-items:center;gap:var(--space-3);min-height:calc(var(--tap-target) + var(--space-3));padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);cursor:pointer;list-style:none}.settings__summary::-webkit-details-marker{display:none}.settings__summary:hover .settings__chevron{color:var(--color-text)}.settings__summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.settings__title{margin:0;font-family:var(--font-heading);color:var(--color-heading);font-size:var(--text-lg);font-weight:700}.settings__chevron{display:inline-flex;margin-left:auto;color:var(--color-text-muted);transition:transform .15s ease}.settings__section[open] .settings__chevron{transform:rotate(90deg)}@media(prefers-reduced-motion:reduce){.settings__chevron{transition:none}}.settings__content{padding:0 var(--space-4) var(--space-4)}.settings__description{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.settings__body{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}.settings__saved{color:var(--color-text-muted);font-size:var(--text-sm)}.settings__profile{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-4)}.settings__profile-fields{flex:1 1 16rem;min-width:0}.profile-photo{display:grid;justify-items:center;gap:var(--space-2);width:8.5rem}.avatar--large{width:88px;height:88px;font-size:var(--text-lg)}.profile-photo__button{width:100%;justify-content:center}.profile-photo__remove{min-height:var(--tap-target);border:0;background:none;color:var(--color-text-muted);font:inherit;font-size:var(--text-sm);text-decoration:underline;cursor:pointer}.profile-photo__remove:hover{color:var(--color-danger)}.profile-photo .form__error{text-align:center;font-size:var(--text-xs)}.choice{margin:0;padding:0;border:none}.choice>legend{margin-bottom:var(--space-2);padding:0}.choice__options{display:inline-flex;flex-wrap:wrap;padding:3px;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-column)}.choice__option{position:relative}.choice__option input{position:absolute;opacity:0;pointer-events:none}.choice__option span{display:inline-flex;align-items:center;min-height:calc(var(--tap-target) - 6px);padding:0 var(--space-4);border-radius:calc(var(--radius-md) - 3px);color:var(--color-text-muted);font-weight:700;cursor:pointer}.choice__option input:checked+span{background:var(--color-primary);color:var(--color-on-primary)}.choice__option input:focus-visible+span{outline:2px solid var(--color-focus);outline-offset:2px}.settings__workspaces{display:flex;flex-direction:column;gap:var(--space-4)}.settings__workspace{display:grid;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.settings__workspace:last-child{padding-bottom:0;border-bottom:none}.settings__workspace .settings__workspace-actions{justify-content:flex-end}.settings__workspace-actions{display:flex;gap:var(--space-2)}.settings__workspace-error{grid-column:1 / -1}.settings__new-workspace{padding-top:var(--space-4);border-top:1px dashed var(--color-border-strong)}.settings__subtitle{margin:0 0 var(--space-3);font-size:var(--text-md);font-weight:700}.settings.has-changes{padding-bottom:calc(var(--space-6) * 3)}.save-bar{position:sticky;bottom:calc(var(--space-3) + env(safe-area-inset-bottom));z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:auto;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-modal)}.save-bar__text{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.save-bar__error{color:var(--color-danger);font-size:var(--text-sm);font-weight:600}.save-bar__actions{display:flex;gap:var(--space-2);margin-left:auto}.settings__logout{display:flex;justify-content:flex-start;margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.settings__google{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.settings__google-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.settings__credentials+.settings__credentials{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.settings__credentials-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.settings__credentials-head .settings__subtitle{margin:0}.settings__badge{padding:2px var(--space-2);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.settings__badge.is-on{background:var(--color-primary-soft);color:var(--color-text)}.settings__guide{font-size:var(--text-sm)}.settings__guide summary{color:var(--color-link);font-weight:600;cursor:pointer}.settings__guide ol,.settings__steps{margin:var(--space-2) 0;padding-left:var(--space-5)}.settings__steps{font-size:var(--text-sm)}.settings__guide li+li,.settings__steps li+li{margin-top:var(--space-1)}.settings__guide a{color:var(--color-link)}.settings__uris{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.settings__uris li{display:flex;align-items:center;gap:var(--space-2);min-width:0}.settings__uris code{flex:1;min-width:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:var(--color-bg);overflow-wrap:anywhere}.settings__copy{flex-shrink:0}.settings__calendar-select{flex:1 1 220px;min-width:0;max-width:100%}.settings__toggle{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer}.settings__toggle input{width:20px;height:20px;margin-top:2px;accent-color:var(--color-primary)}.settings__toggle>span{display:grid;gap:var(--space-1)}.settings__archives{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.settings__archives li{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3)}.settings__archives a{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-link);font-weight:600}.settings__archives svg{width:14px;height:14px}.settings__hint{flex-basis:100%}.settings__extra-calendars{display:flex;flex-basis:100%;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.settings__extra-calendars .settings__drive-status{flex:none}.settings__chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.settings__chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-1) 2px var(--space-3);border-radius:999px;background:var(--color-primary-soft);font-size:var(--text-sm)}.settings__chip button{width:24px;height:24px;border:none;border-radius:50%;background:transparent;color:var(--color-text);font-size:var(--text-md);line-height:1;cursor:pointer}.settings__chip button:hover{background:var(--color-surface)}.settings__time{max-width:10rem}.settings__device{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.settings__notice{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-weight:600}.settings__notice p{flex:1;margin:0}.settings__notice.is-ok{background:var(--color-primary-soft);color:var(--color-text)}.settings__notice.is-error{background:var(--color-danger-soft);color:var(--color-danger)}.settings__notice-close{padding:0 var(--space-1);border:none;background:none;color:inherit;font-size:var(--text-lg);line-height:1;cursor:pointer}.settings__drives,.settings__users{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.settings__drive,.settings__user{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised)}.settings__drive-name,.settings__user-name{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-weight:700}.settings__drive-dot{width:10px;height:10px;border-radius:50%;background:var(--workspace-color)}.settings__drive-status{flex:1 1 14rem;min-width:0;color:var(--color-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.settings__drive-actions,.settings__user-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-left:auto}.settings__drive-error{flex-basis:100%}.settings__badge{padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-text);font-size:var(--text-xs);font-weight:700}.settings__check{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap-target);font-weight:600}.sidebar{display:flex;flex-direction:column;gap:var(--space-5);height:100%;padding:calc(var(--space-4) + env(safe-area-inset-top)) var(--space-3) calc(var(--space-4) + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}.sidebar>*{flex-shrink:0}.sidebar__header{display:flex;align-items:center;gap:var(--space-2)}.sidebar__collapse{display:inline-flex;flex:none;align-items:center;justify-content:center;width:var(--tap-target);height:var(--tap-target);margin-left:auto;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer}.sidebar__collapse:hover{background:var(--color-column);color:var(--color-text)}.sidebar__collapse:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.sidebar__brand{display:flex;align-items:center;margin:0;padding:0 var(--space-3);text-decoration:none}.sidebar__logo{height:40px}.sidebar__nav{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;list-style:none}.sidebar__link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap-target);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-weight:700;text-decoration:none}button.sidebar__link{width:100%;border:none;background:transparent;font:inherit;font-weight:700;text-align:left;cursor:pointer}.sidebar__group-title{margin:0 0 var(--space-1);padding:0 var(--space-3);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.sidebar__workspace-dot{width:10px;height:10px;margin:0 5px;flex:none;border-radius:50%;background:var(--workspace-color)}.sidebar__workspace[aria-current=true]{background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-card)}.sidebar__link:hover{background:var(--color-column);color:var(--color-text)}.sidebar__link[aria-current=page]{background:var(--color-primary-soft);color:var(--color-text)}.sidebar__link:focus-visible,.sidebar__user:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.sidebar__user{position:sticky;bottom:0;z-index:1;display:flex;align-items:center;gap:var(--space-3);margin-top:auto;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);text-decoration:none}.sidebar__user:hover{border-color:var(--color-border-strong)}.sidebar__user[aria-current=page]{border-color:var(--color-primary-hover);background:var(--color-primary-soft)}.sidebar__user-icon{display:inline-flex;margin-left:auto;color:var(--color-text-muted)}.sidebar__user-text{display:flex;flex-direction:column;min-width:0}.sidebar__user-name{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.sidebar__user-email{overflow:hidden;color:var(--color-text-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.avatar{display:inline-flex;flex:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--color-primary);color:var(--color-on-primary);font-weight:700;font-size:var(--text-sm);letter-spacing:.02em;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.sidebar-panel{display:none;border-right:1px solid var(--color-border);background:var(--panel-bg)}@media(min-width:900px){.sidebar-panel{display:block;flex:none;width:240px;overflow:hidden;transition:width .2s ease,border-color .2s ease}.sidebar-panel>.sidebar{width:240px}.sidebar-panel.is-collapsed{width:0;border-right-width:0}}@media(prefers-reduced-motion:reduce){.sidebar-panel{transition:none}}.drawer{width:min(82vw,300px);max-width:none;height:100%;max-height:none;margin:0;padding:0;border:none;background:var(--color-bg);color:var(--color-text);box-shadow:var(--shadow-modal)}.drawer::backdrop{background:var(--color-overlay)}.drawer[open]{animation:drawer-in .18s ease-out}@keyframes drawer-in{0%{transform:translate(-100%)}}@media(prefers-reduced-motion:reduce){.drawer[open]{animation:none}}.sidebar__brand:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}.summary{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);max-width:760px;margin:0 auto;padding:var(--space-3) var(--space-4) calc(var(--space-6) + var(--pet-room))}.summary__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3)}.summary__range{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-xl);font-weight:600}.summary__nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.summary__status,.summary__empty{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.summary__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}@media(min-width:600px){.summary__stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.summary__stats>div{display:flex;flex-direction:column-reverse;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.summary__stats dt{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700}.summary__stats dd{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:calc(var(--text-xl) * 1.3);font-weight:700;line-height:1}.summary__stats>.is-warning{border-color:var(--color-danger)}.summary__stats>.is-warning dd{color:var(--color-danger)}.summary__card{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card)}.summary__title{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-lg)}.summary__tasks,.summary__habits{display:grid;gap:var(--space-1);margin:0;padding:0;list-style:none}.summary__task{display:grid;gap:2px;width:100%;min-height:var(--tap-target);padding:var(--space-2);border:0;border-radius:var(--radius-sm);background:none;color:var(--color-text);text-align:left;font:inherit;cursor:pointer}.summary__task:hover{background:var(--color-primary-soft)}.summary__task:focus-visible{outline:2px solid var(--color-focus)}.summary__task-title{font-weight:700;overflow-wrap:anywhere}.summary__task-meta{color:var(--color-text-muted);font-size:var(--text-xs)}.summary__habits li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);min-height:var(--tap-target);color:var(--color-primary-hover)}.summary__habit-title{flex:1;min-width:8rem;color:var(--color-text);font-weight:600}.summary__days{color:var(--color-text);font-weight:700}.summary__streak{color:var(--color-text-muted);font-size:var(--text-xs)}.entry-log{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border)}.entry-log__title{margin:0 0 var(--space-3);font-family:var(--font-heading);color:var(--color-heading);font-size:var(--text-lg);font-weight:700}.entry-log__form{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-column)}.entry-log__status{color:var(--color-text-muted);font-size:var(--text-sm)}.entry-log__list{margin:var(--space-4) 0 0;padding:0;list-style:none}.entry-log__item{position:relative;padding:0 0 var(--space-4) var(--space-5);border-left:2px solid var(--color-border);margin-left:var(--space-2)}.entry-log__item:last-child{border-left-color:transparent}.entry-log__item:before{content:"";position:absolute;left:-7px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 3px var(--color-surface)}.entry-log__date{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.entry-log__note{margin:var(--space-1) 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.entry-log__link{display:inline-block;margin-top:var(--space-1);color:var(--color-link);font-size:var(--text-sm);overflow-wrap:anywhere}.entry-log__item.is-event:before{width:8px;height:8px;left:-5px;top:4px;background:var(--color-border-strong)}.entry-log__item.is-event .entry-log__note{color:var(--color-text-muted);font-size:var(--text-sm);font-style:italic}.entry-log__auto{font-weight:600;letter-spacing:0;text-transform:none}.attachments{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.attachments__title{margin:0;color:var(--color-heading);font-family:var(--font-heading);font-size:var(--text-lg)}.attachments__empty{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.attachments__empty a{color:var(--color-link)}.attachments__list,.file-picker__list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.attachments__item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised)}.attachments__link{display:flex;flex:1;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--tap-target);color:var(--color-link);font-weight:600;text-decoration:none}.attachments__link:hover .attachments__name{text-decoration:underline}.attachments__link:focus-visible,.attachments__remove:focus-visible,.file-picker__open:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.attachments__name,.file-picker__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachments__provider,.file-picker__date{flex-shrink:0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600}.attachments__remove{flex-shrink:0;width:var(--tap-target);height:var(--tap-target);border:none;border-radius:50%;background:none;color:var(--color-text-muted);font-size:var(--text-lg);cursor:pointer}.attachments__remove:hover{background:var(--color-danger-soft);color:var(--color-danger)}.attachments__add{align-self:flex-start}.file-picker{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface)}.file-picker__search{display:flex;gap:var(--space-2)}.file-picker__search .field__control{flex:1}.file-picker__hint{margin:0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700}.file-picker__list{max-height:40vh;overflow:auto}.file-picker__item{display:flex;align-items:center;gap:var(--space-2)}.file-picker__name{flex:1}.file-picker__open{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:var(--tap-target);height:var(--tap-target);color:var(--color-link)}.checklist{display:grid;gap:var(--space-2);margin-top:var(--space-4)}.checklist__title{display:flex;align-items:baseline;gap:var(--space-2);margin:0;font-family:var(--font-heading);font-size:var(--text-lg);color:var(--color-heading)}.checklist__count{font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted)}.checklist__bar{height:6px;border-radius:999px;background:var(--color-column);overflow:hidden}.checklist__bar span{display:block;height:100%;border-radius:inherit;background:var(--color-primary);transition:width .2s ease}.checklist__items{display:grid;gap:var(--space-1);margin:0;padding:0;list-style:none}.checklist__item{display:flex;align-items:center;gap:var(--space-2)}.checklist__item label{display:flex;flex:1;align-items:center;gap:var(--space-2);min-height:var(--tap-target);cursor:pointer;overflow-wrap:anywhere}.checklist__item input{width:20px;height:20px;flex-shrink:0;accent-color:var(--color-primary)}.checklist__item.is-done span{color:var(--color-text-muted);text-decoration:line-through}.checklist__remove{display:grid;place-items:center;width:var(--tap-target);height:var(--tap-target);border:0;border-radius:var(--radius-sm);background:none;color:var(--color-text-muted);cursor:pointer}.checklist__remove:hover{color:var(--color-danger)}.checklist__remove svg{width:18px;height:18px}.checklist__add{display:flex;gap:var(--space-2)}.checklist__add input{flex:1;min-width:0}.task-details__title{margin:0 0 var(--space-4);font-size:var(--text-lg);font-weight:700;line-height:1.3;overflow-wrap:anywhere}.task-details__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-5);margin:0}@media(min-width:520px){.task-details__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.task-details__grid dt{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:700}.task-details__grid dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere}.task-details__status{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700}.task-details__status:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--column-color)}.task-details__empty{color:var(--color-text-muted);font-style:italic}.task-details__due{color:var(--color-warning);font-weight:700}.task-details__due.is-overdue{color:var(--color-danger)}.task-details__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:var(--space-4)}.task-details__actions svg{width:18px;height:18px}.app{position:relative;display:flex;height:100dvh;--pet-room: 0px}.app.has-pet{--pet-room: 140px}@media(max-width:599px){.app.has-pet{--pet-room: 112px}}.app__background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background-position:center;background-size:cover;pointer-events:none}.app__content{display:flex;flex:1;flex-direction:column;min-width:0}.app__header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-4) var(--space-2)}.app.has-background .app__header{background:var(--panel-bg)}.app__title{margin:0;font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;line-height:1;color:var(--color-heading)}.app__title--workspace{display:inline-flex;align-items:center;gap:var(--space-3);min-width:0}.app__title-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:599px){.app__title--workspace{flex:1;font-size:var(--text-lg)}.app__title--workspace~.app__actions{margin-left:0}}.app__title-dot{flex:none;width:.7em;height:.7em;border-radius:50%;background:var(--workspace-color)}.app__workspace{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1) var(--space-3);border-radius:999px;background:var(--color-column);color:var(--color-text);font-size:var(--text-sm);font-weight:700;white-space:nowrap}.app__edit-board{width:36px;height:36px;margin-left:calc(-1 * var(--space-1))}.app__workspace-dot{width:10px;height:10px;flex:none;border-radius:50%;background:var(--workspace-color)}.app__actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}@media(min-width:900px){.app__header .app__menu{display:none}}@media(max-width:899px){.app__header .app__expand{display:none}}.app__completed svg{width:18px;height:18px}.app__completed-count{min-width:1.4rem;padding:0 var(--space-1);border-radius:999px;background:var(--color-column);color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.4rem;text-align:center}@media(max-width:599px){.app__header .app__completed{position:relative;width:var(--tap-target);padding:0;border-radius:50%}.app__completed-label{display:none}.app__completed .app__completed-count{position:absolute;top:-4px;right:-4px;min-width:1.2rem;background:var(--color-primary);color:var(--color-on-primary);line-height:1.2rem}}@media(max-width:599px){.app__header .app__new-task{width:var(--tap-target);padding:0;border-radius:50%;font-size:var(--text-lg)}.app__new-task .app__new-task-label{display:none}}@media(max-width:599px){.app__header{gap:var(--space-2)}.app__workspace{overflow:hidden;text-overflow:ellipsis}}.app__main{flex:1;min-height:0}.app__offline{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-text);font-size:var(--text-sm);font-weight:600}.app__status{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);color:var(--color-text-muted);text-align:center}.app__actions .icon-button[aria-current=page]{border-color:var(--color-primary);background:var(--color-primary-soft)}:root{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root{--color-primary: light-dark(#b98b95, #c9a0a9);--color-primary-hover: light-dark(#9e6f7a, #ddbac2);--color-on-primary: light-dark(#160e11, #221a1d);--color-primary-soft: light-dark(#f3e4e7, #4a3439);--color-link: light-dark(#8a5a66, #c9a0a9);--color-bg: light-dark(#f9f4f5, #221a1d);--color-surface: light-dark(#ffffff, #2e2427);--color-surface-raised: light-dark(#ffffff, #382c30);--color-column: light-dark(#f3ebed, #281f22);--color-border: light-dark(#e8dde0, #44363b);--color-border-strong: light-dark(#94808a, #8c777e);--color-text: light-dark(#4a3a3f, #f4eaed);--color-text-muted: light-dark(#6e5a61, #c2b0b6);--color-heading: var(--color-text);--color-overlay: light-dark(rgb(74 58 63 / .45), rgb(0 0 0 / .6));--color-focus: light-dark(#9e6f7a, #c9a0a9);--color-danger: light-dark(#9b4a42, #e59a90);--color-danger-soft: light-dark(#f8e6e3, #45282a);--color-warning: light-dark(#86592e, #e0b07e);--status-pending: light-dark(#a8979c, #8f7d83);--status-in-progress: light-dark(#b98b95, #c9a0a9);--status-urgent: light-dark(#b0675e, #d58f84);--status-follow-up: light-dark(#9c9670, #b5af88);--status-closed: light-dark(#7f9483, #9bb09f);--workspace-rose: light-dark(#b98b95, #c9a0a9);--workspace-sage: light-dark(#8fa08e, #9fb39e);--workspace-sand: light-dark(#c2a27c, #d1b593);--workspace-plum: light-dark(#8e6a8a, #b393ae);--workspace-slate: light-dark(#7d8a99, #9eabb9);--workspace-default: light-dark(#a8979c, #8f7d83);--pet-fur: light-dark(#fdfbfb, #e9e4e6);--pet-shade: light-dark(#e8e1e5, #c9c0c5);--pet-outline: light-dark(#b9aab1, #8d7f86);--pet-nose: light-dark(#eba3a8, #d98f95);--pet-tongue: light-dark(#e37f8e, #cf6f7e);--pet-eye: light-dark(#4a8fc4, #5a9fd2);--pet-pupil: light-dark(#1c2633, #10161e);--pet-shine: light-dark(#ffffff, #f4f1f2);--pet-bowl: light-dark(#8fa08e, #7e907d);--pet-food: light-dark(#a8724a, #c08a5f);--pet-dirt: light-dark(#8b7355, #3e3428);--report-paper: light-dark(#fffdfb, #fffdfb);--report-text: light-dark(#3f3236, #3f3236);--report-muted: light-dark(#6e5a61, #6e5a61);--report-rule: light-dark(#eadde1, #eadde1);--report-ink-rose: light-dark(#9b4a5c, #9b4a5c);--report-ink-plum: light-dark(#6b3a62, #6b3a62);--report-ink-sage: light-dark(#466049, #466049);--report-ink-sky: light-dark(#3d5d7e, #3d5d7e);--report-ink-gold: light-dark(#76561a, #76561a);--report-mark-butter: light-dark(#fbefb4, #fbefb4);--report-mark-rose: light-dark(#f9d9df, #f9d9df);--report-mark-sage: light-dark(#d9ecd6, #d9ecd6);--report-mark-sky: light-dark(#d8e6f3, #d8e6f3);--report-mark-lilac: light-dark(#e6dcf2, #e6dcf2);--washi-rose: light-dark(#f2c4cd, #f2c4cd);--washi-rose-accent: light-dark(#fbe7eb, #fbe7eb);--washi-sage: light-dark(#c6dbc2, #c6dbc2);--washi-sage-accent: light-dark(#eaf3e8, #eaf3e8);--washi-sky: light-dark(#c5d9eb, #c5d9eb);--washi-sky-accent: light-dark(#ecf3fa, #ecf3fa);--washi-lilac: light-dark(#d8cbea, #d8cbea);--washi-lilac-accent: light-dark(#f1ecf8, #f1ecf8);--washi-butter: light-dark(#f3df9d, #f3df9d);--washi-butter-accent: light-dark(#fcf4d6, #fcf4d6);--report-note-idea: light-dark(#fdf6dc, #fdf6dc);--report-note-idea-edge: light-dark(#e3c873, #e3c873);--report-note-important: light-dark(#fbe9ec, #fbe9ec);--report-note-important-edge: light-dark(#df9fae, #df9fae);--report-note-done: light-dark(#e9f2e7, #e9f2e7);--report-note-done-edge: light-dark(#a3c29d, #a3c29d);--panel-alpha: 1;--panel-column: color-mix(in srgb, var(--color-column) calc(var(--panel-alpha) * 100%), transparent);--panel-surface: color-mix(in srgb, var(--color-surface) calc(var(--panel-alpha) * 100%), transparent);--panel-bg: color-mix(in srgb, var(--color-bg) calc(var(--panel-alpha) * 100%), transparent);--shadow-card: 0 1px 2px light-dark(rgb(74 58 63 / .06), rgb(0 0 0 / .3)), 0 1px 3px light-dark(rgb(74 58 63 / .08), rgb(0 0 0 / .2));--shadow-drag: 0 12px 28px light-dark(rgb(74 58 63 / .2), rgb(0 0 0 / .5));--shadow-modal: 0 20px 50px light-dark(rgb(74 58 63 / .25), rgb(0 0 0 / .6));--font-heading: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.25rem;--text-xl: 1.75rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--tap-target: 44px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-md);line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}::placeholder{color:var(--color-text-muted);opacity:1}.visually-hidden{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);font-weight:700;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.button:hover{border-color:var(--color-primary)}.button:focus-visible,.icon-button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.button:disabled{opacity:.6;cursor:not-allowed}.button--primary{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.button--primary:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.button--danger{border-color:transparent;background:transparent;color:var(--color-danger)}.button--danger:hover:not(:disabled){border-color:var(--color-danger);background:var(--color-danger-soft)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:var(--tap-target);height:var(--tap-target);border:1px solid var(--color-border);border-radius:50%;background:var(--color-surface);color:var(--color-text);font-size:var(--text-lg);cursor:pointer}.form{display:flex;flex-direction:column;gap:var(--space-4)}.form__row{display:grid;gap:var(--space-4)}@media(min-width:520px){.form__row{grid-template-columns:1fr 1fr}}.form__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}.form__actions .button--danger{margin-right:auto}.form__error{margin:0;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--text-sm);font-weight:600}.field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.field__label{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:700}.field__control{width:100%;min-height:var(--tap-target);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text);font-size:max(16px,var(--text-md))}textarea.field__control{resize:vertical}.field__control:focus{outline:2px solid var(--color-focus);outline-offset:-1px;border-color:transparent}.field__control[aria-invalid=true]{border-color:var(--color-danger)}.field__error{margin:0;color:var(--color-danger);font-size:var(--text-sm);font-weight:600}.field__hint,.form__hint{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}
