:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--sheet-max-width:430px;--bg:#f6f4ef;--surface:#fff;--surface-muted:#f1f3f2;--ink:#17211b;--muted:#657066;--placeholder:color-mix(in srgb, var(--muted) 75%, var(--surface));--line:#d8ded8;--accent:#176b5f;--accent-strong:#0d4f47;--accent-soft:color-mix(in srgb, var(--accent) 14%, transparent);--sidebar-bg:#11251f;--sidebar-ink:#f7fbf8;--sidebar-text:#dce9e2;--sidebar-muted:#9fb6ac;--sidebar-soft:#bed3cb;--blue:#315f96;--gold:#a66b10;--danger:#9f3a3a;--danger-surface:#fff1f1;--danger-line:#e2b4b4;--shadow:0 18px 45px #161e1a1a;--shadow-raised:none;--shadow-card:0 1px 2px #161e1a0f, 0 6px 14px -6px #161e1a29;--shadow-card-hover:0 2px 4px #161e1a12, 0 14px 28px -10px #161e1a38;--line-hover:color-mix(in srgb, var(--line), var(--ink) 22%);--on-accent:#fff;--sheet-bg:var(--surface);--line-strong:var(--line);--accent-tint:var(--accent-soft);--accent-tint-line:var(--line);--ink-muted:var(--muted);--ink-faint:var(--placeholder);--warn-surface:#fff9e8;--warn-line:#e7cf8a;--warn-ink:#65552e;--scrim:#11251f73;--bg-field:#f3f2ed;--mobile-nav-height:65px;--mobile-topbar-height:69px;interpolate-size:allow-keywords}[data-zone=field]{--bg:var(--bg-field);--shadow-raised:0 1px 2px #14181a0f, 0 6px 14px -6px #14181a24;--surface:#fff;--surface-muted:#f7f6f2;--sheet-bg:#f7f6f2;--ink:#14181a;--muted:#5a615f;--ink-muted:#61686a;--placeholder:#686e70;--ink-faint:#7f8583;--line:#e7e5e0;--line-strong:#d5d0c4;--accent:#14604a;--accent-strong:#0d4636;--accent-soft:#e6efeb;--accent-tint:#e6efeb;--accent-tint-line:#c7d6d0;--warn-surface:#fbf6e6;--warn-line:#e7cf8a;--warn-ink:#7d6318;--danger:#b4453a;--danger-surface:#fbf0ee;--danger-line:#e8c9c4;--scrim:#16191a6b;font-family:var(--font-manrope,Inter), ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-display:29px;--fs-title:26px;--fs-heading:19px;--fs-subheading:17px;--fs-body-lg:16px;--fs-body:15px;--fs-body-sm:14px;--fs-meta:13px;--fs-caption:12px;--tracking-title:-.02em;--tracking-display:-.035em;--tracking-eyebrow:.13em}body:has([data-zone=field]){background:var(--bg-field)}:where([data-zone=field]) :where(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color],[type=hidden]),select,textarea){font-size:max(1em,16px)}@media (pointer:coarse){:where([data-zone=field]) :where(.back-link,.icon-button,.topbar-announcements,.field-menu-button,.home-view-tab,.day-step,.route-plan-toggle,.route-plan-menu-button,.route-stop-handle,.route-stop-remove-form>.name-edit-button,.location-insight-action,.route-add-stop-inline,.week-day-route-name,.week-day-add,.month-cell,.month-select-toggle,.filter-pills>label,.filter-pills>a,.product-card-link,.period-pill,.visit-date-trigger,.report-photos-gallery,.status-chip,.sheet-close,.task-close-add,.tasks-panel-add,.combo-trigger,.task-form-chip,.task-form-switch,.secondary-button,.primary-button){position:relative}:where([data-zone=field]) :where(.back-link,.icon-button,.topbar-announcements,.field-menu-button,.home-view-tab,.day-step,.route-plan-toggle,.route-plan-menu-button,.route-stop-handle,.route-stop-remove-form>.name-edit-button,.location-insight-action,.route-add-stop-inline,.week-day-route-name,.week-day-add,.month-cell,.month-select-toggle,.filter-pills>label,.filter-pills>a,.product-card-link,.period-pill,.visit-date-trigger,.report-photos-gallery,.status-chip,.sheet-close,.task-close-add,.tasks-panel-add,.combo-trigger,.task-form-chip,.task-form-switch,.secondary-button,.primary-button):after{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:where([data-zone=field]) .scroll-strip-viewport{margin-block:-6px;padding-block:6px}:where([data-zone]:not([data-zone=field])) :where(.field-menu-button,.collapsible-search-toggle,.icon-button){position:relative}:where([data-zone]:not([data-zone=field])) :where(.field-menu-button,.collapsible-search-toggle,.icon-button):after{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}[data-zone]:not([data-zone=field]) :where(.secondary-button,.primary-button){min-height:44px}}[data-zone=field] .sheet-panel{background:var(--sheet-bg);border-radius:22px 22px 0 0}[data-zone=field] .sheet::backdrop{background:var(--scrim)}@supports ((-webkit-backdrop-filter:blur(2px)) or (backdrop-filter:blur(2px))){[data-zone=field] .sheet::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}[data-zone=field] .sheet-handle{width:38px;height:4px}.collapse-row{background:var(--surface);border:1px solid var(--line);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:14px;align-items:center;gap:12px;width:100%;padding:13px 15px;display:flex}.collapse-row-icon{background:var(--accent-tint);color:var(--accent);border-radius:11px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.collapse-row-icon--warning{background:var(--warn-surface);color:var(--warn-ink)}.collapse-row-icon--problem{background:var(--danger-surface);color:var(--danger)}.collapse-row-icon--info{background:color-mix(in srgb, var(--blue) 14%, var(--surface));color:var(--blue)}.collapse-row-icon--neutral{background:var(--surface-muted);color:var(--muted)}.collapse-row-label{font-size:var(--fs-body-lg,16px);flex:1;min-width:0;font-weight:800}.collapse-row-meta{color:var(--ink-muted);font-size:var(--fs-meta,13px);white-space:nowrap;margin-left:auto;font-weight:500}.collapse-row.is-filled{border-color:var(--accent)}.collapse-row.is-filled .collapse-row-meta{color:var(--accent);font-weight:700}.collapse-row.is-danger.is-filled{border-color:var(--danger)}.collapse-row.is-danger.is-filled .collapse-row-meta{color:var(--danger)}.collapse-row.is-danger .collapse-row-label{flex:0 auto}.collapse-row.is-danger .collapse-row-meta{contain:inline-size;text-align:right;text-overflow:ellipsis;flex:1 1 0;min-width:0;overflow:hidden}.tasks-summary{align-items:center;gap:6px;display:flex}.tasks-summary-stat{align-items:center;gap:4px;font-weight:700;display:inline-flex}.tasks-summary-dot{border-radius:50%;flex:none;width:6px;height:6px}.tasks-summary-stat.is-overdue{color:var(--danger)}.tasks-summary-stat.is-overdue .tasks-summary-dot{background:var(--danger)}.tasks-summary-stat.is-priority{color:var(--gold)}.tasks-summary-stat.is-priority .tasks-summary-dot{background:var(--gold)}.tasks-summary-stat.is-current{color:var(--ink-muted)}.tasks-summary-stat.is-current .tasks-summary-dot{background:var(--ink-muted)}.tasks-summary-badge{background:var(--accent-tint);color:var(--accent-strong);border-radius:999px;flex:none;padding:2px 8px;font-weight:800}.collapse-row-caret{color:var(--ink-muted);flex:none;margin-left:auto;transition:transform .18s}.collapse-row[aria-expanded=true] .collapse-row-caret{transform:rotate(180deg)}.collapse-row-open{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:0;display:flex}@media (pointer:coarse){.collapse-row-open{min-height:44px}}.collapse-row-open[aria-expanded=true] .collapse-row-caret{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.collapse-row-caret{transition:none}}.empty-state-block{text-align:center;align-content:center;justify-items:center;gap:12px;padding:32px 16px;display:grid}.empty-state-tile svg{width:30px;height:30px}.empty-state-tile{background:var(--surface);border:1px solid var(--line);color:var(--accent);border-radius:22px;justify-content:center;align-items:center;width:76px;height:76px;display:inline-flex}.empty-state-tile--muted{background:var(--surface-muted);color:var(--muted)}.empty-state-title{font-size:var(--fs-heading,19px);margin:0;font-weight:800}.empty-state-body{color:var(--ink-muted);font-size:var(--fs-body-sm,14px);max-width:320px;margin:0}.empty-state-hint{color:var(--accent);justify-items:center;margin-top:2px;display:grid}.empty-state-hint p{font-size:var(--fs-body-sm,14px);margin:0;font-weight:700}.toast{background:color-mix(in srgb, var(--accent) 15%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line));bottom:calc(var(--mobile-nav-height) + 12px);z-index:30;border-radius:14px;align-items:center;gap:12px;width:calc(100% - 32px);max-width:360px;margin-inline:auto;padding:12px 14px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #161e1a29}.toast.is-danger{background:var(--danger-surface);border-color:var(--danger-line)}.toast.is-danger .toast-action{color:var(--danger)}.toast-text{flex:1;min-width:0}.toast-title{font-size:var(--fs-body,15px);margin:0;font-weight:800}.toast-body{color:var(--ink-muted);font-size:var(--fs-meta,13px);margin:2px 0 0}.toast-action{color:var(--accent);font-size:var(--fs-body-sm,14px);flex:none;font-weight:800}.toast-undo-form{flex:none;margin:0}.toast-undo{cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-height:44px;padding:0 4px;display:inline-flex}@media (prefers-reduced-motion:no-preference){.toast{transition:opacity .3s;animation:.22s ease-out toast-rise}.toast.is-leaving{opacity:0}@keyframes toast-rise-corner{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes toast-rise{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}}@media (prefers-reduced-motion:reduce){.toast.is-leaving{opacity:0}}.day-complete-overlay{z-index:40;background:#16191a6b;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:fixed;inset:0}.day-complete-overlay.is-leaving{opacity:0}.day-complete-card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:14px;margin:0 24px;padding:32px 28px;display:flex}.day-complete-badge{justify-content:center;align-items:center;width:72px;height:72px;display:flex;position:relative}.day-complete-check{background:radial-gradient(circle at 34% 28%, color-mix(in srgb, var(--accent) 80%, white), var(--accent) 62%);color:var(--surface);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;display:flex}.day-complete-check svg{width:32px;height:32px}.day-complete-spark{background:var(--accent);clip-path:polygon(50% 0%,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0% 50%,42% 42%);position:absolute}.day-complete-spark-1{width:14px;height:14px;top:-10px;right:-6px}.day-complete-spark-2{width:9px;height:9px;bottom:-4px;right:10px}.day-complete-spark-3{width:11px;height:11px;bottom:2px;left:-12px}.day-complete-title{color:var(--ink);margin:0;font-size:19px;font-weight:800}.day-complete-body{color:var(--ink-muted);margin:0;font-size:14px;font-weight:500}@media (prefers-reduced-motion:no-preference){.day-complete-card{animation:.3s ease-out day-complete-pop}.day-complete-check{animation:.5s .1s both day-complete-check-pop}.day-complete-spark{animation:1.6s infinite day-complete-twinkle}.day-complete-spark-2{animation-delay:.4s}.day-complete-spark-3{animation-delay:.7s}@keyframes day-complete-pop{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes day-complete-check-pop{0%{opacity:0;transform:scale(.4)rotate(-8deg)}55%{opacity:1;transform:scale(1.14)rotate(5deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes day-complete-twinkle{0%{opacity:0;transform:scale(.3)rotate(0)}40%{opacity:1;transform:scale(1)rotate(10deg)}70%{opacity:1;transform:scale(.9)rotate(0)}to{opacity:0;transform:scale(.3)rotate(-10deg)}}}@media (prefers-reduced-motion:reduce){.day-complete-spark{display:none}}.skeleton{background:var(--surface-muted);border-radius:10px;position:relative;overflow:hidden}.skeleton:after{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface) 70%, transparent), transparent);content:"";animation:1.4s ease-in-out infinite skeleton-sweep;position:absolute;inset:0}@keyframes skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.skeleton-card{height:74px}.skeleton-line{height:12px}.skeleton-line--heading{width:55%;height:22px}.skeleton-line--wide{width:92px}.skeleton-line--narrow{width:56px}.skeleton-stack{gap:6px;display:grid}.skeleton-screen{gap:12px;padding:4px 0 8px;display:grid}.skeleton-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.skeleton-calendar-cell{aspect-ratio:1;border-radius:8px}.sidebar .skeleton{background:color-mix(in srgb, var(--sidebar-ink) 10%, transparent)}.sidebar .skeleton:after{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--sidebar-ink) 8%, transparent), transparent)}.skeleton-nav-link{border-radius:8px;height:46px}.skeleton-screen--workspace{max-width:1180px;margin:0 auto}.skeleton-metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.skeleton-metric{height:96px}.pending-region{position:relative}.pending-region,.pending-region-content{align-items:inherit;display:inherit;flex-direction:inherit;gap:inherit;grid-template-columns:inherit;min-width:0}.pending-region.is-pending{min-height:240px}.pending-region.is-pending>.pending-region-content{opacity:.55;transition:opacity .12s;animation:0s linear .18s forwards pending-region-hide}.pending-region-skeleton{animation:.16s ease-out .18s both pending-region-show;position:absolute;inset:0 0 auto}@keyframes pending-region-hide{to{visibility:hidden}}@keyframes pending-region-show{0%{opacity:0}to{opacity:1}}.tap-card:active{animation:0s linear 60ms forwards tap-card-press}.tap-card[data-pending]{cursor:progress;animation:.9s ease-in-out infinite alternate tap-card-pending}html[data-doc-loading]:before{content:"";z-index:2147483000;pointer-events:none;background:linear-gradient(90deg, transparent, var(--accent,#176b5f), transparent);background-repeat:no-repeat;background-size:40% 100%;height:3px;animation:1s ease-in-out infinite doc-loading-bar;position:fixed;inset:0 0 auto}html[data-doc-loading]:after{content:"";top:calc(env(safe-area-inset-top,0px) + 14px);box-sizing:content-box;border:3px solid var(--line,#d9ddda);border-top-color:var(--accent,#176b5f);z-index:2147483000;pointer-events:none;background:var(--surface,#fff);border-radius:50%;width:26px;height:26px;margin-left:-16px;animation:.7s linear infinite doc-loading-spin;position:fixed;left:50%;box-shadow:0 2px 10px #0003}@keyframes doc-loading-bar{0%{background-position:-40% 0}to{background-position:140% 0}}@keyframes doc-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){html[data-doc-loading]:before{background-size:100% 100%;animation:none}html[data-doc-loading]:after{animation-duration:2s}}.route-stop.swiped .tap-card:active,.route-stop.dragging .tap-card:active{animation:none}@keyframes tap-card-press{to{opacity:.6}}@keyframes tap-card-pending{0%{opacity:.6}to{opacity:.35}}@media (prefers-reduced-motion:reduce){.tap-card[data-pending]{opacity:.6;animation:none}}[data-zone=field] .page-header h1{font-size:var(--fs-title)}[data-zone=field] .route-day-label,[data-zone=field] .task-group-head,[data-zone=field] .field-menu-section-label,[data-zone=field] .task-form-label{letter-spacing:var(--tracking-eyebrow);font-weight:800}[data-zone=field] .modal-dialog{background:var(--sheet-bg);border-radius:22px}[data-zone=field] .modal-dialog::backdrop{background:var(--scrim)}.modal-dialog.is-sheet{background:var(--sheet-bg);max-height:88%;max-width:var(--sheet-max-width);border-radius:22px 22px 0 0;width:100%;margin:0 auto;transition:transform .28s cubic-bezier(.32,.72,0,1);position:fixed;inset:auto 0 0;transform:translateY(100%)}.modal-dialog.is-sheet[data-open=true]{transform:translateY(0)}.modal-dialog.is-sheet::backdrop{background:var(--scrim);opacity:0;transition:opacity .28s}.modal-dialog.is-sheet[data-open=true]::backdrop{opacity:1}@media (prefers-reduced-motion:reduce){.modal-dialog.is-sheet,.modal-dialog.is-sheet::backdrop{transition-duration:.01ms}}[data-zone=field] .location-feature-icon{background:var(--accent-tint);border-radius:11px;flex:none;justify-content:center;width:36px;height:36px}[data-zone=field] .empty-state-panel{text-align:center;border:0;justify-items:center;gap:12px;padding:32px 16px}[data-zone=field] .empty-state-panel h2{font-size:var(--fs-heading);font-weight:800}[data-zone=field] .empty-state-panel p{color:var(--ink-muted);font-size:var(--fs-body-sm);max-width:270px;margin-inline:auto}[data-zone=field] .location-insights-empty-icon{background:var(--surface);border:1px solid var(--line);color:var(--accent);border-radius:22px;width:76px;height:76px}[data-zone=field] .location-insights-empty-icon svg{width:30px;height:30px}[data-zone=field] .route-stop,[data-zone=field] .task-row,[data-zone=field] .location-mini-card,[data-zone=field] .list-card,[data-zone=field] .visit-card,[data-zone=field] .visit-location-card,[data-zone=field] .field-menu-link,[data-zone=field] .faq-item{border-radius:14px}[data-zone=field] .field-menu-link-icon{background:var(--accent);border:1px solid var(--accent);color:var(--on-accent);border-radius:11px}[data-zone=field] .back-link{color:var(--accent)}[data-zone=field] .mobile-topbar .brand-mark{letter-spacing:-.01em;border-radius:11px;width:44px;height:44px;font-size:15px}[data-zone=field] h1,[data-zone=field] h2,[data-zone=field] h3{letter-spacing:var(--tracking-title);font-weight:800}*{box-sizing:border-box}html,body{min-height:100%;margin:0}html{-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{background:var(--bg);grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-ink);flex-direction:column;gap:28px;padding:24px 18px;display:flex}@media (min-width:768px) and (max-width:1023px){.app-shell:not(.app-shell--mobile-only){grid-template-columns:208px minmax(0,1fr)}.app-shell:not(.app-shell--mobile-only) .sidebar{gap:20px;padding:20px 14px}.app-shell:not(.app-shell--mobile-only) .main-surface{padding-inline:24px}}@media (min-width:768px){.app-shell:not(.app-shell--mobile-only) .sidebar{z-index:20;align-self:start;height:100vh;position:sticky;top:0;overflow-y:auto}body:has(.app-shell:not(.app-shell--mobile-only)) .toast{width:360px;margin-inline:0;animation-name:toast-rise-corner;bottom:24px;left:auto;right:24px;transform:none}.app-shell:not(.app-shell--mobile-only) .main-surface>.page-header{background:var(--bg);box-shadow:0 0 0 100vmax var(--bg);clip-path:inset(0 -100vmax);z-index:10;margin-top:-28px;padding:28px 0 16px;position:sticky;top:0}}.mobile-topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:10;display:none;position:sticky;top:0}.mobile-topbar-inner{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.mobile-topbar .brand-mark{width:32px;height:32px}.topbar-company-name{-webkit-line-clamp:1;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;font-size:16px;font-weight:800;display:-webkit-box;overflow:hidden}.mobile-topbar .brand-block>div{min-width:0}.topbar-app-name{color:var(--muted);margin:2px 0 0;font-size:12px}.topbar-aside{flex-direction:row;flex-shrink:0;align-items:center;gap:8px;display:flex}.topbar-announcements{background:var(--accent-tint,var(--surface-muted));color:var(--accent);border-radius:11px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;position:relative}.topbar-announcements.is-important{background:var(--danger-surface);color:var(--danger)}.topbar-announcements:hover{color:var(--accent-strong)}.topbar-announcements .nav-glyph{width:22px;height:22px}.topbar-announcements .nav-badge{background:var(--danger);border:1px solid var(--surface);top:-4px;right:-4px}.brand-block{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark,.nav-icon{background:var(--accent);color:var(--on-accent);border-radius:8px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-weight:800;display:inline-flex}.nav-icon .nav-glyph{width:20px;height:20px}.nav-icon{position:relative}.mobile-nav-icon{display:inline-flex;position:relative}.nav-badge{background:var(--blue);color:var(--on-accent);font-size:var(--fs-caption,12px);border-radius:999px;justify-content:center;align-items:center;min-width:16px;padding:2px 4px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-4px;right:-6px}.brand-name,.tenant-name,.eyebrow,.metric-label,.small-label{margin:0}.brand-name{font-size:18px;font-weight:800}.tenant-name{color:var(--sidebar-soft);margin-top:2px;font-size:13px}.sidebar .brand-block>div{min-width:0}.sidebar .brand-name{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:15px;line-height:1.25;display:-webkit-box;overflow:hidden}.current-user{border-top:1px solid #ffffff24;gap:2px;margin:0 -8px;padding:16px 8px 8px;display:grid}.current-user:hover,.current-user:focus-visible{background:#ffffff0f;border-radius:0 0 8px 8px}.current-user-role{color:var(--sidebar-muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 2px;font-size:11px;font-weight:800}.current-user-name{color:var(--sidebar-ink);margin:0;font-size:14px;font-weight:700}.current-user-email{color:var(--sidebar-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;overflow:hidden}.nav-list{gap:8px;display:grid}.nav-link{color:var(--sidebar-text);border-radius:8px;align-items:center;gap:10px;min-height:46px;padding:6px 8px;transition:background .16s,color .16s;display:flex}.nav-link .nav-icon{transition:box-shadow .16s}.nav-link:hover,.nav-link:focus-visible{color:#fff;background:#ffffff12}.nav-link:hover .nav-icon,.nav-link:focus-visible .nav-icon{box-shadow:0 0 0 3px #ffffff1f}.nav-link[aria-current=page]{color:#fff;background:#ffffff1f}.sidebar .nav-link:focus-visible,.sidebar .current-user:focus-visible,.sidebar .zone-switcher-link:focus-visible,.sidebar .sidebar-logout-button:focus-visible{outline:2px solid var(--sidebar-soft);outline-offset:2px}.zone-switcher{gap:2px;display:grid}.current-user+.zone-switcher{margin-top:-16px}.zone-switcher-label{color:var(--sidebar-muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;padding:0 8px;font-size:11px;font-weight:800}.zone-switcher form{display:contents}.zone-switcher-link{color:var(--sidebar-text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:40px;padding:6px 8px;font-weight:500;transition:background .16s,color .16s;display:flex}.zone-switcher-icon{color:var(--sidebar-muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.zone-switcher-link:hover,.zone-switcher-link:focus-visible{color:#fff;background:#ffffff1a}.zone-switcher-link:hover .zone-switcher-icon,.zone-switcher-link:focus-visible .zone-switcher-icon{color:inherit}.sidebar-footer{gap:16px;margin-top:auto;display:grid}.sidebar-logout{border-top:1px solid #ffffff24;padding-top:12px}.sidebar-logout-button{color:var(--sidebar-text);cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:40px;padding:6px 8px;font-weight:500;transition:background .16s,border-color .16s,color .16s;display:flex}.sidebar-logout-button:hover,.sidebar-logout-button:focus-visible{color:#fff;background:#ffffff1a;border-color:#ffffff47}.main-surface{min-width:0;padding:28px 32px 96px}.platform-page{padding:28px 32px 96px}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;max-width:1180px;margin:0 auto 24px;display:flex}.page-header h1,.notice-panel h2{margin:0}.page-header h1{font-size:32px;line-height:1.15}.page-header p{color:var(--muted);max-width:680px;margin:8px 0 0}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:800}.visit-identity-summary{cursor:pointer;flex-direction:column;list-style:none;display:flex}.visit-identity-summary::-webkit-details-marker{display:none}.visit-identity-summary-row{align-items:center;gap:12px;display:flex}.visit-identity-text{flex:1;min-width:0}.visit-identity-name{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:20px;overflow:hidden}.visit-identity-chevron{color:var(--ink-faint);flex-shrink:0;transition:transform .2s;display:inline-flex}.visit-identity[open] .visit-identity-chevron{transform:rotate(180deg)}.visit-identity-body{flex-direction:column;display:flex}.visit-location-card.visit-identity{gap:0}.visit-identity[open]{gap:14px}.visit-identity-address{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:13px;overflow:hidden}.visit-identity-body>.location-header-chain,.visit-identity-body>.location-assignment-pill{align-self:flex-start;margin-top:6px}.visit-identity-body>.visit-quick-links{margin-top:14px}.visit-cancel-action{justify-content:center;max-width:1180px;margin:20px auto 0;display:flex}.visit-overview{flex-direction:column;gap:16px;width:100%;min-width:0;max-width:1180px;margin:0 auto 20px;display:flex;position:relative}.visit-quick-links{flex-direction:column;display:flex}.visit-quick-link{border:0;border-top:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;align-items:center;gap:12px;width:100%;padding:12px 2px;list-style:none;display:flex}.visit-quick-links>.visit-quick-link:first-child{border-top:0}.visit-quick-link::-webkit-details-marker{display:none}.visit-quick-link>svg:first-child{color:var(--accent);flex-shrink:0}.visit-quick-link>svg:last-child{color:var(--ink-faint);flex-shrink:0}.visit-quick-link-label{flex:1;min-width:0;font-size:15.5px;font-weight:700}.visit-quick-link-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex;overflow:hidden}.visit-quick-link-text .visit-quick-link-label{flex:none}.visit-quick-link-preview{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.visit-quick-link-meta{color:var(--ink-muted);flex-shrink:0;font-size:14.5px;font-weight:700}.visit-quick-more>summary .visit-quick-link-label{color:var(--accent);flex:none}.visit-quick-more>summary .visit-quick-link-meta{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.visit-quick-more-chevron{color:var(--ink-faint);flex-shrink:0;transition:transform .2s;display:inline-flex}.visit-quick-more[open] .visit-quick-more-chevron{transform:rotate(90deg)}.visit-quick-more-links{gap:2px;padding:4px 2px 10px 34px;display:grid}.visit-quick-more-link{color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:8px 6px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.visit-quick-more-link:hover{background:var(--surface-muted)}.visit-quick-more-link-label{flex:1;min-width:0}.visit-quick-more-link>svg{color:var(--accent);flex-shrink:0}.visit-quick-more-link>svg:last-child{color:var(--ink-faint)}.visit-overview-actions{gap:10px;display:flex}.visit-overview-actions .primary-button,.visit-overview-actions .secondary-button{border-radius:13px;flex:1;min-height:52px}.visit-overview-actions .primary-button{flex:1.6;gap:10px;font-size:17px}.task-rows-show-all{color:var(--accent);text-align:center;padding-top:2px;font-size:14.5px;font-weight:800;text-decoration:none;display:block}.task-rows-show-all:hover{color:var(--accent-strong)}.toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.primary-button,.secondary-button,.icon-button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-height:40px;font-weight:700;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.primary-button{background:var(--accent);color:var(--on-accent);padding:0 16px}.clear-month-sheet-text{flex-direction:column;gap:8px;padding:0 20px;display:flex}.primary-button.is-danger{background:var(--danger);color:#fff}.secondary-button{background:var(--surface);border-color:var(--line);color:var(--ink);padding:0 14px}.icon-button{background:var(--surface);border-color:var(--line);color:var(--ink);flex:none;width:40px;height:40px;padding:0}.primary-button:disabled,.secondary-button:disabled,.icon-button:disabled{background:var(--surface-muted);border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.72}.pending-label{justify-content:center;align-items:center;gap:8px;display:inline-flex}.is-pending:disabled{cursor:progress;opacity:1}.primary-button.is-pending:disabled{background:var(--accent);color:var(--on-accent);border-color:#0000}.secondary-button.is-pending:disabled,.icon-button.is-pending:disabled{background:var(--surface);border-color:var(--line);color:var(--ink)}.zone-choice-link:disabled,.zone-switcher-link:disabled,.field-menu-zone-button:disabled,.field-menu-logout-button:disabled,.sidebar-logout-button:disabled{cursor:not-allowed;opacity:.72}.zone-choice-link.is-pending:disabled,.zone-switcher-link.is-pending:disabled,.field-menu-zone-button.is-pending:disabled,.field-menu-logout-button.is-pending:disabled,.sidebar-logout-button.is-pending:disabled{cursor:progress;opacity:.85}.secondary-button.danger{background:var(--danger-surface);border-color:var(--danger-line);color:var(--danger)}.secondary-button.is-accent,.icon-button.is-accent{border-color:var(--accent);color:var(--accent)}.secondary-button.is-accent:hover,.icon-button.is-accent:hover{background:var(--accent-soft)}.icon-button.is-borderless{border-color:#0000}.dashboard-grid,.manager-grid,.admin-users-grid{gap:16px;max-width:1180px;margin:0 auto;display:grid}.dashboard-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)}.manager-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.admin-users-grid{grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr);margin-top:16px}.panel,.metric-card,.visit-card,.visit-location-card,.import-row{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.panel{padding:18px}.panel h2{margin:0 0 14px;font-size:18px}.panel>.form-hint{margin:0 0 16px}.panel-collapsible>.panel-summary{cursor:pointer;justify-content:space-between;align-items:center;margin:0 0 14px;list-style:none;display:flex}.panel-collapsible:not([open])>.panel-summary{margin:0}.panel-collapsible>.panel-summary::-webkit-details-marker{display:none}.panel-collapsible>.panel-summary h2{margin:0}.panel-collapsible>.panel-summary>.panel-title-stack{margin-bottom:0}.panel-collapsible>.panel-summary:after{color:var(--muted);content:"›";flex-shrink:0;font-size:20px;line-height:1;transition:transform .2s}.panel-collapsible[open]>.panel-summary:after{transform:rotate(90deg)}.panel-title-stack{gap:6px;margin-bottom:14px;display:grid}.panel-title-stack h2,.panel-title-stack p{margin:0}.panel-title-stack p{color:var(--muted);font-size:14px}.panel-title-stack--icon{align-items:center;gap:10px;display:flex}.panel-title-lead{align-items:center;gap:10px;min-width:0;display:flex}.panel-title-icon{background:var(--accent);color:var(--on-accent);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}h2:has(>.panel-title-icon){align-items:center;gap:10px;display:flex}.panel-title-icon svg{width:15px;height:15px}.field-stack{gap:12px;display:grid}.import-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-card,.visit-location-card,.import-row{padding:14px}.visit-card{gap:12px;display:grid}.visit-card.is-plain{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.visit-location-card{flex-direction:column;gap:14px;display:flex}.visit-card header,.import-row,.metric-card header{justify-content:space-between;align-items:center;gap:12px;display:flex}.visit-card h2,.import-row h2,.metric-card h2{margin:0;font-size:16px}.visit-meta,.import-row p,.metric-label,.small-label{color:var(--muted);font-size:13px}.visit-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.import-row-optional{margin-top:6px}.import-row-optional>summary{color:var(--accent-strong);cursor:pointer;padding-block:4px;font-size:13px;font-weight:700}.import-row-optional>p{overflow-wrap:anywhere;margin:4px 0 0}.visit-form{border-top:1px solid var(--line);gap:10px;margin-top:12px;padding-top:12px;display:grid}.visit-card>.visit-form{padding-bottom:calc(var(--field-report-submit-bar-height,172px) + 16px);border-top:0;margin-top:0;padding-top:0}.visit-form label{color:var(--ink);gap:6px;font-size:13px;font-weight:800;display:grid}.checkbox-label{color:var(--ink);cursor:pointer;grid-template-columns:auto 1fr;grid-auto-flow:column;place-items:center start;gap:6px;font-size:13px;font-weight:800;display:grid}.location-equipment{gap:12px;padding:12px 16px 16px;display:grid}.location-equipment-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.location-equipment-form>.icon-button{justify-self:end}.location-equipment-remove{color:var(--danger)}.location-equipment-remove:hover{background:var(--danger-surface);border-color:var(--danger-line)}.location-equipment-form{display:grid}.location-equipment-form label{min-width:0}.location-equipment-form label input,.location-equipment-form label textarea{width:100%}.location-equipment-passport{grid-template-columns:minmax(0,1fr);gap:8px 16px;display:grid}@media (min-width:640px){.location-equipment-passport{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.location-equipment-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;column-gap:16px}.location-equipment-form .location-equipment-passport{grid-area:2/1/auto/3}.location-equipment-form .location-equipment-counter{grid-area:3/1/auto/3}.location-equipment-form .location-equipment-note{grid-area:4/1/auto/3}.location-equipment-form>button{grid-area:4/3}.location-equipment-form--add{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.location-equipment-form--add .location-equipment-passport,.location-equipment-form--add .location-equipment-counter,.location-equipment-form--add .location-equipment-note{grid-area:auto/1/auto/-1}.location-equipment-form--add>button{grid-area:auto/1/auto/-1;justify-self:end}}.reading-field-note{color:var(--ink-muted);font-size:var(--fs-meta,13px);margin:0;font-weight:400}.reading-field-note summary{cursor:pointer;align-items:center;gap:6px;min-height:44px;margin-block:-8px;list-style:none;display:flex}.reading-field-note summary::-webkit-details-marker{display:none}.reading-field-note summary:after{content:"";border-bottom:2px solid;border-right:2px solid;width:6px;height:6px;transform:rotate(45deg)translate(-2px,-2px)}.reading-field-note[open] summary:after{transform:rotate(-135deg)translate(-2px,-2px)}.reading-field-note p{color:var(--ink);overflow-wrap:anywhere;white-space:pre-line;margin:12px 0 6px}.reading-field{gap:4px;display:grid}.reading-field-name{margin-bottom:4px;font-weight:600;display:block}.reading-field-input{align-items:center;gap:8px;display:flex}.reading-field-input input{flex:1;min-width:0}.reading-field-unit{color:var(--ink-muted)}.reading-field-hint{color:var(--ink);font-weight:600}.checkbox-label .form-hint{font-weight:500;display:block}.checkbox-label input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:16px;height:16px}.visit-form input:not([type=checkbox]):not([type=radio]),.visit-form select,.visit-form textarea{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:8px;max-width:100%;font-weight:500}.visit-form input:not([type=checkbox]):not([type=radio]){min-height:42px;padding:8px 10px}.visit-form select{min-height:42px;padding:0 10px}.visit-form textarea{resize:vertical;min-height:86px;padding:10px 12px}.visit-form input:not([type=checkbox]):not([type=radio]):focus,.visit-form select:focus,.visit-form textarea:focus{border-color:var(--accent);outline:2px solid var(--accent-soft)}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.confirm-inline-form{margin-top:14px}.field-card-list{gap:10px;display:grid}.location-note-text{overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.location-mini-card{border:1px solid var(--line);border-radius:8px;gap:9px;padding:12px;display:grid}.field-product-list .location-mini-card{background:var(--surface)}.field-location-list .location-mini-card,.coverage-group .location-mini-card{background:var(--surface);color:inherit;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;text-decoration:none}.field-location-list .location-mini-card-body,.coverage-group .location-mini-card-body{gap:4px;min-width:0;display:grid}.field-location-list .location-mini-card-chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.field-location-list .point-info-chip{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.location-mini-card-link{color:inherit;text-decoration:none;transition:border-color .15s,background .15s}.location-mini-card-link:hover{background:var(--surface-muted,#00000005);border-color:var(--accent)}.location-mini-card header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.location-mini-card h3,.location-mini-card p{margin:0}.location-mini-card h3{font-size:15px}.location-mini-card header p{color:var(--muted);margin-top:3px;font-size:13px}.location-mini-card .product-card-link{color:var(--accent);text-underline-offset:3px;margin:-6px -4px;padding:6px 4px;text-decoration:underline;display:inline-block}.manager-product-cards>.location-mini-card{background:var(--surface);box-shadow:var(--shadow-card);transition:box-shadow .15s,transform .15s,border-color .15s;position:relative}.manager-product-cards>.location-mini-card:has(.product-card-link):hover{border-color:var(--line-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.manager-product-cards>.location-mini-card:has(.product-card-link:focus-visible){border-color:var(--line-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}@media (min-width:921px){.manager-product-cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.manager-product-cards .product-card-link{text-decoration:none}.product-card-external{color:var(--ink-muted);margin-left:4px;font-size:.85em}.manager-product-cards .product-card-link:after{border-radius:inherit;content:"";position:absolute;inset:0}.manager-product-cards>.location-mini-card:has(.product-card-link):hover .product-card-link{color:var(--accent-strong)}@media (prefers-reduced-motion:reduce){.manager-product-cards>.location-mini-card{transition:none}.manager-product-cards>.location-mini-card:has(.product-card-link):hover{transform:none}.manager-product-cards>.location-mini-card:has(.product-card-link:focus-visible){transform:none}}.location-mini-card header p.product-card-meta{margin:0 0 3px}.location-mini-card .product-card-sku{letter-spacing:.02em;font-weight:700}.visit-history{gap:14px;display:grid}.visit-history>*{min-width:0}.visit-day-groups{gap:4px;display:grid}.visit-day-groups>*{min-width:0}.visit-day-header{background:var(--bg);cursor:pointer;top:calc(var(--field-top-inset,0px) + 73px + env(safe-area-inset-top));z-index:2;align-items:center;gap:8px;padding:10px 0 8px;list-style:none;display:flex;position:sticky}.visit-day-header::-webkit-details-marker{display:none}@media (pointer:coarse){.visit-day-header{min-height:44px}}.visit-day-header h2{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:13px;font-weight:600}.visit-day-month{letter-spacing:.04em;font-size:12px}.visit-day-recap b{font-weight:800}.visit-day-recap .is-completed b{color:var(--accent)}.visit-day-recap .is-problem b{color:var(--danger)}.visit-day-recap .is-in-progress b{color:var(--gold)}.visit-day-recap .is-unseen b{color:var(--blue)}.visit-day-recap span+span:before{content:"·";margin:0 5px}@supports (content:"a" / ""){.visit-day-recap span+span:before{content:"·" / ""}}.visit-day-recap{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;font-size:12px;overflow:hidden}.visit-day-rule{background:var(--line);flex:1;min-width:12px;height:1px}.visit-day-chevron{color:var(--muted);flex:none;align-items:center;transition:transform .2s;display:inline-flex}.visit-day[open] .visit-day-chevron{transform:rotate(180deg)}.visit-row{background:var(--surface);border:1px solid var(--line);color:inherit;border-radius:12px;align-items:center;gap:12px;padding-right:12px;text-decoration:none;transition:border-color .15s,background .15s;display:flex;overflow:hidden}.visit-row:hover{background:var(--surface-muted);border-color:var(--accent)}.visit-row.is-archived,.visit-row.is-archived:hover{background:var(--warn-surface)}.visit-row:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.visit-row-date{background:var(--visit-row-soft,var(--surface-muted));color:var(--visit-row-ink,var(--muted));text-align:center;flex-direction:column;flex:none;justify-content:center;align-self:stretch;align-items:center;width:62px;min-height:62px;padding:10px 6px;display:flex}.visit-row-date b{letter-spacing:-.02em;font-size:21px;font-weight:850;line-height:1}.visit-row-date i{font-size:var(--fs-caption,12px);letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-style:normal;font-weight:800}.visit-row-date em{font-size:var(--fs-caption,12px);opacity:.75;margin-top:1px;font-style:normal;font-weight:700}.visit-row-main{gap:3px;min-width:0;padding:10px 0;display:grid}.visit-row--dateless .visit-row-main{padding-left:14px}.visit-row-title{align-items:center;gap:7px;min-width:0;display:flex}.visit-row-title h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:800;overflow:hidden}.visit-row-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;min-width:0;margin:0;font-size:13px;display:flex;overflow:hidden}.visit-row-sub-icon{color:var(--muted);flex:none;display:inline-flex}.visit-row-chevron{color:var(--muted);flex:none;margin-left:auto;display:inline-flex}.visit-row.is-completed{--visit-row-ink:var(--accent-strong);--visit-row-soft:color-mix(in srgb, var(--accent) 12%, var(--surface));--visit-row-tone:var(--accent)}.visit-row.is-unfinished{--visit-row-ink:var(--gold);--visit-row-soft:color-mix(in srgb, var(--gold) 12%, var(--surface));--visit-row-tone:var(--gold)}.visit-row.is-problem{--visit-row-ink:var(--danger);--visit-row-soft:color-mix(in srgb, var(--danger) 10%, var(--surface));--visit-row-tone:var(--danger)}.visit-row.is-unfinished,.visit-row.is-problem,.visit-row--dateless.is-completed{position:relative}.visit-row.is-unfinished:before,.visit-row.is-problem:before,.visit-row--dateless.is-completed:before{background:var(--visit-row-tone);content:"";z-index:1;width:3px;position:absolute;top:0;bottom:0;left:0}.visit-row-marks{gap:6px;display:flex}.visit-row-mark{border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.visit-row-mark.is-tasks{background:var(--accent-tint);color:var(--accent)}.visit-row-mark.is-shelf{background:var(--warn-surface);color:var(--warn-ink)}.visit-row-mark.is-problem{background:var(--danger-surface);color:var(--danger)}.visit-row-title h3.is-clamped{color:var(--muted);-webkit-line-clamp:2;overflow-wrap:anywhere;white-space:normal;-webkit-box-orient:vertical;min-width:0;font-weight:500;line-height:1.4;display:-webkit-box}.visit-row-title-icon{color:var(--muted);flex:none;align-self:flex-start;margin-top:3px;display:inline-flex}.visit-row-title-icon.is-muted{color:var(--ink-faint)}.visit-row-title h3.is-muted{color:var(--ink-muted);font-weight:500}.list-count-summary{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 16px;font-size:13px;display:flex}.list-count-summary strong{color:var(--ink);font-size:16px;font-weight:800}.list-count-summary span:before{content:"·";margin-right:8px}@supports (content:"a" / ""){.list-count-summary span:before{content:"·" / ""}}.period-handover{text-align:center;justify-items:center;gap:8px;margin-top:14px;display:grid}.period-handover p{color:var(--muted);margin:0}.period-step-back{border:1px solid var(--line);color:var(--accent);text-align:center;border-radius:12px;width:100%;padding:14px 16px;font-size:14px;font-weight:800;display:block}.period-step-back:hover{background:var(--surface-muted);border-color:var(--accent)}.period-step-back:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.list-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:18px;display:flex}.journal-history-chip{margin:0 0 10px}.journal-history-chip .chip{padding:4px 4px 4px 12px;font-size:13px}.chip-remove{color:inherit;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.chip-remove:hover{background:color-mix(in srgb, var(--accent) 14%, transparent)}.chip-remove svg{width:14px;height:14px}.journal-history-link{color:var(--accent-strong);align-items:center;gap:6px;min-height:32px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.journal-history-link:hover{text-decoration:underline}.journal-history-link svg{width:15px;height:15px}.user-journal-links{border-top:1px solid var(--line);flex-wrap:wrap;gap:4px 18px;padding-top:10px;display:flex}.journal-days{gap:4px;display:grid}.journal-day>.journal-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}.journal-day-summary{cursor:pointer;align-items:center;gap:8px;padding:10px 0 8px;list-style:none;display:flex}@media (pointer:coarse){.journal-day-summary{min-height:44px}}.journal-day-summary::-webkit-details-marker{display:none}.journal-day-summary::marker{content:""}.journal-day-summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.journal-day-summary .journal-day-title{color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:13px;font-weight:600}.journal-day-rule{background:var(--line);flex:1;min-width:12px;height:1px}.journal-day-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.journal-day-chevron{color:var(--muted);flex:none;align-items:center;transition:transform .2s;display:inline-flex}.journal-day[open] .journal-day-chevron{transform:rotate(180deg)}.journal-list{margin:0;padding:0;list-style:none}.journal-row{background:var(--surface);grid-template-columns:36px minmax(0,1fr);gap:10px;padding:5px 14px;font-size:12px;line-height:1.4;display:grid}.journal-row+.journal-row{border-top:1px solid var(--line)}.journal-time{color:var(--muted);font-variant-numeric:tabular-nums}.journal-body{overflow-wrap:anywhere;min-width:0;margin:0}.journal-action{font-weight:700}.journal-subject{font-weight:500}.journal-meta{color:var(--muted)}.journal-actor{color:var(--ink);font-weight:600}.filter-sheet-trigger{background:var(--surface);border:1px solid var(--line);color:var(--muted);cursor:pointer;font:inherit;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:7px 12px 7px 10px;font-size:12px;font-weight:850;display:inline-flex}.filter-sheet-trigger>svg{flex-shrink:0;width:14px;height:14px}.filter-sheet-trigger .filter-pill-count{margin-left:0}.scroll-strip:has(>.filter-sheet-row){margin:10px 0 14px}.filter-sheet-row{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:640px){.filter-sheet-row{flex-wrap:nowrap;padding-block:2px}.filter-sheet-row>*{flex-shrink:0}}.filter-sheet-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.filter-sheet-trigger.is-active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.filter-sheet-toggle{position:relative}.filter-sheet-toggle:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.filter-sheet-toggle:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.task-watch-button.is-watched,.task-watch-button.is-watched:hover{color:var(--gold)}.filter-sheet-toggle-group:not(:has(input:checked)) .filter-sheet-reset{display:none}.filter-sheet-toggle-group:not(:has(input:checked)) .filter-sheet-trigger{border-radius:999px;padding-right:12px}.filter-sheet-select{justify-self:start;align-items:stretch;max-width:100%;display:inline-flex}.filter-sheet-select:has(.filter-sheet-reset) .filter-sheet-trigger{border-top-right-radius:0;border-bottom-right-radius:0;padding-right:8px}.filter-sheet-reset{background:var(--accent);border:1px solid var(--accent);border-left-color:color-mix(in srgb, var(--on-accent) 35%, transparent);color:var(--on-accent);cursor:pointer;border-radius:0 999px 999px 0;flex-shrink:0;justify-content:center;align-items:center;padding:0 10px 0 7px;display:inline-flex}.filter-sheet-reset svg{width:13px;height:13px}.filter-sheet-reset:hover{background:var(--accent-strong);border-color:var(--accent-strong);border-left-color:color-mix(in srgb, var(--on-accent) 35%, transparent)}.filter-sheet-reset:focus-visible,.filter-sheet-trigger:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.filter-sheet-option:has(input:focus-visible){outline:2px solid var(--accent-strong);outline-offset:2px}.filter-sheet-option{cursor:pointer}.filter-form.filter-date-sheet-body{grid-template-columns:minmax(0,1fr);padding:16px 18px 20px}.filter-date-sheet-body .filter-field--range{grid-column:auto}.filter-date-sheet-body .filter-field-label{display:none}.filter-sheet-check{visibility:hidden;display:inline-flex}.filter-sheet-option:has(input:checked) .filter-sheet-check{visibility:visible}.page-title-row{align-items:center;gap:10px;display:flex;position:relative}.page-title-row--spread{flex:auto;min-width:0}.page-title-row--spread>.collapsible-search-toggle{margin-inline-start:auto}.page-header:has(>.page-title-row--spread){grid-template-columns:minmax(0,1fr)}.collapsible-search-toggle{display:none}@media (max-width:640px){.collapsible-search-toggle{background:var(--surface);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.collapsible-search-toggle.is-applied{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.collapsible-search[data-open=false]{display:none}.collapsible-search .history-search input[type=search]::placeholder{color:#0000}}.page-title-row .info-hint{position:static}.page-title-row .info-hint svg{width:20px;height:20px}@media (min-width:768px){.app-shell:not(.app-shell--mobile-only) .main-surface>.page-header:has(.page-title-row .info-hint:is(:hover,:focus-within)){box-shadow:none;clip-path:none}}.list-pagination p{margin:0}.list-pagination--split{grid-template-columns:1fr auto 1fr;justify-content:stretch;align-items:center;gap:12px;margin-bottom:24px;display:grid}.list-pagination--split p{text-align:center;grid-column:2}.list-pagination--split .list-pagination-prev{grid-column:1;justify-self:start}.list-pagination--split .list-pagination-next{grid-column:3;justify-self:end}.visit-form.compact{border-top:0;margin-top:0;padding-top:0}.visit-form-2col{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.visit-form-2col>.visit-form-full{grid-column:1/-1}@media (max-width:640px){.visit-form-2col{grid-template-columns:minmax(0,1fr)}}.checkbox-group{border:1px solid var(--line);border-radius:8px;gap:8px;margin:0;padding:12px;display:grid}.checkbox-group legend{color:var(--muted);text-transform:uppercase;padding:0 4px;font-size:12px;font-weight:800}.checkbox-group label{align-items:center;gap:10px;font-size:14px;font-weight:700;display:flex}.checkbox-group input[type=checkbox]{accent-color:var(--accent);flex:none;width:20px;height:20px;margin:0}@media (pointer:coarse){.checkbox-group label{min-height:44px}}.admin-users-panel{grid-column:1/-1;min-width:0}@media (max-width:767px){.panel.admin-users-panel{overflow:visible}.admin-users-panel>.panel-toolbar{background:var(--surface);top:var(--mobile-topbar-height);z-index:5;margin:0 -18px 6px;padding:8px 18px;position:sticky;box-shadow:0 8px 8px -8px #17211b24}}.admin-invites-panel{grid-column:1/-1}.panel-summary-sub{color:var(--muted);margin:0 0 14px}.admin-user-list{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.product-card-grid{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}.product-card-grid>.admin-user-row{box-shadow:var(--shadow-card);transition:box-shadow .15s,transform .15s,border-color .15s}.product-card-grid>.admin-user-row:hover,.product-card-grid>.admin-user-row:focus-within{border-color:var(--line-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.drilldown-panel .history-search input[type=search]{box-shadow:var(--shadow-card)}@media (prefers-reduced-motion:reduce){.product-card-grid>.admin-user-row{transition:none}.product-card-grid>.admin-user-row:hover,.product-card-grid>.admin-user-row:focus-within{transform:none}}.user-group-list{gap:20px;display:grid}.user-group{background:var(--surface-muted);border:1px solid var(--line);border-radius:12px;min-width:0}.user-group-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;list-style:none;display:flex}.user-group[open]>.user-group-summary{border-bottom:1px solid var(--line)}.user-group>.admin-user-list,.user-group>.empty-state{padding:14px 16px 16px}.user-group-summary::-webkit-details-marker{display:none}.user-group-summary::marker{content:""}.user-group-summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:6px}.user-group-title{align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.user-group-icon{background:var(--accent);color:var(--on-accent);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.user-phone-field,.user-phone-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-phone-icon{color:var(--muted);display:inline-flex}.user-phone-field a{color:var(--accent-strong);font-weight:600;text-decoration:none}.user-phone-field a:hover{text-decoration:underline}.user-code-value{font-variant-numeric:tabular-nums;font-weight:600}.user-phone-empty{color:var(--muted);font-size:14px}.user-phone-form input:not([type=hidden]){max-width:240px}.user-group-icon svg{width:13px;height:13px}.admin-invite-list{gap:12px;display:grid}.admin-user-row{background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:12px;padding:14px;scroll-margin-top:120px;display:grid}.admin-user-disclosure{gap:0;padding:0}.admin-user-disclosure[open]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 10px 24px #161e1a14;gap:12px;padding:14px}.admin-user-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;list-style:none;display:flex}.admin-user-disclosure[open] .admin-user-summary{padding:0}.admin-user-body{gap:12px;display:grid}.admin-user-summary::-webkit-details-marker{display:none}.admin-user-summary::marker{content:""}.admin-user-summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:8px}.admin-user-summary-lead{min-width:0}.admin-user-summary--button{color:inherit;font:inherit;text-align:left;background:0 0;border:0;width:100%}.admin-user-summary--link{color:inherit;flex:1;width:auto;min-width:0;text-decoration:none}.admin-user-summary--button .admin-user-summary-lead{display:grid}.admin-user-summary-title{font-size:16px;font-weight:700}.admin-user-summary-code{color:var(--muted);font-size:var(--fs-meta,13px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-bottom:2px;font-weight:600}.admin-user-summary-subtitle{color:var(--muted);overflow-wrap:anywhere;margin-top:4px}.admin-user-summary-badge{margin-top:6px;display:flex}.admin-user-summary--button .admin-user-summary-lead{flex:1}.admin-user-summary--button .admin-user-summary-title{overflow-wrap:anywhere}.admin-user-summary--button .admin-user-summary-meta{flex-shrink:0}.user-name-field{align-items:center;gap:6px;display:flex}.user-name-field.editing{flex-wrap:wrap;gap:4px}.user-name-field.editing .user-name-input{flex:120px;min-width:0}.user-name-input{border:1px solid var(--line);font:inherit;border-radius:6px;max-width:100%;padding:4px 8px;font-size:16px;font-weight:700}.user-name-input[aria-invalid=true],.user-name-input[aria-invalid=true]:focus-visible{border-color:var(--danger);outline-color:var(--danger)}.user-name-error{color:var(--danger);flex:1 0 100%;margin:2px 0 0;font-size:13px;font-weight:600}.user-name-input:focus-visible{border-color:var(--accent);outline:2px solid var(--accent-strong);outline-offset:1px}.name-edit-button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:opacity .12s;display:inline-flex}.admin-user-disclosure:not([open]) .user-name-field .name-edit-button{display:none}.name-edit-button:hover{background:var(--surface-muted);color:var(--accent-strong)}.name-edit-button:disabled{cursor:not-allowed;opacity:.5}.name-edit-button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:1px}.name-edit-button.is-dragging{cursor:grabbing;opacity:.6;touch-action:none;z-index:20;position:relative}.week-day-route-drag-overlay{background:var(--surface);border:1px solid var(--line);cursor:grabbing;border-radius:14px;width:max-content;max-width:320px;padding:12px;box-shadow:0 14px 28px -10px #0000004d}.week-day-route-drag-overlay .week-day-route-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.panel-toolbar-filters{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.product-edit-form{border-top:0;margin-top:0;padding-top:0}.product-dialog input:not([type=checkbox]):not([type=radio]),.product-dialog select,.product-dialog textarea{transition:border-color .15s,box-shadow .15s}.product-dialog input:not([type=checkbox]):not([type=radio]):hover:not(:focus),.product-dialog select:hover:not(:focus),.product-dialog textarea:hover:not(:focus){border-color:var(--line-hover);box-shadow:var(--shadow-card)}.product-usage{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;gap:4px;padding:10px 12px;display:grid}.product-usage-line{color:var(--ink);margin:0;font-size:13px;font-weight:700}.product-usage-hint{color:var(--muted);margin:0;font-size:12px}.url-field{gap:6px;display:grid}.url-field-caption{color:var(--ink);font-size:13px;font-weight:800}.url-field-view{background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:center;gap:6px;min-width:0;min-height:42px;padding:0 6px 0 10px;display:flex}.url-field-link{color:var(--accent);min-width:0;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent), transparent 60%);text-decoration-color:color-mix(in srgb, var(--accent), transparent 60%);text-overflow:ellipsis;text-underline-offset:2px;white-space:nowrap;flex:1;font-size:13px;font-weight:600;overflow:hidden}.url-field-link:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.product-dialog .primary-button,.product-dialog .secondary-button,.product-dialog .icon-button{transition:background-color .15s,border-color .15s,box-shadow .15s}.product-dialog .primary-button:hover:not(:disabled){background:var(--accent-strong);box-shadow:var(--shadow-card)}.product-dialog .secondary-button:hover:not(:disabled),.product-dialog .icon-button:hover:not(:disabled){background:var(--surface-muted);border-color:var(--line-hover)}.product-dialog .secondary-button.danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger-surface), var(--danger) 10%);border-color:var(--danger)}@media (prefers-reduced-motion:reduce){.product-dialog input,.product-dialog select,.product-dialog textarea,.product-dialog .primary-button,.product-dialog .secondary-button,.product-dialog .icon-button{transition:none}}.product-edit-actions{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding-top:12px;display:flex}.product-dialog .modal-sticky-top{background:var(--surface);z-index:2;position:sticky;top:0}.product-dialog .product-edit-actions{background:var(--surface);z-index:1;margin-bottom:-20px;padding-bottom:20px;position:sticky;bottom:0}.unsaved-close-guard{background:var(--warn-surface);border-bottom:1px solid var(--warn-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:12px 20px;display:flex}.unsaved-close-guard p{margin:0;font-weight:600}.unsaved-close-guard-actions{flex-wrap:wrap;gap:8px;display:flex}.product-edit-actions-spacer{flex:1}.product-edit-actions:has(.confirm-action.confirming)>:not(.confirm-action){display:none}.product-edit-actions .confirm-action.confirming{flex:1}.confirm-action.confirming{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.confirm-action-prompt{color:var(--ink);font-size:13px;font-weight:700}.confirm-action-buttons{flex-wrap:wrap;gap:8px;display:flex}.report-save-choice.confirming{display:block}.report-save-choice .confirm-action-prompt{text-wrap:pretty;margin-bottom:10px;font-weight:600;line-height:1.5;display:block}.report-save-choice .confirm-action-buttons{gap:8px;display:grid}.report-save-choice .confirm-action-buttons>button{justify-content:center;width:100%;min-height:44px}.admin-user-name-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.superadmin-badge{background:var(--gold);color:#fff;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.info-hint{color:var(--muted);cursor:help;align-items:center;display:inline-flex;position:relative}.info-hint:hover,.info-hint:focus-visible{color:var(--accent-strong)}.info-hint-bubble{background:var(--ink);color:#fff;pointer-events:none;z-index:20;border-radius:8px;width:max-content;max-width:280px;padding:8px 10px;font-size:12px;font-weight:500;line-height:1.45;display:none;position:absolute;top:calc(100% + 6px);left:0}.panel.panel-collapsible{overflow:visible}@media (max-width:640px){.panel-collapsible .info-hint-bubble{max-width:min(280px,100vw - 64px);left:auto;right:0}}@keyframes info-hint-in{0%{opacity:0}to{opacity:1}}.info-hint-line{display:block}.info-hint-line+.info-hint-line{margin-top:6px}.label-with-hint{align-items:center;gap:6px;display:inline-flex}.info-hint:hover .info-hint-bubble,.info-hint:focus .info-hint-bubble,.info-hint:focus-within .info-hint-bubble{animation:.12s info-hint-in;display:block}.admin-user-summary-meta{flex-shrink:0;align-items:center;gap:10px;display:flex}.disclosure-chevron{border-bottom:2px solid var(--muted);border-right:2px solid var(--muted);width:8px;height:8px;transition:transform .15s;display:inline-block;transform:rotate(45deg)}.admin-user-disclosure[open] .disclosure-chevron{transform:rotate(-135deg)}.disclosure-chevron.is-forward{transform:rotate(-45deg)}.admin-invite-row{border:1px solid var(--line);border-radius:8px;gap:12px;padding:14px;display:grid}.admin-user-row header,.admin-invite-row header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-user-row h3,.admin-invite-row h3{margin:0;font-size:16px}.admin-user-row p,.admin-invite-row p{color:var(--muted);overflow-wrap:anywhere;margin:4px 0 0}.invite-meta-row{color:var(--muted);flex-wrap:wrap;gap:8px 12px;font-size:13px;display:flex}.role-chip-list{flex-wrap:wrap;gap:6px;display:flex}.role-chip{background:var(--surface-muted);color:var(--accent-strong);border-radius:999px;padding:6px 9px;font-size:12px;font-weight:850}.role-checkbox-list{flex-wrap:wrap;gap:8px;display:flex}.role-checkbox{background:var(--surface-muted);border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;display:inline-flex}.role-checkbox input{accent-color:var(--accent);cursor:pointer;width:16px;height:16px;margin:0}.role-checkbox:has(input:checked){background:var(--surface);border-color:var(--accent);color:var(--accent-strong);font-weight:600}.role-checkbox:has(input:disabled){color:var(--muted);cursor:not-allowed}.role-checkbox:has(input:disabled) input{cursor:not-allowed;opacity:.55}.role-checkbox:has(.role-checkbox-reason){align-items:flex-start}.role-checkbox:has(.role-checkbox-reason) input{margin-top:2px}.role-checkbox-reason{color:var(--muted);font-size:var(--fs-caption,12px);max-width:26ch;margin-top:2px;font-weight:500;display:block}.admin-user-summary-lead .role-chip-list{margin-top:6px}.email-text-part{text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.tenant-admin-list{gap:8px;display:grid}.tenant-admin-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.tenant-admin-row>span:first-child{overflow-wrap:anywhere;font-size:15px;font-weight:750}.tenant-admin-action,.tenant-name-form,.tenant-contact-form,.tenant-archive-form{display:flex}.tenant-status-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tenant-status-form>form{display:none}.tenant-status-form select{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:8px;min-width:160px;min-height:40px;padding:0 10px}.tenant-status-confirmation{color:var(--muted);margin:0;font-weight:700}.tenant-collapse::details-content{content-visibility:hidden;block-size:0;transition:block-size .22s ease, content-visibility .22s ease allow-discrete;overflow:clip}.tenant-collapse[open]::details-content{content-visibility:visible;block-size:auto}.tenant-collapse>summary:after{content:"";border:2px solid;border-width:0 2px 2px 0;width:7px;height:7px;margin-left:auto;transition:transform .16s;display:inline-block;transform:rotate(45deg)}.tenant-collapse[open]>summary:after{transform:rotate(-135deg)}.user-actions-grid{grid-template-columns:minmax(120px,.6fr) repeat(2,minmax(190px,1fr));gap:8px;display:grid}.inline-control-row{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.inline-control-form{gap:8px;min-width:0;display:flex}.inline-control-form select{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:8px;width:100%;min-width:0;min-height:40px;padding:0 10px}.user-actions-grid .inline-control-form{grid-template-columns:minmax(0,1fr) minmax(92px,max-content);align-items:center;display:grid}.user-actions-grid .inline-control-form:first-child{grid-template-columns:minmax(120px,max-content)}.user-actions-grid .secondary-button{width:100%}.form-hint{color:var(--muted);margin:0;font-size:13px}.form-hint.is-warning{color:var(--gold);font-weight:600}.import-issues-table td:nth-child(4){min-width:280px}.import-issues-table strong,.import-issues-table span,.import-history-table strong,.import-history-table span{display:block}.import-issues-table td{overflow-wrap:anywhere}.import-issues-table .import-issue-message{margin-top:6px}.import-issues-table .import-issue-value{color:var(--muted);margin-top:2px;font-size:13px}.import-issues-table .issue-badge,.import-history-table .issue-badge{display:inline-flex}.import-issues-table strong,.import-history-table strong{color:var(--ink);margin-bottom:4px;font-size:13px}.issue-badge{text-transform:capitalize;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:850;display:inline-flex}.issue-badge.success{color:var(--accent-strong);background:#eef8f1}.issue-badge.error{color:var(--danger);background:#fff1f1}.issue-badge.warning{color:#7a5a15;background:#fff9e8}.issue-badge.neutral{background:var(--surface-muted);color:var(--muted)}.empty-state{color:var(--muted);margin:0}.empty-state-panel{border:1px dashed var(--line-strong);border-radius:8px;justify-items:start;gap:12px;padding:18px;display:grid}.empty-state-panel h2,.empty-state-panel p{margin:0}.empty-state-panel p{color:var(--muted)}.location-insights-empty{text-align:center;justify-items:center}.location-insights-empty-icon{color:var(--muted);justify-content:center;align-items:center;display:flex}.location-contacts-empty{color:var(--ink-muted);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:44px 26px 30px;display:flex}.location-contacts-empty h2{color:var(--ink);margin:0;font-size:18px}.location-contacts-empty p{color:var(--muted);max-width:250px;margin:0;font-size:14.5px;line-height:1.5}.location-insight-card{border:1px solid var(--line);border-radius:8px;padding:14px}.location-insight-card-summary{justify-content:space-between;align-items:center;gap:10px;display:flex}.location-insight-card-summary h3{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:16px;overflow:hidden}.location-insight-card-summary-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.location-insight-card-body{gap:6px;margin-top:12px;display:grid}.location-insight-card-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.location-insight-card-actions>form{display:flex}@media (pointer:coarse){[data-zone=field] .location-insight-card-actions{gap:12px}}.location-insight-action{color:var(--accent);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.location-insight-action:hover{background:var(--accent-soft)}.location-insight-action--danger{color:var(--danger)}.location-insight-action--danger:hover{background:var(--danger-surface)}.location-insight-summary-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.location-potential-meta{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:14px;display:flex}.location-potential-meta-icon{color:var(--muted);flex-shrink:0;align-items:center;display:flex}.location-contact-card{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr);gap:8px;padding:14px;display:grid}.location-contact-card-head{justify-content:space-between;align-items:flex-start;gap:8px;min-width:0;display:flex}.location-contact-card-head h3{overflow-wrap:anywhere;min-width:0;margin:0;font-size:16px}.location-contact-lines{flex-wrap:wrap;gap:8px 18px;display:flex}.location-contact-line{color:var(--muted);overflow-wrap:anywhere;align-items:center;gap:6px;min-width:0;margin:0;font-size:14px;text-decoration:none;display:flex}.location-contact-line:hover{color:var(--accent)}.location-contact-line-icon{color:inherit;flex-shrink:0;align-items:center;display:flex}.location-insight-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px;display:grid}.location-insight-tile{background:var(--surface-muted);border-radius:8px;gap:4px;min-width:0;padding:10px;display:grid}.location-insight-tile-label{color:var(--muted);font-size:13px}.location-insight-tile-value{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.assortment-status-badge{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.assortment-status-badge--active{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent)}.assortment-status-badge--danger{background:var(--danger-surface);color:var(--danger)}.assortment-status-badge--warning{background:color-mix(in srgb, var(--gold) 18%, transparent);color:var(--gold)}.assortment-status-badge--neutral{background:var(--surface-muted);color:var(--muted)}.location-insight-pill,.location-assignment-pill{background:var(--surface-muted);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700}.copyable-value{border:1px solid var(--line);color:var(--ink);white-space:nowrap;background:#ffffffb8;border-radius:8px;margin-top:10px;padding:10px 12px;display:block;overflow-x:auto}@media (max-width:640px){.notice-panel{grid-template-columns:minmax(0,1fr)}.notice-panel>*{min-width:0}.notice-panel :is(h2,p){overflow-wrap:anywhere}.copyable-value{overflow-wrap:anywhere;white-space:normal;word-break:break-all}}.admin-accordion-stack>.category-accordion{margin:0}.admin-accordion-stack{grid-template-columns:minmax(0,1fr);gap:16px;max-width:1180px;margin:16px auto 0;display:grid}.setup-metric{align-items:baseline;gap:8px;display:flex}.setup-metric-value{font-size:22px;font-weight:850}.setup-metric-label{color:var(--muted);font-size:13px}.pilot-metrics{flex-wrap:wrap;align-items:baseline;gap:12px 32px;display:flex}.pilot-handoff{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.setup-subsection{margin-top:16px}.setup-subsection h3{margin:0 0 10px;font-size:15px}.setup-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.setup-card>header{align-items:flex-start}.setup-card-title{min-width:0;margin:0;font-size:15px;font-weight:800}.setup-card>header>.status-pill{flex-shrink:0}.setup-card .small-label{margin-top:10px}.setup-summary-block p{margin:0}.setup-summary-block p:not(.eyebrow){color:var(--muted);margin-top:5px}.setup-status{border-radius:999px;padding:5px 9px;font-size:12px;font-weight:850;display:inline-flex}.setup-status.ready{color:var(--accent-strong);background:#eef8f1}.setup-status.needs-work{color:#7a5a15;background:#fff9e8}.setup-status.blocked{color:var(--danger);background:#fff1f1}.setup-status.met{color:var(--accent-strong);background:#eef8f1}.setup-status.not-met{color:var(--danger);background:#fff1f1}.setup-status.na{background:var(--surface-muted);color:var(--muted)}.review-threshold-list{gap:10px;display:grid}.review-threshold{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.review-threshold h3,.review-threshold p{margin:0}.review-threshold h3{margin-top:6px;font-size:16px}.review-threshold p{color:var(--muted);margin-top:5px}.review-threshold strong{color:var(--ink);text-align:right}.summary-copy-box{background:var(--surface-muted);border:1px solid var(--line);color:var(--ink);resize:vertical;border-radius:8px;width:100%;min-height:360px;padding:12px}.setup-summary-block{border-bottom:1px solid var(--line);padding-bottom:12px}.setup-summary-block:last-child{border-bottom:0;padding-bottom:0}.drilldown-panel{max-width:1180px;margin:16px auto 0;overflow-x:auto}.panel-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.panel-toolbar h2{margin-bottom:0}.platform-tenants-section{max-width:1180px;margin:0 auto}.tenant-collapse-list{gap:10px;display:grid}.tenant-collapse{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.tenant-collapse>summary{cursor:pointer;align-items:center;gap:12px;padding:14px 16px;font-size:18px;font-weight:800;line-height:1.2;list-style:none;display:flex}.tenant-collapse>summary::-webkit-details-marker{display:none}.tenant-collapse-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.tenant-collapse>summary:hover{background:var(--surface-muted)}.tenant-collapse-body{border-top:1px solid var(--line);gap:16px;padding:16px;display:grid}.tenant-status-chip{background:var(--surface-muted);border:1px solid var(--line);color:var(--accent-strong);border-radius:999px;align-items:center;min-height:26px;padding:0 10px;font-size:12px;font-weight:850;display:inline-flex}.tenant-metrics-block{padding-top:0}.tenant-metrics-block h3{margin:0 0 10px;font-size:14px}.tenant-metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.tenant-metrics-grid>div{background:var(--surface-muted);border-radius:8px;gap:4px;min-width:0;padding:10px;display:grid}.tenant-metrics-grid dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:850}.tenant-metrics-grid dd{overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:850;line-height:1.1}.tenant-admin-metric-value{justify-content:space-between;align-items:center;gap:8px;display:flex}.tenant-metric-inline-text{overflow-wrap:anywhere;min-width:0}.tenant-field-icon-button{color:var(--accent-strong);flex-shrink:0;width:32px;height:32px;min-height:32px}.tenant-admin-cell-actions{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:6px;display:flex}.modal-admin-list{max-height:360px;overflow:auto}.add-stop-picker{gap:12px;padding:16px 18px 20px;display:grid}.add-stop-picker .modal-admin-list{margin:-2px -12px -2px -2px;padding:2px 12px 2px 2px}.add-stop-picker .history-search{margin:0}.task-form-dialog.is-filterable[open]{height:min(620px,92%)}.task-form-dialog.is-filterable .add-stop-picker{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.task-form-dialog.is-filterable .add-stop-picker .modal-admin-list{flex:0 auto;min-height:0;max-height:none}.tenant-admin-modal-body{gap:12px}.tenant-archive-section{margin-top:16px}.tenant-archive-section>summary{color:var(--muted);cursor:pointer;padding:8px 4px;font-size:14px;font-weight:700;list-style:none}.tenant-archive-section>summary::-webkit-details-marker{display:none}.tenant-archive-section>.tenant-collapse-list{margin-top:10px}.tenant-purge-block{flex-direction:column;gap:10px;display:flex}.tenant-purge-block>.tenant-status-confirmation{color:var(--muted);margin:0;font-size:14px}.modal-dialog{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:8px;width:100%;max-width:min(640px,100vw - 32px);max-height:min(720px,100dvh - 32px);margin:auto;padding:0;overflow:auto;box-shadow:0 24px 80px #0f172a3d}.modal-dialog::backdrop{background:#0f172a7a}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 20px 16px;display:flex}.modal-header h2{margin:2px 0 0;font-size:24px;font-weight:700;line-height:1.15}.modal-subtitle{color:var(--muted);margin:6px 0 0;font-size:14px}.modal-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.modal-meta{margin-top:2px;font-size:12px}.heading-count{color:var(--muted);font-weight:600}.modal-body{padding:20px}.modal-footer{background:var(--sheet-bg);border-top:1px solid var(--line);padding:12px 18px calc(20px + env(safe-area-inset-bottom));display:flex}.modal-footer .primary-button{flex:1;gap:9px}.field-required{color:var(--accent)}.modal-month-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.modal-month-row>label{min-width:0}.modal-month-row input{width:100%}.location-potential-submit{width:100%;min-height:48px;margin-top:4px}.modal-static-field{gap:6px;display:grid}.modal-static-label{color:var(--ink);font-size:13px;font-weight:800}.modal-static-value{background:var(--surface-muted);border:1px solid var(--line);color:var(--ink);border-radius:8px;min-height:42px;padding:10px 12px;font-weight:700}.matrix-switch{background:var(--surface-muted);border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;min-height:42px;padding:4px;display:grid}.matrix-switch-option{color:var(--muted);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;min-width:0;padding:0 6px;font-size:13px;font-weight:700;transition:background .16s,color .16s;display:flex;overflow:hidden}.matrix-switch-option--active{background:var(--accent);color:#fff}.matrix-switch-option:focus-visible{outline:2px solid var(--accent-soft)}.product-picker{position:relative}.product-picker-input{width:100%;padding-left:38px!important;padding-right:30px!important}.product-picker-icon{color:var(--muted);pointer-events:none;align-items:center;display:flex;position:absolute;top:13px;left:12px}.product-picker-chevron{color:var(--muted);pointer-events:none;font-size:18px;position:absolute;top:9px;right:12px}.product-picker-list{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);z-index:5;border-radius:8px;width:100%;max-height:220px;margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;overflow-y:auto}.product-picker-option{color:var(--ink);cursor:pointer;border-radius:6px;padding:9px 10px;font-size:14px}.product-picker-option:hover,.product-picker-option.is-active{background:var(--surface-muted)}.product-picker-empty,.product-picker-hint{color:var(--muted);padding:9px 10px;font-size:14px}.product-picker-hint{border-top:1px solid var(--line);font-style:italic}.visit-form.compact.modal-form{padding:20px}.modal-actions{justify-content:flex-end;gap:10px;display:flex}@media (max-width:640px){.modal-dialog:not(.is-sheet):not(.task-form-dialog)>.modal-header{background:var(--surface);z-index:2;position:sticky;top:0}.modal-dialog:not(.is-sheet):not(.task-form-dialog) .modal-form>.modal-actions{background:var(--surface);border-top:1px solid var(--line);z-index:1;margin:4px -20px -20px;padding:12px 20px;position:sticky;bottom:0}.modal-dialog:not(.is-sheet):not(.task-form-dialog) .modal-form>.modal-actions>.primary-button{flex:auto;min-width:0}}.modal-actions>button:only-child{width:100%}.category-items{counter-reset:category;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.category-item{border:1px solid var(--line);counter-increment:category;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 8px 14px;display:flex}.category-items .category-name:before{color:var(--muted);content:counter(category) ". ";font-variant-numeric:tabular-nums}.category-item:has(.confirm-action.confirming){grid-column:1/-1}.category-item:has(.confirm-action.confirming) .category-name{min-width:max-content}.category-item span{overflow-wrap:anywhere;font-weight:600}.category-accordion{max-width:1180px;margin:16px auto 0}.category-accordion>.panel-summary{gap:16px}.category-accordion-body{gap:14px;display:grid}.category-accordion-body .empty-hint{color:var(--muted);margin:0;font-size:14px}.category-add-toggle{justify-self:start}.category-add-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.category-add-form .field-inline-error{margin:4px 0 0;position:absolute;top:100%;left:0}.category-add-form:has(.field-inline-error){margin-bottom:28px}.category-add-form label{color:var(--ink);flex:1;gap:6px;min-width:200px;font-size:13px;font-weight:800;display:grid;position:relative}.category-add-form input,.category-edit input{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:8px;min-height:42px;padding:8px 10px}.category-edit{flex:1;align-items:center;gap:6px;display:flex}.category-edit input{flex:1;min-width:0;min-height:38px}.category-actions{align-items:center;gap:6px;display:flex}.category-name{overflow-wrap:anywhere;min-width:0}.reason-pill-list{margin:0;padding:0;list-style:none}.reason-pill{cursor:default;align-items:center;gap:2px;padding:3px 4px 3px 12px;display:inline-flex}.reason-pill form{display:inline-flex}.reason-pill .name-edit-button{padding:3px}.reason-pill .name-edit-button svg{width:14px;height:14px}.reason-pill .category-edit input{width:16ch;min-height:26px;padding:2px 8px;font-size:16px}.category-archived{gap:8px;margin-top:16px;display:grid}.category-archived h3{color:var(--muted);margin:0;font-size:13px}.reason-pill.is-archived{border-style:dashed}.reason-pill:not(.is-archived){color:var(--ink)}.reason-pill:has(.confirm-action.confirming){border-radius:14px;flex-wrap:wrap;padding:8px 12px}.reason-pill .confirm-action-inline.confirming{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.reason-breakdown{gap:4px;margin:0;padding:0;list-style:none;display:grid}.reason-breakdown-row{color:var(--ink);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:8px;text-decoration:none;display:grid}.reason-breakdown-row:hover,.reason-breakdown-row:focus-visible{background:var(--danger-surface)}.reason-breakdown-name{overflow-wrap:anywhere;min-width:0;font-weight:600}.reason-breakdown-archived{color:var(--muted);margin-left:8px;font-size:12px;font-weight:400}.reason-breakdown-count{font-variant-numeric:tabular-nums;font-weight:700}.reason-breakdown-share{color:var(--ink-muted);margin-left:8px;font-weight:500}.reason-breakdown-bar{background:var(--danger-surface);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.reason-breakdown-bar>span{background:color-mix(in srgb, var(--danger) 62%, var(--surface));border-radius:inherit;height:100%;display:block}.reason-breakdown--positive .reason-breakdown-row:hover,.reason-breakdown--positive .reason-breakdown-row:focus-visible{background:color-mix(in srgb, var(--chart-1) 10%, var(--surface))}.reason-breakdown--positive .reason-breakdown-bar{background:color-mix(in srgb, var(--chart-1) 14%, transparent)}.reason-breakdown--positive .reason-breakdown-bar>span{background:var(--chart-1)}.filter-groups{justify-items:start;gap:8px;display:grid}.filter-panel{background:var(--surface-muted);border:1px solid var(--line);border-radius:12px;margin:0 0 14px}.filter-panel-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;list-style:none;display:flex}.filter-panel-summary::-webkit-details-marker{display:none}.filter-panel[open] .filter-panel-summary{border-bottom:1px solid var(--line)}.filter-panel-title{color:var(--ink);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:10px;font-size:13px;font-weight:800;display:flex}.filter-panel-title svg{color:var(--accent)}.filter-panel-chevron{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:transform .2s;display:inline-flex}.filter-panel[open] .filter-panel-chevron{transform:rotate(180deg)}.filter-active-dot{background:var(--accent);border-radius:999px;width:8px;height:8px}.filter-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:14px;display:grid}.locations-filter-form{grid-template-columns:repeat(4,minmax(0,1fr))}.representatives-filter-form{grid-template-columns:minmax(220px,420px) 1fr}.filter-field{gap:6px;min-width:0;display:grid}.filter-field--range{grid-column:span 2}.filter-field-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.filter-field-control{align-items:center;min-width:0;display:flex;position:relative}.filter-field-icon{color:var(--muted);pointer-events:none;align-items:center;display:inline-flex;position:absolute;left:10px}.filter-field-icon svg{width:16px;height:16px}.filter-date-range{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.filter-date-range-dash{color:var(--muted)}.filter-form input,.filter-form select{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:8px;width:100%;min-width:0;min-height:40px;padding:9px 10px 9px 34px}.filter-form input::placeholder{color:var(--placeholder)}.filter-form select:has(option[value=""]:checked){color:var(--placeholder)}.filter-form input[type=date]{cursor:pointer}.filter-form input[type=date]::-webkit-calendar-picker-indicator{display:none}.filter-date-placeholder{display:none}@supports selector(input::-webkit-datetime-edit){.filter-form input[type=date][data-empty]:not(:focus)::-webkit-datetime-edit{color:#0000}.filter-date-placeholder{color:var(--placeholder);pointer-events:none;display:inline;position:absolute;left:34px}.filter-field-control:focus-within .filter-date-placeholder{display:none}}.filter-footer{border-top:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;margin:0 -14px -14px;padding:12px 14px;display:flex}.filter-result-count{color:var(--muted);margin:0;font-size:13px}.filter-footer .secondary-button{margin-left:auto}.filter-result-count b{color:var(--ink);font-weight:800}.filter-pills{flex-wrap:wrap;gap:6px;display:flex}.filter-pills label{border:1px solid var(--line);color:var(--muted);cursor:pointer;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850}.filter-pills a{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;text-decoration:none}.filter-pills a[aria-current=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.filter-pills input{opacity:0;width:0;height:0;position:absolute}.filter-pills label:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.filter-pills label:has(input:focus-visible){outline:2px solid var(--accent-strong);outline-offset:2px}.filter-pills label.filter-pill--priority:has(input:checked){background:var(--gold);border-color:var(--gold)}.filter-pills label.filter-pill--overdue:has(input:checked){background:var(--danger);border-color:var(--danger)}.history-header .period-pill{margin-left:auto}.history-header .history-export{flex-shrink:0}.coverage-sections{gap:16px;display:grid}.history-search{margin:0 0 12px;position:relative}.history-search-icon{color:var(--muted);pointer-events:none;align-items:center;display:inline-flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.history-search-icon svg{width:16px;height:16px}.history-search input[type=search]{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:10px;width:100%;min-width:0;min-height:44px;padding:10px 12px 10px 38px;font-size:16px}.history-search input[type=search]::placeholder{color:var(--placeholder)}.visit-form .history-search input[type=search]{border-radius:10px;min-height:44px;padding:10px 12px 10px 38px;font-size:16px}.period-pill{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:0 0;border-radius:999px;flex:0 auto;align-items:center;gap:4px;min-width:0;max-width:60%;padding:7px 10px;font-size:12px;font-weight:850;text-decoration:none;display:inline-flex}.period-pill-label{text-overflow:ellipsis;overflow:hidden}.period-pill:hover{border-color:var(--accent);color:var(--accent-strong)}.period-pill:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.period-pill-chevron{color:var(--muted);align-items:center;display:inline-flex}.period-sheet-body{gap:18px;padding:8px 20px 28px;display:grid}.period-sheet-presets{flex-wrap:wrap;gap:8px;display:flex}.period-sheet-presets a{border:1px solid var(--line);color:var(--ink);text-align:center;border-radius:999px;flex:1;padding:12px 10px;font-size:14px;font-weight:800;text-decoration:none}.period-sheet-presets a[aria-current=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.period-sheet-presets a:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.period-sheet-range{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);padding:16px 0 0}.period-sheet-range .filter-field--range{grid-column:auto}.period-sheet-footer{gap:10px;padding-top:4px;display:flex}.period-sheet-footer .filter-apply-button{flex:1;min-height:48px}.sheet-eyebrow-title{font-size:14px;font-weight:800}.visit-sheet-address{color:var(--muted);margin:4px 0 0}.visit-sheet-actions{padding:0 20px 12px;display:flex}.visit-sheet-actions .primary-button{align-items:center;gap:8px;display:inline-flex}.visit-sheet-sections{gap:12px;padding:0 20px 28px;display:grid}.visit-sheet-section{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:12px;min-width:0;padding:13px 15px;display:grid}.visit-sheet-section-head{align-items:center;gap:12px;display:flex}.visit-sheet-section-head h3{margin:0}.visit-sheet-section-body{gap:10px;min-width:0;display:grid}.visit-sheet-section .status-chip{cursor:default}.visit-sheet-tasks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.visit-sheet-tasks li{background:var(--surface-muted);border-radius:10px;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 12px;display:flex}.visit-sheet-task-title{overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:700}.visit-sheet-task-due{color:var(--muted);flex:none;font-size:12.5px;font-weight:600}.visit-sheet-text{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:14.5px;line-height:1.5}.visit-sheet-line{margin:0;font-size:14px;font-weight:700}.visit-sheet-line-label{color:var(--muted);margin-right:6px;font-weight:600}.visit-sheet-section .report-photos-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.visit-sheet-section .report-photo-tile{aspect-ratio:1;width:auto;height:auto}.visit-sheet-hint{color:var(--muted);margin:0;font-size:13px}.visit-sheet-notice{gap:6px;padding:0 20px 28px;display:grid}.visit-sheet-notice h3{margin:0;font-size:16px}.visit-sheet-notice p{color:var(--muted);margin:0}.visit-sheet-notice.is-danger .eyebrow,.visit-sheet-notice.is-danger h3{color:var(--danger)}.period-links{flex-wrap:wrap;gap:2px 16px;padding:0 2px;display:flex}.period-links a{color:var(--muted);padding:2px 0;font-size:12px;font-weight:700;text-decoration:none}.period-links a[aria-current=true],.period-links a[data-pending=true]{color:var(--accent);text-underline-offset:3px;font-weight:850;text-decoration:underline}.period-links:has([data-pending=true]) a[aria-current=true]:not([data-pending=true]){color:var(--muted);font-weight:700;text-decoration:none}.period-links a:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:4px}.period-links.is-pills{gap:8px;padding:0}.task-band-controls{margin:10px 0 14px}.task-band-controls .list-count-summary{margin:8px 0 0}.task-band-empty{color:var(--muted);margin:12px 0 0;font-size:14px}.period-links.is-pills a{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:7px 12px;font-weight:850;text-decoration:none}.period-links.is-pills a[aria-current=true],.period-links.is-pills a[data-pending=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);text-decoration:none}.period-links.is-pills:has([data-pending=true]) a[aria-current=true]:not([data-pending=true]){background:var(--surface);border-color:var(--line);color:var(--muted);font-weight:850}.dashboard-period-pills{margin:0 0 16px}.dashboard-period-trigger .filter-sheet-trigger,.dashboard-period-trigger .filter-sheet-reset,.dashboard-period-phone{display:none}@media (max-width:640px){.dashboard-period-row .scroll-strip{display:none}.toolbar:has(>form:only-child>.dashboard-period-trigger--folded:only-child){display:none}.page-header h1:where(.page-title-row--back>*){font-size:22px}.dashboard-period-row--inline .scroll-strip{width:100%;min-width:0;display:block}.dashboard-period-row--inline .dashboard-period-pills{flex-wrap:nowrap;width:max-content;margin:0;padding:2px}.dashboard-period-row--inline .dashboard-period-pills a{white-space:nowrap;flex-shrink:0}.dashboard-period-trigger.dashboard-period-trigger--folded .filter-sheet-trigger,.dashboard-period-trigger.dashboard-period-trigger--folded .filter-sheet-reset{display:none}.page-header:has(>.toolbar--stretch){justify-content:stretch}.toolbar--stretch{width:100%}.toolbar--stretch>form{display:none}.toolbar--stretch>.secondary-button,.toolbar--stretch>.primary-button{text-align:center;white-space:nowrap;flex:1 1 0;justify-content:center;padding-inline:8px;font-size:14px}.dashboard-period-row{background:var(--bg);box-shadow:0 0 0 100vmax var(--bg);clip-path:inset(0 -100vmax);top:var(--mobile-topbar-height);z-index:9;align-items:center;gap:10px;margin-bottom:12px;padding:6px 0;display:flex;position:sticky}.dashboard-period-phone{flex-shrink:0;display:block}.dashboard-period-row .analytics-period-note{flex:1;margin:0;font-size:13px;line-height:1.3}.dashboard-period-trigger .filter-sheet-trigger,.dashboard-period-trigger .filter-sheet-reset{display:inline-flex}}@media (min-width:768px){.app-shell:not(.app-shell--mobile-only) .dashboard-period-row--sticky{background:var(--bg);box-shadow:0 0 0 100vmax var(--bg);clip-path:inset(0 -100vmax);z-index:9;padding:2px 0 8px;position:sticky;top:84px}.app-shell:not(.app-shell--mobile-only) .dashboard-period-row--sticky .dashboard-period-pills{flex-wrap:nowrap;width:max-content;margin:0;padding:2px}.dashboard-period-row--sticky .dashboard-period-pills a{white-space:nowrap;flex-shrink:0}}.dashboard-period-pills a{padding:9px 14px;font-size:14px}.period-links.is-pills a:focus-visible{border-radius:999px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.priority-mark{color:var(--gold);flex-shrink:0;align-self:flex-start;margin-top:2px;display:inline-flex}.task-bands{gap:20px;display:grid}.task-band{min-width:0}.task-band>.list-cards{margin-top:10px}.task-band-head{cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.task-band-head::-webkit-details-marker{display:none}.task-band-head:after{background:var(--line);content:"";flex:1;order:1;height:1px}.task-band .task-band-title{align-items:center;gap:8px;margin:0;padding:0;font-size:18px;font-weight:800;display:flex}.task-band-chevron{color:var(--muted);order:2;transition:transform .16s;display:inline-flex}.task-band[open]>.task-band-head .task-band-chevron{transform:rotate(180deg)}.task-band-head:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px;border-radius:6px}@media (prefers-reduced-motion:reduce){.task-band-chevron{transition:none}}.task-band .list-cards{gap:0}.task-band .list-card{border-radius:0}.task-band .list-card+.list-card{margin-top:-1px}.task-band .list-card:first-child{border-top-left-radius:12px;border-top-right-radius:12px}.task-band .list-card:last-child{border-bottom-right-radius:12px;border-bottom-left-radius:12px}.task-band-head{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:800;display:flex}.task-band-head:after{background:var(--line);content:"";flex:1;height:1px}.task-band-count{color:var(--muted);font-variant-numeric:tabular-nums}.task-band.is-overdue .task-band-name{color:var(--danger)}.task-band.is-done .task-band-name{color:var(--muted)}.task-group-badge{border:1px solid var(--line);color:var(--muted);font-size:var(--fs-caption,12px);border-radius:999px;padding:2px 8px;font-weight:800}.task-group-progress{align-items:center;gap:8px;display:inline-flex}.task-group-progress-track{background:var(--line);border-radius:999px;width:72px;height:6px;display:inline-block;overflow:hidden}.task-group-progress-fill{background:var(--accent);height:100%;display:block}.task-group-assignees{gap:4px;margin:6px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.task-group-assignees li{justify-content:space-between;align-items:baseline;gap:8px;max-width:420px;display:flex}.task-group-assignees a{color:var(--ink)}.task-group-assignees a.is-unassigned{color:var(--danger);font-weight:700}.task-group-assignee-count{color:var(--muted);font-variant-numeric:tabular-nums}.assign-mode{margin-bottom:4px}.assign-regions{border:0;gap:8px;margin:0;padding:0;display:grid}.assign-regions legend{margin-bottom:8px;padding:0;font-size:14px;font-weight:700}.assign-regions-label{color:var(--muted);margin:4px 0 0;font-size:13px}.assign-regions-unassigned{color:var(--danger)}.task-card-due{font-variant-numeric:tabular-nums;text-align:right;justify-items:end;line-height:1.25;display:grid}.task-card-due-date{white-space:nowrap;font-size:14px;font-weight:800}.task-card-due-late{white-space:nowrap;font-size:12px}.task-card-due.is-late{color:var(--danger)}.list-cards{gap:12px;margin:0;padding:0;list-style:none;display:grid}.list-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0;padding:14px 16px;scroll-margin-top:84px}.list-card:target{animation:2.4s ease-out list-card-target-flash}@keyframes list-card-target-flash{0%,25%{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft,#1f7a5c40)}to{border-color:var(--line);box-shadow:none}}.list-card-top{justify-content:space-between;align-items:start;gap:12px;display:flex}.list-card-title{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:800;line-height:1.35;display:inline-flex}.list-card-top .status-pill{flex-shrink:0}.list-card-top-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.list-card-top:has(.confirm-action.confirming){flex-wrap:wrap}.list-card-top-actions:has(.confirm-action.confirming){flex-wrap:wrap;flex-shrink:1;flex-basis:100%}.list-card-top-actions:has(.confirm-action.confirming)>.name-edit-button{display:none}.list-card-top-actions .confirm-action-inline.confirming{margin-top:0}.announcement-card .list-card-top-actions .name-edit-button{opacity:0;pointer-events:none}.announcement-card:focus-within .list-card-top-actions .name-edit-button{opacity:1;pointer-events:auto}@media (hover:hover){.announcement-card:hover .list-card-top-actions .name-edit-button{opacity:1;pointer-events:auto}}.announcement-card:focus{outline:none}.task-board{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:12px;padding-bottom:68px;display:grid}.task-group,.scroll-strip{min-width:0}.scroll-strip-viewport{overscroll-behavior-x:contain;scrollbar-width:none;overflow-x:auto}.scroll-strip-viewport::-webkit-scrollbar{display:none}.scroll-strip-track{display:none}.scroll-strip[data-scrollable=true] .scroll-strip-track{background:var(--line);border-radius:999px;height:3px;margin-top:8px;display:block;position:relative}.scroll-strip-thumb{background:var(--muted);border-radius:inherit;inset:0 auto;left:var(--strip-thumb-offset,0%);width:var(--strip-thumb-width,100%);position:absolute}.filter-strip-row,.filter-strip-row>.filter-pills{flex-wrap:nowrap}.filter-strip-row label,.filter-strip-row a{white-space:nowrap}.products-category-strip{min-width:0;margin:10px 0 14px}.sticky-filter-bar-source{min-width:0}.sticky-filter-bar{background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);opacity:0;padding-top:env(safe-area-inset-top);left:0;right:0;top:var(--field-top-inset,0px);visibility:hidden;z-index:9;transition:transform .22s,opacity .18s,visibility 0s linear .22s;position:fixed;transform:translateY(-100%)}.sticky-filter-bar.is-visible{opacity:1;visibility:visible;transition:transform .22s,opacity .18s,visibility;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.sticky-filter-bar,.sticky-filter-bar.is-visible{transition:none}}.sticky-filter-bar-inner{align-items:center;gap:10px;max-width:430px;height:56px;margin-inline:auto;padding:0 14px;display:flex}.sticky-filter-bar-title{color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;flex:none;padding:0;font-size:15px;font-weight:800}.sticky-filter-bar-title:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px;border-radius:6px}.sticky-filter-bar-pills{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.sticky-filter-bar-pills::-webkit-scrollbar{display:none}.sticky-filter-bar-pills a{white-space:nowrap}.filter-pills a.filter-pill--priority[aria-current=true]{background:var(--gold);border-color:var(--gold)}.filter-pills a.filter-pill--overdue[aria-current=true]{background:var(--danger);border-color:var(--danger)}.filter-pill-count{margin-left:6px;font-weight:700}.task-board-note{color:var(--muted);margin:-4px 0 0;font-size:12px;line-height:1.4}.task-group-head{background:var(--bg);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;top:calc(var(--field-top-inset,0px) + 56px + env(safe-area-inset-top));z-index:2;align-items:center;gap:8px;margin:0;padding:12px 0 8px;font-size:12px;font-weight:850;display:flex;position:sticky}.task-group-head:after{background:var(--line);content:"";flex:1;height:1px}.task-group-count{color:var(--placeholder);font-weight:800}.task-group--foldable>.task-group-head{cursor:pointer;list-style:none}.task-group--foldable>.task-group-head::-webkit-details-marker{display:none}.task-group-chevron{color:var(--placeholder);order:1;transition:transform .16s;display:inline-flex}.task-group--foldable[open]>.task-group-head .task-group-chevron{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.task-group-chevron{transition:none}}.task-group--foldable:not([open])>.task-group-head{padding-bottom:12px}.task-group.is-overdue .task-group-name{color:var(--danger)}.task-group.is-today .task-group-name{color:var(--accent-strong)}.task-group.is-priority .task-group-name{color:var(--gold)}.task-group+.task-group{margin-top:0}.task-rows{grid-template-columns:minmax(0,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.task-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0;scroll-margin-top:84px;position:relative;overflow:hidden}.task-row:target{animation:2.4s ease-out list-card-target-flash}.task-row.is-priority:before{background:var(--gold);content:"";z-index:1;width:3px;position:absolute;top:0;bottom:0;left:0}.task-row-main{align-items:center;gap:12px;min-width:0;padding-right:12px;display:flex}.task-row-main:focus-visible{outline:2px solid var(--accent-strong);outline-offset:-2px}.task-row-main>svg{color:var(--placeholder);flex-shrink:0}.task-row-rail{background:var(--surface-muted);text-align:center;flex-direction:column;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;width:62px;min-height:64px;padding:10px 6px;display:flex}.task-row-day{letter-spacing:-.02em;font-size:21px;font-weight:850;line-height:1}.task-row-month{font-size:var(--fs-caption,12px);letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-weight:800}.task-row.is-undated .task-row-rail{color:var(--placeholder)}.task-row-rail-label{color:var(--muted);font-size:var(--fs-caption,12px);letter-spacing:.04em;text-transform:uppercase;font-weight:800;line-height:1.25}.task-row.is-overdue .task-row-rail{background:var(--danger-surface);color:var(--danger)}.task-row.is-today .task-row-rail{background:color-mix(in srgb, var(--accent) 12%, var(--surface));color:var(--accent-strong)}.task-row.is-today .task-row-rail-label{color:inherit}.tasks-panel .task-row.is-today{border-color:var(--accent)}.task-row-text{flex:1;grid-template-columns:minmax(0,1fr);gap:3px;min-width:0;padding:10px 0;display:grid}.task-row-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;line-height:1.35;overflow:hidden}.task-row-meta{color:var(--muted);white-space:nowrap;flex-wrap:nowrap;gap:4px 8px;min-width:0;font-size:13px;display:flex}.task-row-meta>span{text-overflow:ellipsis;overflow:hidden}.task-row-author{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;min-width:0;font-size:12px;display:flex;overflow:hidden}.task-row-author svg{flex-shrink:0;width:12px;height:12px}.task-row-late{color:var(--danger);font-weight:800}.task-row-late:after{color:var(--placeholder);content:"·";margin-left:8px;font-weight:700}.task-row.is-done{background:var(--surface-muted)}.task-row.is-done .task-row-rail{color:var(--muted);background:0 0}.task-row.is-done .task-row-title{color:var(--muted);text-decoration:line-through}.task-row.is-queued{background:color-mix(in srgb, var(--gold) 7%, var(--surface));border-color:color-mix(in srgb, var(--gold) 35%, var(--line));border-style:dashed}.task-row.is-queued .task-row-rail{color:var(--gold);background:0 0}.task-row.is-queued .task-row-rail-label{color:inherit}.task-row-sync{color:var(--gold);font-size:var(--fs-caption,12px);letter-spacing:.06em;text-transform:uppercase;font-weight:850}.sheet{background:0 0;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0}.sheet::backdrop{opacity:0;background:#11251f73;transition:opacity .28s}.sheet[data-open=true]::backdrop{opacity:1}.sheet-panel{background:var(--surface);max-height:88%;max-width:var(--sheet-max-width);transform:translateY(calc(100% + var(--sheet-drag,0px)));border-radius:20px 20px 0 0;flex-direction:column;margin-inline:auto;transition:transform .28s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -18px 45px #161e1a2e}.sheet[data-open=true] .sheet-panel{transform:translateY(var(--sheet-drag,0px))}.sheet-panel:focus{outline:none}.sheet-panel[data-dragging=true]{transition:none}@media (prefers-reduced-motion:reduce){.sheet-panel,.sheet::backdrop{transition-duration:.01ms}}.sheet-grab{touch-action:none;flex-shrink:0;padding:8px 20px 4px}.sheet-handle{background:var(--line);border-radius:999px;width:44px;height:4px;margin:0 auto 10px;display:block}.sheet-grab-row{justify-content:space-between;align-items:center;gap:12px;min-height:24px;display:flex}.sheet-eyebrow{min-width:0}.task-sheet-priority{color:var(--gold);align-items:center;gap:5px;font-size:12px;font-weight:650;display:inline-flex}.task-sheet-priority svg{width:13px;height:13px}.sheet-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px;font-size:13px;font-weight:600}.sheet-close:hover{color:var(--accent-strong)}.sheet-close:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px;border-radius:6px}.sheet-head{flex-shrink:0;padding:6px 20px 16px}.sheet-title{overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:700;line-height:1.35}.task-sheet-description{color:var(--muted);overflow-wrap:anywhere;margin:10px 0 0;font-size:14px;line-height:1.5}.task-sheet-facts{background:var(--surface-muted);border-block:1px solid var(--line);flex-shrink:0;gap:8px;margin:0;padding:14px 20px;display:grid}.task-sheet-facts>div{grid-template-columns:96px minmax(0,1fr);gap:12px;display:grid}.task-sheet-facts dt{color:var(--muted);font-size:13px}.task-sheet-facts dd{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:600}.task-sheet-due.is-overdue{color:var(--danger)}.task-sheet-due.is-today{color:var(--accent-strong)}.task-sheet-late:before{content:"·";opacity:.5;margin:0 6px}.sheet-body{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.task-sheet-history{padding:16px 20px}.task-sheet-history h3{color:var(--muted);font-size:var(--fs-caption,12px);letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-weight:800}.task-sheet-history ol{gap:12px;margin:0;padding:0;list-style:none;display:grid}.task-sheet-history li{grid-template-columns:46px minmax(0,1fr);gap:12px;display:grid}.task-sheet-history time{color:var(--placeholder);font-size:var(--fs-caption,12px);font-variant-numeric:tabular-nums;line-height:1.35;display:grid}.task-sheet-history li>div{gap:2px;display:grid}.task-sheet-history b{font-size:13px;font-weight:650}.task-sheet-history li span:last-child{color:var(--muted);font-size:12px}.sheet-actions{border-top:1px solid var(--line);padding:12px 20px calc(12px + env(safe-area-inset-bottom));flex-shrink:0;gap:10px;display:flex}.sheet-actions form{flex:1}.sheet-actions .primary-button,.sheet-actions .secondary-button{border-radius:10px;min-height:46px;font-size:15px;font-weight:700}.sheet-actions .primary-button{width:100%}.sheet-actions .secondary-button{flex-shrink:0}[data-zone=field] .task-form-dialog{max-height:92%;max-width:var(--sheet-max-width);transition:transform .28s cubic-bezier(.32, .72, 0, 1), overlay .28s allow-discrete, display .28s allow-discrete;border:0;border-radius:20px 20px 0 0;flex-direction:column;width:100%;margin:0 auto;padding-bottom:0;position:fixed;inset:auto 0 0;overflow:hidden;transform:translateY(100%);box-shadow:0 -18px 45px #161e1a2e}.task-form-dialog[open]{flex-direction:column;display:flex;transform:translateY(0)}@starting-style{.task-form-dialog[open]{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.task-form-dialog{transition-duration:.01ms}}.task-form-dialog .modal-header{flex-shrink:0;align-items:center;padding:16px 18px 14px}.task-form-dialog .modal-header:focus{outline:none}.task-form-dialog .modal-header h2{font-size:17px;font-weight:700}.task-form{flex:1;gap:16px;min-height:0;padding:16px 18px 0;display:grid;overflow-y:auto}.sheet-empty-state{padding:20px 24px calc(32px + env(safe-area-inset-bottom,0px));text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.sheet-empty-state .empty-state-tile{border-radius:18px;width:60px;height:60px}.sheet-empty-state .empty-state-tile svg{width:26px;height:26px}.sheet-empty-state-text{color:var(--ink-muted);max-width:280px;margin:0;font-size:15px;font-weight:600;line-height:1.4}.task-form-field{gap:6px;display:grid}.task-form-label{color:var(--muted);font-size:var(--fs-caption,12px);letter-spacing:.09em;text-transform:uppercase;align-items:baseline;gap:8px;font-weight:800;display:flex}.task-form-label i{color:var(--placeholder);font-size:var(--fs-caption,12px);letter-spacing:0;text-transform:none;font-style:normal;font-weight:600}.task-form input[type=date],.task-form select,.task-form textarea{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:10px;width:100%;padding:11px 12px;font-family:inherit;font-size:16px;line-height:1.4}.task-form textarea{resize:none}.task-form input[type=date]:focus-visible,.task-form select:focus-visible,.task-form textarea:focus-visible{border-color:var(--accent-strong);outline:2px solid var(--accent-strong);outline-offset:1px}.task-form-title{min-height:46px;font-size:16px;font-weight:700;overflow:hidden}.task-form-notes{min-height:62px;overflow:hidden}.task-form-select{align-items:center;display:flex;position:relative}.task-form-select svg{color:var(--muted);pointer-events:none;position:absolute;left:12px}.task-form-select select{padding-left:38px}.task-form-picker{background:var(--surface);border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;padding:11px 12px;font-size:15px;line-height:1.4;display:flex}.task-form-picker>svg{color:var(--muted);flex-shrink:0}.task-form-picker:focus-visible{border-color:var(--accent-strong);outline:2px solid var(--accent-strong);outline-offset:1px}.task-form-picker:disabled{cursor:default;opacity:.6}.task-form-picker-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.task-form-picker-empty{color:var(--muted)}.route-card-button[aria-pressed=true]{border-color:var(--accent)}.route-card-button>svg:last-child{color:var(--accent);flex-shrink:0}.task-form-chips{flex-wrap:wrap;gap:8px;display:flex}.task-form-chip{background:var(--surface);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:999px;padding:9px 14px;font-size:14px;font-weight:600}.task-form-chip:first-letter{text-transform:uppercase}.task-form-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.task-form-chip:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.task-form-date{margin-top:4px}.task-form-switch{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex;position:relative}.task-form-switch>span:first-child{min-width:0}.task-form-switch b{font-size:15px;font-weight:700}.task-form-switch input{cursor:pointer;opacity:0;position:absolute;inset:0}.task-form-track{background:var(--line);border-radius:999px;flex-shrink:0;width:50px;height:28px;transition:background .16s;position:relative}.task-form-track:after{background:var(--surface);content:"";border-radius:50%;width:22px;height:22px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #161e1a4d}.task-form-switch:has(input:checked) .task-form-track{background:var(--gold)}.task-form-switch:has(input:checked) .task-form-track:after{transform:translate(22px)}.task-form-switch:has(input:focus-visible) .task-form-track{outline:2px solid var(--accent-strong);outline-offset:2px}.task-form-segments{grid-template-columns:1fr 1fr;gap:8px;display:grid}.task-form-segments label{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:center;border-radius:10px;padding:11px 12px;font-size:15px;font-weight:600;position:relative}.task-form-segments input{opacity:0;width:0;height:0;position:absolute}.task-form-segments label:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.task-form-segments label:has(input:focus-visible){outline:2px solid var(--accent-strong);outline-offset:2px}.task-form-actions{background:var(--surface);border-top:1px solid var(--line);padding:12px 18px calc(12px + env(safe-area-inset-bottom));gap:10px;margin:4px -18px 0;display:flex;position:sticky;bottom:0}.task-form-actions .primary-button{border-radius:10px;flex:1;min-height:46px;font-size:15px}.list-card-facts{flex-wrap:wrap;gap:8px 16px;margin:10px 0 0;display:flex}.list-card-fact{color:var(--ink);align-items:center;gap:6px;font-size:13px;display:flex}.list-card-fact dt{color:var(--muted);align-items:center;display:flex}.list-card-fact dd{margin:0}.list-card-open{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:6px;width:fit-content;margin-top:12px;font-size:12px;font-weight:800;display:inline-flex}.list-card-open:after{content:"›";font-size:18px;line-height:1}.list-card-open:hover{color:var(--accent-strong)}.list-card-links{flex-wrap:wrap;gap:16px;margin-top:12px;display:flex}.list-card-links .list-card-open{margin-top:0}.task-card-expandable{cursor:pointer}.task-card-expandable.is-open{background:var(--bg)}.task-card-head{align-items:center;gap:12px;display:flex}.task-card-main{flex:1;min-width:0}.task-card-aside{flex-shrink:0;align-items:center;gap:4px;display:flex}.task-card-aside .task-card-due{margin-right:8px}.task-card-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;margin:-8px -8px -8px 0;padding:8px;display:flex}.task-card-toggle:focus-visible{outline:2px solid var(--accent-strong);outline-offset:-2px}.task-card-chevron{transition:transform .16s;display:inline-flex}.task-card-expandable.is-open .task-card-chevron{transform:rotate(180deg)}.task-card-body{border-top:1px solid var(--line);cursor:auto;gap:14px;margin-top:14px;padding-top:14px;display:grid}.task-card-body[hidden]{display:none}.task-card-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.task-card-actions-icons{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-card-action-button{gap:6px}.task-card-action-button.is-danger{color:var(--danger)}.task-card-action-button.is-danger:hover{background:var(--danger-surface);border-color:var(--danger-line)}.task-card-quick{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-left:auto;display:flex}@media (max-width:640px){.task-card-actions{justify-content:flex-start;gap:8px}.task-card-actions>.task-card-actions-icons,.task-card-actions>.task-card-quick{display:contents}.task-card-actions .task-card-quick>.secondary-button{flex:1 1 0;order:1;min-width:0}.task-card-actions .task-card-action-button{flex:0 0 44px;order:2;justify-content:center;width:44px;height:44px;min-height:44px;padding:0}.task-card-actions .task-card-action-label{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.task-card-actions .confirm-action.confirming{flex:1 0 100%;order:2}.task-card-actions .task-card-quick>form{flex:1 0 100%;order:3}.task-card-actions .task-card-quick>form button{width:100%}}.task-details-text{color:var(--ink);overflow-wrap:anywhere;white-space:pre-line;min-width:0;max-width:68ch;margin:0;font-size:14px;line-height:1.45}.task-history-title{color:var(--muted);margin:0;font-size:12px;font-weight:800}.task-history-list{color:var(--ink);gap:4px;margin:6px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.name-edit-button.is-danger:hover{background:var(--danger-surface);color:var(--danger)}.confirm-action-inline.confirming{flex-basis:100%;justify-content:flex-start;margin-top:12px}.report-detail-list{gap:12px;margin-top:16px;display:grid}.report-detail-section{border-bottom:1px solid var(--line);gap:6px;padding-bottom:12px;display:grid}.report-detail-section:last-child{border-bottom:0;padding-bottom:0}.report-detail-section h3{color:var(--ink);margin:0;font-size:14px}.report-detail-section p{color:var(--muted);margin:0}.report-detail-items{color:var(--muted);gap:6px;margin:0;padding-left:18px;display:grid}.report-detail-cards{gap:8px;display:grid}.report-detail-card{border:1px solid var(--line);background:#f8faf9;border-radius:8px;gap:5px;padding:10px;display:grid}.report-detail-card strong{color:var(--ink)}.report-detail-card span,.report-detail-card p{color:var(--muted);margin:0}.report-detail-kv{gap:8px;margin:0;display:grid}.report-detail-kv div{gap:3px;display:grid}.report-detail-kv dt{color:var(--ink);font-size:13px;font-weight:850}.report-detail-kv dd{color:var(--muted);margin:0}.status-pill{color:var(--on-accent);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.status-pill.active{background:var(--accent)}.status-pill.warning{background:var(--gold)}.status-pill.info{background:var(--blue)}.status-pill.neutral{background:var(--muted)}.status-pill.danger{background:var(--danger)}.notice-panel{background:var(--warn-surface);border:1px solid var(--warn-line);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;max-width:1180px;margin:0 auto 16px;padding:16px;display:flex}.day-archive-banner{background:var(--warn-surface);border:1px solid var(--warn-line);border-radius:14px;margin:0 0 16px;padding:12px 16px}.day-archive-banner-title{color:var(--ink);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:15px;font-weight:800}.day-archive-banner-body{color:var(--ink-muted);margin:2px 0 0;font-size:13px}.notice-inline{color:var(--accent);margin:0 0 12px;font-size:14px;font-weight:700}.notice-inline.danger{color:var(--danger)}.notice-inline.auto-dismiss{transition:opacity .3s}.notice-inline.auto-dismiss.is-leaving{opacity:0}@media (prefers-reduced-motion:reduce){.notice-inline.auto-dismiss{transition:none}}.notice-panel.auto-dismiss{transition:opacity .3s}.notice-panel.auto-dismiss.is-leaving{opacity:0}@media (prefers-reduced-motion:reduce){.notice-panel.auto-dismiss{transition:none}}.notice-panel.success{background:#eef8f1;border-color:#b8dfc2}.notice-panel.success p{color:#365d40}.notice-panel.warning{background:var(--warn-surface);border-color:var(--warn-line)}.copyable-link{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.copyable-link .copyable-value{flex:280px;min-width:0;margin-top:0}.copyable-link .secondary-button{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.notice-panel.danger{background:var(--danger-surface);border-color:var(--danger-line)}.notice-panel.danger p{color:#6c3a3a}.notice-panel p{color:var(--warn-ink);max-width:760px;margin:6px 0 0}.notice-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.notice-actions .primary-button,.notice-actions .secondary-button{white-space:nowrap}.metric-card{padding:16px}.metric-value{margin:10px 0 0;font-size:34px;font-weight:850}.metric-value-word{-webkit-hyphens:auto;hyphens:auto;font-size:.7em;line-height:1.15;display:block}.metric-filtered{color:var(--muted);vertical-align:.05em;margin-right:.25em;display:inline-flex}.metric-filtered svg{width:.6em;height:.6em}.manager-grid--compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}@media (min-width:641px){.manager-grid--compact:not(:has(>:nth-child(4))){grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}.manager-grid--compact .metric-card{padding:9px 12px}.manager-grid--compact .metric-card header{gap:8px}.manager-grid--compact .metric-label{align-items:center;gap:6px;font-size:12px;display:flex}.metric-icon{background:var(--accent);color:var(--on-accent);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.metric-icon svg{width:12px;height:12px}.metric-card.is-attention .metric-icon{background:var(--gold)}.manager-grid--compact .metric-value{text-align:center;margin-top:4px;font-size:20px;line-height:1.15}.metric-value-note{color:var(--muted);margin-left:4px;font-size:12px;font-weight:600}.manager-grid--compact .small-label{text-align:center;font-size:12px;line-height:1.35}@media (max-width:640px){.manager-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;padding:12px 8px}.table th{color:var(--muted);text-transform:uppercase;font-size:12px}.locations-table-wrap,.import-table-wrap{overflow-x:auto}.import-file-name{overflow-wrap:anywhere}.import-history-table tr.is-selected>td{background:var(--surface-muted);border-bottom:0}.import-history-detail-row>td{background:var(--surface-muted);padding:4px 16px 16px}.import-history-detail>.table th{width:30%}.import-history-toggle-cell{text-align:right;width:1%}.import-history-toggle svg{transition:transform .2s}.import-history-toggle.is-open svg{transform:rotate(180deg)}@media (max-width:640px){.import-history-table .import-history-date{display:none}}.sortable-column-header{color:inherit;gap:4px;text-decoration:none;display:inline-flex}.sortable-column-header:hover{text-decoration:underline}.mobile-nav{border-top:1px solid var(--line);z-index:20;background:#fffffff0;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-nav-inner{gap:4px;padding:8px;display:flex}.mobile-nav-link{color:var(--muted);border-radius:8px;flex:1;place-items:center;gap:3px;min-width:0;min-height:48px;font-size:12px;display:grid}.mobile-nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mobile-nav-inner:has(>:nth-child(6)){gap:0;padding-inline:2px}:is(.mobile-nav-inner:has(>:nth-child(6)) .mobile-nav-link,.mobile-nav-inner:has(a[href$="/manager/announcements"]) .mobile-nav-link){letter-spacing:-.01em;font-size:11px}.mobile-nav-link[aria-current=page]{color:var(--accent-strong);position:relative}.mobile-nav-link[aria-current=page]:before{background:var(--accent);content:"";border-radius:999px;width:28px;height:3px;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.mobile-nav-fab{background:var(--accent);box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 38%, transparent);color:var(--on-accent);cursor:pointer;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;width:62px;height:62px;margin-block:-7px;margin-inline:-5px;display:inline-flex;transform:translateY(-26px)}.mobile-nav-fab:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}.login-surface{align-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;gap:24px;width:100%;max-width:430px;margin:0 auto;padding:24px;display:grid}.login-panel>.back-link{justify-self:start}.login-panel .tenant-name{color:var(--muted)}.login-panel h1{margin:4px 0 0;font-size:32px}.tenant-auth-panel{--accent-tint:color-mix(in srgb, var(--accent) 10%, transparent);--accent-tint-line:color-mix(in srgb, var(--accent) 25%, transparent);border-radius:20px;padding:28px 24px}.login-brand-row{align-items:center;gap:9px;display:flex}.login-brand-row .brand-mark{border-radius:8px;width:26px;height:26px;font-size:13px}.login-brand-row .brand-name{letter-spacing:-.01em;font-size:15px}.login-brand-row--lg .brand-mark{border-radius:13px;width:44px;height:44px;font-size:20px}.login-brand-row--lg .brand-name{letter-spacing:-.03em;font-size:23px}.tenant-identity{align-items:center;gap:14px;min-width:0;display:flex}.tenant-identity>div{min-width:0}.tenant-identity .brand-mark{border-radius:16px;flex:none;width:58px;height:58px;font-size:22px}.tenant-identity-name{color:var(--ink);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:26px;font-weight:800}.tenant-identity-address{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;font-weight:600;overflow:hidden}.tenant-auth-panel .form-stack label,.tenant-auth-panel .password-field>label{color:var(--muted);letter-spacing:.5px;text-transform:uppercase;font-size:13px;font-weight:700}.tenant-auth-panel .form-stack input,.tenant-auth-panel .password-field-control input{border:1.5px solid var(--line);text-transform:none;border-radius:13px;min-height:52px;padding:0 15px;font-size:16px;font-weight:600}.tenant-auth-panel .password-field-control input{padding-right:48px}.tenant-auth-panel .form-stack input:focus-visible,.tenant-auth-panel .password-field-control input:focus-visible{border-color:var(--accent);outline:none}.tenant-auth-panel .password-field.is-invalid>label{color:var(--danger)}.tenant-auth-panel .password-field.is-invalid .password-field-control input{border-color:var(--danger)}.auth-field{gap:8px;display:grid}.tenant-auth-panel .auth-field.is-invalid label{color:var(--danger)}.tenant-auth-panel .auth-field.is-invalid input{border-color:var(--danger)}.tenant-auth-panel .auth-heading h1{letter-spacing:-.02em;font-size:24px}.tenant-auth-panel .auth-heading .login-copy{margin-top:6px}.password-field-error{color:var(--danger);align-items:center;gap:7px;margin:0;font-size:13.5px;font-weight:600;display:flex}.required-mark{color:var(--danger);margin-inline-start:3px}p.field-inline-error{color:var(--danger);font-size:var(--fs-meta,13px);align-items:center;gap:6px;margin:6px 0 0;font-weight:600;display:flex}form :is(input,textarea)[aria-invalid=true]:not([type=checkbox]):not([type=radio]){border-color:var(--danger)}.tenant-auth-panel .primary-button{box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 22%, transparent);border-radius:14px;min-height:54px;font-size:16px;font-weight:800}.tenant-auth-panel .primary-button:hover{background:var(--accent-strong)}.tenant-auth-panel .secondary-button{background:var(--surface);border:1.5px solid var(--accent-tint-line);color:var(--accent);border-radius:14px;min-height:54px;font-size:16px;font-weight:800}.tenant-auth-panel .secondary-button:hover{background:var(--accent-tint);border-color:var(--accent-tint-line);color:var(--accent)}.tenant-auth-panel .auth-link{color:var(--accent);justify-content:center;justify-self:center;align-items:center;min-height:44px;margin:-12px 0;padding:0 12px;font-size:14.5px;font-weight:700;text-decoration:none;display:inline-flex}.tenant-auth-panel .auth-link:hover{color:var(--accent-strong)}.tenant-auth-panel .auth-link.is-underlined{text-decoration:underline}.login-copy{color:var(--muted);margin:8px 0 0}.login-copy+.form-hint{margin-top:10px}.workspace-recent{gap:8px;display:grid}.form-stack{gap:14px;display:grid}.form-stack label{color:var(--ink);gap:7px;font-size:13px;font-weight:800;display:grid}.form-stack label .form-hint{font-weight:500;line-height:1.4}.form-stack input{border:1px solid var(--line);color:var(--ink);border-radius:8px;width:100%;min-height:42px;padding:0 12px}.turnstile-field{border:1px solid var(--line);border-radius:8px;min-height:42px;overflow:hidden}.turnstile-field.is-quiet{border:0;border-radius:0;min-height:0;overflow:visible}.password-field{gap:7px;display:grid}.password-field>label{color:var(--ink);font-size:13px;font-weight:800}.password-field-control{position:relative}.password-field-control input{padding-right:48px}.password-reveal{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.password-reveal:hover{color:var(--ink)}.password-strength{align-items:center;gap:8px;margin:0;font-size:12px;font-weight:700;display:flex}.password-strength-bar{background:var(--line);border-radius:999px;flex:1;height:4px;overflow:hidden}.password-strength-fill{border-radius:inherit;height:100%;transition:background-color .16s,width .16s;display:block}.password-strength.is-weak .password-strength-fill{background:var(--danger);width:33%}.password-strength.is-fair .password-strength-fill{background:var(--warn-ink);width:66%}.password-strength.is-strong .password-strength-fill{background:var(--accent);width:100%}.password-strength.is-weak .password-strength-label{color:var(--danger)}.password-strength.is-fair .password-strength-label{color:var(--warn-ink)}.password-strength.is-strong .password-strength-label{color:var(--accent)}@media (prefers-reduced-motion:reduce){.password-strength-fill{transition:none}}.account-device{border-top:1px solid var(--line);gap:12px;padding-top:18px;display:grid}.account-device-title{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.account-device-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-device-row .secondary-button{flex:none}.account-device-text{gap:2px;min-width:0;display:grid}.account-device-label{color:var(--ink);font-size:13px;font-weight:700}.account-device-value{color:var(--muted);font-size:12.5px}.zone-choice-list{gap:10px;display:grid}.zone-choice-list form{display:contents}.zone-choice-link{background:var(--surface);border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;border-radius:8px;width:100%;min-height:52px;padding:12px 16px;font-size:15px;font-weight:800;transition:background .16s,border-color .16s,color .16s}.zone-choice-link:hover{background:var(--surface-muted);border-color:var(--accent);color:var(--accent-strong)}.form-error{color:var(--danger);background:#fff0f0;border:1px solid #e4b4b4;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:800}.form-success{color:#2f6b41;background:#eef8f1;border:1px solid #b8dfc2;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:800}.tenant-auth-panel .form-error,.tenant-auth-panel .form-success{border-radius:14px}.auth-link{color:var(--muted);justify-self:start;font-size:13px;font-weight:700;text-decoration:underline}.auth-link:hover{color:var(--ink)}@media (max-width:767px){.app-shell{display:block}.sidebar{display:none}.mobile-topbar{display:block}.main-surface,.platform-page{padding:18px 14px 84px}.mobile-nav{display:block}}@media (max-width:920px){.page-header,.notice-panel{display:grid}.notice-actions,.toolbar{justify-content:flex-start}.dashboard-grid,.admin-users-grid,.user-actions-grid,.import-template-grid{grid-template-columns:1fr}.manager-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.review-threshold{grid-template-columns:1fr}.review-threshold strong{text-align:left}.panel-toolbar,.filter-form,.filter-groups{justify-items:stretch;display:grid}.filter-form,.locations-filter-form,.representatives-filter-form,.tenant-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{overflow-x:auto}.inline-control-form{display:grid}.visit-actions{grid-template-columns:1fr}}@media (min-width:641px) and (max-width:920px){.manager-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){[data-zone=admin] .location-detail-sections>.page-header--compact{flex-direction:column;align-items:flex-start;gap:4px}.filter-form,.locations-filter-form,.representatives-filter-form,.filter-field--range{grid-column:auto}.filter-date-range{grid-template-columns:1fr}.filter-date-range-dash{display:none}.metric-card{padding:12px}.metric-value{margin-top:4px;font-size:26px}.login-surface{padding:12px}.login-panel{padding:16px}}.app-shell--mobile-only{min-height:100vh;display:block;position:relative}.app-shell--mobile-only .sidebar{display:none}.app-shell--mobile-only .mobile-topbar{display:block}:is(.app-shell--mobile-only:has(.shell-opt-no-topbar) .mobile-topbar,.app-shell--mobile-only:has(.shell-opt-no-bottom-nav) .mobile-nav){display:none}.app-shell:has(.shell-opt-topbar-scrolls) .mobile-topbar{position:static}.app-shell--mobile-only .mobile-topbar-inner{max-width:430px;margin-inline:auto}.app-shell--mobile-only .main-surface{max-width:430px;margin-inline:auto;padding:18px 14px 84px}.app-shell--mobile-only:has(.shell-opt-no-bottom-nav) .main-surface{padding-bottom:18px}.app-shell--mobile-only:has(.shell-opt-accent-surface){flex-direction:column;display:flex}.app-shell--mobile-only:has(.shell-opt-accent-surface) .main-surface{background:var(--accent);flex:1;width:100%}:is(.app-shell:has(.shell-opt-accent-surface) .visit-report-topbar-title,.app-shell:has(.shell-opt-accent-surface) .back-link){color:var(--on-accent)}.app-shell:has(.shell-opt-accent-surface) .empty-state.is-on-accent{color:var(--on-accent)}.already-visited-date{text-underline-offset:2px;text-decoration:underline}.app-shell:has(.shell-opt-accent-surface) .visit-date-trigger{background:var(--surface);border:1.5px solid var(--line-strong);color:var(--muted);border-radius:11px;height:36px;padding:0 13px}.app-shell:has(.shell-opt-accent-surface) .visit-date-trigger svg{color:var(--ink-muted)}.app-shell--mobile-only .dashboard-grid,.app-shell--mobile-only .visit-actions{grid-template-columns:1fr}.app-shell--mobile-only .manager-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.app-shell--mobile-only .metric-card{padding:12px}.app-shell--mobile-only .metric-value{margin-top:4px;font-size:26px}.app-shell--mobile-only .page-header,.app-shell--mobile-only .notice-panel{display:grid}.page-header--compact,.app-shell--mobile-only .page-header.page-header--compact{justify-content:flex-start;align-items:center;gap:12px;display:flex}.page-header-lead{align-items:center;gap:12px;min-width:0;display:flex}.page-header--inline,.app-shell--mobile-only .page-header.page-header--inline{justify-content:space-between;align-items:center;gap:12px;display:flex}.app-shell--mobile-only .page-header h1{font-size:22px}.app-shell--mobile-only .toolbar{justify-content:flex-start}.app-shell--mobile-only .panel{overflow-x:auto}.app-shell--mobile-only .panel-toolbar,.app-shell--mobile-only .filter-form{justify-items:stretch;display:grid}.app-shell--mobile-only .filter-form,.app-shell--mobile-only .locations-filter-form,.app-shell--mobile-only .filter-field--range{grid-column:auto}.app-shell--mobile-only .filter-date-range{grid-template-columns:1fr}.app-shell--mobile-only .filter-date-range-dash{display:none}.app-shell--mobile-only .inline-control-form{display:grid}.app-shell--mobile-only .mobile-nav{display:block}.app-shell--mobile-only .mobile-nav-inner{max-width:430px;margin-inline:auto}@media (min-width:921px){.app-shell--mobile-only{flex-direction:column;display:flex}.app-shell--mobile-only .main-surface{border-inline:1px solid var(--line);width:100%;box-shadow:var(--shadow);flex:1}}.field-menu-button{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:11px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.field-menu-button:hover{border-color:var(--accent);color:var(--accent-strong)}.field-menu-button[data-active=true]{background:var(--surface-muted);border-color:var(--accent);color:var(--accent-strong)}.field-menu-dialog{background:var(--bg);border:none;border-left:1px solid var(--line);color:var(--ink);max-width:100vw;height:100dvh;max-height:100dvh;padding:18px 16px calc(18px + env(safe-area-inset-bottom));flex-direction:column;gap:20px;width:min(340px,88vw);margin:0 0 0 auto;overflow-y:auto;box-shadow:0 24px 80px #0f172a3d}.field-menu-dialog[open]{display:flex}.field-menu-dialog::backdrop{background:#0f172a7a}.field-menu-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.field-menu-identity{min-width:0}.field-menu-company{margin:0;font-size:16px;font-weight:800}.field-menu-user-name{margin:8px 0 0;font-size:14px}.field-menu-user-email,.field-menu-link-hint,.field-menu-section-label{color:var(--muted);overflow-wrap:anywhere;margin:2px 0 0;font-size:12px}.field-menu-links{gap:8px;display:grid}.field-menu-link{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;min-height:60px;padding:10px 12px;display:flex}.field-menu-link:hover{border-color:var(--accent)}.field-menu-link-icon.nav-icon{width:32px;height:32px}.field-menu-link-icon .nav-glyph{width:18px;height:18px}.field-menu-link-text{min-width:0;display:grid}.field-menu-link-label{font-size:15px;font-weight:700}.field-menu-link-chevron{color:var(--muted);margin-left:auto;font-size:22px;line-height:1}.field-menu-link-count{background:var(--danger);border:1px solid var(--surface);color:var(--on-accent);font-size:var(--fs-caption,12px);border-radius:999px;justify-content:center;align-items:center;min-width:16px;margin-left:auto;padding:2px 4px;font-weight:800;line-height:1;display:inline-flex}.field-menu-link:has(.field-menu-link-count) .field-menu-link-chevron{margin-left:0}.field-menu-install{color:inherit;cursor:pointer;font:inherit;text-align:left;width:100%}.field-menu-install-group{gap:8px;display:grid}.field-menu-install-steps{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.45}.install-app-steps{gap:8px;margin:0;padding-left:20px;display:grid}.install-app-glyph{color:var(--accent);vertical-align:-3px;margin:0 2px;display:inline-flex}.install-app-note{color:var(--muted);margin:10px 0 0;font-size:12px}.install-app-dialog{max-width:min(440px,100vw - 32px)}.install-app-dialog .modal-header h2{font-size:20px}.install-app-dialog-body{padding:16px 20px 20px;font-size:14px;line-height:1.45}.sidebar-install-button{color:var(--sidebar-text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:40px;padding:6px 8px;font-weight:500;display:flex}.sidebar-install-button:hover{color:#fff;background:#ffffff1a}.sidebar .sidebar-install-button:focus-visible{outline:2px solid var(--sidebar-soft);outline-offset:2px}.field-menu-zones{gap:8px;display:grid}.field-menu-section-label{letter-spacing:.04em;text-transform:uppercase;font-weight:700}.field-menu-zone-button{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:999px;width:100%;min-height:40px;padding:6px 14px}.field-menu-zone-button:hover{border-color:var(--accent);color:var(--accent-strong)}.field-menu-logout{margin-top:auto;padding-top:8px}.field-menu-logout-button{border:1px solid var(--danger-line);color:var(--danger);background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;display:flex}.field-menu-logout-button:hover{background:var(--danger-surface)}.route-section{gap:12px;margin-bottom:24px;display:grid}.today-header,.app-shell--mobile-only .page-header.today-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.today-header:has(.confirm-action.confirming){flex-wrap:wrap}.today-header-day{flex-wrap:wrap;flex:1;align-items:baseline;column-gap:10px;min-width:0;display:flex}.today-header h1{overflow-wrap:anywhere;margin:0}.home-today-link{color:var(--accent);flex:none;align-items:center;gap:2px;display:inline-flex}.home-today-link-date{font-size:14px;font-weight:700}.home-view-switch{background:var(--surface);border:1px solid #0000;border-radius:999px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;margin-bottom:18px;padding:3px;display:grid}.home-view-tab{color:var(--accent);text-align:center;border-radius:999px;min-height:38px;padding:8px 10px;font-size:13px;font-weight:700;text-decoration:none}.home-view-tab.is-active,.home-view-tab[data-pending=true]{background:var(--accent);box-shadow:var(--shadow-raised);color:var(--surface);font-weight:800}.home-view-switch:has([data-pending=true]) .home-view-tab.is-active:not([data-pending=true]){box-shadow:none;color:var(--accent);background:0 0;font-weight:700}.home-view-tab.is-disabled,.day-step.is-disabled{cursor:not-allowed;opacity:.5}.day-stepper{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-bottom:18px;display:flex}.day-step{background:var(--surface);border:1px solid var(--accent);color:var(--accent);border-radius:11px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.day-stepper .day-step{border-color:color-mix(in srgb, var(--accent) 42%, var(--surface));box-shadow:var(--shadow-raised)}.day-step:hover,.day-step:focus-visible{background:var(--accent-tint,var(--surface-muted))}.day-stepper-label{text-align:center;flex:none;justify-items:center;min-width:0;display:grid}.day-stepper-eyebrow{color:var(--accent);font-size:var(--fs-caption,12px);letter-spacing:.04em;text-transform:uppercase;margin:0;font-weight:800;line-height:1.3}.day-stepper-date-row{justify-content:center;align-items:baseline;gap:16px;display:flex}.day-stepper-date{color:var(--ink);margin:0;font-size:19.5px;font-weight:800;line-height:1.25}.route-plan-card{gap:8px;display:grid}.route-day-head{align-items:center;gap:12px;display:flex}.route-day-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;flex:1;align-items:center;gap:8px;min-width:0;margin:0;font-size:12px;font-weight:850;display:flex}.route-day-label:after{background:var(--line);content:"";flex:1;height:1px}.route-day-label--tight{flex:none}.route-day-label--tight:after{content:none}.route-day-progress{background:var(--line);border-radius:3px;flex:1;min-width:24px;height:5px;display:block;overflow:hidden}.route-day-progress-fill{background:var(--accent);border-radius:3px;height:100%;display:block}.route-day-progress-text{color:var(--muted);letter-spacing:0;text-transform:none;flex:none;font-size:12px;font-weight:800}.route-empty-actions{margin-inline:20px;flex-direction:column;justify-self:stretch;gap:10px;margin-top:4px;display:flex}.route-empty-actions .primary-button{width:100%;min-height:50px}.route-empty-actions--row{flex-direction:row;margin-top:120px}.activity-nav-link{background:var(--warn-surface);border:1px solid var(--warn-line);color:var(--accent);border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:6px 10px;font-weight:600;display:inline-flex}.activity-nav-link svg{flex:none}.route-plan-list{gap:18px;margin:0;padding:0;list-style:none;display:grid}.route-plan-group{min-width:0;position:relative}.route-plan-group--archived .route-stop,.route-plan-group--archived .route-stop.visited{background:var(--warn-surface)}.route-plan-group--archived .route-stop:not(.visited){box-shadow:none}.route-plan-head{align-items:center;gap:4px;padding:4px 2px 10px;display:flex}@media (pointer:coarse){.route-plan-head{min-height:44px;padding:0 2px 4px}.route-plan-head>.route-plan-toggle{align-self:stretch}}.route-plan-assigned{color:var(--muted);margin:-6px 2px 10px;font-size:12px}.route-plan-toggle{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:8px;min-width:0;padding:0;display:flex}@media (hover:hover) and (pointer:fine){.route-plan-toggle:hover{opacity:.7}}.route-plan-toggle--static{cursor:default}@media (hover:hover) and (pointer:fine){.route-plan-toggle--static:hover{opacity:1}}.route-plan-title{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;font-size:18px;font-weight:800;line-height:1.2;overflow:hidden}.route-plan-rule{background:var(--line-strong);flex:12px;min-width:12px;height:1px}.route-plan-fraction{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-caption,12px);flex:none;font-weight:700;line-height:1}.route-plan-menu-button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;margin:-6px -6px -6px 0;padding:0;display:inline-flex}.route-plan-menu-button:active,.route-plan-menu-button:focus-visible{background:var(--accent-tint)}.route-plan-menu-list{padding:0 16px calc(16px + env(safe-area-inset-bottom,0px));margin:0;list-style:none;display:grid}.route-plan-menu-list .route-plan-menu-item{border-top:1px solid var(--line)}.route-plan-menu .modal-header{border-bottom:0;padding-bottom:12px}.route-plan-menu .modal-header h2{letter-spacing:-.015em;font-size:18px;font-weight:800}.route-plan-menu .modal-subtitle{margin-top:2px;font-size:13px;font-weight:600}.route-plan-menu-item{color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:14px;width:100%;min-height:52px;padding:8px 4px;font-size:15.5px;font-weight:700;text-decoration:none;display:flex}.route-plan-menu-item>svg{color:var(--accent);flex:none}.route-plan-menu-item.is-danger,.route-plan-menu-item.is-danger>svg{color:var(--danger)}.route-plan-menu-item:active{opacity:.6}.route-plan-menu-item-text{gap:1px;display:grid}.route-plan-menu-item-hint{color:var(--muted);font-size:12px;font-weight:500}.route-plan-chevron{color:var(--ink-muted);flex:none;align-items:center;transition:transform .18s;display:inline-flex}.route-plan-toggle[aria-expanded=true] .route-plan-chevron{transform:rotate(180deg)}.route-plan-chevron svg{width:13px;height:13px}.route-plan-body{gap:8px;padding:0 0 6px;display:grid}.route-plan-done{border-top:1px solid var(--line);gap:8px;margin-top:2px;padding-top:12px;display:grid}.route-plan-done-toggle{color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:9px;width:100%;padding:7px 6px;display:flex}@media (pointer:coarse){.route-plan-done-toggle{min-height:44px}}@media (hover:hover) and (pointer:fine){.route-plan-done-toggle:hover{background:var(--surface-muted);border-radius:10px}}.route-plan-done-check{background:var(--accent);color:var(--on-accent);border-radius:999px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.route-plan-done-check svg{width:12px;height:12px}.route-plan-done-label{flex:1;min-width:0;font-size:13px;font-weight:600}.route-plan-done-toggle[aria-expanded=true] .route-plan-chevron{transform:rotate(180deg)}.route-plan-remove{border:0;border-top:1px solid var(--line);color:var(--muted);cursor:pointer;font:inherit;background:0 0;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:2px;padding:10px 6px 2px;display:flex}.route-plan-remove svg{width:13px;height:13px}.route-plan-remove span{font-size:12.5px;font-weight:700}@media (hover:hover) and (pointer:fine){.route-plan-remove:hover{color:var(--danger)}}.route-stop-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.route-stop-tasks{align-items:center;gap:6px;margin:2px 0 0;font-size:13px;font-weight:800;display:flex}.route-stop-tasks.is-today{color:var(--gold)}.route-stop-tasks.is-overdue{color:var(--danger)}.route-stop.has-tasks-today .route-stop-surface,.route-stop.has-priority-tasks .route-stop-surface{border-color:color-mix(in srgb, var(--gold) 40%, var(--line));box-shadow:inset 3px 0 0 var(--gold)}.route-stop.has-overdue-tasks .route-stop-surface{border-color:var(--danger-line);box-shadow:inset 3px 0 0 var(--danger)}.route-stop{background:var(--surface);border:1px solid var(--line);color:inherit;border-radius:10px;align-items:center;text-decoration:none;display:flex;overflow:hidden}.route-stop.visited{background:var(--surface-muted)}.route-plan-group .route-stop:where(:not(.visited)){box-shadow:var(--shadow-raised)}.route-stop-swipeable{position:relative}.route-stop-surface{background:inherit;will-change:transform;z-index:1;flex:1;align-items:center;min-width:0;transition:transform .18s;display:flex;position:relative}.route-stop-actions{z-index:0;display:flex;position:absolute;top:0;bottom:0;right:0}.route-stop-action-form{display:flex}.route-stop-action{color:var(--on-accent);cursor:pointer;text-align:center;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:92px;padding:0 8px;font-size:12px;font-weight:700;line-height:1.1;display:flex}.route-stop-action.is-remove{background:var(--danger)}.route-stop-action.is-remove.is-confirm{background:var(--danger-strong,#b3261e)}.route-stop-summary{cursor:pointer;flex:1;align-items:center;gap:12px;min-width:0;padding:12px 14px;list-style:none;display:flex}.route-stop-index{background:var(--accent-soft);color:var(--accent);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-weight:800;display:flex}.route-stop.visited .route-stop-index{background:var(--accent);color:var(--on-accent)}.route-stop-body{flex:1;gap:2px;min-width:0;display:grid}.route-stop-chevron{color:var(--ink-faint,var(--muted));flex:none;align-items:center;display:inline-flex}.route-stop-title{align-items:center;gap:7px;min-width:0;display:flex}.route-stop-title h3{min-width:0}.stop-not-assigned-pill{background:var(--surface-muted);color:var(--muted);border-radius:999px;justify-self:start;margin-top:4px;padding:2px 8px;font-size:12px;font-weight:700}.route-stop-dot{background:var(--gold);border-radius:50%;flex:none;width:8px;height:8px}.route-stop-body h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.route-stop.visited .route-stop-body h3{color:var(--muted)}.route-stop-address{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;overflow:hidden}.route-stop-address svg{vertical-align:-2px;flex-shrink:0;margin-right:4px}.route-stop-chain{background:var(--surface-muted);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;width:fit-content;max-width:100%;margin-top:4px;padding:3px 8px;font-size:12px;font-weight:600;overflow:hidden}.route-detail-menu-button{flex-shrink:0;margin-left:auto}.plan-route-sheet{flex-direction:column;gap:14px;padding:16px 18px 4px;display:flex}.plan-route-quick-dates{gap:8px;display:flex}.plan-route-date-chip{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:11px;flex:1;height:44px;font-weight:700}.plan-route-date-chip:hover{border-color:var(--accent-tint-line)}.plan-route-date-chip.is-selected{background:var(--accent-soft);border:1.5px solid var(--accent);color:var(--accent);font-weight:800}.plan-date-cell{background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:10px;justify-content:center;align-items:center;height:38px;font-size:14.5px;font-weight:600;display:flex}.plan-date-cell:hover:not(:disabled):not(.is-selected){border-color:var(--accent)}.plan-date-cell:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plan-date-cell.is-today{font-weight:800}.plan-date-cell.is-past{color:var(--ink-faint);background:0 0;border-color:#0000}.plan-date-cell.is-selected{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:800}.plan-date-cell:disabled{cursor:default}.plan-route-footer{padding:14px 18px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:9px;display:flex}.plan-route-summary{color:var(--muted);text-align:center;margin:0;font-size:13.5px;font-weight:600}.copy-sheet-body{flex-direction:column;gap:16px;padding:6px 18px 4px;display:flex}.copy-source-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.copy-source-row{color:var(--ink);align-items:baseline;gap:10px;font-size:13.5px;font-weight:600;display:flex}.copy-source-day{color:var(--muted);flex:none;width:24px;font-weight:700}.copy-target-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}.copy-target-option{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:15px 14px;display:flex}.copy-target-option:disabled{cursor:not-allowed;opacity:.5}.copy-target-option+.copy-target-option{border-top:1px solid var(--surface-muted)}.copy-target-radio{border:2px solid var(--line-strong);border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.copy-target-option.is-selected .copy-target-radio{border-color:var(--accent)}.copy-target-radio-dot{background:var(--accent);border-radius:50%;width:10px;height:10px}.copy-target-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.copy-target-label{color:var(--ink);font-size:14.5px;font-weight:700}.copy-target-sublabel{color:var(--muted);font-size:12.5px;font-weight:600}.copy-target-sublabel.is-warn{color:var(--warn-ink)}.copy-target-chevron{color:var(--ink-faint);flex:none;align-items:center;display:flex}.copy-sheet-disclaimer{color:var(--muted);margin:0;font-size:12.5px;line-height:1.45}.copy-sheet-footer{padding:14px 18px calc(20px + env(safe-area-inset-bottom));gap:10px;display:flex}.copy-sheet-footer .primary-button{flex:1.7;height:54px}.copy-sheet-footer .secondary-button{flex:1;height:54px}.route-add-stop-button{border:1px dashed var(--line);color:var(--accent);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:100%;padding:16px;font-weight:800;display:flex}.route-add-stop-inline,.route-add-route-link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;width:100%;padding:8px 0;font-size:13px;font-weight:700;display:flex}.route-add-stop-inline:hover,.route-add-route-link:hover{opacity:.7}.route-add-route-link{border:1.5px dashed var(--line-strong);border-radius:14px;margin-top:18px;padding:13px 12px;font-size:14px;font-weight:800}.route-add-stop-button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.route-stop-drag-cell{flex-direction:column;flex-shrink:0;align-items:center;gap:2px;padding:8px 8px 8px 14px;display:flex}.route-stop-drag-cell.is-rail{background:var(--accent-tint);border-right:1px solid var(--accent-tint-line);justify-content:center;align-self:stretch;gap:0;width:52px;padding:8px 0}.route-stop-drag-cell.is-rail .route-stop-index,.route-stop.visited .route-stop-drag-cell.is-rail .route-stop-index{color:var(--ink);letter-spacing:-.02em;background:0 0;border-radius:0;width:auto;height:auto;font-size:21px;font-weight:850;line-height:1}.route-stop.visited .route-stop-drag-cell.is-rail{background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.route-stop.visited .route-stop-drag-cell.is-rail .route-stop-index{color:var(--accent-strong)}.route-stop.has-tasks-today .route-stop-drag-cell.is-rail,.route-stop.has-priority-tasks .route-stop-drag-cell.is-rail{box-shadow:inset 3px 0 0 var(--gold)}.route-stop.has-overdue-tasks .route-stop-drag-cell.is-rail{box-shadow:inset 3px 0 0 var(--danger)}.route-plan-group .route-stop:not(.visited) .route-stop-drag-cell.is-rail{box-shadow:inset 4px 0 0 color-mix(in srgb, var(--accent) 70%, var(--surface))}.route-plan-group .route-stop.has-tasks-today .route-stop-drag-cell.is-rail,.route-plan-group .route-stop.has-priority-tasks .route-stop-drag-cell.is-rail{box-shadow:inset 4px 0 0 var(--gold)}.route-plan-group .route-stop.has-overdue-tasks .route-stop-drag-cell.is-rail{box-shadow:inset 4px 0 0 var(--danger)}.route-plan-group .route-stop-actions{border-radius:8px;top:2px;bottom:2px;right:2px;overflow:hidden}.route-plan-group .route-stop-drag-cell.is-rail .route-stop-index{color:var(--accent);font-size:19px}.route-plan-group--archived .route-stop .route-stop-drag-cell.is-rail,.route-plan-group--archived .route-stop.visited .route-stop-drag-cell.is-rail{background:var(--warn-surface);border-right-color:var(--line)}.route-stop-handle{color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.route-stop-handle:active{cursor:grabbing}.route-stop-handle:focus-visible{outline:2px solid var(--accent-soft);outline-offset:-2px}.route-stop.dragging{box-shadow:0 0 0 2px var(--accent-soft), 0 24px 45px #0f172a38;opacity:.85}.route-stop-remove-form{flex-shrink:0;padding-right:10px}.location-detail-sections{flex-direction:column;gap:16px;display:flex}.location-actions{flex-direction:column;gap:12px;display:flex}.location-header-summary{gap:8px;display:grid}.location-header-identity{grid-template-columns:auto 1fr;gap:2px 12px;display:grid}.location-header-identity>.location-header-title,.location-header-identity>.location-header-address,.location-header-identity>.location-header-chain,.location-header-identity>.location-header-meta,.location-header-identity>.location-assignment-pill{grid-column:2}.location-header-identity>.location-assignment-pill{justify-self:start;margin-top:6px}.location-header-icon-lead{color:var(--accent);flex-shrink:0;grid-area:1/1/3;align-self:center;align-items:center;display:inline-flex}.back-link{color:var(--ink);background:0 0;border:none;flex-shrink:0;justify-content:center;align-self:flex-start;align-items:center;height:40px;margin-top:2px;padding:0;text-decoration:none;display:inline-flex}button.back-link{cursor:pointer}.back-link svg{overflow:visible}.page-back{max-width:1180px;margin:0 auto 12px}.location-header-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:19px;overflow:hidden}.location-header-address{color:var(--muted);margin:0;font-size:14px}.location-header-meta{color:var(--muted);margin:0;font-size:13px}.location-header-chain{background:var(--surface-muted);border-radius:999px;justify-self:start;margin-top:6px;padding:4px 10px;font-size:13px;font-weight:700}.location-header-icon{color:var(--accent);position:relative}.location-header-icon-badge{background:var(--accent);color:var(--on-accent);font-size:var(--fs-caption,12px);border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-weight:700;display:flex;position:absolute;top:-5px;right:-5px}.location-feature-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;list-style:none;display:flex}.location-feature-page-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.location-feature-link{color:inherit;text-decoration:none}.location-feature-link:hover .location-feature-name{text-decoration:underline}.location-feature-summary::-webkit-details-marker{display:none}.location-feature-heading{align-items:center;gap:12px;min-width:0;display:flex}.location-feature-icon{color:var(--accent);flex-shrink:0;align-items:center;display:flex}.location-feature-titles{gap:2px;min-width:0;display:grid}.location-feature-name{font-size:inherit;font-weight:700;line-height:inherit;align-items:center;gap:6px;margin:0;display:flex}.panel .location-feature-name{margin:0}.location-feature-meta{color:var(--muted);font-size:13px}.location-feature-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.location-feature-chevron{color:var(--muted);font-size:20px;line-height:1;transition:transform .2s}.location-feature[open] .location-feature-chevron{transform:rotate(90deg)}.location-feature-quick-add{background:var(--surface);border:1px solid var(--line);color:var(--accent);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;font-weight:700;display:flex}.location-feature .empty-state,.location-feature .field-card-list{margin-top:12px}.faq-list{gap:8px;display:grid}.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden}.faq-question{cursor:pointer;padding:12px 14px;font-weight:700;list-style:none}.faq-question::-webkit-details-marker{display:none}.faq-answer{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:12px 14px}.help-search-empty{color:var(--muted);margin:0;padding:8px 2px}.help-support{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.help-support-title{color:var(--ink);margin:0;font-weight:800}.help-support-body{color:var(--muted);margin:4px 0 0}.assign-mode-tabs{background:var(--surface-muted);border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.assign-mode-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:40px;padding:8px 10px;font-size:14px;font-weight:700}.assign-mode-tab.is-active{background:var(--surface);color:var(--ink)}.route-section-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.route-section-head h2{text-align:center;flex:1;margin:0}.week-card-heading{text-align:center;flex:1;min-width:0}.week-card-heading h2{margin:0}.week-card-summary{color:var(--muted);margin:2px 0 0;font-size:12px;font-weight:600}.week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.week-cell{background:var(--surface-muted);border:1px solid var(--line);color:var(--ink);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:54px;padding:6px 2px;text-decoration:none;display:flex}.week-cell.is-empty{background:var(--surface);border-style:dashed}.week-cell:hover{border-color:var(--accent)}.week-cell.is-selected{background:var(--accent);border-color:var(--accent);box-shadow:0 4px 10px -3px color-mix(in srgb, var(--accent) 50%, transparent)}.week-cell-weekday{color:var(--muted);font-size:var(--fs-caption,12px);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.week-cell-weekday.is-today{color:var(--accent)}.week-cell-number{font-size:16px;font-weight:700;line-height:1}.week-cell-count{color:var(--accent);font-size:var(--fs-caption,12px);font-weight:700;line-height:1}.week-cell-add{color:var(--placeholder);font-size:14px;font-weight:700;line-height:1}.week-cell.is-selected .week-cell-weekday,.week-cell.is-selected .week-cell-number,.week-cell.is-selected .week-cell-add{color:var(--surface)}.week-cell.is-selected .week-cell-count{color:color-mix(in srgb, var(--surface) 65%, var(--accent))}.week-days{margin-top:14px}.week-days-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.week-days-title{color:var(--muted);font-size:var(--fs-caption,12px);letter-spacing:.1em;text-transform:uppercase;margin:0;font-weight:700}.week-day-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.week-day-list>li.is-drop-target>.week-day-row{background:var(--accent-tint);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint), 0 10px 24px -10px #0000004d;border-style:solid;border-width:2px}.week-day-row{background:var(--surface);border:1px solid var(--line);color:var(--ink);text-align:left;border-radius:14px;align-items:flex-start;gap:10px;width:100%;display:flex;overflow:hidden}button.week-day-row{cursor:pointer;font:inherit;padding:0}button.week-day-row:disabled{cursor:default;opacity:.6}.week-day-row.is-empty{background:0 0;border-style:dashed;align-items:center}.week-day-row.is-empty:not(.is-archived){border-color:var(--accent)}.week-day-row.is-archived{border-style:solid}.week-day-row.is-today{border-color:var(--accent);box-shadow:0 6px 18px -8px color-mix(in srgb, var(--accent) 45%, transparent)}.week-day-row.is-selected{border-color:var(--accent)}.week-day-col{flex-direction:column;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;gap:1px;width:54px;padding:12px 8px;display:flex}.week-day-row:not(.is-empty):not(.is-archived) .week-day-col{background:var(--accent-tint)}.week-day-row.is-archived .week-day-col{background:var(--warn-surface)}a.week-day-col{color:inherit;text-decoration:none}.week-day-divider{border-left:1px dashed var(--line);flex-shrink:0;align-self:stretch;margin-left:-11px}.week-day-row.is-empty:not(.is-archived) .week-day-divider{border-left-color:var(--accent)}.week-day-weekday{color:var(--ink);letter-spacing:.02em;text-transform:uppercase;font-size:15px;font-weight:800;line-height:1.15}.week-day-number{color:var(--muted);font-size:12px;font-weight:700;line-height:1.2}.week-day-row.is-today .week-day-weekday,.week-day-row.is-today .week-day-number{color:var(--accent)}.week-day-body{flex:1;gap:6px;min-width:0;padding:12px 12px 12px 0;display:grid}.week-day-row.is-empty .week-day-body{justify-content:space-between;align-items:center;gap:8px;display:flex}.week-day-assign{color:var(--accent);font-size:14px;font-weight:800}.week-day-today-badge{background:var(--accent-soft);color:var(--accent);font-size:var(--fs-caption,12px);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:5px;justify-self:start;padding:1px 6px;font-weight:800}.week-day-routes{gap:6px;margin:0;padding:0;list-style:none;display:grid}.week-day-route{justify-content:space-between;align-items:center;gap:8px;display:flex}.week-day-route-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.week-day-route+.week-day-route{border-top:1px solid var(--line);padding-top:8px}.week-day-route-text{align-items:center;gap:6px;min-width:0;display:flex}.week-day-route-handle{flex-shrink:0}.week-day-route-name{color:inherit;overflow-wrap:anywhere;font-size:14px;font-weight:700;text-decoration:none;display:block}a.week-day-route-name:hover{text-decoration:underline}.week-day-route-meta{color:var(--muted);font-size:12px;font-weight:600}.week-day-route-count{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:600}.week-day-route-count.is-missed{color:var(--danger)}.week-day-add{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;padding:2px 0;font-size:12.5px;font-weight:700}.week-day-routes+.week-day-add{border-top:1px solid var(--line);padding-top:8px}.week-day-add:hover{text-decoration:underline}.week-day-add:disabled{color:var(--muted);cursor:default}.week-cell:focus-visible,.week-day-row:focus-visible,.week-day-add:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.week-day-body,.week-day-routes{gap:18px}.week-day-route+.week-day-route,.week-day-routes+.week-day-add{padding-top:12px}}.home-month-view{gap:12px;display:grid}.month-sheet-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.month-sheet-status{color:var(--muted);margin:0;font-size:12px;font-weight:700}.home-tab-actions{gap:8px;display:grid}.home-tab-actions>button,.home-tab-actions .secondary-button{justify-content:center;width:100%;min-height:46px}.home-tab-actions .month-select-toggle{font-size:var(--fs-body-lg,16px);border-radius:8px;margin-left:0;font-weight:700}.home-week-view .home-tab-actions{margin-top:18px;margin-bottom:18px}.month-open-button{background:var(--surface-muted);color:var(--ink);border-radius:9px;flex-shrink:0;padding:7px 13px;font-size:12.5px;font-weight:700}.month-open-button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.month-label{text-align:center;flex:1;margin:0}.month-label-group{flex:1;justify-items:center;display:grid}.month-eyebrow{color:var(--accent);font-size:var(--fs-caption,12px);letter-spacing:.04em;text-transform:uppercase;margin:0;font-weight:800;line-height:1.3}.month-select-toggle{background:var(--accent-soft);color:var(--accent);cursor:pointer;font:inherit;font-size:var(--fs-caption,12px);border:0;border-radius:7px;align-items:center;gap:6px;margin-left:auto;padding:4px 8px;font-weight:800;display:flex}.month-grid{gap:4px;display:grid}.month-weekdays,.month-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.month-weekday{color:var(--muted);font-size:var(--fs-caption,12px);text-align:center;text-transform:uppercase;font-weight:700}.month-cell-slot{display:block;position:relative}.month-cell{background:var(--accent-soft);color:var(--accent-strong);cursor:pointer;font:inherit;border:1px solid #0000;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:100%;min-height:42px;padding:4px 2px;display:flex}.month-cell.is-empty{background:var(--surface);border:1.5px dashed var(--line);color:var(--ink)}.month-cell.is-locked{opacity:.55}.month-cell:hover:not(:disabled){border-color:var(--accent)}.month-cell:disabled{cursor:default;opacity:.6}.month-cell.is-current{background:var(--accent);border-color:var(--accent);color:var(--surface)}.month-cell.is-selected{background:var(--surface);border:1.5px solid var(--accent);color:var(--accent)}.month-cell-number{font-size:13px;font-weight:700;line-height:1}.month-cell.is-current .month-cell-number,.month-cell.is-selected .month-cell-number{font-weight:800}.month-cell-dots{gap:2px;display:flex}.month-cell-dot{background:var(--accent);border-radius:50%;width:5px;height:5px}.month-cell.is-current .month-cell-dot{background:color-mix(in srgb, var(--surface) 65%, var(--accent))}.month-cell-check{background:var(--accent);color:var(--surface);border-radius:8px;justify-content:center;align-items:center;width:15px;height:15px;font-size:9px;font-weight:800;display:flex;position:absolute;top:-4px;right:-4px}.month-cell:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:360px){.week-grid,.month-weekdays,.month-row,.month-grid{gap:3px}.week-cell{padding:6px 0}}.dashed-action-button{border:1px dashed var(--line);color:var(--accent);text-align:center;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:16px;padding:14px 16px;font-weight:700;display:flex}.dashed-action-button:hover{background:var(--accent-soft);border-color:var(--accent)}.dashed-action-button:disabled{color:var(--muted);cursor:not-allowed}.route-card-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.route-card{background:var(--surface);border:1px solid var(--line);color:inherit;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}a.route-card:hover{border-color:var(--accent)}.route-card-button{cursor:pointer;font:inherit;text-align:left;width:100%}.route-card-button:hover:not(:disabled){border-color:var(--accent)}.route-card-button:disabled{cursor:default;opacity:.6}.route-card-icon{background:var(--surface);border:1px solid var(--line);color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.picker-field-list .route-card{gap:10px;min-height:46px;padding:7px 12px}.picker-field-groups button{background:var(--surface);border:1px solid var(--line);color:var(--muted);cursor:pointer;font:inherit;white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850}.picker-field-groups button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.picker-field-groups button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.picker-field-list .route-card-icon{border-radius:8px;width:30px;height:30px}.route-card-body{flex:1;gap:2px;min-width:0;display:grid}.route-card-body h3{margin:0;font-size:15px}.route-card-meta{color:var(--muted);align-items:center;gap:4px;font-size:13px;display:flex}.route-list{flex-direction:column;gap:12px;display:flex}.route-list-search{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;height:44px;padding:0 13px;display:flex}.route-list-search:focus-within{border-color:var(--accent)}.route-list-search-icon{color:var(--ink-muted);flex-shrink:0;align-items:center;display:flex}.route-list-search input{color:var(--ink);font:inherit;background:0 0;border:0;flex:1;min-width:0;padding:0}.route-list-search input:focus{outline:none}.route-list-search input::placeholder{color:var(--placeholder)}.route-card-trailing{color:var(--ink-faint);flex-shrink:0;align-items:center;gap:6px;text-decoration:none;display:flex}.route-card-quick-assign{position:relative}.route-card-quick-assign-form{display:contents}.route-card-quick-assign-button{cursor:pointer;font:inherit;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;inset:0}.route-card-quick-assign-button:hover,.route-card-quick-assign-button:focus-visible{box-shadow:inset 0 0 0 1px var(--accent);outline:none}.route-card-trailing-link{position:relative}.route-card-trailing-link:hover,.route-card-trailing-link:focus-visible{color:var(--accent)}.route-card-quick-assign-button:disabled{cursor:default}.route-card-quick-assign-button.is-pending:disabled{background:color-mix(in srgb, var(--surface) 72%, transparent);cursor:progress;opacity:1}.route-card-count{color:var(--ink-faint);flex-shrink:0;align-items:center;gap:4px;display:flex}.route-card-count b{color:var(--ink-muted);letter-spacing:-.02em;font-size:15px;font-weight:800;line-height:1}a.metric-card{color:inherit;text-decoration:none}a.metric-card:hover{border-color:var(--accent)}.scheme-swatch-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.scheme-form-actions{flex-wrap:wrap;gap:10px;display:flex}.scheme-swatch{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:12px;transition:border-color .16s,box-shadow .16s;display:flex}.scheme-swatch:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.scheme-swatch input{opacity:0;pointer-events:none;position:absolute}.scheme-swatch-chips{flex:none;display:inline-flex}.scheme-swatch-chip{border:2px solid var(--surface);border-radius:999px;width:22px;height:22px;display:inline-block}.scheme-swatch-chip+.scheme-swatch-chip{margin-left:-8px}.scheme-swatch-name{font-size:14px;font-weight:700}.visit-card>.visit-form:has(+.visit-clear-row){padding-bottom:0}.visit-clear-row{padding:18px 0 calc(var(--field-report-submit-bar-height,172px) + 16px);justify-content:center;display:flex}.visit-clear-row .secondary-button{align-items:center;gap:8px;display:inline-flex}.visit-clear-dialog .modal-actions{margin-top:14px}.visit-report-topbar{align-items:center;gap:12px;margin-bottom:4px;display:flex}.visit-report-topbar-title{font-size:var(--fs-heading,19px);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-weight:800;overflow:hidden}.voice-playback-pill{background:var(--surface);border:1.5px solid var(--accent-tint-line);color:var(--accent);cursor:pointer;font:inherit;border-radius:12px;flex:none;align-items:center;gap:6px;min-height:40px;padding:0 12px;display:inline-flex}.voice-playback-duration{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:700}.voice-filled-banner{background:var(--accent-tint);color:var(--accent-strong);border-radius:10px;align-self:flex-start;align-items:center;gap:8px;margin:0;padding:7px 11px;font-size:12.5px;font-weight:800;display:inline-flex}.voice-autofill-dot{background:var(--accent);vertical-align:middle;border-radius:50%;flex:none;width:6px;height:6px;margin-left:6px;display:inline-block}.voice-rerecord-prompt{margin-bottom:4px}.voice-report-panel{background:var(--sheet-bg);padding-bottom:env(safe-area-inset-bottom,0px);border-radius:22px 22px 0 0;overflow-y:auto;box-shadow:0 -14px 40px #16191a38}.voice-report-panel>.sheet-handle{background:var(--line-strong);width:38px;height:4px;margin:10px auto 2px}.voice-report-head{align-items:center;gap:10px;padding:16px 20px 0;display:flex}.voice-report-title{color:var(--ink);letter-spacing:-.01em;flex:1;margin:0;font-size:18px;font-weight:800}.voice-report-offline{color:var(--warn-ink);font-size:var(--fs-meta,13px);align-items:center;gap:5px;font-weight:700;display:inline-flex}.voice-report-close{color:var(--muted);cursor:pointer;background:#edebe5;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.voice-report-close:hover{background:#e2dfd7}.voice-report-close:disabled{cursor:default;opacity:.45}.voice-report-close:focus-visible,.voice-report-play:focus-visible,.voice-report-button:focus-visible,.voice-report-text-action:focus-visible,.voice-report-row-open:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.voice-report-player-wrap{padding:20px 20px 0}.voice-report-player{background:var(--surface);border:1px solid #e6e4dd;border-radius:999px;align-items:center;gap:14px;padding:10px 16px 10px 12px;display:flex}.voice-report-mic{background:var(--accent);color:var(--on-accent);border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;position:relative}.voice-report-mic.is-paused{background:var(--muted)}.voice-report-mic.is-blocked{background:var(--danger-surface);border:1.5px solid var(--danger-line);box-sizing:border-box;color:var(--danger)}.voice-report-ring{pointer-events:none;width:48px;height:48px;position:absolute;top:-4px;left:-4px;transform:rotate(-90deg)}.voice-report-ring circle{fill:none;stroke-width:2.5px}.voice-report-ring-track{stroke:#dde8e3}.voice-report-ring-fill{stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset .1s linear}.voice-report-mic.is-near-limit .voice-report-ring-track{stroke:var(--warn-line)}.voice-report-mic.is-near-limit .voice-report-ring-fill{stroke:var(--warn-ink)}.voice-report-player:has(.is-near-limit) .voice-report-time{color:var(--warn-ink)}.voice-report-play{background:var(--accent);color:var(--on-accent);cursor:pointer;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex}.voice-report-play:disabled{cursor:default;opacity:.45}.voice-report-wave{flex:1;justify-content:space-between;align-items:center;gap:2px;min-width:0;height:28px;display:flex;overflow:hidden}.voice-report-bar{background:var(--accent);border-radius:2px;flex:none;width:3px;transition:height .1s linear}.voice-report-wave.is-static .voice-report-bar{background:var(--accent-tint-line);transition:background-color .15s}.voice-report-wave.is-static .voice-report-bar.is-played{background:var(--accent)}.voice-report-dot{background:var(--line-strong);border-radius:50%;flex:none;width:3px;height:3px}.voice-report-time{color:#3f4644;font-variant-numeric:tabular-nums;text-align:right;flex:none;min-width:4ch;font-size:14px;font-weight:700}.voice-report-body{padding:0 20px}.voice-report-steps{flex-direction:column;gap:11px;margin:0;padding:22px 0 0;list-style:none;display:flex}.voice-report-step{align-items:center;gap:11px;display:flex}.voice-report-step-mark{box-sizing:border-box;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.voice-report-step-mark svg{width:13px;height:13px}.voice-report-step.is-done .voice-report-step-mark{background:var(--accent);color:var(--on-accent)}.voice-report-step.is-current .voice-report-step-mark{color:var(--accent)}.voice-report-step.is-current .voice-report-step-mark svg{width:20px;height:20px;animation:.9s linear infinite voice-report-spin}@keyframes voice-report-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.voice-report-step.is-current .voice-report-step-mark svg{animation:none}}.voice-report-step.is-warning .voice-report-step-mark{background:var(--warn-surface);border:1.5px solid var(--warn-line);color:var(--warn-ink)}.voice-report-step.is-error .voice-report-step-mark{background:var(--danger-surface);border:1.5px solid var(--danger-line);color:var(--danger)}.voice-report-step.is-pending .voice-report-step-mark{border:2px solid #dde8e3}.voice-report-step-label{color:var(--ink);flex:1;min-width:0;font-size:14.5px;font-weight:700}.voice-report-step.is-pending .voice-report-step-label{color:var(--ink-muted)}.voice-report-step-meta{color:var(--ink-muted);font-variant-numeric:tabular-nums;flex:none;font-size:13.5px;font-weight:600}.voice-report-step.is-warning .voice-report-step-meta.is-tag{color:var(--warn-ink)}.voice-report-step.is-error .voice-report-step-meta.is-tag{color:var(--danger)}.voice-report-text{color:#6b7371;text-wrap:pretty;margin:16px 0 0;font-size:13.5px;font-weight:500;line-height:1.5}.voice-report-text.is-centered{color:var(--muted);font-size:var(--fs-body,15px);text-align:center;padding:0 4px;line-height:1.55}.voice-report-question .voice-report-text{margin-top:4px}.voice-report-lead{color:var(--ink);font-size:var(--fs-body,15px);margin:18px 0 0;font-weight:800}.voice-report-warning{color:var(--warn-ink);justify-content:center;align-items:center;gap:6px;margin:18px 0 0;font-size:14px;font-weight:700;display:flex}.voice-report-quote{background:var(--surface);color:var(--ink);border:1px solid #e6e4dd;border-radius:14px;margin:14px 0 0;padding:14px 16px;font-size:14.5px;font-weight:500;line-height:1.55}.voice-report-text-action{color:var(--muted);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;margin-top:8px;padding:6px 0;font-size:13.5px;font-weight:700;text-decoration:underline}.voice-report-text-action.is-accent{color:var(--accent)}.voice-report-actions{gap:10px;padding:20px 20px 30px;display:flex}.voice-report-button{background:var(--surface);border:1.5px solid var(--line-strong);box-sizing:border-box;color:var(--muted);cursor:pointer;font:inherit;text-align:center;border-radius:13px;flex:1 1 0;justify-content:center;align-items:center;min-width:0;min-height:52px;padding:6px 10px;font-size:15.5px;font-weight:700;line-height:1.2;display:flex}.voice-report-button:hover:not(:disabled){background:#edebe5}.voice-report-button.is-secondary{border-color:var(--accent-tint-line);color:var(--accent);font-weight:800}.voice-report-button.is-secondary:hover:not(:disabled){background:var(--accent-tint)}.voice-report-button.is-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:800}.voice-report-button.is-primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.voice-report-button.is-danger{border-color:var(--danger-line);color:var(--danger);font-weight:800}.voice-report-button.is-danger:hover:not(:disabled){background:var(--danger-surface)}.voice-report-button:disabled{cursor:default;opacity:.5}.voice-report-button.is-pending:disabled{opacity:1}.voice-report-row{background:var(--surface);border:1px solid var(--warn-line);color:var(--warn-ink);border-radius:14px;align-items:center;gap:10px;margin-bottom:12px;padding:8px 8px 8px 14px;display:flex}.voice-report-row-label{color:var(--ink);flex:1;gap:8px;min-width:0;font-size:14.5px;font-weight:700;display:flex}.voice-report-row-time{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-weight:600}.voice-report-row-open{background:var(--accent-tint);color:var(--accent);cursor:pointer;font:inherit;border:0;border-radius:11px;min-height:44px;padding:0 16px;font-size:14px;font-weight:800}.voice-report-row.is-draft{border-color:var(--accent-tint-line);color:var(--accent)}.voice-draft{background:var(--surface);border:1px solid #e6e4dd;border-radius:16px;margin-top:16px;padding:16px}.voice-draft-head{align-items:center;gap:8px;display:flex}.voice-draft-title{color:var(--ink);flex:1;margin:0;font-size:16px;font-weight:800}.voice-draft-badge{background:var(--accent-tint);color:var(--accent);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;height:26px;padding:0 10px;font-size:12.5px;font-weight:700;display:inline-flex}.voice-draft-rows{flex-direction:column;gap:8px;margin:12px 0 0;display:flex}.voice-draft-row{border-bottom:1px solid #eeece6;grid-template-columns:112px minmax(0,1fr);gap:12px;padding-bottom:8px;display:grid}.voice-draft-row dt{color:#6b7371;font-size:13px;font-weight:700;line-height:22px}.voice-draft-row dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:15px;font-weight:600;line-height:22px}.voice-draft-due{color:var(--ink-muted);font-size:13px;font-weight:600;display:block}.voice-draft-suggested{color:var(--accent);font-size:var(--fs-caption,12px);font-weight:700;display:block}.voice-draft-dismiss{min-height:44px;margin-top:4px;font-size:13px;display:inline-flex}.voice-draft .voice-report-text{margin-top:12px}.voice-new-tasks{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.voice-new-task{background:var(--surface);border:1px solid var(--accent-tint-line);border-radius:12px;align-items:center;gap:10px;padding:8px 6px 8px 12px;display:flex}.voice-new-task-badge{background:var(--accent-tint);color:var(--accent);border-radius:999px;flex:none;padding:2px 8px;font-size:12px;font-weight:800}.voice-new-task-body{flex-direction:column;flex:1;min-width:0;display:flex}.voice-new-task-title{color:var(--ink);overflow-wrap:anywhere;font-size:14.5px;font-weight:700}.voice-new-task-due{color:var(--ink-muted);font-size:13px;font-weight:600}.voice-new-task-remove{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.voice-new-task-remove:hover{background:#edebe5}.voice-new-task-remove:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.backdate-stepper{gap:8px;min-width:0;max-width:520px;display:grid}.settings-panel-row{flex-wrap:wrap;gap:16px;display:flex}.settings-panel-row>.panel{flex:280px;min-width:0}.settings-panel-row>.panel:last-child .info-hint-bubble{left:auto;right:0}.panel-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel .panel-title-row h2{margin:0}.panel-title-actions{flex-shrink:0;justify-self:end;align-items:center;gap:8px;margin-inline-start:auto;display:flex}.plus-on-phone-icon{display:none}@media (max-width:640px){.primary-button--plus-on-phone{border-radius:999px;flex-shrink:0;width:40px;height:40px;min-height:0;padding:0}.primary-button--plus-on-phone .plus-on-phone-icon{align-items:center;display:inline-flex}.primary-button--plus-on-phone .plus-on-phone-icon svg{width:18px;height:18px}.primary-button--plus-on-phone .plus-on-phone-label{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.panel-toolbar:has(>.panel-title-actions){flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.panel-title-toggle{accent-color:var(--accent);cursor:pointer;flex-shrink:0;width:20px;height:20px;margin:0}.panel-title-with-hint{align-items:center;gap:8px;display:flex}.admin-users-panel .panel-title-with-hint{position:relative}.admin-users-panel .panel-title-with-hint .info-hint{position:static}.backdate-stepper-track{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.backdate-stepper-step{background:var(--surface-muted);border:1px solid var(--line);color:var(--muted);cursor:pointer;justify-content:center;align-items:center;height:40px;font-size:14px;font-weight:700;transition:background .12s,color .12s;display:flex;position:relative}.backdate-stepper-step:first-child{border-radius:999px 0 0 999px}.backdate-stepper-step:last-child{border-radius:0 999px 999px 0}.backdate-stepper-step.is-filled{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.backdate-stepper-step input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.backdate-stepper-step:has(input:focus-visible){outline:2px solid var(--accent-strong);outline-offset:2px;z-index:1}.backdate-stepper-caption{color:var(--ink);margin:0;font-size:14px;font-weight:700}.counted-textarea{gap:4px;max-width:640px;display:grid}.visit-form-full>.counted-textarea{max-width:none}.counted-textarea-counter{color:var(--muted);font-variant-numeric:tabular-nums;justify-self:end;margin:0;font-size:12px}.counted-textarea-counter.is-full{color:var(--danger)}.counted-textarea:has(.voice-hint-textarea){max-width:none}.voice-hint-textarea{background:var(--surface);border:1px solid var(--line);color:var(--ink);field-sizing:content;font:inherit;resize:vertical;border-radius:8px;width:100%;min-height:calc(4lh + 22px);max-height:16em;padding:10px 12px;font-weight:500;line-height:1.5}.voice-hint-textarea:focus{border-color:var(--accent);outline:2px solid var(--accent-soft)}.chip-list{flex-wrap:wrap;gap:6px;display:flex}@media (pointer:coarse){[data-zone=field] .chip-list{row-gap:14px}}.chip{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);color:var(--accent-strong);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:5px 8px 5px 10px;font-size:12px;font-weight:700;display:inline-flex}.chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.combo-field{position:relative}.combo-trigger{background:var(--surface);border:1px solid var(--line);color:var(--muted);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:42px;padding:0 10px;font-size:13px;display:flex}.combo-trigger svg:last-child{flex-shrink:0;transition:transform .16s}.combo-trigger[aria-expanded=true] svg:last-child{transform:rotate(180deg)}.combo-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);z-index:20;border-radius:10px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow:hidden}.combo-search{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px;display:flex}.combo-search input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:16px}.combo-search svg,.combo-search button{color:var(--muted);flex-shrink:0}.combo-search button{cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.combo-list{max-height:208px;display:grid;overflow-y:auto}.combo-empty{color:var(--muted);text-align:center;padding:18px;font-size:12px}.combo-option{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:flex}.combo-option:hover{background:var(--surface-muted)}.combo-option.selected{background:var(--accent-soft);color:var(--accent-strong)}.combo-option-check{border:1px solid var(--line);color:var(--on-accent);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.combo-option.selected .combo-option-check{background:var(--accent);border-color:var(--accent)}.combo-option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.combo-option-meta{color:var(--muted);font-size:var(--fs-caption,12px);flex-shrink:0}.field-report-submit{border-radius:14px;flex:1.6;gap:8px;min-height:52px;padding:0 10px;font-size:16px}.field-report-submit-bar{background:var(--surface);border-top:1px solid var(--line);bottom:var(--mobile-nav-height);z-index:20;position:fixed;left:0;right:0}.app-shell:has(.shell-opt-no-bottom-nav) .field-report-submit-bar{bottom:0}.app-shell:has(.shell-opt-accent-surface) .field-report-submit-bar{background:0 0;border-top:0}.app-shell:has(.shell-opt-accent-surface) .field-report-submit-bar-inner{background:var(--accent)}.field-report-submit-bar-inner{flex-direction:column;gap:10px;max-width:430px;margin-inline:auto;padding:10px 14px;display:flex}.field-report-submit-row{gap:12px;display:flex}.field-report-mic-button{background:var(--accent);color:var(--on-accent);cursor:pointer;border:0;border-radius:14px;flex:1;justify-content:center;align-items:center;min-height:52px;display:flex;box-shadow:0 4px 10px -2px #1018282e}.field-report-mic-button:disabled{cursor:not-allowed;opacity:.5}.app-shell:has(.shell-opt-accent-surface) .field-report-mic-button{border:1.5px solid var(--on-accent)}.app-shell:has(.shell-opt-accent-surface) .field-report-submit{border:1.5px solid var(--on-accent)}.field-report-mic-button.is-recording{background:var(--danger);animation:1.6s ease-in-out infinite field-report-mic-pulse}@keyframes field-report-mic-pulse{50%{box-shadow:0 0 0 8px color-mix(in srgb, var(--danger) 20%, transparent)}}@media (prefers-reduced-motion:reduce){.field-report-mic-button.is-recording{animation:none}}.form-field-title{margin-bottom:6px;font-size:13px;font-weight:700;display:block}.status-chip{background:var(--surface);border:1px solid var(--line);color:var(--muted);cursor:pointer;border-radius:999px;min-height:30px;padding:4px 10px;font-size:12px;font-weight:700}.equipment-work-tools{gap:8px;display:grid}.equipment-work-chips{margin-top:6px}.status-chip.active{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 40%, transparent);color:var(--accent-strong)}.mark-chips .status-chip{color:#fff;background:0 0;border-color:#fff9}.mark-chips .status-chip.active{color:var(--accent-strong);background:#fff;border-color:#fff;font-weight:700}.status-chip.rating-chip.active{color:#5c4300;background:#fde58a;border-color:#e8b923}.status-chip.danger{color:var(--danger)}.status-chip.danger.active{background:var(--danger);border-color:var(--danger);color:var(--on-accent)}.status-chip.shelf-chip{color:var(--ink);font-size:var(--fs-body-sm,14px);min-height:44px;padding:8px 14px}.status-chip.shelf-chip.active{color:var(--on-accent)}.not-found-screen{text-align:center;align-content:center;justify-items:center;gap:12px;max-width:420px;min-height:70vh;margin:0 auto;padding:24px;display:grid}.not-found-screen .primary-button{margin-top:8px}.problem-panel,.readings-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:10px;padding:12px;display:grid}.problem-panel textarea{width:100%;min-height:62px}.shelf-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:10px;padding:12px;display:grid}.shelf-panel .form-hint{margin:0}.link-button{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;padding:0;font-weight:800;text-decoration:underline}.shelf-checked{border-top:1px solid var(--line);align-items:start;padding-top:10px;font-size:13px}.shelf-checked input[type=checkbox]{margin-top:2px}.shelf-checked .form-hint{margin-top:2px;font-weight:600;display:block}.tasks-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:14px;padding:12px;display:grid}.potential-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:12px;padding:12px;display:grid}.potential-panel-add{justify-content:flex-end;display:flex}.tasks-panel .task-group-head{background:0 0;position:static}.tasks-panel-add{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;width:100%;padding:8px 0;font-size:13px;font-weight:700;display:flex}.tasks-panel-add:hover{opacity:.7}.notes-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:10px;padding:12px;display:grid}.notes-panel-head{align-items:center;gap:12px;display:flex}.notes-panel textarea{background:color-mix(in srgb, var(--surface-muted), var(--surface));resize:none;overflow:hidden}.report-photos-section{flex-direction:column;gap:8px;margin-top:8px;display:flex}.app-shell:has(.shell-opt-accent-surface) .report-photos-section .report-photos-section-label{color:color-mix(in srgb, var(--on-accent), transparent 20%);margin:0;padding:0 2px;font-size:13px;font-weight:700}.report-photos-section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}@media (pointer:coarse){.report-photos-section-head{min-height:44px}}.report-photos-gallery{color:var(--accent);cursor:pointer;padding:4px 2px;font-size:13px;font-weight:700}.app-shell:has(.shell-opt-accent-surface) .report-photos-section .report-photos-gallery{color:var(--on-accent)}.report-photos-limit{color:var(--ink-muted);font-size:13px;font-weight:600}.app-shell:has(.shell-opt-accent-surface) .report-photos-section .report-photos-limit{color:var(--on-accent)}.problem-panel .report-photos-section-label{color:var(--muted);margin:0;font-size:13px;font-weight:700}.report-photos-gallery input{display:none}.report-photo-undo{background:var(--surface-muted);color:var(--text);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:8px 12px;font-size:13px;display:flex}.report-photo-undo button{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:4px 2px;font-weight:800}.report-photos-grid{flex-wrap:wrap;gap:9px;display:flex}.report-photo-tile{width:96px;height:96px;position:relative}.report-photos-section .report-photos-grid,.problem-panel .report-photos-grid{flex-wrap:nowrap}.report-photos-section .report-photo-tile,.problem-panel .report-photo-tile{flex:0 0 calc(33.3333% - 6px);width:auto}.report-photo-thumb{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:12px;width:100%;height:100%;padding:0;display:flex;overflow:hidden}.report-photo-thumb img{object-fit:cover;width:100%;height:100%}.visit-card-thumbs{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.visit-card-thumb{background:var(--surface-muted);border:1px solid var(--line);color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;overflow:hidden}.visit-card-thumb:hover{border-color:var(--line-hover)}.visit-card-thumb img{object-fit:cover;width:100%;height:100%}.visit-card-thumbs-more{color:var(--muted);padding-inline:4px;font-size:13px;font-weight:600}.report-photo-thumb-placeholder{color:var(--muted);justify-content:center;align-items:center;width:100%;display:flex}.report-photo-thumb--uploading,.report-photo-thumb--pending{color:var(--muted);justify-content:center;align-items:center;display:flex}.report-photo-thumb--pending{border-color:var(--warn-line);color:var(--warn-ink)}.report-photo-remove{background:var(--surface);border:1px solid var(--line);color:var(--danger);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 3px 8px #10182824}.report-photo-add{background:var(--surface-muted);border:1.5px dashed var(--line);color:var(--accent);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.report-photo-add span{font-size:12.5px;font-weight:800}.report-photo-add input{display:none}.photo-viewer{color:#fff;background:#16191a;border:0;flex-direction:column;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;display:flex;position:fixed;inset:0}.photo-viewer::backdrop{background:#16191a}.photo-viewer-head{align-items:center;gap:12px;padding:16px;display:flex}.photo-viewer-icon-button{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.photo-viewer-icon-button--spacer{visibility:hidden}.photo-viewer-icon-button--danger{color:#f0a9a1}.photo-viewer-title{color:#fff;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:16px;font-weight:800;overflow:hidden}.photo-viewer-frame{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.photo-viewer-frame img{aspect-ratio:3/4;object-fit:contain;width:100%;max-width:100%;max-height:100%}.photo-viewer-loading{color:#ffffff8c;font-size:13.5px;font-weight:600}.photo-viewer-nav{color:#fff;cursor:pointer;background:#16191a99;border:0;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.photo-viewer-nav:disabled{opacity:.35;pointer-events:none}.photo-viewer-nav--previous{left:12px}.photo-viewer-nav--previous svg{transform:rotate(180deg)}.photo-viewer-nav--next{right:12px}.report-detail-photo-links{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.report-detail-photo-link{background:var(--surface-muted);border:1px solid var(--line);color:var(--accent);border-radius:8px;padding:6px 10px;font-size:13px;font-weight:700}.inline-toggle{color:var(--accent);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;width:fit-content;padding:0;font-size:12px;font-weight:700;display:inline-flex}.inline-toggle svg{transition:transform .16s}.inline-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.visit-date-field{position:relative}.visit-date-trigger{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;flex:none;align-items:center;gap:4px;padding:4px 0;font-size:13px;font-weight:700;display:inline-flex}.visit-date-trigger svg{flex-shrink:0;transition:transform .16s}.visit-date-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.visit-date-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);z-index:20;border-radius:10px;min-width:168px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden}.spin-icon{animation:.8s linear infinite spin-icon-rotate}@keyframes spin-icon-rotate{to{transform:rotate(360deg)}}.announcement-body{color:var(--muted);white-space:pre-wrap;margin:0}.announcement-card.is-archived,.announcement-card.is-finished{opacity:.72}.announcement-card.is-active{border-left:3px solid var(--accent)}.announcement-reads{gap:4px;min-width:120px;display:inline-grid}.announcement-reads-link{color:inherit;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.announcement-reads-link .announcement-reads-label{text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:3px}.announcement-reads-link:hover .announcement-reads-label{color:var(--accent-strong);text-decoration-color:currentColor}.announcement-readers{align-content:start;gap:18px;padding:4px 20px 24px;display:grid}.announcement-readers h3{color:var(--muted);margin:0 0 8px;font-size:13px;font-weight:700}.announcement-readers-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.announcement-readers-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;display:flex}.announcement-reads-bar{background:var(--surface-muted);border-radius:999px;height:6px;display:block;position:relative;overflow:hidden}.announcement-reads-bar:after{background:var(--accent);content:"";width:var(--read-share,0%);border-radius:999px;position:absolute;inset:0 auto 0 0}.announcement-reads-label{font-variant-numeric:tabular-nums}.announcement-feed{gap:10px;margin-bottom:24px;display:grid}.announcement-note{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:8px;padding:14px;display:grid}.announcement-note.is-unread{background:var(--accent-soft);border-color:var(--accent)}.announcement-note.is-important{border-color:var(--danger);border-left-width:4px}.announcement-note.is-important.is-unread{background:var(--danger-surface)}.announcement-important-tag{background:var(--danger);color:var(--on-accent);font-size:var(--fs-caption,12px);border-radius:999px;flex:none;padding:3px 8px;font-weight:700}.announcement-note-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.announcement-note-top h3{margin:0;font-size:15px}.announcement-new-tag{background:var(--accent);color:var(--on-accent);font-size:var(--fs-caption,12px);border-radius:999px;flex:none;padding:3px 8px;font-weight:700}.announcement-note-body{color:var(--ink);white-space:pre-wrap;margin:0;font-size:14px}.announcement-note-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.announcement-note-window{color:var(--muted);font-size:13px}.announcement-read-button{align-items:center;gap:6px;display:inline-flex}.announcement-note-foot>form{margin-left:auto}.announcement-feed-read-list{gap:10px;display:grid}.announcement-feed-read-heading{color:var(--muted);margin:0;padding:4px 0;font-size:13px;font-weight:400}.report-outbox{background:var(--surface-muted);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.report-outbox-text{margin:0;font-size:14px;font-weight:700}.report-outbox .secondary-button{flex-shrink:0}.mfa-qr{border:1px solid var(--border);background:#fff;border-radius:8px;align-self:center;max-width:100%;height:auto;padding:8px}.recovery-code-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.onboarding-screen{flex-direction:column;min-height:100vh;display:flex}.onboarding-screen--accent{background:var(--accent);color:#fff}.onboarding-screen--surface{background:var(--bg);color:var(--ink)}[data-zone=field] .onboarding-form{flex-direction:column;flex:1;width:100%;max-width:430px;margin-inline:auto;display:flex}[data-zone=field] .onboarding-topbar{padding:calc(30px + env(safe-area-inset-top)) 24px 0;flex:none;justify-content:space-between;align-items:center;display:flex}.onboarding-screen--accent .brand-mark{color:#fff;background:#ffffff29}.onboarding-screen--accent .brand-name{color:#fff}[data-zone=field] .onboarding-skip{color:#fff9;cursor:pointer;background:0 0;border:none;padding:4px;font-size:14.5px;font-weight:700}.onboarding-screen--surface .onboarding-skip{color:var(--muted)}[data-zone=field] .onboarding-body{flex-direction:column;flex:1;min-height:0;padding:0 24px;display:flex}[data-zone=field] .onboarding-step--welcome{flex-direction:column;flex:1;justify-content:center;gap:22px;display:flex}[data-zone=field] .onboarding-step-icon{background:#ffffff24;border-radius:24px;justify-content:center;align-items:center;width:78px;height:78px;display:flex}[data-zone=field] .onboarding-step--welcome h1{letter-spacing:-.035em;margin:0;font-size:34px;font-weight:800;line-height:1.12}[data-zone=field] .onboarding-step--welcome p{color:#ffffffc7;margin:0;font-size:16.5px;font-weight:500;line-height:1.6}[data-zone=field] .onboarding-step--day,[data-zone=field] .onboarding-step--offline,[data-zone=field] .onboarding-step--permissions{padding-top:28px}[data-zone=field] .onboarding-step--day h1,[data-zone=field] .onboarding-step--offline h1,[data-zone=field] .onboarding-step--permissions h1{letter-spacing:-.03em;margin:0;font-size:29px;font-weight:800;line-height:1.16}[data-zone=field] .onboarding-step--offline p,[data-zone=field] .onboarding-step--permissions p{color:var(--muted);margin:12px 0 0;font-size:15px;font-weight:500;line-height:1.55}[data-zone=field] .onboarding-timeline{flex-direction:column;gap:2px;margin:26px 0 0;padding:0;list-style:none;display:flex}[data-zone=field] .onboarding-timeline li{gap:14px;padding-bottom:22px;display:flex}[data-zone=field] .onboarding-timeline-marker-col{flex-direction:column;flex:none;align-items:center;width:40px;display:flex}[data-zone=field] .onboarding-timeline-marker{background:var(--accent-tint,#e6efeb);color:var(--accent);border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:800;display:flex}[data-zone=field] .onboarding-timeline-connector{background:var(--line);flex:1;width:2px;margin:4px 0}[data-zone=field] .onboarding-timeline-content{flex:1;min-width:0}[data-zone=field] .onboarding-timeline-title{color:var(--ink);margin:0;font-size:17px;font-weight:800}[data-zone=field] .onboarding-timeline-body{color:var(--muted);margin:5px 0 0;font-size:14.5px;font-weight:500;line-height:1.55}[data-zone=field] .onboarding-status-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:13px;margin-top:26px;padding:16px;display:flex}[data-zone=field] .onboarding-status-row{align-items:center;gap:11px;display:flex}[data-zone=field] .onboarding-status-icon{border-radius:10px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:flex}[data-zone=field] .onboarding-status-icon--warn{color:#9a7b1e;background:#f5efe3}[data-zone=field] .onboarding-status-icon--accent{background:var(--surface);border:1px solid var(--line);color:var(--accent)}[data-zone=field] .onboarding-status-content{flex:1;min-width:0}[data-zone=field] .onboarding-status-label{color:var(--ink);margin:0;font-size:14.5px;font-weight:700}[data-zone=field] .onboarding-status-badge{color:#9a7b1e;background:#f5efe3;border-radius:7px;flex:none;padding:3px 9px;font-size:12.5px;font-weight:700}[data-zone=field] .onboarding-status-hint{color:var(--muted);margin:2px 0 0;font-size:13px;font-weight:500}[data-zone=field] .onboarding-status-divider{background:var(--line);height:1px}[data-zone=field] .onboarding-footer{padding:0 24px calc(34px + env(safe-area-inset-bottom));flex-direction:column;flex:none;gap:18px;display:flex}[data-zone=field] .onboarding-footer form{display:contents}[data-zone=field] .onboarding-dots{gap:7px;display:flex}[data-zone=field] .onboarding-dot{background:#ffffff52;border-radius:2px;width:8px;height:4px}.onboarding-screen--surface .onboarding-dot{background:var(--line)}[data-zone=field] .onboarding-dot.is-active{background:#fff;width:26px}.onboarding-screen--surface .onboarding-dot.is-active{background:var(--accent)}[data-zone=field] .onboarding-cta{border-radius:14px;min-height:54px;font-size:16px}.onboarding-screen--accent .onboarding-cta{box-shadow:none;color:var(--accent);background:#fff}.onboarding-screen--accent .onboarding-cta:hover{background:#eeede8}[data-zone=field] .onboarding-permission-list{flex-direction:column;gap:12px;margin-top:26px;display:flex}[data-zone=field] .onboarding-permission-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;gap:13px;padding:16px;display:flex}[data-zone=field] .onboarding-permission-icon{background:var(--surface);border:1px solid var(--line);color:var(--accent);border-radius:13px;flex:none;justify-content:center;align-items:center;width:46px;height:46px;display:flex}[data-zone=field] .onboarding-permission-content{flex:1;min-width:0}[data-zone=field] .onboarding-permission-title{color:var(--ink);margin:0;font-size:16.5px;font-weight:800}[data-zone=field] .onboarding-permission-body{color:var(--muted);margin:4px 0 0;font-size:14px;font-weight:500;line-height:1.5}[data-zone=field] .onboarding-permission-note{color:var(--ink-muted);align-items:flex-start;gap:9px;margin-top:18px;display:flex}[data-zone=field] .onboarding-permission-note svg{color:var(--ink-faint);flex:none;margin-top:2px}[data-zone=field] .onboarding-permission-note p{margin:0;font-size:13px;line-height:1.5}[data-zone=field] .onboarding-later{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;align-self:center;padding:4px;font-size:14.5px;font-weight:700}[data-zone=field] .onboarding-later:hover{color:#5a615f}.point-info{flex-direction:column;gap:14px;width:100%;min-width:0;max-width:1180px;margin:0 auto;padding-bottom:108px;display:flex}.point-info-header{align-items:flex-start;gap:8px;display:flex}.point-info-title{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.point-info-title h1{color:var(--ink);letter-spacing:-.02em;text-wrap:pretty;margin:0;font-size:22px;font-weight:800}.point-info-title p{color:var(--ink-muted);margin:0;font-size:14.5px;font-weight:600}.point-info-chips{flex-wrap:wrap;align-items:center;gap:8px;padding-left:28px;display:flex}.point-info-chip{background:var(--surface-muted);color:var(--ink-muted);border-radius:8px;padding:4px 10px;font-size:12.5px;font-weight:700}.point-info-chip.is-chain{background:var(--accent-tint);color:var(--accent)}.point-info-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0}.point-info-card.visit-quick-links{padding:0 13px}.point-info-note{background:var(--surface);border:1px solid var(--line);color:inherit;cursor:pointer;font:inherit;text-align:left;border-radius:14px;gap:9px;width:100%;padding:14px 15px;display:grid}.point-info-note-head{align-items:center;gap:10px;display:flex}.point-info-note-head>svg:first-child{color:var(--accent);flex-shrink:0}.point-info-note-head>svg:last-child{color:var(--ink-faint);flex-shrink:0}.point-info-note-label{flex:1;font-size:15.5px;font-weight:800}.point-info-note-text{color:var(--ink-muted);overflow-wrap:anywhere;white-space:pre-wrap;font-size:14px;font-weight:500;line-height:1.5}.point-info-note-text.is-empty{color:var(--ink-muted)}.point-info-tasks-summary{cursor:pointer;align-items:center;gap:12px;padding:13px 15px;list-style:none;display:flex}.point-info-tasks-summary::-webkit-details-marker{display:none}.point-info-tasks-summary>svg:first-child{color:var(--accent);flex-shrink:0}.point-info-tasks-label{flex:1;font-size:16px;font-weight:800}.point-info-tasks .tasks-summary{white-space:nowrap;gap:8px;font-size:13px}.point-info-tasks-total{color:var(--ink-muted);font-weight:700}.tasks-summary-stat+.point-info-tasks-total:before{content:"· "}.point-info-tasks-chevron{color:var(--ink-muted);flex-shrink:0;transition:transform .15s;display:inline-flex}.point-info-tasks[open] .point-info-tasks-chevron{transform:rotate(180deg)}.point-info-tasks-body{gap:14px;padding:0 15px 15px;display:grid}.point-info .task-group-head{background:0 0;position:static}.point-info-bar{background:var(--bg);border-top:1px solid var(--line);bottom:var(--mobile-nav-height);z-index:20;position:fixed;left:0;right:0}.point-info-bar-inner{max-width:430px;margin-inline:auto;padding:12px 16px 36px}.point-info-start{border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;height:52px;font-size:16px;font-weight:800;display:flex}.point-info-no-visit{margin:0}.point-info-planned-ahead{color:var(--muted);text-align:center;margin:0 0 10px;font-size:13px;line-height:1.4}@media (prefers-reduced-motion:reduce){.point-info-tasks-chevron{transition:none}}.point-history-head{background:var(--bg);top:calc(var(--field-top-inset,0px) + 73px + env(safe-area-inset-top));z-index:5;flex-direction:column;gap:16px;padding-bottom:12px;display:flex;position:sticky}.point-history-head .page-header,.location-detail-sections>.page-header{margin:0}.point-history-place{align-items:center;gap:12px;padding:14px 16px;display:flex}.point-history-place>svg{color:var(--accent);flex-shrink:0}.point-history-place-text{flex-direction:column;gap:2px;min-width:0;display:flex}.point-history-place-name{text-overflow:ellipsis;white-space:nowrap;font-size:16.5px;font-weight:800;overflow:hidden}.point-history-place-address{color:var(--ink-muted);font-size:14px;font-weight:600}.point-history-place-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.region-scope-note{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:999px;width:fit-content;margin:0 0 16px;padding:6px 14px;font-size:13px;font-weight:600}.announcement-regions-field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.announcement-regions-field legend{color:var(--ink);margin-bottom:2px;padding:0;font-size:13px;font-weight:800}.visit-form .announcement-regions-field .role-checkbox{font-size:14px;font-weight:500;display:inline-flex}.visit-form .announcement-regions-field .role-checkbox:has(input:checked){font-weight:600}.user-regions-form{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:12px;display:flex}.user-regions-form fieldset{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.user-regions-form legend{padding:0;font-size:13px;font-weight:700}.visit-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.visit-card-title-link{color:inherit;min-width:0;text-decoration:none}.visit-card-title-link:hover{text-decoration:underline}.visit-card-unseen-dot{background:var(--blue);vertical-align:middle;border-radius:999px;width:8px;height:8px;margin-inline-end:8px;display:inline-block}.visit-unseen-bar{justify-content:flex-end;margin:0 0 8px;display:flex}.visit-unseen-bar .link-button{align-items:center;gap:6px;min-height:36px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.visit-unseen-bar .link-button:hover{text-decoration:underline}@media (pointer:coarse){.visit-unseen-bar .link-button{min-height:44px}}.visit-card-toggle{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;margin:-8px;padding:8px;display:flex}.location-card-section{gap:10px;display:grid}.location-header{position:relative}.location-header-actions{position:absolute;top:14px;right:16px}.location-contact-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.location-contact-list li{gap:2px;display:grid}.location-contact-lines{color:var(--muted);flex-wrap:wrap;gap:4px 16px;font-size:14px;display:flex}.location-contact-lines a{color:inherit;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.location-contact-note{color:var(--muted);font-size:13px}.location-card-section h2{margin:0;font-size:14px}.location-card-section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.location-card-section-head .location-header-icon{gap:6px;width:auto;height:auto;min-height:32px;padding:0 12px}.location-card-section-head .location-header-icon>svg,.location-card-section-head .location-header-icon-badge{display:none}.location-card-section-head .location-header-icon-label{font-size:13px;font-weight:650}@media (max-width:640px){.location-card-section-head{min-height:44px;position:relative}.location-card-section-head .location-header-icon{opacity:0;border-radius:8px;padding:0;position:absolute;inset:0}.location-card-section .location-contact-list,.location-card-section .location-notes-text{display:none}.location-card-section-head:after{border-bottom:2px solid var(--muted);border-right:2px solid var(--muted);content:"";flex:none;width:8px;height:8px;margin-right:6px;transform:rotate(-45deg)}.location-card-section-head:has(.location-header-icon:focus-visible){outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}}.location-feature-page-title,.panel h2.location-feature-page-title{margin:0;font-size:14px}.visit-card-chevron{color:var(--muted);flex-shrink:0;transition:transform .16s;display:inline-flex}.visit-card-expandable{cursor:pointer}@media (max-width:640px){.visit-card-expandable:not(.is-open) .list-card-fact--detail{display:none}}.visit-card-expandable.is-open{border-color:var(--accent)}.visit-card-expandable.is-open .visit-card-chevron{transform:rotate(180deg)}.visit-card-toggle:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}.visit-preview{border-top:1px solid var(--line);gap:12px;margin-top:12px;padding-top:12px;display:grid}.visit-preview[hidden]{display:none}.visit-preview .list-card-open{margin-top:0}.visit-preview-section{gap:6px;display:grid}.visit-preview-section>strong,.visit-preview-problem>strong{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.visit-preview-title-icon{border-radius:6px;flex:none;padding:4px;display:inline-flex}.visit-preview-title-icon[data-tone=blue]{background:color-mix(in srgb, var(--blue) 14%, transparent);color:var(--blue)}.visit-preview-title-icon[data-tone=gold]{background:color-mix(in srgb, var(--gold) 16%, transparent);color:var(--gold)}.visit-preview-title-icon[data-tone=accent]{background:var(--accent-soft);color:var(--accent)}.visit-preview-title-icon[data-tone=muted]{background:var(--surface-muted);color:var(--muted)}.visit-preview-title-icon[data-tone=danger]{background:var(--danger-surface);color:var(--danger)}.visit-preview-status{color:var(--muted);margin:0;font-size:13px}.visit-preview-notes{margin:0;font-size:14px;line-height:1.45}.visit-preview-voice{color:var(--muted)}.visit-preview-task-overdue,.visit-preview-numbers.visit-preview-task-overdue{color:var(--danger)}.visit-preview-task-priority,.visit-preview-numbers.visit-preview-task-priority{color:var(--gold)}.visit-preview-chip-danger{background:var(--danger-surface);border-color:var(--danger-line);color:var(--danger)}.visit-preview-problem{background:var(--warn-surface);border:1px solid var(--warn-line);color:var(--warn-ink);border-radius:8px;gap:8px;padding:10px 12px;display:grid}.visit-preview-problem>strong{color:inherit}.visit-preview-problem p{margin:0}.visit-preview-photos{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.visit-preview-photos a{aspect-ratio:4/3;background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:block;overflow:hidden}.visit-preview-photos img{object-fit:cover;width:100%;height:100%;display:block}.visit-preview-rows{gap:6px;margin:0;padding:0;list-style:none;display:grid}.visit-preview-rows li{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;font-size:13px;display:flex}.visit-preview-rows--inline li{flex-wrap:nowrap;justify-content:flex-start}.visit-preview-rows--inline li>.visit-preview-numbers{flex:none}.visit-preview-numbers{color:var(--muted)}.visit-pill-rows{grid-column:1/-1;gap:10px;display:grid}.visit-pill-rows:empty{display:none}.visit-pill-row{grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:center;gap:6px 12px;display:grid}.visit-pill-label{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;min-width:72px;font-size:12px;font-weight:800}@media (max-width:640px){.visit-pill-row{grid-template-columns:minmax(0,1fr)}}.filter-form-wide{grid-column:1/-1}.panel.drilldown-panel.panel-bare{box-shadow:none;background:0 0;border:0;padding:0;overflow:visible}.location-sort-row{color:var(--muted);font-size:var(--fs-meta);flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 12px;display:flex}.location-sort-link{border:1px solid var(--line);color:var(--ink);border-radius:999px;align-items:center;gap:4px;min-height:32px;padding:4px 12px;font-weight:600;text-decoration:none;display:inline-flex}.location-sort-link:hover{border-color:var(--line-hover)}.location-sort-link[aria-current=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-strong)}@media (pointer:coarse){.location-sort-link{min-height:44px}}.visit-card-address{color:var(--muted);align-items:center;gap:6px;margin:2px 0 0;font-size:13px;display:flex}.visit-card-address svg{flex-shrink:0}.visit-preview-author{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:800;display:flex}.list-card-fact[data-tone] dt{border-radius:6px;padding:4px}.list-card-fact[data-tone=blue] dt{background:color-mix(in srgb, var(--blue) 14%, transparent);color:var(--blue)}.list-card-fact[data-tone=gold] dt{background:color-mix(in srgb, var(--gold) 16%, transparent);color:var(--gold)}.list-card-fact[data-tone=accent] dt{background:var(--accent-soft);color:var(--accent)}.list-card-fact[data-tone=danger] dt{background:var(--danger-surface);color:var(--danger)}.list-card.has-problem{box-shadow:inset 3px 0 0 var(--danger)}.list-card-fact--end{margin-left:auto}.visit-card-tasks-link{color:inherit;text-decoration:none}.visit-card-tasks-link:hover{text-decoration:underline}.visit-preview-more{color:var(--accent-strong);justify-self:start;font-size:13px;font-weight:700;text-decoration:none}.visit-preview-more:hover{text-decoration:underline}:root{--chart-1:#16917b;--chart-2:#eb6834;--chart-3:#2a78d6;--chart-good:#0c7a2a;--chart-bad:#b42f2f;--chart-grid:color-mix(in srgb, var(--line) 70%, transparent)}.analytics-period-note{color:var(--muted);max-width:1180px;margin:0 auto 12px;font-size:14px}.dashboard-period-row .analytics-period-note{margin:6px 0 0}.analytics-period-note strong{color:var(--ink);font-weight:700}.analytics-panel{min-width:0;max-width:1180px;margin:0 auto 16px}.analytics-panel>.panel-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.analytics-panel>.panel-header>.panel-title-stack{margin-bottom:0}.analytics-subtitle{align-items:center;gap:6px;margin:16px 0 8px;font-size:14px;display:flex;position:relative}.analytics-subtitle .info-hint{position:static}.analytics-subtitle .info-hint-bubble{width:auto;max-width:none;left:0;right:0}.analytics-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1180px;margin:0 auto 16px;display:grid}.analytics-pair>.analytics-panel{margin:0}.analytics-pair--single{grid-template-columns:minmax(0,1fr)}.analytics-pair--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.today-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1180px;margin:0 auto 18px;display:grid}.today-item{background:var(--surface);border:1px solid var(--line);color:inherit;border-radius:10px;align-items:center;gap:12px;min-width:0;padding:12px 14px;text-decoration:none;display:flex}.today-item>div{flex:1;min-width:0}.today-item.is-link:hover{border-color:var(--line-hover)}.today-icon{background:var(--accent-soft);color:var(--accent);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.today-icon svg{width:18px;height:18px}.today-item.is-attention .today-icon{background:var(--warn-surface);color:var(--gold)}.today-label{color:var(--muted);margin:0;font-size:12px}.today-value{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:20px;font-weight:750;line-height:1.2}.today-detail{color:var(--muted);margin:0;font-size:12px}.today-hint{display:none}.today-badge{color:var(--accent-strong);font-size:15px;font-weight:700}.today-progress{background:var(--surface-muted);border-radius:99px;height:4px;margin-top:6px;display:block;overflow:hidden}.today-progress>span{background:var(--chart-1);border-radius:99px;height:100%;display:block}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1180px;margin:0 auto 16px;display:grid}.kpi-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);color:inherit;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:14px 16px 12px;text-decoration:none;display:flex;position:relative}.kpi-card:before{content:"";background:0 0;border-radius:10px 0 0 10px;width:4px;position:absolute;top:-1px;bottom:-1px;left:-1px}.kpi-card.is-attention:before{background:var(--gold)}.kpi-card:last-child:nth-child(4n+1){grid-column:span 4}.kpi-card:last-child:nth-child(4n+2),.kpi-card:nth-last-child(2):nth-child(4n+1),.kpi-card:last-child:nth-child(4n+3){grid-column:span 2}.kpi-card.is-link:hover{border-color:var(--line-hover);box-shadow:var(--shadow-card-hover)}.kpi-label{color:var(--muted);margin:0;font-size:13px;font-weight:600}.kpi-value{font-variant-numeric:tabular-nums;letter-spacing:-.01em;flex-wrap:wrap;align-items:baseline;gap:8px;margin:2px 0 0;font-size:28px;font-weight:750;line-height:1.15;display:flex}.kpi-detail{color:var(--muted);margin:0;font-size:12.5px;line-height:1.35}.sparkline-wrap{margin-top:auto;padding-top:6px;position:relative}.sparkline{width:100%;height:28px;display:block}.sparkline-hit{display:block;position:absolute;inset:0}.sparkline-dot{background:var(--chart-1);border:2px solid var(--surface);pointer-events:none;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;position:absolute}.kpi-card.is-attention .sparkline-dot{background:var(--gold)}.sparkline-tip{background:var(--ink);color:var(--surface);pointer-events:none;white-space:nowrap;z-index:3;border-radius:6px;padding:5px 8px;font-size:12px;font-weight:600;line-height:1.2;position:absolute;bottom:calc(100% + 2px)}.sparkline polyline{fill:none;stroke:var(--chart-1);stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.kpi-card.is-attention .sparkline polyline{stroke:var(--gold)}.delta-badge{letter-spacing:0;white-space:nowrap;border-radius:99px;align-items:center;gap:3px;padding:3px 7px;font-size:12px;font-weight:650;line-height:1;display:inline-flex}.delta-badge.is-good{background:color-mix(in srgb, var(--chart-good) 12%, transparent);color:var(--chart-good)}.delta-badge.is-bad{background:color-mix(in srgb, var(--chart-bad) 10%, transparent);color:var(--chart-bad)}.delta-badge.is-flat{background:var(--surface-muted);color:var(--muted)}.delta-badge>span:first-child{font-size:9px}.trend-chart{margin:0}.trend-chart-body{grid-template-columns:auto minmax(0,1fr);gap:8px;display:grid}.trend-chart-axis{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;flex-direction:column;justify-content:space-between;height:200px;font-size:11px;display:flex;transform:translateY(-.5em)}.trend-chart-plot{min-width:0}.trend-chart-columns{background:linear-gradient(var(--chart-grid), var(--chart-grid)) 0 0 / 100% 1px no-repeat, linear-gradient(var(--chart-grid), var(--chart-grid)) 0 50% / 100% 1px no-repeat;border-bottom:1px solid var(--line);align-items:end;column-gap:2px;height:200px;display:grid}.trend-col{min-width:0;height:100%;position:relative}.trend-col:hover{background:color-mix(in srgb, var(--surface-muted) 70%, transparent)}.trend-col-stack{flex-direction:column-reverse;gap:2px;display:flex;position:absolute;inset:0 12%}.trend-seg{flex-shrink:0;display:block}.trend-seg.is-visited{background:var(--chart-1)}.trend-seg.is-skipped{background:var(--chart-2)}.trend-col-stack>.trend-seg:last-child{border-radius:3px 3px 0 0}.trend-plan-mark{background:var(--chart-3);border-radius:2px;height:2px;position:absolute;left:0;right:0;transform:translateY(1px)}.trend-chart-x{color:var(--muted);font-variant-numeric:tabular-nums;column-gap:2px;padding-top:4px;font-size:11px;display:grid}.trend-chart-x>span{text-align:center;white-space:nowrap;overflow:visible}@media (max-width:640px){.trend-chart-x>span.is-minor{visibility:hidden}}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:12px;display:flex}.chart-legend>span{align-items:center;gap:6px;display:inline-flex}.chart-swatch{border-radius:3px;width:10px;height:10px;display:inline-block}.chart-swatch.is-visited{background:var(--chart-1)}.chart-swatch.is-skipped{background:var(--chart-2)}.chart-swatch.is-planned{background:var(--chart-3);border-radius:2px;width:14px;height:2px}.table-scroll{background:linear-gradient(to right, var(--surface) 40%, transparent) left / 32px 100% no-repeat local, linear-gradient(to left, var(--surface) 40%, transparent) right / 32px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, color-mix(in srgb, var(--ink) 16%, transparent), transparent) left / 12px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, color-mix(in srgb, var(--ink) 16%, transparent), transparent) right / 12px 100% no-repeat scroll;margin:0 -4px;padding:0 4px;overflow-x:auto}.team-table,.breakdown-table{font-variant-numeric:tabular-nums}.team-table th,.team-table td,.breakdown-table th,.breakdown-table td{vertical-align:top;white-space:nowrap;padding:10px 5px}.team-table tbody th,.breakdown-table tbody th{color:var(--ink);text-transform:none;font-size:14px}.team-table thead th{white-space:normal}.team-table .team-sub{white-space:normal;max-width:9em;display:block}.team-table th:first-child{background:var(--surface);z-index:1;position:sticky;left:0}.team-table tbody tr.is-attention th{box-shadow:inset 3px 0 0 var(--gold)}.team-show-all{justify-content:center;width:fit-content;margin:14px auto 0;display:flex}.team-show-all--narrow{display:none}.team-sort{color:inherit;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.team-sort:hover,.team-sort.is-active{color:var(--ink)}.team-sort-mark{opacity:.6;font-size:11px}.team-name{color:var(--accent-strong);font-weight:650;text-decoration:none}.team-name:hover{text-decoration:underline}.team-inactive{color:var(--muted);font-size:11.5px;font-weight:400;display:block}.team-visits{align-items:center;gap:6px;display:flex}.team-sub{color:var(--muted);margin-top:2px;font-size:11.5px;display:block}.team-open{color:var(--gold);font-size:var(--fs-caption,12px);align-items:center;gap:4px;margin-top:2px;font-weight:650;display:flex}.team-open:hover{text-decoration:underline}.team-open svg{width:14px;height:14px}.team-overdue{color:var(--gold);margin-top:2px;font-size:11.5px;font-weight:650;display:block}.team-cell-icon{display:none}.bar-meter{gap:4px;min-width:64px;display:inline-grid}.bar-meter-value{font-weight:650}.bar-meter-note{color:var(--muted);font-size:var(--fs-meta,13px);font-weight:500}.bar-meter-track{background:var(--surface-muted);border-radius:99px;height:4px;display:block;overflow:hidden}.bar-meter-fill{background:var(--chart-1);border-radius:99px;height:100%;display:block}.bar-meter.is-attention .bar-meter-fill{background:var(--gold)}.bar-meter.is-attention .bar-meter-value{color:var(--gold)}@media (max-width:900px){.analytics-panel .table-scroll:has(.team-table){background:0 0;margin:0;padding:0;overflow:visible}.team-table,.team-table tbody{display:block}.team-table thead{display:none}.team-table tbody tr{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px 16px;padding:14px 0;display:grid}.team-table tbody tr.is-attention{box-shadow:inset 3px 0 0 var(--gold);padding-left:12px}.team-table tbody tr.is-attention th{box-shadow:none}.team-table tbody th{background:0 0;border:0;grid-column:1/-1;padding:0;font-size:15px;position:static}.team-table tbody td{white-space:normal;border:0;grid-template-columns:minmax(0,1fr);row-gap:2px;min-width:0;padding:0;font-size:13px;display:grid}.team-table tbody td[data-label]:before{color:var(--ink-muted);content:attr(data-label);font-size:var(--fs-caption);font-weight:600}.team-table tbody .team-cell-icon,.team-table--preview tbody tr:nth-child(n+6){display:none}.team-show-all--narrow{display:flex}.team-table tbody .bar-meter-value{font-size:14px}.team-table tbody .team-sub,.team-table tbody .team-overdue{font-size:11px}.team-table tbody th .team-name{font-size:15px}.team-table .team-sub{max-width:none}}.shelf-facts{flex-wrap:wrap;gap:12px 28px;margin:0;display:flex}.shelf-facts dt{color:var(--muted);font-size:12px}.shelf-facts dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:22px;font-weight:750}.attention-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;display:grid}.attention-list{min-width:0}.attention-heading{align-items:center;gap:8px;display:flex}.attention-list h3{align-items:center;gap:8px;margin:0 0 8px;font-size:14px;display:flex}.attention-icon{background:var(--accent);color:var(--on-accent);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.attention-icon svg{width:15px;height:15px}.attention-list ul,.analytics-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.attention-list ul.is-scrolling{background:linear-gradient(var(--surface) 30%, transparent) center top / 100% 36px no-repeat local, linear-gradient(transparent, var(--surface) 70%) center bottom / 100% 36px no-repeat local, radial-gradient(farthest-side at 50% 0, color-mix(in srgb, var(--ink) 16%, transparent), transparent) center top / 100% 12px no-repeat scroll, radial-gradient(farthest-side at 50% 100%, color-mix(in srgb, var(--ink) 16%, transparent), transparent) center bottom / 100% 12px no-repeat scroll;overscroll-behavior:contain;align-content:start;max-height:245px;margin:0 -8px;padding:0 8px;overflow-y:auto}.attention-list ul.is-scrolling .attention-row{margin:0}.attention-row{color:inherit;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin:0 -8px;padding:8px;text-decoration:none;display:flex}.attention-row:hover,.attention-row:focus-visible{background:var(--surface-muted)}.attention-row-main{min-width:0;display:grid}.attention-row-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.attention-row-detail{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.attention-row-badge{background:var(--surface-muted);color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:99px;flex-shrink:0;padding:3px 8px;font-size:12px;font-weight:600}.attention-row-badge.is-attention{background:var(--warn-surface);color:var(--warn-ink)}.attention-more{color:var(--accent-strong);cursor:pointer;font:inherit;background:0 0;border:0;margin-top:6px;padding:6px 0;font-size:13px;font-weight:600;display:inline-block}.attention-more:hover{text-decoration:underline}.heatmap{overflow-x:auto}.heatmap-grid{border-collapse:separate;border-spacing:3px;width:100%;font-size:11px}.heatmap-grid th{color:var(--muted);text-align:center;white-space:nowrap;padding:0 4px;font-weight:500}.heatmap-grid tbody th{text-align:right}.heatmap-grid thead td{background:0 0}.heatmap-grid tbody td{background:color-mix(in srgb, var(--chart-1) var(--heat,0%), var(--surface-muted));border-radius:4px;min-width:16px;height:22px}.heatmap-legend{color:var(--muted);justify-content:flex-end;align-items:center;gap:6px;margin:8px 0 0;font-size:11px;display:flex}.heatmap-legend-ramp{background:linear-gradient(90deg, var(--surface-muted), var(--chart-1));border-radius:99px;width:80px;height:6px;display:inline-block}.donut{flex-shrink:0;width:96px;height:96px;margin:0;position:relative}.donut svg{width:100%;height:100%}.donut circle{fill:none;stroke-width:10px}.donut-track{stroke:var(--surface-muted)}.donut-fill{stroke:var(--chart-1);stroke-linecap:round}.donut-value{font-variant-numeric:tabular-nums;place-items:center;font-size:20px;font-weight:750;display:grid;position:absolute;inset:0}.rep-profile{align-items:center;gap:18px;max-width:1180px;margin:0 auto 12px;display:flex}.rep-profile-body{gap:4px;min-width:0;display:grid}.rep-profile-summary{margin:0;font-size:15px;font-weight:600}.rep-profile-body .small-label{margin:0}.rep-profile-contact{flex-wrap:wrap;gap:4px 14px;margin:2px 0 0;font-size:13px;display:flex}.rep-profile-contact a{color:var(--accent-strong)}@media (max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card:last-child:nth-child(4n+1),.kpi-card:last-child:nth-child(4n+2),.kpi-card:nth-last-child(2):nth-child(4n+1),.kpi-card:last-child:nth-child(4n+3){grid-column:auto}.kpi-card:last-child:nth-child(odd){grid-column:span 2}}@media (pointer:coarse){.team-sort,.team-name{margin:-15px 0;padding:15px 0}.team-name{display:inline-block}.filter-sheet-trigger{min-height:44px}}@media (max-width:1100px){.analytics-pair--triple{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-pair--triple>:last-child{grid-column:1/-1}}@media (max-width:920px){.analytics-pair,.analytics-pair--triple{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.kpi-grid{gap:8px}.kpi-card{padding:12px 12px 10px}.kpi-value{font-size:22px}.today-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;position:relative}.today-item{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px}.today-icon{display:none}.today-hint{display:inline-flex;position:static}.today-item.is-attention .today-hint{color:var(--gold)}.today-strip .info-hint-bubble{max-width:100%;left:0}.today-label,.today-detail{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.today-value{white-space:nowrap;margin:0}.trend-chart-axis,.trend-chart-columns{height:150px}.rep-profile{align-items:flex-start}.donut{width:76px;height:76px}}.task-band.is-failed .task-band-name{color:var(--gold)}.task-status-badge{font-size:var(--fs-caption,12px);white-space:nowrap;border-radius:999px;margin-inline-start:6px;padding:2px 8px;font-weight:800}.task-status-badge.is-failed{background:color-mix(in srgb, var(--gold) 14%, var(--surface));color:var(--gold)}.task-card-due-time{margin-inline-start:4px;font-weight:600}.task-sheet-due-time{color:var(--muted);margin-inline-start:6px;font-size:13px}.task-group-failed{color:var(--gold);font-weight:600}.task-result{background:var(--surface-muted);border:1px solid var(--line);border-radius:10px;gap:8px;margin:12px 0;padding:10px 12px;display:grid}[data-zone=field] .task-sheet-body .task-result,.sheet-body .task-result{margin:12px 20px}.task-result.is-failed{border-color:color-mix(in srgb, var(--gold) 45%, var(--line))}.task-result-title{color:var(--muted);font-size:var(--fs-caption,12px);letter-spacing:.04em;text-transform:uppercase;margin:0;font-weight:800}.task-result.is-failed .task-result-title{color:var(--gold)}.task-result-comment{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.45}.task-history-comment,.task-sheet-history-comment{color:var(--muted);overflow-wrap:anywhere;margin-top:2px;font-size:13px;font-style:italic;display:block}.sheet-actions.is-closing{align-items:flex-start}.sheet-actions:has(.task-close-form)>:not(.task-close-form){display:none}.task-close{flex:1;gap:8px;min-width:0;display:grid}.task-close-asks{color:var(--muted);margin:0;font-size:13px}.task-close-buttons{grid-template-columns:max-content minmax(0,1fr);gap:8px;display:grid}.task-close-buttons .secondary-button{white-space:nowrap}.task-close-buttons form{display:contents}.task-close-buttons .primary-button,.task-close-buttons .secondary-button{width:100%}.task-close-add{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:center;padding:4px 8px;font-size:13px;font-weight:600}.task-close-form{gap:12px}.task-close-title{margin:0;font-size:15px;font-weight:700}.task-close-field{gap:6px;display:grid}.task-close-field>span{color:var(--muted);font-size:var(--fs-caption,12px);letter-spacing:.04em;text-transform:uppercase;font-weight:800}.task-close-field textarea{border:1px solid var(--line);font:inherit;resize:vertical;border-radius:10px;width:100%;padding:10px 12px;font-size:16px}.task-close-photos{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.task-close-photo,.task-close-photo-add{aspect-ratio:1;border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden}.task-close-photo img{object-fit:cover;width:100%;height:100%;display:block}.task-close-photo.is-uploading img,.task-close-photo.is-failed img{opacity:.5}.task-close-photo-state{color:var(--text,inherit);background:0 0;border:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0}.task-close-photo.is-failed .task-close-photo-state{color:var(--danger);cursor:pointer}.task-close-photo-remove{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex;position:absolute;top:4px;right:4px}.task-close-photo-add{background:var(--surface-muted);color:var(--muted);cursor:pointer;border-style:dashed;align-content:center;justify-items:center;gap:4px;font-size:12px;font-weight:600;display:grid}.primary-button.task-close-danger:not(:disabled){background:var(--danger);border-color:var(--danger)}.task-requirements{border:0;flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;display:flex}.task-requirements legend{margin-bottom:6px;padding:0;font-size:14px;font-weight:700}.assign-repeat{border:1px solid var(--line);border-radius:10px;gap:10px;margin:0;padding:12px;display:grid}.assign-weekdays label{cursor:pointer}.task-setup{gap:12px;margin-bottom:20px;display:grid}.task-setup-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.task-setup-head h2{margin:0 0 4px;font-size:17px}.task-setup-card{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.task-setup-card-main{flex:1;gap:6px;min-width:220px;display:grid}.task-setup-card.is-paused .task-setup-card-main{opacity:.65}.routes-quick-assign-hint{color:var(--muted);margin:-4px 0 12px;font-size:14px}.phone-input{display:block;position:relative}.phone-input>input[type=tel]{width:100%}.phone-input.has-country>input[type=tel]{padding-right:56px}.phone-input-country{color:var(--muted);pointer-events:none;font-size:13px;font-weight:600;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.announcement-attachments{gap:8px;display:grid}.announcement-attachment-photos{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;display:grid}.announcement-attachment-photos a{aspect-ratio:1;border:1px solid var(--line);border-radius:10px;display:block;overflow:hidden}.announcement-attachment-photos img{object-fit:cover;width:100%;height:100%;display:block}.announcement-attachment-files{gap:6px;margin:0;padding:0;list-style:none;display:grid}.announcement-attachment-file{background:var(--surface-muted);border:1px solid var(--line);color:var(--ink);border-radius:10px;align-items:center;gap:10px;min-height:44px;padding:8px 12px;display:flex}.announcement-pdf-thumbnail{background:var(--surface);border:1px solid var(--line);color:var(--ink-muted);border-radius:4px;flex:none;justify-content:center;align-items:center;width:56px;height:72px;display:flex;overflow:hidden}.announcement-pdf-thumbnail canvas{object-fit:cover;object-position:top;width:100%;height:100%;display:none}.announcement-pdf-thumbnail.is-drawn canvas{display:block}.announcement-pdf-scroll{overscroll-behavior:contain;flex:1;align-content:start;justify-items:center;min-height:0;display:grid;overflow-y:auto}.announcement-pdf-pages{gap:8px;width:100%;display:grid}.announcement-pdf-page{background:#fff;width:100%;height:auto;display:block}.announcement-attachment-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.announcement-attachment-size{color:var(--muted);font-size:var(--fs-caption,12px);flex:none}.announcement-files-field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.announcement-files-field legend{padding:0;font-weight:700}.announcement-files{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.announcement-file,.announcement-file-add{aspect-ratio:1;border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden}.announcement-file img{object-fit:cover;width:100%;height:100%;display:block}.announcement-file.is-uploading img,.announcement-file.is-failed img,.announcement-file.is-uploading .announcement-file-doc,.announcement-file.is-failed .announcement-file-doc{opacity:.5}.announcement-file-doc{color:var(--ink);font-size:var(--fs-caption,12px);text-align:center;align-content:center;justify-items:center;gap:4px;height:100%;padding:6px;font-weight:600;display:grid}.announcement-file-doc span{overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:100%;display:-webkit-box;overflow:hidden}.announcement-file-state{color:var(--ink);font-size:var(--fs-caption,12px);background:0 0;border:0;justify-content:center;align-items:center;font-weight:700;display:flex;position:absolute;inset:0}.announcement-file.is-failed .announcement-file-state{color:var(--danger);cursor:pointer}.announcement-file-remove{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex;position:absolute;top:4px;right:4px}.announcement-file-add{background:var(--surface-muted);color:var(--muted);cursor:pointer;font-size:var(--fs-caption,12px);text-align:center;border-style:dashed;align-content:center;justify-items:center;gap:4px;font-weight:600;display:grid}.announcement-files-problem{color:var(--danger);margin:0}.announcement-audience-field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.announcement-audience-field legend{margin-bottom:8px;padding:0;font-weight:700}.announcement-audience-modes{flex-wrap:wrap;gap:6px;display:flex}.announcement-audience-modes button{background:var(--surface);border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;border-radius:999px;min-height:36px;padding:6px 14px;font-size:14px;font-weight:600}.announcement-audience-modes button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.announcement-audience-sub{color:var(--muted);margin:4px 0 0;font-size:13px;font-weight:600}.announcement-people{gap:8px;display:grid}.announcement-people-list{max-height:260px;padding-bottom:8px}.announcement-people-list .route-card{flex-wrap:nowrap;justify-content:space-between;align-items:center;min-height:48px;padding-block:8px;display:flex}.visit-notices{background:var(--accent-soft);border:1px solid var(--accent);color:var(--ink);border-radius:12px;align-items:center;gap:10px;min-height:56px;padding:10px 12px;display:flex}.visit-notices.is-important{background:var(--danger-surface);border-color:var(--danger)}.visit-notices .nav-glyph{color:var(--accent);flex:none;width:22px;height:22px}.visit-notices.is-important .nav-glyph{color:var(--danger)}.visit-notices-text{flex:1;gap:2px;min-width:0;display:grid}.visit-notices-label{font-size:14px;font-weight:700}.visit-notices-titles{color:var(--ink-muted,var(--muted));text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.visit-card-marks{margin-top:8px}@media (max-width:640px){.visit-card-expandable:not(.is-open) .visit-card-marks{display:none}}.readings-history-grid{grid-template-columns:minmax(0,1fr);gap:0 32px;display:grid}@media (min-width:701px){.readings-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.readings-history-unit{margin-top:12px}.readings-history-name{margin:0 0 6px;font-size:14px}.readings-history-note{margin:0 0 6px}.readings-history-note summary{cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.readings-history-note summary::-webkit-details-marker{display:none}.readings-history-note .readings-history-name{margin:0}.readings-history-note summary:after{border-bottom:2px solid var(--muted);border-right:2px solid var(--muted);content:"";flex:none;width:7px;height:7px;transform:rotate(45deg)translate(-2px,-2px)}.readings-history-note[open] summary:after{transform:rotate(-135deg)translate(-2px,-2px)}.readings-history-note p{color:var(--ink-muted);font-size:var(--fs-meta,13px);overflow-wrap:anywhere;white-space:pre-line;margin:6px 0 0}.readings-history-list{margin:0;padding:0;list-style:none}.readings-history-row{border-top:1px solid var(--line);grid-template-columns:56px 1fr;align-items:baseline;gap:8px;padding:8px 0;display:grid}.readings-history-date{color:var(--ink-muted);font-size:var(--fs-caption,12px);font-variant-numeric:tabular-nums;white-space:nowrap}.readings-history-value{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.readings-history-delta{color:var(--ink-muted);font-size:var(--fs-caption,12px);font-variant-numeric:tabular-nums;font-weight:600}.readings-history-delta.is-up{color:var(--chart-good)}.readings-history-delta.is-down{color:var(--chart-bad)}.chip.visit-card-score{color:#5c4300;background:#fde58a;border-color:#e8b923}.chip.visit-card-score--low{background:var(--danger-surface);border-color:var(--danger-line);color:var(--danger)}.chip.visit-card-score--high{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 40%, transparent);color:var(--accent-strong)}.attention-list .panel-title-stack{position:relative}.attention-note .info-hint{vertical-align:middle;margin-inline-start:6px;position:static}.attention-list .info-hint-bubble{max-width:min(280px,100%)}.panel-title-count{color:var(--muted);font-weight:500}.location-journal-body{gap:10px;padding:4px 0 0;display:grid}.location-journal-link{display:none}@media (max-width:640px){.location-journal{display:none}.location-journal-link{display:flex}}.equipment-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.equipment-list-row{gap:8px;padding:12px 16px;display:grid}.equipment-list-name{font-size:var(--fs-body,16px);overflow-wrap:anywhere;margin:0}.equipment-list-meta,.equipment-list-where{color:var(--ink-muted);font-size:var(--fs-meta,13px);overflow-wrap:anywhere;margin:0}.equipment-list-move summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.equipment-move-form{gap:10px;padding-bottom:8px;display:grid}.equipment-place-filter{gap:4px;display:grid}.equipment-unread{padding:0 16px 16px}.equipment-unread summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.equipment-unread ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.equipment-unread a{overflow-wrap:anywhere;padding:6px 0;display:block}.equipment-passport{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 24px;margin:0 0 12px;display:grid}.equipment-passport div{min-width:0}.equipment-passport dt{color:var(--ink-muted);font-size:var(--fs-caption,12px)}.equipment-passport dd{overflow-wrap:anywhere;margin:0}.equipment-history-note{color:var(--ink-muted);font-size:var(--fs-meta,13px);overflow-wrap:anywhere;white-space:pre-line;margin:0 0 12px}.readings-chart{margin:0 0 12px}.readings-chart-body{grid-template-columns:auto minmax(0,1fr);gap:8px;display:grid}.readings-chart-axis{color:var(--ink-muted);font-size:var(--fs-meta,13px);font-variant-numeric:tabular-nums;text-align:right;flex-direction:column;justify-content:space-between;display:flex}.readings-chart-plot{background:linear-gradient(var(--chart-grid), var(--chart-grid)) 0 0 / 100% 1px no-repeat, linear-gradient(var(--chart-grid), var(--chart-grid)) 0 50% / 100% 1px no-repeat, linear-gradient(var(--chart-grid), var(--chart-grid)) 0 100% / 100% 1px no-repeat;height:160px;position:relative}.readings-chart-line{width:100%;height:100%;position:absolute;inset:0}.readings-chart-dot{background:var(--surface);border:2px solid var(--chart-1);border-radius:50%;width:9px;height:9px;position:absolute;transform:translate(-50%,50%)}.readings-chart-dot.is-small{width:6px;height:6px}.readings-chart-range{background:color-mix(in srgb, var(--chart-1) 35%, transparent);border-radius:2px;width:3px;position:absolute;transform:translate(-50%)}.readings-chart-days{color:var(--ink-muted);font-size:var(--fs-meta,13px);justify-content:space-between;margin-top:4px;padding-left:56px;display:flex}.equipment-history-summary{color:var(--ink);margin:0 0 12px;font-size:14px;font-weight:600}.equipment-history-falls{color:var(--chart-bad)}.equipment-history-chart-title{color:var(--ink-muted);font-size:var(--fs-meta,13px);margin:0 0 6px;font-weight:600}.equipment-history-periods{margin-bottom:14px}.equipment-history-head{margin-bottom:12px}.location-profile-head{align-items:flex-start}.location-profile-head>.back-link{flex-shrink:0}.location-profile-identity{flex:1;gap:2px;min-width:0;display:grid}.location-profile-identity>h1{overflow-wrap:anywhere;margin:0;font-size:22px}.location-profile-identity>p{color:var(--muted);margin:0;font-size:14px}.location-profile-actions{flex-shrink:0}.location-visit-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.location-visit-item{border-top:1px solid var(--line);gap:4px;padding:12px 0;font-size:14px;display:grid}.location-visit-item:first-child{border-top:0;padding-top:4px}.location-visit-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;font-weight:650;display:flex}.location-visit-facts,.location-visit-marks,.location-visit-problem{color:var(--ink-muted);margin:0;font-size:13px}.location-visit-facts{flex-wrap:wrap;gap:2px 14px;display:flex}.location-visit-problem{color:var(--danger)}.location-visit-note{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.location-visit-item .visit-card-thumbs{margin-top:4px}.location-visit-link{color:inherit;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.location-visit-link:hover{color:var(--accent)}.location-visit-link>svg{color:var(--ink-faint);flex:none}.analytics-details{margin-top:12px}.analytics-details>summary{cursor:pointer;padding:6px 0;font-weight:650}.analytics-details>.form-hint{margin:4px 0 8px}.analytics-anchor{scroll-margin-top:220px}.analytics-scroll-list{scrollbar-gutter:stable;max-height:420px;padding-right:4px;overflow-y:auto}.modal-form input[type=file]{background:var(--surface);border:1px dashed var(--line);color:var(--ink-muted);border-radius:8px;width:100%;padding:10px}.modal-form input[type=file]::file-selector-button{background:var(--surface);border:1px solid var(--line);color:var(--ink);cursor:pointer;font:inherit;border-radius:8px;margin-inline-end:12px;padding:8px 14px;font-weight:700}.import-history-sub{color:var(--ink-muted);font-size:var(--fs-caption,12px);overflow-wrap:anywhere;margin-top:2px;font-weight:500;display:block}.import-row-note{color:var(--ink-muted);margin:8px 0 0;font-size:13px}
