:root{font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f5fafb;--surface:#fff;--surface-soft:#edf5f6;--surface-hover:#e2f0f2;--ink:#182d35;--muted:#526971;--accent:#236c7e;--accent-hover:#175569;--accent-soft:#e5f3f6;--on-accent:#fff;--action:#d8eeac;--action-hover:#c9e294;--on-action:#213715;--border:#dce8e9;--field-border:#9aafb5;--focus:#236c7e;--error-ink:#a12635;--error-bg:#fff0f1;--warning-ink:#30576d;--warning-bg:#eaf6fc;--backdrop:#0b263c75;--shadow:0 8px 24px #14383f0a;--outside-ink:#5e747d;color:var(--ink);background:var(--page);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#030608;--surface:#10161c;--surface-soft:#19252d;--surface-hover:#263a45;--ink:#f4fcff;--muted:#c5d9e2;--accent:#b4e5f4;--accent-hover:#d7f4ff;--accent-soft:#122d38;--on-accent:#081820;--action:#ddf2b0;--action-hover:#ebfac9;--on-action:#142309;--border:#557380;--field-border:#94b2bf;--focus:#daf4ff;--error-ink:#ffd5dc;--error-bg:#350d17;--warning-ink:#d5eff9;--warning-bg:#0d2230;--backdrop:#000c;--shadow:0 8px 24px #00000040;--outside-ink:#8da4b0}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,select{cursor:pointer}button{-webkit-tap-highlight-color:transparent}button,input,select,textarea{max-width:100%}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,h4,p{margin:0}h1{letter-spacing:-.035em;font-size:1.75rem;font-weight:700;line-height:1.15}h2{letter-spacing:-.035em;font-size:1.55rem;font-weight:750;line-height:1.25}h3{letter-spacing:-.025em;font-size:1.125rem;line-height:1.35}h4{font-size:1rem;line-height:1.4}input,select,textarea{border:1px solid var(--field-border);width:100%;min-height:48px;color:var(--ink);background:var(--surface);border-radius:12px;padding:12px 14px;font-size:1rem}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}textarea{resize:vertical;overflow-wrap:anywhere;min-height:108px}input[type=checkbox],input[type=radio]{width:22px;min-width:22px;min-height:22px;accent-color:var(--accent);margin:0}input[type=color]{width:100%;padding:5px}input[type=file]{white-space:normal}input[type=number]{appearance:textfield;text-align:center;font-variant-numeric:tabular-nums}input[type=number]::-webkit-inner-spin-button{appearance:none}.ui-icon{stroke:currentColor;flex:none;width:22px;height:22px}.app-shell{max-width:960px;margin:auto;padding:28px 28px 156px}.app-header{margin-bottom:24px}.header-top{justify-content:space-between;align-items:center;gap:14px;display:flex}.brand{align-items:center;gap:14px;min-width:0;display:flex}.brand-home{min-height:48px;color:inherit;-webkit-tap-highlight-color:transparent;border-radius:10px;text-decoration:none}.brand-text{overflow-wrap:anywhere;min-width:0}.brand-symbol{border-radius:14px;place-items:center;width:44px;min-width:44px;height:44px;display:grid;overflow:hidden}.brand-symbol img{object-fit:contain;width:100%;height:100%;display:block}.header-subtitle{color:var(--muted);letter-spacing:.01em;margin-top:4px;font-size:.875rem}.status-line{color:var(--muted);gap:8px;font-size:.875rem;display:grid}.main-content{min-width:0}.screen{grid-template-columns:minmax(0,1fr);gap:22px;min-width:0;display:grid}.screen-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.button{border:1px solid var(--field-border);min-width:44px;min-height:48px;color:var(--ink);background:var(--surface);white-space:normal;overflow-wrap:anywhere;border-radius:12px;padding:11px 16px;font-weight:650;line-height:1.35;transition:border-color .16s,transform .16s}.button.icon-button{border-color:var(--border);background:0 0;flex:none;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;line-height:1;display:grid}.icon-button .ui-icon{width:22px;height:22px;display:block}.button:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent)}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{color:var(--on-action);background:var(--action);border-color:var(--action)}.button-primary:hover:not(:disabled){color:var(--on-action);background:var(--action-hover);border-color:var(--action-hover)}.button-quiet{border-color:var(--border);background:0 0}.button-danger,.button-danger:hover:not(:disabled){color:var(--error-ink);background:var(--error-bg);border-color:var(--error-ink)}.danger-text{color:var(--error-ink)}.button-small{min-height:44px;font-size:.875rem}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.main-nav{z-index:10;bottom:calc(12px + env(safe-area-inset-bottom));border:1px solid var(--border);background:var(--surface);width:min(904px,100% - 32px);box-shadow:var(--shadow);border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px;display:grid;position:fixed;left:50%;transform:translate(-50%)}.nav-button{min-width:0;min-height:60px;color:var(--muted);background:0 0;border:0;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:7px 5px;font-weight:650;transition:transform .16s;display:flex}.nav-label{text-align:center;white-space:normal;overflow-wrap:anywhere;max-width:100%;font-size:.875rem;line-height:1.2}.nav-button:hover{color:var(--accent);background:var(--surface-soft)}.nav-button.is-active{color:var(--on-action);background:var(--action)}.app-notice,.dialog-feedback{z-index:30;left:50%;top:max(12px, env(safe-area-inset-top));border:1px solid var(--border);width:min(560px,100% - 24px);max-height:34vh;max-height:34dvh;color:var(--ink);background:var(--surface);overflow-wrap:anywhere;pointer-events:none;border-radius:16px;align-items:center;gap:10px;margin:0;padding:8px 10px 8px 16px;font-size:.875rem;animation:.18s ease-out notice-enter;display:flex;position:fixed;overflow:auto;transform:translate(-50%);box-shadow:0 8px 30px #00000024}.app-notice .button,.dialog-feedback .button{pointer-events:auto}.dialog>.app-notice,.dialog-feedback{top:auto;bottom:max(16px, env(safe-area-inset-bottom))}.app-notice.is-error{align-items:flex-start}.app-notice .notice-message{flex:1;min-width:0}.notice-symbol{width:28px;height:28px;color:var(--on-action);background:var(--action);border-radius:50%;flex:none;place-items:center;display:grid}.notice-symbol .ui-icon{width:18px;height:18px}.button.notice-dismiss{background:0 0;border-color:#0000;flex:none;place-items:center;width:48px;min-width:48px;height:48px;min-height:48px;padding:12px;font-size:22px;line-height:1;display:grid}.app-notice.is-error,.inline-error{color:var(--error-ink);background:var(--error-bg);border-color:var(--error-ink)}.inline-error{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:12px;padding:13px 16px;font-size:.875rem}.dialog-feedback{border-color:var(--error-ink);background:var(--error-bg);color:var(--error-ink);align-items:flex-start}.dialog-feedback-text{flex:1;gap:5px;min-width:0;display:grid}.button.feedback-dismiss{width:48px;min-width:48px;height:48px;min-height:48px;color:inherit;background:0 0;border-color:#0000;flex:none;place-items:center;padding:12px;font-size:22px;line-height:1;display:grid}@keyframes notice-enter{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0}}.auth-shell{width:min(100%,520px);padding:max(28px, env(safe-area-inset-top)) 24px max(36px, env(safe-area-inset-bottom));margin:auto}.auth-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:36px;display:flex}.auth-header h1{font-size:1.45rem}.auth-header .button.icon-button{width:48px;min-width:48px;height:48px;min-height:48px;padding:12px}.auth-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;gap:20px;padding:28px;display:grid}.home-card{gap:22px}.home-card h2{letter-spacing:-.035em;font-size:clamp(1.6rem,5vw,2.1rem);line-height:1.2}.home-eyebrow{color:var(--accent);font-size:.875rem;font-weight:700}.home-description{color:var(--muted);line-height:1.6}.home-actions{grid-template-columns:1fr;gap:12px;display:grid}.home-actions .button{text-align:center;justify-content:center;align-items:center;text-decoration:none;display:flex}.home-actions [aria-disabled=true]{opacity:.55;cursor:default}.auth-form{gap:18px;display:grid}.auth-form .field{gap:8px;display:grid}.auth-form label{font-weight:650}.password-field{position:relative}.password-field input{padding-right:106px}.button.password-toggle{background:0 0;border:0;border-radius:0 12px 12px 0;width:96px;min-width:96px;height:48px;min-height:48px;padding:8px;font-size:.875rem;position:absolute;top:0;right:0}.auth-submit,.auth-switch{width:100%}.auth-forgot{color:var(--accent);border-color:#0000;justify-self:start;padding:10px 0}.auth-forgot:hover:not(:disabled){background:0 0;border-color:#0000;text-decoration:underline}.mail-submit,.account-verification-action{min-height:48px}.mail-card h2{overflow-wrap:anywhere}.mail-invalid{color:var(--muted);line-height:1.6}.auth-footnote{color:var(--muted);font-size:.875rem;line-height:1.55}.auth-notice{top:auto;bottom:max(16px, env(safe-area-inset-bottom))}.auth-loading{gap:20px;padding-top:72px;display:grid}.account-email{overflow-wrap:anywhere;font-weight:650}@media (max-width:520px){.auth-shell{padding:max(20px, env(safe-area-inset-top)) 16px max(28px, env(safe-area-inset-bottom))}.auth-header{margin-bottom:24px}.auth-card{border-radius:20px;padding:22px 18px}}.calendar-screen{--calendar-overhead:360px;gap:12px}.is-guest-calendar{--calendar-overhead:418px}.guest-signin{width:100%;min-height:48px;color:var(--accent);font-size:1rem}.month-toolbar{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:8px;min-width:0;display:grid}.month-toolbar h2{text-transform:capitalize;text-align:center;overflow-wrap:anywhere;min-width:0;font-size:1.35rem}.button.icon-button.month-step{background:var(--surface);border-radius:14px;width:48px;min-width:48px;height:48px;min-height:48px;padding:12px}.calendar-view-toolbar{align-items:center;gap:10px;min-width:0;display:flex}.calendar-switcher{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex:1;min-width:0;height:44px;position:relative}.calendar-switcher-caption{align-items:center;gap:9px;width:100%;min-width:0;height:100%;padding:0 12px;display:flex}.calendar-switcher-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1rem;font-weight:600;overflow:hidden}.calendar-switcher-caption>.ui-icon:last-child{width:16px;height:16px}.calendar-switcher select{opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:44px;padding:0;position:absolute;inset:0}.calendar-switcher:focus-within{outline:3px solid var(--focus);outline-offset:3px}.calendar-color-dot{border:1px solid var(--field-border);background:var(--calendar-color);border-radius:50%;flex:none;width:12px;height:12px;display:block}.button.today-button{background:var(--surface-soft);border-color:var(--border);flex:none;height:44px;min-height:44px;padding:10px 14px;font-size:.875rem}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;min-width:0;display:grid}.weekday{text-align:center;color:var(--muted);padding:6px 0 10px;font-size:.875rem;font-weight:650}.day-cell{--day-min-height:108px;min-height:var(--day-min-height);border:1px solid var(--border);background:var(--surface);min-width:0;color:var(--ink);border-radius:12px;padding:5px;transition:background-color .16s,border-color .16s;display:block;position:relative;overflow:hidden}.day-cell.has-indicators{min-height:calc(var(--day-min-height) + 16px)}.day-cell:has(.day-count-badge){min-height:128px}.day-cell.has-indicators:has(.day-count-badge){min-height:144px}:is(.day-cell:has(.mark-count-3),.day-cell:has(.mark-count-4)){min-height:156px}:is(.day-cell.has-indicators:has(.mark-count-3),.day-cell.has-indicators:has(.mark-count-4)){min-height:172px}.day-cell:hover{border-color:var(--accent);background:var(--surface-soft)}.day-cell.has-executions{background:var(--accent-soft);border-color:var(--border)}.is-single-calendar .day-cell:not(.outside-month){background:color-mix(in srgb, var(--calendar-color) 4%, var(--surface))}.is-single-calendar .day-cell.has-executions:not(.outside-month){background:color-mix(in srgb, var(--calendar-color) 14%, var(--surface));border-color:color-mix(in srgb, var(--calendar-color) 44%, var(--border))}.day-cell.is-today{border:2px solid var(--accent)}.day-number{font-size:.875rem;font-weight:700;line-height:1.2;position:absolute;top:6px;left:8px}.day-cell.is-today .day-number{color:var(--accent)}.day-cell.outside-month{background:var(--page);color:var(--outside-ink);border-color:color-mix(in srgb, var(--border) 45%, var(--page))}.day-cell.outside-month.is-today{border-color:var(--accent)}.day-cell.outside-month .day-number{color:var(--outside-ink);font-weight:500}.outside-month .day-symbol{opacity:.4;filter:saturate(.6)}.outside-month .day-mark-slot:after{opacity:.35}.outside-month .day-count-badge{color:var(--outside-ink);background:var(--page)}.outside-month .day-indicators{color:var(--outside-ink)}.day-marks{--mark-count-height:0px;grid-template-columns:minmax(0,1fr);display:grid;position:absolute;inset:24px 3px 5px}.day-marks:has(.day-count-badge){--mark-count-height:20px}.day-mark-slot{grid-template-rows:minmax(0, 1fr) var(--mark-count-height);place-items:center;min-width:0;min-height:0;padding-bottom:5px;display:grid;position:relative}.day-mark-slot:after{content:"";background:var(--mark-color);border-radius:2px;height:3px;position:absolute;bottom:0;left:35%;right:35%}.day-symbol{white-space:nowrap;letter-spacing:0;grid-row:1;place-items:center;width:100%;min-width:0;height:100%;min-height:0;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,ui-sans-serif,system-ui,sans-serif;font-size:clamp(40px,8vw,70px);line-height:1;display:grid;overflow:hidden}.day-marks.is-multiple{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;display:grid;inset:24px 3px 5px}.day-marks.is-multiple .day-symbol{font-size:clamp(26px,5vw,44px)}.day-marks.mark-count-3,.day-marks.mark-count-4{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(4,minmax(0,1fr))}.day-marks.mark-count-3 .day-mark-slot,.day-marks.mark-count-4 .day-mark-slot{grid-column:span 2}.day-marks.mark-count-3 .day-mark-slot:last-child{grid-column:2/span 2}.day-marks.mark-count-3 .day-symbol,.day-marks.mark-count-4 .day-symbol{font-size:clamp(20px,4vw,32px)}.day-count-badge,.more-marks{background:var(--surface);min-height:20px;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:5px;justify-content:center;align-items:center;padding:3px 4px;font-size:.75rem;font-weight:750;line-height:1.05;display:inline-flex;position:absolute}.day-count-badge{grid-row:2;min-height:17px;padding:2px 4px;position:static}.day-marks.is-multiple .day-count-badge{min-height:17px;padding:2px 1px;font-size:11px}.more-marks{background:var(--accent);color:var(--on-accent);top:4px;right:3px}.has-indicators .day-marks{bottom:21px}.day-indicators{color:var(--muted);align-items:center;gap:3px;font-size:.875rem;font-weight:700;line-height:1;display:flex;position:absolute;bottom:3px;right:4px}.day-comment-marker{place-items:center;width:13px;height:13px;display:grid}.day-comment-marker .ui-icon{stroke-width:2px;width:13px;height:13px}.calendar-hint{color:var(--muted);font-size:.875rem}.field{gap:8px;min-width:0;display:grid}.field>label{font-size:1rem;font-weight:650}.field-hint,.muted{color:var(--muted);font-size:.875rem;line-height:1.5}.notice,.prototype-note{background:var(--accent-soft);border:1px solid var(--border);border-radius:14px;padding:15px 17px;font-size:.875rem}.prototype-note{color:var(--muted)}.empty-state{background:var(--surface);border:1px solid var(--border);border-radius:22px;gap:16px;padding:32px;display:grid}.empty-state.compact{padding:22px}.empty-state .button{justify-self:start}.initial-sync-status{border:1px solid var(--border);min-width:0;color:var(--ink);background:var(--surface-soft);overflow-wrap:anywhere;border-radius:16px;gap:12px;padding:16px;font-size:1rem;display:grid}.initial-sync-status .button{justify-self:start;min-height:48px;font-size:1rem}.initial-sync-status.is-error{color:var(--error-ink);background:var(--error-bg);border-color:var(--error-ink)}.calendar-list{gap:18px;display:grid}.calendar-card,.settings-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:16px;min-width:0;padding:24px;display:grid}.calendar-card{border-top:0;border-left:4px solid var(--calendar-color);position:relative}.calendar-card h3{font-size:1.25rem}.calendar-card h3,.calendar-description{overflow-wrap:anywhere;white-space:pre-wrap}.calendar-description{color:var(--muted);font-size:.875rem}.dialog{width:min(650px,100% - 32px);max-height:92vh;border:1px solid var(--border);max-height:92dvh;color:var(--ink);background:var(--surface);box-shadow:var(--shadow);border-radius:26px;padding:0}.dialog::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-panel{gap:20px;min-width:0;padding:26px;display:grid}.dialog-header{background:var(--surface);z-index:2;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:3px 0 13px;display:flex;position:sticky;top:0}.dialog-header h2{overflow-wrap:anywhere;min-width:0;font-size:1.4rem}.dialog-header>.button{background:var(--surface-soft);border-color:#0000;flex-shrink:0}.dialog-content{min-width:0;padding-bottom:env(safe-area-inset-bottom);gap:22px;display:grid}.day-section{border-bottom:1px solid var(--border);gap:18px;min-width:0;padding-bottom:24px;display:grid}.day-section:last-child{border-bottom:0;padding-bottom:0}.day-section h3{overflow-wrap:anywhere;font-size:1.125rem}.day-state{color:var(--muted);font-size:.875rem}.label-rows{gap:0;min-width:0;display:grid}.label-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;padding:18px 0;display:grid}.label-row:first-child{padding-top:5px}.label-row:last-child{border-bottom:0;padding-bottom:5px}.label-identity{align-items:center;gap:12px;min-width:0;display:flex}.label-emoji{background:var(--accent-soft);border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,ui-sans-serif,system-ui,sans-serif;font-size:28px;line-height:1;display:grid}.label-name{overflow-wrap:anywhere;flex:1;min-width:0;font-size:1rem;font-weight:700;line-height:1.4}.label-controls{background:var(--surface-soft);border-radius:12px;grid-template-columns:44px minmax(0,1fr) 44px;align-items:stretch;gap:0;width:clamp(212px,13.5rem,400px);height:3rem;min-height:48px;display:grid}.completion-button{border-color:var(--accent);width:100%;height:100%;min-height:48px;color:var(--accent);background:var(--surface);white-space:nowrap;overflow-wrap:normal;word-break:normal;grid-area:1/1/auto/-1;justify-content:center;align-items:center;gap:5px;padding:8px 10px;display:flex}.label-controls.has-completion:not(.is-single) .completion-button{font-variant-numeric:tabular-nums;border-radius:0;grid-column:2;padding:8px 3px;font-size:1rem}.quantity-button{border:1px solid var(--border);background:0 0;grid-row:1;height:100%;min-height:48px;padding:4px;font-size:24px;line-height:1}.decrement-button{border-right:0;border-radius:12px 0 0 12px;grid-column:1}.increment-button{border-left:0;border-radius:0 12px 12px 0;grid-column:3}.completion-button:hover:not(:disabled){color:var(--accent);background:var(--accent-soft)}.completion-button.is-completed{color:var(--on-action);background:var(--action);border-color:var(--action)}.completion-button.is-completed:hover:not(:disabled){color:var(--on-action);background:var(--action-hover);border-color:var(--action-hover)}.preserved-count{font-size:inherit;color:inherit;text-align:center;font-weight:750}.day-advanced{min-width:0}.day-advanced>summary{min-height:44px;color:var(--muted);cursor:pointer;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:9px 0;font-size:.875rem;font-weight:500;list-style:none;display:flex}.day-advanced>summary::-webkit-details-marker{display:none}.day-advanced>summary:after{content:"›";margin-left:auto;font-size:22px;line-height:1;transition:transform .16s}.advanced-indicator{color:var(--muted);font-size:.875rem;font-weight:400;line-height:1.35}.day-advanced[open]>summary:after{transform:rotate(90deg)}.day-advanced-content{border-top:1px solid var(--border);gap:16px;min-width:0;padding:12px 0 0;display:grid}.day-actions{flex-wrap:wrap;gap:10px;display:flex}.save-state{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;color:var(--muted);margin:-1px;padding:0;font-size:.875rem;position:absolute;overflow:hidden}.calendar-form{gap:22px;display:grid}.form-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.check-label{align-items:center;gap:11px;min-height:48px;font-size:1rem;display:flex}.mode-fieldset{border:0;grid-template-columns:1fr 1fr;gap:12px;min-width:0;margin:0;padding:0;display:grid}.mode-fieldset legend{margin-bottom:10px;padding:0;font-size:1rem;font-weight:650}.mode-option{border:1px solid var(--field-border);cursor:pointer;background:var(--surface);border-radius:14px;align-items:flex-start;gap:12px;min-width:0;padding:16px;display:flex}.mode-option:has(input:checked){background:var(--accent-soft);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.mode-option-text{gap:5px;min-width:0;display:grid}.mode-option-text strong{font-size:1rem}.mode-option-text>span{color:var(--muted);font-size:.875rem}.editable-labels{gap:16px;display:grid}.editable-label{background:var(--surface-soft);border:1px solid var(--border);border-radius:18px;gap:16px;padding:18px;display:grid}.editable-label.is-archived{border-style:dashed}.symbol-editor{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:14px;display:grid}.symbol-preview{background:var(--surface);border:1px solid var(--border);white-space:nowrap;border-radius:16px;place-items:center;width:64px;height:68px;font-size:40px;display:grid;overflow:hidden}.symbol-picker{flex-wrap:wrap;gap:8px;display:flex}.symbol-option{border-color:var(--field-border);place-items:center;width:48px;min-width:48px;height:48px;padding:7px;font-size:26px;line-height:1;display:grid}.symbol-option.is-selected{border:2px solid var(--accent);background:var(--accent-soft);padding:6px}.label-archive-status{color:var(--muted);font-size:.875rem}.editable-label>.button{justify-self:start}.stat-cards{grid-template-columns:1fr 1fr;gap:18px;display:grid}.stat-card{border:1px solid var(--border);background:var(--surface);border-radius:20px;gap:9px;padding:28px;display:grid}.stat-card:first-child{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.stat-card strong{letter-spacing:-.055em;font-size:3rem;font-weight:750;line-height:1.05}.stat-card span{color:var(--muted);font-size:.875rem}.stat-card:first-child span{color:var(--on-accent)}.statistics-screen .stat-card{min-width:0;padding:20px}.statistics-screen .stat-card strong{overflow-wrap:anywhere;font-size:clamp(1.4rem,5.5vw,2.4rem)}.statistics-filters,.statistics-range{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:14px;display:grid}.statistics-range>.button{grid-column:1/-1;justify-self:end;min-height:48px}.statistics-filters>*,.statistics-range>*,.statistics-filters input,.statistics-range input{min-width:0}.statistics-archive-choice{align-items:center;gap:12px;min-height:48px;display:flex}.statistics-archive-choice input{width:24px;height:24px;min-height:24px;accent-color:var(--accent);flex:0 0 24px}.statistics-facts{flex-wrap:wrap;gap:10px 24px;font-size:.9375rem;display:flex}.statistics-empty-note{background:var(--surface-soft);border-radius:14px;padding:14px 16px}.statistics-disclosure{min-width:0}.statistics-disclosure>summary{cursor:pointer;min-height:48px;color:var(--ink);align-content:center;font-weight:600;display:list-item}.statistics-disclosure[open]>*+*{margin-top:12px}.statistics-section,.statistics-calendar,.statistics-chart{border:1px solid var(--border);background:var(--surface);border-radius:18px;min-width:0;margin:0;padding:20px}.statistics-section{gap:12px;display:grid}.statistics-today-row,.statistics-day-status{overflow-wrap:anywhere;grid-template-columns:minmax(0,1fr);gap:3px;display:grid}.statistics-today-row span{color:var(--muted)}.statistics-calendar{gap:8px;display:grid}.statistics-streaks{flex-wrap:wrap;gap:8px 24px;display:flex}.statistics-chart figcaption{margin-bottom:8px;font-size:1.125rem;font-weight:700}.statistics-bars{border-bottom:1px solid var(--border);align-items:end;gap:4px;height:150px;margin-top:16px;display:flex}.statistics-bar{flex:1 1 0;align-items:end;min-width:0;height:100%;display:flex}.statistics-bar-fill{background:var(--accent);border-radius:4px 4px 0 0;width:100%}.statistics-chart-axis{color:var(--muted);justify-content:space-between;margin:6px 0 12px;font-size:.875rem;display:flex}.statistics-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.875rem}.statistics-table caption{text-align:left;color:var(--muted);padding:8px 0 12px}.statistics-table th,.statistics-table td{text-align:left;border-bottom:1px solid var(--border);overflow-wrap:anywhere;vertical-align:top;padding:12px 6px}.statistics-table th:first-child{width:35%}.statistics-day-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.statistics-day-list>li{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:16px}.statistics-day-heading{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-bottom:10px;display:flex}.statistics-day-status{border-top:1px solid var(--border);padding:8px 0}.statistics-day-status>span:last-child{color:var(--muted)}.statistics-pager{justify-content:space-between;align-items:center;gap:10px;display:flex}.statistics-pager .button{min-height:48px}@media (max-width:359px){.statistics-filters{grid-template-columns:minmax(0,1fr)}.statistics-screen .stat-card,.statistics-section,.statistics-calendar,.statistics-chart{padding:16px}.statistics-range{gap:10px}}.summary-list{grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;margin:0;display:grid}.summary-list dd{margin:0;font-weight:700}.import-conflict{border:1px solid var(--warning-ink);background:var(--warning-bg);border-radius:16px;gap:16px;min-width:0;padding:18px;display:grid}.import-transfer-warning{border:1px solid var(--warning-ink);background:var(--warning-bg);border-radius:16px;gap:12px;min-width:0;padding:18px;display:grid}.import-transfer-choice{cursor:pointer;align-items:flex-start;gap:12px;min-height:48px;padding:12px 0;line-height:1.5;display:flex}.import-transfer-choice input{width:22px;height:22px;min-height:22px;accent-color:var(--accent);flex:none;margin:1px 0 0}.conflict-variants{grid-template-columns:1fr 1fr;gap:14px;min-width:0;display:grid}.conflict-variants>div{min-width:0}.json-preview{max-width:100%;max-height:220px;color:var(--ink);background:var(--surface);border:1px solid var(--field-border);border-radius:10px;padding:13px;font-family:ui-monospace,monospace;font-size:.875rem;overflow:auto}.queue-item{border-bottom:1px solid var(--border);overflow-wrap:anywhere;padding:12px 0;font-size:.875rem}.settings-screen .settings-card form{gap:16px;display:grid}.local-details,.storage-details{border-top:1px solid var(--border);padding-top:7px}.local-details>summary,.storage-details>summary{min-height:44px;color:var(--muted);cursor:pointer;padding:10px 0;font-size:.875rem;font-weight:650}.details-content{gap:14px;min-width:0;padding:10px 0 4px;font-size:.875rem;display:grid}.logout-message{margin:0;line-height:1.6}.logout-actions{grid-template-columns:auto minmax(0,1fr);display:grid}.logout-actions .button{white-space:normal;min-height:48px}.logout-options .button{text-align:left;width:100%}@media (min-width:700px){.day-cell{min-height:132px}.day-cell:has(.day-count-badge){min-height:148px}.day-cell.has-indicators:has(.day-count-badge){min-height:164px}:is(.day-cell:has(.mark-count-3),.day-cell:has(.mark-count-4)){min-height:176px}:is(.day-cell.has-indicators:has(.mark-count-3),.day-cell.has-indicators:has(.mark-count-4)){min-height:192px}.day-number{top:8px;left:10px}.day-count-badge,.more-marks{min-height:24px;padding:4px 6px;font-size:.8125rem}.day-marks:has(.day-count-badge){--mark-count-height:24px}.day-marks.is-multiple{gap:4px;inset:26px 4px 5px}.day-marks.is-multiple .day-symbol{font-size:46px}.day-marks.mark-count-3 .day-symbol,.day-marks.mark-count-4 .day-symbol{font-size:30px}.day-marks.is-multiple .day-count-badge{min-height:18px;padding:2px 3px;font-size:12px}.more-marks{top:5px;right:5px}.calendar-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.app-shell{padding:12px 12px 9rem}.app-header{margin-bottom:14px}h1{font-size:1.375rem}.brand{gap:10px}.brand-symbol{border-radius:11px;width:36px;min-width:36px;height:36px}.header-subtitle{display:none}.screen{gap:12px}.calendar-screen{gap:10px}.main-nav{width:calc(100% - 16px);bottom:calc(8px + env(safe-area-inset-bottom));border-radius:17px;gap:3px;padding:5px}.nav-button{border-radius:12px;gap:3px;min-height:54px;padding:6px 2px}.nav-label{min-height:2.4em;font-size:.75rem;line-height:1.2}.month-toolbar h2{font-size:1.2rem}.month-grid{gap:3px}.weekday{padding:2px 0 4px;font-size:.75rem}.day-cell{--day-min-height:clamp(52px, calc((100svh - var(--calendar-overhead) - env(safe-area-inset-bottom)) / var(--week-count)), 82px);border-radius:8px;padding:3px}.day-cell:has(.day-count-badge){min-height:max(94px, var(--day-min-height))}.day-cell.has-indicators{min-height:max(76px, calc(var(--day-min-height) + 12px))}.day-cell:has(.day-count-badge).has-indicators{min-height:max(112px, calc(var(--day-min-height) + 12px))}:is(.day-cell:has(.mark-count-3),.day-cell:has(.mark-count-4)){--day-min-height:148px;min-height:148px}:is(.day-cell:has(.mark-count-3).has-indicators,.day-cell:has(.mark-count-4).has-indicators){min-height:164px}.day-number{font-size:.875rem;top:4px;left:4px}.day-marks{inset:20px 2px 3px}.day-symbol{font-size:clamp(18px, min(9vw, calc(var(--day-min-height) - 30px - var(--mark-count-height))), 48px)}.day-marks:not(.is-multiple):has(.day-count-badge) .day-symbol{font-size:clamp(28px,9vw,42px)}.day-marks.is-multiple{gap:5px 1px;inset:22px 1px 3px}.has-indicators .day-marks.is-multiple{bottom:19px}.day-marks.is-multiple .day-symbol{font-size:clamp(18px,5vw,26px)}.day-marks.mark-count-3 .day-symbol,.day-marks.mark-count-4 .day-symbol{font-size:clamp(18px,4.8vw,20px)}.day-count-badge{min-height:17px;padding:2px 3px;font-size:11px}.day-marks.is-multiple .day-count-badge{letter-spacing:-.03em;min-height:15px;padding:2px 0;font-family:Arial,sans-serif;font-size:11px}.day-marks.is-multiple .day-count-badge[data-count-digits="2"],.day-marks.is-multiple .day-count-badge[data-count-digits="3"]{letter-spacing:0;justify-items:center;gap:0;min-height:22px;padding:1px 0;font-size:10px;line-height:1;display:grid}.day-marks.is-multiple .day-count-badge[data-count-digits="2"] .count-multiplier,.day-marks.is-multiple .day-count-badge[data-count-digits="3"] .count-multiplier{font-weight:600}:is(.day-marks:has([data-count-digits="2"]),.day-marks:has([data-count-digits="3"])){--mark-count-height:24px}.more-marks{min-height:18px;padding:2px 3px;font-size:11px;top:3px;right:2px}.day-indicators{font-size:.875rem;bottom:3px;right:3px}.calendar-card,.settings-card{padding:20px}.dialog{width:100%;max-width:100%;max-height:94vh;border-radius:24px 24px 0 0;max-height:94dvh;margin:auto auto 0}.dialog-panel{padding:20px 16px max(20px, env(safe-area-inset-bottom));gap:18px}.dialog-header h2{font-size:1.3rem}.dialog-content{gap:20px}.label-row{gap:10px;padding:16px 0}.label-controls{width:clamp(212px,13.5rem,400px)}.label-identity{gap:8px}.label-emoji{border-radius:10px;width:32px;height:32px;font-size:24px}.completion-button{font-size:1rem}.conflict-variants,.mode-fieldset{grid-template-columns:1fr}.mode-option{align-items:center}.stat-card{padding:22px}.stat-card strong{font-size:2.6rem}}@media (max-width:380px){.label-identity{flex-direction:column;align-items:flex-start;gap:6px}.label-name{width:100%}}@media (max-width:340px){.app-shell{padding-left:10px;padding-right:10px}.brand{gap:9px}.brand-symbol{width:40px;min-width:40px;height:40px;font-size:25px}.header-subtitle{max-width:175px}.month-toolbar{gap:4px}.month-toolbar h2{font-size:1.125rem}.calendar-screen .month-grid{gap:2px;margin-left:-10px;margin-right:-10px}.label-row{gap:8px}.label-controls{width:212px}.calendar-card,.settings-card,.editable-label{padding:16px}.stat-card{padding:18px}.form-columns{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.bootstrap-progress{overflow-wrap:anywhere;min-height:3.2em}.sync-card{min-width:0}.sync-auto-options{gap:14px;display:grid}.sync-auto-options[hidden]{display:none}.sync-option{cursor:pointer;align-items:center;gap:12px;min-height:48px;line-height:1.4;display:flex}.sync-option input{width:22px;height:22px;accent-color:var(--accent);flex:none}.sync-card select{width:100%;min-height:48px;font-size:16px}.sync-facts{gap:0;margin:0;display:grid}.sync-fact{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:14px;padding-block:12px;display:grid}.sync-fact dt{color:var(--muted);font-size:.875rem}.sync-fact dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0;font-size:.9375rem}.conflict-attention{border:1px solid var(--accent);background:var(--accent-soft);border-radius:16px;gap:12px;padding:16px;display:grid}.conflict-attention .button{justify-self:start}.conflict-dialog{width:min(900px,100% - 32px)}.conflict-list,.conflict-view,.conflict-context,.conflict-config-state,.conflict-day-state,.conflict-edit-fields{gap:16px;min-width:0;display:grid}.conflict-list-item{text-align:left;width:100%;font-size:1rem}.conflict-list-item[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.conflict-empty{color:var(--muted);padding:16px}.conflict-comparison{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;min-width:0;display:grid}.conflict-side{border:1px solid var(--border);border-radius:16px;align-content:start;gap:16px;min-width:0;padding:18px;display:grid}.conflict-side h3{color:var(--accent);font-size:1rem}.conflict-state-label{font-weight:700}.conflict-counts{gap:8px;display:grid}.conflict-count-row{justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:48px;display:flex}.conflict-count-row>strong{font-variant-numeric:tabular-nums;font-size:1.25rem}.conflict-label-name{overflow-wrap:anywhere;align-items:center;gap:10px;min-width:0;display:flex}.conflict-symbol{place-items:center;width:32px;min-width:32px;height:36px;font-size:26px;line-height:1;display:grid}.conflict-comment,.conflict-absence,.conflict-config-state p,.conflict-details dd{white-space:pre-wrap;overflow-wrap:anywhere}.conflict-comment{border-left:3px solid var(--border);padding-left:12px}.conflict-details{grid-template-columns:minmax(0,1fr);gap:4px;margin:0;display:grid}.conflict-details dt{color:var(--muted);font-size:.875rem}.conflict-details dd{margin:0 0 10px;font-size:1rem}.conflict-history{min-width:0;font-size:.875rem}.conflict-history summary{cursor:pointer;min-height:48px;color:var(--muted);align-items:center;display:flex}.conflict-history p,.conflict-history h4{margin-top:10px}.conflict-choices{border:0;grid-template-columns:1fr;gap:10px;min-width:0;margin:0;padding:0;display:grid}.conflict-choices legend{margin-bottom:12px;padding:0;font-weight:700}.conflict-choice{border:1px solid var(--field-border);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:48px;padding:12px 14px;display:flex}.conflict-choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.conflict-choice:has(input:disabled){opacity:.6;cursor:default}.conflict-stepper{flex:none;grid-template-columns:44px minmax(36px,1fr) 44px;align-items:center;width:140px;display:grid}.conflict-step{min-width:44px;min-height:48px;padding:4px;font-size:24px}.conflict-quantity{text-align:center;font-variant-numeric:tabular-nums;font-weight:700}.conflict-label-edit{border:1px solid var(--border);border-radius:14px;gap:12px;padding:16px;display:grid}.conflict-actions>.button{flex:200px}@media (max-width:600px){.conflict-dialog{width:100%}.conflict-comparison{grid-template-columns:minmax(0,1fr)}.conflict-side{padding:16px}}.account-delete-action{color:var(--danger,#b62c38)}.account-delete-form{gap:1rem;display:grid}.account-delete-form input[type=password]{width:100%;min-height:48px;font-size:16px}.account-delete-agreement{cursor:pointer;align-items:flex-start;gap:.75rem;padding-block:.5rem;line-height:1.5;display:flex}.account-delete-agreement input{flex:none;width:22px;height:22px;margin:.15rem 0 0}.account-delete-form .button,dialog[data-testid=account-delete-dialog] .button{min-height:48px}.plan-form,.plan-fields{gap:18px;min-width:0;display:grid}.plan-weekdays{border:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;display:grid}.plan-weekdays legend{margin-bottom:10px;font-weight:650}.plan-weekdays label{border:1px solid var(--border);cursor:pointer;background:var(--surface);border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:48px;font-size:1rem;display:flex}.plan-weekdays label:has(:checked){background:var(--accent-soft);border-color:var(--accent)}.plan-history{border-top:1px solid var(--border);min-width:0;padding-top:12px}.plan-history summary{cursor:pointer;min-height:48px;color:var(--muted);align-items:center;display:flex}.plan-history p{overflow-wrap:anywhere;font-size:.9375rem;line-height:1.5}.plan-history .plan-fields{margin-top:12px}.day-plan-status{color:var(--muted);font-size:.9375rem;line-height:1.4}.day-plan-marker{background:var(--muted);pointer-events:none;border-radius:50%;width:6px;height:6px;position:absolute;top:9px;right:8px}.plan-form input,.plan-form select{min-width:0;max-width:100%;min-height:48px;font-size:1rem}
