:root{--bg: oklch(.97 .01 90);--bg-2: oklch(.94 .013 90);--paper: oklch(.99 .005 90);--ink: oklch(.22 .015 150);--ink-2: oklch(.42 .012 150);--ink-3: oklch(.54 .012 150);--line: oklch(.88 .012 95);--line-2: oklch(.92 .01 95);--forest: oklch(.32 .05 155);--forest-2: oklch(.42 .06 155);--forest-soft: oklch(.92 .025 155);--forest-ink: oklch(.22 .05 155);--leather: oklch(.55 .085 55);--leather-soft: oklch(.93 .03 55);--leather-ink: oklch(.35 .07 55);--rust: oklch(.55 .13 35);--rust-soft: oklch(.93 .04 35);--color-success: var(--forest);--color-success-soft: var(--forest-soft);--color-danger: var(--rust);--color-danger-soft: var(--rust-soft);--shadow-sm: 0 1px 0 rgba(40, 32, 18, .04), 0 1px 2px rgba(40, 32, 18, .04);--shadow-md: 0 1px 0 rgba(40, 32, 18, .04), 0 6px 18px rgba(40, 32, 18, .07);--shadow-lg: 0 12px 40px rgba(40, 32, 18, .14);--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--focus-ring: 0 0 0 3px oklch(.32 .05 155 / .12);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--bp-mobile-max: 767px;--content-max-width: 1120px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);font-family:var(--font-sans);color-scheme:light;color:var(--ink);background:var(--bg)}:root[data-theme=dark]{--bg: oklch(.19 .008 150);--bg-2: oklch(.23 .008 150);--paper: oklch(.25 .01 150);--ink: oklch(.96 .008 90);--ink-2: oklch(.78 .008 90);--ink-3: oklch(.6 .008 90);--line: oklch(.32 .01 150);--line-2: oklch(.28 .01 150);--forest: oklch(.7 .08 155);--forest-2: oklch(.78 .07 155);--forest-soft: oklch(.3 .045 155);--forest-ink: oklch(.88 .07 155);--leather: oklch(.74 .085 55);--leather-soft: oklch(.3 .045 55);--leather-ink: oklch(.88 .07 55);--rust: oklch(.74 .13 35);--rust-soft: oklch(.3 .06 35);--shadow-sm: 0 1px 0 rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .25);--shadow-md: 0 1px 0 rgba(0, 0, 0, .3), 0 6px 18px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .55);--focus-ring: 0 0 0 3px oklch(.7 .08 155 / .32);color-scheme:dark}html.theme-ready,html.theme-ready *,html.theme-ready *:before,html.theme-ready *:after{transition-property:background-color,color,border-color,fill,stroke;transition-duration:.2s;transition-timing-function:ease}@media (prefers-reduced-motion: reduce){html.theme-ready,html.theme-ready *,html.theme-ready *:before,html.theme-ready *:after{transition-duration:0ms}}:root[data-theme=dark] .m-tabbar{background:#1e231feb}:root[data-theme=dark] .m-today-list__row--completed .m-today-list__town{text-decoration-color:#b9b7b273}:root[data-theme=dark] .m-today-list__hint-dismiss:hover{background:#d59d772e}:root[data-theme=dark] .m-detail__timeline-row--skipped .m-detail__timeline-status{color:#f18b71}:root[data-theme=dark] .m-me__status--warning{color:#eca851}:root[data-theme=dark] .m-me__status--rust,:root[data-theme=dark] .m-me__danger-link,:root[data-theme=dark] .m-me__error{color:#f18b71}:root[data-theme=dark] .m-btn--danger{background:#de4e49}:root[data-theme=dark] .m-btn--danger:active:not(:disabled){background:#cf413d}:root[data-theme=dark] .btn-leather:hover:not(:disabled){background:#e5a880;border-color:#e5a880}:root[data-theme=dark] .btn-danger:hover:not(:disabled){background:#c8664e;border-color:#c8664e}:root[data-theme=dark] .app-sidebar{--forest: oklch(.32 .05 155);--forest-2: oklch(.42 .06 155);border-right-color:#1c3a27}:root[data-theme=dark] .user-menu-avatar:hover,:root[data-theme=dark] .lang-switcher:hover,:root[data-theme=dark] .btn-ghost:hover,:root[data-theme=dark] .btn:hover:not(:disabled),:root[data-theme=dark] .day-picker-trigger:hover,:root[data-theme=dark] .tweaks-step:hover:not(.tweaks-step--active),:root[data-theme=dark] .horse-card-menu-chip:hover,:root[data-theme=dark] .catchup-stable-group-action:hover,:root[data-theme=dark] .catchup-row:hover,:root[data-theme=dark] .catchup-row-menu-trigger[aria-expanded=true]{border-color:#434a44}:root[data-theme=dark] .auth-error,:root[data-theme=dark] .form-error,:root[data-theme=dark] .horse-card--overdue.horse-card--default,:root[data-theme=dark] .horse-card--overdue.horse-card--compact,:root[data-theme=dark] .horse-card-overdue-flag,:root[data-theme=dark] .backlog-section--overdue,:root[data-theme=dark] .day-cell-total--heavy,:root[data-theme=dark] .shoeing-pill--therapeutic,:root[data-theme=dark] .empty-state--warm,:root[data-theme=dark] .catchup-row-chip--warn,:root[data-theme=dark] .catchup-row-menu-item--couldnotdo,:root[data-theme=dark] .horse-card-menu-item--couldnotdo,:root[data-theme=dark] .today-route-horse-overdue,:root[data-theme=dark] .today-route-horse-missed{color:#ffbba9;color:oklch(.85 .13 35)}:root[data-theme=dark] .auth-error,:root[data-theme=dark] .form-error,:root[data-theme=dark] .horse-card--overdue.horse-card--default,:root[data-theme=dark] .horse-card--overdue.horse-card--compact,:root[data-theme=dark] .horse-card-overdue-flag,:root[data-theme=dark] .day-cell-total--heavy{border-color:#8b5243}:root[data-theme=dark] .form-input[aria-invalid=true]:focus-visible,:root[data-theme=dark] .form-textarea[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px #f18b7147}:root[data-theme=dark] .day-cell-total--full,:root[data-theme=dark] .today-route-catchup-banner,:root[data-theme=dark] .history-row--skipped,:root[data-theme=dark] .history-row-skip-tag{color:#fac099}:root[data-theme=dark] .day-cell-total--full{background:#3a2b11;border-color:#785f32}:root[data-theme=dark] .today-route-catchup-banner{background:#422616;border-color:#885538}:root[data-theme=dark] .today-route-catchup-banner:hover{background:#56331f}:root[data-theme=dark] .history-row-skip-tag{background:#402719;border-color:#885538}:root[data-theme=dark] .day-cell-total--healthy{border-color:#476e54}:root[data-theme=dark] .backlog-lane{border-color:#504d46}:root[data-theme=dark] .backlog-section-count{background:#262a26}:root[data-theme=dark] .backlog-section--overdue .backlog-section-count{color:#ffbba9;color:oklch(.85 .13 35);background:#472218;border-color:#8b5243}:root[data-theme=dark] .backlog-lane,:root[data-theme=dark] .day-cell--weekend,:root[data-theme=dark] .horse-card-menu-chip,:root[data-theme=dark] .horse-card-menu-item:hover,:root[data-theme=dark] .skip-dialog-chip,:root[data-theme=dark] .history-row-menu-trigger[aria-expanded=true],:root[data-theme=dark] .history-row-menu-item:hover,:root[data-theme=dark] .stop-actions-menu-trigger[aria-expanded=true],:root[data-theme=dark] .stop-actions-menu-item:hover,:root[data-theme=dark] .catchup-section-count,:root[data-theme=dark] .catchup-stable-group-action:hover,:root[data-theme=dark] .catchup-row-menu-trigger[aria-expanded=true],:root[data-theme=dark] .catchup-row-menu-item:hover{background:#262a26}:root[data-theme=dark] .horse-card-menu-chip:hover,:root[data-theme=dark] .skip-dialog-chip:hover{background:#2f3530}:root[data-theme=dark] .empty-state--warm{background:#3f2717}:root[data-theme=dark] .plan-week-banner-gate,:root[data-theme=dark] .plan-week-banner-skipped{background:#3d2914;color:#f8cfa7}:root[data-theme=dark] .catchup-selection-bar{background:#45423b;color:var(--ink);border-color:#00000059;box-shadow:0 1px #ffffff14 inset,0 14px 36px -10px #000000b3,0 4px 10px -4px #00000080}:root[data-theme=dark] .catchup-selection-bar-count{color:var(--ink)}:root[data-theme=dark] .catchup-selection-bar .catchup-stable-group-action{background:#ffffff12;border-color:#ffffff24;color:var(--ink)}:root[data-theme=dark] .catchup-selection-bar .catchup-stable-group-action:hover{background:#ffffff21;border-color:#ffffff38;color:var(--ink)}:root[data-theme=dark] .catchup-selection-bar-cancel{color:#b9b7b2}:root[data-theme=dark] .catchup-selection-bar-cancel:hover{background:#ffffff14;color:var(--ink)}:root[data-theme=dark] .settings-sticky-bar{background:#45423b;color:var(--ink);border-color:#00000059;box-shadow:0 1px #ffffff14 inset,0 14px 36px -10px #000000b3,0 4px 10px -4px #00000080}:root[data-theme=dark] .settings-sticky-bar-text{color:var(--ink)}:root[data-theme=dark] .settings-sticky-bar-cancel{color:#b9b7b2}:root[data-theme=dark] .settings-sticky-bar-cancel:hover{background:#ffffff14;color:var(--ink)}:root[data-theme=dark] .pin-picker-hint{background:#1e231feb;color:var(--ink)}:root[data-theme=dark] .plan-danger{background:#3a211d;border-color:#8b5243}:root[data-theme=dark] .week-section--planning,:root[data-theme=dark] .week-grid--preview{background:#262a26}:root[data-theme=dark] .week-section--planning{border-color:#5a5543}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01"}button{font:inherit;cursor:pointer}input,textarea,select{font:inherit;color:inherit}a{color:var(--forest);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline;outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.skip-link{position:absolute;top:8px;left:-9999px;z-index:9999;padding:8px 16px;background:var(--forest);color:#eeebe2;border-radius:var(--r-md);font-size:.875rem;font-weight:600;text-decoration:none;box-shadow:var(--shadow-md)}.skip-link:focus{left:8px;outline:none;box-shadow:var(--shadow-md),var(--focus-ring)}.app-shell{display:grid;grid-template-columns:232px 1fr;height:100%;background:var(--bg);color:var(--ink)}.app-shell--sidebar-closed{grid-template-columns:64px 1fr}.app-sidebar{position:relative;display:flex;flex-direction:column;gap:4px;min-height:0;padding:22px 16px 16px;background:var(--forest);color:#eeebe2;border-right:1px solid oklch(.22 .04 155);transition:padding .18s ease}.app-shell--sidebar-closed .app-sidebar{padding:22px 8px 16px}.app-brand{display:flex;flex-direction:row;align-items:center;gap:10px;padding:4px 8px 22px}.app-brand-icon{width:48px;height:48px;flex-shrink:0;border-radius:6px}.app-brand-text{display:flex;flex-direction:column;min-width:0}.app-brand-name{margin:0;font-size:14px;font-weight:600;letter-spacing:-.005em;color:#f8f5ee}.app-brand-sub{margin:2px 0 0;font-size:11px;letter-spacing:.02em;color:#b2bbaa}.app-nav{display:flex;flex-direction:column;gap:2px}.app-nav-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;font-size:13.5px;color:#e8e4dc;text-decoration:none;transition:background .12s ease}.app-nav-link:hover{background:#2c4a37;color:#e8e4dc;text-decoration:none}.app-nav-link:focus-visible{outline:none;box-shadow:0 0 0 3px #f8f5ee40}.app-nav-link.is-active{background:var(--forest-2);color:#f8f5ee}.app-nav-link--button{width:100%;font:inherit;background:transparent;border:0;cursor:pointer;text-align:left}.app-nav-icon{width:16px;height:16px;flex-shrink:0;opacity:.85}.app-nav-label{white-space:nowrap;overflow:hidden;flex:1}.app-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;background:var(--rust);color:#f8f5ee;border-radius:999px;font-size:10.5px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;flex-shrink:0}.app-shell--sidebar-closed .app-nav-badge{position:absolute;top:4px;right:4px;min-width:14px;height:14px;padding:0 3px;font-size:9px}.app-shell--sidebar-closed .app-nav-link{position:relative}.app-shell--sidebar-closed .app-brand-name,.app-shell--sidebar-closed .app-brand-sub,.app-shell--sidebar-closed .app-nav-label{display:none}.app-shell--sidebar-closed .app-brand{padding:4px 0 22px;align-items:center}.app-shell--sidebar-closed .app-nav-link{justify-content:center;padding:10px 0}.app-shell--sidebar-closed .app-nav-icon{width:18px;height:18px}.app-shell--sidebar-closed .app-nav-icon svg{width:18px;height:18px}.app-sidebar-legal{margin-top:auto;padding-top:8px}.app-nav-link--muted{font-size:12px;color:#b3baada6}.app-nav-link--muted .app-nav-icon{width:14px;height:14px;opacity:.65}.app-nav-link--muted:hover{color:#e8e4dc}.app-nav-link--muted:hover .app-nav-icon{opacity:.95}.app-nav-link--muted.is-active{background:var(--forest-2);color:#e8e4dc}.app-shell--sidebar-closed .app-nav-link--muted .app-nav-icon{width:16px;height:16px;opacity:.85}.sidebar-toggle{position:absolute;top:0;right:-8px;width:16px;height:100%;padding:0;z-index:5;background:transparent;border:none;cursor:pointer}.sidebar-toggle-icon{position:absolute;left:50%;top:var(--toggle-y, 50%);transform:translate(-50%,-50%) scale(.8);display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--paper);border:1px solid var(--line);color:var(--ink-2);box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:opacity .14s ease,background .12s ease,color .12s ease,border-color .12s ease}.sidebar-toggle-icon--visible,.sidebar-toggle:focus-visible .sidebar-toggle-icon{opacity:1;transform:translate(-50%,-50%) scale(1)}.sidebar-toggle-icon--visible{background:var(--bg-2);border-color:var(--forest);color:var(--forest)}.sidebar-toggle:focus-visible{outline:none}.sidebar-toggle:focus-visible .sidebar-toggle-icon{box-shadow:var(--focus-ring)}.sidebar-toggle svg{transition:transform .18s ease}.app-shell--sidebar-closed .sidebar-toggle svg{transform:rotate(180deg)}.app-main{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.app-topbar{display:flex;align-items:center;gap:14px;height:56px;padding:0 28px;background:var(--bg);border-bottom:1px solid var(--line)}.app-topbar-heading{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1.2}.app-topbar-title{margin:0;font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.app-topbar-subtitle{margin:0;font-size:12px;color:var(--ink-3)}.app-topbar-back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;margin-left:-6px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--ink-2);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.app-topbar-back:hover{background:var(--bg-2);border-color:var(--line);color:var(--ink)}.app-topbar-back:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.app-topbar-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.app-topbar-user{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--ink-3)}.user-menu{position:relative}.user-menu-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:var(--bg-2);border:1px solid var(--line);border-radius:50%;font-size:12px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .12s ease,border-color .12s ease}.user-menu-avatar:hover{background:var(--bg-3, var(--bg-2));border-color:#cac7bf}.user-menu-avatar:focus-visible{outline:none;box-shadow:var(--focus-ring)}.user-menu-popover{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;padding:10px 12px;background:var(--paper, var(--bg-1));border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px -12px #0000002e,0 2px 6px -2px #00000014;z-index:50}.user-menu-email{font-size:12px;color:var(--ink-3);word-break:break-all;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--line)}.user-menu-actions{display:flex;flex-direction:column;align-items:stretch;gap:6px}.user-menu-action{display:inline-flex;align-items:center;justify-content:flex-start;height:28px;padding:0 10px;background:transparent;border:1px solid var(--line);border-radius:6px;font-size:12px;font-weight:600;color:var(--ink);text-decoration:none;cursor:pointer;transition:background .12s ease,border-color .12s ease}.user-menu-action:hover{background:var(--bg-2)}.user-menu-action:focus-visible{outline:none;box-shadow:var(--focus-ring)}.user-menu-logout{display:inline-flex;align-items:center;justify-content:flex-start;height:28px;padding:0 10px;background:transparent;border:1px solid var(--line);border-radius:6px;font-size:12px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .12s ease,border-color .12s ease}.user-menu-logout:hover{background:var(--bg-2)}.user-menu-logout:focus-visible{outline:none;box-shadow:var(--focus-ring)}.theme-toggle{display:inline-flex;align-items:center;height:32px;padding:2px;background:transparent;border:1px solid var(--line);border-radius:8px}.theme-toggle__option{display:inline-flex;align-items:center;justify-content:center;width:28px;height:26px;padding:0;background:transparent;border:none;border-radius:6px;color:var(--ink-3);cursor:pointer;transition:background .12s ease,color .12s ease}.theme-toggle__option:hover:not(.theme-toggle__option--active){color:var(--ink)}.theme-toggle__option--active{background:var(--bg-2);color:var(--ink)}.theme-toggle__option:focus-visible{outline:none;box-shadow:var(--focus-ring)}.lang-switcher{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;background:transparent;border:1px solid var(--line);border-radius:8px;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--ink-3);cursor:pointer;transition:background .12s ease,border-color .12s ease}.lang-switcher:hover{background:var(--bg-2);border-color:#cac7bf}.lang-switcher:focus-visible{outline:none;box-shadow:var(--focus-ring)}.lang-switcher-option{color:var(--ink-3)}.lang-switcher-option--active{color:var(--ink)}.lang-switcher-sep{color:var(--ink-3);opacity:.5}.topbar-banner{display:flex;align-items:center;gap:10px;padding:8px 28px;font-size:13px;border-bottom:1px solid var(--line);color:var(--ink);background:var(--forest-soft)}.topbar-banner-dot{width:8px;height:8px;border-radius:50%;background:var(--forest);flex-shrink:0}.topbar-banner-text{color:var(--ink)}.topbar-banner-body{color:var(--ink-2)}.topbar-banner--offline{background:var(--rust-soft)}.topbar-banner--offline .topbar-banner-dot{background:var(--rust)}.topbar-banner-action{margin-left:auto;height:28px;padding:0 12px;background:var(--forest);border:1px solid var(--forest);border-radius:7px;color:var(--bg);font-size:12px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .12s ease,border-color .12s ease}.topbar-banner-action:hover{background:var(--forest-2);border-color:var(--forest-2)}.topbar-banner-action:focus-visible{outline:none;box-shadow:var(--focus-ring)}.app-content{flex:1;min-width:0;overflow-y:auto;padding:24px 28px 60px}.legal-hub{max-width:720px;display:flex;flex-direction:column;gap:18px}.legal-hub-intro{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2)}.legal-hub-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.legal-hub-card{display:flex;align-items:center;gap:16px;padding:14px 16px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);color:inherit;text-decoration:none;transition:border-color .12s ease,background .12s ease}.legal-hub-card:hover{border-color:var(--forest);background:var(--bg-2)}.legal-hub-card:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--forest)}.legal-hub-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.legal-hub-card-title{margin:0;font-size:14px;font-weight:600;color:var(--ink)}.legal-hub-card-description{margin:0;font-size:12.5px;color:var(--ink-2);line-height:1.5}.legal-hub-card-icon{flex-shrink:0;color:var(--ink-3);transition:color .12s ease}.legal-hub-card:hover .legal-hub-card-icon,.legal-hub-card:focus-visible .legal-hub-card-icon{color:var(--forest)}.btn-ghost{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;background:var(--paper);border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:500;color:var(--ink);transition:background .12s ease,border-color .12s ease}.btn-ghost:hover{background:var(--bg-2);border-color:#cac7bf}.btn-ghost:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-toggle{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 18px;background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:500;color:var(--ink-2);transition:border-color .12s ease,color .12s ease,box-shadow .12s ease}.btn-toggle:hover:not(:disabled){border-color:var(--forest);color:var(--forest);box-shadow:var(--shadow-sm)}.btn-toggle:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-toggle:disabled{opacity:.5;cursor:progress}.dashboard{display:flex;flex-direction:column;gap:22px}.dashboard-drag-hint{margin:0;font-size:13px;color:var(--ink-3)}.week-section{display:flex;flex-direction:column;gap:12px}.week-section-header{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 12px;padding:0 4px}.week-section-title{display:inline-flex;align-items:baseline;gap:6px;margin:0;font-size:19px;font-weight:600;letter-spacing:-.012em;color:var(--forest)}.week-section-range{font-size:14px;color:var(--ink-3)}.week-section-progress{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}.plan-gate-intro{margin:0 0 12px;font-size:14px;color:var(--ink-2)}.plan-gate-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.plan-gate-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md)}.plan-gate-item-title{font-size:13px;font-weight:600;color:var(--ink)}.plan-gate-item-body{font-size:13px;line-height:1.45;color:var(--ink-2)}.week-section-body{display:flex;flex-direction:column;gap:10px}.week-grid{display:grid;grid-template-columns:1.4fr 1.4fr 1.4fr 1.4fr 1.4fr .75fr .75fr;gap:10px}.week-grid--no-weekends{grid-template-columns:repeat(5,1fr)}.day-cell{display:flex;flex-direction:column;gap:8px;padding:10px 10px 12px;min-height:200px;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:12px;transition:background .15s ease,border-color .15s ease}.day-cell--weekend{background:#f5f2e9;padding-left:6px;padding-right:6px}.day-cell--today{background:var(--leather-soft);border-color:#d6ae93}.day-cell--past{opacity:.55}.day-cell-header{display:flex;align-items:baseline;justify-content:space-between;gap:6px;padding:2px 4px 4px;margin-bottom:2px;border-bottom:1px solid var(--line-2)}.day-cell-header-meta{display:flex;align-items:baseline;gap:8px;min-width:0}.day-cell-weekday{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.day-cell-date{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-2)}.day-cell--today .day-cell-weekday,.day-cell--today .day-cell-date{color:var(--leather-ink)}.day-cell--weekend .day-cell-weekday{font-size:9px}.day-cell--weekend .day-cell-date{font-size:12px}.day-cell-total{flex:0 0 auto;align-self:center;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;color:var(--ink-2);background:var(--bg-2);border:1px solid var(--line)}.day-cell-total--light{color:var(--ink-3);background:var(--bg-2);border-color:var(--line)}.day-cell-total--healthy{color:var(--forest-ink);background:var(--forest-soft);border-color:#bad6c3}.day-cell-total--full{color:#624000;color:oklch(.4 .09 75);background:#fde8c6;border-color:#e9cd9d}.day-cell-total--heavy{color:#75220c;background:var(--rust-soft);border-color:#f3b2a1}.day-cell--weekend .day-cell-total{padding:1px 5px;font-size:10px}.day-cell-total--clickable{cursor:pointer;font-family:inherit;line-height:inherit;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.day-cell-total--clickable:hover{border-color:var(--forest)}.day-cell-total--clickable:focus-visible{outline:none;box-shadow:var(--focus-ring)}.day-cell-total--clickable:active{transform:scale(.97)}.day-cell-body{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.day-cell-empty{font-size:14px;color:var(--ink-3);text-align:center;padding-top:12px}.stable-bundle{background:var(--bg-2);border:1px solid var(--line-2);min-width:0}.stable-bundle--compact{display:flex;flex-direction:column;gap:0;padding:7px 8px 8px;border-radius:9px;font-size:11px}.stable-bundle--default{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:var(--r-md)}.stable-bundle-header{font-weight:600;color:var(--forest-ink);line-height:1.2;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stable-bundle--compact .stable-bundle-header{font-size:11px}.stable-bundle--default .stable-bundle-header{font-size:13px;padding:0 4px}.stable-bundle-cards{display:flex;min-width:0}.stable-bundle--compact .stable-bundle-cards{margin-top:3px;flex-direction:row;flex-wrap:wrap;gap:3px}.stable-bundle--default .stable-bundle-cards{flex-direction:column;gap:6px}.horse-card{display:block;text-decoration:none;color:var(--ink);position:relative;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.horse-card:hover{text-decoration:none}.horse-card:focus-visible{outline:none;box-shadow:var(--focus-ring)}.horse-card-link{text-decoration:none;color:inherit}.horse-card-link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;z-index:0}.horse-card-link:focus-visible{outline:none}.horse-card-link:focus-visible:after{box-shadow:var(--focus-ring)}.horse-card-link--compact{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0}.horse-card--compact{display:flex;align-items:center;gap:6px;padding:2px 7px 2px 6px;background:var(--paper);border:1px solid var(--line);border-radius:5px;font-size:11.5px;line-height:1.3;color:var(--ink-2);max-width:100%;min-width:0}.horse-card--compact:hover{border-color:var(--forest);color:var(--ink);box-shadow:var(--shadow-sm)}.horse-card--compact .horse-card-done,.horse-card--compact .horse-card-menu-trigger{position:absolute;top:50%;margin:0}.horse-card--compact .horse-card-done{left:50%;transform:translate(calc(-100% - 2px),-50%)}.horse-card--compact .horse-card-menu-trigger{left:50%;transform:translate(2px,-50%)}.horse-card--compact .horse-card-done:hover{transform:translate(calc(-100% - 2px),-50%)}.horse-card--compact .horse-card-menu-trigger:hover{transform:translate(2px,-50%)}.horse-card--compact .horse-card-link--compact,.horse-card--compact .horse-card-overdue-dot{transition:opacity .12s ease}.horse-card--compact:hover .horse-card-link--compact,.horse-card--compact:hover .horse-card-overdue-dot,.horse-card--compact:has(.horse-card-menu-trigger[aria-expanded=true]) .horse-card-link--compact,.horse-card--compact:has(.horse-card-menu-trigger[aria-expanded=true]) .horse-card-overdue-dot{opacity:0;pointer-events:none}.horse-card--compact:has(.horse-card-menu-trigger[aria-expanded=true]) .horse-card-done{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.horse-card-name--compact{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.horse-card-client--compact{font-size:10px;font-weight:600;letter-spacing:.02em;color:var(--ink-3);flex-shrink:0;text-transform:uppercase}.horse-card--default{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:8px 10px;background:var(--paper);border:1px solid var(--line);border-radius:9px}.horse-card--default:hover{box-shadow:var(--shadow-md)}.horse-card-body{display:flex;flex-direction:column;gap:1px;min-width:0}.horse-card-name{font-weight:600;font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.horse-card-client{font-size:11px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-route-catchup-banner{display:block;margin:0 0 12px;padding:10px 14px;border-radius:8px;background:#ffeade;background:oklch(.95 .04 50);border:1px solid oklch(.85 .05 50);color:#713408;font-size:13px;font-weight:500;text-decoration:none}.today-route-catchup-banner:hover{background:#ffe1d1;background:oklch(.93 .05 50)}.horse-card-last-visit{font-size:10.5px;color:var(--ink-3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.horse-card-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.horse-card-shoeing{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--forest-soft);color:var(--forest-ink);font-size:11px;font-weight:600;letter-spacing:.02em}.horse-card-interval{font-size:11px;font-variant-numeric:tabular-nums;color:var(--ink-3)}.horse-card--overdue.horse-card--default{background:var(--rust-soft);border-color:#ecc3b8}.horse-card--overdue.horse-card--default .horse-card-shoeing{background:var(--paper);color:#74301f}.horse-card--overdue.horse-card--compact{background:var(--rust-soft);border-color:#ecc3b8;color:#7b2813}.horse-card-overdue-flag{position:absolute;top:-8px;right:8px;padding:2px 6px;background:var(--paper);border:1px solid oklch(.85 .05 35);border-radius:4px;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#7f230b}.horse-card-overdue-dot{width:6px;height:6px;border-radius:3px;background:var(--rust);flex-shrink:0}.horse-card--completed.horse-card--default,.horse-card--completed.horse-card--compact{border-color:var(--forest);background:var(--forest-soft)}.horse-card--completed .horse-card-body,.horse-card--completed .horse-card-link{opacity:.8}.horse-card--completed .horse-card-overdue-flag,.horse-card--completed .horse-card-overdue-dot{display:none}.backlog-lane{display:flex;flex-wrap:wrap;gap:8px 10px;padding:8px 10px 10px;background:#f2eee4;border:1px dashed oklch(.82 .018 90);border-radius:10px;min-width:0}.backlog-lane-header{flex-basis:100%;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;padding:2px 2px 6px;border-bottom:1px solid var(--line-2)}.backlog-lane-title{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.backlog-lane-sub{font-size:11px;color:var(--ink-3)}.backlog-section{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:6px;padding:6px 4px;border-radius:8px}.backlog-section--overdue .backlog-section-title{color:var(--rust)}.backlog-section-header{display:flex;align-items:center;gap:6px;padding:0 2px}.backlog-section-title{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.backlog-section-count{font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--ink-3);background:#f8f5ee;border:1px solid var(--line-2);border-radius:999px;min-width:20px;padding:1px 6px;text-align:center}.backlog-section--overdue .backlog-section-count{color:#7b2813;background:#fff0eb80;background:oklch(.97 .03 35 / .5);border-color:#ecc3b8}.backlog-section-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));align-content:start;gap:6px;min-width:0}.backlog-section-empty{grid-column:1 / -1;margin:0;padding:8px 4px;font-size:10.5px;font-style:italic;line-height:1.4;text-align:left;color:var(--ink-3)}.dashboard-skeleton{display:flex;flex-direction:column;gap:22px}.dashboard-skeleton-week{display:flex;flex-direction:column;gap:12px}.dashboard-skeleton-cells{display:grid;grid-template-columns:1.4fr 1.4fr 1.4fr 1.4fr 1.4fr .75fr .75fr;gap:10px}.dashboard-skeleton-cell{padding:10px;min-height:200px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.week-stack-section{display:flex;flex-direction:column;gap:14px;margin-top:8px}.week-stack-footer{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:8px}.past-weeks-reveal{display:flex;justify-content:center}.past-weeks-reveal-button{gap:6px}.past-weeks-reveal-icon{flex:none}.week-stack-error{margin:0;font-size:12px;color:var(--rust)}.stack-skeleton{display:flex;flex-direction:column;gap:12px}.stack-skeleton-row{display:flex;flex-direction:column;gap:10px;padding:16px 20px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.tweaks{position:relative}.tweaks-trigger{display:inline-flex;align-items:center;gap:6px}.tweaks-trigger-chevron{font-size:10px;color:var(--ink-3)}.tweaks-panel{position:absolute;top:calc(100% + 8px);right:0;min-width:260px;display:flex;flex-direction:column;gap:14px;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);z-index:20}.tweaks-section{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tweaks-legend{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);padding:0;margin-bottom:4px}.tweaks-stepper{display:flex;gap:4px;flex-wrap:wrap}.tweaks-step{font:inherit;font-size:12px;font-variant-numeric:tabular-nums;background:var(--paper);color:var(--ink-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:5px 12px;min-width:36px;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.tweaks-step:hover:not(.tweaks-step--active){background:var(--bg-2);border-color:#cac7bf}.tweaks-step--active{background:var(--forest);border-color:var(--forest);color:#f8f5ee}.tweaks-step:focus-visible{outline:none;box-shadow:var(--focus-ring)}.tweaks-hint{margin:0;font-size:11px;color:var(--ink-3)}.tweaks-checkbox{display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:13px;color:var(--ink);border-radius:var(--r-sm);cursor:pointer}.tweaks-checkbox:hover{background:var(--bg-2)}.tweaks-checkbox input{accent-color:var(--forest)}.tweaks-blocked{margin-top:6px;padding:10px 12px;background:var(--bg-2);border:1px solid var(--line);border-left:3px solid var(--warn, var(--forest));border-radius:var(--r-sm);display:flex;flex-direction:column;gap:6px}.tweaks-blocked-title{margin:0;font-size:12px;font-weight:600;color:var(--ink)}.tweaks-blocked-body{margin:0;font-size:12px;color:var(--ink-2);line-height:1.4}.tweaks-blocked-dismiss{align-self:flex-start;font-size:12px;padding:4px 10px}.empty-state{max-width:460px;margin:64px auto 0;padding:48px 32px;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.empty-state-title{margin:0 0 6px;font-size:16px;font-weight:600;color:var(--ink)}.empty-state-body{margin:0;font-size:14px;line-height:1.5;color:var(--ink-2)}.empty-state-action{margin-top:16px}@keyframes skeleton-pulse{0%{opacity:.55}to{opacity:.9}}.skeleton{display:block;background:linear-gradient(90deg,var(--bg-2) 0%,oklch(.92 .013 90) 50%,var(--bg-2) 100%);border-radius:var(--r-sm);animation:skeleton-pulse 1.2s ease-in-out infinite alternate}:root[data-theme=dark] .skeleton{background:linear-gradient(90deg,var(--bg-2) 0%,oklch(.32 .01 150) 50%,var(--bg-2) 100%)}.skeleton-stack{display:flex;flex-direction:column;gap:10px}.auth-shell{min-height:100%;display:flex;align-items:center;justify-content:center;padding:32px;background:var(--bg)}.auth-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:16px;padding:32px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-md)}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:4px}.auth-brand-icon{width:40px;height:40px;border-radius:8px}.auth-brand-tagline{margin:0;font-size:12px;letter-spacing:.02em;color:var(--ink-3)}.auth-title{margin:0;font-size:22px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}.auth-mobile-notice{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:var(--forest-soft);border:1px solid var(--forest);border-radius:var(--r-md)}.auth-mobile-notice-title{margin:0;font-size:13px;font-weight:700;color:var(--forest-ink)}.auth-mobile-notice-body{margin:0;font-size:12.5px;line-height:1.45;color:var(--forest-ink)}.account-deleted-card{max-width:460px;text-align:center;gap:18px}.account-deleted-icon{display:flex;justify-content:center}.account-deleted-title{text-align:center}.account-deleted-lead{margin:0;color:var(--ink-2);font-size:14px;line-height:1.5}.account-deleted-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;text-align:left;font-size:13.5px;color:var(--ink-2);line-height:1.5}.account-deleted-list li{position:relative;padding-left:22px}.account-deleted-list li:before{content:"";position:absolute;left:4px;top:8px;width:6px;height:6px;border-radius:50%;background:var(--forest)}.account-deleted-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:4px}.account-deleted-link{text-decoration:none}.auth-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:500;color:var(--ink-2)}.auth-field input{width:100%;padding:9px 12px;background:var(--paper);border:1px solid var(--line);border-radius:8px;font-size:13.5px;color:var(--ink);outline:none;transition:border-color .12s ease,box-shadow .12s ease}.auth-field input:focus-visible{border-color:var(--forest);box-shadow:var(--focus-ring)}.auth-field input:disabled{opacity:.6}.auth-field--checkbox{flex-direction:row;align-items:flex-start;gap:8px;font-weight:400;color:var(--ink-2);line-height:1.45}.auth-field--checkbox input[type=checkbox]{width:auto;margin-top:3px;padding:0;background:transparent;cursor:pointer}.auth-field--checkbox span{flex:1;font-size:12.5px}.auth-field--checkbox a{color:var(--forest)}.auth-error{margin:0;padding:10px 12px;background:var(--rust-soft);border:1px solid oklch(.85 .06 35);border-radius:8px;color:#7b2813;font-size:13px}.auth-submit{font:inherit;font-size:13px;font-weight:600;min-height:44px;padding:0 16px;background:var(--forest);border:1px solid var(--forest);border-radius:8px;color:#f8f5ee;cursor:pointer;outline:none;transition:background .12s ease,border-color .12s ease}.auth-submit:hover:not(:disabled){background:var(--forest-2);border-color:var(--forest-2)}.auth-submit:focus-visible{box-shadow:var(--focus-ring)}.auth-submit:disabled{opacity:.7;cursor:progress}.auth-link{margin:0;text-align:center;font-size:13px;color:var(--ink-3)}.auth-link a{color:var(--forest)}.auth-link--right{text-align:right;margin-top:-4px;font-size:12.5px}.auth-link--muted{font-size:12px;color:var(--ink-3);margin-top:-4px}.auth-loading{font-size:14px;color:var(--ink-3)}.auth-info{margin:0;padding:10px 12px;background:var(--forest-soft, oklch(.94 .04 150));border:1px solid var(--forest);border-radius:8px;color:var(--forest);font-size:13px}.auth-verify-lead{margin:0;font-size:13px;color:var(--ink-2);line-height:1.5}.auth-otp-input{font-family:SF Mono,Menlo,Consolas,monospace!important;font-size:22px!important;letter-spacing:.4em;text-align:center}.auth-textbtn{background:none;border:none;padding:0;font:inherit;color:var(--forest);cursor:pointer;text-decoration:underline}.auth-textbtn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 480px){.auth-shell{padding:32px 16px 16px;align-items:flex-start}.auth-card{padding:24px;border-radius:var(--r-lg)}.auth-field--checkbox input[type=checkbox]{width:20px;height:20px;min-width:20px;cursor:pointer}}.error-boundary-pre{margin:0;padding:10px 12px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-3);font-size:12px;overflow:auto;white-space:pre-wrap}.not-found-shell{min-height:100%;padding:32px;background:var(--bg)}.btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;background:var(--paper);border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:500;color:var(--ink);text-decoration:none;transition:background .12s ease,border-color .12s ease,color .12s ease}.btn:hover:not(:disabled){background:var(--bg-2);border-color:#cac7bf;text-decoration:none}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn__spinner{width:12px;height:12px;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:m-ptr-spin .7s linear infinite;opacity:.85;flex-shrink:0}@media (prefers-reduced-motion: reduce){.btn__spinner{animation:none;border-top-color:currentColor;opacity:.5}}.creem-busy-label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.btn-primary{background:var(--forest);border-color:var(--forest);color:#f8f5ee}.btn-primary:hover:not(:disabled){background:var(--forest-2);border-color:var(--forest-2);color:#f8f5ee}.btn-leather{background:var(--leather);border-color:var(--leather);color:#f8f5ee}.btn-leather:hover:not(:disabled){background:#8a542d;border-color:#8a542d;color:#f8f5ee}.btn-danger{background:var(--rust);border-color:var(--rust);color:#f8f5ee}.btn-danger:hover:not(:disabled){background:#9f422b;border-color:#9f422b;color:#f8f5ee}.btn-sm{height:26px;padding:0 10px;font-size:12px}.btn-plan-week{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--forest) 0%,var(--leather) 160%);border-color:var(--forest);color:#f8f5ee;font-weight:600;box-shadow:var(--shadow-sm)}.btn-plan-week:hover:not(:disabled){background:linear-gradient(135deg,var(--forest-2) 0%,var(--leather) 160%);border-color:var(--forest-2);color:#f8f5ee;box-shadow:var(--shadow-md)}.btn-plan-week-icon{flex:none;margin-top:-1px;color:#fbeec9}.btn-plan-week:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 30%,oklch(1 0 0 / .18) 50%,transparent 70%);transform:translate(-100%);pointer-events:none}.btn-plan-week:hover:not(:disabled):after{animation:btn-plan-week-shimmer 1.5s linear 1}@keyframes btn-plan-week-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion: reduce){.btn-plan-week:hover:not(:disabled):after{animation:none}}.visually-hidden,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#0f130f6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1200;animation:modalFadeIn .18s ease}.modal{width:100%;max-height:90vh;overflow:auto;background:var(--paper);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.modal--sm{max-width:380px}.modal--md{max-width:520px}.modal--lg{max-width:720px}.modal--xl{max-width:1080px}.modal-head{display:flex;align-items:center;gap:12px;padding:20px 24px 8px}.modal-title{margin:0;font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--ink);flex:1;min-width:0}.modal-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:6px;color:var(--ink-3);cursor:pointer;transition:background .12s ease,color .12s ease}.modal-close:hover{background:var(--bg-2);color:var(--ink)}.modal-close:focus-visible{outline:none;box-shadow:var(--focus-ring)}.modal-body{padding:12px 24px 20px}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 24px;border-top:1px solid var(--line-2);background:var(--bg-2)}.modal-head-actions{display:flex;align-items:center;gap:8px}.day-detail-modal-fullview{display:inline-flex;align-items:center;padding:5px 10px;font-size:12.5px;font-weight:500;color:var(--ink-2);text-decoration:none;border-radius:6px;transition:background .12s ease,color .12s ease}.day-detail-modal-fullview:hover{background:var(--bg-2);color:var(--ink)}.day-detail-modal-fullview:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dialog-body{margin:0 0 8px;font-size:14px;line-height:1.5;color:var(--ink)}.dialog-body:last-child{margin-bottom:0}.form-grid{display:flex;flex-direction:column;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-field{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;font-weight:500;color:var(--ink-2)}.form-required{color:var(--leather-ink);margin-left:2px}.form-help{margin:0;font-size:11.5px;color:var(--ink-3)}.form-input,.form-textarea{width:100%;padding:9px 12px;background:var(--paper);border:1px solid var(--line);border-radius:8px;font-size:13.5px;color:var(--ink);outline:none;transition:border-color .12s ease,box-shadow .12s ease}.form-textarea{min-height:80px;resize:vertical;font-family:inherit;line-height:1.5}.form-input:focus-visible,.form-textarea:focus-visible{border-color:var(--forest);box-shadow:var(--focus-ring)}.form-input:disabled,.form-textarea:disabled{opacity:.6;background:var(--bg-2);cursor:not-allowed}.form-input[aria-invalid=true],.form-textarea[aria-invalid=true]{border-color:var(--rust)}.form-input[aria-invalid=true]:focus-visible,.form-textarea[aria-invalid=true]:focus-visible{border-color:var(--rust);box-shadow:0 0 0 3px #b051392e}select.form-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:32px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%236b6258' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M3 4.5 6 7.5 9 4.5'/></svg>");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer}select.form-input:disabled{cursor:not-allowed}.select-menu-trigger{text-align:left;-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:32px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%236b6258' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M3 4.5 6 7.5 9 4.5'/></svg>");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer;font-family:inherit;line-height:1.4}.select-menu-trigger:disabled{cursor:not-allowed}.select-menu-trigger--placeholder{color:var(--ink-3)}.form-segmented{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--paper);width:fit-content}.form-segmented-option{flex:0 0 auto;height:34px;padding:0 14px;background:transparent;border:0;border-right:1px solid var(--line);font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer;transition:background .12s ease,color .12s ease}.form-segmented-option:last-child{border-right:0}.form-segmented-option:hover:not(.form-segmented-option--active){background:var(--bg-2)}.form-segmented-option--active{background:var(--forest);color:#f8f5ee}.form-segmented-option:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}@media (max-width: 480px){.m-sheet .form-segmented{width:100%;display:grid;grid-template-columns:1fr 1fr;overflow:visible}.m-sheet .form-segmented-option{width:100%;height:auto;padding:9px 12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:44px}.m-sheet .form-segmented-option:nth-child(2n){border-right:0}.m-sheet .form-segmented-option:nth-child(n+3){border-bottom:0}.m-sheet .form-row{grid-template-columns:1fr}}@media (max-width: 767px){.form-input,.form-textarea,select.form-input{font-size:16px}}.form-error{margin:0;padding:10px 12px;background:var(--rust-soft);border:1px solid oklch(.85 .06 35);border-radius:8px;color:#7b2813;font-size:13px}.form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:4px}.horse-rows{display:flex;flex-direction:column;gap:18px}.horse-owner-field{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line-2)}.horse-row{display:flex;flex-direction:column;gap:12px}.horse-row+.horse-row{padding-top:18px;border-top:1px solid var(--line-2)}.horse-row--saved{opacity:.6}.horse-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.horse-row-index{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.horse-row-saved-tag{font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--forest)}.horse-row-remove{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:6px;color:var(--ink-3);cursor:pointer;transition:background .12s ease,color .12s ease}.horse-row-remove:hover:not(:disabled){background:var(--bg-2);color:var(--ink)}.horse-row-remove:focus-visible{outline:none;box-shadow:var(--focus-ring)}.horse-row-remove:disabled{opacity:.5;cursor:not-allowed}.horse-rows-footer{margin-top:16px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.btn-add-row{align-self:flex-start;font-size:13px;padding:6px 10px}.horse-rows-max-hint{margin:0;font-size:12px;color:var(--ink-3)}.stable-picker{position:relative}.stable-picker-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;margin:0;padding:4px;list-style:none;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-md);max-height:220px;overflow-y:auto}.stable-picker-option{padding:7px 10px;font-size:13.5px;color:var(--ink);border-radius:6px;cursor:pointer}.stable-picker-option--active{background:var(--forest-soft);color:var(--forest-ink)}.stable-picker-option--create{border-bottom:1px solid var(--line-2);margin-bottom:4px;padding-bottom:8px;color:var(--leather-ink);font-weight:500}.stable-picker-option--create.stable-picker-option--active{background:var(--leather-soft);color:var(--leather-ink)}.stable-picker-footer{border-top:1px solid var(--line-2);margin-top:4px;padding:4px 0 0;list-style:none;display:flex;flex-direction:column}.stable-picker-option--empty{color:var(--ink-2);cursor:default;font-style:italic}.stable-picker-option--empty:hover{background:transparent}.stable-picker-create-link{color:var(--leather-ink);font-weight:500}.stable-picker-manage{display:block;width:100%;text-align:left;padding:7px 10px;font-size:13px;color:var(--ink-2);background:transparent;border:0;border-radius:6px;cursor:pointer}.stable-picker-manage:hover,.stable-picker-manage:focus-visible{background:var(--forest-soft);color:var(--forest-ink);outline:none}.stable-picker-hint{margin:6px 0 0;font-size:12.5px;color:var(--ink-2)}.stable-picker-hint-pick{background:transparent;border:0;padding:0;margin:0;color:var(--forest);font-weight:500;text-decoration:underline;cursor:pointer}.stable-picker-hint-pick:disabled{cursor:not-allowed;opacity:.6}.manage-stables-help{margin:0 0 16px}.manage-stables-pickers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.manage-stables-confirm{margin-top:16px;padding:12px;background:var(--leather-soft);border:1px solid var(--leather);border-radius:8px;color:var(--leather-ink)}.manage-stables-confirm p{margin:0 0 12px;font-size:13.5px}.manage-stables-confirm-actions{display:flex;justify-content:flex-end;gap:8px}.manage-stables-actions{margin-top:16px}.page-clients{max-width:var(--content-max-width);margin:0 auto}.clients-table-wrap{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.clients-table{width:100%;border-collapse:collapse;table-layout:fixed}.clients-table thead th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);padding:0;background:var(--bg-2);border-bottom:1px solid var(--line)}.clients-table-sort{display:inline-flex;align-items:center;gap:6px;width:100%;padding:14px 18px;background:none;border:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;text-align:left}.clients-table-sort--end{justify-content:flex-end;text-align:right}.clients-table-sort:hover{color:var(--ink)}.clients-table-sort:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.clients-table-sort-arrow{display:inline-flex;align-items:center;justify-content:center;font-size:9px;opacity:.5;transition:transform .12s ease,opacity .12s ease}.clients-table-sort--active{color:var(--ink)}.clients-table-sort--active .clients-table-sort-arrow{opacity:1;color:var(--forest)}.clients-table-sort-arrow--asc{transform:rotate(180deg)}.clients-table tbody tr{cursor:pointer;transition:background .12s ease}.clients-table tbody tr:hover,.clients-table tbody tr:focus-visible{background:var(--bg-2);outline:none}.clients-table tbody tr:focus-visible{box-shadow:inset var(--focus-ring)}.clients-table tbody td{padding:14px 18px;font-size:13.5px;color:var(--ink);border-bottom:1px solid var(--line-2)}.clients-table tbody tr:last-child td{border-bottom:0}.clients-table-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clients-table-stable{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clients-table-extra{display:inline-flex;align-items:center;height:18px;margin-left:6px;padding:0 6px;background:var(--bg-2);color:var(--ink-3);border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap}.clients-table-num,th.clients-table-num{text-align:right;font-variant-numeric:tabular-nums}.page-list{max-width:var(--content-max-width);margin:0 auto}.page-list-search{margin-bottom:16px}.list-search{position:relative;display:block}.list-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.list-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--ink-3);display:inline-flex;pointer-events:none}.list-search-input{width:100%;height:38px;padding:0 12px 0 34px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);font:inherit;font-size:13.5px;color:var(--ink);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.list-search-input::placeholder{color:var(--ink-3)}.list-search-input:focus-visible{border-color:var(--forest);box-shadow:var(--focus-ring)}.list-table tbody td{padding:12px 16px;font-size:13px;vertical-align:middle}.list-table tbody tr{height:60px}.list-table thead th .clients-table-sort,.list-table thead th .clients-table-static-th{padding:12px 16px}.clients-table-static-th{display:inline-flex;align-items:center;width:100%}.clients-table-static-th--end{justify-content:flex-end;text-align:right}.list-table tbody td.clients-table-num,.list-table tbody td.list-actions-col{white-space:nowrap}.shoeing-pill{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.shoeing-pill--barefoot{background:var(--forest-soft);color:var(--forest-ink)}.shoeing-pill--front_only{background:var(--leather-soft);color:var(--leather-ink)}.shoeing-pill--all_four{background:color-mix(in oklch,var(--forest-soft) 55%,var(--leather-soft) 45%);color:var(--forest-ink)}.shoeing-pill--therapeutic{background:var(--rust-soft);color:#74301f}.stables-table-pin,th.stables-table-pin{width:48px;text-align:center;white-space:nowrap;padding-left:8px}.pin-indicator{display:inline-flex;align-items:center;justify-content:center;color:var(--forest)}.pin-indicator--empty{color:var(--ink-3);opacity:.7}.stables-table-no-address{font-style:italic;color:var(--ink-3)}.list-actions-col,th.list-actions-col{width:88px;white-space:nowrap;text-align:right;padding-left:8px}.list-row-actions{display:inline-flex;gap:4px}.page-detail{display:flex;flex-direction:column;gap:22px;max-width:var(--content-max-width);margin:0 auto}.detail-cols{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:22px;align-items:start}@media (max-width: 900px){.detail-cols{grid-template-columns:1fr}}.detail-col-main,.detail-col-side{display:flex;flex-direction:column;gap:22px;min-width:0}.detail-section{display:flex;flex-direction:column;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:18px 20px}.detail-card{padding:18px 20px;display:flex;flex-direction:column;gap:10px}.section-title{margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}.detail-empty-line{margin:0;font-size:13px;color:var(--ink-3);font-style:italic}.stables-rollup{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.stables-rollup-item{font-size:13.5px;color:var(--ink)}.stables-rollup-name{font-weight:600}.stables-rollup-count{color:var(--ink-3)}.horses-table-wrap{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.horses-table{width:100%;border-collapse:collapse}.horses-table thead th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);padding:0;background:var(--bg-2);border-bottom:1px solid var(--line)}.horses-table thead th .clients-table-sort{padding:10px 14px}.horses-table tbody tr{cursor:pointer;transition:background .12s ease}.horses-table tbody tr:hover,.horses-table tbody tr:focus-visible{background:var(--bg-2);outline:none}.horses-table tbody tr:focus-visible{box-shadow:inset var(--focus-ring)}.horses-table tbody td{padding:12px 14px;font-size:13px;color:var(--ink);border-bottom:1px solid var(--line-2)}.horses-table tbody tr:last-child td{border-bottom:0}.horses-table-name{font-weight:600}.horses-table-num,th.horses-table-num{text-align:right;font-variant-numeric:tabular-nums}.horses-table-next{font-weight:500}.horses-table-rel{color:var(--ink-3);font-size:12px}.horses-table-rel--empty,.contact-empty--placeholder{font-style:italic}.horses-table-actions,th.horses-table-actions{width:1%;white-space:nowrap;text-align:right;padding-left:8px}.horses-row-actions{display:inline-flex;gap:4px;opacity:0;transition:opacity .12s ease}.horses-table tbody tr:hover .horses-row-actions,.horses-table tbody tr:focus-within .horses-row-actions{opacity:1}.horses-row-action{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:0;border-radius:var(--r-sm);color:var(--ink-3);cursor:pointer;transition:background .12s ease,color .12s ease}.horses-row-action:hover{background:var(--bg-3, var(--bg-2));color:var(--forest)}.horses-row-action.horses-row-action--danger:hover{color:var(--rust)}.horses-row-action:focus-visible{outline:none;box-shadow:var(--focus-ring)}.contact-list{margin:0;display:flex;flex-direction:column;gap:10px}.contact-item{display:flex;flex-direction:column;gap:2px}.contact-item dt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:0}.contact-item dd{margin:0;font-size:13.5px;color:var(--ink)}.contact-link{color:var(--forest)}.contact-empty{margin:0;font-size:13px;color:var(--ink-3)}.notes-body{margin:0;font-size:13.5px;line-height:1.55;color:var(--ink);white-space:pre-line}.notes-body--scroll{max-height:220px;overflow-y:auto}.contact-link--plain{color:var(--ink);text-decoration:none}.contact-link--plain:hover{color:var(--forest)}.horse-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;padding:16px 20px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.horse-header-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.horse-header-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}.horse-header-value{font-size:14px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis}.horse-header-link{color:var(--forest);font-weight:600}.visit-block{display:flex;flex-direction:column;gap:2px}.visit-block-date{margin:0;font-size:16px;font-weight:600;letter-spacing:-.005em;color:var(--ink);font-variant-numeric:tabular-nums}.visit-block-rel{margin:0;font-size:13px;color:var(--ink-3)}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.history-row{display:flex;gap:12px;padding:10px 0;font-size:13px;color:var(--ink);border-bottom:1px solid var(--line-2)}.history-row:last-child{border-bottom:0}.history-row-date{flex:0 0 140px;font-weight:500;color:var(--ink-2);font-variant-numeric:tabular-nums}.history-row-notes{color:var(--ink-3);flex:1;min-width:0}.day-picker{position:relative}.day-picker-trigger{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;background:var(--paper);border:1px solid var(--line);border-radius:8px;font:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;text-align:left;transition:border-color .12s ease,box-shadow .12s ease}.day-picker-trigger:hover{border-color:#cac7bf}.day-picker-trigger:focus-visible,.day-picker-trigger[aria-expanded=true]{outline:none;border-color:var(--forest);box-shadow:var(--focus-ring)}.day-picker-trigger:disabled{opacity:.6;background:var(--bg-2);cursor:not-allowed}.day-picker-trigger>svg{color:var(--ink-3);flex-shrink:0}.day-picker-value{font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-picker-placeholder{color:var(--ink-3)}.day-picker-panel{position:fixed;z-index:1300;width:300px;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:10px}.day-picker-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px}.day-picker-month{font-size:13.5px;font-weight:600;color:var(--ink);letter-spacing:-.005em}.day-picker-nav{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:6px;color:var(--ink-2);cursor:pointer;transition:background .12s ease,color .12s ease}.day-picker-nav:hover{background:var(--bg-2);color:var(--ink)}.day-picker-nav:focus-visible{outline:none;box-shadow:var(--focus-ring)}.day-picker-grid{display:flex;flex-direction:column;gap:2px}.day-picker-row{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.day-picker-row--head{padding-bottom:4px;border-bottom:1px solid var(--line-2);margin-bottom:2px}.day-picker-cell{font-size:12.5px;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink);text-align:center}.day-picker-dow{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:4px 0}.day-picker-day{padding:7px 0;border:0;background:transparent;border-radius:6px;cursor:pointer;font:inherit;transition:background .12s ease,color .12s ease}.day-picker-day:hover:not(:disabled){background:var(--bg-2)}.day-picker-day:focus-visible{outline:none;box-shadow:var(--focus-ring)}.day-picker-day--outside{color:var(--ink-3)}.day-picker-day--today{background:var(--leather-soft);color:var(--leather-ink)}.day-picker-day--today:hover:not(:disabled){background:#f1d9c9}.day-picker-day--selected,.day-picker-day--selected:hover{background:#005121;background:oklch(.38 .13 150);color:#f8f5ee;box-shadow:inset 0 0 0 2px #007f30;box-shadow:inset 0 0 0 2px oklch(.52 .17 148)}.day-picker-day--disabled{opacity:.4;cursor:not-allowed}.day-picker-foot{display:flex;justify-content:space-between;padding:6px 4px 0;border-top:1px solid var(--line-2)}.day-picker-link{font:inherit;font-size:12px;font-weight:500;background:transparent;border:0;color:var(--forest);cursor:pointer;padding:4px 6px;border-radius:6px;transition:background .12s ease}.day-picker-link:hover:not(:disabled){background:var(--forest-soft)}.day-picker-link:focus-visible{outline:none;box-shadow:var(--focus-ring)}.day-picker-link:disabled{color:var(--ink-3);cursor:not-allowed}.toast-region{position:fixed;inset:auto 24px 24px auto;display:flex;flex-direction:column;gap:8px;z-index:200;pointer-events:none}.toast-region--assertive{bottom:24px;margin-bottom:0}.toast{position:relative;overflow:hidden;pointer-events:auto;display:flex;align-items:center;gap:12px;min-width:260px;max-width:380px;padding:10px 12px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-left:3px solid var(--ink-3);border-radius:var(--r-md);box-shadow:var(--shadow-md);font-size:14px;animation:toast-in .18s ease-out}.toast-progress{position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--ink-3);opacity:.7;transform-origin:left center;animation-name:toast-progress;animation-timing-function:linear;animation-fill-mode:forwards;pointer-events:none}.toast--success{border-left-color:var(--color-success)}.toast--success .toast-progress{background:var(--color-success)}.toast--danger{border-left-color:var(--color-danger)}.toast--danger .toast-progress{background:var(--color-danger)}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast--ephemeral{opacity:.85}.toast-message{flex:1;min-width:0;word-break:break-word}.toast-undo{flex:0 0 auto;background:transparent;border:1px solid var(--line);border-radius:var(--r-sm);padding:4px 10px;font:inherit;font-size:13px;color:var(--forest);cursor:pointer}.toast-undo:hover:not(:disabled){background:var(--forest-soft)}.toast-undo:focus-visible{outline:none;box-shadow:var(--focus-ring)}.toast-undo:disabled{opacity:.5;cursor:progress}.toast-close{flex:0 0 auto;background:transparent;border:none;border-radius:var(--r-sm);padding:4px 6px;font:inherit;font-size:16px;line-height:1;color:var(--text-secondary);cursor:pointer;margin-left:auto}.toast-close:hover{color:var(--text)}.toast-close:focus-visible{outline:none;box-shadow:var(--focus-ring)}.toast:focus-visible{outline:none;box-shadow:var(--focus-ring)}@keyframes toast-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}@media (max-width: 767px){.toast-region{inset:auto calc(var(--safe-right) + 16px) calc(50px + var(--safe-bottom) + 24px) calc(var(--safe-left) + 16px)}.toast{min-width:0;max-width:100%;width:100%}}.horse-card-done{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-right:4px;background:var(--paper);border:1px solid var(--line);border-radius:999px;color:var(--ink-3);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;flex-shrink:0;position:relative;z-index:1;transition:opacity .12s ease,visibility 0s linear .12s,background-color .12s ease,border-color .12s ease,color .12s ease,transform .12s ease}.horse-card:hover .horse-card-done{opacity:1;visibility:visible;pointer-events:auto;border-color:var(--forest);color:var(--forest);transition-delay:0s}.horse-card-done:hover{background:var(--forest-soft);color:var(--forest);border-color:var(--forest);transform:scale(1.08)}.horse-card-done:focus-visible{outline:none;box-shadow:var(--focus-ring);opacity:1}.horse-card-done:disabled{cursor:progress}.horse-card{position:relative}.horse-card--default .horse-card-done{width:22px;height:22px;margin-right:8px}.horse-card-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-right:4px;background:var(--paper);border:1px solid var(--line);border-radius:999px;color:var(--ink-3);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;flex-shrink:0;position:relative;z-index:1;transition:opacity .12s ease,visibility 0s linear .12s,background-color .12s ease,border-color .12s ease,color .12s ease}.horse-card:hover .horse-card-menu-trigger,.horse-card-menu-trigger[aria-expanded=true]{opacity:1;visibility:visible;pointer-events:auto;border-color:var(--ink-3);color:var(--ink);transition-delay:0s}.horse-card-menu-trigger:focus-visible{outline:none;box-shadow:var(--focus-ring);opacity:1}.horse-card--default .horse-card-menu-trigger{width:22px;height:22px;margin-right:8px}.horse-card-menu{position:fixed;z-index:50;min-width:220px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 32px #0000001f;padding:8px;display:flex;flex-direction:column;gap:6px}.horse-card-menu-section{display:flex;flex-direction:column;gap:6px}.horse-card-menu-section-label{font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);padding:0 2px}.horse-card-menu-chips{display:flex;flex-wrap:wrap;gap:6px}.horse-card-menu-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#f5f2e7;border:1px solid var(--line);color:var(--ink);font:inherit;font-size:12px;border-radius:999px;padding:4px 10px;cursor:pointer;transition:background .12s ease,border-color .12s ease}.horse-card-menu-chip:hover{background:#ede8d9;border-color:#bcb7a9}.horse-card-menu-chip--ghost{background:transparent}.horse-card-menu-date-input{font:inherit;padding:4px 6px;border:1px solid var(--line);border-radius:6px}.horse-card-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;text-align:left;font:inherit;font-size:12.5px;color:var(--ink);padding:8px 10px;border-radius:6px;cursor:pointer;margin-top:2px;border-top:1px solid var(--line-2)}.horse-card-menu-item:hover{background:#f5f2e7}.horse-card-menu-item--couldnotdo{color:#7b2813}.horse-card-menu-item--show{margin-top:0;border-top:0;text-decoration:none;display:block;font-weight:500}.skip-dialog-field{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.skip-dialog-chips{display:flex;flex-wrap:wrap;gap:6px}.skip-dialog-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#f5f2e7;border:1px solid var(--line);color:var(--ink);font:inherit;font-size:12px;border-radius:999px;padding:4px 10px;cursor:pointer}.skip-dialog-chip:hover{background:#ede8d9}.skip-dialog-chip--active{background:var(--forest-soft);border-color:var(--forest);color:var(--forest-ink)}.history-row--skipped .history-row-date{color:#744931}.history-row-skip-tag{display:inline-block;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:#ffe1d1;color:#713408;border:1px solid oklch(.85 .05 50);margin-right:8px}.horse-card-done--completing{background:var(--forest);border-color:var(--forest);color:var(--paper);opacity:1;animation:horse-card-done-pop .28s ease-out forwards}.horse-card-done--completed{background:var(--forest);border-color:var(--forest);color:var(--paper)}.horse-card-done--completing svg{animation:horse-card-check-draw .28s ease-out forwards}@keyframes horse-card-done-pop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1.08)}}@keyframes horse-card-check-draw{0%{transform:scale(.6);opacity:.4}60%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.horse-card--completing{pointer-events:none}@media (prefers-reduced-motion: reduce){.horse-card-done,.horse-card-done--completing,.horse-card-done--completing svg,.horse-card--completing{animation:none!important;transition:none!important}}.horse-card--projected{border-style:dashed;opacity:.78}.horse-card-projected-tag{font-size:10px;letter-spacing:.04em;color:var(--ink-3);text-transform:uppercase;margin-top:2px}.visit-block-actions{margin-top:8px;display:flex;gap:8px}.history-row-actions{display:inline-flex;gap:6px;margin-left:8px}.history-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.history-row-actions .btn-link{background:none;border:none;padding:0;font:inherit;font-size:13px;color:var(--forest);cursor:pointer}.history-row-actions .btn-link:hover{text-decoration:underline}.history-row-actions .btn-link.btn-link--danger{color:var(--rust)}.history-row-actions .btn-link:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.history-head .section-title{margin:0}.history-filter{height:auto}.history-filter .form-segmented-option{height:28px;padding:0 10px;font-size:12px}.history-row-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--ink-3);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.history-row-menu-trigger:hover,.history-row-menu-trigger[aria-expanded=true]{background:#f5f2e7;border-color:var(--line);color:var(--ink)}.history-row-menu-trigger:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--line)}.history-row-menu{position:fixed;z-index:50;min-width:160px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 32px #0000001f;padding:6px;display:flex;flex-direction:column;gap:2px}.history-row-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;text-align:left;font:inherit;font-size:12.5px;color:var(--ink);padding:8px 10px;border-radius:6px;cursor:pointer}.history-row-menu-item:hover{background:#f5f2e7}.history-row-menu-item--danger{color:var(--rust)}.horse-card--ghost,.stable-bundle--ghost{opacity:.3}.dnd-active .stable-bundle--match{background:var(--leather-soft);box-shadow:inset 0 0 0 1.5px #98643f8c;transition:background-color .12s ease,box-shadow .12s ease}@media (prefers-reduced-motion: reduce){.dnd-active .stable-bundle--match{transition:none}}html:has(.dnd-active),html:has(.dnd-active) *{cursor:grabbing!important}.horse-card--draggable{cursor:grab}.horse-card--draggable:active{cursor:grabbing}.horse-card--draggable:has(.horse-card-grip){cursor:pointer}.stable-bundle--draggable .horse-card--draggable:has(.horse-card-grip){cursor:grab}.stable-bundle--draggable .horse-card-link,.stable-bundle--draggable .horse-card-link:after{cursor:inherit}.horse-card-grip{display:inline-flex;align-items:center;justify-content:center;width:14px;height:18px;margin-right:4px;padding:0;border:none;background:transparent;color:var(--ink-3);font-size:14px;line-height:1;cursor:grab;border-radius:3px;flex-shrink:0;touch-action:none}.horse-card-grip:hover{color:var(--ink-2);background:var(--bg-2)}.horse-card-grip:active{cursor:grabbing}.horse-card-grip:focus-visible{outline:none;box-shadow:var(--focus-ring)}.stable-bundle--draggable{cursor:grab;touch-action:none}.stable-bundle--draggable:active{cursor:grabbing}.stable-bundle--draggable:focus-visible{outline:none;box-shadow:var(--focus-ring)}.drop-target{position:relative;transition:border-color .12s ease,background-color .12s ease}.dnd-active .drop-target:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px dashed oklch(.32 .05 155 / .45);border-radius:inherit;pointer-events:none;background:#1c3a270a}.dnd-active .drop-target--over:after{border-style:solid;border-color:#1c3a27d9;background:#1c3a2714}.drag-overlay{pointer-events:none;box-shadow:var(--shadow-md);border-radius:var(--r-md);transform:rotate(.5deg)}@media (prefers-reduced-motion: reduce){.drop-target{transition:none}.drag-overlay{transform:none}}.today-route{max-width:var(--content-max-width);margin:0 auto;padding:24px 0 48px}.today-route-header{margin-bottom:20px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.today-route-nav{display:flex;align-items:center;gap:12px}.today-route-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--paper);border:1px solid var(--line);border-radius:8px;color:var(--ink-2);cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.today-route-nav-btn:hover:not(:disabled){background:var(--bg-2);border-color:var(--forest);color:var(--forest)}.today-route-nav-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.today-route-nav-btn:disabled{opacity:.35;cursor:not-allowed}.today-route-back-today{font-size:12px;color:var(--forest);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline}.today-route-back-today:hover{color:var(--forest-ink)}.today-route-back-today:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.today-route-title{margin:0;font-size:22px;font-weight:600;color:var(--ink);min-width:360px;text-align:center}.today-route-total{font-weight:500;color:var(--ink-3)}.today-route-skeleton{margin-top:8px}.today-route-stops{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.today-route-stop{display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:start;padding:16px 18px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.today-route-stop--done{background:var(--bg-2)}.today-route-stop-number{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--forest);color:#f8f5ee;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;transition:opacity .16s ease}.today-route-stop-number--clickable{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;padding:0;cursor:pointer;font-family:inherit;transition:opacity .16s ease,transform .12s ease,box-shadow .16s ease}.today-route-stop-number--clickable:hover{transform:scale(1.05);box-shadow:0 0 0 3px #9ac3a759}.today-route-stop-number--clickable:focus-visible{outline:none;box-shadow:0 0 0 3px #9ac3a780}.today-route-stop--done .today-route-stop-number{opacity:.45}.today-route-stop--focused{box-shadow:0 0 0 2px var(--leather),var(--shadow-sm);transition:box-shadow .2s ease}.today-route-stop-body{min-width:0;display:flex;flex-direction:column;gap:10px}.today-route-stop-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.today-route-stop-stable{margin:0;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:.005em}.stop-actions-menu{position:relative;display:inline-flex}.stop-actions-menu-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;border-radius:6px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-3);cursor:pointer}.stop-actions-menu-trigger:hover,.stop-actions-menu-trigger[aria-expanded=true]{background:#f5f2e7;border-color:var(--line);color:var(--ink)}.stop-actions-menu-trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #9ac3a759}.stop-actions-menu-popover{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:180px;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 22px #00000014;padding:4px;display:flex;flex-direction:column;gap:2px}.stop-actions-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;text-align:left;font:inherit;color:var(--ink);padding:8px 10px;border-radius:6px;cursor:pointer}.stop-actions-menu-item:hover{background:#f5f2e7}.stop-actions-menu-item:disabled{opacity:.5;cursor:default}.stop-actions-menu-date{display:flex;flex-direction:column;gap:4px;padding:8px 10px}.stop-actions-menu-date-label{font-size:11px;color:var(--ink-3)}.stop-actions-menu-date-input{font:inherit;padding:4px 6px;border:1px solid var(--line);border-radius:6px}.today-route-stop-horses{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.today-route-horse{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--line-2);transition:opacity .16s ease}.today-route-horse:first-child{border-top:0;padding-top:4px}.today-route-horse--done .today-route-horse-name{color:var(--ink-3);text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:var(--ink-3)}.today-route-horse--done .today-route-horse-client{color:var(--ink-3)}.today-route-horse-main{display:flex;flex-direction:column;gap:2px;min-width:0}.today-route-horse-name-link{display:inline-flex;align-items:center;color:var(--ink);text-decoration:none}.today-route-horse-name-link:hover{text-decoration:none}.today-route-horse-name-link:hover .today-route-horse-name{color:var(--forest)}.today-route-horse-name-link:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.today-route-horse-client-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.today-route-horse-phone{display:inline-flex;align-items:center;gap:4px;color:var(--ink-2);font-size:12.5px;text-decoration:none;border-bottom:1px dashed transparent;transition:color .12s ease,border-bottom-color .12s ease}.today-route-horse-phone:hover{color:var(--forest);border-bottom-color:currentColor}.today-route-horse-phone:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.today-route-horse-phone svg{width:12px;height:12px}.today-route-horse-name{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;line-height:1.2;color:var(--ink);transition:color .12s ease}.today-route-horse-overdue,.today-route-horse-missed{display:inline-flex;align-items:center;padding:1px 6px;border-radius:4px;background:var(--rust-soft);color:#7f230b;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.today-route-horse-meta-spacer{display:inline-block;min-width:0}.today-route-horse-client{font-size:12px;color:var(--ink-3)}.today-route-horse-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.today-route-horse-shoeing{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--forest-soft);color:var(--forest-ink);font-size:11px;font-weight:600;letter-spacing:.02em}.today-route-horse-duration,.today-route-stop-onsite,.today-route-stop-arrive{font-weight:500;color:var(--ink-3)}.today-route-leg-chip{list-style:none;margin:-8px 0 -8px 72px;padding:6px 12px;font-size:12.5px;line-height:1.4;color:var(--ink-3);align-self:start}.today-route-stop-auto{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;background:#c7932524;color:var(--amber, #b3801c);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;vertical-align:2px}.today-route-stop-pin-hint{margin:6px 0 0;font-size:12.5px;line-height:1.4;color:var(--ink-3)}.today-route-stop-stable-link{color:var(--ink);text-decoration:none;transition:color .12s ease}.today-route-stop-stable-link:hover,.today-route-stop-stable-link:focus-visible{color:var(--forest);text-decoration:underline;text-underline-offset:2px}.today-route-stop-handoff{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 2px}.today-route-stop-handoff-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font:inherit;font-size:12.5px;font-weight:500;color:var(--ink-2);background:var(--bg-2);border:1px solid var(--line);border-radius:999px;cursor:pointer;text-decoration:none;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.today-route-stop-handoff-btn:hover,.today-route-stop-handoff-btn:focus-visible{outline:none;color:var(--forest);background:var(--forest-soft);border-color:#c2d7c9}.today-route-horse-done-btn{flex-shrink:0}.today-route-horse-done-tag{display:inline-flex;align-items:center;gap:6px;padding:0 12px;height:32px;border:1px solid var(--forest-soft);border-radius:8px;background:var(--forest-soft);color:var(--forest-ink);font-size:13px;font-weight:600;flex-shrink:0}button.today-route-horse-done-tag{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.today-route-horse-done-tag--undoable{position:relative;display:inline-grid;align-items:center;justify-items:center}.today-route-horse-done-tag-default,.today-route-horse-done-tag-hover{grid-area:1 / 1;display:inline-flex;align-items:center;gap:6px;transition:opacity .12s ease}.today-route-horse-done-tag-hover{opacity:0}.today-route-horse-done-tag--undoable:hover,.today-route-horse-done-tag--undoable:focus-visible{outline:none;background:var(--bg-2);border-color:var(--line);color:var(--ink-2);box-shadow:var(--focus-ring)}.today-route-horse-done-tag--undoable:hover .today-route-horse-done-tag-default,.today-route-horse-done-tag--undoable:focus-visible .today-route-horse-done-tag-default{opacity:0}.today-route-horse-done-tag--undoable:hover .today-route-horse-done-tag-hover,.today-route-horse-done-tag--undoable:focus-visible .today-route-horse-done-tag-hover{opacity:1}.today-route-stop-number--check svg{width:18px;height:18px}.today-route-stop--done .today-route-stop-number--check{opacity:1}.today-route-stop-header-end{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.today-route-stop-progress{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-3);font-size:11px;font-weight:600;letter-spacing:.02em;font-variant-numeric:tabular-nums}.today-route-day-complete{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;margin-bottom:12px;background:var(--forest-soft);color:var(--forest-ink);border:1px solid var(--forest-soft);border-radius:var(--r-md);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.today-route-day-complete-icon{display:inline-flex;align-items:center;justify-content:center}.today-route-day-complete-icon svg{width:14px;height:14px}.route-mode-picker{display:inline-flex;align-self:center;padding:3px;background:var(--bg-2);border:1px solid var(--line);border-radius:999px;gap:2px}.route-mode-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:transparent;border:0;border-radius:999px;color:var(--ink-2);font-family:inherit;font-size:12.5px;font-weight:500;cursor:pointer;transition:background-color .12s ease,color .12s ease}.route-mode-chip:hover:not(:disabled):not([data-selected=true]){color:var(--ink-1);background:color-mix(in oklch,var(--paper) 60%,transparent)}.route-mode-chip:focus-visible{outline:none;box-shadow:var(--focus-ring)}.route-mode-chip[data-selected=true]{background:var(--paper);border:1px solid var(--forest);color:var(--forest);padding:4px 11px;box-shadow:0 1px 2px #0000000f}.route-mode-chip:disabled{opacity:.45;cursor:not-allowed}.route-mode-chip-icon{display:inline-flex;align-items:center;justify-content:center}.route-mode-chip-label{white-space:nowrap}.today-route-summary{margin:0 0 16px;padding:14px 18px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:6px}.today-route-summary--banner{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:var(--forest-soft);border-color:#c2d7c9}.today-route-summary--banner.today-route-summary--warning{background:var(--leather-soft);border-color:#ecc9b2}.today-route-summary-banner-text{margin:0;font-size:13px;color:var(--forest-ink)}.today-route-summary--warning .today-route-summary-banner-text{color:var(--leather-ink)}.today-route-summary-banner-action{flex-shrink:0}.today-route-summary-banner-link{font-size:13px;font-weight:600;color:var(--forest-ink);text-decoration:underline;text-underline-offset:2px}.today-route-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.today-route-summary-title{margin:0;font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.today-route-summary-actions{display:flex;align-items:center;gap:8px}.today-route-summary-stale{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:var(--leather-soft);border:1px solid oklch(.86 .05 55);color:var(--leather-ink);font-size:11.5px;font-weight:600;letter-spacing:.01em}.today-route-summary-reoptimize{font-size:13px;padding:4px 12px}.today-route-summary-optimize{font-size:13px;padding:4px 14px}.today-route-summary-optimized{font-size:13px;padding:4px 12px;display:inline-flex;align-items:center;gap:6px;background:var(--forest-soft);border-color:var(--forest);color:var(--forest-ink);cursor:default;opacity:1}.today-route-summary-optimized:disabled{opacity:1}.today-route-summary-optimized-check{font-weight:700;color:var(--forest)}.today-route-summary-actions--row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.today-route-summary-section-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap;margin-right:2px}.today-route-summary-departure-slot{margin-left:auto}.today-route-departure-wrap{position:relative;display:inline-flex;align-items:center}.today-route-departure{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);color:var(--ink-2);font-size:12.5px;font-weight:500;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.today-route-departure:hover:not(:disabled){background:var(--paper);border-color:var(--forest);color:var(--forest)}.today-route-departure:focus-visible{outline:none;box-shadow:var(--focus-ring)}.today-route-departure:disabled{cursor:not-allowed;opacity:.55}.today-route-departure--bumped{background:var(--leather-soft);border-color:#ecc9b2;color:var(--leather-ink)}.today-route-departure-text{pointer-events:none}.today-route-departure-chevron{pointer-events:none;margin-left:6px;font-size:9px;line-height:1;color:var(--ink-3);transition:color .12s ease}.today-route-departure:hover:not(:disabled) .today-route-departure-chevron{color:var(--forest)}.today-route-departure-input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;bottom:0;left:50%}.today-route-map{margin-top:12px;height:320px;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line);background:var(--bg-2);position:relative}.today-route-map-pin{width:28px;height:28px;border-radius:50%;color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:0 1px 3px #0000004d;font-variant-numeric:tabular-nums;cursor:default;position:relative}.today-route-map-pin--clickable{cursor:pointer;transition:transform .12s ease}.today-route-map-pin--clickable:hover{transform:scale(1.1)}.today-route-map-pin--focused:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid #a36b3f;pointer-events:none;animation:today-route-pin-pulse 1.5s ease-out 1}@keyframes today-route-pin-pulse{0%{transform:scale(.8);opacity:.9}70%{transform:scale(1.6);opacity:0}to{transform:scale(1.6);opacity:0}}.today-route-map-home{width:18px;height:18px;border-radius:50%;background:#a36b3f;border:3px solid #fff;box-shadow:0 1px 3px #0000004d;cursor:default}.today-route-summary-line{margin:0;font-size:16px;font-weight:600;color:var(--ink);display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.today-route-summary-line--breakdown{font-size:12.5px;font-weight:500;color:var(--ink-3)}.today-route-summary-line--cheapest{font-size:13px;font-weight:600;color:var(--forest)}.today-route-summary-line--muted{color:var(--ink-3);font-weight:500}.today-route-summary-line--out-of-sync{display:inline-flex;align-self:flex-start;padding:4px 10px;border-radius:6px;background:var(--leather-soft);border:1px solid oklch(.86 .05 55);color:var(--leather-ink);font-size:12.5px;font-weight:500}.today-route-summary-sep{color:var(--ink-3);font-weight:400}.today-route-summary-eyebrow{margin:6px 0 0;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.today-route-summary-savings{margin:4px 0 0;display:inline-flex;align-self:flex-start;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--forest-soft);border:1px solid oklch(.86 .03 155);color:var(--forest-ink);font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums}.today-route-summary-savings-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:var(--forest);color:var(--paper);font-size:10px;font-weight:700;line-height:1}.today-route-summary-savings-text{letter-spacing:.005em}.today-route-summary-savings-baseline{font-size:11.5px;font-weight:500;color:var(--forest);opacity:.7;letter-spacing:0}.today-route-summary-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:4px}.today-route-summary-tiles--two{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 920px){.today-route-summary-tiles,.today-route-summary-tiles--two{grid-template-columns:repeat(2,minmax(0,1fr))}}.today-route-summary-tile{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:4px;padding:12px 14px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);min-height:76px}.today-route-summary-tile--accent{background:var(--forest-soft);border-color:#c2d7c9}.today-route-summary-tile-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.today-route-summary-tile-value{font-size:22px;font-weight:600;letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.1}.today-route-summary-tile--accent .today-route-summary-tile-value{color:var(--forest-ink)}.today-route-summary-tile-sub{font-size:12px;font-weight:500;color:var(--ink-3);font-variant-numeric:tabular-nums}.today-route-summary-tile--accent .today-route-summary-tile-sub{color:var(--forest)}.today-route-summary-footer{margin:4px 0 0;font-size:12.5px;font-weight:500;color:var(--ink-3);display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-variant-numeric:tabular-nums}.today-route-summary-footer-cost{color:var(--ink-2)}.today-route-summary-cost-hint{margin:2px 0 0;font-size:12px;font-weight:500;color:var(--ink-3)}.today-route-summary-cost-hint-link{color:var(--forest);text-decoration:underline;text-underline-offset:2px}.today-route-missing-pins{margin:0 0 16px;padding:12px 16px;background:var(--leather-soft);border:1px solid oklch(.86 .05 55);border-radius:var(--r-lg);display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px}.today-route-missing-pins-text{margin:0;font-size:13px;font-weight:600;color:var(--leather-ink)}.today-route-missing-pins-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px 10px}.today-route-missing-pins-list li:not(:last-child):after{content:"·";margin-left:10px;color:var(--leather-ink);opacity:.4}.today-route-missing-pins-link{font-size:13px;font-weight:600;color:var(--leather-ink);text-decoration:underline;text-underline-offset:2px}.today-route-missing-pins-link:hover,.today-route-missing-pins-link:focus-visible{outline:none;color:var(--ink)}.today-route-not-on-map{margin-top:24px;padding:14px 16px 4px;background:var(--bg-2);border:1px dashed var(--line);border-radius:var(--r-lg)}.today-route-not-on-map-title{margin:0 0 8px;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.today-route-stops--unmapped{list-style:none;margin:0;padding:0 0 12px;display:flex;flex-direction:column;gap:12px}.today-route-stop--unmapped{background:var(--paper)}.today-route-stop-number--unmapped{background:var(--bg-2);color:var(--ink-3);font-size:22px;line-height:1}.empty-state--warm{background:var(--forest-soft);border-color:#c2d7c9}.empty-state--warm .empty-state-title{color:var(--forest-ink)}@media (max-width: 767px){html,body{overflow-x:clip;max-width:100vw}body{overscroll-behavior-y:contain}}@media (display-mode: standalone){body{overscroll-behavior-y:none}}.m-shell{display:flex;flex-direction:column;min-height:100dvh;background:var(--bg);color:var(--ink)}.m-shell__main{flex:1;display:flex;flex-direction:column;padding-bottom:calc(50px + var(--safe-bottom))}.m-shell__placeholder{margin:auto;text-align:center;color:var(--ink-3);font-size:14px;padding:20px}.m-header{display:flex;align-items:center;padding-left:calc(var(--safe-left) + 20px);padding-right:calc(var(--safe-right) + 20px);padding-top:calc(var(--safe-top) + 16px);padding-bottom:12px;background:var(--bg)}.m-header--editorial{justify-content:space-between;gap:16px}.m-header--nav{justify-content:space-between;gap:8px}.m-header__title{margin:0;font-size:22px;font-weight:600;letter-spacing:-.01em;color:var(--ink);flex:1}.m-header__title--center{text-align:center;font-size:17px;font-weight:600}.m-header__right{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.m-header__add{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--forest);border-radius:999px;flex-shrink:0;-webkit-tap-highlight-color:transparent;position:relative}.m-header__add:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.m-header__add:active{background:var(--forest-soft);transform:scale(.96)}.m-header__avatar{width:32px;height:32px;border-radius:999px;background:var(--leather-soft);color:var(--forest-ink);font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;border:none;flex-shrink:0;position:relative}.m-header__avatar:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px}.m-header__avatar:active{transform:scale(.96)}.m-header__back{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--forest);border-radius:999px;margin-left:-8px;position:relative}.m-header__back:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.m-header__back:active{background:var(--forest-soft)}.m-header__back-spacer{width:36px;flex-shrink:0}.m-header__nav-action{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--forest);border-radius:999px;margin-right:-8px;flex-shrink:0;position:relative}.m-header__nav-action:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.m-header__nav-action:active{background:var(--forest-soft)}.m-sync-dot{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:0;margin:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-sync-dot:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.m-sync-dot__circle{width:8px;height:8px;border-radius:999px;background:var(--ink-3);transition:background-color .16s ease-out,opacity .16s ease-out}.m-sync-dot[data-state=synced] .m-sync-dot__circle{background:var(--forest)}.m-sync-dot[data-state=syncing] .m-sync-dot__circle{background:#ddb049;animation:m-sync-pulse 1.5s ease-in-out infinite}.m-sync-dot[data-state=offline] .m-sync-dot__circle{background:var(--ink-3)}@keyframes m-sync-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.m-sync-dot[data-state=syncing] .m-sync-dot__circle{animation:none}}:root[data-theme=dark] .m-sync-dot[data-state=syncing] .m-sync-dot__circle{background:#f8ca65}.m-sync-dot:focus-visible{outline:none}.m-sync-dot:focus-visible .m-sync-dot__circle{outline:2px solid var(--forest);outline-offset:3px}.m-sync-popover-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60}.m-sync-popover-backdrop{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:0;margin:0;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:default}.m-sync-popover{position:absolute;top:calc(var(--safe-top) + 56px);right:12px;width:280px;max-width:calc(100vw - 24px);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:16px;display:flex;flex-direction:column;gap:8px}.m-sync-popover__status{margin:0;font-size:14px;font-weight:600;color:var(--ink);line-height:1.4}.m-sync-popover__pending{margin:0;font-size:13px;color:var(--ink-2)}.m-sync-popover__action{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin-top:8px;padding:10px 14px;border:1px solid var(--forest);background:var(--forest);color:var(--paper);font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;min-height:40px;-webkit-tap-highlight-color:transparent}.m-sync-popover__action:active:not(:disabled){background:var(--forest-2);border-color:var(--forest-2)}.m-sync-popover__action:disabled{opacity:.6;cursor:default}.m-sync-popover__action:focus-visible{outline:none;box-shadow:var(--focus-ring)}.m-tabbar{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);background:#fdfcf8eb;backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);border-top:1px solid var(--line);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right);z-index:50}.m-tabbar__tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:4px 6px;color:var(--ink-2);font-weight:500;letter-spacing:.01em;transition:color .15s ease-out}.m-tabbar__tab.is-active{color:var(--forest)}.m-tabbar__icon{position:relative;display:inline-flex}.m-tabbar__icon svg{display:block;width:clamp(20px,1.3rem + .1vw,24px);height:clamp(20px,1.3rem + .1vw,24px)}.m-tabbar__label{line-height:1;font-size:clamp(11px,.7rem + .3vw,13px)}.m-sheet-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:flex-end;justify-content:center}.m-sheet-root--confirm{z-index:210}.m-sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#161d1780;opacity:0;transition:opacity .22s ease-out;pointer-events:none;touch-action:none}.m-sheet-root.is-visible .m-sheet-backdrop{opacity:1;pointer-events:auto}.m-sheet{position:relative;width:100%;max-width:560px;background:var(--paper);border-radius:20px 20px 0 0;box-shadow:var(--shadow-lg);padding-bottom:calc(var(--safe-bottom) + 12px);padding-left:var(--safe-left);padding-right:var(--safe-right);transform:translateY(100%);transition:transform .32s cubic-bezier(.32,.72,0,1)}.m-sheet-root.is-visible .m-sheet{transform:translateY(0)}.m-sheet__handle{display:flex;justify-content:center;padding:8px 0 4px;cursor:grab;touch-action:none}.m-sheet__pill{width:36px;height:4px;border-radius:999px;background:var(--line);animation:m-sheet-pill-hint .6s ease-out .3s 1 both}@keyframes m-sheet-pill-hint{0%{transform:scaleX(1);background:var(--line)}40%{transform:scaleX(1.35);background:var(--ink-3)}to{transform:scaleX(1);background:var(--line)}}.m-sheet__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 20px 12px}.m-sheet__title{margin:0;font-size:17px;font-weight:600;color:var(--ink)}.m-sheet__done{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--forest);font-size:15px;font-weight:600;padding:6px 4px;position:relative}.m-sheet__done:before{content:"";position:absolute;top:-8px;right:-12px;bottom:-8px;left:-12px}.m-sheet__body{padding:0 20px 8px;overscroll-behavior:contain}@media (prefers-reduced-motion: reduce){.m-sheet,.m-sheet-backdrop{transition-duration:.15s}}.m-profile{display:flex;flex-direction:column;gap:20px}.m-profile__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.m-profile__row-label{font-size:14px;color:var(--ink-2)}.m-profile__lang{display:inline-flex;background:var(--bg-2);border-radius:999px;padding:3px;gap:0}.m-profile__lang-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:6px 14px;border-radius:999px;color:var(--ink-2);font-size:13px;font-weight:600}.m-profile__lang-btn.is-active{background:var(--paper);color:var(--forest);box-shadow:var(--shadow-sm)}.m-profile__logout{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:var(--rust-soft);color:var(--rust);border:none;border-radius:var(--r-md);padding:12px 16px;font-size:15px;font-weight:600;text-align:center}.m-actionsheet__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.m-actionsheet__action{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:var(--forest-soft);color:var(--forest-ink);border:none;border-radius:var(--r-md);padding:14px 16px;font-size:15px;font-weight:600;text-align:center;-webkit-tap-highlight-color:transparent;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px}.m-actionsheet__action-label{display:block}.m-actionsheet__action-desc{display:block;font-size:12px;font-weight:400;color:var(--ink-3)}.m-actionsheet__action:active{background:color-mix(in oklch,var(--forest-soft) 70%,var(--forest) 30%)}.m-actionsheet__action:disabled{opacity:.5;cursor:default}.m-actionsheet__action--danger{background:var(--rust-soft);color:var(--rust)}.m-profile__version{margin:8px 0 0;font-size:11px;color:var(--ink-3);text-align:center}.m-profile__confirm{display:flex;flex-direction:column;gap:16px;padding-bottom:8px;font-size:14px;color:var(--ink-2)}.m-profile__confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.m-profile__confirm-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-2);color:var(--ink);border:none;padding:12px 16px;border-radius:var(--r-md);font-size:15px;font-weight:600}.m-profile__confirm-logout{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--rust);color:#fff;border:none;padding:12px 16px;border-radius:var(--r-md);font-size:15px;font-weight:600}.m-screen{display:flex;flex-direction:column;flex:1;min-height:0}.m-screen__placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:var(--ink-3);font-size:14px;padding:20px;text-align:center}@supports (view-transition-name: none){::view-transition-old(root),::view-transition-new(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.32,.72,0,1)}}.m-today{position:relative}.m-today__scroll{flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto;padding:0 20px 24px;padding-bottom:calc(96px + var(--safe-bottom));-webkit-overflow-scrolling:touch}.m-today__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0 8px}.m-today__date{flex:1;text-align:center;font-size:14px;color:var(--ink-2);font-variant-numeric:tabular-nums}.m-today__nav-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:32px;height:32px;border-radius:999px;background:transparent;border:1px solid var(--line-2);color:var(--ink-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-today__nav-btn:active{background:var(--line-2)}.m-today__nav-btn:disabled{opacity:.35;cursor:default}.m-today__back-today{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;width:100%;text-align:center;margin:0 0 8px;padding:4px 0;font-size:13px;font-weight:500;color:var(--forest);cursor:pointer}.m-today__mode{display:flex;align-self:center;width:fit-content;margin:6px auto 8px;padding:2px;background:var(--forest-soft);border-radius:999px}.m-today__mode-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;height:28px;min-width:64px;padding:0 14px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--forest-ink);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .12s ease,color .12s ease}.m-today__mode-opt.is-active{background:var(--forest);color:var(--paper)}.m-today__mode-opt:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring-color, oklch(.32 .05 155 / .18))}@media (prefers-reduced-motion: reduce){.m-today__mode-opt{transition:none}}.m-today__row--past .m-today__row-past-inner{display:flex;align-items:center;gap:8px}.m-today__row--past.is-done .m-today__row-name{text-decoration:line-through;color:var(--ink-3)}.m-today__row--past .m-today__row-link{flex:1;min-width:0}.m-today__row-mark-done{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:999px;background:var(--forest);color:var(--paper);border:none;font-size:13px;font-weight:600;-webkit-tap-highlight-color:transparent;cursor:pointer}.m-today__row-mark-done:active{background:var(--forest-2)}.m-today__row-mark-done .m-today__status-tag--missed{background:transparent;color:var(--paper);padding:0;font-weight:700}.m-today__status-tag{flex-shrink:0;display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.m-today__status-tag--done{background:var(--forest-soft);color:var(--forest)}.m-today__status-tag--missed{background:var(--rust-soft);color:var(--rust)}.m-today__progress-label{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}.m-today__progressbar{height:3px;background:var(--leather-soft);border-radius:2px;overflow:hidden;margin-bottom:16px}.m-today__progressbar-fill{display:block;height:100%;background:var(--forest);transition:width .24s ease-out}@media (prefers-reduced-motion: reduce){.m-today__progressbar-fill{transition:none}}.m-today__section-label{margin:24px 0 8px;font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--leather-ink);text-transform:uppercase}.m-up-next{padding:0 20px 16px}.m-up-next__label{margin:20px 0 8px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--leather-ink)}.m-up-next__card{display:flex;flex-direction:column;gap:6px;width:100%;min-height:180px;padding:20px;border:none;background:var(--paper);border-radius:var(--r-lg);box-shadow:var(--shadow-md);text-align:left;-webkit-tap-highlight-color:transparent;cursor:pointer;position:relative}.m-up-next__card-chevron{position:absolute;top:14px;right:16px;font-size:18px;color:var(--ink-3);line-height:1;pointer-events:none;-webkit-user-select:none;user-select:none}.m-up-next__card:focus-visible{outline:2px solid var(--forest);outline-offset:3px}.m-up-next__card--skeleton{background:var(--leather-soft);opacity:.7;cursor:default;animation:m-up-next-fade-in .2s ease-out}@media (prefers-reduced-motion: reduce){.m-up-next__card--skeleton{animation:none}}@keyframes m-up-next-fade-in{0%{opacity:0}to{opacity:.7}}.m-up-next__card--empty,.m-up-next__card--error{align-items:center;justify-content:center;text-align:center;cursor:default}.m-up-next__empty-line{margin:0;font-size:16px;font-weight:500;color:var(--ink-2)}.m-up-next__empty-secondary{margin:6px 0 0;font-size:14px;color:var(--ink-3)}.m-up-next__error-body{margin:0 0 12px;font-size:15px;color:var(--ink-2)}.m-up-next__error-retry{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--forest);font-size:15px;font-weight:600;padding:6px 10px;border-radius:var(--r-sm);cursor:pointer}.m-up-next__error-retry:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-up-next__meta{margin:0 0 2px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-variant-numeric:tabular-nums}.m-up-next__late{color:var(--rust);text-transform:none;letter-spacing:0;font-weight:500}.m-up-next__late-glyph{margin-right:4px;font-size:10px;vertical-align:1px}.m-up-next__stable{margin:0;font-size:28px;font-weight:600;letter-spacing:-.015em;color:var(--ink);line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-up-next__town{margin:0;font-size:15px;font-weight:500;color:var(--ink-2)}.m-up-next__horses{margin:0 0 8px;font-size:14px;color:var(--ink-3)}.m-up-next__action{margin-top:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;border:none;border-radius:var(--r-md);background:var(--forest);color:var(--paper);font-size:16px;font-weight:600;cursor:pointer}.m-up-next__action:disabled{background:var(--leather-soft);color:var(--ink-3);cursor:not-allowed}.m-up-next__action:focus-visible{outline:2px solid var(--forest);outline-offset:3px}.m-up-next__action-arrow{font-size:22px;line-height:1}.m-up-next__action-hint{margin:8px 0 0;font-size:12px;color:var(--ink-3);text-align:center}:root.theme-dark .m-up-next__card{background:var(--paper-dark, var(--bg-2))}:root.theme-dark .m-up-next__card--skeleton{background:var(--leather-soft)}.m-today-list{padding:0 20px 24px}.m-today-list__label{margin:28px 0 8px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--leather-ink)}.m-today-list__rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.m-today-list__row{display:flex;flex-direction:column;gap:4px;width:100%;min-height:64px;padding:16px;background:var(--paper);border-radius:var(--r-lg);cursor:pointer;-webkit-tap-highlight-color:transparent}.m-today-list__row:focus-visible{outline:2px solid var(--forest);outline-offset:3px}.m-today-list__row--completed{opacity:.55;cursor:pointer}.m-today-list__row--completed .m-today-list__stable,.m-today-list__row--completed .m-today-list__town{text-decoration:line-through;text-decoration-color:#494f4a73;text-decoration-thickness:1px}.m-today-list__top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.m-today-list__time{font-size:13px;font-weight:500;color:var(--ink-3);font-variant-numeric:tabular-nums}.m-today-list__check{display:inline-block;margin-right:4px;font-size:12px;line-height:1}.m-today-list__leg{font-size:13px;font-weight:400;color:var(--ink-3);font-variant-numeric:tabular-nums}.m-today-list__stable{margin:0;font-size:18px;font-weight:600;color:var(--ink);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-today-list__town{margin:0;font-size:14px;font-weight:400;color:var(--ink-2)}:root.theme-dark .m-today-list__row{background:var(--paper-dark, var(--bg-2))}.m-today-list__row-host{list-style:none}.m-today-list__hint{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;padding:8px 12px;background:var(--leather-soft);color:var(--leather-ink);border-radius:var(--r-md);font-size:13px;font-weight:500}.m-today-list__hint-text{flex:1;min-width:0}.m-today-list__hint-dismiss{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;color:inherit;font-size:20px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-today-list__hint-dismiss:hover{background:#98643f1f}.m-today-list__hint-dismiss:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-stop-detail{display:flex;flex-direction:column;gap:18px;max-height:min(75vh,600px);overflow-y:auto;padding-bottom:12px}.m-stop-detail__time{margin:0;font-size:14px;font-weight:500;color:var(--ink-3);font-variant-numeric:tabular-nums}.m-stop-detail__address,.m-stop-detail__address-empty{display:flex;flex-direction:column;gap:2px;margin:0;padding:12px 14px;background:var(--bg-2);border-radius:var(--r-md);font-size:14px;color:var(--ink);text-align:left;border:none;width:100%}.m-stop-detail__address-empty{color:var(--ink-3);font-style:italic}.m-stop-detail__address--tappable{cursor:pointer;-webkit-tap-highlight-color:transparent}.m-stop-detail__address--tappable:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-stop-detail__address-line{display:block;line-height:1.4}.m-stop-detail__section{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:14px}.m-stop-detail__section-label{margin:0;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--leather-ink)}.m-stop-detail__contacts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.m-stop-detail__contact{display:flex;flex-direction:column;gap:4px}.m-stop-detail__contact-name{font-size:16px;font-weight:500;color:var(--ink)}.m-stop-detail__contact-phone,.m-stop-detail__contact-email{display:inline-flex;align-items:center;gap:6px;font-size:14px;text-decoration:none;padding:2px 0}.m-stop-detail__contact-phone{color:var(--forest);font-weight:500}.m-stop-detail__contact-email{color:var(--ink-3);font-weight:400}.m-stop-detail__contact-glyph{display:inline-block;width:16px;text-align:center;opacity:.7}.m-stop-detail__contact-phone:focus-visible,.m-stop-detail__contact-email:focus-visible{outline:2px solid var(--forest);outline-offset:2px;border-radius:4px}.m-stop-detail__horses{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.m-stop-detail__horse{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:var(--r-md);background:var(--paper);border:1px solid var(--line);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.m-stop-detail__horse:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-stop-detail__horse-text{display:flex;flex-direction:column;gap:2px;min-width:0}.m-stop-detail__horse-name{font-size:15px;font-weight:500;color:var(--ink)}.m-stop-detail__horse-meta{font-size:13px;color:var(--ink-3)}.m-stop-detail__pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.m-stop-detail__pill--todo{background:var(--leather-soft);color:var(--leather-ink)}.m-stop-detail__pill--done{background:var(--forest);color:var(--paper)}.m-stop-detail__pill-glyph{font-size:11px}.m-stop-detail__note-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);font:inherit;color:var(--ink)}.m-stop-detail__note-input:focus-visible{outline:2px solid var(--forest);outline-offset:2px;border-color:var(--forest)}.m-stop-detail__note-input:disabled{background:var(--bg-2);color:var(--ink-3);cursor:not-allowed}.m-stop-detail__note-pill-wrap{display:block}.m-stop-detail__note-hint{font-size:12px;color:var(--ink-3);font-style:italic}.m-stop-detail__footer{margin-top:4px;display:flex}.m-stop-detail__navigate{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;height:44px;border-radius:var(--r-md);background:transparent;color:var(--forest);border:1px solid var(--forest);font-size:15px;font-weight:600;cursor:pointer}.m-stop-detail__navigate:disabled{color:var(--ink-3);border-color:var(--line);cursor:not-allowed}.m-stop-detail__navigate:focus-visible{outline:2px solid var(--forest);outline-offset:2px}:root.theme-dark .m-stop-detail__address,:root.theme-dark .m-stop-detail__address-empty{background:var(--paper-dark, var(--bg-2))}:root.theme-dark .m-stop-detail__horse{background:var(--paper-dark, var(--bg-2))}:root.theme-dark .m-stop-detail__section{border-top-color:var(--line)}.m-nav-sheet{padding-bottom:8px}.m-nav-sheet__stable{margin:0;font-size:20px;font-weight:600;color:var(--ink)}.m-nav-sheet__subline{margin:2px 0 0;font-size:14px;color:var(--ink-3)}.m-nav-sheet__buttons{margin-top:16px;display:flex;flex-direction:column;gap:12px}.m-nav-sheet__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:12px;width:100%;height:56px;padding:0 16px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);font-size:16px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-nav-sheet__button:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-nav-sheet__button:active{background:var(--leather-soft)}.m-nav-sheet__glyph{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px}.m-nav-sheet__label{flex:1;text-align:left}.m-nav-sheet__cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:16px 0 0;width:100%;height:44px;background:transparent;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-2);font-size:15px;font-weight:500;cursor:pointer}.m-nav-sheet__cancel:focus-visible{outline:2px solid var(--forest);outline-offset:2px}:root.theme-dark .m-nav-sheet__button{background:var(--paper-dark, var(--bg-2));border-color:var(--line)}.m-up-next__action--no-pin,.m-up-next__action--no-pin:focus-visible{background:var(--leather-soft);color:var(--leather-ink);cursor:default;outline-color:var(--leather)}.m-stop-detail__navigate--no-pin{background:var(--leather-soft)!important;color:var(--leather-ink)!important;cursor:default}.m-stop-detail__address-wrap{display:flex;flex-direction:column;gap:6px}.m-stop-detail__address--no-pin{display:flex;flex-direction:column;gap:2px;color:var(--ink-2)}.m-stop-detail__address-warning{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0 6px 0 0;font-size:16px;color:var(--rust);cursor:pointer}.m-stop-detail__address-warning:focus-visible{outline:2px solid var(--rust);outline-offset:2px;border-radius:4px}.m-stop-detail__address-approx{align-self:flex-start;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:4px 2px;display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--leather-ink);cursor:pointer}.m-stop-detail__address-approx:focus-visible{outline:2px solid var(--leather);outline-offset:2px;border-radius:4px}.m-recovery{display:flex;flex-direction:column;gap:16px;padding:4px 20px 24px;max-height:40vh;overflow-y:auto}.m-recovery__body{margin:0;font-size:15px;line-height:1.45;color:var(--ink-2)}.m-recovery__address{display:flex;flex-direction:column;gap:6px}.m-recovery__address-label{margin:0;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--leather-ink)}.m-recovery__address-block{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:var(--leather-soft);color:var(--leather-ink);border:none;border-radius:var(--r-md);padding:12px 14px;font-size:14px;line-height:1.4;cursor:pointer}.m-recovery__address-block:focus-visible{outline:2px solid var(--leather);outline-offset:2px}.m-recovery__address-line{display:block}.m-recovery__address-empty{margin:0;font-size:13px;color:var(--ink-3);font-style:italic}.m-recovery__navigate-anyway{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;height:44px;background:none;border:1px solid var(--leather);border-radius:var(--r-md);color:var(--leather-ink);font-size:14px;font-weight:500;cursor:pointer}.m-recovery__navigate-anyway:focus-visible{outline:2px solid var(--leather);outline-offset:2px}.m-recovery__dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:8px;color:var(--ink-2);font-size:15px;font-weight:500;cursor:pointer}.m-recovery__dismiss:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-stable-group{display:block}.m-stable-group__header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:16px 0 4px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--leather-ink)}.m-stable-group__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-stable-group__count{font-size:11px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink-3);font-variant-numeric:tabular-nums;flex-shrink:0}.m-stable-group--muted .m-stable-group__header{color:var(--ink-3)}.m-stable-group__menu{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;margin-left:6px;padding:4px 6px;border-radius:8px;color:var(--ink-3);cursor:pointer;flex-shrink:0}.m-stable-group__menu:active{background:var(--bg-2)}.m-stable-group--week{padding:0 20px}.m-stable-group__header--week{position:sticky;top:38px;z-index:4;padding:12px 0 6px;background:#f8f5eeeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-2)}.m-week__lane .m-stable-group__header--week{background:#eeebe2f5}.m-week__day.is-past .m-stable-group__header--week{opacity:.6}.m-stable-group--week .m-week__day-list{padding:0}.m-today__row{border-bottom:1px solid var(--line-2)}.m-today__row.is-done .m-today__row-name{text-decoration:line-through;color:var(--ink-3)}.m-today__row.is-done .m-today__row-interval{color:var(--forest);font-weight:600}.m-today__row.is-muted .m-today__row-name{color:var(--ink-2)}.m-today__row-link{display:flex;align-items:center;flex-wrap:wrap;min-height:56px;padding:10px 0;text-decoration:none;color:inherit;gap:6px}.m-today__row-last-visit{flex:0 0 100%;font-size:12px;color:var(--ink-3);margin-top:1px}.m-today__row-name{font-size:16px;font-weight:500;color:var(--ink);flex:0 0 auto;white-space:nowrap}.m-today__row-stable{font-size:14px;color:var(--ink-2);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-today__row-interval{margin-left:auto;font-size:14px;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.m-today__show-all{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;width:100%;text-align:left;padding:14px 0;color:var(--forest);font-size:14px;font-weight:500}.m-today__empty{margin:80px 0;text-align:center;color:var(--ink-3);font-size:14px}.m-today__fab{position:fixed;right:20px;bottom:calc(50px + var(--safe-bottom) + 24px);width:56px;height:56px;border-radius:999px;border:none;background:var(--forest);color:var(--paper);display:inline-flex;align-items:center;justify-content:center;padding:0;box-shadow:var(--shadow-md);z-index:40;cursor:pointer}.m-today__fab:active{transform:scale(.96)}.m-route__stops{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:16px}.m-route__stop{background:var(--paper);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:16px 16px 12px;display:flex;flex-direction:column;gap:12px}.m-route__stop.is-done{background:var(--forest-soft);box-shadow:none}.m-route__stop.is-done .m-route__stop-stable{color:var(--forest-ink)}.m-route__stop-head{display:flex;align-items:center;gap:10px}.m-route__stop-number{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:var(--forest);color:var(--paper);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.m-route__stop.is-done .m-route__stop-number{background:var(--forest-2)}.m-route__stop-stable{margin:0;font-size:16px;font-weight:600;color:var(--ink);letter-spacing:-.01em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-route__stop-menu{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:6px 8px;border-radius:8px;color:var(--ink-3);cursor:pointer;flex-shrink:0}.m-route__stop-menu:active{background:var(--bg-2)}.m-route__horses{list-style:none;margin:0;padding:0}.m-route__horse{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line-2)}.m-route__horse:last-child{border-bottom:0}.m-route__horse.is-done .m-route__horse-name{text-decoration:line-through;color:var(--ink-3)}.m-route__horse.is-done .m-route__horse-interval{color:var(--forest);font-weight:600}.m-route__horse-link{flex:1;min-width:0;display:flex;align-items:center;gap:6px;min-height:48px;padding:8px 0;text-decoration:none;color:inherit}.m-route__horse-name{font-size:15px;font-weight:500;color:var(--ink)}.m-route__horse-interval{margin-left:auto;font-size:13px;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.m-route__check{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:36px;height:36px;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);color:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .12s ease,border-color .12s ease,color .12s ease}.m-route__check:active:not(:disabled){background:var(--forest-soft)}.m-route__check.is-checked{background:var(--forest);border-color:var(--forest);color:var(--paper)}.m-route__check:disabled{cursor:default}.m-route__stop-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:44px;border:none;border-radius:var(--r-md);background:var(--forest);color:var(--paper);font-size:14px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-route__stop-action:active{background:var(--forest-2)}@media (prefers-reduced-motion: reduce){.m-route__check{transition:none}}.m-pulldown{display:flex;align-items:center;justify-content:center;height:0;overflow:hidden;margin:0 auto;color:var(--forest);transition:height .22s ease-out}.m-pulldown.is-pulling{height:calc(28px * var(--pull-ratio, 0))}.m-pulldown.is-refreshing{height:36px}.m-pulldown__chevron{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent}.m-pulldown.is-refreshing .m-pulldown__chevron{animation:m-spin .72s linear infinite}@keyframes m-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.m-pulldown.is-refreshing .m-pulldown__chevron{animation:none}.m-pulldown{transition:none}}.m-swiperow{position:relative;overflow:hidden;touch-action:pan-y}.m-swiperow.is-disabled{touch-action:auto}.m-swiperow__content{position:relative;background:var(--bg);transition:none}.m-swiperow.is-released .m-swiperow__content{transition:transform .22s cubic-bezier(.32,.72,0,1)}.m-swiperow__action{position:absolute;top:0;bottom:0;display:flex;align-items:center;padding:0 20px;font-size:14px;font-weight:600;color:var(--paper)}.m-swiperow__action--right{left:0;right:50%;background:var(--forest);justify-content:flex-start}.m-swiperow__action--left{left:50%;right:0;background:var(--leather);justify-content:flex-end}.m-reschedule{display:flex;flex-direction:column;gap:20px}.m-reschedule__chips{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:4px;border-bottom:1px solid var(--line-2)}.m-reschedule__chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font:inherit;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer}.m-reschedule__chip:active{background:var(--forest-soft)}.m-reschedule__group{display:flex;flex-direction:column;gap:8px}.m-reschedule__label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--leather-ink);margin:0}.m-reschedule__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.m-reschedule__opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;text-align:left;width:100%;padding:14px 4px;font-size:16px;color:var(--ink);border-bottom:1px solid var(--line-2)}.m-reschedule__opt:disabled{color:var(--ink-3);cursor:not-allowed}.m-reschedule__opt:active:not(:disabled){background:var(--bg-2)}.m-unplanned{display:flex;flex-direction:column;gap:14px;padding-bottom:8px}.m-unplanned__field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--ink-2)}.m-unplanned__field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;font-size:16px;color:var(--ink)}.m-unplanned__confirm{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:var(--forest);color:var(--paper);border:none;border-radius:var(--r-md);padding:14px 16px;font-size:15px;font-weight:600;margin-top:6px}.m-unplanned__confirm:disabled{background:var(--forest-soft);color:var(--forest-ink)}.m-week{position:relative}.m-week__scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 0 calc(40px + var(--safe-bottom));-webkit-overflow-scrolling:touch}.m-month{padding:4px 12px 12px}.m-month__header{display:flex;align-items:center;gap:8px;padding:4px 0 10px}.m-month__nav-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--forest);width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;position:relative;flex:0 0 auto}.m-month__nav-btn:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.m-month__nav-btn:active{background:var(--forest-soft)}.m-month__title{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px}.m-month__title-month{font-size:16px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.m-month__overdue{font-size:11px;font-weight:500;color:var(--rust)}.m-month__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:0 2px 4px}.m-month__weekday{font-size:11px;font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;text-align:center;padding:4px 0}.m-month__grid{display:flex;flex-direction:column;gap:2px}.m-month__row{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:2px;border-radius:10px;position:relative}.m-month__row.is-editable{background:var(--leather-soft)}.m-month__cell{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:0;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font:inherit;color:var(--ink);font-variant-numeric:tabular-nums;position:relative;cursor:pointer}.m-month__cell-num{font-size:14px;font-weight:500;line-height:1}.m-month__cell.is-outside .m-month__cell-num{color:var(--ink-3);opacity:.55}.m-month__cell.is-readonly .m-month__cell-num{color:var(--ink-2)}.m-month__cell.is-today{box-shadow:inset 0 0 0 1.5px var(--forest)}.m-month__cell.is-selected{background:var(--forest);box-shadow:none}.m-month__cell.is-selected .m-month__cell-num{color:#f8f5ee}.m-month__cell:active:not(.is-selected){background:var(--forest-soft)}.m-week__day{position:relative;border-bottom:1px solid var(--line-2)}.m-week__day-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;padding:10px 20px 8px;background:#f8f5eeeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-2)}.m-week__day.is-past .m-week__day-header,.m-week__day.is-past .m-week__day-list{opacity:.6}.m-week__day.is-today .m-week__day-weekday{color:var(--forest)}.m-week__day-weekday{font-size:14px;font-weight:600;color:var(--ink)}.m-week__day-count{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}.m-week__day-pill{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;background:var(--forest-soft);color:var(--forest-ink);padding:1px 8px;border-radius:999px}.m-week__day-empty{margin:0;padding:14px 20px 18px;font-size:13px;color:var(--ink-3)}.m-week__day-list{list-style:none;margin:0;padding:0 20px}.m-week__day.is-readonly .m-week__day-header{background:#eeebe2eb}.m-week__row{border-bottom:1px solid var(--line-2);list-style:none}.m-week__row-link{display:flex;align-items:center;min-height:56px;padding:10px 0;text-decoration:none;color:inherit;gap:6px}.m-week__row-link:hover,.m-week__row-link:focus-visible{text-decoration:none}.m-week__row-name{font-size:16px;font-weight:500;color:var(--ink);flex:0 0 auto;white-space:nowrap}.m-week__row-meta{margin-left:auto;display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.m-week__row-shoeing{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--forest-soft);color:var(--forest-ink);font-size:11px;font-weight:600;letter-spacing:.02em}.m-week__row-duration{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums;min-width:36px;text-align:right}.m-day-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 12px 0;padding:12px 4px;background:var(--paper);border:1px solid var(--line-2);border-radius:12px}.m-day-stats__tile{display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}.m-day-stats__tile+.m-day-stats__tile:before{content:"";position:absolute;left:-4px;top:6px;bottom:6px;width:1px;background:var(--line-2)}.m-day-stats__value{font-size:18px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.m-day-stats__label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}.m-backlog-pills{display:flex;gap:8px;padding:12px 16px 4px}.m-backlog-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line-2);border-radius:999px;padding:6px 12px 6px 14px;font:inherit;color:var(--ink);cursor:pointer}.m-backlog-pill:active{background:var(--bg-2)}.m-backlog-pill__label{font-size:13px;font-weight:500}.m-backlog-pill__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.m-backlog-pill--warning{border-color:#ecc3b8;background:var(--rust-soft);color:var(--rust)}.m-backlog-pill--warning .m-backlog-pill__count{background:var(--rust)}.m-backlog-sheet{padding:4px 0 12px}.m-backlog-sheet__empty{margin:0;padding:24px 20px;font-size:14px;color:var(--ink-3);text-align:center}.m-backlog-sheet .m-stable-group__header--week{position:static;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.m-backlog-section{padding:0 4px 6px}.m-backlog-section+.m-backlog-section{margin-top:4px;padding-top:4px;border-top:1px solid var(--line-2)}.m-backlog-section__header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:10px 16px 4px}.m-backlog-section__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.m-backlog-section__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 7px;border-radius:999px;background:var(--bg-2);color:var(--ink-2);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.m-backlog-section--overdue .m-backlog-section__title{color:var(--rust)}.m-backlog-section--overdue .m-backlog-section__count{background:var(--rust-soft);color:var(--rust)}.m-backlog-section__empty{margin:0;padding:6px 16px 12px;font-size:12px;color:var(--ink-3)}.m-overdue-chip{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;font-size:10.5px;font-weight:600;font-variant-numeric:tabular-nums;border:1px solid var(--line-2);vertical-align:middle}.m-overdue-chip--soft{background:#f0eeeb;color:var(--ink-3)}.m-overdue-chip--warn{background:#ffeccd;background:oklch(.95 .06 80);color:#744c00;color:oklch(.45 .1 75);border-color:#e6c99a}.m-overdue-chip--danger{background:#ffe9e3;background:oklch(.95 .05 35);color:#7b2813;border-color:#ecc3b8}.m-week__row-stable{font-size:14px;color:var(--ink-2);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-week__lane{background:var(--bg-2)}.m-week__lane .m-week__day-header{background:#eeebe2f5}.m-clients{position:relative}.m-clients__search{padding:0 20px 8px;background:var(--bg);position:sticky;top:0;z-index:1}.m-clients__search .list-search-input{height:48px;font-size:15px;padding-left:38px}.m-clients__main{flex:1;overflow-y:auto;padding:4px 20px calc(var(--safe-bottom) + 24px);-webkit-overflow-scrolling:touch}.m-clients__list{list-style:none;margin:0;padding:0}.m-clients__row-wrap{border-bottom:1px solid var(--line-2)}.m-clients__row{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:10px 0;background:transparent;border:none;text-align:left;color:inherit;-webkit-tap-highlight-color:transparent;cursor:pointer}.m-clients__row:active{background:var(--bg-2)}.m-clients__row-stack{display:flex;flex-direction:column;flex:1;min-width:0}.m-clients__row-name{font-size:16px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-clients__row-hint{font-size:12px;color:var(--ink-3);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-clients__row-town{font-size:14px;color:var(--ink-3);flex-shrink:0;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-clients__empty{text-align:center;color:var(--ink-3);font-size:14px;margin:64px 0;padding:0 24px}.m-clients__empty-block{text-align:center;margin:80px 0;padding:0 24px}.m-clients__empty-title{margin:0 0 6px;font-size:16px;font-weight:600;color:var(--ink)}.m-clients__empty-body{margin:0;font-size:14px;color:var(--ink-3)}.m-clients__more{list-style:none;text-align:center;font-size:13px;color:var(--ink-3);padding:16px 0 4px}.m-detail{flex:1;overflow-y:auto;padding:0 20px calc(var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch}.m-detail__section{padding:16px 0;border-bottom:1px solid var(--line-2)}.m-detail__section:last-child{border-bottom:none}.m-detail__section-title{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.m-detail__empty{margin:80px auto 0;text-align:center;padding:0 24px;max-width:360px}.m-detail__empty-title{margin:0 0 6px;font-size:17px;font-weight:600;color:var(--ink)}.m-detail__empty-body{margin:0 0 16px;font-size:14px;color:var(--ink-3)}.m-detail__empty-line{margin:0;font-size:14px;color:var(--ink-3)}.m-link{color:var(--forest);text-decoration:none;font-weight:500}.m-link:active{text-decoration:underline}.m-detail__contact{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.m-detail__contact-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 0;text-decoration:none;color:var(--ink-2);font-size:16px;-webkit-tap-highlight-color:transparent}.m-detail__contact-row--primary{color:var(--forest);font-size:18px;font-weight:500}.m-detail__contact-row:active{background:var(--bg-2)}.m-detail__contact-glyph{flex-shrink:0;width:24px;display:inline-flex;align-items:center;justify-content:center;color:currentColor}.m-detail__contact-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-detail__address{display:flex;flex-direction:column;gap:2px;padding:4px 0;font-size:15px;color:var(--ink-2);line-height:1.45}.m-detail__address--tappable{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:transparent;border:none;text-align:left;color:var(--forest);cursor:pointer;-webkit-tap-highlight-color:transparent}.m-detail__address--tappable:active{background:var(--bg-2)}.m-detail__address-line{display:block}.m-detail__list{list-style:none;margin:0;padding:0}.m-detail__list-row-wrap{border-bottom:1px solid var(--line-2)}.m-detail__list-row-wrap:last-child{border-bottom:none}.m-detail__list-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:10px 0;background:transparent;border:none;text-align:left;color:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-detail__list-row:active{background:var(--bg-2)}.m-detail__list-stack{display:flex;flex-direction:column;flex:1;min-width:0}.m-detail__list-name{font-size:16px;font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-detail__list-meta{font-size:13px;color:var(--ink-3);margin-top:2px}.m-detail__last-visit{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;flex-direction:column;gap:4px;background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-md);padding:12px 14px;text-align:left;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-detail__last-visit:active{background:var(--bg-2)}.m-detail__last-visit-date{font-size:15px;font-weight:500;color:var(--ink)}.m-detail__last-visit-sub{font-size:13px;color:var(--ink-3)}.m-detail__stats{margin:0;display:flex;flex-direction:column;gap:4px}.m-detail__stat{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;padding:4px 0}.m-detail__stat-label{font-size:13px;color:var(--ink-3)}.m-detail__stat-value{margin:0;font-size:15px;color:var(--ink);text-align:right;display:inline-flex;align-items:center;gap:8px}.m-detail__visit-block{display:flex;flex-direction:column;gap:2px}.m-detail__visit-date{margin:0;font-size:17px;font-weight:500;color:var(--ink)}.m-detail__visit-rel{margin:0;font-size:14px;color:var(--ink-3)}.m-detail__timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.m-detail__timeline-row{padding:12px 0;border-bottom:1px solid var(--line-2)}.m-detail__timeline-row:last-child{border-bottom:none}.m-detail__timeline-row--skipped{color:var(--ink-2)}.m-detail__timeline-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.m-detail__timeline-date{font-size:15px;font-weight:500;color:var(--ink)}.m-detail__timeline-status{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.m-detail__timeline-row--skipped .m-detail__timeline-status{color:#ac3225}.m-detail__timeline-stable,.m-detail__timeline-notes{margin:4px 0 0;font-size:13px;color:var(--ink-2);line-height:1.4}.m-confirm{display:flex;flex-direction:column;gap:12px;padding-bottom:4px}.m-confirm__body{margin:0;font-size:15px;line-height:1.4;color:var(--ink)}.m-confirm__actions{display:flex;gap:10px;margin-top:8px}.m-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-height:44px;border-radius:12px;font-size:15px;font-weight:600;border:none;-webkit-tap-highlight-color:transparent}.m-btn:active:not(:disabled){transform:scale(.98)}.m-btn:disabled{opacity:.45}.m-btn--ghost{background:var(--paper-2, transparent);color:var(--ink);border:1px solid var(--line)}.m-btn--danger{background:#b32325;color:var(--paper)}.m-btn--danger:active:not(:disabled){background:#a20615}.m-me .m-detail__section{padding:20px 0}.m-me .m-detail__section+.m-detail__section{margin-top:4px}.m-me__account{display:flex;align-items:center;gap:14px}.m-me__avatar{width:48px;height:48px;border-radius:50%;background:var(--forest);color:var(--paper);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:20px;flex-shrink:0}.m-me__account-text{display:flex;flex-direction:column;gap:2px;min-width:0}.m-me__name{margin:0;font-size:16px;font-weight:600;color:var(--ink)}.m-me__email{margin:0;font-size:14px;color:var(--ink-3);overflow-wrap:anywhere}.m-me__status{margin:0 0 12px;font-size:15px;color:var(--ink-2)}.m-me__status--warning{color:#9d6300;color:oklch(.55 .15 70)}.m-me__status--rust{color:#b32325;font-weight:500}.m-me__action-link{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:8px 0;font-size:16px;font-weight:500;color:var(--forest);cursor:pointer;text-align:left;min-height:44px}.m-me__action-link:active{text-decoration:underline}.m-me__action-link:disabled{opacity:.5;cursor:default}.m-me__field{display:flex;flex-direction:column;gap:6px;margin-top:12px}.m-me__field:first-child{margin-top:0}.m-me__field-label{font-size:13px;color:var(--ink-3);font-weight:500}.m-me__field-hint{font-size:13px;color:var(--ink-3)}.m-me__segmented{width:100%;display:grid;grid-template-columns:1fr 1fr}.m-me__segmented:has(>:nth-child(3)){grid-template-columns:1fr 1fr 1fr}.m-me__segmented .form-segmented-option{min-height:44px}.m-me__input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--line);background:var(--paper);font-size:16px;color:var(--ink)}.m-me__input:focus-visible{outline:none;border-color:var(--forest);box-shadow:inset var(--focus-ring)}.m-me__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.m-me__link{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:12px 0;font-size:16px;color:var(--forest);cursor:pointer;text-align:left;text-decoration:none;min-height:44px;display:block;width:100%}.m-me__link:active{text-decoration:underline}.m-me__danger{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.m-me__danger-link{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:10px 0;font-size:15px;color:#b32325;cursor:pointer;text-align:left;min-height:44px}.m-me__danger-link--small{font-size:13px;color:var(--ink-3)}.m-me__danger-link--small:active{color:#b32325}.m-me__sheet-body{margin:0 0 16px;font-size:15px;color:var(--ink-2);line-height:1.5}.m-me__sheet-actions{display:flex;flex-direction:column;gap:8px;padding-top:8px}.m-me__sheet-btn{width:100%;min-height:48px;font-size:16px}.m-me__error{margin:8px 0 0;font-size:14px;color:#b32325}.m-me__about{display:flex;flex-direction:column;gap:8px}.m-me__about-tagline{margin:0;font-size:16px;font-weight:500;color:var(--ink)}.m-me__about-version{margin:0 0 8px;font-size:13px;color:var(--ink-3);font-family:var(--font-mono, monospace)}.m-install{position:fixed;left:16px;right:16px;bottom:calc(var(--safe-bottom) + 56px + 12px);display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--paper);border-radius:var(--r-md);box-shadow:var(--shadow-md);z-index:60;font-size:13px;line-height:1.45;color:var(--ink)}.m-install__body{margin:0;flex:1}.m-install__inline-icon{color:var(--forest);font-weight:600;white-space:nowrap}.m-install__dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--ink-3);font-size:22px;line-height:1;padding:0 4px;cursor:pointer;flex-shrink:0;position:relative}.m-install__dismiss:before{content:"";position:absolute;top:-12px;right:-10px;bottom:-12px;left:-10px}.m-ptr-indicator{display:flex;justify-content:center;padding:8px 0 4px;pointer-events:none}.m-ptr-spinner{width:22px;height:22px;border:2.5px solid var(--line);border-top-color:var(--forest);border-radius:50%;transition:opacity .12s ease}.m-ptr-spinner--spin{animation:m-ptr-spin .7s linear infinite}@keyframes m-ptr-spin{to{transform:rotate(360deg)}}.m-tabbar__tab:focus-visible,.m-header__avatar:focus-visible,.m-header__back:focus-visible,.m-header__nav-action:focus-visible,.m-sheet__done:focus-visible,.m-today__row-link:focus-visible,.m-today__row-mark-done:focus-visible,.m-today__fab:focus-visible,.m-today__show-all:focus-visible,.m-week__row-link:focus-visible,.m-week__nav-btn:focus-visible,.m-week__nav-jump-today:focus-visible,.m-reschedule__opt:focus-visible,.m-unplanned__confirm:focus-visible,.m-actionsheet__action:focus-visible,.m-profile__lang-btn:focus-visible,.m-profile__logout:focus-visible,.m-profile__confirm-cancel:focus-visible,.m-profile__confirm-logout:focus-visible,.m-install__dismiss:focus-visible,.m-btn:focus-visible{outline:2px solid var(--forest);outline-offset:2px;border-radius:inherit}.catchup-route{display:flex;flex-direction:column;gap:16px;max-width:var(--content-max-width);margin:0 auto;width:100%;padding-bottom:80px}.catchup-header{display:flex;flex-direction:column;gap:4px}.catchup-title{margin:0;font-size:18px;font-weight:600;color:var(--ink)}.catchup-summary{margin:0;font-size:12.5px;color:var(--ink-3)}.catchup-skeleton{padding:8px 0}.catchup-section{display:flex;flex-direction:column;gap:12px;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.catchup-section-header{display:flex;align-items:center;gap:8px}.catchup-section-title{margin:0;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}.catchup-section-count{font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--ink-3);background:#f5f2e7;border:1px solid var(--line-2);border-radius:999px;min-width:22px;padding:1px 8px;text-align:center}.catchup-section-empty{margin:0;padding:12px;font-size:12px;font-style:italic;color:var(--ink-3);text-align:center}.catchup-day-group{display:flex;flex-direction:column;gap:8px;padding-bottom:8px;border-bottom:1px dashed var(--line-2)}.catchup-day-group:last-child{border-bottom:0;padding-bottom:0}.catchup-day-group-header{display:flex;align-items:center;gap:12px}.catchup-day-group-label{font-size:12.5px;font-weight:600;color:var(--ink)}.catchup-stable-groups{display:flex;flex-direction:column;gap:12px}.catchup-stable-group{display:flex;flex-direction:column;gap:6px}.catchup-stable-group-header{display:flex;align-items:center;gap:12px}.catchup-stable-group-name{font-size:13px;font-weight:600;color:var(--ink)}.catchup-stable-group-actions{margin-left:auto;display:inline-flex;gap:6px}.catchup-stable-group-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--paper);border:1px solid var(--line);border-radius:6px;font:inherit;font-size:11.5px;padding:3px 8px;cursor:pointer;color:var(--ink);transition:background .12s ease,border-color .12s ease,color .12s ease}.catchup-stable-group-action:hover{background:#f5f2e7;border-color:#bcb7a9;color:var(--ink)}.catchup-stable-group-action:focus-visible{outline:none;box-shadow:var(--focus-ring)}.catchup-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.catchup-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);position:relative}.catchup-row:hover{border-color:#bcb7a9}.catchup-row--selected{border-color:var(--forest);background:var(--forest-soft)}.catchup-row-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--forest)}.catchup-row-link{display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--ink);min-width:0}.catchup-row-name{font-size:14px;font-weight:600;color:var(--forest-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catchup-row-link:hover .catchup-row-name,.catchup-row-link:focus-visible .catchup-row-name{text-decoration:underline;text-underline-offset:2px}.catchup-row-stable,.catchup-row-last-visit,.catchup-row-subtitle{font-size:11px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catchup-row-chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;border:1px solid var(--line-2)}.catchup-row-chip--soft{background:var(--rust-soft);color:#833e2d;border-color:#f1cfc6}.catchup-row-chip--warn{background:var(--rust-soft);color:#7b2813;border-color:#ecc3b8}.catchup-row-chip--danger{background:var(--rust);color:var(--paper);border-color:var(--rust)}.catchup-row-chip--none{background:transparent;border:0;color:var(--ink-3)}.catchup-row-scheduled{font-size:11.5px;color:var(--ink-3);white-space:nowrap}.catchup-row-meta{display:inline-flex;align-items:center;gap:8px}.catchup-row-shoeing{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--forest-soft);color:var(--forest-ink);font-size:11px;font-weight:600;letter-spacing:.02em}.catchup-row-interval{font-size:11.5px;color:var(--ink-3);font-variant-numeric:tabular-nums}.catchup-row-actions{display:inline-flex;align-items:center;gap:6px}.catchup-row-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:var(--paper);border:1px solid var(--line);border-radius:8px;color:var(--ink-3);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.catchup-row-menu-trigger:hover,.catchup-row-menu-trigger[aria-expanded=true]{background:#f5f2e7;border-color:#bcb7a9;color:var(--ink)}.catchup-row-menu-trigger:focus-visible{outline:none;box-shadow:var(--focus-ring)}.catchup-row-menu{z-index:50;min-width:200px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 32px #0000001f;padding:6px;display:flex;flex-direction:column;gap:2px}.catchup-row-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;text-align:left;font:inherit;font-size:12.5px;color:var(--ink);padding:8px 10px;border-radius:6px;cursor:pointer}.catchup-row-menu-item:hover{background:#f5f2e7}.catchup-row-menu-item--couldnotdo{color:#7b2813}.catchup-row-menu-date{font:inherit;padding:6px 8px;border:1px solid var(--line);border-radius:6px}.catchup-row-date{font:inherit;padding:2px 4px;border:1px solid var(--line);border-radius:6px}.catchup-selection-bar{position:sticky;bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--ink);color:var(--paper);border:1px solid oklch(0 0 0 / .2);border-radius:12px;box-shadow:0 1px #ffffff0f inset,0 14px 36px -10px #00000073,0 4px 10px -4px #0000004d;z-index:10}.catchup-selection-bar-lead{display:inline-flex;align-items:center;gap:12px}.catchup-selection-bar-count{font-weight:600;font-size:13px;color:var(--paper)}.catchup-selection-bar-actions{display:inline-flex;gap:8px}.catchup-selection-bar-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:4px 8px;margin-left:-4px;font:inherit;font-size:12.5px;color:#ffffffb8;cursor:pointer;border-radius:6px;transition:background .12s ease,color .12s ease}.catchup-selection-bar-cancel:hover{background:#ffffff1a;color:var(--paper)}.catchup-selection-bar-cancel:focus-visible{outline:none;box-shadow:var(--focus-ring)}.catchup-selection-bar .catchup-stable-group-action{background:#ffffff14;border-color:#ffffff29;color:var(--paper)}.catchup-selection-bar .catchup-stable-group-action:hover{background:#ffffff24;border-color:#ffffff3d;color:var(--paper)}.catchup-route--has-selection .catchup-row:not(.catchup-row--selected){opacity:.55;transition:opacity .16s ease}.m-catchup{display:flex;flex-direction:column}.m-catchup__scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 0 calc(80px + var(--safe-bottom))}.m-catchup__summary{margin:12px 16px 4px;font-size:12px;color:var(--ink-3)}.m-catchup__loading{margin:24px 16px;font-size:14px;color:var(--ink-3);text-align:center}.m-catchup__empty{margin:32px 16px;text-align:center}.m-catchup__empty-title{margin:0 0 6px;font-size:18px;font-weight:600;color:var(--forest)}.m-catchup__empty-body{margin:0;font-size:13px;color:var(--ink-3)}.m-catchup__section{margin:8px 0 0}.m-catchup__section-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:10px 16px 4px;position:sticky;top:0;background:#fbf8f0f5;backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);z-index:1}.m-catchup__section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin:0}.m-catchup__section-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 7px;border-radius:999px;background:var(--bg-2);color:var(--ink-2);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.m-catchup__day{margin-top:4px}.m-catchup__day-label{padding:4px 16px;font-size:12px;font-weight:600;color:var(--ink-2)}.m-stable-group--catchup .m-stable-group__header--catchup{position:relative;background:transparent;padding:8px 16px 6px;-webkit-tap-highlight-color:transparent}.m-stable-group--catchup .m-stable-group__menu{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;margin-left:6px;padding:4px 6px;border-radius:8px;color:var(--ink-3);cursor:pointer}.m-stable-group--catchup .m-stable-group__menu:active{background:var(--bg-2)}.m-catchup__rows{list-style:none;margin:0;padding:0}.m-catchup__row{border-top:1px solid var(--line-2)}.m-catchup__row:first-child{border-top:0}.m-catchup__row-link{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:2px 8px;padding:10px 16px;text-decoration:none;color:inherit;background:var(--paper);-webkit-tap-highlight-color:transparent}.m-catchup__row-name{grid-column:1;font-size:16px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:6px}.m-catchup__row-link .m-overdue-chip{grid-column:2;grid-row:1;align-self:center;margin-left:0}.m-catchup__row-subtitle{grid-column:1 / span 2;grid-row:2;font-size:12px;color:var(--ink-3)}.m-catchup__row-meta{grid-column:2;grid-row:2;display:inline-flex;align-items:center;gap:6px;justify-self:end}.m-catchup__row-shoeing{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 6px;border-radius:6px;background:var(--forest-soft);color:var(--forest-ink);font-size:10px;font-weight:600}.m-catchup__row-interval{font-size:11px;color:var(--ink-3);font-variant-numeric:tabular-nums}.m-today__catchup-banner{display:block;margin:8px 16px 0;padding:10px 14px;border-radius:12px;background:var(--rust-soft);color:var(--rust);font-size:13px;font-weight:500;text-decoration:none;border:1px solid oklch(.85 .05 35)}.m-today__catchup-banner:active{background:#ffe0d8;background:oklch(.93 .06 35)}.m-skip-sheet{padding:4px 20px 24px;display:flex;flex-direction:column;gap:16px}.m-skip-sheet__field{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.m-skip-sheet__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3)}.m-skip-sheet__chips{display:flex;flex-wrap:wrap;gap:6px}.m-skip-sheet__chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--paper);border:1px solid var(--line-2);border-radius:999px;padding:8px 14px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer}.m-skip-sheet__chip.is-active{background:var(--forest-soft);color:var(--forest-ink);border-color:var(--forest)}.m-skip-sheet__input,.m-skip-sheet__select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:inherit;font-size:16px;color:var(--ink)}.m-skip-sheet__error{margin:0;font-size:13px;color:var(--rust)}.m-skip-sheet__actions{display:flex;gap:8px;justify-content:flex-end}.m-skip-sheet__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:10px;padding:10px 16px;font:inherit;font-size:14px;font-weight:500;cursor:pointer}.m-skip-sheet__btn--ghost{background:transparent;color:var(--ink-2)}.m-skip-sheet__btn--primary{background:var(--forest);color:var(--paper)}.m-skip-sheet__btn:disabled{opacity:.5}.address-pin-group{display:flex;flex-direction:column;gap:20px}.address-pin-section{display:flex;flex-direction:column;gap:12px;padding-top:12px;border-top:1px solid var(--line)}.address-pin-section:first-of-type{padding-top:0;border-top:none}.address-pin-section-label{margin:0;font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.address-pin-group .form-row{display:grid;grid-template-columns:minmax(120px,.4fr) 1fr;gap:12px}.address-pin-group .address-postal-code,.address-pin-group .address-town{min-width:0}.address-pin-map-block{display:flex;flex-direction:column;align-items:stretch;gap:12px}.address-pin-map-body{display:flex;flex-direction:column;gap:6px;min-width:0}.address-pin-caption{margin:0;font-size:12.5px;line-height:1.45;color:var(--ink-2)}.address-pin-reset,.address-pin-compare-action{align-self:flex-start;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;background:transparent;border:none;font:inherit;font-size:12.5px;font-weight:500;color:var(--forest);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.address-pin-reset:hover,.address-pin-compare-action:hover,.address-pin-reset:focus-visible,.address-pin-compare-action:focus-visible{color:var(--forest-deep, var(--forest));outline:none}.address-pin-reset:disabled,.address-pin-compare-action:disabled{color:var(--ink-3, var(--ink-2));cursor:not-allowed;text-decoration:none}.address-pin-compare{margin:0;padding:10px 12px 10px 14px;font-size:13px;line-height:1.45;background:var(--leather-soft);border:1px solid var(--leather);border-left-width:4px;border-radius:8px;color:var(--leather-ink)}.address-pin-compare-label{font-weight:500;color:var(--leather-ink)}.address-pin-compare .address-pin-compare-action{color:var(--leather-ink);font-weight:600}.address-pin-compare .address-pin-compare-action:hover,.address-pin-compare .address-pin-compare-action:focus-visible{color:var(--leather);text-decoration-color:currentColor}.address-autocomplete{position:relative}.address-autocomplete-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;margin:0;padding:4px;list-style:none;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-md);max-height:280px;overflow-y:auto}.address-autocomplete-option{display:flex;flex-direction:column;gap:2px;padding:7px 10px;font-size:13.5px;color:var(--ink);border-radius:6px;cursor:pointer}.address-autocomplete-option--active{background:var(--forest-soft);color:var(--forest-ink)}.address-autocomplete-option-name{font-weight:500}.address-autocomplete-option-secondary{font-size:12.5px;color:var(--ink-2)}.address-autocomplete-option--active .address-autocomplete-option-secondary{color:var(--forest-ink);opacity:.85}.address-autocomplete-state{padding:8px 10px;font-size:12.5px;color:var(--ink-2);font-style:italic}.address-pin-manual-toggle{align-self:flex-start;margin-top:-4px;padding:2px 0;background:transparent;border:0;font-size:12.5px;color:var(--forest);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px;cursor:pointer}.address-pin-manual-toggle:hover,.address-pin-manual-toggle:focus-visible{color:var(--forest-ink);text-decoration-color:currentColor;outline:none}.address-pin-manual-toggle:disabled{cursor:not-allowed;opacity:.6}.address-pin-manual{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px dashed var(--line);border-radius:8px;background:var(--bg-2, oklch(.98 0 0))}.address-pin-manual-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.address-pin-manual-label{font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.address-pin-manual-collapse{background:transparent;border:0;padding:0;font-size:12.5px;color:var(--ink-2);text-decoration:underline;cursor:pointer}.address-pin-manual-collapse:hover,.address-pin-manual-collapse:focus-visible{color:var(--ink);outline:none}.address-pin-manual-collapse:disabled{cursor:not-allowed;opacity:.6}.address-autocomplete-empty-cta{display:block;width:100%;text-align:left;background:transparent;border:0;padding:0;margin:0;font:inherit;color:var(--forest);cursor:pointer}.address-autocomplete-empty-cta:hover,.address-autocomplete-empty-cta:focus-visible{color:var(--forest-ink);outline:none}.address-pin-preview{position:relative;display:block;width:100%;aspect-ratio:16 / 7;padding:0;background:transparent;border:1px solid var(--line);border-radius:8px;overflow:hidden;line-height:0;text-decoration:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .12s ease,box-shadow .12s ease}.address-pin-preview:hover,.address-pin-preview:focus-visible{border-color:var(--forest);box-shadow:0 0 0 1px var(--forest)}.address-pin-preview:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.address-pin-preview-overlay{position:absolute;inset:auto 0 0 0;padding:6px 10px;background:#0000008c;color:#fff;font-size:12px;font-weight:500;line-height:1.2;text-align:center;opacity:0;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;pointer-events:none}.address-pin-preview:hover .address-pin-preview-overlay,.address-pin-preview:focus-visible .address-pin-preview-overlay{opacity:1;transform:translateY(0)}.stable-address{display:flex;flex-direction:column;gap:2px;margin:0;font-style:normal;color:var(--ink-1);font-size:14px;line-height:1.45}.stable-address-line{display:block}.stable-address-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.stable-address-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font:inherit;font-size:12.5px;font-weight:500;color:var(--ink-2);background:var(--bg-2);border:1px solid var(--line);border-radius:999px;cursor:pointer;text-decoration:none;transition:background-color .12s ease,color .12s ease,border-color .12s ease}.stable-address-action:hover,.stable-address-action:focus-visible{outline:none;color:var(--forest);background:var(--forest-soft);border-color:#c2d7c9}.address-pin-empty{display:flex;flex-direction:column;gap:8px;margin-top:8px}.address-pin-empty-cta{align-self:flex-start}.address-diff-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.address-diff-row{border:1px solid var(--line);border-radius:8px;background:var(--paper)}.address-diff-label{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;cursor:pointer}.address-diff-label input[type=checkbox]{margin-top:3px;flex:0 0 auto}.address-diff-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 auto}.address-diff-field{font-size:12px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em}.address-diff-values{display:flex;align-items:center;gap:8px;font-size:13.5px;flex-wrap:wrap}.address-diff-current{color:var(--ink-2);text-decoration:line-through;text-decoration-color:#0003}.address-diff-arrow{color:var(--ink-2)}.address-diff-suggested{color:var(--forest);font-weight:500}.address-pin-preview img{display:block;width:100%;height:100%;object-fit:cover}.address-pin-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.address-pin-status{font-size:12px;font-weight:500}.address-pin-status.is-set{color:var(--forest)}.address-pin-status.is-empty{color:var(--ink-2)}.address-pin-status.is-set.is-auto{color:var(--amber, #b3801c)}.address-pin-auto-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;background:#c7932524;color:var(--amber, #b3801c);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;vertical-align:1px}.address-pin-actions{display:flex;gap:6px}.pin-picker-map{position:relative;width:100%;height:clamp(280px,55vh,480px);border:1px solid var(--line);border-radius:8px;overflow:hidden}.pin-picker-hint{position:absolute;left:12px;bottom:12px;margin:0;padding:6px 10px;background:#ffffffeb;color:var(--ink-1);border:1px solid var(--line);border-radius:6px;font-size:12px;pointer-events:none}.pin-picker-search{position:absolute;top:12px;left:12px;right:12px;z-index:20;max-width:420px;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-md);padding:6px}.pin-picker-search .address-autocomplete-input{background:transparent;border:0;box-shadow:none;padding:5px 8px}.pin-picker-search .address-autocomplete-input:focus-visible{border:0;box-shadow:none}.pin-picker-fallback{margin:0;padding:16px;background:var(--leather-soft);border:1px solid var(--leather);border-radius:8px;color:var(--leather-ink, var(--ink-1));font-size:13.5px}.pin-picker-reset,.pin-picker-footer-spacer{margin-right:auto}.mapboxgl-marker svg circle{fill:var(--forest)}.horse-form-new-stable-details{padding:12px;background:var(--forest-soft);border:1px dashed var(--forest);border-radius:8px}.manage-stables-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px}.manage-stables-list-title{margin:0;font-size:14px;font-weight:600;color:var(--ink-1)}.manage-stables-list{list-style:none;margin:0 0 16px;padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.manage-stables-list-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--paper)}.manage-stables-list-item:last-child{border-bottom:none}.manage-stables-list-name{flex:1 1 auto;font-size:13.5px;font-weight:500;color:var(--ink-1)}.manage-stables-list-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ink-2)}.manage-stables-count{white-space:nowrap}.settings-page{max-width:720px;margin:0 auto;padding:24px 0}.settings-section{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;margin-bottom:20px}.settings-section-head{margin-bottom:16px}.settings-section-title{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--ink-1)}.settings-section-help{margin:0;font-size:13px;color:var(--ink-2)}.settings-section-body{display:flex;flex-direction:column;gap:12px}.settings-subsection-title{margin:0;font-size:13.5px;font-weight:600;color:var(--ink-1)}.settings-subsection-help{margin:4px 0 12px;font-size:12.5px;color:var(--ink-3);max-width:56ch}.settings-workday-start{margin-top:18px;padding-top:18px;border-top:1px solid var(--line-2)}.settings-workday-start-field{display:inline-flex;flex-direction:column;gap:4px}.settings-workday-start-label{font-size:12.5px;color:var(--ink-2);font-weight:500}.settings-workday-start-input{font-family:inherit;font-size:14px;padding:6px 10px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--paper);color:var(--ink);width:140px}.settings-workday-start-input:focus-visible{outline:none;border-color:var(--forest);box-shadow:var(--focus-ring)}.settings-vehicle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 16px}.settings-fuel-price-field{margin-top:14px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);background:color-mix(in oklch,var(--paper) 92%,var(--ink-3));gap:6px}.settings-fuel-price-row{display:flex;gap:8px;align-items:stretch}.settings-fuel-price-input{flex:1 1 auto;min-width:0}.settings-fuel-price-value{margin:0;font-size:15px;color:var(--ink-1);font-variant-numeric:tabular-nums}.settings-fuel-price-meta{font-size:13px;color:var(--ink-3);font-weight:400}.settings-fuel-price-updated{margin:2px 0 0;font-size:12.5px;color:var(--ink-3)}.settings-fuel-price-loading{font-style:italic}.settings-fuel-price-help{margin:0;font-size:13px;color:var(--ink-2);line-height:1.4}.settings-fuel-price-note{margin:0;font-size:12.5px;color:var(--ink-3);line-height:1.4;font-style:italic}.settings-fuel-price-error{color:var(--rust)}.settings-fuel-price-actions{display:flex;gap:8px;margin-top:6px}.settings-vehicle-class{margin-top:18px;padding-top:18px;border-top:1px solid var(--line-2)}.vehicle-class-picker{margin-top:10px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.vehicle-class-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;padding:12px 6px 10px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink-2);cursor:pointer;font-family:inherit;text-align:center;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.vehicle-class-card:hover:not(:disabled){border-color:var(--ink-3);color:var(--ink-1)}.vehicle-class-card:focus-visible{outline:none;border-color:var(--forest);box-shadow:var(--focus-ring)}.vehicle-class-card[data-selected=true]{border-color:var(--forest);background:color-mix(in oklch,var(--forest) 8%,var(--paper));color:var(--forest)}.vehicle-class-card:disabled{opacity:.5;cursor:not-allowed}.vehicle-class-icon{display:inline-flex;align-items:center;justify-content:center;height:22px}.vehicle-class-label{font-size:12.5px;font-weight:600;color:var(--ink-1)}.vehicle-class-card[data-selected=true] .vehicle-class-label{color:var(--forest)}.vehicle-class-spec{font-size:11px;color:var(--ink-3);line-height:1.25;font-variant-numeric:tabular-nums}.settings-field{display:flex;flex-direction:column;gap:4px}.settings-field-label{font-size:12.5px;color:var(--ink-2);font-weight:500}.settings-input{font-family:inherit;font-size:14px;padding:6px 10px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--paper);color:var(--ink)}.settings-input:focus-visible{outline:none;border-color:var(--forest);box-shadow:var(--focus-ring)}.week-section-plan-button{margin-left:auto}.week-section--planning{border:1px solid oklch(.85 .04 95);border-radius:12px;padding:10px;background:#fdfcf8}.plan-week-banner{display:flex;flex-direction:column;gap:12px;margin:12px 0;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.plan-week-banner--loading{padding-top:0;background:linear-gradient(180deg,var(--leather-soft) 0%,var(--paper) 60%);border-color:var(--leather)}.plan-week-banner-progress{position:relative;height:3px;margin:-14px -16px 12px;border-radius:10px 10px 0 0;overflow:hidden;background:var(--line-2)}.plan-week-banner-progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--leather) 0%,var(--forest) 100%);transition:width .48s cubic-bezier(.25,.8,.25,1)}.plan-week-banner-loading-step{margin:0;font-size:14px;color:var(--ink)}.plan-week-banner--error{border-color:#ff958d;border-color:oklch(.78 .13 25);background:#fff6f5;background:oklch(.98 .02 25)}.plan-week-banner--preview{border-color:var(--forest);background:#f5fbf0;animation:plan-week-banner-rise .32s cubic-bezier(.25,.8,.25,1) both}@keyframes plan-week-banner-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.plan-week-banner-message{margin:0;font-size:14px;color:var(--ink)}.plan-week-banner-summary{display:flex;flex-direction:column;gap:8px}.plan-week-banner-title{margin:0;font-size:15px;font-weight:600;color:var(--forest)}.plan-week-banner-hero{display:flex;flex-direction:column;gap:4px;padding:4px 0 6px}.plan-week-banner-hero-figure{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;color:var(--forest)}.plan-week-banner-hero-value{font-size:38px;line-height:1;font-weight:700;letter-spacing:-.01em;animation:plan-week-hero-pulse .32s cubic-bezier(.25,.8,.25,1) .8s 1 both;display:inline-block;transform-origin:center}.plan-week-banner-hero-label{font-size:14px;font-weight:500;color:var(--forest-ink)}@keyframes plan-week-hero-pulse{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.plan-week-banner-hero-secondary{margin:0;font-size:13px;color:var(--ink-2)}.plan-week-banner-hero-framing{margin:2px 0 0;font-size:13px;color:var(--leather-ink);font-style:italic}.plan-week-banner-before-after{margin:0;font-size:12px;color:var(--ink-2);display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px}.plan-week-banner-before-after-current{text-decoration:line-through;text-decoration-color:var(--ink-3)}.plan-week-banner-before-after-arrow{color:var(--ink-3)}.plan-week-banner-before-after-proposed{color:var(--ink);font-weight:500}.plan-week-banner-skipped-note{margin:2px 0 0;font-size:12px;color:var(--ink-2);font-style:italic}.plan-week-banner-gate{margin:0;padding:8px 10px;background:#fff3e8;border-left:3px solid var(--leather);border-radius:4px;font-size:13px;color:var(--ink)}.plan-week-banner-backlog{font-size:13px;color:var(--ink)}.plan-week-banner-backlog>summary{cursor:pointer;padding:4px 0}.plan-week-banner-backlog-shortcuts{display:flex;gap:8px;margin:6px 0;font-size:12px}.plan-week-banner-backlog-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.plan-week-banner-backlog-list label{display:inline-flex;align-items:baseline;gap:6px;cursor:pointer}.plan-week-banner-backlog-detail{font-size:12px;color:var(--ink-2);font-weight:400}.plan-week-banner-skipped{padding:10px 12px;background:#fff3e8;border-radius:6px;font-size:13px;color:var(--ink)}.plan-week-banner-skipped-title{margin:0 0 4px;font-weight:500}.plan-week-banner-skipped-list{margin:0;padding-left:18px}.plan-week-banner-skipped-help{margin:6px 0 0;font-size:12px;color:var(--ink-2)}.plan-week-banner-generated-at{margin:2px 0 0;font-size:12px;color:var(--ink-2)}.plan-week-banner--restoring{min-height:48px;display:flex;align-items:center}.plan-week-banner-skipped-row{list-style:none;margin:6px 0 0;padding:6px 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.plan-week-banner-skipped-row:first-child{border-top:0;margin-top:4px;padding-top:0}.plan-week-banner-skipped-row-summary{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.plan-week-banner-skipped-row-detail{font-size:12px;color:var(--ink-2)}.plan-week-banner-skipped-actions{display:flex;flex-wrap:wrap;gap:8px 12px;border:0;padding:0;margin:0;font-size:12px}.plan-week-banner-skipped-actions label{display:inline-flex;align-items:center;gap:4px}.plan-week-banner-skipped-day-select{padding:2px 4px;font-size:12px}.plan-week-banner-actions{display:flex;flex-wrap:wrap;gap:8px}.week-grid--preview{background:#fafdf7;border-radius:8px}.stable-bundle--proposed-move{outline:2px solid var(--forest);outline-offset:1px;background:var(--forest-soft)}.stable-bundle--just-applied{animation:stable-bundle-just-applied .28s cubic-bezier(.25,.8,.25,1) both}@keyframes stable-bundle-just-applied{0%{opacity:.4;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.stable-bundle--just-applied,.plan-week-banner-hero-value,.plan-week-banner--preview{animation:none}}.settings-working-days{margin-top:12px}.settings-working-days-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.settings-working-days-chip{position:relative;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--ink);background:var(--paper);cursor:pointer;-webkit-user-select:none;user-select:none}.settings-working-days-chip input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none}.settings-working-days-chip--active{background:var(--forest);border-color:var(--forest);color:#f8f5ee}.settings-day-weights{margin-top:16px}.settings-day-weights-rows{display:flex;flex-direction:column;gap:8px;margin-top:8px}.settings-day-weights-row{display:flex;align-items:center;gap:16px}.settings-day-weights-row-label{min-width:56px;font-size:13px;color:var(--ink)}.settings-day-weights-row--disabled .settings-day-weights-row-label{color:var(--ink-muted)}.settings-day-weights-options{display:inline-flex;gap:6px}.settings-day-weights-option{position:relative;display:inline-flex;align-items:center;padding:4px 10px;border:1px solid var(--line);border-radius:999px;font-size:13px;color:var(--ink);background:var(--paper);cursor:pointer;-webkit-user-select:none;user-select:none}.settings-day-weights-option input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none}.settings-day-weights-option--active{background:var(--forest);border-color:var(--forest);color:#f8f5ee}.settings-day-weights-option--disabled{opacity:.5;cursor:not-allowed}.settings-schedule-fields{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:10px}.settings-schedule-time{display:flex;flex-direction:column;gap:4px}.settings-truck-grid{margin-top:8px}.settings-fuel-price-heading{display:inline-flex;align-items:center;gap:5px}.settings-fuel-price-info{font-size:11px;color:var(--ink-3);cursor:default;-webkit-user-select:none;user-select:none;line-height:1}.settings-fuel-price-info:hover{color:var(--ink-2)}.settings-identity-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line-2)}.settings-identity-row:last-child{border-bottom:0}.settings-identity-row-label{flex:0 0 96px;font-size:12.5px;font-weight:500;color:var(--ink-2)}.settings-identity-row-value{flex:1;min-width:0;font-size:13.5px;color:var(--ink-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-identity-row-value--mask{letter-spacing:2px}.settings-identity-row-action{flex:0 0 auto}.settings-account-actions{display:flex;gap:8px;flex-wrap:wrap}.settings-account-logout{color:var(--rust)}.settings-account-logout:hover{background:color-mix(in oklch,var(--rust) 10%,transparent);border-color:var(--rust)}.settings-toggle{display:inline-flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.settings-toggle-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.settings-toggle-track{position:relative;display:inline-block;flex:0 0 auto;width:36px;height:20px;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);transition:background .18s ease,border-color .18s ease}.settings-toggle-thumb{position:absolute;top:50%;left:2px;width:14px;height:14px;border-radius:50%;background:var(--paper);box-shadow:0 1px 2px #0000001f;transform:translateY(-50%);transition:transform .18s ease,background .18s ease}.settings-toggle-input:checked+.settings-toggle-track{background:var(--forest);border-color:var(--forest)}.settings-toggle-input:checked+.settings-toggle-track .settings-toggle-thumb{transform:translate(18px,-50%);background:#f8f5ee}.settings-toggle-input:focus-visible+.settings-toggle-track{box-shadow:0 0 0 3px #1c3a271f}.settings-toggle-input:disabled+.settings-toggle-track{opacity:.5}.settings-toggle:has(.settings-toggle-input:disabled){cursor:not-allowed}.settings-toggle-label{font-size:13.5px;color:var(--ink-1)}.settings-cp-form{display:flex;flex-direction:column;gap:14px}.settings-sticky-bar{position:sticky;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--ink);color:var(--paper);border:1px solid oklch(0 0 0 / .2);border-radius:var(--r-lg);box-shadow:0 1px #ffffff0f inset,0 14px 36px -10px #00000073,0 4px 10px -4px #0000004d;margin-top:8px;z-index:10}.settings-sticky-bar-lead{display:inline-flex;align-items:center;gap:12px}.settings-sticky-bar-text{font-size:13px;color:var(--paper);font-weight:500}.settings-sticky-bar-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:4px 8px;margin-left:-4px;font:inherit;font-size:12.5px;color:#ffffffb8;cursor:pointer;border-radius:6px;transition:background .12s ease,color .12s ease}.settings-sticky-bar-cancel:hover{background:#ffffff1a;color:var(--paper)}.settings-sticky-bar-cancel:focus-visible{outline:none;box-shadow:var(--focus-ring)}.settings-sticky-bar-cancel:disabled{opacity:.5;cursor:not-allowed}.user-menu-pill{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;height:22px;padding:0 10px;margin-bottom:8px;border-radius:999px;font-size:11px;font-weight:600;text-decoration:none;border:1px solid transparent}.user-menu-pill--trial{background:var(--leather-soft);color:var(--leather-ink);border-color:var(--leather-soft)}.user-menu-pill--past-due{background:var(--rust-soft);color:var(--rust);border-color:var(--rust-soft)}.user-menu-pill--read-only{background:var(--bg-2);color:var(--ink-2);border-color:var(--line)}.user-menu-pill:hover{filter:brightness(.97)}.user-menu-pill:focus-visible{outline:none;box-shadow:var(--focus-ring)}.plan-page{display:flex;flex-direction:column;gap:20px;max-width:880px;margin:0 auto;padding:24px 0 48px}.plan-skeleton{height:200px;background:var(--bg-2);border-radius:var(--r-md);animation:plan-skeleton-pulse 1.2s ease-in-out infinite}@keyframes plan-skeleton-pulse{0%,to{opacity:.6}50%{opacity:.4}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.plan-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.plan-hero-text{display:flex;flex-direction:column;gap:4px;min-width:0}.plan-hero-title{font-size:20px;font-weight:700;color:var(--ink);margin:0}.plan-hero-subtitle{font-size:14px;color:var(--ink-2);margin:0}.plan-hero--trialing{border-left:4px solid var(--leather)}.plan-hero--active{border-left:4px solid var(--forest)}.plan-hero--past-due{border-left:4px solid var(--rust);background:var(--rust-soft)}.plan-hero--canceled{border-left:4px solid var(--ink-3)}.plan-hero--expired{border-left:4px solid var(--rust);background:var(--rust-soft)}.plan-picker{display:flex;flex-direction:column;gap:16px;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.plan-picker-title{font-size:16px;font-weight:700;color:var(--ink);margin:0}.plan-picker-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plan-picker-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-md)}.plan-picker-card--featured{border-color:var(--forest);background:var(--forest-soft)}.plan-picker-card-head{display:flex;flex-direction:column;gap:4px}.plan-picker-card-label{font-size:13px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;margin:0}.plan-picker-card-price{font-size:22px;font-weight:700;color:var(--ink);margin:0}.plan-picker-card-price-ttc{font-size:12px;color:var(--ink-3);margin:2px 0 0}.plan-picker-card-savings{font-size:12px;color:var(--forest-ink);margin:0}.plan-picker-badge{position:absolute;top:12px;right:12px;background:var(--forest);color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px}.plan-picker-card-cta{align-self:flex-start}.plan-picker-includes{border-top:1px solid var(--line);padding-top:16px}.plan-picker-includes-title{font-size:13px;font-weight:600;color:var(--ink-2);margin:0 0 8px}.plan-picker-includes-list{margin:0;padding-left:18px;font-size:13px;color:var(--ink);line-height:1.6}.plan-picker-tax{font-size:12px;color:var(--ink-3);margin:12px 0 0}.plan-trust{text-align:center;font-size:12px;color:var(--ink-3);margin:-8px 0 0}.resubscribe-modal-lead{margin:0 0 16px;color:var(--ink-2);font-size:14px}.resubscribe-modal-options{display:flex;flex-direction:column;gap:10px;padding:0;margin:0;border:0}.resubscribe-modal-row{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);cursor:pointer;transition:border-color .12s ease,background-color .12s ease}.resubscribe-modal-row:hover{border-color:var(--ink-3)}.resubscribe-modal-row--checked{border-color:var(--forest);background:var(--forest-soft, var(--paper));box-shadow:0 0 0 1px var(--forest) inset}.resubscribe-modal-radio{margin-top:2px;accent-color:var(--forest)}.resubscribe-modal-row-body{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.resubscribe-modal-row-head{display:flex;align-items:center;gap:8px}.resubscribe-modal-row-label{font-weight:600;color:var(--ink)}.resubscribe-modal-row-price{font-size:13px;color:var(--ink-2)}.resubscribe-modal-row-price-ttc{font-size:12px;color:var(--ink-3)}.resubscribe-modal-badge{background:var(--forest);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}.resubscribe-modal-actions{display:flex;justify-content:flex-end;gap:8px}.plan-section{display:flex;flex-direction:column;gap:12px;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.plan-section-title{font-size:16px;font-weight:700;color:var(--ink);margin:0}.plan-section-lead{font-size:13px;color:var(--ink-2);margin:0;line-height:1.5}.plan-section-empty{font-size:13px;color:var(--ink-3);font-style:italic;margin:0}.plan-invoices-table{width:100%;border-collapse:collapse;font-size:13px}.plan-invoices-table th,.plan-invoices-table td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line-2)}.plan-invoices-table th{font-weight:600;color:var(--ink-3);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.plan-invoices-col-action{text-align:right}.plan-invoices-link{color:var(--forest);font-weight:600;text-decoration:none}.plan-invoices-link:hover{text-decoration:underline}.plan-export-counts{font-size:12px;color:var(--ink-3);margin:0}.import-card-actions{display:flex;flex-wrap:wrap;gap:10px}.import-locked-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.import-premium-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--leather-ink);background:var(--leather-soft);border-radius:999px;white-space:nowrap}.import-premium-badge svg{width:10px;height:10px}.import-locked-note{font-size:13px;color:var(--ink-2);margin:0;line-height:1.5}.import-section--locked .btn-primary{align-self:flex-start}.import-step{display:flex;flex-direction:column;gap:16px}.import-file-chosen{font-size:13px;color:var(--ink-2);margin:0}.import-error-text{font-size:13px;color:var(--rust);margin:0;font-weight:600}.import-map-hint{font-size:12px;color:var(--ink-3);margin:-4px 0 0;line-height:1.5}.import-map-sheet{display:flex;flex-direction:column;gap:8px}.import-map-sheet-title{font-size:13px;font-weight:700;color:var(--ink-2);margin:4px 0 0}.import-map-table{width:100%;border-collapse:collapse;font-size:13px}.import-map-table th{text-align:left;padding:6px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);font-weight:600;border-bottom:1px solid var(--line-2)}.import-map-table td{padding:8px;border-bottom:1px solid var(--line-2);vertical-align:middle}.import-map-col{display:block;font-weight:600;color:var(--ink)}.import-map-sample{display:block;font-size:11px;color:var(--ink-3);margin-top:2px}.import-map-select{width:100%;max-width:280px;padding:6px 8px;font-size:13px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm)}.import-preview-heading{font-size:14px;font-weight:700;color:var(--ink);margin:0}.import-preview-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.import-preview-row{display:flex;gap:12px;font-size:13px;align-items:baseline}.import-preview-entity{flex:0 0 96px;font-weight:700;color:var(--ink)}.import-preview-segments{color:var(--ink-2)}.import-preview-errors{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--line-2)}.import-link-button{background:none;border:none;padding:0;font-size:13px;color:var(--forest);font-weight:600;cursor:pointer;text-decoration:underline}.import-preview-warnings{display:flex;flex-direction:column;gap:6px}.import-warning-text{font-size:13px;color:var(--leather);font-weight:600}.import-warning-list{margin:0;padding-left:18px;font-size:12px;color:var(--ink-2);display:flex;flex-direction:column;gap:2px}.import-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.import-progress{width:100%;height:8px;background:var(--bg-2);border-radius:999px;overflow:hidden}.import-progress-bar{height:100%;background:var(--forest);border-radius:999px;transition:width .2s ease}.plan-refresh{display:flex;align-items:center;gap:8px;margin:0;font-size:12px;color:var(--ink-3)}.plan-refresh-link{background:none;border:none;padding:0;font-size:12px;color:var(--forest);font-weight:600;cursor:pointer;text-decoration:underline}.plan-refresh-link:disabled{color:var(--ink-3);cursor:default;text-decoration:none}.plan-refresh-help{color:var(--ink-3)}.plan-danger{border-color:var(--rust-soft);background:#fffbfa;background:oklch(.99 .01 30)}.plan-delete-form{display:flex;flex-direction:column;gap:10px}.plan-delete-current-email{font-family:var(--font-mono);font-size:12px;color:var(--ink-3);margin:0}.plan-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;border-bottom:1px solid var(--line)}.plan-banner-text{display:flex;flex-direction:column;gap:2px;min-width:0}.plan-banner-title{font-size:13px;font-weight:700;color:var(--ink)}.plan-banner-body{font-size:12px;color:var(--ink-2)}.plan-banner-actions{display:flex;align-items:center;gap:12px}.plan-banner-secondary-link{font-size:12px;color:var(--ink-2);text-decoration:underline}.plan-banner-dismiss{background:none;border:none;font-size:18px;line-height:1;color:var(--ink-3);cursor:pointer;padding:4px 8px;border-radius:var(--r-sm)}.plan-banner-dismiss:hover{color:var(--ink);background:var(--bg-2)}.plan-banner--trial.plan-banner--tier1{background:var(--bg-2)}.plan-banner--trial.plan-banner--tier2{background:var(--leather-soft)}.plan-banner--trial.plan-banner--tier3{background:var(--rust-soft)}.plan-banner--paywall{background:var(--rust-soft);border-bottom-color:var(--rust)}.welcome-back{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:24px}.welcome-back-card{display:flex;flex-direction:column;gap:16px;max-width:460px;padding:32px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);text-align:center}.welcome-back-title{font-size:22px;font-weight:700;color:var(--ink);margin:0}.welcome-back-body{font-size:14px;color:var(--ink-2);margin:0;line-height:1.5}.cookie-banner{position:fixed;z-index:950;left:24px;right:24px;bottom:24px;max-width:880px;margin:0 auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:20px 24px;display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;animation:cookieBannerSlideUp .22s ease-out}@keyframes cookieBannerSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.cookie-banner-content{flex:1 1 320px;min-width:0}.cookie-banner-title{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--ink)}.cookie-banner-body{margin:0;font-size:13px;line-height:1.5;color:var(--ink-2)}.cookie-banner-actions{display:flex;flex-wrap:wrap;gap:8px}.cookie-banner-btn{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 16px;min-width:120px;background:var(--forest);border:1px solid var(--forest);border-radius:8px;font-size:13px;font-weight:600;color:#f8f5ee;cursor:pointer;transition:background .12s ease,border-color .12s ease}.cookie-banner-btn:hover{background:var(--forest-2);border-color:var(--forest-2)}.cookie-banner-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.cookie-category-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}.cookie-category{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;background:var(--bg-2);border:1px solid var(--line-2);border-radius:var(--r-md)}.cookie-category-text{flex:1;min-width:0}.cookie-category-title{display:block;font-size:14px;font-weight:600;color:var(--ink);margin:0 0 4px}.cookie-category-desc{margin:0 0 4px;font-size:13px;line-height:1.5;color:var(--ink-2)}.cookie-category-providers{margin:0;font-size:12px;color:var(--ink-3)}.cookie-switch{position:relative;flex:none;width:44px;height:24px;cursor:pointer}.cookie-switch--locked{cursor:not-allowed;opacity:.7}.cookie-switch input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:inherit}.cookie-switch-track{position:absolute;top:0;right:0;bottom:0;left:0;background:#d0cec5;border-radius:999px;transition:background .16s ease}.cookie-switch-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--paper);border-radius:999px;box-shadow:var(--shadow-sm);transition:transform .16s ease}.cookie-switch input:checked+.cookie-switch-track{background:var(--forest)}.cookie-switch input:checked+.cookie-switch-track .cookie-switch-thumb{transform:translate(20px)}.cookie-switch input:focus-visible+.cookie-switch-track{box-shadow:var(--focus-ring)}.cookie-maps-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;padding:24px;background:var(--bg-2);border:1px dashed var(--line);border-radius:var(--r-md);text-align:center}.cookie-maps-placeholder-text{max-width:360px}.cookie-maps-placeholder-title{margin:0 0 6px;font-size:14px;font-weight:600;color:var(--ink)}.cookie-maps-placeholder-body{margin:0;font-size:13px;line-height:1.5;color:var(--ink-2)}@media (max-width: 480px){.cookie-banner{flex-direction:column;align-items:stretch;left:12px;right:12px;bottom:calc(var(--safe-bottom, 0px) + 56px + 12px);z-index:60;padding:16px}.cookie-banner-actions{flex-direction:column}.cookie-banner-btn{width:100%}}.welcome-modal-body{margin:0 0 8px;font-size:14px;line-height:1.5;color:var(--ink)}.welcome-modal-trial{margin:0;font-size:13px;line-height:1.5;color:var(--ink-2)}.welcome-modal-actions{display:flex;justify-content:flex-end;gap:8px;width:100%}.setup-page{max-width:var(--content-max-width);margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:20px}.setup-page-head{display:flex;flex-direction:column;gap:6px}.setup-page-title{margin:0;font-size:22px;font-weight:600;color:var(--ink)}.setup-page-lead{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2);max-width:720px}.onboarding-checklist{display:block;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.onboarding-checklist-head{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line-2)}.onboarding-checklist-head-text{display:flex;flex-direction:column;gap:2px;min-width:0}.onboarding-checklist-title{margin:0;font-size:15px;font-weight:600;color:var(--ink)}.onboarding-checklist-progress-label{margin:0;font-size:13px;color:var(--ink-2)}.onboarding-checklist-progress{width:180px;height:6px;background:var(--line);border-radius:999px;overflow:hidden}.onboarding-checklist-progress-fill{height:100%;background:var(--forest);border-radius:inherit;transition:width .25s ease}.onboarding-checklist-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.onboarding-checklist-row{border-top:1px solid var(--line-2);transition:background .12s ease}.onboarding-checklist-row:first-child{border-top:none}.onboarding-checklist-row--open{background:color-mix(in oklch,var(--forest) 4%,var(--paper))}.onboarding-checklist-row--skipped{opacity:.62}.onboarding-checklist-row--done{opacity:.8}.onboarding-checklist-row--locked{opacity:.5}.onboarding-checklist-row--locked .onboarding-checklist-row-label-btn,.onboarding-checklist-row--locked .onboarding-checklist-row-cta,.onboarding-checklist-row--locked .onboarding-checklist-row-skip{cursor:not-allowed}.onboarding-checklist-row-head{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:12px;padding:14px 20px}.onboarding-checklist-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1.5px solid var(--line);border-radius:50%;font-size:12px;font-weight:700;line-height:1;color:var(--ink-2)}.onboarding-checklist-dot--done{border-color:var(--forest);background:var(--forest);color:var(--bg)}.onboarding-checklist-dot--skipped{border-style:dashed}.onboarding-checklist-row-label-btn{display:flex;flex-direction:column;gap:2px;min-width:0;padding:0;background:transparent;border:0;text-align:left;cursor:pointer;font:inherit;color:inherit}.onboarding-checklist-row-label-btn:disabled{cursor:default}.onboarding-checklist-row-label-btn:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:4px}.onboarding-checklist-row-label{font-size:14px;font-weight:500;color:var(--ink)}.onboarding-checklist-row--done .onboarding-checklist-row-label,.onboarding-checklist-row--skipped .onboarding-checklist-row-label{text-decoration:line-through;text-decoration-color:color-mix(in oklch,var(--ink-2) 60%,transparent)}.onboarding-checklist-row-hint{font-size:12.5px;line-height:1.4;color:var(--ink-2)}.onboarding-checklist-row-actions{display:inline-flex;align-items:center;gap:6px}.onboarding-checklist-row-status{font-size:12px;font-weight:500;color:var(--forest-ink);letter-spacing:.02em}.onboarding-checklist-row-cta{font-size:13px;height:28px;padding:0 12px}.onboarding-checklist-row-skip,.onboarding-checklist-row-undo{font-size:13px;height:28px;padding:0 10px}.onboarding-checklist-row-editor{padding:4px 20px 20px;border-top:1px dashed var(--line-2);margin-top:0}.onboarding-step-form{display:flex;flex-direction:column;gap:14px;max-width:520px}.onboarding-step-form--wide{max-width:720px}.onboarding-step-form .settings-field{display:flex;flex-direction:column;gap:6px}.onboarding-step-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.onboarding-step-footnote{margin:0;font-size:12.5px;color:var(--ink-3)}.onboarding-step-hint{margin:0 0 8px;font-size:13px;color:var(--ink-3);line-height:1.4}.onboarding-step-empty{margin:0;font-size:13px;color:var(--ink-2);background:color-mix(in oklch,var(--leather) 6%,var(--paper));border:1px solid color-mix(in oklch,var(--leather) 25%,var(--line));border-radius:8px;padding:10px 12px}.onboarding-step-hint{margin:0;font-size:13px;color:var(--ink-3)}.onboarding-checklist--complete{display:flex;align-items:center;gap:14px;padding:16px 20px}.onboarding-checklist-complete-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:none;border-radius:50%;background:var(--forest);color:var(--bg);font-size:14px;font-weight:700}.onboarding-checklist-complete-body{flex:1;display:flex;flex-direction:column;gap:2px}.onboarding-checklist-complete-title{margin:0;font-size:15px;font-weight:600;color:var(--ink)}.onboarding-checklist-complete-help{margin:0;font-size:13px;color:var(--ink-2)}.onboarding-checklist-hide{font-size:13px;height:30px;padding:0 14px}.settings-locale-options{display:inline-flex;gap:8px}.settings-locale-option{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);font-size:14px;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none}.settings-locale-option input{margin:0;accent-color:var(--forest)}.settings-locale-option--active{border-color:var(--forest);background:color-mix(in oklch,var(--forest) 8%,var(--paper))}.m-renew-pill{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 12px;background:var(--paper);color:var(--ink-2);border:1px solid var(--line);border-left:3px solid var(--rust);border-radius:var(--r-md);font-size:13px;font-weight:500}.m-renew-pill__body{flex:1;min-width:0;word-break:break-word}.m-renew-pill__cta{flex:0 0 auto;background:transparent;border:1px solid var(--forest);border-radius:var(--r-sm);padding:4px 10px;color:var(--forest);font:inherit;font-size:13px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-renew-pill__cta:hover:not(:disabled){background:var(--forest-soft)}.m-renew-pill__cta:focus-visible{outline:none;box-shadow:var(--focus-ring)}.m-renew-pill__cta:disabled{opacity:.5;cursor:progress}.m-renew-pill__dismiss{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;color:var(--ink-3);font-size:20px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-renew-pill__dismiss:hover{background:color-mix(in oklch,var(--ink-3) 12%,transparent)}.m-renew-pill__dismiss:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-renew-pill-region{position:fixed;top:calc(var(--safe-top, 0px) + 12px);left:16px;right:16px;z-index:220;pointer-events:none;animation:m-renew-pill-in .18s ease-out}.m-renew-pill-region>.m-renew-pill{pointer-events:auto;box-shadow:var(--shadow-md)}@keyframes m-renew-pill-in{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.m-renew-pill-region{animation:none}}.renew-pill{display:flex;align-items:center;gap:14px;padding:10px 12px 10px 14px;background:var(--paper);color:var(--ink-2);border:1px solid var(--line);border-left:3px solid var(--rust);border-radius:var(--r-md);font-size:14px;font-weight:500}.renew-pill__body{flex:1;min-width:0;word-break:break-word}.renew-pill__cta{flex:0 0 auto;background:transparent;border:1px solid var(--forest);border-radius:var(--r-sm);padding:5px 12px;color:var(--forest);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.renew-pill__cta:hover:not(:disabled){background:var(--forest-soft)}.renew-pill__cta:focus-visible{outline:none;box-shadow:var(--focus-ring)}.renew-pill__cta:disabled{opacity:.5;cursor:progress}.renew-pill__dismiss{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;color:var(--ink-3);font-size:20px;line-height:1;cursor:pointer}.renew-pill__dismiss:hover{background:color-mix(in oklch,var(--ink-3) 12%,transparent)}.renew-pill__dismiss:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.renew-pill-region{position:fixed;top:16px;right:16px;max-width:380px;z-index:220;pointer-events:none;animation:renew-pill-in .18s ease-out}.renew-pill-region>.renew-pill{pointer-events:auto;box-shadow:var(--shadow-md)}@keyframes renew-pill-in{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.renew-pill-region{animation:none}}.m-trial-banner{display:flex;align-items:center;gap:12px;margin:0 16px 16px;padding:6px 10px 6px 12px;background:color-mix(in oklch,oklch(.78 .13 85) 14%,var(--paper));color:var(--ink);border:1px solid color-mix(in oklch,oklch(.78 .13 85) 38%,var(--line));border-left:3px solid oklch(.78 .13 85);border-radius:var(--r-md);font-size:13px;font-weight:500}:root[data-theme=dark] .m-trial-banner{background:color-mix(in oklch,oklch(.86 .13 85) 18%,var(--paper));border-color:color-mix(in oklch,oklch(.86 .13 85) 38%,var(--line));border-left-color:#f8ca65}.m-trial-banner__body{flex:1;min-width:0;word-break:break-word}.m-trial-banner__cta{flex:0 0 auto;background:transparent;border:1px solid var(--forest);border-radius:var(--r-sm);padding:4px 10px;color:var(--forest);font:inherit;font-size:13px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-trial-banner__cta:hover:not(:disabled){background:var(--forest-soft)}.m-trial-banner__cta:focus-visible{outline:none;box-shadow:var(--focus-ring)}.m-trial-banner__dismiss{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;color:var(--ink-2);font-size:20px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-trial-banner__dismiss:hover{background:color-mix(in oklch,var(--ink-3) 12%,transparent)}.m-trial-banner__dismiss:focus-visible{outline:2px solid var(--forest);outline-offset:2px}.m-reschedule__readonly{margin:0 0 12px}.plan-setup-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#28201252;z-index:1100;animation:plan-setup-panel-backdrop-in .18s ease-out both}@keyframes plan-setup-panel-backdrop-in{0%{opacity:0}to{opacity:1}}.plan-setup-panel{position:fixed;top:0;right:0;bottom:0;width:min(480px,100vw);background:var(--paper);border-left:1px solid var(--line);box-shadow:var(--shadow-lg);z-index:1101;display:flex;flex-direction:column;animation:plan-setup-panel-in .22s cubic-bezier(.25,.8,.25,1) both}@keyframes plan-setup-panel-in{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}.plan-setup-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 12px;border-bottom:1px solid var(--line-2)}.plan-setup-panel-header-text{display:flex;flex-direction:column;gap:2px;min-width:0}.plan-setup-panel-eyebrow{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:600}.plan-setup-panel-title{margin:0;font-size:18px;font-weight:600;color:var(--ink);line-height:1.3}.plan-setup-panel-close{flex:none;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--ink-2);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.plan-setup-panel-close:hover{background:var(--bg-2);color:var(--ink)}.plan-setup-panel-close:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--forest)}.plan-setup-panel-body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:20px}.plan-setup-panel-body--restoring{align-items:center;justify-content:center}.plan-setup-panel-restoring{margin:0;font-size:14px;color:var(--ink-3)}.plan-setup-panel-section{display:flex;flex-direction:column;gap:10px}.plan-setup-panel-section--prereqs{padding:12px;background:var(--leather-soft);border:1px solid var(--leather);border-radius:var(--r-md)}.plan-setup-panel-section-title{margin:0;font-size:13px;font-weight:600;color:var(--ink);text-transform:uppercase;letter-spacing:.04em}.plan-setup-panel-section-help{margin:0;font-size:13px;color:var(--ink-2);line-height:1.45}.plan-setup-panel-prereq-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.plan-setup-panel-prereq{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:var(--paper);border:1px solid var(--leather);border-radius:var(--r-sm)}.plan-setup-panel-prereq-text{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);font-weight:500}.plan-setup-panel-prereq>.btn,.plan-setup-panel-prereq>a.btn{align-self:flex-start}.plan-setup-panel-workingdays-editor{display:flex;flex-direction:column;gap:10px}.plan-setup-panel-workingdays-chips{display:flex;flex-wrap:wrap;gap:6px}.plan-setup-panel-workingdays-chip{display:inline-flex;align-items:center;gap:0;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--paper);font-size:12px;font-weight:500;color:var(--ink-2);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.plan-setup-panel-workingdays-chip:hover{border-color:var(--forest);color:var(--ink)}.plan-setup-panel-workingdays-chip>input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.plan-setup-panel-workingdays-chip--active{background:var(--forest);border-color:var(--forest);color:#fff}.plan-setup-panel-workingdays-chip--active:hover{background:var(--forest-2);border-color:var(--forest-2);color:#fff}.plan-setup-panel-workingdays-actions{display:flex;justify-content:flex-end;gap:8px}.plan-setup-panel-mode-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plan-setup-panel-mode-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px;min-height:110px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);text-align:left;cursor:pointer;transition:border-color .12s,background .12s,box-shadow .12s}.plan-setup-panel-mode-card:hover:not(:disabled):not([data-selected=true]){border-color:var(--forest);background:var(--bg)}.plan-setup-panel-mode-card:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--forest)}.plan-setup-panel-mode-card[data-selected=true]{border-color:var(--forest);background:var(--forest-soft);box-shadow:inset 0 0 0 1px var(--forest),var(--shadow-sm)}.plan-setup-panel-mode-card:disabled{opacity:.55;cursor:not-allowed}.plan-setup-panel-mode-card-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--r-sm);background:var(--bg-2);color:var(--ink-2)}.plan-setup-panel-mode-card[data-selected=true] .plan-setup-panel-mode-card-icon{background:var(--forest);color:#fff}.plan-setup-panel-mode-card-label{font-size:14px;font-weight:600;color:var(--ink)}.plan-setup-panel-mode-card-help{font-size:12px;color:var(--ink-2);line-height:1.4}.plan-setup-panel-toggle{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);cursor:pointer;transition:border-color .12s,background .12s}.plan-setup-panel-toggle:hover:not(.plan-setup-panel-toggle--disabled):not(.plan-setup-panel-toggle--locked){border-color:var(--forest);background:var(--bg)}.plan-setup-panel-toggle--disabled{opacity:.55;cursor:not-allowed}.plan-setup-panel-toggle--locked{cursor:default;background:var(--forest-soft);border-color:var(--forest)}.plan-setup-panel-toggle-text{display:flex;flex-direction:column;gap:2px;min-width:0}.plan-setup-panel-toggle-title{font-size:13px;font-weight:600;color:var(--ink)}.plan-setup-panel-toggle-help{font-size:12px;color:var(--ink-2);line-height:1.4}.plan-setup-panel-toggle-count{font-size:12px;font-weight:500;color:var(--ink-2);white-space:nowrap}.plan-setup-panel-toggle-switch{width:18px;height:18px;accent-color:var(--forest);cursor:inherit}.plan-setup-panel-toggle-locked-pill{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--forest);padding:3px 8px;border:1px solid var(--forest);border-radius:999px;background:var(--paper)}.plan-setup-panel-toggle-group{display:flex;flex-direction:column;gap:8px}.plan-setup-panel-overdue-details{padding:8px 12px 10px 32px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg)}.plan-setup-panel-overdue-details>summary{font-size:12px;font-weight:500;color:var(--ink-2);cursor:pointer;list-style:none;padding:4px 0}.plan-setup-panel-overdue-details>summary::-webkit-details-marker{display:none}.plan-setup-panel-overdue-shortcuts{display:flex;gap:12px;margin:6px 0}.plan-setup-panel-overdue-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.plan-setup-panel-overdue-list label{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--ink);cursor:pointer}.plan-setup-panel-overdue-row{display:flex;flex-wrap:wrap;gap:0}.plan-setup-panel-overdue-detail{color:var(--ink-2);font-size:12px}.plan-setup-panel-section--pinless{padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-md)}.plan-setup-panel-pinless-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.plan-setup-panel-pinless-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-sm)}.plan-setup-panel-pinless-name{font-size:13px;font-weight:500;color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis}.plan-setup-panel-footer{flex:none;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--line-2);background:var(--paper)}.plan-setup-panel-cta{font-weight:600}.btn-sm{padding:5px 10px;font-size:12px;border-radius:var(--r-sm)}@media (prefers-reduced-motion: reduce){.plan-setup-panel,.plan-setup-panel-backdrop{animation:none}}:root[data-theme=dark] .plan-setup-panel-backdrop{background:#00000080}.plan-preview-panel{width:min(560px,95vw)}.plan-preview-panel-body{gap:20px}.plan-preview-panel-body--loading{display:flex;align-items:center;justify-content:center;flex:1}.plan-preview-panel-loading{display:flex;flex-direction:column;align-items:center;gap:12px;width:min(360px,80%);text-align:center}.plan-preview-panel-progress{width:100%;height:6px;background:var(--line-2);border-radius:999px;overflow:hidden}.plan-preview-panel-progress-bar{height:100%;background:var(--forest);border-radius:999px;transition:width .32s ease-out}.plan-preview-panel-loading-step{margin:0;font-size:14px;font-weight:600;color:var(--ink)}.plan-preview-panel-loading-detail{margin:0;font-size:12px;color:var(--ink-muted)}.plan-preview-panel-eyebrow-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px}.plan-preview-panel-eyebrow-line{margin:0}.plan-preview-panel-generated{margin:0;font-size:12px;color:var(--ink-muted)}.plan-preview-panel-hero{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:color-mix(in oklch,var(--forest) 8%,var(--paper));border:1px solid color-mix(in oklch,var(--forest) 20%,var(--line-2));border-radius:var(--r-md)}.plan-preview-panel-hero-eyebrow{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--forest)}.plan-preview-panel-hero-headline{font-size:22px;font-weight:700;color:var(--ink);line-height:1.2}.plan-preview-panel-hero-detail{font-size:13px;color:var(--ink-muted)}.plan-preview-panel-tiles{margin:0}.plan-preview-panel-section{display:flex;flex-direction:column;gap:8px}.plan-preview-panel-days{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.plan-preview-panel-day{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--paper);overflow:hidden}.plan-preview-panel-day--open{border-color:color-mix(in oklch,var(--forest) 30%,var(--line-2))}.plan-preview-panel-day-header{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:0;font:inherit;text-align:left;cursor:pointer;color:var(--ink)}.plan-preview-panel-day-header:hover:not(:disabled){background:color-mix(in oklch,var(--forest) 4%,transparent)}.plan-preview-panel-day-header:disabled{cursor:default;color:var(--ink-muted)}.plan-preview-panel-day-date{font-weight:600;font-size:13px;white-space:nowrap}.plan-preview-panel-day-summary{flex:1;font-size:12px;color:var(--ink-muted)}.plan-preview-panel-day-warning{flex:none;font-size:11px;padding:2px 6px;border-radius:999px;background:color-mix(in oklch,var(--danger) 14%,transparent);color:var(--danger)}.plan-preview-panel-day-stops{margin:0;padding:4px 12px 12px 24px;list-style:none;display:flex;flex-direction:column;gap:4px}.plan-preview-panel-day-stop{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink)}.plan-preview-panel-day-stop-index{flex:none;width:20px;height:20px;border-radius:50%;background:color-mix(in oklch,var(--forest) 12%,transparent);color:var(--forest);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.plan-preview-panel-pinless{padding:14px 16px;background:color-mix(in oklch,var(--leather) 8%,var(--paper));border:1px solid color-mix(in oklch,var(--leather) 25%,var(--line-2));border-radius:var(--r-md)}.plan-preview-panel-pinless-number{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:8px;border-radius:50%;background:var(--leather);color:#fff;font-size:11px;font-weight:700}.plan-preview-panel-pinless-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.plan-preview-panel-pinless-row{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-sm)}.plan-preview-panel-pinless-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13px}.plan-preview-panel-pinless-detail{color:var(--ink-muted);font-size:12px}.plan-preview-panel-pinless-actions{margin:0;padding:0;border:0;display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:13px}.plan-preview-panel-pinless-actions label{display:inline-flex;align-items:center;gap:4px}.plan-preview-panel-pinless-select{font-size:12px;padding:2px 6px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--paper);color:var(--ink)}.plan-preview-panel-body--no-changes{display:flex;align-items:center;justify-content:center;flex:1}.plan-preview-panel-no-changes{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px;max-width:360px;text-align:center}.plan-preview-panel-no-changes-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:color-mix(in oklch,var(--forest) 14%,transparent);color:var(--forest)}.plan-preview-panel-no-changes-title{margin:0;font-size:16px;font-weight:600;color:var(--ink)}.plan-preview-panel-no-changes-body{margin:0;font-size:13px;color:var(--ink-muted)}.plan-preview-panel-error{margin:12px 20px;color:var(--danger);font-size:13px}.plan-preview-panel-apply{font-weight:600}.feedback-form{display:flex;flex-direction:column;gap:18px}.feedback-field{display:flex;flex-direction:column;gap:7px}.feedback-field-label{font-size:12.5px;font-weight:600;letter-spacing:.01em;color:var(--ink);display:inline-flex;align-items:center;gap:4px}.feedback-field-required{color:var(--leather-ink);font-weight:600}.feedback-segmented{display:flex;width:100%;background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden}.feedback-segmented-option{flex:1 1 0;min-width:0;padding:9px 10px;background:transparent;border:0;border-right:1px solid var(--line);font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer;transition:background .12s ease,color .12s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feedback-segmented-option:last-child{border-right:0}.feedback-segmented-option:hover:not(.feedback-segmented-option--active){background:var(--bg-2);color:var(--ink)}.feedback-segmented-option--active{background:var(--forest);color:#f8f5ee}.feedback-segmented-option:focus-visible{outline:none;box-shadow:inset var(--focus-ring)}.feedback-select-wrap{position:relative;display:flex;align-items:center}.feedback-select{flex:1 1 auto;-moz-appearance:none;appearance:none;-webkit-appearance:none;height:38px;padding:0 36px;background:var(--paper);border:1px solid var(--line);border-radius:10px;font-size:13.5px;font-weight:500;color:var(--ink);cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%236b6258' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M3 4.5 6 7.5 9 4.5'/></svg>");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .12s ease,box-shadow .12s ease}.feedback-select:focus-visible{outline:none;border-color:var(--forest);box-shadow:var(--focus-ring)}.feedback-severity-dot{position:absolute;left:14px;width:10px;height:10px;border-radius:999px;pointer-events:none}.feedback-severity-dot--informal{background:#a8a49a}.feedback-severity-dot--low{background:#67b36a}.feedback-severity-dot--medium{background:#e1a035}.feedback-severity-dot--high{background:#dd503f}.feedback-textarea{width:100%;padding:11px 13px;background:var(--paper);border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:14px;line-height:1.55;color:var(--ink);min-height:120px;resize:vertical;transition:border-color .12s ease,box-shadow .12s ease}.feedback-textarea:focus-visible{outline:none;border-color:var(--forest);box-shadow:var(--focus-ring)}.feedback-textarea::placeholder{color:var(--ink-3)}.feedback-validation-error{margin:0;font-size:12px;color:#8f3126}.feedback-screenshot-actions{display:flex;gap:8px;flex-wrap:wrap}.feedback-secondary-btn{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;background:var(--paper);border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:13px;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.feedback-secondary-btn:hover:not(:disabled){background:var(--bg-2);border-color:var(--ink-3)}.feedback-secondary-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.feedback-secondary-btn:disabled{opacity:.6;cursor:not-allowed}.feedback-secondary-btn svg{color:var(--ink-2);flex:0 0 auto}.feedback-screenshot-preview{display:flex;gap:14px;padding:12px;background:var(--bg-2);border:1px solid var(--line);border-radius:10px;align-items:center}.feedback-screenshot-thumb{width:96px;height:64px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:var(--paper)}.feedback-screenshot-meta{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:12.5px;color:var(--ink-3)}.feedback-screenshot-size{font-variant-numeric:tabular-nums;color:var(--ink-2)}.feedback-link-btn{background:none;border:0;padding:0;font-size:12.5px;color:var(--forest);font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.feedback-link-btn:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:4px}.feedback-send-error{margin:0;padding:9px 12px;background:#ffe8e3;background:oklch(.95 .04 30);border:1px solid oklch(.85 .06 30);border-radius:8px;color:#7c271c;font-size:13px}.feedback-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:6px;border-top:1px solid var(--line);margin-top:4px}.feedback-success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 12px;gap:8px}.feedback-success-line{margin:0;font-size:14.5px;font-weight:500;color:var(--ink)}.quota-warn-banner{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px 14px;background:color-mix(in oklch,oklch(.78 .13 85) 12%,var(--paper));color:var(--ink);border:1px solid color-mix(in oklch,oklch(.78 .13 85) 36%,var(--line));border-left:3px solid oklch(.78 .13 85);border-radius:var(--r-md);font-size:13.5px}:root[data-theme=dark] .quota-warn-banner{background:color-mix(in oklch,oklch(.86 .13 85) 18%,var(--paper));border-color:color-mix(in oklch,oklch(.86 .13 85) 38%,var(--line));border-left-color:#f8ca65}.quota-warn-banner__body{flex:1;min-width:0}.quota-warn-banner__title{margin:0;font-weight:600;color:var(--ink)}.quota-warn-banner__detail{margin:2px 0 0;color:var(--ink-2);font-size:12.5px}.quota-warn-banner__actions{display:flex;gap:8px;flex:0 0 auto;align-items:center}.quota-warn-banner__cta{background:transparent;border:1px solid var(--forest);border-radius:var(--r-sm);padding:4px 10px;color:var(--forest);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.quota-warn-banner__cta:hover:not(:disabled){background:var(--forest-soft)}.quota-warn-banner__cta:focus-visible{outline:none;box-shadow:var(--focus-ring)}.quota-warn-banner__dismiss{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:50%;color:var(--ink-2);font-size:20px;line-height:1;cursor:pointer}.quota-warn-banner__dismiss:hover{background:color-mix(in oklch,var(--ink-3) 12%,transparent)}.quota-blocked-dialog{display:flex;flex-direction:column;gap:12px}.quota-blocked-dialog__body{margin:0;font-size:14px;color:var(--ink)}.quota-blocked-dialog__upsell{margin:0;font-size:13.5px;color:var(--ink-2)}.quota-blocked-dialog__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.plan-usage{margin:0 0 24px;padding:16px 18px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:10px}.plan-usage-title{margin:0;font-size:16px;font-weight:600;color:var(--ink)}.plan-usage-subtitle{margin:0;font-size:12.5px;color:var(--ink-2)}.plan-usage-loading,.plan-usage-error{margin:0;font-size:13px;color:var(--ink-2)}.plan-usage-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}.plan-usage-row{display:flex;flex-direction:column;gap:6px}.plan-usage-row-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.plan-usage-row-label{font-size:13.5px;font-weight:600;color:var(--ink)}.plan-usage-row-numbers{font-size:12.5px;color:var(--ink-2);font-variant-numeric:tabular-nums}.plan-usage-bar{position:relative;height:8px;background:color-mix(in oklch,var(--ink-3) 14%,transparent);border-radius:999px;overflow:hidden}.plan-usage-bar-fill{position:absolute;inset:0 auto 0 0;background:var(--forest);border-radius:inherit;transition:width .24s ease}.plan-usage-row--warn .plan-usage-bar-fill{background:#ddb049}.plan-usage-row--block .plan-usage-bar-fill{background:#bd4334}.plan-usage-bar-soft{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--ink-2);opacity:.45;border-radius:1px}.plan-usage-compare{margin:0;font-size:12px;color:var(--ink-2)}
