@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-deep:#121417;--bg:#1a1d22;--bg-elevated:#242830;--bg-hover:#2e333c;--border:#a0aab91f;--border-strong:#a0aab938;--text:#e8eaee;--text-muted:#9aa3ad;--text-faint:#6b7380;--accent:#c94848;--accent-rgb:201, 72, 72;--accent-bright:#ce5252;--accent-hover-top:#d86565;--accent-hover-bottom:#c84848;--accent-soft:rgba(var(--accent-rgb), .16);--danger:#c87070;--radius:14px;--shadow:0 18px 50px #00000073;--glass-fill:#ffffff14;--glass-fill-strong:#ffffff24;--glass-stroke:#ffffff38;--glass-stroke-soft:#ffffff1f;--glass-shadow:0 6px 18px #00000059, inset 0 1px 0 #ffffff47;--glass-knob:#f8fafceb;--glass-ease:cubic-bezier(.22, 1, .36, 1);--font-display:"Manrope", system-ui, sans-serif;--font-body:"Manrope", system-ui, sans-serif;--titlebar-height:40px;--app-height:100dvh}*,:before,:after{box-sizing:border-box}html{height:var(--app-height,100dvh);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{min-height:var(--app-height,100dvh);overscroll-behavior:none;margin:0;overflow:hidden}body,#root{height:var(--app-height,100dvh)}body{font-family:var(--font-body);background:var(--bg-deep);color:var(--text);-webkit-font-smoothing:antialiased;scrollbar-width:thin;scrollbar-color:#5c6570 #1a1d22}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#1a1d22;border-radius:999px}::-webkit-scrollbar-thumb{background:#6b7380 padding-box padding-box;border:2px solid #1a1d22;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#9aa3ad padding-box padding-box;border:2px solid #1a1d22}::-webkit-scrollbar-thumb:active{background:#c0c6ce padding-box padding-box;border:2px solid #1a1d22}::-webkit-scrollbar-button:single-button{background-color:#1a1d22;background-position:50%;background-repeat:no-repeat;display:block}::-webkit-scrollbar-button:single-button:vertical:decrement{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='6' viewBox='0 0 8 6'%3E%3Cpath fill='%236b7380' d='M4 1L7.5 5.5h-7z'/%3E%3C/svg%3E");height:14px}::-webkit-scrollbar-button:single-button:vertical:increment{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='6' viewBox='0 0 8 6'%3E%3Cpath fill='%236b7380' d='M4 5L.5.5h7z'/%3E%3C/svg%3E");height:14px}::-webkit-scrollbar-button:single-button:horizontal:decrement{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='8' viewBox='0 0 6 8'%3E%3Cpath fill='%236b7380' d='M1 4L5.5.5v7z'/%3E%3C/svg%3E");width:14px}::-webkit-scrollbar-button:single-button:horizontal:increment{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='8' viewBox='0 0 6 8'%3E%3Cpath fill='%236b7380' d='M5 4L.5 7.5v-7z'/%3E%3C/svg%3E");width:14px}::-webkit-scrollbar-button:single-button:vertical:decrement:hover{filter:brightness(1.35)}::-webkit-scrollbar-button:single-button:vertical:increment:hover{filter:brightness(1.35)}::-webkit-scrollbar-button:single-button:horizontal:decrement:hover{filter:brightness(1.35)}::-webkit-scrollbar-button:single-button:horizontal:increment:hover{filter:brightness(1.35)}::-webkit-scrollbar-corner{background:#1a1d22}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}.app{width:100%;height:var(--app-height,100dvh);min-height:var(--app-height,100dvh);padding-top:env(safe-area-inset-top,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);background:radial-gradient(1200px 600px at 10% -10%, rgba(var(--accent-rgb), .12), transparent 55%), radial-gradient(900px 500px at 100% 0%, rgba(var(--accent-rgb), .06), transparent 50%), linear-gradient(180deg, #1a1d22 0%, var(--bg-deep) 100%);grid-template-rows:auto auto 1fr;grid-template-areas:"topbar""toolbar""calendar";display:grid;position:relative;overflow:clip hidden}.app--desktop{grid-template-rows:auto auto auto 1fr;grid-template-areas:"titlebar""topbar""toolbar""calendar"}:is(.app--desktop:has(>.login-screen),.app--desktop:has(>.loading)){grid-template-rows:auto 1fr;grid-template-areas:"titlebar""calendar"}.app--desktop .login-screen{grid-area:calendar;height:100%;min-height:0}.app>.loading{grid-area:calendar}.app__glow{pointer-events:none;background:radial-gradient(circle, rgba(var(--accent-rgb), .1), transparent 70%);filter:blur(10px);z-index:0;grid-area:calendar;width:55%;height:55%;position:absolute;inset:auto -20% -30% auto}.titlebar{height:var(--titlebar-height);border-bottom:1px solid var(--border);z-index:100;-webkit-user-select:none;user-select:none;-webkit-app-region:drag;app-region:drag;background:linear-gradient(#1e2228 0%,#16191e 100%);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 0 0 .85rem;display:none}.app--desktop .titlebar{grid-area:titlebar;display:flex}.titlebar__brand{pointer-events:none;align-items:center;gap:.45rem;min-width:0;display:inline-flex}.titlebar__icon{object-fit:cover;border-radius:4px;flex-shrink:0;width:16px;height:16px}.titlebar__title{color:var(--text-muted);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:600;overflow:hidden}.titlebar__controls{-webkit-app-region:no-drag;app-region:no-drag;align-items:stretch;height:100%;margin-left:auto;display:flex}.titlebar__btn{width:52px;height:100%;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;transition:background .12s,color .12s;display:inline-grid}.titlebar__btn:hover{color:var(--text);background:#a0aab914}.titlebar__btn--close:hover{color:#fff;background:#c42b1c}.topbar{z-index:2;grid-area:topbar;justify-content:space-between;align-items:center;gap:1.25rem;padding:1rem 1.5rem .75rem;display:flex}.topbar__pets{flex:1;align-items:center;gap:.45rem;min-width:0;display:flex}.topbar__pet-row{flex:1;min-width:0}.topbar__pet-tools{flex-shrink:0;align-items:center;gap:.45rem;display:flex}.topbar__add-event{color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:2.35rem;min-width:2.35rem;height:2.35rem;padding:0;line-height:0;display:inline-flex}.topbar__add-event-label{display:none}.topbar__add-event-icon{color:inherit;justify-content:center;align-items:center;line-height:0;display:inline-flex}.topbar__add-event-icon svg{display:block}.pet-picker{min-width:10.5rem;max-width:16rem;position:relative}.pet-picker--block{width:100%;min-width:0;max-width:none}.pet-picker.is-invalid .pet-picker__trigger{border-color:#e07070bf;box-shadow:0 0 0 3px #e070702e}.field--error>span{color:#f0a0a0}.field-error{color:#f0a0a0;margin:0;font-size:.8rem;line-height:1.35}.pet-picker--readonly .pet-picker__trigger{cursor:default;pointer-events:none;opacity:.95}.pet-picker__label.is-placeholder{color:var(--text-muted);font-weight:500}.pet-picker__trigger{width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:#00000047;border:1px solid #ffffff1f;border-radius:10px;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .65rem;font-size:.92rem;display:flex}.pet-picker__value{flex:1;align-items:center;gap:.5rem;min-width:0;display:inline-flex}.pet-picker__trigger:hover:not(:disabled){border-color:rgba(var(--accent-rgb), .35)}.pet-picker__trigger:disabled{opacity:.55;cursor:not-allowed}.pet-picker__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pet-picker__chevron{opacity:.7;flex-shrink:0;transition:transform .15s}.pet-picker.is-open .pet-picker__chevron{transform:rotate(180deg)}.pet-picker__menu{z-index:20;background:#1e2228;border:1px solid #ffffff1a;border-radius:12px;max-height:280px;padding:.35rem;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 12px 32px #00000073}.pet-picker__group{margin-top:.25rem}.pet-picker__group-label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:.35rem .55rem .2rem;font-size:.72rem}.pet-picker__option{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:.55rem;padding:.5rem .6rem;display:flex}.pet-picker__option:hover{background:rgba(var(--accent-rgb), .12)}.pet-picker__option.is-active{background:rgba(var(--accent-rgb), .2);color:var(--accent)}.pet-picker__empty{color:var(--text-muted);margin:0;padding:.65rem .6rem;font-size:.88rem}.pet-avatar{object-fit:cover;background:#00000059;border:1px solid #a0aab92e;border-radius:50%;flex-shrink:0;width:24px;height:24px;display:block}.pet-avatar--lg{width:88px;height:88px}.pet-avatar--placeholder{background:rgba(var(--accent-rgb), .12)}.pet-avatar-field{align-items:center;gap:1rem;margin-bottom:.35rem;display:flex}.pet-avatar-field__preview{flex-shrink:0}.pet-avatar-field__actions{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.app-select{width:100%;position:relative}.app-select__trigger{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:#00000059;border-radius:12px;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem .85rem;transition:border-color .15s,box-shadow .15s;display:flex}.app-select__trigger:hover:not(:disabled){border-color:rgba(var(--accent-rgb), .35)}.app-select__trigger:focus{border-color:rgba(var(--accent-rgb), .55);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.app-select__trigger:disabled{opacity:.55;cursor:not-allowed}.app-select__label{align-items:center;gap:.45rem;min-width:0;display:inline-flex;overflow:hidden}.app-select__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-select__icon{flex-shrink:0;justify-content:center;align-items:center;line-height:0;display:inline-flex}.app-select__label.is-placeholder{color:var(--text-muted);font-weight:500}.app-select__chevron{opacity:.7;flex-shrink:0;transition:transform .15s}.app-select.is-open .app-select__chevron{transform:rotate(180deg)}.app-select__menu{z-index:30;background:#1e2228;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;padding:.35rem;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 12px 32px #00000073}.app-select--searchable .app-select__menu{height:200px}.app-select--top .app-select__menu{top:auto;bottom:calc(100% + 6px);box-shadow:0 -12px 32px #00000073}.app-select--top.is-open .app-select__chevron{transform:rotate(0)}.app-select--top .app-select__chevron{transform:rotate(180deg)}.app-select__search{flex-shrink:0;padding:.15rem .15rem .35rem}.app-select__search input{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#00000059;border-radius:8px;outline:none;padding:.45rem .65rem}.app-select__search input:focus{border-color:rgba(var(--accent-rgb), .55)}.app-select__options{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.app-select__empty{color:var(--text-muted);padding:.65rem;font-size:.9rem}.app-select__option{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:.45rem;padding:.55rem .65rem;display:flex}.app-select__option:hover{background:rgba(var(--accent-rgb), .12)}.app-select__option.is-active{background:rgba(var(--accent-rgb), .2);color:var(--accent)}.app-select--wrap .app-select__trigger,.app-select--wrap .app-select__option{align-items:flex-start}.app-select--wrap .app-select__label{align-items:flex-start;overflow:visible}.app-select--wrap .app-select__text{white-space:normal;text-overflow:unset;line-height:1.35;overflow:visible}.app-select--wrap .app-select__chevron{margin-top:.2rem}.app-datepicker{width:100%;min-width:0;position:relative}.app-datepicker__trigger{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:#00000059;border-radius:12px;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem .85rem;transition:border-color .15s,box-shadow .15s;display:flex}.app-datepicker__trigger:hover:not(:disabled){border-color:rgba(var(--accent-rgb), .35)}.app-datepicker__trigger:focus{border-color:rgba(var(--accent-rgb), .55);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.app-datepicker__trigger:disabled{opacity:.55;cursor:not-allowed}.app-datepicker__label{align-items:center;gap:.55rem;min-width:0;display:inline-flex;overflow:hidden}.app-datepicker__label.is-placeholder{color:var(--text-muted)}.app-datepicker__cal-icon{opacity:.75;color:var(--accent);flex-shrink:0}.app-datepicker__text{text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;overflow:hidden}.app-datepicker__chevron{opacity:.7;flex-shrink:0;transition:transform .15s}.app-datepicker.is-open .app-datepicker__chevron{transform:rotate(180deg)}.app-datepicker__panel{z-index:70;border:1px solid var(--border-strong);box-shadow:var(--shadow);overscroll-behavior:contain;background:linear-gradient(#252830,#1a1d22);border-radius:16px;padding:.75rem;animation:.14s ease-out fade-in;position:fixed;overflow:auto}.app-datepicker__panel.is-measuring{visibility:hidden;pointer-events:none}.app-datepicker__nav{justify-content:space-between;align-items:center;gap:.35rem;margin-bottom:.65rem;display:flex}.app-datepicker__titles{flex:1;justify-content:center;align-items:center;gap:.25rem;min-width:0;display:flex}.app-datepicker__title-btn{color:var(--text);font:inherit;font-family:var(--font-display);text-transform:capitalize;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:.2rem .4rem;font-size:.95rem;font-weight:600;transition:background .12s,color .12s}.app-datepicker__title-btn:hover{background:rgba(var(--accent-rgb), .14);color:var(--accent)}.app-datepicker__title-range{font-family:var(--font-display);font-variant-numeric:tabular-nums;text-align:center;font-size:.95rem;font-weight:600}.app-datepicker__nav-btn{flex-shrink:0;width:2rem;height:2rem;font-size:1.15rem}.app-datepicker__weekdays{grid-template-columns:repeat(7,1fr);gap:.15rem;margin-bottom:.25rem;display:grid}.app-datepicker__weekdays span{text-align:center;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);padding:.2rem 0;font-size:.68rem}.app-datepicker__grid{grid-template-columns:repeat(7,1fr);gap:.2rem;display:grid}.app-datepicker__meta-grid{grid-template-columns:repeat(3,1fr);gap:.35rem;min-height:12.5rem;display:grid}.app-datepicker__meta{min-height:2.75rem;color:var(--text);font:inherit;text-transform:capitalize;cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:.9rem;font-weight:500;transition:background .12s,color .12s}.app-datepicker__meta:hover:not(:disabled){background:rgba(var(--accent-rgb), .14)}.app-datepicker__meta.is-outside{color:var(--text-faint)}.app-datepicker__meta.is-today:not(.is-active){box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .55);color:var(--accent)}.app-datepicker__meta.is-active{background:var(--accent);color:#fff;font-weight:700}.app-datepicker__meta:disabled{opacity:.35;cursor:not-allowed}.app-datepicker__day{aspect-ratio:1;min-height:2.15rem;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:.88rem;font-weight:500;transition:background .12s,color .12s}.app-datepicker__day:hover:not(:disabled){background:rgba(var(--accent-rgb), .14)}.app-datepicker__day.is-outside{color:var(--text-faint)}.app-datepicker__day.is-today:not(.is-active){box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .55);color:var(--accent)}.app-datepicker__day.is-active{background:var(--accent);color:#fff;font-weight:700}.app-datepicker__day:disabled{opacity:.35;cursor:not-allowed}.app-datepicker__footer{border-top:1px solid var(--border);justify-content:flex-end;margin-top:.55rem;padding-top:.45rem;display:flex}.app-datetime{grid-template-columns:1fr;align-items:stretch;gap:.55rem;display:grid}.app-datetime .app-datepicker__trigger{text-align:center;justify-content:center;padding-left:2.4rem;padding-right:2.4rem;position:relative}.app-datetime .app-datepicker__label{justify-content:center;overflow:visible}.app-datetime .app-datepicker__cal-icon{position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.app-datetime .app-datepicker__chevron{position:absolute;top:50%;right:.85rem;transform:translateY(-50%)}.app-datetime .app-datepicker.is-open .app-datepicker__chevron{transform:translateY(-50%)rotate(180deg)}.app-datetime .app-datepicker__text{text-align:center}.app-datetime__time{align-items:stretch;min-width:0;margin:0;display:flex}.app-datetime__time input[type=time]{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;text-align:center;background:#00000059;border-radius:12px;padding:.7rem}.app-datetime__time input[type=time]::-webkit-datetime-edit{text-align:center;justify-content:center;width:100%;display:flex}.app-datetime__time input[type=time]::-webkit-datetime-edit-fields-wrapper{justify-content:center;display:flex}.app-datetime__time input[type=time]:focus{border-color:rgba(var(--accent-rgb), .55);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.app-datetime__time input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.85)sepia(.35)saturate(2)hue-rotate(320deg);cursor:pointer;opacity:.75}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon-btn:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.modal--sm{width:min(420px,100%)}.modal--confirm{width:min(400px,100%)}.modal--proximity .modal__header{align-items:center}.proximity-body{gap:0;padding:.6rem 1.2rem .85rem;overflow:auto}.confirm-message{color:var(--text-muted);white-space:pre-line;margin:0;font-size:.95rem;line-height:1.45}.proximity-conflicts{flex-direction:column;gap:.55rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.proximity-conflicts li{border:1px solid var(--border);background:#0000002e;border-radius:10px;flex-direction:column;gap:.15rem;padding:.55rem .7rem;display:flex}.proximity-conflicts strong{font-size:.92rem}.proximity-conflicts span{opacity:.9;font-size:.82rem}.proximity-conflicts small{opacity:.65;font-size:.75rem}.proximity-suggestions{flex-direction:column;gap:.45rem;margin-top:.85rem;display:flex}.proximity-suggestions__list{flex-wrap:wrap;gap:.4rem;display:flex}.modal__actions-spacer{flex:1}.brand{flex:1;align-items:center;gap:.85rem;min-width:0;display:flex}.brand__paw{color:var(--accent);filter:drop-shadow(0 0 12px rgba(var(--accent-rgb), .35));flex-shrink:0;animation:3.2s ease-in-out infinite paw-breathe}@keyframes paw-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.brand__title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.55rem;font-weight:700;line-height:1.1}.brand__sub{color:var(--text-muted);letter-spacing:.04em;text-transform:lowercase;margin:.15rem 0 0;font-size:.78rem}.view-switch{border:1px solid var(--border);background:#00000059;border-radius:999px;padding:4px;display:inline-flex;position:relative}.view-switch__btn{z-index:1;color:var(--text-muted);transition:color .2s var(--glass-ease);background:0 0;border:none;border-radius:999px;padding:.45rem 1rem;font-size:.9rem;font-weight:600;position:relative}.view-switch__btn:hover{color:var(--text)}.view-switch__btn.is-active{color:var(--accent);box-shadow:none;background:0 0}.toolbar{z-index:1;grid-area:toolbar;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:.35rem 1.5rem .85rem;display:grid}.nav-controls{align-items:center;gap:.35rem;display:flex}.toolbar__label{text-align:center;font-family:var(--font-display);text-transform:capitalize;margin:0;font-size:1.2rem;font-weight:500}.toolbar__hint{text-align:right;color:var(--text-faint);text-transform:capitalize;margin:0;font-size:.82rem}.calendar-shell{z-index:1;border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#14100cb8;flex-direction:column;grid-area:calendar;align-self:stretch;min-height:0;margin:0 1.25rem 1.25rem;animation:.45s ease-out shell-in;display:flex;position:relative;overflow:hidden}@keyframes shell-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.loading{height:100%;color:var(--text-muted);place-items:center;display:grid}.app-loader{z-index:90;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto;background:#0c0e12c7;place-items:center;animation:.18s ease-out app-loader-in;display:grid;position:fixed;inset:0}.app-loader--desktop{top:var(--titlebar-height)}.app-loader__content{justify-items:center;gap:1.1rem;display:grid}.app-loader__bell{width:3.25rem;height:3.25rem;color:var(--accent);filter:drop-shadow(0 0 12px rgba(var(--accent-rgb), .35));transform-origin:50% 8%;place-items:center;animation:.55s ease-in-out infinite app-loader-bell-swing;display:grid}.app-loader__message{color:var(--accent);letter-spacing:.04em;text-shadow:0 0 16px rgba(var(--accent-rgb), .35);margin:0;font-size:.92rem;font-weight:600}@keyframes app-loader-in{0%{opacity:0}to{opacity:1}}@keyframes app-loader-bell-swing{0%{transform:rotate(-18deg)}50%{transform:rotate(18deg)}to{transform:rotate(-18deg)}}@media (prefers-reduced-motion:reduce){.app-loader{animation:none}.app-loader__bell{animation:1.6s ease-in-out infinite app-loader-bell-pulse}@keyframes app-loader-bell-pulse{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1)}}}.view{flex:1;height:100%;min-height:0;overflow:auto}.view--month{flex-direction:column;min-height:0;display:flex;overflow:hidden}.month-weekdays{border-bottom:1px solid var(--border);background:#0003;flex-shrink:0;grid-template-columns:repeat(7,1fr);display:grid}.month-weekday{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);padding:.55rem;font-size:.75rem;font-weight:600}.month-weekday.is-weekend{color:rgba(var(--accent-rgb), .55)}.month-grid{flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(110px,1fr);min-height:0;display:grid;overflow:auto}.month-cell{border:none;border-right:1px solid var(--border);border-bottom:1px solid var(--border);text-align:left;background:0 0;flex-direction:column;align-items:flex-start;gap:.3rem;min-height:110px;padding:.4rem;transition:background .15s;display:flex;overflow:hidden}.month-cell.is-weekend,.month-cell.is-holiday{background:rgba(var(--accent-rgb), .045)}.month-cell.is-holiday.is-weekend{background:rgba(var(--accent-rgb), .07)}.month-cell:nth-child(7n){border-right:none}.month-cell:hover{background:var(--bg-hover)}.month-cell.is-weekend:hover,.month-cell.is-holiday:hover{background:rgba(var(--accent-rgb), .09)}.month-cell.is-outside{color:var(--text-faint);opacity:.45}.month-cell.is-today .month-cell__day{background:var(--accent);color:#fff}.month-cell__day{width:1.7rem;height:1.7rem;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;padding:0;font-size:.85rem;font-weight:700;transition:background .15s,transform .12s;display:inline-grid}.month-cell__day:hover{background:rgba(var(--accent-rgb), .2);transform:scale(1.06)}.month-cell.is-today .month-cell__day:hover{background:var(--accent);filter:brightness(1.08)}.month-cell__events{flex-flow:wrap;align-content:flex-start;gap:.2rem .24rem;width:100%;min-width:0;display:flex;overflow:hidden}.month-pill{border:1px solid var(--border-strong);background:var(--accent-soft);max-width:100%;color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:.25rem;padding:.14rem .42rem .14rem .3rem;font-size:.68rem;font-weight:600;line-height:1;transition:transform .12s,filter .12s,border-color .12s;display:inline-flex}.month-pill:hover{filter:brightness(1.08);border-color:rgba(var(--accent-rgb), .45);transform:translateY(-1px)}.month-pill__time{color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.month-more{color:var(--text-muted);justify-content:center;align-items:center;padding-left:.15rem;font-size:.72rem;font-weight:600;display:flex}.month-cell__count{background:var(--accent-soft);min-width:1.55rem;color:var(--accent);text-align:center;pointer-events:none;border-radius:999px;align-self:center;margin-top:auto;padding:.15rem .4rem;font-size:.78rem;font-weight:700;display:none}.week-grid{grid-template-columns:repeat(7,1fr);height:100%;min-height:420px;display:grid}.week-col{border-right:1px solid var(--border);flex-direction:column;min-width:0;display:flex}.week-col:last-child{border-right:none}.week-col.is-today{background:rgba(var(--accent-rgb), .05)}.week-col.is-holiday{background:rgba(var(--accent-rgb), .045)}.week-col.is-holiday.is-today{background:rgba(var(--accent-rgb), .08)}.week-col__head{border:none;border-bottom:1px solid var(--border);background:#0003;flex-direction:column;align-items:center;gap:.2rem;padding:.75rem .4rem;transition:background .15s;display:flex}.week-col__head:hover{background:var(--bg-hover)}.week-col__dow{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:.72rem;font-weight:600}.week-col__date{font-family:var(--font-display);font-size:1.35rem}.week-col.is-today .week-col__date{color:var(--accent)}.week-col__body{flex-direction:column;flex:1;gap:.35rem;padding:.5rem;display:flex;overflow:auto}.week-col__empty{border:1px dashed var(--border);color:var(--text-faint);background:0 0;border-radius:10px;margin-top:.5rem;padding:.85rem;transition:border-color .15s,color .15s}.week-col__empty:hover{border-color:var(--accent);color:var(--accent)}.week-list{flex-direction:column;gap:.4rem;height:100%;margin:0;padding:.35rem .5rem .75rem;list-style:none;display:flex;overflow:auto}.week-list__row{border:1px solid var(--border);width:100%;color:var(--text);text-align:left;background:#00000038;border-radius:14px;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;transition:background .15s,border-color .15s;display:flex}.week-list__row:hover{background:var(--bg-hover);border-color:var(--border-strong)}.week-list__row.is-today{border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .08)}.week-list__row.is-holiday{border-color:rgba(var(--accent-rgb), .35);background:rgba(var(--accent-rgb), .045)}.week-list__row.is-holiday.is-today{border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .08)}.week-list__date{flex-direction:column;gap:.15rem;min-width:0;display:flex}.week-list__date strong{text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint);font-size:.72rem;font-weight:700}.week-list__date span{font-family:var(--font-display);font-size:1.15rem;font-weight:600}.week-list__row.is-today .week-list__date span{color:var(--accent)}.week-list__meta{flex-shrink:0}.week-list__count{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.7rem;height:1.7rem;padding:0 .45rem;font-size:.82rem;font-weight:700;display:inline-flex}.week-list__empty{color:var(--text-faint);font-size:.82rem}.event-chip{border:1px solid var(--border-strong);background:var(--accent-soft);width:100%;color:var(--text);text-align:left;border-radius:10px;align-items:center;gap:.35rem;padding:.4rem .45rem;font-size:.78rem;font-weight:600;transition:transform .12s,filter .12s;display:flex}.event-chip:hover{filter:brightness(1.1);transform:translateY(-1px)}.day-timeline{padding:.25rem 0}.view--day.is-holiday{background:linear-gradient(180deg, rgba(var(--accent-rgb), .08) 0%, rgba(var(--accent-rgb), .03) 40%, transparent 100%)}.day-row{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:64px 1fr;min-height:52px;transition:background .15s;display:grid}.day-row:hover{background:rgba(var(--accent-rgb), .04)}.day-row:focus-visible{outline:2px solid rgba(var(--accent-rgb), .45);outline-offset:-2px}.day-row__hour{color:var(--text-faint);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:flex-start;padding:.55rem .75rem 0 0;font-size:.78rem;display:flex}.day-row__slot{flex-wrap:wrap;align-content:flex-start;gap:.4rem;min-height:52px;padding:.35rem .75rem .35rem 0;display:flex}.event-pill{border:1px solid var(--border-strong);background:var(--accent-soft);color:var(--text);border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.82rem;transition:transform .12s;display:inline-flex}.event-pill:hover{transform:translateY(-1px)}.event-pill__time{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:700}.event-pill__label{color:var(--text-muted)}.btn{border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text);border-radius:999px;padding:.55rem 1.1rem;font-weight:600;transition:background .15s,border-color .15s,box-shadow .15s,filter .15s}.btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn--primary{background:linear-gradient(180deg, var(--accent-bright), var(--accent));color:#fff;box-shadow:0 8px 24px rgba(var(--accent-rgb), .25);border-color:#0000}.btn--primary:hover{background:linear-gradient(180deg, var(--accent-hover-top), var(--accent-hover-bottom));box-shadow:0 10px 28px rgba(var(--accent-rgb), .4);filter:brightness(1.04);border-color:#0000}.btn--ghost{background:0 0}.btn--ghost:hover{background:#ffffff0f}.btn--danger{color:#ffb0b0;background:#e070702e;border-color:#e0707073}.btn--danger:hover:not(:disabled){background:#e0707047;border-color:#e07070a6}.btn--delete{align-items:center;gap:.4rem;display:inline-flex}.btn--delete__icon{display:none}.btn--sm{padding:.35rem .8rem;font-size:.8rem}.reminder-ack-btn{align-self:flex-start;margin-top:.35rem}.icon-btn{border:1px solid var(--border);width:2.2rem;height:2.2rem;color:var(--text);background:#00000040;border-radius:50%;place-items:center;font-size:1.25rem;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-grid}.icon-btn:hover{background:rgba(var(--accent-rgb), .12);border-color:rgba(var(--accent-rgb), .35);color:var(--accent)}.topbar__actions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:.55rem;margin-left:auto;display:flex}.section-switch,.topbar__brand,.view-switch{flex-shrink:0}.pet-select{appearance:none;color:var(--text);font:inherit;background-color:#00000040;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 14px) 52%,calc(100% - 9px) 52%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border:1px solid #ffffff1f;border-radius:10px;max-width:11rem;padding:.45rem 2rem .45rem .75rem;font-size:.92rem}.pet-select:focus{border-color:rgba(var(--accent-rgb), .45);outline:none}.load-error{color:#ff8f8f;grid-area:toolbar;align-self:end;margin:0 1.25rem .5rem;font-size:.9rem}.share-list{flex-direction:column;gap:.45rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.share-list__item{background:#0000002e;border:1px solid #ffffff14;border-radius:10px;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .7rem;display:flex}.share-list__item span{flex-direction:column;gap:.15rem;min-width:0;display:flex}.share-list__item small{opacity:.65;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.topbar__actions .icon-btn--match{--size:calc(1.2em + 1.1rem + 2px);box-sizing:border-box;width:var(--size);height:var(--size);flex:0 0 var(--size);padding:0}.toggle-row{border:1px solid var(--glass-stroke-soft);-webkit-backdrop-filter:blur(14px)saturate(1.25);cursor:pointer;transition:border-color .2s var(--glass-ease), background .2s var(--glass-ease), box-shadow .2s var(--glass-ease);background:linear-gradient(165deg,#ffffff12,#ffffff05 42%,#0000002e),#12161c8c;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem .95rem;display:flex;box-shadow:inset 0 1px #ffffff1f,0 8px 22px #00000038}.toggle-row:hover{border-color:#fff3;box-shadow:inset 0 1px #ffffff29,0 10px 26px #00000047}.toggle-row span{flex-direction:column;gap:.2rem;min-width:0;display:flex}.toggle-row strong{font-size:.95rem}.toggle-row small{color:var(--text-muted);font-size:.78rem;line-height:1.35}.glass-switch{border:1px solid var(--glass-stroke-soft);-webkit-backdrop-filter:blur(10px)saturate(1.3);width:2.65rem;height:1.55rem;transition:background .28s var(--glass-ease), border-color .28s var(--glass-ease), box-shadow .28s var(--glass-ease);background:linear-gradient(#ffffff1f,#ffffff08),#080a0e8c;border-radius:999px;flex-shrink:0;display:inline-flex;position:relative;box-shadow:inset 0 1px 2px #00000073,inset 0 1px #ffffff24,0 1px 2px #0003}.glass-switch:before{content:"";width:1.22rem;height:1.22rem;transition:transform .32s var(--glass-ease), box-shadow .28s var(--glass-ease);pointer-events:none;z-index:1;background:linear-gradient(155deg,#fffffff2 0%,#ecf0f5d1 48%,#d2dae4c7 100%);border:1px solid #ffffff8c;border-radius:50%;position:absolute;top:.12rem;left:.12rem;box-shadow:0 2px 8px #00000059,inset 0 1px #ffffffe6,inset 0 -1px 1px #00000014}.glass-switch.is-on{background:linear-gradient(145deg, #ffaaaa6b, rgba(var(--accent-rgb), .72) 55%, #8c2828c7), rgba(var(--accent-rgb), .55);box-shadow:inset 0 1px 0 #ffffff47, inset 0 -1px 2px #00000040, 0 0 0 1px rgba(var(--accent-rgb), .18), 0 6px 16px rgba(var(--accent-rgb), .28);border-color:#ffbebe6b}.glass-switch.is-on:before{transform:translate(1.1rem);box-shadow:0 3px 10px #00000059,inset 0 1px #fffffff2,0 0 12px #ffd2d240}.glass-switch input[type=checkbox]{appearance:none;opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;margin:0;position:absolute;inset:0}.glass-switch input[type=checkbox]:disabled{cursor:not-allowed}.glass-switch:has(input:disabled){opacity:.45;filter:grayscale(.2)}.glass-switch:has(input:focus-visible){box-shadow:inset 0 1px 0 #ffffff2e, 0 0 0 3px var(--accent-soft), 0 1px 2px #0003}.toggle-row>input[type=checkbox]{appearance:none;border:1px solid var(--glass-stroke-soft);cursor:pointer;background:linear-gradient(#ffffff1f,#ffffff08),#080a0e8c;border-radius:999px;flex-shrink:0;width:2.65rem;height:1.55rem;margin:0;position:relative;box-shadow:inset 0 1px 2px #00000073,inset 0 1px #ffffff24,0 1px 2px #0003}.toggle-row>input[type=checkbox]:before{content:"";width:1.22rem;height:1.22rem;transition:transform .32s var(--glass-ease);background:linear-gradient(155deg,#fffffff2 0%,#ecf0f5d1 48%,#d2dae4c7 100%);border:1px solid #ffffff8c;border-radius:50%;position:absolute;top:.12rem;left:.12rem;box-shadow:0 2px 8px #00000059,inset 0 1px #ffffffe6}.toggle-row>input[type=checkbox]:checked{background:linear-gradient(145deg, #ffaaaa6b, rgba(var(--accent-rgb), .72) 55%, #8c2828c7), rgba(var(--accent-rgb), .55);border-color:#ffbebe6b}.toggle-row>input[type=checkbox]:checked:before{transform:translate(1.1rem)}.toggle-row>input[type=checkbox]:disabled{opacity:.45;cursor:not-allowed}.toggle-row--plain{box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;border-radius:0;padding:0}.toggle-row--plain:hover{box-shadow:none;border:none}.settings-hint{color:var(--text-muted);margin:0;font-size:.8rem;line-height:1.4}.settings-link{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.settings-link:hover{color:#f07070}.event-icon-img{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0;display:block}.modal--settings{width:min(560px,100%)}.settings-nav{flex-direction:column;gap:.85rem;display:flex}.settings-profile{border-bottom:1px solid var(--border);align-items:center;gap:.85rem;padding:.15rem .2rem .95rem;display:flex}.settings-profile__avatar{object-fit:cover;border:1px solid var(--border);background:#00000059;border-radius:50%;flex-shrink:0;width:52px;height:52px}.settings-profile__meta{flex-direction:column;gap:.2rem;min-width:0;display:flex}.settings-profile__name{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:650;line-height:1.25;overflow:hidden}.settings-profile__email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.settings-avatar{flex-direction:column;gap:.85rem;display:flex}.settings-avatar__title{font-size:.92rem;font-weight:650}.settings-avatar__row{align-items:center;gap:.9rem;display:flex}.settings-avatar__preview{object-fit:cover;border:1px solid var(--border);background:#00000059;border-radius:50%;flex-shrink:0;width:72px;height:72px}.settings-avatar__actions{flex-wrap:wrap;gap:.45rem;display:flex}.settings-avatar__defaults-block{flex-direction:column;gap:.55rem;display:flex}.settings-avatar__defaults-label{color:var(--text-muted);font-size:.82rem}.settings-avatar__defaults{flex-wrap:wrap;gap:.65rem;display:flex}.settings-avatar__default{border:1px solid var(--border);min-width:4.5rem;color:inherit;cursor:pointer;background:#00000038;border-radius:12px;flex-direction:column;align-items:center;gap:.35rem;padding:.35rem .4rem .45rem;transition:border-color .12s,background .12s;display:flex}.settings-avatar__default img{object-fit:cover;background:#00000059;border:2px solid #0000;border-radius:50%;width:48px;height:48px;display:block}.settings-avatar__default span{color:var(--text-muted);text-align:center;font-size:.72rem;line-height:1.2}.settings-avatar__default:hover:not(:disabled){background:#a0aab91a}.settings-avatar__default.is-selected{border-color:var(--accent,#7eb0ff);background:#7eb0ff1a}.settings-avatar__default.is-selected img{border-color:var(--accent,#7eb0ff)}.settings-avatar__default:disabled{opacity:.5;cursor:not-allowed}.modal--avatar-crop{width:min(420px,100%)}.avatar-crop{flex-direction:column;align-items:center;gap:1rem;display:flex}.avatar-crop__viewport{touch-action:none;cursor:grab;border:1px solid var(--border);-webkit-user-select:none;user-select:none;background:#00000073;border-radius:50%;position:relative;overflow:hidden}.avatar-crop__viewport:active{cursor:grabbing}.avatar-crop__image{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute}.avatar-crop__mask{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff1f}.avatar-crop__zoom{width:100%;max-width:280px}.avatar-crop__zoom input[type=range]{width:100%}.settings-nav__list{border:1px solid var(--border);background:#00000038;border-radius:14px;flex-direction:column;margin:0;padding:.2rem 0;list-style:none;display:flex;overflow:hidden}.settings-nav__item{border:none;border-bottom:1px solid var(--border);width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0;flex-direction:row;align-items:center;gap:.75rem;padding:.85rem .9rem;transition:background .12s;display:flex}.settings-nav__list>li:last-child .settings-nav__item{border-bottom:none}.settings-nav__item:hover:not(:disabled){background:#a0aab914}.settings-nav__item:disabled{opacity:.45;cursor:not-allowed}.settings-nav__icon{width:1.5rem;height:1.5rem;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.settings-nav__label{flex:1;min-width:0;font-size:.95rem;font-weight:600}.settings-nav__chevron{color:var(--text-muted);opacity:.55;flex-shrink:0;font-size:1.2rem;line-height:1}.settings-form{flex:1;min-height:0;padding:.5rem 1.2rem .85rem;overflow:auto}.settings-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem;display:flex}.settings-footer__meta{flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0;display:flex}.settings-footer__version{color:var(--text-muted);margin:0;font-size:.78rem}.settings-footer__logout{color:#e85d4c;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:600}.settings-footer__logout:hover:not(:disabled){color:#ff7a6b}.settings-footer__logout:disabled{opacity:.45;cursor:not-allowed}.settings-footer .settings-actions{margin:0 0 0 auto}.settings-panel{flex-direction:column;gap:.85rem;display:flex}.settings-section,.telegram-fields{border:1px solid var(--border);background:#00000038;border-radius:14px;flex-direction:column;gap:.75rem;padding:.85rem .95rem;display:flex}.settings-code{color:var(--accent);word-break:break-all;font-size:.72rem}.settings-actions{flex-wrap:wrap;gap:.75rem}.settings-test-row{flex-wrap:wrap;gap:.45rem;display:flex}.toast-position{flex-direction:column;gap:.7rem;display:flex}.toast-position__label{color:var(--text-muted);margin:0;font-size:.82rem;font-weight:600}.toast-position__monitor{flex-direction:column;align-items:center;gap:0;width:min(100%,220px);margin:.15rem auto .25rem;display:flex}.toast-position__bezel{background:linear-gradient(#d8dee8,#aeb6c2);border-radius:14px 14px 10px 10px;width:100%;padding:9px;box-shadow:inset 0 1px #ffffff59,0 10px 24px #00000047}.toast-position__screen{aspect-ratio:16/10;background:radial-gradient(120% 90% at 50% 0%, rgba(var(--accent-rgb), .14), transparent 55%), linear-gradient(165deg, #2e333c, #1a1d22 70%);border-radius:6px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000059}.toast-position__corner{z-index:1;cursor:pointer;width:50%;height:50%;color:inherit;background:0 0;border:0;margin:0;padding:0;position:absolute}.toast-position__corner:disabled{cursor:not-allowed;opacity:.45}.toast-position__corner--top-left{top:0;left:0}.toast-position__corner--top-right{top:0;right:0}.toast-position__corner--bottom-left{bottom:0;left:0}.toast-position__corner--bottom-right{bottom:0;right:0}.toast-position__stack{width:64%;height:22px;display:block;position:absolute}.toast-position__corner--top-left .toast-position__stack{top:4px;left:4px}.toast-position__corner--top-right .toast-position__stack{top:4px;right:4px}.toast-position__corner--bottom-left .toast-position__stack{bottom:4px;left:4px}.toast-position__corner--bottom-right .toast-position__stack{bottom:4px;right:4px}.toast-position__toast{box-sizing:border-box;width:100%;height:22px;transform:translateY(calc(var(--stack-i,0) * -4px));opacity:calc(1 - var(--stack-i,0) * .12);background:linear-gradient(165deg,#3a404a,#242830);border:1px solid #a0aab92e;border-radius:5px;align-items:center;gap:4px;padding:4px 5px;transition:transform .18s,opacity .18s,border-color .18s,background .18s;display:flex;position:absolute;inset:0 auto auto 0;box-shadow:0 2px 6px #00000047}.toast-position__corner--top-left .toast-position__toast,.toast-position__corner--top-right .toast-position__toast{transform:translateY(calc(var(--stack-i,0) * 4px))}.toast-position__corner--top-right .toast-position__toast,.toast-position__corner--bottom-right .toast-position__toast{inset:0 0 auto auto}.toast-position__corner.is-selected{z-index:2}.toast-position__corner.is-selected .toast-position__toast{border-color:rgba(var(--accent-rgb), .45);background:linear-gradient(165deg,#4a3030,#2c2224)}.toast-position__corner:not(:disabled):hover .toast-position__toast{border-color:#a0aab952}.toast-position__avatar{background:radial-gradient(circle at 35% 30%, #e87878, var(--accent) 55%, #7a2e2e);border-radius:50%;flex:none;width:11px;height:11px}.toast-position__lines{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.toast-position__lines i{background:#a0aab959;border-radius:999px;height:2px;display:block}.toast-position__lines i:first-child{width:88%}.toast-position__lines i:nth-child(2){width:70%}.toast-position__lines i:nth-child(3){width:52%}.toast-position__stand{background:linear-gradient(#c0c6ce,#9aa3ad);border-radius:0 0 6px 6px;width:34%;height:7px;margin-top:1px;box-shadow:0 4px 0 6px #6b738059}.telegram-manual-row{align-items:center}.telegram-manual-row .field-input{border:1px solid var(--border);min-width:8rem;color:var(--text);font:inherit;background:#00000047;border-radius:10px;flex:1;padding:.45rem .65rem;font-size:.85rem}.telegram-manual-row .field-input:focus{border-color:var(--accent);outline:none}.modal--day-list{width:min(420px,100%)}.day-events-title{text-transform:capitalize}.day-events-nav{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.25rem;min-width:0;padding:.35rem .85rem .55rem;display:flex}.day-events-datepicker-wrap{flex:1;min-width:0}.day-events-datepicker{width:100%;min-width:0;max-width:none}.day-events-datepicker .app-datepicker__trigger{background:0 0;border-color:#0000;justify-content:center;gap:.35rem;padding:.35rem .45rem}.day-events-datepicker .app-datepicker__trigger:hover:not(:disabled){border-color:rgba(var(--accent-rgb), .35);background:var(--accent-soft)}.day-events-datepicker .app-datepicker__text{text-align:center;font-size:.95rem;font-weight:700}.day-events-static-date{color:var(--text-muted);text-transform:capitalize;margin:0;padding:0 1.2rem .55rem;font-size:.9rem}.day-events-body{padding:.35rem 1.2rem .5rem}.day-events-empty{text-align:center;color:var(--text-muted);margin:1.5rem 0}.day-events-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.day-events-item{border:1px solid var(--border-strong);background:var(--accent-soft);text-align:left;border-radius:12px;align-items:center;gap:.75rem;width:100%;padding:.65rem .75rem;transition:transform .12s,filter .12s;display:flex}.day-events-item:hover{filter:brightness(1.08);transform:translateY(-1px)}.day-events-item__icon{flex-shrink:0;display:inline-flex}.day-events-item__text{flex-direction:column;gap:.15rem;min-width:0;display:flex}.day-events-item__text strong{font-size:.92rem}.day-events-item__text small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.day-events-actions{justify-content:space-between;margin:0;display:flex}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:max(1rem, env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) max(1rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));background:#060403b8;place-items:center;animation:.18s ease-out fade-in;display:grid;position:fixed;inset:0}.app--desktop .modal-backdrop{top:var(--titlebar-height)}.modal-backdrop--nested{z-index:60;background:#0604038c}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{border:1px solid var(--border-strong);width:min(460px,100%);max-width:100%;max-height:min(70vh,100vh - 2rem);box-shadow:var(--shadow);background:linear-gradient(#252830,#1a1d22);border-radius:18px;flex-direction:column;animation:.22s ease-out modal-in;display:flex;overflow:hidden}.modal--day-list,.modal--hub-editor,.modal--wide,.modal--schedules,.modal--feature-settings,.modal--notes-trash,.modal--settings{height:70vh;max-height:70vh}.modal--confirm,.modal--confirm.modal--sm{height:auto;max-height:min(70vh,100vh - 2rem)}@keyframes modal-in{0%{opacity:0}to{opacity:1}}.modal__header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.05rem 1.2rem .85rem;display:flex}.modal__header-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.modal__title-row{align-items:center;gap:.75rem;display:flex}.modal__title-row h2{font-family:var(--font-display);margin:0;font-size:1.25rem;font-weight:600}.settings-version{color:var(--text-muted);letter-spacing:.02em;opacity:.85;font-size:.75rem;font-weight:500}.settings-update-notes{white-space:pre-wrap}.update-progress{flex-direction:column;gap:.4rem;display:flex}.update-progress__track{background:#00000059;border-radius:999px;height:6px;overflow:hidden}.update-progress__fill{border-radius:inherit;background:var(--accent);height:100%;transition:width .2s}.update-toast{right:max(1rem, env(safe-area-inset-right,0px));bottom:max(1rem, env(safe-area-inset-bottom,0px));z-index:40;border:1px solid var(--border-strong);background:#16120ef5;border-radius:14px;width:min(360px,100vw - 2rem);padding:.95rem 1rem;position:fixed;box-shadow:0 12px 36px #00000073}.update-toast h3{margin:0 0 .35rem;font-size:.95rem;font-weight:650}.update-toast p{color:var(--text-muted);margin:0 0 .75rem;font-size:.82rem;line-height:1.4}.update-toast__actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.modal__form{overscroll-behavior:contain;flex-direction:column;flex:1;gap:1rem;min-width:0;min-height:0;padding:.6rem 1.2rem 1.2rem;display:flex;overflow:clip auto}.modal__body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.modal__body.hub-editor-body,.modal__body.settings-form,.day-events-body,.schedules-body{overscroll-behavior:contain;flex:1;min-height:0;overflow:hidden auto}.modal__footer{border-top:1px solid var(--border);background:#0000002e;flex-shrink:0;padding:.85rem 1.2rem 1.1rem}.modal__footer .modal__actions{margin-top:0}.field{border:none;flex-direction:column;gap:.4rem;min-width:0;max-width:100%;margin:0;padding:0;display:flex}.field--nested{margin-top:.15rem}.field>span,.field>legend{color:var(--text-muted);letter-spacing:.03em;font-size:.8rem;font-weight:600}.field>legend{margin:0 0 .55rem;padding:0}.field>span{margin-bottom:.15rem}.field input,.field select,.field textarea{border:1px solid var(--border);width:100%;min-width:0;max-width:100%;color:inherit;font:inherit;background:#00000059;border-radius:12px;outline:none;padding:.7rem .85rem;transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(var(--accent-rgb), .55)}.field-readonly,.field input.field-readonly{opacity:.9;cursor:default}.field textarea{resize:vertical;min-height:64px}.chip-row{flex-wrap:wrap;gap:.45rem;display:flex}.chip{border:1px solid var(--border);color:var(--text-muted);background:#00000040;border-radius:999px;padding:.45rem .85rem;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.chip--icon{align-items:center;gap:.4rem;display:inline-flex}.chip:hover{color:var(--text);border-color:var(--border-strong)}.chip--active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.modal__actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.25rem;display:flex}.modal__actions-right{flex-wrap:wrap;gap:.5rem;margin-left:auto;display:flex}@media (width<=900px){.topbar{flex-wrap:wrap;align-items:stretch;gap:.55rem;padding:.75rem .85rem .5rem;display:flex}.topbar__pets,.section-switch,.topbar__brand{flex:none;width:100%;min-width:0;max-width:none}.section-switch__btn{text-overflow:ellipsis;min-width:0;padding:.45rem .5rem;font-size:.82rem;overflow:hidden}.pet-picker{width:100%;min-width:0;max-width:none}.view-switch{order:2;justify-content:stretch;width:100%;padding:3px;display:flex}.view-switch__btn{white-space:nowrap;flex:1;padding:.4rem .35rem;font-size:.8rem}.topbar__actions{flex-wrap:wrap;flex:none;order:1;justify-content:flex-end;gap:.4rem;width:100%;margin-left:0}.topbar__add-event{border-radius:999px;justify-content:center;align-items:center;width:2.35rem;min-width:2.35rem;height:2.35rem;padding:0;display:inline-flex}.topbar__add-event-label{display:none}.topbar__add-event-icon{display:inline-flex}.toolbar{text-align:center;grid-template-columns:1fr;justify-items:center;gap:.4rem;padding:.25rem .85rem .7rem}.toolbar__label{font-size:1.05rem}.toolbar__hint{text-align:center;font-size:.75rem}.nav-controls{justify-content:center}.calendar-shell{border-radius:14px;margin:0 .65rem .85rem}.month-grid{grid-auto-rows:minmax(64px,1fr)}}@media (width<=600px){.view--month-compact .month-grid{grid-auto-rows:minmax(56px,1fr)}.view--month-compact .month-cell{align-items:center;gap:.2rem;min-height:56px;padding:.3rem .2rem .35rem}.view--month-compact .month-cell__count{display:inline-block}.view--month-compact .month-cell__events{display:none}.modal__actions>.btn--delete{border-radius:999px;flex:none;justify-content:center;width:2.35rem;min-width:2.35rem;height:2.35rem;padding:0}.modal__actions>.btn--delete .btn--delete__icon{display:block}.modal__actions>.btn--delete .btn--delete__label{display:none}.modal__actions-right{flex:auto;justify-content:flex-end;min-width:0;margin-left:auto}.modal__actions-right .btn{flex:0 auto;min-width:0}.topbar{align-items:start;gap:.55rem .4rem;padding:.55rem .7rem .4rem}.topbar__pets{align-items:stretch;gap:.4rem}.topbar__pet-row{flex:none;width:100%}.topbar__pet-tools{gap:.35rem}.topbar__pet-tools .icon-btn--match{width:2.15rem;height:2.15rem}.topbar__add-event{border-radius:999px;justify-content:center;align-items:center;width:2.35rem;min-width:2.35rem;height:2.35rem;padding:0;display:inline-flex}.topbar__add-event-label{display:none}.topbar__add-event-icon{display:inline-flex}.view-switch__btn{padding:.38rem .25rem;font-size:.75rem}.login-screen{padding:max(1rem, env(safe-area-inset-top,0px)) max(1rem, env(safe-area-inset-right,0px)) max(1rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px))}.modal__title-row h2{font-size:1.1rem}}input[type=date],input[type=time],input[type=datetime-local]{box-sizing:border-box;appearance:none;width:100%;min-width:0;max-width:100%;display:block}input[type=date]::-webkit-date-and-time-value{text-align:left;min-width:0}input[type=time]::-webkit-date-and-time-value{text-align:left;min-width:0}input[type=datetime-local]::-webkit-date-and-time-value{text-align:left;min-width:0}input[type=date]::-webkit-datetime-edit{min-width:0;overflow:hidden}input[type=time]::-webkit-datetime-edit{min-width:0;overflow:hidden}input[type=datetime-local]::-webkit-datetime-edit{min-width:0;overflow:hidden}input[type=date]::-webkit-datetime-edit-fields-wrapper{min-width:0}input[type=time]::-webkit-datetime-edit-fields-wrapper{min-width:0}input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{min-width:0}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.85);cursor:pointer}input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.85);cursor:pointer}input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.85);cursor:pointer}.login-screen{min-height:var(--app-height,100dvh);padding:max(1.5rem, env(safe-area-inset-top,0px)) max(1.5rem, env(safe-area-inset-right,0px)) max(1.5rem, env(safe-area-inset-bottom,0px)) max(1.5rem, env(safe-area-inset-left,0px));background:radial-gradient(ellipse 80% 50% at 50% -10%, rgba(var(--accent-rgb), .18), transparent), linear-gradient(165deg, #1e2228 0%, #121417 45%, #1a1d22 100%);place-items:center;display:grid}.login-card{border:1px solid var(--border);background:#1a1d22f0;border-radius:18px;gap:.85rem;width:min(420px,100%);padding:1.4rem 1.35rem 1.25rem;display:grid;box-shadow:0 20px 50px #00000073}.login-brand{align-items:center;gap:.85rem;margin-bottom:.35rem;display:flex}.login-brand h1{margin:0;font-size:1.35rem;font-weight:700}.login-brand p{color:var(--text-muted);margin:.15rem 0 0;font-size:.9rem}.login-field{gap:.35rem;display:grid}.login-field span{color:var(--text-muted);font-size:.82rem}.login-field input{border:1px solid var(--border);color:var(--text);background:#00000059;border-radius:12px;outline:none;padding:.7rem .85rem}.login-field input:focus{border-color:rgba(var(--accent-rgb), .55);box-shadow:0 0 0 3px var(--accent-soft)}.login-hint,.login-error{margin:0;font-size:.82rem;line-height:1.4}.login-hint{color:var(--text-muted)}.login-error{color:#f0a0a0}.login-actions{flex-wrap:wrap;gap:.6rem;margin-top:.25rem;display:flex}.app-tooltip{z-index:80;box-sizing:border-box;width:max-content;max-width:min(280px,100vw - 1.5rem);box-shadow:0 12px 28px #00000073, 0 0 0 1px rgba(var(--accent-rgb), .08);color:var(--text);font-family:var(--font-body);letter-spacing:.01em;white-space:normal;overflow-wrap:anywhere;word-break:break-word;pointer-events:none;background:linear-gradient(165deg,#2e333c,#1a1d22);border:1px solid #a0aab938;border-radius:10px;padding:.45rem .7rem;font-size:.78rem;font-weight:600;line-height:1.35;animation:.16s ease-out app-tooltip-in;position:fixed}.app-tooltip--top{transform-origin:bottom}.app-tooltip--bottom{transform-origin:top}.app-tooltip:after{content:"";left:var(--tooltip-arrow-x,50%);background:#252830;border:1px solid #a0aab938;width:8px;height:8px;position:absolute;transform:translate(-50%)rotate(45deg)}.app-tooltip--top:after{background:#1a1d22;border-top:none;border-left:none;bottom:-5px}.app-tooltip--bottom:after{background:#2e333c;border-bottom:none;border-right:none;top:-5px}@keyframes app-tooltip-in{0%{opacity:0;filter:blur(2px)}to{opacity:1;filter:blur()}}@media (prefers-reduced-motion:reduce){.app-tooltip{animation:none}}.brand.topbar__brand{gap:.65rem}.brand.topbar__brand .brand__title{font-size:1.2rem}.brand.topbar__brand .brand__sub{margin-top:.05rem;font-size:.72rem}.topbar__actions .btn{align-items:center;gap:.4rem;display:inline-flex}.event-pill.is-virtual,.event-chip.is-virtual,.day-events-item.is-virtual,.month-pill.is-virtual{opacity:.92;border-style:dashed}.modal--schedules{width:min(560px,100%)}.modal--schedules.is-form{width:min(720px,100%)}.schedules-body{padding:.35rem 1.2rem .5rem}.schedules-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.schedules-item{border:1px solid var(--border);width:100%;color:inherit;text-align:left;background:#00000038;border-radius:12px;flex-direction:row;align-items:center;gap:.7rem;padding:.7rem .65rem .7rem .85rem;display:flex}.schedules-item.is-active{border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .1)}.schedules-item__main{flex-direction:column;flex:1;align-items:flex-start;gap:.2rem;min-width:0;display:flex}.schedules-item__title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.95rem;overflow:hidden}.schedules-item__side{flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-end;gap:.4rem;display:flex}.schedules-item__actions{justify-content:flex-end;align-items:center;gap:.2rem;display:flex}.schedules-item__action{width:2rem;height:2rem}.schedules-item__action.is-play:hover{color:#7ddea0;background:#7ddea01f;border-color:#7ddea066}.schedules-item__action.is-stop:hover{color:var(--accent)}.schedules-item small{color:var(--text-muted);font-size:.78rem}.schedules-badge{letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.schedules-badge.is-demand{color:#9ec8ff;background:#6ea0dc29}.schedules-run{color:var(--text-faint);font-size:.75rem}.schedules-run.is-on{color:#7ddea0}.feature-year-nav{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:center;align-items:center;gap:.75rem;padding:.35rem 1.2rem .55rem;display:flex}.feature-year-nav__label{text-align:center;font-variant-numeric:tabular-nums;min-width:4.5rem;font-size:1.05rem}.feature-settings{border-top:1px solid var(--border);flex-direction:column;gap:.55rem;padding:.65rem 1.2rem .35rem;display:flex}.feature-settings--modal{border-top:none;padding:.6rem 1.2rem 1.2rem}.feature-settings__title{letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:.82rem;font-weight:700}.feature-settings .field,.feature-settings .toggle-row{margin:0}.modal--feature-settings{width:min(440px,100%)}@media (width<=900px){.topbar__repeat-label{display:none}}.section-switch{border:1px solid var(--border);background:#00000059;border-radius:999px;flex:none;align-items:stretch;width:17.5rem;min-width:17.5rem;max-width:17.5rem;padding:4px;display:flex;position:relative}.section-switch__btn{z-index:1;min-width:0;color:var(--text-muted);white-space:nowrap;text-align:center;box-shadow:none;transition:color .2s var(--glass-ease);background:0 0;border:none;border-radius:999px;flex:1 1 0;padding:.5rem .75rem;font-size:.92rem;font-weight:650;position:relative}.section-switch__btn:hover{color:var(--text)}.section-switch__btn.is-active{color:var(--accent);box-shadow:none;background:0 0}.btn.is-active-soft,.icon-btn.is-active-soft{background:var(--accent-soft);color:var(--accent);border-color:rgba(var(--accent-rgb), .35)}.toolbar--notes{grid-template-columns:1fr auto;gap:.75rem 1rem}.toolbar__notes-title{justify-self:start;min-width:0}.toolbar--notes .toolbar__label{justify-self:start}.toolbar__count{color:var(--text-muted);font-size:.92em;font-weight:550}.toolbar--notes .toolbar__hint{text-align:left;justify-self:start;margin-top:.2rem}.layout-switch{border:1px solid var(--border);background:#00000059;border-radius:999px;flex-shrink:0;justify-self:end;padding:4px;display:inline-flex;position:relative}.layout-switch__btn{z-index:1;color:var(--text-muted);white-space:nowrap;transition:color .2s var(--glass-ease);background:0 0;border:none;border-radius:999px;padding:.45rem .9rem;font-size:.88rem;font-weight:650;position:relative}.layout-switch__btn:hover{color:var(--text)}.layout-switch__btn.is-active{color:var(--accent);box-shadow:none;background:0 0}.segmented__thumb{background:var(--accent-soft);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .25);pointer-events:none;z-index:0;opacity:0;transition:transform .32s var(--glass-ease), width .32s var(--glass-ease), opacity .18s ease;will-change:transform, width;border-radius:999px;position:absolute;top:4px;bottom:4px;left:0}.segmented__thumb.is-ready{opacity:1}@media (prefers-reduced-motion:reduce){.segmented__thumb{transition:none}}.calendar-shell--notes{padding:1.25rem;overflow:auto}.notes-view{flex:1;width:100%;min-height:0}.notes-view--empty{justify-content:center;align-items:center;display:flex}.notes-section+.notes-section{margin-top:1.25rem}.notes-section__title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .75rem;font-size:.78rem;font-weight:650}.notes-grid--grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.85rem;display:grid}.notes-grid--list{flex-direction:column;gap:.65rem;display:flex}.note-card{text-align:left;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;background:#242830eb;min-height:6.5rem;padding:.9rem .95rem 1rem;transition:border-color .15s,transform .15s,background .15s;position:relative}.note-card.has-color{background:color-mix(in srgb, var(--note-card-color) 42%, #1a1d22 58%);border-color:color-mix(in srgb, var(--note-card-color) 50%, var(--border))}.note-card.has-color:hover{border-color:color-mix(in srgb, var(--note-card-color) 65%, rgba(var(--accent-rgb), .45))}.note-card:hover{border-color:rgba(var(--accent-rgb), .35)}.note-card--reorder{cursor:grab}.note-card.is-dragging{opacity:.4}.note-card-drop-slot{box-sizing:border-box;border-radius:var(--radius);pointer-events:none;background:#12161eeb;border:1.5px solid #5b9dff;min-height:4.5rem}.note-card-drop-slot--grid{min-height:6.5rem}.note-card__top{align-items:center;gap:.55rem;display:flex}.note-card__title{word-break:break-word;flex:1;min-width:0;margin:0;font-size:1rem;font-weight:700;line-height:1.25}.note-card__badges{flex-shrink:0;align-items:center;gap:.2rem;display:flex}.note-card__pin{color:var(--accent);opacity:.95;display:inline-flex}.note-card__preview{color:var(--text-muted);white-space:pre-line;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.55rem 0 0;font-size:.86rem;line-height:1.35;display:-webkit-box;overflow:hidden}.note-card__order{box-sizing:border-box;border:1px solid var(--border);width:2.35rem;height:2.35rem;color:var(--text);text-align:center;font:inherit;appearance:textfield;background:#00000047;border-radius:8px;flex-shrink:0;margin:0;padding:0;font-size:.92rem;font-weight:700;line-height:2.35rem}.note-card__order::-webkit-outer-spin-button{appearance:none;margin:0}.note-card__order::-webkit-inner-spin-button{appearance:none;margin:0}.note-card__menu{position:relative}.note-card__more{width:1.8rem;height:1.8rem}.note-card__dropdown{z-index:8;border:1px solid var(--border);min-width:11rem;box-shadow:var(--shadow);background:#1d2128;border-radius:10px;flex-direction:column;gap:.15rem;padding:.3rem;display:flex;position:absolute;top:calc(100% + 4px);right:0}.note-card__dropdown button{color:var(--text);text-align:left;background:0 0;border:none;border-radius:8px;padding:.45rem .55rem;font-size:.88rem}.note-card__dropdown button:hover{background:#ffffff0d}.note-card__dropdown button.is-danger{color:#e07070}.note-card-color-field__label{color:var(--text-muted);margin-bottom:.4rem;font-size:.85rem;display:block}.note-card-color-trigger{border:1px solid var(--border);width:100%;max-width:16rem;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:#00000038;border-radius:10px;align-items:center;gap:.55rem;padding:.5rem .7rem;font-size:.9rem;display:inline-flex}.note-card-color-trigger:hover:not(:disabled),.note-card-color-trigger.is-open{border-color:rgba(var(--accent-rgb), .45)}.note-card-color-trigger:disabled{opacity:.55;cursor:default}.note-card-color-trigger__swatch{background:0 0;border:1px solid #fff3;border-radius:999px;flex-shrink:0;width:1.35rem;height:1.35rem}.note-card-color-trigger__swatch.is-clear{background:linear-gradient(135deg,#0000 46%,#f07178 46% 54%,#0000 54%),#ffffff14}.notes-empty{color:var(--text-muted);text-align:center;margin:0;font-size:.95rem}.note-meta-empty{color:var(--text-muted);margin:.35rem 0;font-size:.9rem}.modal--wide{width:min(720px,100%)}.modal--note{height:90vh;max-height:90vh}.reminder-modal__form,.schedules-modal__form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1rem 1.35rem;display:grid}.reminder-modal__col,.schedules-modal__col{flex-direction:column;gap:1rem;min-width:0;display:flex}@media (width<=640px){.reminder-modal__form,.schedules-modal__form{grid-template-columns:1fr}}.note-modal__form{gap:1rem}.note-field__label-row{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.45rem;display:flex}.note-field__label-row>span{color:var(--text-muted);font-size:.82rem;font-weight:600}.note-field__edit-btn{width:2rem;height:2rem}.note-field__edit-btn.is-active{background:var(--accent-soft);color:var(--accent);border-color:rgba(var(--accent-rgb), .35)}.note-text-editor{border:1px solid var(--border);background:#00000038;border-radius:12px;overflow:hidden}.note-text-editor.is-disabled{opacity:.7;pointer-events:none}.note-text-editor.is-readonly .note-text-editor__surface{cursor:default}.note-text-editor.is-toolbar-bottom{flex-direction:column;display:flex}.note-text-editor.is-toolbar-bottom .note-text-editor__toolbar,.note-text-editor.is-toolbar-bottom .note-link-form{border-bottom:none;border-top:1px solid var(--border);flex-shrink:0}.note-text-editor.is-toolbar-bottom .note-text-editor__surface{flex:1;min-height:0}.note-text-focus{z-index:70;background:var(--bg-deep);padding-bottom:env(safe-area-inset-bottom,0);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.app--desktop .note-text-focus{top:var(--titlebar-height)}.note-text-focus__header{padding:max(.7rem, env(safe-area-inset-top,0)) 1rem .7rem;border-bottom:1px solid var(--border);background:linear-gradient(#252830,#1a1d22);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.note-text-focus__header h2{font-family:var(--font-display);margin:0;font-size:1.1rem;font-weight:700}.note-text-focus__body{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.note-text-focus .note-text-editor{background:0 0;border:none;border-radius:0;flex:1;min-height:0;overflow:hidden}.note-text-focus .note-text-editor__toolbar{padding-bottom:max(.45rem, env(safe-area-inset-bottom,0));background:#1c2028f5;flex-shrink:0}.note-text-focus .note-link-form{background:#1c2028f5;flex-shrink:0}.note-text-focus .note-text-editor__surface{flex:1;min-height:0;max-height:none}.note-text-focus__error{color:var(--danger);border-top:1px solid var(--border);background:#00000047;flex-shrink:0;margin:0;padding:.55rem 1rem;font-size:.88rem}.note-text-editor__toolbar{border-bottom:1px solid var(--border);background:#242830bf;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.45rem .55rem;display:flex}.note-link-form{border-bottom:1px solid var(--border);background:#00000038;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.55rem .65rem;display:flex}.note-color-popup-anchor{display:inline-flex;position:relative}.note-color-popup{z-index:120;border:1px solid var(--border);background:#1e2229;border-radius:12px;width:max-content;max-width:min(280px,100vw - 1.5rem);position:fixed;overflow:hidden;box-shadow:0 12px 32px #00000073,0 0 0 1px #ffffff0a}.note-color-picker{background:0 0;flex-direction:column;gap:.65rem;max-width:100%;padding:.7rem .8rem .85rem;display:flex}.note-color-picker__header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.note-color-picker__title{color:var(--text-muted);font-size:.8rem;font-weight:600}.note-color-picker__sv{aspect-ratio:1.15;cursor:crosshair;touch-action:none;border:1px solid #ffffff1f;border-radius:8px;width:min(100%,240px);position:relative;overflow:hidden}.note-color-picker__sv-white,.note-color-picker__sv-black{pointer-events:none;position:absolute;inset:0}.note-color-picker__sv-white{background:linear-gradient(90deg,#fff,#0000)}.note-color-picker__sv-black{background:linear-gradient(#0000,#000)}.note-color-picker__sv-thumb{pointer-events:none;border:2px solid #fff;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;position:absolute;box-shadow:0 0 0 1px #00000073}.note-color-picker__controls{align-items:center;gap:.55rem;width:min(100%,240px);display:flex}.note-color-picker__eyedropper{width:2rem;height:2rem;color:var(--text);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff29;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.note-color-picker__eyedropper:hover{background:#ffffff1a}.note-color-picker__preview{border:2px solid #ffffff8c;border-radius:50%;flex-shrink:0;width:1.85rem;height:1.85rem;box-shadow:inset 0 0 0 1px #00000040}.note-color-picker__hue{touch-action:none;cursor:pointer;background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);border:1px solid #ffffff1f;border-radius:999px;flex:1;height:12px;position:relative}.note-color-picker__hue-thumb{pointer-events:none;border:2px solid #fff;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;position:absolute;top:50%;box-shadow:0 0 0 1px #0006}.note-color-picker__rgb{gap:.45rem;width:min(100%,240px);display:flex}.note-color-picker__rgb-field{color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:.2rem;font-size:.72rem;display:flex}.note-color-picker__rgb-field input{box-sizing:border-box;border:1px solid var(--border);width:100%;color:var(--text);font:inherit;text-align:center;-moz-appearance:textfield;background:#00000047;border-radius:8px;padding:.35rem .3rem;font-size:.85rem}.note-color-picker__rgb-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.note-color-picker__rgb-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.note-color-picker__rgb-field input:focus{border-color:rgba(var(--accent-rgb), .45);outline:none}.note-color-picker__presets{grid-template-columns:repeat(10,1.35rem);gap:.3rem;width:max-content;max-width:100%;display:grid}@media (width<=420px){.note-color-picker__presets{grid-template-columns:repeat(8,minmax(0,1.3rem));width:100%}.note-color-picker__presets .note-color-swatch{aspect-ratio:1;width:100%;height:auto}}.note-color-swatch{cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:4px;flex-shrink:0;width:1.35rem;height:1.35rem;padding:0}.note-color-swatch:hover,.note-color-swatch:focus-visible{border-color:rgba(var(--accent-rgb), .75);box-shadow:0 0 0 2px rgba(var(--accent-rgb), .28);z-index:1;outline:none}.note-color-swatch.is-selected{box-shadow:0 0 0 2px rgba(var(--accent-rgb), .55)}.note-color-swatch.is-light{border-color:#ffffff59}.note-color-swatch.is-clear{background:linear-gradient(135deg,#0000 46%,#f07178 46% 54%,#0000 54%),#ffffff14}.note-link-form input{border:1px solid var(--border);min-width:10rem;color:var(--text);font:inherit;background:#00000047;border-radius:10px;flex:1;padding:.45rem .65rem;font-size:.88rem}.note-link-form input:focus{border-color:rgba(var(--accent-rgb), .45);outline:none}.note-editor__tool{min-width:2rem;height:2rem;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:.3rem;padding:0 .55rem;font-weight:700;display:inline-flex}.note-editor__tool:hover{border-color:var(--border);background:#ffffff0f}.note-editor__tool.is-active{background:rgba(var(--accent-rgb), .16);border-color:rgba(var(--accent-rgb), .4)}.note-editor__tool:has(.note-editor__tool-color.is-active){background:rgba(var(--accent-rgb), .16);border-color:rgba(var(--accent-rgb), .4)}.note-editor__tool-u{text-decoration:underline}.note-editor__tool-s{text-decoration:line-through}.note-text-editor__sep{background:var(--border);width:1px;height:1.2rem;margin:0 .15rem}.note-text-editor__surface{min-height:220px;max-height:min(48vh,420px);color:var(--text);font:inherit;caret-color:var(--accent);outline:none;padding:.9rem 1rem 1.1rem;font-size:.95rem;line-height:1.55;overflow:auto}.note-text-editor.is-editing .note-text-editor__surface:focus{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .35)}.note-text-editor__surface:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.note-text-editor__surface:has(>p:only-child:empty):before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.note-text-editor__surface:has(>p:only-child>br:only-child):before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.note-text-editor__surface p{margin:0 0 .65rem}.note-text-editor__surface p:last-child{margin-bottom:0}.note-text-editor__surface ul,.note-text-editor__surface ol{margin:0 0 .75rem;padding-left:1.35rem}.note-text-editor__surface li{margin:.2rem 0}.note-text-editor__surface a{color:#8eb7ff;text-underline-offset:2px;text-decoration:underline}.note-text-editor.is-editing .note-text-editor__surface a{cursor:pointer}.note-editor-context-menu{z-index:130;border:1px solid var(--border);background:#1e2229;border-radius:10px;flex-direction:column;gap:.1rem;min-width:12.5rem;padding:.3rem;display:flex;position:fixed;box-shadow:0 12px 32px #00000073,0 0 0 1px #ffffff0a}.note-editor-context-menu__item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;margin:0;padding:.45rem .7rem;font-size:.88rem;display:block}.note-editor-context-menu__item:hover:not(:disabled),.note-editor-context-menu__item:focus-visible:not(:disabled){background:#ffffff14;outline:none}.note-editor-context-menu__item:disabled{opacity:.45;cursor:default}.note-editor-context-menu__sep{background:var(--border);height:1px;margin:.25rem .35rem}.note-task-list{list-style:none;padding-left:.15rem!important}.note-task-item{align-items:flex-start;gap:.55rem;margin:.2rem 0;list-style:none;display:flex}.note-task-item>input[type=checkbox],.note-task input[type=checkbox]{appearance:none;border:1px solid var(--glass-stroke-soft);-webkit-backdrop-filter:blur(8px)saturate(1.2);cursor:pointer;width:1.1rem;height:1.1rem;transition:background .22s var(--glass-ease), border-color .22s var(--glass-ease), box-shadow .22s var(--glass-ease);background:linear-gradient(160deg,#ffffff24,#ffffff08),#080a0e80;border-radius:.35rem;flex-shrink:0;margin-top:.15rem;position:relative;box-shadow:inset 0 1px #ffffff2e,inset 0 -1px 2px #00000059,0 1px 3px #0003}.note-task-item>input[type=checkbox]:after,.note-task input[type=checkbox]:after{content:"";opacity:0;width:.34rem;height:.58rem;transition:opacity .18s var(--glass-ease), transform .22s var(--glass-ease);border:1.7px solid #0000;border-width:0 1.7px 1.7px 0;margin:auto;position:absolute;inset:0;transform:translateY(-.06rem)rotate(45deg)scale(.6)}.note-task-item>input[type=checkbox]:checked,.note-task input[type=checkbox]:checked{background:linear-gradient(145deg, #ffaaaa73, rgba(var(--accent-rgb), .78)), rgba(var(--accent-rgb), .65);box-shadow:inset 0 1px 0 #ffffff4d, 0 0 0 1px rgba(var(--accent-rgb), .15), 0 4px 12px rgba(var(--accent-rgb), .28);border-color:#ffbebe73}.note-task-item>input[type=checkbox]:checked:after,.note-task input[type=checkbox]:checked:after{opacity:1;border-color:#fff;transform:translateY(-.06rem)rotate(45deg)scale(1)}.note-task-item>input[type=checkbox]:focus-visible,.note-task input[type=checkbox]:focus-visible{box-shadow:inset 0 1px 0 #ffffff2e, 0 0 0 3px var(--accent-soft);outline:none}.note-task__text{outline:none;flex:1;min-width:0}.note-task-item:has(>input[type=checkbox]:checked) .note-task__text{color:var(--text-muted);text-decoration:line-through}.note-text-editor.is-editing .note-task-item>input[type=checkbox]{pointer-events:none}.note-text-editor.is-readonly .note-task-item,.note-text-editor.is-readonly .note-task-item>input[type=checkbox]{cursor:pointer}.note-task{align-items:flex-start;gap:.55rem;display:flex}.note-text-editor.is-editing .note-task input[type=checkbox]{pointer-events:none}.note-task input[type=checkbox]:checked+span{color:var(--text-muted);text-decoration:line-through}@media (prefers-reduced-motion:reduce){.toggle-row,.glass-switch,.glass-switch:before,.toggle-row>input[type=checkbox],.toggle-row>input[type=checkbox]:before,.note-task-item>input[type=checkbox],.note-task input[type=checkbox],.note-task-item>input[type=checkbox]:after,.note-task input[type=checkbox]:after{transition:none}}.note-editor__inline-img{border:1px solid var(--border);object-fit:contain;cursor:zoom-in;background:#00000040;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:280px;margin:.35rem 0;display:block}.note-editor__toolbar{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.45rem;display:flex}.note-editor__upload{cursor:pointer;align-items:center;gap:.35rem;display:inline-flex}.note-attach-list,.note-link-list,.notes-trash-list,.note-link-picker{flex-direction:column;gap:.45rem;margin:.4rem 0 0;padding:0;list-style:none;display:flex}.note-link-list.reminder-note-links{margin-top:.55rem}.note-attach-item,.note-link-item,.notes-trash-item{border:1px solid var(--border);background:#0000002e;border-radius:10px;align-items:center;gap:.65rem;padding:.55rem .65rem;display:flex}.note-attach-item a,.note-link-item strong,.notes-trash-item strong{color:var(--text);word-break:break-word;text-decoration:none}.note-link-item__open{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;margin:0;padding:0;display:block}.note-link-item__open:hover strong,.note-link-item__open:focus-visible strong{color:var(--accent)}.note-link-item__open:focus-visible{outline:none}.note-attach-item,.note-link-item,.notes-trash-item{justify-content:space-between}.note-attach-item>a,.note-attach-name{flex:1;min-width:0}.note-attach-name{color:var(--text);text-align:left;font:inherit;cursor:pointer;word-break:break-word;background:0 0;border:0;margin:0;padding:0}.note-attach-name:hover:not(:disabled){text-decoration:underline}.note-attach-name:disabled{opacity:.7;cursor:default}.note-attach-name--static{cursor:default}.note-attach-name--static:hover{text-decoration:none}.note-attach-thumb-btn{cursor:zoom-in;background:0 0;border:0;border-radius:6px;flex-shrink:0;margin:0;padding:0;line-height:0}.note-attach-thumb-btn:disabled{opacity:.7;cursor:default}.note-attach-thumb{object-fit:cover;border-radius:6px;flex-shrink:0;width:2rem;height:2rem;display:block}.image-lightbox-backdrop{background:#040508c7;justify-content:center;align-items:center;padding:1.25rem;display:flex}:-webkit-any(.image-lightbox-backdrop.is-fullscreen,.image-lightbox-backdrop:fullscreen,.image-lightbox-backdrop:-webkit-full-screen){background:#0a0c10;width:100%;height:100%;padding:0}:is(.image-lightbox-backdrop.is-fullscreen,.image-lightbox-backdrop:fullscreen,.image-lightbox-backdrop:fullscreen){background:#0a0c10;width:100%;height:100%;padding:0}.image-lightbox.is-fullscreen{width:100%;height:100%;max-height:none;box-shadow:none;background:#0a0c10;border:0;border-radius:0}.image-lightbox-backdrop:fullscreen .image-lightbox{width:100%;height:100%;max-height:none;box-shadow:none;background:#0a0c10;border:0;border-radius:0}.image-lightbox-backdrop:-webkit-full-screen .image-lightbox{width:100%;height:100%;max-height:none;box-shadow:none;background:#0a0c10;border:0;border-radius:0}.image-lightbox{border:1px solid var(--border);background:#16191ffa;border-radius:14px;flex-direction:column;width:min(960px,100%);max-height:min(90vh,900px);display:flex;overflow:hidden;box-shadow:0 18px 48px #00000073}.image-lightbox__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .85rem;display:flex}.image-lightbox__title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:.95rem;font-weight:600;overflow:hidden}.image-lightbox__actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.image-lightbox__body{background:radial-gradient(circle at top,#ffffff0a,#0000 55%),#00000047;flex:1;justify-content:center;align-items:center;min-height:0;padding:.85rem;display:flex;overflow:auto}.image-lightbox.is-fullscreen .image-lightbox__body{padding:1rem}.image-lightbox__img{object-fit:contain;border-radius:8px;width:auto;max-width:100%;height:auto;max-height:min(78vh,760px);display:block}:-webkit-any(.image-lightbox.is-fullscreen .image-lightbox__img,.image-lightbox-backdrop:fullscreen .image-lightbox__img,.image-lightbox-backdrop:-webkit-full-screen .image-lightbox__img){border-radius:0;max-height:calc(100% - .5rem)}:is(.image-lightbox.is-fullscreen .image-lightbox__img,.image-lightbox-backdrop:fullscreen .image-lightbox__img,.image-lightbox-backdrop:fullscreen .image-lightbox__img){border-radius:0;max-height:calc(100% - .5rem)}.image-lightbox__error{color:#ff8f8f;margin:0;padding:.55rem .85rem .75rem;font-size:.85rem}.note-link-item small,.notes-trash-item small,.note-link-picker small{color:var(--text-muted);margin-top:.15rem;font-size:.78rem;display:block}.note-link-picker button{border:1px solid var(--border);width:100%;color:var(--text);text-align:left;background:#0000002e;border-radius:10px;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.55rem .7rem;display:flex}.note-link-picker button:hover{border-color:rgba(var(--accent-rgb), .35)}@media (width<=900px){.section-switch{width:100%;min-width:0;max-width:none}}.calendar-shell--hub{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;border-radius:0;margin:0;padding:0;animation:none;overflow:auto}.notisky-hub{flex-direction:column;gap:.85rem;width:100%;max-width:none;min-height:100%;margin:0;padding:.75rem 1.25rem 1.25rem;display:flex;position:relative}.notisky-hub__top{z-index:30;pointer-events:none;justify-content:flex-end;margin-bottom:-2.7rem;display:flex;position:sticky;top:1.25rem}.notisky-hub__burger{pointer-events:auto}.app-burger{z-index:40;position:relative}.app-burger__btn{border:1px solid var(--border-strong);width:2.35rem;height:2.35rem;color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#242830eb;border-radius:12px;place-items:center;transition:background .18s,border-color .18s,color .18s;display:inline-grid;box-shadow:0 8px 20px #00000047}.app-burger__btn:hover,.app-burger__btn.is-open{border-color:rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .16);color:#ffd0d0}.app-burger__menu{border:1px solid var(--border-strong);background:#1c2028fa;border-radius:14px;flex-direction:column;gap:.15rem;width:250px;padding:.4rem;display:flex;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 18px 50px #00000080}.app-burger__item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:.65rem;padding:.65rem .75rem;font-size:.92rem;font-weight:500;transition:background .18s,color .18s;display:flex}.app-burger__item svg{color:var(--text-muted);flex-shrink:0;transition:color .18s}.app-burger__item:hover{background:#ffffff0d}.app-burger__item.is-active{background:var(--accent-soft);color:#fff}.app-burger__item.is-active svg{color:#ffb4b4}.app-burger__item--muted{color:var(--text-muted)}.app-burger__sep{background:var(--border);height:1px;margin:.3rem .45rem}.hub-hero{border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(135deg, rgba(var(--accent-rgb), .14), transparent 55%), #242830f2;flex-direction:column;gap:.75rem;padding:1rem 1.1rem;display:flex}.hub-hero__identity{align-items:center;gap:.75rem;min-width:0;display:flex}.hub-hero__avatar{object-fit:cover;background:#2a3038;border:2px solid #ffffff1f;border-radius:50%;flex-shrink:0;width:48px;height:48px}.hub-hero__text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.hub-hero__name{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:1.15rem;font-weight:700;line-height:1.2;overflow:hidden}.hub-hero__email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:0;font-size:.85rem;overflow:hidden}.hub-hero__chips{flex-wrap:wrap;gap:.45rem;display:flex}.hub-chip{border:1px solid var(--border);color:var(--text);background:#00000038;border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .65rem;font-size:.78rem;font-weight:500;display:inline-flex}.hub-chip strong{color:#fff;font-weight:700}.hub-chip__dot{background:var(--accent);width:.45rem;height:.45rem;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%}.hub-chip__dot--warn{background:#d4a24c;box-shadow:0 0 0 3px #d4a24c2e}.hub-chip__dot--ok{background:#6bbf8a;box-shadow:0 0 0 3px #6bbf8a2e}.hub-grid{grid-template-columns:1fr 1fr;align-content:start;gap:.85rem;display:grid}.hub-card{border:1px solid var(--border);border-radius:var(--radius);background:#242830eb;min-width:0;padding:.75rem .9rem .55rem}.hub-card__head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;min-height:1.4rem;margin-bottom:.45rem;padding-bottom:.55rem;display:flex}.hub-card__title-btn{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:.15rem;padding:0;font-size:.95rem;font-weight:700;transition:color .18s;display:inline-flex}.hub-card__title-static{color:var(--text);margin:0;font-size:.95rem;font-weight:700;line-height:1}.hub-card__title-chevron{color:var(--text-muted);font-size:1.05rem;line-height:1;transition:color .18s;transform:translateY(.08rem)}.hub-card__title-btn:hover,.hub-card__title-btn:hover .hub-card__title-chevron{color:var(--accent)}.hub-card__meta{color:var(--text-muted);white-space:nowrap;font-size:.8rem;font-weight:500}.hub-card__empty{color:var(--text-faint);padding:.35rem 0 .55rem;font-size:.85rem}.hub-card__earlier{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text-muted);font:inherit;text-align:center;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.2rem;margin:0 0 .15rem;padding:.2rem .15rem .45rem;font-size:.8rem;font-weight:500;display:inline-flex}.hub-card__earlier-chevron{color:var(--text-faint);flex-shrink:0;font-size:.95rem;line-height:1;transition:color .12s,transform .12s}.hub-card__earlier:hover{color:var(--accent)}.hub-card__earlier:hover .hub-card__earlier-chevron{color:var(--accent);transform:translate(1px)}.hub-card__later{border:none;border-top:1px solid var(--border);width:100%;color:var(--text-muted);font:inherit;text-align:center;cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.2rem;margin:.15rem 0 0;padding:.45rem .15rem .2rem;font-size:.8rem;font-weight:500;display:inline-flex}.hub-card__later-chevron{color:var(--text-faint);flex-shrink:0;font-size:.95rem;line-height:1;transition:color .12s,transform .12s}.hub-card__later:hover{color:var(--accent)}.hub-card__later:hover .hub-card__later-chevron{color:var(--accent);transform:translate(1px)}.hub-empty-hint{text-align:center;padding:1.5rem 1rem}.hub-card__list{margin:0;padding:0;list-style:none}.hub-row{border-top:1px solid var(--border);width:100%;color:inherit;background:0 0;border-radius:0;align-items:flex-start;gap:.4rem;padding:.35rem .35rem .35rem .15rem;transition:background .18s;display:flex}.hub-card__list li:first-child .hub-row{border-top:none}.hub-row:hover{background:#ffffff0d}.hub-row__hit{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;align-items:flex-start;gap:.55rem;margin:0;padding:.15rem .35rem;display:flex}.hub-row__marks{flex-shrink:0;align-items:flex-start;gap:.35rem;margin-left:auto;display:inline-flex}.hub-row__early{border:1.5px solid rgba(var(--accent-rgb), .55);background:rgba(var(--accent-rgb), .16);width:1rem;height:1rem;color:var(--accent);border-radius:999px;flex:none;place-items:center;margin-top:.35rem;display:inline-grid}.hub-row__toggle{border:1px solid var(--border);width:1.55rem;height:1.55rem;color:var(--text-muted);cursor:pointer;background:#ffffff0a;border-radius:8px;flex:none;place-items:center;margin-top:.05rem;padding:0;transition:color .15s,border-color .15s,background .15s,transform .12s;display:inline-grid}.hub-row__toggle.is-play:hover{color:#7ddea0;background:#7ddea01f;border-color:#7ddea066}.hub-row__toggle.is-stop:hover{color:var(--accent);border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .12)}.hub-row__toggle:active{transform:translateY(1px)}.hub-row__ack{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:none;place-items:center;width:1.55rem;height:1.55rem;margin-top:.05rem;padding:0;transition:filter .15s,transform .12s;display:inline-grid;box-shadow:inset 0 1px #ffffff1f}.hub-row__ack:hover{filter:brightness(1.1)}.hub-row__ack:active{filter:brightness(.95);transform:translateY(1px)}.hub-row--note-color{background:color-mix(in srgb, var(--hub-note-color) 22%, transparent)}.hub-row--note-color:hover{background:color-mix(in srgb, var(--hub-note-color) 32%, #ffffff0a)}.hub-row__swatch{background:var(--hub-note-color);border-radius:4px;flex-shrink:0;width:.7rem;height:.7rem;margin-top:.3rem;box-shadow:0 0 0 1px #ffffff1f}.hub-row:hover .hub-row__title{color:#fff}.hub-row:hover .hub-row__ico{color:var(--text)}.hub-row:hover .hub-row__ico--accent,.hub-row:hover svg.hub-row__ico--accent{color:var(--accent)}.hub-row__ico{width:1.1rem;height:1.1rem;color:var(--text-muted);flex-shrink:0;margin-top:.1rem;transition:color .18s;display:inline-flex}.hub-row__ico--accent,.hub-row__ico .hub-row__ico--accent,.hub-row__ico svg.hub-row__ico--accent,svg.hub-row__ico--accent{color:var(--accent)}.hub-row__main{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.hub-row__title{color:var(--text);font-size:.88rem;font-weight:500;line-height:1.35;transition:color .18s}.hub-row__time{color:var(--accent);font-variant-numeric:tabular-nums;margin-right:.35rem;font-weight:700}.hub-row__sub{color:var(--text-muted);font-size:.78rem;line-height:1.3}.hub-row__badge{color:#ffd0d0;background:var(--accent-soft);border:1px solid rgba(var(--accent-rgb), .35);vertical-align:middle;border-radius:999px;align-items:center;margin-left:.4rem;padding:.05rem .45rem;font-size:.7rem;font-weight:600;display:inline-flex}.hub-row__mark{color:#1a1d22;background:0 0;border:1.5px dashed #a0aab98c;border-radius:999px;flex:none;place-items:center;width:1rem;height:1rem;margin-top:.35rem;font-size:.68rem;line-height:1;display:inline-grid}.hub-row__mark.is-empty{border-style:solid}.hub-row__mark.is-past{background:var(--accent);border-style:solid;border-color:var(--accent);color:#fff}.hub-fab{bottom:max(1.1rem, env(safe-area-inset-bottom,0px));right:max(0px, env(safe-area-inset-right,0px));background:linear-gradient(180deg, var(--accent-bright), var(--accent));color:#fff;width:3.25rem;height:3.25rem;box-shadow:0 12px 28px rgba(var(--accent-rgb), .42);z-index:20;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;align-self:flex-end;place-items:center;margin-top:auto;margin-left:auto;display:grid;position:sticky}.hub-fab:hover{filter:brightness(1.05)}.modal--hub-editor{width:min(420px,100%)}.hub-editor-body{flex:1;min-height:0;padding:.35rem .85rem .75rem}.hub-editor-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.hub-editor-row{border:1px solid var(--border);cursor:grab;background:#0000002e;border-radius:10px;align-items:center;gap:.5rem;padding:.55rem .65rem;display:flex}.hub-editor-row.is-dragging{opacity:.7;border-color:rgba(var(--accent-rgb), .4)}.hub-editor-row__check{cursor:pointer;flex:1;align-items:center;gap:.55rem;min-width:0;display:flex}.hub-editor-row__check input{width:1.05rem;height:1.05rem;accent-color:var(--accent);flex-shrink:0}.hub-editor-row__check span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hub-editor-row__grip{color:var(--text-faint);flex-shrink:0;padding:.15rem;display:inline-flex}@media (width<=700px){.hub-grid{grid-template-columns:1fr}}
