/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--color-primary-50:#eefaf3;--color-primary-100:#d7f6e3;--color-primary-200:#bfeed2;--color-primary-500:#22b866;--color-primary-700:#178a48;--color-primary-800:#15803d;--color-primary-950:#0b3a29;--color-surface:#fff;--color-background:#f2faf5;--color-foreground:#0e2a1d;--color-muted:#3d5649;--color-border:#bfe8cf;--color-danger:#dc2626;--color-danger-text:var(--color-danger);--color-warning-bg:#fef3c7;--color-warning-fg:#92400e;--color-unfinished:#fcd34d;--color-unfinished-bg:var(--color-warning-bg);--color-unfinished-fg:var(--color-warning-fg);--color-on-unfinished:var(--color-unfinished-fg);--color-unfinished-line:var(--color-warning-border);--color-success:var(--color-primary-800);--color-success-vivid:var(--color-primary-500);--color-success-light:var(--color-primary-100);--color-success-fg:var(--color-primary-900);--color-primary-300:#86efac;--color-primary-900:#0f5f2e;--color-page-bottom:#cdeedb;--color-border-input:#5f9a78;--color-meter-track:#e3f4ea;--color-on-primary:#fff;--color-on-danger:#fff;--color-danger-bg:#fde8e6;--color-danger-fg:#8a1b12;--color-focus-ring:var(--color-primary-900);--color-primary-600:#16a34a;--color-success-text:var(--color-success);--color-text:var(--color-foreground);--color-text-secondary:#475569;--color-border-strong:#ccc;--color-surface-muted:#f1f5f9;--color-surface-subtle:#f8fafc;--color-surface-alt:#f2f2f2;--color-surface-hover:#f8f8f8;--color-accent:var(--color-focus-ring);--color-wash:#0000000a;--color-wash-strong:#0000000f;--color-warning-border:#f59e0b;--color-severity-high:#b91c1c;--color-severity-medium:#b45309;--color-badge:var(--color-danger);--color-on-badge:var(--color-on-danger);--color-practice-bg:#4ade80;--color-practice-border:#16a34a;--color-practice-fg:#052e16;--color-nav-fg:var(--color-foreground);--color-nav-fg-soft:var(--color-foreground);--color-nav-fg-muted:var(--color-muted);--color-nav-line:var(--color-border);--color-nav-line-soft:var(--color-border);--color-nav-active-bg:var(--color-primary-100);--color-nav-toggle-line:var(--color-border-input);--color-on-dark:#fff;--color-on-dark-muted:#ffffffd9;--color-on-dark-line:#fff6;--color-scrim-menu:#00000059;--color-scrim-sheet:#00000073;--color-scrim-pages:#05170f;--color-scrim:#0f172a73;--color-scrim-strong:#0f172a8c;--color-scrim-lock:#64748b8c;--color-wheel-band:#22543d14;--color-cost-materials:#b7791f;--color-cost-plants:#d53f8c;--color-cost-chemicals:#2b6cb0;--color-cost-equipment:#718096;--color-cost-subcontractor:#6b46c1;--color-cost-disposal:#975a16;--color-cost-other:#a0aec0;--color-cal-event:var(--color-primary-500);--color-cal-meeting:var(--color-cost-chemicals);--color-cal-holiday:var(--color-warning-border);--color-cal-task:var(--color-cost-subcontractor);--color-cal-people:var(--color-cost-plants);--color-cal-deadline:var(--color-severity-medium);--color-cal-anniversary:var(--color-cost-materials);--color-cal-job:var(--color-cost-disposal);--color-cal-route:var(--color-cost-equipment);--color-divider:#d7f0e1;--color-frame:#86d9a6;--color-panel:var(--color-primary-900);--color-panel-deep:var(--color-primary-950);--color-on-panel-muted:var(--color-primary-100);--color-panel-line:#2f7a4f;--color-panel-track:#23573f;--color-panel-meter:var(--color-primary-300);--color-panel-control:#174d33;--color-panel-control-border:var(--color-primary-300);--color-panel-now:var(--color-warning-bg);--color-on-panel:var(--color-on-primary);--color-band:var(--color-panel);--color-on-band-muted:var(--color-on-panel-muted);--color-signature-paper:#fff;--color-accent-text:var(--color-primary-800);--color-page-breathe:#b4e8c8;--color-page-glow:#a6e6c0;--color-on-dark-wash:#ffffff38}}:root{color:var(--color-foreground);background:var(--color-background);--space-xs:.25rem;--space-sm:.5rem;--space-md:.75rem;--space-lg:1rem;--space-xl:1.5rem;--input-font-size:1rem;--input-padding:.6rem;--radius-sm:14px;--radius-md:16px;--radius-lg:24px;--radius-full:999px;--shadow-sm:0 1px 2px #0e2a1d0f;--shadow-md:0 12px 30px #0e332429;--tab-bar-height:calc(44px + 2 * var(--space-xs) + 2px);--sheet-half-height:20rem;--sheet-motion-ms:.32s;--sheet-motion-ease:cubic-bezier(.2, .8, .2, 1);--radius-xl:28px;--shadow-hero:0 12px 24px #0f5f2e47;--gradient-primary:linear-gradient(135deg, var(--color-primary-800) 0%, var(--color-primary-900) 100%);--gradient-page:linear-gradient(180deg, var(--color-surface) 0%, var(--color-page-bottom) 100%);--gradient-card:linear-gradient(180deg, var(--color-surface) 0%, var(--color-surface) 100%);--gradient-card-tint:linear-gradient(160deg, #e6faee 0%, var(--color-primary-200) 100%);--gradient-meter:linear-gradient(90deg, var(--color-primary-300) 0%, var(--color-primary-800) 100%);--gradient-nav:linear-gradient(180deg, var(--color-surface) 0%, #f0faf4 100%);--gradient-tile-active:linear-gradient(150deg, var(--color-primary-800) 0%, var(--color-primary-950) 100%);--gradient-page-edge-glow:radial-gradient(ellipse 75% 60% at 50% 50%, #000 55%, #0a3519bf 100%), #000;--gradient-page-shift:linear-gradient(180deg, var(--color-surface) 0%, var(--color-page-bottom) 33%, var(--color-surface) 66%, var(--color-page-bottom) 100%);--motion-bg-shift-ms:30s;--route-timeline-height:8.5rem;--detail-panel-height:7.4rem;--radius-mark:8px;--z-save-failed:1300;--z-punch-notice:1200;--z-pwa-update:1150;--z-idle-lock:1101;--z-idle-lock-backdrop:1100;--z-punch-ack:1100;--z-dialog:1000;--z-nav-menu:110;--z-nav:100;--z-pages-sheet:105;--z-nav-backdrop:90;--z-floating:50;--z-popover:20;--z-sticky:10;--z-raised-top:3;--z-raised:2;--z-base:1;--z-ground:0;--z-behind:-1;--radius-xs:2px;--radius-round:50%;--radius-swatch:.2rem;--radius-finding:.5rem;--shadow-popover:0 4px 12px #0000001f;--shadow-dropdown:0 8px 24px #00000040;--shadow-lifted:0 8px 20px #0000002e;--shadow-bar-top:0 -1px 4px #00000014;--shadow-sticky:0 2px 8px #00000014;--shadow-sticky-rest:0 2px 8px #0000;--shadow-success-glow:0 4px 16px #62c13240;--icon-busy-leaf:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 18C4 10 9 5 20 4C19 15 13 19 4 18Z' fill='none' stroke='black' stroke-width='2.5' stroke-dasharray='40 12' stroke-linecap='round'/%3E%3C/svg%3E");font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:137.5%;line-height:1.5}@media screen{:root[data-theme=dark]{color-scheme:dark;--color-background:#000;--color-surface:#000;--color-page-bottom:#000;--color-page-breathe:#000;--color-page-glow:#0a3519;--color-edge-glow:#0a3519;--color-surface-tint:#0a3519;--color-surface-hover:#0a3519;--color-surface-muted:#0a3519;--color-surface-subtle:#0a3519;--color-surface-alt:#0a3519;--color-foreground:#bbf7d0;--color-muted:#86c9a1;--color-text-secondary:#86c9a1;--color-accent-text:#4ade80;--color-frame:#0a3519;--color-border:#0a3519;--color-border-strong:#0a3519;--color-border-input:#0a3519;--color-divider:#0a3519;--color-meter-track:#0a3519;--color-primary-50:#0a3519;--color-primary-100:#0a3519;--color-primary-200:#0a3519;--color-primary-300:#4ade80;--color-primary-500:#4ade80;--color-primary-600:#0a3519;--color-primary-700:#4ade80;--color-primary-800:#0a3519;--color-primary-900:#4ade80;--color-primary-950:#0a3519;--color-on-primary:#dcfce7;--color-success:#4ade80;--color-focus-ring:#4ade80;--color-band:#0a3519;--color-on-band-muted:#86c9a1;--color-panel:#000;--color-panel-deep:#000;--color-on-panel:#dcfce7;--color-on-panel-muted:#86c9a1;--color-panel-line:#0a3519;--color-panel-track:#0a3519;--color-panel-meter:#4ade80;--color-panel-control:#000;--color-panel-control-border:#0a3519;--color-panel-now:#fde68a;--color-warning-bg:#3b2d06;--color-warning-fg:#fcd34d;--color-danger-bg:#3b0f0f;--color-danger-fg:#fca5a5;--color-danger-text:#fca5a5;--color-severity-high:#fca5a5;--color-severity-medium:#fcd34d;--color-on-unfinished:#3b2d06;--color-practice-bg:#0a3519;--color-practice-border:#0a3519;--color-practice-fg:#dcfce7;--color-wash:#ffffff0f;--color-wash-strong:#ffffff1a;--gradient-primary:linear-gradient(135deg, #0a3519 0%, #0a3519 100%);--gradient-tile-active:linear-gradient(135deg, #0a3519 0%, #0a3519 100%);--gradient-page:linear-gradient(180deg, var(--color-background) 0%, var(--color-background) 100%)}}*{box-sizing:border-box}body{min-height:100dvh;margin:0}button{font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}h1{margin:var(--space-sm) 0;font-size:1.6rem;font-weight:700}h2{margin:var(--space-sm) 0;font-size:1.35rem;font-weight:600}h3{margin:var(--space-sm) 0;font-size:1.15rem;font-weight:600}.layout{isolation:isolate;background:var(--gradient-page),var(--color-background);flex-direction:column;height:100dvh;display:flex;position:relative}.bg-motion{z-index:var(--z-behind);pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.bg-motion--slow-shift{background:var(--gradient-page-shift);animation:bg-shift var(--motion-bg-shift-ms) ease-in-out infinite;background-size:100% 300%}@keyframes bg-shift{0%,to{background-position:0 100%}50%{background-position:0 0}}.bg-motion--breathe{background:linear-gradient(180deg,var(--color-surface) 15%,var(--color-page-breathe) 100%);animation:12s ease-in-out infinite bg-breathe}@keyframes bg-breathe{0%,to{opacity:.25}50%{opacity:1}}.bg-motion--drift-glow:before{content:"";border-radius:var(--radius-round);background:radial-gradient(circle,var(--color-page-glow) 0%,var(--color-page-bottom) 45%,transparent 70%);width:118vmin;height:118vmin;animation:40s ease-in-out infinite bg-drift;position:absolute;top:0;left:0}@keyframes bg-drift{0%,to{transform:translate(-31vw,14vh)}50%{transform:translate(41vw,50vh)}}.bg-motion-band{background:linear-gradient(90deg,transparent 0%,var(--color-surface) 50%,transparent 100%);width:46vmin;height:150vh;animation:16s ease-in-out infinite bg-sweep;position:absolute;top:-25vh;left:0}@keyframes bg-sweep{0%{transform:translate(-133vw)rotate(20deg)}35%,to{transform:translate(159vw)rotate(20deg)}}@media(prefers-reduced-motion:reduce){.bg-motion--slow-shift{background:var(--gradient-page);background-size:auto;animation:none}.bg-motion--breathe,.bg-motion--drift-glow,.bg-motion--light-sweep{display:none}}@media print{.bg-motion{display:none}}.page-scroll{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}@media(max-width:1080px){.page-tile-hub>.page-header{display:none}}.nav{z-index:var(--z-nav);background:var(--gradient-nav),var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-nav-fg-soft);padding:var(--space-sm) var(--space-lg);padding-left:max(var(--space-lg),env(safe-area-inset-left));padding-right:max(var(--space-lg),env(safe-area-inset-right));flex-shrink:0;position:relative}.nav a:focus-visible,.nav button:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.nav-bar{align-items:center;gap:var(--space-md);min-height:48px;display:flex}.brand{word-spacing:-.2em;white-space:nowrap;color:var(--color-nav-fg);flex-shrink:0;align-items:center;gap:.45rem;font-size:1.3rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-static{cursor:default;-webkit-user-select:none;user-select:none}.brand-mark{border-radius:var(--radius-mark);background:var(--color-primary-800);width:1.2rem;height:1.2rem;color:var(--color-on-primary);letter-spacing:.02em;word-spacing:normal;flex-shrink:0;justify-content:center;align-items:center;font-size:.5rem;font-weight:800;line-height:1;display:inline-flex}.brand-mark--variant{color:var(--color-primary-500);background:0 0}.nav-bar-attendance{color:var(--color-nav-fg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-shrink:0;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.nav-bar-attendance:hover{background:var(--color-primary-50)}.nav-bar-attendance.active{background:var(--gradient-primary),var(--color-primary-800);color:var(--color-on-primary)}.nav-bar-spacer{flex:1;min-width:0}.nav-bar-actions{align-items:center;gap:var(--space-xs);flex-shrink:0;margin-left:auto;display:flex}.nav-link-menu{min-width:44px;min-height:44px;padding:var(--space-sm);border-radius:var(--radius-full);color:var(--color-nav-fg);touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.nav-link-menu:hover{background:var(--color-primary-50)}.nav-link-menu-icon{display:block}.page-link-sheet{z-index:var(--z-nav-menu);pointer-events:auto;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.page-link-sheet-backdrop{background:var(--color-scrim-sheet);cursor:pointer;border:none;position:absolute;top:0;right:0;bottom:0;left:0}.page-link-sheet-panel{margin:0 var(--space-md) max(var(--space-md),env(safe-area-inset-bottom));padding:var(--space-lg);border-radius:var(--radius-lg);z-index:var(--z-base);position:relative}.page-link-sheet-title{margin:0 0 var(--space-md);color:var(--color-accent-text);font-size:1.1rem}.page-link-sheet-actions{gap:var(--space-sm);flex-direction:column;display:flex}.page-link-sheet-action{justify-content:center;width:100%;min-height:48px}.nav-bell{min-width:44px;min-height:44px;padding:var(--space-sm);border-radius:var(--radius-full);background:var(--color-primary-50);color:var(--color-nav-fg);touch-action:manipulation;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:relative}.nav-bell:hover,.nav-bell:active{background:var(--color-primary-100)}.nav-bell-icon{display:block}.nav-bell-badge,.nav-toggle-badge{min-width:1.1rem;height:1.1rem;padding:0 var(--space-xs);border-radius:var(--radius-full);background:var(--color-badge);color:var(--color-on-badge);text-align:center;pointer-events:none;font-size:.65rem;font-weight:700;line-height:1.1rem;position:absolute}.nav-bell-badge{top:.35rem;right:.35rem}.nav-toggle-badge{top:-.35rem;right:-.35rem}.nav-account{border-radius:var(--radius-full);background:var(--gradient-primary),var(--color-primary-800);width:44px;height:44px;color:var(--color-on-primary);font:inherit;letter-spacing:.02em;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.8rem;font-weight:700;display:inline-flex;position:relative}.nav-account[aria-expanded=true]{box-shadow:0 0 0 3px var(--color-primary-100)}.nav-menu-account{gap:var(--space-sm)}.nav-menu-icon{flex-shrink:0}.profile-details{gap:var(--space-md);margin:0;display:grid}.profile-details div{gap:.15rem;display:grid}.profile-details dt{color:var(--color-muted);margin:0;font-size:.85rem;font-weight:600}.profile-details dd{margin:0;font-size:1.05rem}.profile-actions .btn{justify-content:center;width:100%;text-decoration:none}.nav-menu{align-items:center;gap:var(--space-xs) var(--space-sm);flex-wrap:wrap;display:flex}.nav-menu a{color:var(--color-nav-fg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);align-items:center;min-height:44px;text-decoration:none;display:flex;position:relative}.nav-menu-parent-desktop{color:var(--color-nav-fg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);width:100%;min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;text-decoration:none;display:flex;position:relative}.nav-menu-parent-desktop:hover{background:var(--color-primary-50)}.nav-menu-parent-desktop.active{background:var(--gradient-primary),var(--color-primary-800);color:var(--color-on-primary)}.nav-menu-parent-desktop,.nav-menu a.nav-menu-parent-desktop{display:none}.nav-menu a:hover{background:var(--color-primary-50)}.nav-menu a.active{background:var(--gradient-primary),var(--color-primary-800);color:var(--color-on-primary)}#nav-menu a.active,.nav-submenu a.active{background:var(--color-primary-100);color:var(--color-nav-fg)}.nav-menu-item{flex-direction:column;display:flex;position:relative}.nav-submenu{padding-left:var(--space-sm);flex-direction:column;gap:.125rem;display:none}.nav-submenu a{color:var(--color-nav-fg);padding:.4rem var(--space-md);min-height:48px;font-size:.95rem}.nav-submenu a:hover{background:var(--color-primary-50)}.nav-submenu-group{flex-direction:column;gap:.125rem;display:flex}.nav-submenu-heading{color:var(--color-nav-fg-muted);letter-spacing:.02em;text-transform:uppercase;padding:.35rem .75rem .15rem;font-size:.8rem;font-weight:600}.nav-submenu-nested{flex-direction:column;gap:.125rem;display:flex}.nav-submenu-nested a{color:var(--color-nav-fg);min-height:48px;padding:.4rem .75rem .4rem 1.25rem;font-size:.95rem}.nav-submenu-toggle{border-radius:var(--radius-full);min-width:44px;min-height:44px;color:var(--color-nav-fg-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.nav-submenu-toggle:hover{background:var(--color-primary-50)}.nav-submenu-toggle[aria-expanded=true]{background:var(--color-primary-100);color:var(--color-primary-900)}.nav-submenu-toggle[aria-expanded=true] .nav-submenu-chevron{transform:rotate(180deg)}.nav-badge{min-width:1.1rem;height:1.1rem;padding:0 var(--space-xs);border-radius:var(--radius-full);background:var(--color-badge);color:var(--color-on-badge);text-align:center;pointer-events:none;font-size:.65rem;font-weight:700;line-height:1.1rem;position:absolute;top:.3rem;right:.3rem}@media(min-width:1081px){.nav{align-items:center;gap:var(--space-md);padding:var(--space-xs) var(--space-lg);padding-left:max(var(--space-lg),env(safe-area-inset-left));padding-right:max(var(--space-lg),env(safe-area-inset-right));display:flex}.nav-bar{min-height:unset;flex-shrink:0}.brand{word-spacing:normal;margin-right:0;font-size:1.15rem}.nav-core-links{flex:1;gap:.15rem .35rem}.nav-menu a,.nav-menu-parent-desktop{min-height:44px;padding:.35rem .65rem}.nav-core-links>a,.nav-menu-parent-desktop{border-radius:var(--radius-full);font-weight:600}.nav-core-links>a:not(.active),.nav-core-links .nav-menu-parent-desktop:not(.active){color:var(--color-nav-fg-muted)}.nav-submenu a,#nav-menu a{border-radius:var(--radius-md);min-height:48px}.nav-menu-item{flex-direction:row;align-items:center}.nav-menu a.nav-menu-parent-desktop{width:auto;display:flex}.nav-submenu{top:calc(100% + var(--space-xs));background:var(--color-surface);border:1px solid var(--color-nav-line);border-radius:var(--radius-lg);min-width:13rem;box-shadow:var(--shadow-md);z-index:var(--z-nav-menu);padding:.35rem;display:flex;position:absolute;left:0}.nav-submenu-group+.nav-submenu-group{border-top:1px solid var(--color-nav-line-soft);margin-top:.35rem;padding-top:.35rem}#nav-menu{top:calc(100% + var(--space-xs));z-index:var(--z-nav-menu);min-width:14rem;padding:var(--space-sm);background:var(--color-surface);border:1px solid var(--color-nav-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);opacity:1;flex-direction:column;align-items:stretch;max-height:none;transition:none;display:none;position:absolute;left:auto;right:0;overflow:visible}#nav-menu.open{display:flex}#nav-menu .nav-menu-scroll{gap:var(--space-xs);flex-direction:column;display:flex}#nav-menu .nav-menu-footer{margin-top:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid var(--color-nav-line)}.nav-backdrop{z-index:var(--z-nav-backdrop);cursor:default;background:0 0;border:none;margin:0;padding:0;display:block;position:fixed;top:0;right:0;bottom:0;left:0}}.nav .btn.subtle.nav-btn{width:100%;color:var(--color-nav-fg);text-align:left;justify-content:flex-start;align-items:center;gap:var(--space-sm);min-height:44px;display:flex}.nav .btn.subtle.nav-btn:hover{background:var(--color-primary-50)}.nav .btn.subtle.nav-btn:active:not(:disabled){background:var(--color-nav-active-bg)}.nav-toggle{border:1px solid var(--color-nav-toggle-line);border-radius:var(--radius-md);color:var(--color-nav-fg);padding:var(--space-sm);touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;background:0 0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex;position:relative}.nav-toggle-icon,.nav-toggle-icon:before,.nav-toggle-icon:after{border-radius:var(--radius-xs);background:currentColor;width:20px;height:2px;display:block}.nav-toggle-icon{position:relative}.nav-toggle-icon:before,.nav-toggle-icon:after{content:"";position:absolute;left:0}.nav-toggle-icon:before{top:-6px}.nav-toggle-icon:after{top:6px}.nav-toggle[aria-expanded=true] .nav-toggle-icon{background:0 0}.nav-toggle[aria-expanded=true] .nav-toggle-icon:before{top:0;transform:rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-icon:after{top:0;transform:rotate(-45deg)}.nav-toggle-icon,.nav-toggle-icon:before,.nav-toggle-icon:after{transition:transform .2s,top .2s,background .2s}.nav-backdrop{display:none}@media(max-width:1080px){.nav-backdrop{z-index:var(--z-nav-backdrop);background:var(--color-scrim-menu);cursor:pointer;border:none;margin:0;padding:0;display:block;position:fixed;top:0;right:0;bottom:0;left:0}.nav-toggle{display:inline-flex}.nav-bar{gap:var(--space-sm)}.nav{position:relative}.nav-menu{z-index:var(--z-nav);background:var(--color-surface);align-items:stretch;gap:var(--space-xs);opacity:0;max-height:0;padding-left:max(var(--space-lg),env(safe-area-inset-left));padding-right:max(var(--space-lg),env(safe-area-inset-right));flex-direction:column;transition:max-height .25s,opacity .15s;position:absolute;top:100%;left:0;right:0;overflow:hidden}.nav-menu.open{max-height:calc(100dvh - 4.5rem - env(safe-area-inset-top,0px));opacity:1;padding-top:var(--space-sm);padding-bottom:calc(env(safe-area-inset-bottom) + var(--space-md));border-top:1px solid var(--color-nav-line);margin-top:0;overflow:hidden}.nav-menu.open.has-footer{padding-bottom:calc(env(safe-area-inset-bottom) + var(--space-md));flex-direction:column;gap:0;display:flex}.nav-menu.open.has-footer .nav-menu-scroll{flex:none}.nav-menu-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;gap:var(--space-xs);flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.nav-menu-footer{gap:var(--space-xs);margin-top:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid var(--color-nav-line);flex-direction:column;flex-shrink:0;display:flex}.nav-menu a{width:100%;min-height:48px;font-size:1.05rem}.nav .btn.subtle.nav-btn{text-align:left;justify-content:flex-start;align-items:center;gap:var(--space-sm);width:100%;min-height:48px;padding-left:var(--space-md);margin-left:0;font-size:1.05rem;display:flex}}.spray-board-tech-name{color:var(--color-accent-text)}.page{max-width:42rem;padding:var(--space-lg) var(--space-lg) var(--space-xl);flex:1;width:100%;margin:0 auto}.page.page-admin{max-width:56rem}@media(max-width:1080px){.page.page-admin{max-width:42rem}}.page.page-field .page-sticky-header{padding-top:var(--space-sm);margin-top:calc(-1 * var(--space-sm));padding-bottom:var(--space-sm);margin-bottom:var(--space-xs)}.page-sticky-header{z-index:var(--z-sticky);background:var(--color-background);padding-top:var(--space-lg);padding-bottom:var(--space-md);margin-top:calc(-1 * var(--space-lg));margin-bottom:var(--space-sm);box-shadow:var(--shadow-sticky-rest);transition:box-shadow .2s;position:sticky;top:0}.page-admin .admin-search-input{width:100%;margin:0}.admin-list-filters{align-items:center;gap:var(--space-sm);flex-wrap:wrap;min-height:44px;display:flex}.page-admin .admin-list-filters .admin-search-input{width:auto;min-width:6rem;min-height:44px;padding:var(--space-sm) var(--space-md);flex:8rem}.admin-list-filters>.page-header-action{margin-left:0}.admin-list-filter-summary{text-overflow:ellipsis;white-space:nowrap;max-width:9rem;overflow:hidden}.admin-list-filter{flex:none;position:relative}.admin-list-filter-trigger{align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--color-border);color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none;display:inline-flex}.admin-list-filter-trigger.is-filtered{background:var(--color-primary-800);color:var(--color-on-primary)}.admin-list-filter-caret{font-size:.85em;line-height:1}.admin-list-filter-popover{z-index:var(--z-popover);gap:var(--space-sm);width:max-content;padding:var(--space-sm);background:var(--color-surface,var(--color-background));border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-popover);flex-wrap:wrap;display:flex;position:absolute;top:calc(100% + .25rem);left:0}.admin-list-filter-popover .tab{touch-action:manipulation;-webkit-tap-highlight-color:transparent;margin:0}.page-admin input[type=file]{touch-action:manipulation;min-height:48px;padding:.4rem 0}.admin-page-toolbar{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);min-height:44px;display:flex}.admin-page-toolbar-left{align-items:center;gap:var(--space-xs);flex:1;min-width:0;display:flex}.admin-page-toolbar-title{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.15rem;overflow:hidden}.admin-page-toolbar+.page-header,.admin-page-toolbar+h1,.admin-page-toolbar+.header{margin-top:0}.page-sticky-header>.admin-page-toolbar+.page-header{margin-bottom:var(--space-md)}.page-scroll.is-scrolled .page-sticky-header{box-shadow:var(--shadow-sticky)}.page-header{justify-content:space-between;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-sm);display:flex}.page-header h1{margin:0}@media(max-width:1080px){.page{padding-top:var(--space-sm)}.page-sticky-header{padding-top:var(--space-xs);padding-bottom:var(--space-xs);margin-top:calc(-1 * var(--space-xs));margin-bottom:var(--space-xs)}.page.page-field .page-sticky-header{padding-top:var(--space-xs);margin-top:calc(-1 * var(--space-xs));padding-bottom:var(--space-xs);margin-bottom:var(--space-xs)}.page-sticky-header h1{font-size:1.25rem}.page-sticky-header .admin-page-toolbar-title{font-size:1.1rem}.page-header{margin-bottom:var(--space-xs);gap:var(--space-sm)}.admin-page-toolbar{margin-bottom:var(--space-xs)}}.page-header-action{flex-shrink:0;margin-left:auto}.page-header-controls{align-items:center;gap:var(--space-sm);flex-shrink:0;margin-left:auto;display:flex}.page-header-controls .page-header-action{margin-left:0}.page-header-controls .btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-items:center;text-decoration:none;display:inline-flex}.page-header:has(.page-header-back){justify-content:flex-start;gap:var(--space-sm)}.page-header-back{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:0;padding:0;font-size:1.5rem;line-height:1;display:inline-flex}.board-date-field{margin:0;display:block}.board-date-input{width:auto;max-width:11rem;padding:var(--space-xs) var(--space-sm);font:inherit;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);margin:0;display:block}.btn-icon-add{border-radius:var(--radius-round);background:var(--color-primary-800);width:2.25rem;height:2.25rem;color:var(--color-on-primary);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.btn-icon-add svg{width:1.125rem;height:1.125rem;display:block}.btn-icon-add:hover{background:var(--color-primary-700)}.btn-icon-add:disabled{opacity:.5;cursor:not-allowed}.header h1{margin:var(--space-xs) 0}.sub{color:var(--color-muted);margin:0}.back{color:var(--color-accent-text);font-size:.95rem;text-decoration:none}.card{background:var(--gradient-card),var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-md);box-shadow:var(--shadow-sm)}.card-header{justify-content:space-between;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.card-header h2{margin:0}.card.row{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.row{gap:var(--space-sm);flex-wrap:wrap;display:flex}.stack{gap:var(--space-md);flex-direction:column;display:flex}.chemical-rate-fieldset{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md) var(--space-lg);margin:0}.chemical-rate-fieldset legend{padding:0 .35rem;font-weight:600}.assign-proposal-column{display:none}@media(min-width:1081px){.page.board-has-assign-panel{max-width:none;margin-left:0;margin-right:calc(22rem + var(--space-lg))}.assign-proposal-column{top:calc(var(--nav-bottom, calc(4rem + env(safe-area-inset-top)) ) + var(--space-lg));right:calc(var(--space-lg) + env(safe-area-inset-right));bottom:calc(var(--space-lg) + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--color-surface);border-radius:var(--radius-md);width:22rem;box-shadow:var(--shadow-sm);padding:var(--space-md);display:block;position:fixed;overflow-y:auto}}.assign-proposal-tab{touch-action:manipulation}.assign-proposal-sheet{z-index:var(--z-floating);-webkit-overflow-scrolling:touch;background:var(--color-surface);height:100dvh;padding:calc(var(--space-md) + env(safe-area-inset-top)) calc(var(--space-md) + env(safe-area-inset-right)) calc(var(--space-lg) + env(safe-area-inset-bottom)) calc(var(--space-md) + env(safe-area-inset-left));position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto}.assign-proposal-sheet-header{background:inherit;padding-bottom:var(--space-sm);justify-content:flex-end;display:flex;position:sticky;top:0}.assign-proposal-list{gap:var(--space-sm);display:grid}.assign-proposal-item{list-style:none}.assign-proposal-option{width:100%;min-height:48px;padding:var(--space-sm) var(--space-md);text-align:left;font:inherit;color:inherit;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.suggested-alert-card{gap:var(--space-xs);padding:var(--space-md);border:1px solid var(--color-border);border-left:4px solid var(--color-unfinished-line);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.suggested-alert--needs-attention{border-left-color:var(--color-danger)}.suggested-alert-head{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.suggested-alert-line{margin:0;font-size:.9em}.suggested-alert-line--attention{color:var(--color-danger-text);font-weight:600}.suggested-alert-list{gap:var(--space-sm);flex-direction:column;display:flex}.suggested-count{margin-left:var(--space-xs);border-radius:var(--radius-full);background:var(--color-unfinished);min-width:1.4em;color:var(--color-on-unfinished);text-align:center;padding:0 .35em;font-size:.8em;font-weight:700;display:inline-block}.suggested-count--attention{background:var(--color-danger);color:var(--color-on-danger)}.assign-proposal-option.selected{border-color:var(--color-primary-700);box-shadow:0 0 0 2px var(--color-primary-700)}.assign-proposal-progress{color:var(--color-primary-700);font-weight:600}.assign-proposal-steps{padding:var(--space-sm) var(--space-md) var(--space-md)}.assign-proposal-notice{padding:var(--space-sm) var(--space-md);border-left:4px solid var(--color-primary-700);border-radius:var(--radius-md);background:var(--color-surface);margin:0}.purchase-row{justify-content:space-between;align-items:center;gap:var(--space-md);touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-height:44px;display:flex}.purchase-row-main{flex-direction:column;min-width:0;display:flex}.purchase-row-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.2rem;display:flex}.purchase-amount{font-variant-numeric:tabular-nums;font-weight:600}.purchase-amount.void{color:var(--color-muted);text-decoration:line-through}.purchase-badge-warning{color:var(--color-warning-fg);font-weight:600}.purchases-bar{justify-content:space-between;align-items:flex-end;gap:var(--space-sm);margin:var(--space-sm) 0;flex-wrap:wrap;display:flex}.purchases-month input{min-height:44px}.purchase-field-label{font-weight:600}.purchase-line{margin:var(--space-md) 0 0;min-width:0}.purchase-line legend{padding:0 .35rem;font-weight:600}.purchase-line-amounts{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media(min-width:700px){.purchase-line-amounts{grid-template-columns:repeat(4,minmax(0,1fr))}}.purchase-notice{margin:var(--space-sm) 0;padding:var(--space-sm) var(--space-md);border:none;border-left:4px solid var(--color-warning-fg);border-radius:var(--radius-md);background:var(--color-warning-bg);color:var(--color-warning-fg)}.purchase-danger-zone{margin-top:calc(var(--space-lg) * 2);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.proposal-type-boards{border:0;min-width:0;margin:0;padding:0}.proposal-type-boards legend{margin-bottom:var(--space-sm);padding:0;font-weight:600}.chemical-rate-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.chemical-rate-row .chemical-rate-amount{flex:none;width:5.5rem;margin:0}.chemical-rate-row .chemical-rate-unit{flex:none;width:auto;min-width:6.5rem;min-height:44px;margin:0}.chemical-rate-per{color:var(--color-muted);padding:0 var(--space-xs);flex:none;font-weight:600}.tabs{gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.tab{padding:var(--space-sm) var(--space-lg);background:var(--color-border);border-radius:var(--radius-sm);cursor:pointer;border:none;min-height:44px}.tab.active{background:var(--color-primary-800);color:var(--color-on-primary)}a.tab{color:inherit;box-sizing:border-box;align-items:center;text-decoration:none;display:inline-flex}.btn{border:1px solid var(--color-border-input);border-radius:var(--radius-md);padding:.6rem var(--space-lg);cursor:pointer;background:var(--color-surface);color:var(--color-primary-900);touch-action:manipulation;min-height:48px;font-size:1.05rem}.btn:where(:active:not(:disabled)){background:var(--color-primary-100)}.btn:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.btn.compact{min-height:44px;padding:.45rem var(--space-md);font-size:.95rem}.btn.primary{border-color:var(--color-primary-800);background:var(--gradient-primary),var(--color-primary-800);color:var(--color-on-primary)}.btn.primary:where(:active:not(:disabled)){border-color:var(--color-primary-900);background:var(--color-primary-900)}.btn.danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-on-danger)}.btn.danger:where(:active:not(:disabled)){border-color:var(--color-danger-fg);background:var(--color-danger-fg)}.btn.subtle{color:var(--color-primary-900);background:0 0;border-color:#0000}.btn.block{text-align:center;width:100%;text-decoration:none;display:block}.btn.reason{flex:45%}.role-picker{gap:var(--space-md);margin-bottom:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));padding:5px;display:grid}.role-picker .btn.reason{touch-action:manipulation;min-height:48px;margin:0}.foreman-area-boxes .hint{margin:0 0 var(--space-xs)}.btn.reason.selected{background:var(--gradient-primary),var(--color-primary-800);border-color:var(--color-primary-800);color:var(--color-on-primary);outline:3px solid var(--color-focus-ring);outline-offset:2px}.btn:disabled:not([aria-busy=true]){border-color:var(--color-meter-track);background:var(--color-meter-track);color:var(--color-muted);cursor:not-allowed}.btn[aria-busy=true]{cursor:progress}.btn[aria-busy=true]:before{content:"";vertical-align:-.15em;width:1em;height:1em;-webkit-mask:var(--icon-busy-leaf) center / contain no-repeat;mask:var(--icon-busy-leaf) center / contain no-repeat;background:currentColor;margin-right:.4em;animation:1s linear infinite btn-busy-turn;display:inline-block}@media(prefers-reduced-motion:reduce){.btn[aria-busy=true]:before{animation:none}}@keyframes btn-busy-turn{to{transform:rotate(360deg)}}.list{margin:0;padding:0;list-style:none}.list-item{justify-content:space-between;align-items:center;gap:var(--space-md);background:var(--color-surface);padding:.85rem var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-sm);box-shadow:var(--shadow-sm);display:flex}.list-item-link{color:inherit;width:100%;text-decoration:none;display:block}.list-item-link--row{justify-content:space-between;align-items:center;gap:var(--space-md);touch-action:manipulation;min-height:44px;display:flex}.list-item-toggle{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;min-height:44px;color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:flex}.list-item-toggle-detail{margin:var(--space-sm) 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.list-item.list-item--sub{margin-left:var(--space-lg);border-left:3px solid var(--color-border)}.list-item.touchable{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.list-item.column{flex-direction:column;align-items:stretch}.list-item-main{min-width:0}.list-item.column .list-item-main .hint{overflow-wrap:break-word}.list-item.column>.row-actions{width:100%;margin-top:var(--space-sm);flex-shrink:1}.list-item.column>.row{justify-content:space-between;align-items:flex-start;gap:var(--space-md);width:100%;display:flex}.list-item.spray-log-entry{align-items:flex-start}.spray-assignment-row>.list-item-main{flex:auto;min-width:0}.spray-assignment-actions{gap:var(--space-sm);overflow-wrap:anywhere;flex-direction:column;flex:0 auto;min-width:0;max-width:min(24rem,45%);display:flex}@media(max-width:1080px){.list-item.spray-assignment-row{align-items:start;gap:var(--space-sm) var(--space-md);grid-template-columns:auto minmax(0,1fr);display:grid}.spray-assignment-row>.board-stop-drag-handle{grid-area:1/1}.spray-assignment-row>.list-item-main{grid-area:1/2}.spray-assignment-row>.list-item-main:first-child{grid-column:1/-1}.spray-assignment-row>.spray-assignment-actions{grid-column:1/-1;width:100%;max-width:none}.spray-assignment-actions .dialog-actions .btn{flex:45%;min-height:48px}.spray-assignment-actions .btn{touch-action:manipulation}}.fuel-board-list{gap:var(--space-sm);flex-direction:column;display:flex}.fuel-board-entry{align-items:stretch;gap:var(--space-xs);flex-direction:column;display:flex}.fuel-board-row{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);text-align:left;cursor:pointer;color:inherit;font:inherit;border:none;margin:0;display:flex}.fuel-board-row:hover{outline:2px solid var(--color-primary-600);outline-offset:0}.fuel-board-row-main{flex:auto;min-width:0}.fuel-board-row-main strong{display:block}.fuel-board-continue-label{pointer-events:none;flex-shrink:0}.fuel-board-card{gap:var(--space-xs);flex-direction:column;display:flex}.fuel-board-lines{padding:0 0 0 var(--space-md);flex-direction:column;gap:2px;margin:0;list-style:none;display:flex}.fuel-board-line{align-items:baseline;gap:var(--space-sm);width:100%;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);text-align:left;cursor:pointer;color:inherit;font:inherit;background:0 0;border:none;margin:0;display:flex}.fuel-board-line:hover{background:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.fuel-board-line:hover{background:color-mix(in srgb,var(--color-surface) 70%,transparent)}}.fuel-board-line-label{flex:0 auto;font-weight:600}.fuel-board-line-meta{flex:auto;min-width:0}.fuel-board-line-chevron{opacity:.55;flex-shrink:0}.list-item-meta{text-align:right;white-space:nowrap;flex-shrink:0;align-self:flex-start}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;vertical-align:top;border-bottom:1px solid #0e2a1d1f;padding:.65rem .75rem}@supports (color:color-mix(in lab,red,red)){.table th,.table td{border-bottom:1px solid color-mix(in srgb,var(--color-text) 12%,transparent)}}.table th{white-space:nowrap;font-weight:600}.table th.num,.table td.num{text-align:right}.fuel-submitted-table th:last-child,.fuel-submitted-table td:last-child{white-space:nowrap}.spray-log-day-bar{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm);display:flex}.roster{margin:0 0 var(--space-lg);padding:0;list-style:none}.roster-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-sm);box-shadow:var(--shadow-sm);scroll-margin-top:8rem}.roster-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-sm);display:flex}.roster-card-header .roster-punch-name .name{margin-bottom:0}.roster-card-actions{justify-content:flex-end;gap:var(--space-sm);flex-wrap:wrap;display:flex}.roster-check{color:var(--color-success-text);justify-content:center;align-items:center;margin-left:.35rem;font-size:1.1em;font-weight:700;line-height:1;display:inline-flex}.spinner{border:.15rem solid var(--color-border);border-top-color:var(--color-success-text);border-radius:var(--radius-round);vertical-align:middle;flex-shrink:0;width:1.15rem;height:1.15rem;margin-left:.35rem;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{opacity:.7;animation:none}}.roster-punch-card,.roster-punch-name{min-height:48px;font:inherit;font-weight:inherit;color:inherit;text-align:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;align-items:center;margin:0;padding:0;display:flex}.roster-punch-card{justify-content:center;width:100%}.roster-punch-name{flex:1;gap:.35rem;min-width:0}.roster-card-daily-pending{padding:var(--space-lg)}.roster-card-suspended .name{color:var(--color-muted)}.roster-card-suspended{opacity:.75}.suspension-day-grid{-webkit-overflow-scrolling:touch;max-height:16rem;overflow-y:auto}.roster-card-daily{padding:var(--space-lg)}.roster-card-daily-row{align-items:center;gap:var(--space-md);display:flex}.roster-card-daily-row .btn.primary{min-width:5.5rem;min-height:56px;padding-inline:var(--space-lg);flex-shrink:0;font-size:1.1rem}.roster-card.roster-card-daily .roster-card-daily-row .name{min-width:0;color:var(--color-success-text);text-align:center;flex:1;margin-bottom:0;font-size:2.45rem;font-weight:700;line-height:1.2}.roster-card-header .edit-btn,.roster-card-daily-row .edit-btn{flex-shrink:0;min-height:44px}.roster-card.roster-card-daily-pending .name{text-align:center;min-width:0;color:var(--color-accent-text);flex:1;justify-content:center;margin-bottom:0;font-size:2.45rem;font-weight:700;line-height:1.2}.roster-card.roster-card-daily .name{text-align:center;color:var(--color-accent-text);justify-content:center;margin-bottom:0;font-size:2.19rem;font-weight:700;line-height:1.2}.ok-banner{color:var(--color-success);margin:0 0 var(--space-lg);font-weight:600}.practice-banner{background:var(--color-practice-bg);border:1px solid var(--color-practice-border);border-radius:var(--radius-sm);color:var(--color-practice-fg);margin:0 0 var(--space-lg);padding:.65rem var(--space-lg);text-align:center;font-size:.9rem;font-weight:600}.reminder-banner{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-sm);color:var(--color-warning-fg);margin:0 0 var(--space-lg);padding:.65rem var(--space-lg);font-size:.9rem;font-weight:500}.reminder-banner p{margin:0}.reminder-banner p+p{margin-top:.35rem}.sweep-due-badge{background:var(--color-warning-bg);color:var(--color-warning-fg);border-radius:var(--radius-full);margin-left:.4rem;padding:.15rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.day-completed{text-align:center;min-height:min(50vh,22rem);margin:var(--space-lg) 0 var(--space-xl);padding:2rem var(--space-lg);flex-direction:column;justify-content:center;align-items:center;display:flex}.day-completed-visual{justify-content:center;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.day-completed-icon{border-radius:var(--radius-round);background:var(--color-success-light);width:5.5rem;height:5.5rem;color:var(--color-success-vivid);box-shadow:var(--shadow-success-glow);justify-content:center;align-items:center;font-size:2.85rem;font-weight:700;line-height:1;display:flex}.day-completed-title{color:var(--color-success);margin:0;font-size:1.65rem;font-weight:700}.day-completed-sub{color:var(--color-muted);margin:.35rem 0 0;font-size:.95rem}.day-completed-note-snippet{max-width:36rem;margin:0 auto var(--space-md);color:var(--color-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.day-entries-dialog{width:min(100%,42rem);max-width:42rem;height:min(92dvh,56rem);max-height:min(92dvh,56rem)}.day-entries-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-shrink:0;display:flex}.day-entries-header .back,.picker-sheet-header .back{min-width:44px;min-height:44px;padding:0 var(--space-sm);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;margin:0;display:inline-flex}.day-entries-header h2{margin:0;font-size:1.15rem}.day-entries-dialog .dialog-scroll-body{gap:var(--space-sm);flex-direction:column;display:flex}.page-day-complete .stack{margin-top:var(--space-sm)}.start-time-other{gap:var(--space-md);margin:var(--space-lg) 0;flex-direction:column;display:flex}.start-time-wheel{width:100%}.start-time-wheel-window{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:var(--color-surface);height:200px;position:relative;overflow:hidden}.start-time-wheel-highlight{border-top:1px solid var(--color-primary-900);border-bottom:1px solid var(--color-primary-900);background:var(--color-wheel-band);pointer-events:none;height:48px;z-index:var(--z-base);margin-top:-24px;position:absolute;top:50%;left:0;right:0}.start-time-wheel-list{z-index:var(--z-raised);scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;height:200px;margin:0;padding:76px 0;list-style:none;position:relative;overflow-y:auto}.start-time-wheel-list>li{margin:0;padding:0}.start-time-wheel-item{scroll-snap-align:center;width:100%;height:48px;color:var(--color-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.start-time-wheel-item.selected{color:var(--color-foreground);font-weight:600}.dialog-backdrop,.confirm-backdrop{z-index:var(--z-dialog);padding:var(--space-lg);background:var(--color-scrim);justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.punch-ack-backdrop{z-index:var(--z-punch-ack);padding:max(var(--space-lg),env(safe-area-inset-top)) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-lg),env(safe-area-inset-bottom)) max(var(--space-lg),env(safe-area-inset-left));background:var(--color-scrim-strong);touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.punch-ack{align-items:center;gap:var(--space-lg);width:100%;max-width:22rem;padding:var(--space-xl) var(--space-lg);border-radius:var(--radius-md);background:var(--color-surface);text-align:center;flex-direction:column;display:flex}.punch-ack-mark{width:7.5rem;height:7.5rem;color:var(--color-success);display:flex}.punch-ack-mark svg{width:100%;height:100%}.save-failed-backdrop{cursor:default;z-index:var(--z-save-failed)}.save-failed-mark{color:var(--color-danger-text)}.punch-ack-message{color:var(--color-foreground);margin:0;font-size:1.35rem;font-weight:600;line-height:1.3}@media(prefers-reduced-motion:no-preference){.punch-ack{animation:.2s ease-out punch-ack-in}}@keyframes punch-ack-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.punch-notice-backdrop{z-index:var(--z-punch-notice);padding:max(var(--space-lg),env(safe-area-inset-top)) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-lg),env(safe-area-inset-bottom)) max(var(--space-lg),env(safe-area-inset-left));background:var(--color-scrim-strong);touch-action:manipulation;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.punch-notice{align-items:center;gap:var(--space-lg);width:100%;max-width:22rem;padding:var(--space-xl) var(--space-lg);border-radius:var(--radius-md);background:var(--color-surface);text-align:center;flex-direction:column;display:flex}.punch-notice-mark{width:7.5rem;height:7.5rem;color:var(--color-danger-text);display:flex}.punch-notice-mark svg{width:100%;height:100%}.punch-notice-message{color:var(--color-foreground);margin:0;font-size:1.35rem;font-weight:600;line-height:1.3}.punch-notice-confirm{width:100%;min-height:48px}.reminder-employee-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.reminder-employee-list button{touch-action:manipulation;width:100%;min-height:48px}.confirm-dialog{width:100%;max-width:24rem;margin:0}.confirm-dialog-notice{padding:var(--space-sm) var(--space-md);border-left:4px solid var(--color-warning-fg);border-radius:var(--radius-md);background:var(--color-warning-bg);color:var(--color-warning-fg);margin:0;font-weight:600}.confirm-dialog-actions-stacked{flex-direction:column}.confirm-dialog-actions-stacked .btn{flex:none;width:100%;min-height:48px}.dialog{width:100%;max-width:24rem;max-height:min(92dvh,36rem);margin:0;overflow:auto}.move-property-dialog{max-width:34rem}.move-property-contract{padding:var(--space-md);margin:0}.move-property-contract .btn.reason{touch-action:manipulation}.move-property-review{padding-left:var(--space-lg);margin:0}.dialog-fit{flex-direction:column;max-height:min(92dvh,52rem);display:flex;overflow:hidden}.dialog-fit>h2{flex-shrink:0}.dialog-scroll-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.dialog-fit>.dialog-actions{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--color-border);flex-shrink:0}.scope-item-list{gap:var(--space-sm)}.scope-item-row{gap:var(--space-sm);align-items:flex-end;display:flex}.scope-item-label{flex:1;min-width:0}.scope-item-row .btn.danger{flex-shrink:0}.scope-add-btn{margin-top:var(--space-sm);width:100%}.scope-section-list{gap:var(--space-md)}.scope-section{gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.scope-section>.scope-item-list{padding-left:var(--space-sm);border-left:3px solid var(--color-border)}.scope-add-section-btn{margin-top:var(--space-md);touch-action:manipulation;width:100%;min-height:48px}.truck-picker-dialog>.inline-picker-panel{border-top:none;flex:auto;min-height:0;max-height:none;margin-top:0;padding-top:0;overflow:hidden}.permissions-dialog{flex-direction:column;max-width:min(100%,40rem);max-height:min(92dvh,52rem);display:flex;overflow:hidden}.permissions-dialog>h2{flex-shrink:0}.permissions-dialog-body{flex-direction:column;gap:0;display:flex}.permissions-dialog-body>.sub{margin:0 0 var(--space-md);flex-shrink:0}.permissions-dialog-body>label{flex-shrink:0}.permissions-dialog>.sub{margin:0 0 var(--space-md);flex-shrink:0}.permissions-dialog>.dialog-actions{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--color-border);flex-shrink:0}.picker-scroll{min-height:0;margin:var(--space-sm) 0;-webkit-overflow-scrolling:touch;flex:auto;overflow-y:auto}.spray-log-business{margin:0 0 var(--space-xs);white-space:pre-line;line-height:1.3}.picker-header{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.picker-header>h2{min-width:0;margin:0}.picker-option-other{border-style:dashed}.chemical-group>.list{width:100%;margin-top:var(--space-sm)}.chemical-group>.list>.list-item{box-shadow:none;border:1px solid var(--color-border)}.chemical-needs-metric{color:var(--color-warning-fg)}.picker-scroll .home-section-divider:first-child{margin-top:0}.truck-grid.reason-grid{flex-direction:column}.truck-grid .btn.reason{flex:none;width:100%}.dialog h2{margin:0 0 var(--space-sm);font-size:1.25rem}.confirm-summary{margin:var(--space-lg) 0;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:0;list-style:none;overflow:hidden}.confirm-summary li{border-bottom:1px solid var(--color-border);padding:.65rem .85rem;font-size:.95rem}.confirm-summary-entry{flex-direction:column;gap:.15rem;display:flex}.confirm-summary li:last-child{border-bottom:none}.dialog-actions,.form-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.dialog-actions .btn,.form-actions .btn{flex:45%}.flag-groups{gap:var(--space-lg);flex-direction:column;display:flex}.flag-group{margin-bottom:0}.flag-group-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.flag-group-heading{flex-direction:column;gap:.2rem;display:flex}.flag-group-title{color:var(--color-accent-text);margin:0;font-size:1.65rem;font-weight:700;line-height:1.2}.flag-group-count{color:var(--color-muted);font-size:.95rem;font-weight:600}.flag-group-resolve{margin-bottom:var(--space-md)}.flag-group-issues{margin:0;padding:0;list-style:none}.flag-group-issue{border-top:1px solid var(--color-border);padding:.85rem 0}.flag-group-issue:first-child{border-top:none;padding-top:0}.flag-group-issue-title{color:var(--color-foreground);font-size:1.5rem;font-weight:600;line-height:1.25;display:block}.flag-group-issue-why{margin:.35rem 0 var(--space-md);color:var(--color-text-secondary);font-size:1rem;line-height:1.45}.flag-code{color:var(--color-foreground);font-weight:600}.flag-why{margin:.35rem 0 var(--space-md);color:var(--color-text-secondary);font-size:.95rem;line-height:1.45}.badge.severity-high{color:var(--color-severity-high);font-weight:600}.badge.severity-medium{color:var(--color-severity-medium);font-weight:600}.badge.severity-low{color:var(--color-muted)}.flag-review h2{margin:0 0 var(--space-xs)}.flag-review h3{margin:var(--space-lg) 0 var(--space-sm);font-size:1rem}.flag-summary ul,.flag-events .list{margin:0}.flag-review-actions{margin-top:var(--space-lg)}.holiday-decision h2{margin:0 0 var(--space-xs)}.holiday-decision-reason{margin:var(--space-sm) 0 var(--space-md);font-weight:600}.holiday-decision-actions{flex-direction:column;gap:8px;display:flex}.holiday-decision-actions .btn{touch-action:manipulation;width:100%}.holiday-decision-link{align-items:center;min-height:44px;display:inline-flex}.card label,.section-card-body label{margin-bottom:var(--space-md);display:block}.card label select,.section-card-body label select,.card label input,.section-card-body label input,.card label textarea,.section-card-body label textarea{width:100%;margin-top:var(--space-xs);display:block}.card label textarea:read-only,.section-card-body label textarea:read-only{background:var(--color-surface-muted);cursor:default}.notes-compact{resize:vertical;min-height:2.75rem}.route-board-page.route-board-locked{max-width:64rem}.route-board-layout{gap:var(--space-lg);align-items:flex-start;display:flex}.route-board-stops{flex:1;min-width:0}.route-board-notes-panel{top:var(--space-lg);flex:0 0 min(18rem,38%);margin:0;position:sticky}.route-board-notes-title{margin:0 0 var(--space-sm);font-size:1.1rem}.route-board-confirmed-badge,.board-confirmed-badge{margin:0 0 var(--space-sm);color:var(--color-accent-text);font-size:.9rem;font-weight:600}.route-board-notes-body{white-space:pre-wrap;margin:0;line-height:1.45}.route-board-actions{gap:var(--space-sm);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.route-board-actions .btn{flex:12rem;min-height:48px}.route-board-attention-carry{border:2px solid var(--color-primary-800)}.route-board-attention-issue{margin:var(--space-xs) 0 0;color:var(--color-accent-text);white-space:pre-wrap;font-weight:600}.route-board-stop-item{flex-wrap:wrap;align-items:flex-start}.route-board-stop-main{gap:var(--space-xs);flex-direction:column;flex:1;min-width:0;display:flex}.route-board-property-link{color:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:flex-start;gap:.15rem;min-height:44px;margin:0;padding:0;display:flex}.route-board-property-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.route-board-instructions-hint{font-weight:500}.route-board-stop-instructions{margin-top:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-wash);gap:var(--space-sm);flex-direction:column;display:flex}.route-board-stop-instructions .btn{align-self:flex-start;min-height:44px}.property-address-fields{margin-bottom:var(--space-md);align-items:flex-start}.property-address-street{flex:12rem;min-width:0}.property-address-city{flex:8rem;min-width:0}.property-address-state{flex:0 6.5rem}.property-address-zip{flex:0 7rem}.card .property-address-fields label,.section-card-body .property-address-fields label{margin-bottom:0}.property-activity-instructions{gap:var(--space-xs);margin-top:var(--space-md);flex-direction:column;display:flex}.route-board-attention-actions{gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.route-board-attention-actions .btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex:8rem;min-height:48px}.route-board-attn{border-width:2px;font-weight:600}.route-board-attn-completed{color:var(--color-success-fg);border-color:var(--color-success);background:var(--color-success-light)}.route-board-attn-completed.is-selected{color:var(--color-on-primary);background:var(--color-success);border-color:var(--color-success)}.route-board-attn-unfinished{color:var(--color-unfinished-fg);border-color:var(--color-unfinished-line);background:var(--color-unfinished-bg)}.route-board-attn-unfinished.is-selected{color:var(--color-on-unfinished);background:var(--color-unfinished);border-color:var(--color-unfinished)}.btn.btn-unfinished{color:var(--color-on-unfinished);border-color:var(--color-unfinished);background:var(--color-unfinished)}.site-status-options{gap:var(--space-sm);flex-direction:column;display:flex}.btn.site-status-option{text-align:left;touch-action:manipulation;border:2px solid #0000;flex-direction:column;align-items:flex-start;gap:.15rem;min-height:48px;display:flex}.site-status-label{font-weight:700}.site-status-hint{opacity:.85;font-size:.8em}.btn.site-status-complete{color:var(--color-success-fg);background:var(--color-success-light);border-color:var(--color-success)}.btn.site-status-complete.is-selected{color:var(--color-on-primary);background:var(--color-success)}.btn.site-status-unfinished{color:var(--color-unfinished-fg);background:var(--color-unfinished-bg);border-color:var(--color-unfinished-line)}.btn.site-status-unfinished.is-selected{background:var(--color-unfinished)}.btn.site-status-needs-attention{color:var(--color-danger-fg);background:var(--color-danger-bg);border-color:var(--color-danger)}.btn.site-status-needs-attention.is-selected{color:var(--color-on-danger);background:var(--color-danger)}.site-status-alert-note{color:var(--color-danger-text);font-weight:600}.log-carried-over{padding:var(--space-sm) var(--space-md);border-left:4px solid var(--color-unfinished-line);border-radius:var(--radius-sm);background:var(--color-unfinished-bg);color:var(--color-unfinished-fg);margin:0}.route-board-attn-needs{color:var(--color-danger-fg);border-color:var(--color-danger);background:var(--color-danger-bg)}.route-board-attn-needs.is-selected{color:var(--color-on-danger);background:var(--color-danger);border-color:var(--color-danger)}.route-board-picker-backdrop{padding:max(var(--space-md),env(safe-area-inset-top)) max(var(--space-md),env(safe-area-inset-right)) max(var(--space-md),env(safe-area-inset-bottom)) max(var(--space-md),env(safe-area-inset-left));align-items:stretch}.route-board-picker-sheet{flex-direction:column;width:100%;max-width:min(100%,42rem);max-height:100%;margin:auto;display:flex;overflow:hidden}.route-board-picker-sheet>.card,.route-board-picker-sheet.card{flex-direction:column;max-height:min(92dvh,52rem);display:flex;overflow:hidden}.route-board-picker-sheet .picker-scroll{-webkit-overflow-scrolling:touch;flex:auto;min-height:12rem;max-height:min(55dvh,28rem)}.route-board-picker-sheet .form-actions .btn,.route-board-instruction-actions .btn{touch-action:manipulation;min-height:48px}.route-board-instruction-actions{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.route-board-instruction-actions .btn{flex:8rem}.route-board-attention-notes-label{gap:var(--space-xs);margin-top:var(--space-sm);flex-direction:column;font-weight:600;display:flex}.route-board-stop-notes{margin:var(--space-xs) 0 0;white-space:pre-wrap;line-height:1.4}.route-board-stop-notes p{margin:0}.route-board-stop-item-actions{gap:var(--space-xs);flex-direction:column;flex-shrink:0;display:flex}.route-board-stop-item-actions .btn{min-height:44px}.route-board-complete-sheet{width:100%;max-width:28rem}.route-board-day-notes{width:100%;min-height:9rem;font-size:1rem}.route-board-complete-actions{margin-top:var(--space-lg)}.route-board-complete-actions .btn.primary{flex:1;min-height:48px}@media(max-width:1080px){.route-board-layout{flex-direction:column}.route-board-notes-panel{flex:none;order:-1;width:100%;position:static}}.card label input[type=radio],.section-card-body label input[type=radio],.card label input[type=checkbox],.section-card-body label input[type=checkbox]{width:auto;margin:0 var(--space-sm) 0 0;vertical-align:middle;display:inline-block}.hint-inline{margin-top:var(--space-sm)}.card select,.section-card-body select{width:100%;padding:var(--input-padding);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font-size:var(--input-font-size);margin-top:.35rem;display:block}.searchable-select{width:100%;position:relative}.searchable-select-list{z-index:var(--z-popover);max-height:16rem;padding:var(--space-xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-popover);margin:0;list-style:none;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow:auto}.searchable-select-heading{padding:var(--space-xs) var(--space-sm);color:var(--color-muted);font-size:.85rem;font-weight:600}.searchable-select-option{border-radius:var(--radius-sm);width:100%;padding:var(--space-sm);color:var(--color-foreground);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-start;display:flex}.searchable-select-option.is-highlighted,.searchable-select-option:hover{background:var(--color-primary-50)}.searchable-select-option.is-selected{font-weight:600}.searchable-select-empty{padding:var(--space-sm);color:var(--color-muted)}.error{white-space:pre-wrap}.roster-card .name{align-items:baseline;gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;font-size:1.15rem;font-weight:600;display:flex}.roster-card .here-time{color:var(--color-muted);font-size:.95rem;font-weight:500}.roster-card .here-time.late{color:var(--color-danger-text);font-weight:600}.roster-card .here-time .time-separator{color:var(--color-muted);font-weight:400}.absent-panel,.inline-picker-panel{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.inline-picker-panel{-webkit-overflow-scrolling:touch;flex-direction:column;max-height:min(70dvh,28rem);margin-inline:-5px;padding-inline:5px;display:flex;overflow-y:auto}.inline-picker-panel>.search{z-index:var(--z-base);background:var(--color-background);padding-bottom:var(--space-xs);flex-shrink:0;position:sticky;top:0}.inline-picker-panel .form-actions,.inline-picker-panel>.sub,.inline-picker-panel>label,.inline-picker-panel>.error,.inline-picker-panel>h3,.inline-picker-panel textarea{flex-shrink:0}.inline-picker-panel textarea{min-height:44px}.inline-picker-panel h3{margin-top:0}.actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.export-employer-row{align-items:center;gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.export-employer-name{flex:12rem;min-width:8rem;margin:0;font-weight:600}.reason-grid{gap:var(--space-sm);margin:var(--space-sm) 0;flex-wrap:wrap;display:flex}.plan-truck-card{margin-bottom:var(--space-md)}.plan-truck-head{justify-content:space-between;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;display:flex}.plan-truck-head h2{margin:0}.plan-crew-chip{touch-action:manipulation;min-height:48px}.plan-crew-chip-away{opacity:.6;border-style:dashed}.plan-truck-actions,.plan-bulk-actions,.plan-board-links{gap:var(--space-sm);margin:var(--space-sm) 0;flex-wrap:wrap;display:flex}.plan-truck-actions .btn,.plan-bulk-actions .btn{touch-action:manipulation;min-height:48px}.plan-row-off .roster-punch-name{color:var(--color-muted)}.plan-picker{margin-top:var(--space-sm)}.costing-worksheet{gap:var(--space-sm);border:none;min-inline-size:0;margin:0;padding:0;position:relative}.costing-worksheet>legend{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.costing-worksheet .costing-heading{margin:var(--space-xs) 0 0;font-size:1rem}.costing-worksheet .costing-material{gap:var(--space-sm)}.costing-worksheet .reason-grid,.costing-worksheet>.hint{margin:0}.costing-grid{gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media(max-width:1080px){.costing-grid{grid-template-columns:1fr}}.segmented{column-gap:var(--seg-gap);--seg-gap:var(--space-sm);border-radius:var(--radius-full);background:var(--color-border);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;width:100%;max-width:30rem;padding:4px;display:grid;position:relative}.segmented-thumb{width:calc((100% - 8px - (var(--seg-count) - 1) * var(--seg-gap)) / var(--seg-count));transform:translate(calc(var(--seg-index) * (100% + var(--seg-gap))));border-radius:var(--radius-full);background:var(--color-primary-800);position:absolute;top:4px;bottom:4px;left:4px}@media(prefers-reduced-motion:no-preference){.segmented-thumb{transition:transform .2s}}.segmented-option{z-index:var(--z-base);min-width:0;min-height:44px;padding:.35rem var(--space-md);border-radius:var(--radius-full);color:var(--color-muted);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;font-size:.95rem;position:relative;overflow:hidden}.segmented-option.selected{color:var(--color-on-primary);font-weight:600}.segmented-option:focus-visible{outline:3px solid var(--color-primary-800);outline-offset:2px}.segmented-short{display:none}@media(max-width:480px){.segmented-full{display:none}.segmented-short{display:inline}}.segmented.employer-toggle{margin-top:var(--space-md)}.segmented.segmented--tall .segmented-option{min-height:48px}.segmented-option:disabled{cursor:default}.segmented:has(.segmented-option:disabled){opacity:.7}.contact-group-heading{margin:var(--space-sm) 0 0;color:var(--color-muted);font-size:1rem;font-weight:600}.invoice-recipient-missing{color:var(--color-danger-text);font-weight:600}.activity-multi-picker-header{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.badge{color:var(--color-muted);font-size:.85rem}.badge.badge-warn{color:var(--color-warning-fg);background:var(--color-warning-bg);border-radius:var(--radius-sm);padding:0 .35rem;font-weight:600}.badge-button{min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;padding:.25rem 0;text-decoration:underline;display:inline-flex}.badge.ok{border-radius:var(--radius-full);background:var(--color-success-light);color:var(--color-success-fg);padding:.1rem .45rem}.employer-badge{border-radius:var(--radius-sm);letter-spacing:.02em;color:var(--color-foreground);background:var(--color-wash-strong);vertical-align:middle;margin-left:.35rem;padding:.1rem .45rem;font-size:.75rem;font-weight:600;display:inline-block}.employer-row-main{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.employer-row-main>.list-item-main{overflow-wrap:break-word;min-width:0}@media(max-width:1080px){.list-item.employer-list-item{flex-direction:column;align-items:stretch}.list-item.employer-list-item>.row-actions{width:100%;margin-top:var(--space-sm);flex-shrink:1}.list-item.has-collapsible-actions{flex-wrap:wrap;align-items:flex-start}.list-item.has-collapsible-actions>.list-item-main,.list-item.has-collapsible-actions>.employer-row-main{flex:1 1 0;min-width:0}.list-item.has-collapsible-actions .collapsible-row-actions-toggle{flex:none;align-self:center}.list-item.has-collapsible-actions .collapsible-row-actions-panel{width:100%;margin-top:var(--space-sm);flex:100%}}.employer-drag-handle{cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent;min-width:2.75rem;min-height:2.75rem;color:var(--color-muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.employer-drag-handle:active{cursor:grabbing}.board-stop-drag-handle{cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent;min-width:2.75rem;min-height:2.75rem;color:var(--color-muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.board-stop-drag-handle:active{cursor:grabbing}.list-item.dragging{opacity:.5;box-shadow:var(--shadow-md)}.warn{background:var(--color-warning-bg);color:var(--color-warning-fg);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);margin-bottom:var(--space-lg)}.error{color:var(--color-danger-text)}.hint{color:var(--color-muted);font-size:.9rem}.hint.chemical-meta{color:var(--color-accent-text);font-weight:600}.spray-board-meta{margin-top:.15rem;font-size:.9rem}.spray-board-meta-label{color:var(--color-muted)}.spray-board-answer{color:var(--color-foreground);font-weight:600}.spray-assignment-share{min-height:44px}.spray-assignment-highlight{outline:2px solid var(--color-primary-200);outline-offset:2px;border-radius:var(--radius-sm)}.empty{color:var(--color-muted);padding:var(--space-lg)}.empty:before{content:"🌱";margin-right:.4rem}input,textarea,select{width:100%;padding:var(--input-padding);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);font-size:var(--input-font-size);margin-top:var(--space-xs)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:1px}input[type=checkbox],input[type=radio]{accent-color:var(--color-primary-800)}.input-lg{--input-font-size:1.5rem;--input-padding:.65rem .85rem;text-align:center}.currency-field{margin-top:var(--space-xs);position:relative}.currency-field input{padding-left:calc(var(--input-padding) + .85rem);margin-top:0}.currency-field .currency-symbol{left:var(--input-padding);color:var(--color-muted);pointer-events:none;font-size:var(--input-font-size);position:absolute;top:50%;transform:translateY(-50%)}.field-lg{flex-direction:column;gap:.35rem;font-weight:600;display:flex}label{margin-bottom:var(--space-md);display:block}.search{margin-top:0}.page-sticky-header .roster-search{margin-top:var(--space-sm);margin-bottom:0}.page-sticky-header .roster-panel-empty{margin:var(--space-sm) 0 0}.roster-panel{margin-bottom:var(--space-lg)}.roster-panel .roster-search{margin-bottom:var(--space-md)}.roster-panel-empty{margin:0 0 var(--space-md)}.roster-search-fab{z-index:var(--z-floating);border-radius:var(--radius-round);background:var(--color-primary-800);width:3.25rem;height:3.25rem;color:var(--color-on-primary);box-shadow:var(--shadow-md);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;bottom:1.5rem;right:1.25rem}.roster-search-fab:hover{background:var(--color-primary-700)}.roster-search-fab:active{background:var(--color-primary-950)}.daily-search-launcher{justify-content:center;align-items:center;gap:var(--space-md);width:100%;min-height:12rem;padding:var(--space-xl);color:var(--color-foreground);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;display:flex}.daily-search-launcher-icon{border-radius:var(--radius-round);background:var(--color-primary-800);width:7.25rem;height:7.25rem;color:var(--color-on-primary);box-shadow:var(--shadow-md);justify-content:center;align-items:center;display:flex}.daily-search-launcher-label{font-size:1.125rem;font-weight:600}@media(max-width:1080px){.roster-search-fab{bottom:calc(4.5rem + env(safe-area-inset-bottom))}}.toast{bottom:var(--space-xl);z-index:var(--z-dialog);max-width:min(90vw,24rem);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);background:var(--color-foreground);color:var(--color-surface);box-shadow:var(--shadow-md);text-align:center;position:fixed;left:50%;transform:translate(-50%)}.pwa-update{bottom:var(--space-xl);z-index:var(--z-pwa-update);align-items:stretch;gap:var(--space-sm);width:min(90vw,24rem);padding:.85rem var(--space-lg);border-radius:var(--radius-sm);background:var(--color-primary-950);color:var(--color-on-dark);box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.pwa-update p{text-align:center;margin:0;font-size:.95rem}.pwa-update-actions{gap:var(--space-sm);display:flex}.pwa-update-actions .btn{flex:1}.pwa-update-actions .btn.ghost{color:var(--color-on-dark);border:1px solid var(--color-on-dark-line);background:0 0}.lock-backdrop{z-index:var(--z-idle-lock-backdrop);background:var(--color-scrim-lock);-webkit-backdrop-filter:blur(24px)saturate(120%);position:fixed;top:0;right:0;bottom:0;left:0}.lock-backdrop--dismissable{cursor:pointer}.lock-panel{z-index:var(--z-idle-lock);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:100dvh;padding:max(var(--space-lg),env(safe-area-inset-top)) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-lg),env(safe-area-inset-bottom)) max(var(--space-lg),env(safe-area-inset-left));justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto}.lock-panel--keyboard-aware{min-height:0;inset:auto}.lock-card{flex-shrink:0;width:min(100%,24rem);margin:0}.permission-fieldset{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md) var(--space-lg);flex-shrink:0;min-width:0;margin:0}.permission-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;max-height:min(50vh,24rem);overflow-y:auto}.permission-fieldset-dialog{border:none;min-width:0;padding:0}.permission-groups-grid{gap:var(--space-md) var(--space-lg);grid-template-columns:1fr;align-content:start;display:grid}@media(min-width:640px){.permission-groups-grid{grid-template-columns:1fr 1fr}}.permission-fieldset legend{padding:0 .35rem;font-weight:600}.permission-group h3{margin:var(--space-md) 0 .35rem;font-size:1rem}.permission-group:first-of-type h3{margin-top:var(--space-xs)}.permission-fieldset-dialog .permission-group h3{margin:0 0 var(--space-xs);letter-spacing:.03em;text-transform:uppercase;color:var(--color-muted);font-size:.85rem;font-weight:650}.permission-group label{align-items:center;gap:var(--space-sm);margin-bottom:.35rem;display:flex}.permission-fieldset-dialog .permission-group label{border-radius:var(--radius-sm);touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-height:2.75rem;margin:0;padding:.35rem .65rem;font-size:1rem;line-height:1.25}.permission-fieldset-dialog .permission-group label:has(input:checked){background:var(--color-primary-50)}.permission-fieldset-dialog .permission-group label input[type=checkbox]{width:1.35rem;height:1.35rem;margin:0 var(--space-sm) 0 0;flex-shrink:0}.permission-group label:last-child{margin-bottom:0}.radio-group{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md)}.radio-group legend{padding:0 .35rem;font-weight:600}.radio-group label{margin-bottom:var(--space-sm);align-items:center;display:flex}.radio-group label:last-child{margin-bottom:0}.pin-reveal{letter-spacing:.35em;text-align:center;margin:var(--space-lg) 0;font-size:2rem;font-weight:700}.row-actions{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.list-item:not(.column) .row-actions{flex-shrink:0;margin-top:0}.row-actions-menu{flex-shrink:0;position:relative}.row-actions-menu-trigger{border-radius:var(--radius-sm);width:44px;height:44px;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.row-actions-menu-trigger[aria-expanded=true],.row-actions-menu-trigger:hover{background:var(--color-border)}.row-actions-menu-trigger svg{fill:currentColor;width:1.25rem;height:1.25rem}.row-actions-menu-popover{z-index:var(--z-popover);min-width:11rem;padding:var(--space-xs);background:var(--color-surface,var(--color-background));border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-popover);flex-direction:column;display:flex;position:absolute;top:calc(100% + .25rem);right:0}.row-actions-menu-item{min-height:44px;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:inherit;font:inherit;text-align:left;white-space:nowrap;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none}.row-actions-menu-item:hover,.row-actions-menu-item:focus-visible{background:var(--color-border)}.list-item.user-list-item{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-xs)}.list-item.user-list-item>.row{align-items:center}.list-item.user-list-item .list-item-main{flex:1}.user-list-divider{align-items:center;gap:var(--space-sm);margin:var(--space-xs) 0;color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600;display:flex}.user-list-divider:after{content:"";border-top:1px solid var(--color-border);flex:1}.list-item.user-list-item .list-item-main.clickable{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.fleet-header-row{align-items:center;gap:var(--space-sm);min-height:44px;margin-bottom:var(--space-sm);display:flex}.fleet-tabs{margin-bottom:0;margin-left:auto}.fleet-toolbar{gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;align-items:center;display:flex}.fleet-type-filter{min-width:13rem;min-height:2.75rem;padding:var(--space-sm) var(--space-md);font-size:1rem}.fleet-search{flex:1;min-width:10rem}.fleet-add-fields{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.fleet-add-fields .input{flex:10rem;min-width:10rem}.fleet-add-actions{margin-top:var(--space-lg)}.picker-option{text-align:left;flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;display:flex}.picker-option-bubble{background:var(--color-primary-700);color:var(--color-on-primary);border-radius:var(--radius-full);padding:.85rem 1.25rem}.picker-option-bubble:hover{background:var(--color-primary-800)}.picker-option-bubble .hint{color:var(--color-on-dark-muted)}.picker-option-property{text-align:center;align-items:center;font-size:1.5rem}.review-list .list-item{align-items:center}.review-list .list-item>div{flex:auto;min-width:0}.review-list .list-item strong{overflow-wrap:break-word;word-break:break-word;display:block}.review-chemicals{gap:var(--space-sm);flex-direction:column;display:flex}.review-chemical{flex-direction:column;display:flex}.review-chemical-name{display:block}.review-chemical .chemical-meta{overflow-wrap:break-word;word-break:break-word;font-weight:600;display:block}.home-daily-summary{margin-bottom:var(--space-lg)}.home-daily-summary-groups{gap:var(--space-lg);flex-direction:column;display:flex}@media(min-width:1080px){.home-daily-summary-groups{flex-direction:row}.home-daily-summary-group{flex:1}.home-daily-summary-group+.home-daily-summary-group{border-left:1px solid var(--color-border);padding-left:var(--space-lg)}}.home-daily-summary-group-title{margin:0 0 var(--space-sm);color:var(--color-muted);font-size:.9rem}.home-daily-summary-on-payroll{align-items:baseline;gap:var(--space-xs);min-height:44px;margin-bottom:var(--space-sm);display:flex}.home-daily-summary-row{gap:var(--space-md);margin-bottom:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.home-daily-summary-stat{text-align:center;min-height:44px;padding:var(--space-xs) 0;color:inherit;flex-direction:column;justify-content:center;align-items:center;text-decoration:none;display:flex}.home-daily-summary-stat-value{font-size:1.6rem;font-weight:700}.home-daily-summary-stat-label{color:var(--color-muted);font-size:.75rem}.home-daily-summary-stat-placeholder{color:var(--color-muted)}.home-daily-summary-stat-group{flex-direction:column;align-items:center;display:flex}.home-daily-summary-substat{min-height:44px;padding:0 var(--space-xs);color:var(--color-muted);align-items:center;font-size:.75rem;text-decoration:underline;display:flex}.home-daily-summary-tabs{margin:0 0 var(--space-md)}.home-daily-summary-panels{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;scrollbar-width:none;grid-auto-columns:100%;grid-auto-flow:column;display:grid;overflow-x:auto}.home-daily-summary-panels::-webkit-scrollbar{display:none}.home-daily-summary-panel{scroll-snap-align:start;scroll-snap-stop:always;min-width:0}.home-daily-summary-panel-hint{text-align:center;margin:0;font-size:.75rem}@media(prefers-reduced-motion:reduce){.home-daily-summary-panels{scroll-behavior:auto}}.home-sections{gap:var(--space-lg);flex-direction:column;display:flex}.home-greeting{margin-bottom:var(--space-md)}.home-greeting-line{color:var(--color-muted);margin:0;font-size:.85rem}.home-greeting-date{margin:0;font-size:1.35rem;line-height:1.25}@media(max-width:640px){.home-greeting{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.home-greeting-line{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.home-greeting-date{flex-shrink:0}}.home-today{gap:var(--space-sm);margin-bottom:var(--space-md);flex-direction:column;display:flex}.metric-tiles{gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.metric-tiles--2{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-tiles--1{grid-template-columns:minmax(0,1fr)}.metric-tile{min-width:0;min-height:3.5rem;padding:var(--space-sm);border:2px solid var(--color-frame);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-muted);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;align-items:stretch;gap:.1rem;display:flex}.metric-tile:active{background:var(--color-primary-100)}.metric-tile:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.metric-tile[aria-selected=true]{background:var(--gradient-tile-active),var(--color-band);color:var(--color-on-primary);border-color:#0000}.metric-tile[aria-selected=true]:focus-visible{outline-color:var(--color-on-primary)}.metric-tile-head{justify-content:space-between;align-items:center;gap:var(--space-xs);min-width:0;display:flex}.metric-tile-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.75rem;font-weight:700;overflow:hidden}.metric-tile-icon{width:20px;height:20px;color:var(--color-primary-700);flex-shrink:0}.metric-tile[aria-selected=true] .metric-tile-icon{color:var(--color-on-primary)}.metric-tile-figure{color:var(--color-primary-900);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.35rem;font-weight:700;line-height:1.2}.metric-tile-figure small{font-size:.7em;font-weight:600}.metric-tile--needs .metric-tile-figure{color:var(--color-danger-fg)}.metric-tile[aria-selected=true] .metric-tile-figure{color:var(--color-on-primary)}.metric-tile-caption{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.metric-tiles--phone{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-tiles--phone .metric-tile{min-height:44px;padding:var(--space-xs) var(--space-sm);gap:0}.metric-tiles--phone .metric-tile-figure{line-height:1.1}.metric-tiles--phone .metric-tile-caption{display:none}.detail-panel{gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-lg);background:var(--color-panel);color:var(--color-on-panel);grid-template-columns:minmax(0,1fr);display:grid;position:relative;overflow-x:hidden}.detail-panel-main,.detail-panel-body{gap:var(--space-sm);flex-direction:column;min-width:0;display:flex}@media(max-width:640px){.detail-panel{height:var(--detail-panel-height);grid-template-rows:minmax(0,1fr)}.detail-panel--with-strip{grid-template-rows:auto minmax(0,1fr)}.detail-panel-main{min-height:0}.detail-panel-body,.detail-panel>.your-day{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow-y:auto}.detail-panel .route-timeline{max-height:none;overflow-y:visible}}.detail-panel-heading{color:var(--color-on-panel-muted);margin:0;font-size:.8rem;font-weight:700}.detail-panel-headline{color:var(--color-on-panel);font-variant-numeric:tabular-nums;margin:0;font-size:1.15rem;font-weight:700}.detail-panel-headline-link{text-underline-offset:3px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-self:flex-start;align-items:center;min-height:44px;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.detail-panel-headline-link:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px;border-radius:var(--radius-xs)}.detail-panel-muted{color:var(--color-on-panel-muted);margin:0}.detail-panel-link{min-height:44px;color:var(--color-on-panel);text-underline-offset:3px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;align-self:flex-start;align-items:center;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.detail-panel-link:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px;border-radius:var(--radius-xs)}.detail-panel-lines{margin:0;padding:0;list-style:none}.detail-panel-lines>li{align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;display:flex}.detail-panel-lines>li+li{border-top:1px solid var(--color-panel-line)}.detail-panel-line-word{flex:auto}.detail-panel-line-figure{font-variant-numeric:tabular-nums;font-weight:700}.detail-panel-line-figure small{color:var(--color-on-panel-muted);font-weight:600}.detail-panel-dot{border-radius:var(--radius-round);flex:none;width:.6rem;height:.6rem}.detail-panel-dot--here{background:var(--color-panel-meter)}.detail-panel-dot--pending{background:var(--color-panel-now)}.detail-panel-dot--absent{background:var(--color-danger-bg)}.detail-panel-list{max-height:var(--route-timeline-height);overscroll-behavior:contain;margin:0;padding:0;list-style:none;overflow-y:auto}.detail-panel-list:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.detail-panel-list>li+li{border-top:1px solid var(--color-panel-line)}.detail-panel-item{align-items:center;gap:var(--space-sm);min-height:44px;padding:var(--space-xs) 0;color:inherit;text-decoration:none;display:flex}.detail-panel-item--link{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.detail-panel-item--link:active{background:var(--color-panel-control)}.detail-panel-item--link:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:-3px}.detail-panel-item-text{flex-direction:column;flex:auto;min-width:0;display:flex}.detail-panel-item-title{text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.detail-panel-item-detail{color:var(--color-on-panel-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.detail-panel-pill{padding:.1rem var(--space-sm);border-radius:var(--radius-full);white-space:nowrap;flex:none;font-size:.75rem;font-weight:700}.detail-panel-pill--warn{background:var(--color-warning-bg);color:var(--color-warning-fg)}.detail-panel-pill--danger{background:var(--color-danger-bg);color:var(--color-danger-fg)}.detail-panel-action{min-height:44px;padding:0 var(--space-lg);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-primary-900);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;justify-content:center;align-self:flex-start;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.detail-panel-action:active{background:var(--color-primary-100)}.detail-panel-action:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.detail-panel-error{gap:var(--space-sm);flex-direction:column;display:flex}.detail-panel-error p{margin:0;font-weight:600}.route-picker{gap:var(--space-sm);grid-column:1/-1;grid-template-columns:minmax(0,42fr) minmax(0,58fr);display:grid}.route-picker-button,.route-picker-box{align-content:center;column-gap:var(--space-xs);min-width:0;min-height:48px;padding:2px var(--space-sm);border-radius:var(--radius-sm);color:var(--color-on-panel);font:inherit;text-align:left;background:0 0;border:1px solid #0000;grid-template-columns:minmax(0,1fr) auto;display:grid}.route-picker-button--department,.route-picker-box--department{background:var(--color-panel-deep)}.route-picker-button--foreman,.route-picker-box--foreman{border-color:var(--color-panel-control-border)}.route-picker-button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.route-picker-button:active{background:var(--color-panel-control)}.route-picker-button:focus-visible,.route-picker-option:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.route-picker-label{color:var(--color-on-panel-muted);white-space:nowrap;grid-column:1;font-size:.5rem;font-weight:700;line-height:1.3}.route-picker-button--department .route-picker-label,.route-picker-box--department .route-picker-label{color:var(--color-panel-meter)}.route-picker-name{white-space:nowrap;grid-column:1;font-size:.65rem;font-weight:800;line-height:1.25}.route-picker-chevron{grid-area:1/2/span 2;font-size:.65rem}.route-picker-list{top:calc(var(--space-md) + 48px + var(--space-xs));right:var(--space-md);bottom:var(--space-md);left:var(--space-md);z-index:var(--z-raised-top);gap:var(--space-xs);padding:var(--space-xs);overscroll-behavior:contain;border:1px solid var(--color-panel-control-border);border-radius:var(--radius-md);background:var(--color-panel-deep);flex-direction:column;margin:0;list-style:none;display:flex;position:absolute;overflow-y:auto}.route-picker-option{width:100%;min-height:44px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);color:var(--color-on-panel);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;align-items:flex-start;display:flex}.route-picker-option:active{background:var(--color-panel-control)}.route-picker-option[aria-current=true]{background:var(--color-primary-100);color:var(--color-panel-deep)}.route-picker-option-name{white-space:nowrap;font-weight:800}.route-picker-option-line{color:var(--color-on-panel-muted);font-size:.75rem}.route-picker-option[aria-current=true] .route-picker-option-line{color:var(--color-panel-deep)}.route-timeline{max-height:var(--route-timeline-height);overscroll-behavior:contain;flex-direction:column;display:flex;overflow-y:auto}.route-timeline:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.route-stops{flex-direction:column;gap:18px;margin:0;padding:0;list-style:none;display:flex}.route-stop{border:1.5px solid var(--color-panel-meter);border-radius:10px;flex-direction:column;padding:6px 10px;display:flex;position:relative}.route-stop+.route-stop:before{content:"↓";color:var(--color-panel-meter);font-size:14px;line-height:1;position:absolute;top:-17px;left:50%;transform:translate(-50%)}.route-stop--now{border-color:var(--color-panel-now);background:var(--color-panel-deep)}.route-stop--finished{border-color:var(--color-panel-line)}.route-stop-word{color:var(--color-on-panel-muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:750}.route-now{color:var(--color-panel-now)}.route-stop--now .route-stop-place{font-weight:800}.route-stop-place{overflow-wrap:anywhere}.route-completed{border-top:1px solid var(--color-panel-line);margin-top:10px;padding-top:10px}.panel-list-title{margin:0 0 var(--space-xs);color:var(--color-on-panel);white-space:nowrap;font-size:.85rem;font-weight:800}.panel-list-count{color:var(--color-on-panel-muted)}.route-done{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.route-done-item{border:1.5px solid var(--color-panel-line);border-radius:10px;flex-direction:column;padding:6px 10px;display:flex}.route-done-tag{color:var(--color-on-panel-muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:750}.route-done-place{overflow-wrap:anywhere;font-weight:600}.panel-stepper{justify-content:space-between;align-items:center;gap:var(--space-sm);padding-top:var(--space-xs);border-top:1px solid var(--color-panel-line);flex-shrink:0;display:flex}.panel-stepper-button{border:1px solid var(--color-panel-control-border);border-radius:var(--radius-sm);background:var(--color-panel-deep);min-width:44px;min-height:44px;color:var(--color-on-panel);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-size:1.2rem;line-height:1}.panel-stepper-button:active{background:var(--color-panel-control)}.panel-stepper-button:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.panel-stepper-position{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.detail-panel--with-day{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}@media(min-width:1081px){.detail-panel--with-day{grid-template-columns:minmax(0,1fr) 22rem}}.your-day{gap:var(--space-sm);min-width:0;padding:var(--space-sm);border-radius:var(--radius-md);background:var(--color-panel-deep);flex-direction:column;display:flex}.your-day-head{justify-content:space-between;align-items:center;gap:var(--space-xs);min-width:0;display:flex}.your-day-switch{align-items:center;gap:var(--space-xs);min-width:0;min-height:44px;padding:0 var(--space-xs);border-radius:var(--radius-sm);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;font-family:inherit;display:inline-flex}.your-day-title{align-items:center;min-height:44px;margin:0;display:flex}.your-day-switch:active{background:var(--color-panel-control)}.your-day-switch:focus-visible,.your-day-add:focus-visible,.your-day-list-option:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.your-day-switch-chevron{font-size:.65rem}.your-day-add{width:44px;height:44px;margin:calc(-1 * var(--space-xs));color:var(--color-on-panel);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.your-day-add:disabled{cursor:default;opacity:.5}.your-day-add-circle{border:1.5px solid var(--color-panel-meter);border-radius:var(--radius-round);justify-content:center;align-items:center;width:22px;height:22px;font-weight:800;line-height:1;display:inline-flex}.your-day-lists{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.your-day-list-option{width:100%;min-height:44px;padding:0 var(--space-sm);border-radius:var(--radius-sm);background:var(--color-panel-control);color:var(--color-on-panel);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;justify-content:space-between;align-items:center;font-weight:700;display:flex}.your-day-list-option[aria-current=true]{background:var(--color-primary-100);color:var(--color-panel-deep)}.your-day-list-option-count{font-variant-numeric:tabular-nums}.your-day-muted{color:var(--color-on-panel-muted);margin:0;font-size:.85rem}.your-day-list{overscroll-behavior:contain;flex-direction:column;gap:4px;max-height:7.7rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.your-day-list:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.your-day-item{border:1.5px solid var(--color-panel-line);min-height:44px;color:var(--color-on-panel);border-radius:10px;flex-direction:column;padding:6px 10px;display:flex}.your-day-item--button{width:100%;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0}.your-day-item--button:active{background:var(--color-panel-control)}.your-day-item--button:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:-3px}.your-day-tag{color:var(--color-on-panel-muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:700}.your-day-text{overflow-wrap:anywhere}.your-day-more{color:var(--color-on-panel-muted);margin:0;font-size:.75rem}.your-day--panel{background:0 0;padding:0}.your-day--panel .your-day-list{max-height:none;overflow-y:visible}.reminder-sheet{gap:var(--space-md);flex-direction:column;display:flex}.reminder-sheet-title{margin:0}.reminder-sheet-when,.reminder-sheet-remind{gap:var(--space-sm);flex-wrap:wrap;display:flex}.reminder-sheet-hint{color:var(--color-text-secondary);margin:0}.cal-header-row{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.cal-month-nav{align-items:center;gap:var(--space-sm);display:flex}.cal-month-step{min-width:44px;min-height:44px;padding:0;font-size:1.4rem;line-height:1}.cal-month-label{text-align:center;min-width:9rem;font-weight:600}.cal-grid{margin-top:var(--space-md);grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.cal-grid-weekday{text-align:center;color:var(--color-text-secondary);padding-bottom:var(--space-xs);font-size:.75rem}.cal-day{min-width:44px;min-height:48px;padding:var(--space-xs) 0;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:1px solid #0000;flex-direction:column;justify-content:flex-start;align-items:center;gap:2px;display:flex}.cal-day--outside{color:var(--color-text-secondary);background:0 0}.cal-day--today .cal-day-number{outline:2px solid var(--color-primary-700);outline-offset:1px;border-radius:999px}.cal-day[aria-pressed=true]{border-color:var(--color-primary-700);background:var(--color-primary-50)}.cal-day-number{min-width:1.6em;font-size:.9rem;line-height:1.6}.cal-day-dots{align-items:center;gap:2px;min-height:.45rem;display:flex}.cal-day-more{font-size:.65rem;line-height:1}.cal-dot{background:var(--color-cal-event);border-radius:999px;flex:none;width:.45rem;height:.45rem;display:inline-block}.cal-dot--meeting{background:var(--color-cal-meeting)}.cal-dot--holiday{background:var(--color-cal-holiday)}.cal-dot--task{background:var(--color-cal-task)}.cal-dot--people{background:var(--color-cal-people)}.cal-dot--deadline{background:var(--color-cal-deadline)}.cal-dot--anniversary{background:var(--color-cal-anniversary)}.cal-dot--job{background:var(--color-cal-job)}.cal-dot--route{background:var(--color-cal-route)}.cal-filters{margin:var(--space-md) 0 0}.cal-filter,.cal-filter-all{align-items:center;gap:var(--space-xs);white-space:nowrap;flex:none;display:inline-flex}.cal-filter[aria-pressed=false] .cal-dot{opacity:.35}.cal-day-title,.cal-tasks-title{margin:var(--space-lg) 0 var(--space-sm);font-size:1.05rem}.cal-items{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.cal-item{align-items:center;gap:var(--space-sm);width:100%;min-height:48px;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:left;text-decoration:none;display:flex}.cal-item--button{cursor:pointer;touch-action:manipulation}.cal-item-when{min-width:4.5rem;color:var(--color-text-secondary);flex:none;font-size:.85rem}.cal-item-text{flex-direction:column;min-width:0;display:flex}.cal-item-title{overflow-wrap:anywhere}.cal-item-title--done{text-decoration:line-through}.cal-item-sub{color:var(--color-text-secondary);font-size:.8rem}.cal-task{gap:var(--space-sm);display:flex}.cal-task-done{flex:none;min-width:44px}.cal-empty{margin-top:var(--space-md)}.cal-chooser{gap:var(--space-sm);flex-direction:column;display:flex}.cal-invitees{gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-direction:column;margin:0;display:flex}.cal-invitee{align-items:center;gap:var(--space-sm);touch-action:manipulation;min-height:44px;display:flex}.cal-invitee input{width:1.4rem;height:1.4rem}.cal-event-details{gap:var(--space-xs) var(--space-md);grid-template-columns:max-content 1fr;margin:0;display:grid}.cal-event-details dt{color:var(--color-text-secondary)}.cal-event-details dd{overflow-wrap:anywhere;margin:0}.reminder-sheet-more{justify-content:space-between;gap:var(--space-lg);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-divider);flex-wrap:wrap;display:flex}.detail-panel-announce{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home-section-divider{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.home-section-divider:before,.home-section-divider:after{content:"";background:var(--color-divider);flex:1;height:1px}.home-section-divider span{letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);white-space:nowrap;font-size:.7rem;font-weight:600}.section-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.section-card-head{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-lg);background:var(--color-band);color:var(--color-on-primary);display:flex}.section-card-title{margin:0;font-size:1.15rem;font-weight:700}.section-card-note{color:var(--color-on-band-muted);flex-shrink:0;font-size:.85rem}.section-card-body{padding:var(--space-md)}.section-card--form{margin-bottom:var(--space-md);overflow:visible}.section-card--form .section-card-head{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.section-card-toolbar{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-divider);flex-wrap:wrap;display:flex}.section-card-toolbar:empty{display:none}.list-row{align-items:center;gap:var(--space-md);min-height:56px;padding:var(--space-sm) var(--space-md) var(--space-sm) var(--space-lg);color:var(--color-foreground);touch-action:manipulation;-webkit-tap-highlight-color:transparent;text-decoration:none;display:flex;position:relative}.list-row+.list-row{border-top:1px solid var(--color-divider)}.list-row:active{background:var(--color-primary-50)}.list-row:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:-3px}.list-row.is-disabled{opacity:.55;pointer-events:none}.list-row-well{border-radius:var(--radius-sm);background:var(--color-primary-100);flex-shrink:0;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;display:inline-flex}.list-row-icon{width:1.6rem;height:1.6rem;color:var(--color-primary-700)}.list-row-main{flex-direction:column;flex:auto;min-width:0;display:flex}.list-row-label{font-weight:650}.list-row-status{color:var(--color-muted);font-size:.85rem}.list-row-end{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.list-row-badge{min-width:1.4rem;height:1.4rem;padding:0 var(--space-xs);border-radius:var(--radius-full);background:var(--color-badge);color:var(--color-on-badge);text-align:center;font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700;line-height:1.4rem}.list-row-pill{border-radius:var(--radius-full);white-space:nowrap;padding:.1rem .5rem;font-size:.8rem;font-weight:700}.list-row-pill--done{background:var(--color-success-light);color:var(--color-success-fg)}.list-row-pill--progress{background:var(--color-warning-bg);color:var(--color-warning-fg)}.list-row-pill--idle{background:var(--color-meter-track);color:var(--color-foreground)}.list-row-chevron{width:1rem;height:1rem;color:var(--color-muted)}@media(min-width:1081px){.list-row{min-height:48px}}@media screen{:root[data-theme=dark] .card,:root[data-theme=dark] .section-card,:root[data-theme=dark] .metric-tile,:root[data-theme=dark] .detail-panel,:root[data-theme=dark] .summary-panel,:root[data-theme=dark] .home-tile,:root[data-theme=dark] .home-section-bar,:root[data-theme=dark] .pages-sheet,:root[data-theme=dark] .pages-tip{border:1.5px solid var(--color-frame);box-shadow:none}:root[data-theme=dark] .wizard-question-body>.card{box-shadow:none;border:none}:root[data-theme=dark] .pages-tip:after{border-top-color:var(--color-frame)}:root[data-theme=dark] .route-picker-option[aria-current=true],:root[data-theme=dark] .your-day-list-option[aria-current=true],:root[data-theme=dark] .pages-tip-button,:root[data-theme=dark] .contract-status-chip.tone-active,:root[data-theme=dark] .route-board-attn-completed.is-selected,:root[data-theme=dark] .btn.site-status-complete.is-selected{background:var(--color-band);border-color:var(--color-band);color:var(--color-on-primary)}:root[data-theme=dark] .route-picker-option[aria-current=true] .route-picker-option-line{color:var(--color-on-primary)}:root[data-theme=dark] .btn-icon-add:hover,:root[data-theme=dark] .roster-search-fab:hover,:root[data-theme=dark] .picker-option-bubble,:root[data-theme=dark] .picker-option-bubble:hover{background:var(--color-band);color:var(--color-on-primary)}:root[data-theme=dark] .btn.primary:where(:active:not(:disabled)),:root[data-theme=dark] .pages-tip-button:active,:root[data-theme=dark] .picker-option-bubble:active,:root[data-theme=dark] .btn-icon-add:active,:root[data-theme=dark] .roster-search-fab:active,:root[data-theme=dark] .nav-bell:active,:root[data-theme=dark] .waiting-view-all:active{background:var(--color-surface);border-color:var(--color-frame);box-shadow:inset 0 0 0 1.5px var(--color-frame)}:root[data-theme=dark] .panel-stepper-button:active{background:var(--color-band)}:root[data-theme=dark] .filter-chip,:root[data-theme=dark] .route-board-attn-completed,:root[data-theme=dark] .btn.site-status-complete{background:var(--color-surface)}:root[data-theme=dark] .tab{background:var(--color-surface);box-shadow:inset 0 0 0 1px var(--color-frame)}:root[data-theme=dark] .tab.active{background:var(--color-band);box-shadow:none}:root[data-theme=dark] .filter-chip[aria-pressed=true]{background:var(--color-band)}:root[data-theme=dark] .segmented-option.selected{outline-color:var(--color-focus-ring)}:root[data-theme=dark] .assign-proposal-option.selected,:root[data-theme=dark] .route-board-attn-completed,:root[data-theme=dark] .btn.site-status-complete,:root[data-theme=dark] .cal-day[aria-pressed=true],:root[data-theme=dark] .home-arrange-grid.is-over,:root[data-theme=dark] .manual-hours-cell.manual{border-color:var(--color-frame)}:root[data-theme=dark] .notification-card.unread,:root[data-theme=dark] .roster-card.active,:root[data-theme=dark] .board-stop.board-stop--completed,:root[data-theme=dark] .issue-card.issue-owned,:root[data-theme=dark] .renewal-review{border-left-color:var(--color-frame)}:root[data-theme=dark] .notification-card.unread,:root[data-theme=dark] .card.renewal-review,:root[data-theme=dark] .card.board-stop{border-left-width:4px}:root[data-theme=dark] .card.board-stop.board-stop--unfinished{border-left-color:var(--color-unfinished-line)}:root[data-theme=dark] .card.board-stop.board-stop--needs-attention{border-left-color:var(--color-danger)}:root[data-theme=dark] .card.purchase-notice{border:none;border-left:4px solid var(--color-warning-fg);box-shadow:none}:root[data-theme=dark] .week-hours-day.is-open .week-hours-day-track{outline-color:var(--color-frame)}:root[data-theme=dark] .assign-proposal-notice{border-left-color:var(--color-frame)}:root[data-theme=dark] .route-stop,:root[data-theme=dark] .your-day-add-circle{border-color:var(--color-frame)}:root[data-theme=dark] .route-stop--now{border-color:var(--color-panel-now)}:root[data-theme=dark] .metric-tile[aria-selected=true] .metric-tile-figure{color:var(--color-primary-900)}:root[data-theme=dark] .metric-tile--needs[aria-selected=true] .metric-tile-figure{color:var(--color-danger-fg)}:root[data-theme=dark] .metric-tile[aria-selected=true] .metric-tile-icon{color:var(--color-primary-700)}:root[data-theme=dark] .metric-tile[aria-selected=true] .metric-tile-figure small,:root[data-theme=dark] .metric-tile[aria-selected=true] .metric-tile-caption{color:var(--color-muted)}:root[data-theme=dark],:root[data-theme=dark] .layout{background:0 0}:root[data-theme=dark] .layout:before{content:"";height:100dvh;z-index:var(--z-behind);pointer-events:none;background:var(--gradient-page-edge-glow);position:fixed;top:0;right:0;bottom:0;left:0}}.waiting-card{margin-bottom:var(--space-md)}.waiting-card .section-card{border:2px solid var(--color-frame)}.waiting-list{gap:var(--space-xs);padding:var(--space-sm);flex-direction:column;margin:0;list-style:none;display:flex}.waiting-row{align-items:center;column-gap:var(--space-md);min-height:58px;padding:var(--space-sm);border:1.5px solid var(--color-frame);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr) auto;display:grid}.waiting-row-text{flex-direction:column;min-width:0;display:flex}.waiting-row-title{overflow-wrap:anywhere;font-weight:700}.waiting-row-detail{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.waiting-row-button{text-align:center;min-width:6.5rem;text-decoration:none}.waiting-row-none{color:var(--color-muted);font-size:.85rem}.waiting-row-error{margin:var(--space-xs) 0 0;color:var(--color-danger-fg);grid-column:1/-1;font-size:.85rem}.waiting-view-all{min-height:46px;padding:0 var(--space-lg);border-top:1px solid var(--color-divider);background:var(--color-primary-50);color:var(--color-primary-900);touch-action:manipulation;justify-content:space-between;align-items:center;font-weight:800;text-decoration:none;display:flex}.waiting-view-all:after{content:"›";font-size:1.2rem}.waiting-view-all:active{background:var(--color-primary-100)}.waiting-view-all:focus-visible,.waiting-row-button:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:-3px}.waiting-empty{padding:var(--space-md) var(--space-lg);color:var(--color-muted);margin:0}.waiting-more{margin:var(--space-md) 0 0;padding-left:var(--space-lg)}.waiting-more a{touch-action:manipulation;align-items:center;min-height:44px;display:inline-flex}.summary-panel{gap:var(--space-xs);margin-bottom:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);background:var(--color-panel);color:var(--color-on-panel);flex-direction:column;display:flex}.summary-panel-figure{font-variant-numeric:tabular-nums;margin:0;font-size:1.35rem;font-weight:700}.summary-panel-words{color:var(--color-on-panel-muted);margin:0}.home-grid{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media(min-width:640px){.home-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}}.home-tile{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);min-height:6.5rem;padding:var(--space-md);background:var(--gradient-card),var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:inherit;flex-direction:column;text-decoration:none;display:flex;position:relative}.home-tile.is-disabled{opacity:.55;pointer-events:none}.home-tile .nav-badge{top:var(--space-sm);right:var(--space-sm)}.home-tile:hover,.home-tile:active{background:var(--color-primary-100)}.home-tile:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.home-tile-icon{width:48px;height:48px;color:var(--color-primary-700)}.icon-fill{fill:var(--color-primary-200);stroke:none}.home-tile .home-tile-icon{background:var(--color-primary-50);border-radius:var(--radius-md);flex-shrink:0;width:2.2rem;height:2.2rem;padding:.4rem;position:relative}.home-tile-label{text-align:left;-webkit-hyphens:manual;hyphens:manual;overflow-wrap:break-word;font-size:.85rem;font-weight:600;position:relative}.home-tile-label-line{-webkit-hyphens:none;hyphens:none;white-space:nowrap;display:block}@media(min-width:640px){.home-tile{min-height:7rem;padding:var(--space-lg)}}.page.page-tile-hub.has-section-bar{padding-bottom:calc(var(--tab-bar-height) + 2 * var(--space-md) + env(safe-area-inset-bottom))}.home-section-bar{left:max(var(--space-md),env(safe-area-inset-left));right:max(var(--space-md),env(safe-area-inset-right));bottom:calc(var(--space-md) + env(safe-area-inset-bottom));z-index:var(--z-nav);padding:var(--space-xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);touch-action:none;overscroll-behavior:none;flex-direction:column;display:flex;position:fixed}.home-section-bar-handle{min-height:44px;padding:0 var(--space-sm);border-radius:var(--radius-md);color:var(--color-muted);font:inherit;cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.7rem;font-weight:700;line-height:1.2;display:flex;position:relative}.home-section-bar-handle:active{background:var(--color-primary-100)}.home-section-bar-handle:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:-3px}.home-section-bar-grab{border-radius:var(--radius-full);background:var(--color-border-input);width:44px;height:5px;display:block}.home-section-bar-handle-label{align-items:center;gap:var(--space-xs);white-space:nowrap;display:inline-flex}.home-section-bar-handle-chevron{font-size:.9em;line-height:1}.home-section-bar-handle.is-nudging .home-section-bar-grab{animation:1.6s ease-in-out 3 section-bar-nudge}@keyframes section-bar-nudge{0%,60%,to{transform:none}30%{transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){.home-section-bar-handle.is-nudging .home-section-bar-grab{animation:none}}.home-section-bar-handle .nav-badge{top:2px;right:2px}.pages-sheet-scrim{z-index:var(--z-pages-sheet);background:var(--color-scrim-pages);opacity:0;visibility:hidden;transition:opacity var(--sheet-motion-ms) var(--sheet-motion-ease),visibility 0s linear var(--sheet-motion-ms);position:fixed;top:0;right:0;bottom:0;left:0}.pages-sheet-scrim[data-state=half],.pages-sheet-scrim[data-state=full]{visibility:visible;transition:opacity var(--sheet-motion-ms) var(--sheet-motion-ease)}.pages-sheet-scrim[data-state=half]{opacity:.3}.pages-sheet-scrim[data-state=full]{opacity:.6}.pages-sheet{z-index:var(--z-pages-sheet);height:calc(100dvh - env(safe-area-inset-top));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);background:var(--color-primary-50);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-md);visibility:hidden;transition:transform var(--sheet-motion-ms) var(--sheet-motion-ease),visibility 0s linear var(--sheet-motion-ms);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.pages-sheet[data-state=half],.pages-sheet[data-state=full]{visibility:visible;transition:transform var(--sheet-motion-ms) var(--sheet-motion-ease)}.pages-sheet[data-state=half]{transform:translateY(max(0px,calc(100% - var(--sheet-half-height))))}.pages-sheet[data-state=full]{transform:translateY(0)}.pages-sheet.is-dragging{transition:none}@media(prefers-reduced-motion:reduce){.pages-sheet,.pages-sheet-scrim{transition:none}}.pages-sheet-head{align-items:center;gap:var(--space-sm);padding:var(--space-lg) var(--space-md) var(--space-sm) var(--space-lg);cursor:grab;touch-action:none;grid-template-columns:minmax(0,1fr) 44px;display:grid;position:relative}.pages-sheet-grab{top:var(--space-sm);border-radius:var(--radius-full);background:var(--color-border-input);width:44px;height:5px;margin-left:-22px;position:absolute;left:50%}.pages-sheet-titles{min-width:0}.pages-sheet-title{margin:0;font-size:1.15rem;font-weight:800;line-height:1.2}.pages-sheet-hint{color:var(--color-muted);margin:0;font-size:.75rem}.pages-sheet-close{border-radius:var(--radius-full);background:var(--color-surface);width:44px;height:44px;color:var(--color-foreground);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:none;justify-content:center;align-items:center;font-size:1.4rem;line-height:1;display:inline-flex}.pages-sheet-close:active{background:var(--color-primary-100)}.pages-sheet-close:focus-visible,.pages-sheet-jump:focus-visible,.pages-sheet-tile:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.pages-sheet-jumps{gap:var(--space-sm);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-x;padding:var(--space-sm) var(--space-md);flex-shrink:0;display:flex;overflow-x:auto}.pages-sheet-jump{align-items:center;gap:var(--space-xs);min-height:44px;padding:0 var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-foreground);font:inherit;white-space:nowrap;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-shrink:0;font-size:.75rem;font-weight:800;display:inline-flex;position:relative}.pages-sheet-jump:active{background:var(--color-primary-100)}.pages-sheet-jump-icon{flex-shrink:0;width:20px;height:20px}.pages-sheet-jump .nav-badge{top:-6px;right:-4px}.pages-sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;padding:0 var(--space-md) var(--space-lg);flex:1;overflow-y:auto}.pages-sheet-grid{gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.pages-sheet-tile.home-tile{gap:var(--space-xs);min-height:76px;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:none}.pages-sheet-tile.home-tile .home-tile-label{font-size:.75rem;font-weight:700}.pages-sheet-section{margin-top:var(--space-lg)}.pages-sheet-section-title{margin:0 0 var(--space-sm);color:var(--color-muted);font-size:.85rem;font-weight:800}.pages-sheet-foot{align-items:center;gap:var(--space-sm);margin-top:var(--space-lg);text-align:center;flex-direction:column;display:flex}.pages-tip{left:max(var(--space-lg),env(safe-area-inset-left));right:max(var(--space-lg),env(safe-area-inset-right));bottom:calc(var(--tab-bar-height) + 2 * var(--space-md) + env(safe-area-inset-bottom));z-index:var(--z-nav);align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-panel-deep);color:var(--color-on-panel);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:flex;position:fixed}.pages-tip:after{content:"";border:8px solid #0000;border-top-color:var(--color-panel-deep);border-bottom:0;margin-left:-8px;position:absolute;bottom:-8px;left:50%}.pages-tip-text{flex:1;margin:0;font-size:.85rem;line-height:1.35}.pages-tip-button{min-height:44px;padding:0 var(--space-md);border-radius:var(--radius-md);background:var(--color-primary-100);color:var(--color-panel-deep);font:inherit;cursor:pointer;touch-action:manipulation;border:none;flex-shrink:0;font-weight:800}.pages-tip-button:active{background:var(--color-primary-50)}.pages-tip-button:focus-visible{outline:3px solid var(--color-on-panel);outline-offset:2px}.home-arrange-entry{align-items:center;gap:var(--space-sm);margin-top:var(--space-lg);text-align:center;flex-direction:column;display:flex}.home-arrange-hint{margin:0 0 var(--space-md)}.home-arrange-section-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.home-arrange-label-input{min-width:0;min-height:44px;padding:.4rem var(--space-md);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;flex:1;font-size:1rem}.home-arrange-label-input.is-invalid{border-color:var(--color-danger);outline:2px solid var(--color-danger);outline-offset:-1px}.home-arrange-icon-btn{flex-shrink:0;min-width:44px;padding-inline:0}.home-arrange-grid{min-height:6.5rem;padding:var(--space-sm);border:2px dashed var(--color-border);border-radius:calc(var(--radius-lg) + 2px)}.home-arrange-grid.is-over{border-color:var(--color-primary-700);background:var(--color-primary-100)}.home-arrange-empty{text-align:center;color:var(--color-muted);grid-column:1/-1;align-self:center;margin:0}.home-tile.home-tile-arranging{width:100%;font:inherit;cursor:grab;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.home-tile.home-tile-arranging.is-lifted{cursor:grabbing;box-shadow:var(--shadow-lifted);background:var(--color-primary-100)}.home-arrange-tile{display:flex;position:relative}.home-arrange-tile.is-lifted{z-index:var(--z-raised)}.home-arrange-unpin{border-radius:0 var(--radius-lg) 0 var(--radius-lg);background:var(--color-border);width:44px;height:44px;color:var(--color-foreground);cursor:pointer;touch-action:manipulation;border:none;justify-content:center;align-items:center;font-size:1rem;display:flex;position:absolute;top:0;right:0}.home-arrange-add-tile{width:100%;margin-top:var(--space-sm);display:block}.add-home-tile-group+.add-home-tile-group{margin-top:var(--space-md)}.add-home-tile-list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.add-home-tile-option{align-items:center;gap:var(--space-md);width:100%;min-height:48px;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;display:flex}.add-home-tile-option .home-tile-icon{flex-shrink:0;width:32px;height:32px}.add-home-tile-option .home-tile-label{text-align:left}.home-arrange-add{width:100%;margin-top:var(--space-lg);display:block}.home-arrange-bar{z-index:var(--z-raised-top);gap:var(--space-sm);margin-top:var(--space-lg);padding:var(--space-md) var(--space-md) calc(var(--space-md) + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);box-shadow:var(--shadow-bar-top);display:flex;position:sticky;bottom:0}.home-arrange-bar .btn{touch-action:manipulation;flex:1}.push-banner{margin:var(--space-md) var(--space-md) 0;padding:var(--space-md);gap:var(--space-sm);flex-direction:column;display:flex}.push-banner-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.notifications-header{gap:var(--space-sm);flex-direction:column;display:flex}.notifications-header-actions{gap:var(--space-sm);flex-wrap:wrap;display:flex}.notification-settings{margin-bottom:var(--space-md);gap:var(--space-sm);flex-direction:column;display:flex}.notification-preference-grid,.profile-background-options,.profile-theme-options,.pa-role-grid,.pa-user-list,.pa-target-options{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));display:grid}.notification-list{gap:var(--space-sm);flex-direction:column;display:flex}.notification-card{gap:var(--space-sm);align-items:stretch;display:flex}.notification-card.unread{border-left:4px solid var(--color-primary-700)}.notification-card-main{text-align:left;padding:var(--space-md);touch-action:manipulation;background:0 0;border:0;flex:1}.notification-card-meta{gap:var(--space-sm);margin-bottom:var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.notification-dismiss{margin-right:var(--space-sm);align-self:center}.notification-card.dismissed{opacity:.55}.notification-card-body{white-space:pre-line}.badge-muted{color:var(--color-muted);font-size:.75rem;font-style:italic}.pa-compose-dialog>h2{margin-bottom:var(--space-md)}.pa-compose-dialog .dialog-scroll-body{gap:var(--space-md);flex-direction:column;display:flex}.pa-compose-dialog .field:has(textarea){flex-direction:column;flex-shrink:0;margin-bottom:0;display:flex}.pa-compose-dialog .field:has(textarea) span{margin-bottom:var(--space-xs)}.pa-compose-dialog .field textarea{resize:none;flex:none;min-height:5rem;max-height:8rem}.pa-target-fieldset{border:none;flex-shrink:0;min-width:0;margin:0;padding:0}.pa-target-fieldset legend{margin-bottom:var(--space-xs);padding:0;font-weight:600}.pa-compose-dialog .pa-target-fieldset{flex-direction:column;min-height:0;display:flex}.pa-compose-dialog .pa-target-fieldset legend{margin-bottom:var(--space-sm)}.pa-compose-dialog .pa-user-list{-webkit-overflow-scrolling:touch;max-height:min(40vh,20rem);overflow-y:auto}.pa-compose-dialog .pa-user-list .btn.reason{width:100%;padding:var(--space-sm) var(--space-md);text-align:center;flex:none;justify-content:center;align-items:center;line-height:1.25;display:inline-flex}.pa-compose-dialog .pa-user-list .btn.reason.selected{box-shadow:inset 0 0 0 2px var(--color-primary-800);outline:none}.pa-compose-dialog>.dialog-actions{margin-top:var(--space-sm);padding-top:var(--space-xs)}.pa-compose-dialog .dialog-actions .btn{white-space:nowrap}.pa-compose-confirm{gap:var(--space-sm);flex-direction:column;margin:0;display:flex}.pa-compose-confirm>p{margin:0}.stage-confirm-dialog .dialog-scroll-body>.sub:first-child{margin-top:0}.stage-confirm-dialog .dialog-scroll-body .confirm-summary{margin-bottom:0}@media(max-width:1080px){.lock-panel{padding:max(var(--space-md),env(safe-area-inset-top)) max(var(--space-md),env(safe-area-inset-right)) max(var(--space-md),env(safe-area-inset-bottom)) max(var(--space-md),env(safe-area-inset-left))}.dialog-backdrop,.confirm-backdrop{padding:max(var(--space-md),env(safe-area-inset-top)) max(var(--space-md),env(safe-area-inset-right)) max(var(--space-md),env(safe-area-inset-bottom)) max(var(--space-md),env(safe-area-inset-left));align-items:flex-start}.dialog-fit{max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 2 * var(--space-md))}.dialog-fit .dialog-actions .btn,.dialog-fit .form-actions .btn{min-height:48px}.dialog-backdrop:has(.pa-compose-dialog),.dialog-backdrop:has(.move-property-dialog){align-items:stretch;padding:0}.move-property-dialog.dialog-fit{width:100%;max-width:none;max-height:100dvh;box-shadow:none;padding-top:max(var(--space-xl),env(safe-area-inset-top));padding-right:max(var(--space-lg),env(safe-area-inset-right));padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom));padding-left:max(var(--space-lg),env(safe-area-inset-left));border:none;border-radius:0}.pa-compose-dialog.dialog-fit{width:100%;max-width:none;height:auto;min-height:0;max-height:100dvh;box-shadow:none;padding-top:max(var(--space-xl),env(safe-area-inset-top));padding-right:max(var(--space-lg),env(safe-area-inset-right));padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom));padding-left:max(var(--space-lg),env(safe-area-inset-left));border:none;border-radius:0;margin-bottom:0}.pa-compose-dialog .pa-target-fieldset{flex:auto;min-height:8rem}.pa-compose-dialog .pa-user-list{flex:auto;grid-template-columns:1fr;min-height:0;max-height:none}}@media screen and (max-width:1080px){:root[data-theme=dark] .move-property-dialog.dialog-fit,:root[data-theme=dark] .pa-compose-dialog.dialog-fit{border:none}}.notification-history{margin-top:var(--space-lg)}.notification-history h2{margin-bottom:var(--space-md)}.notification-history-list{gap:var(--space-sm);flex-direction:column;display:flex}.notification-history-card{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.notification-history-card-actions{padding:var(--space-sm) var(--space-md) 0;justify-content:flex-end;display:flex}.notification-history-card-main{text-align:left;width:100%;padding:var(--space-md);cursor:pointer;gap:var(--space-xs);background:0 0;border:0;flex-direction:column;display:flex}.notification-history-card-main:hover{background:var(--color-surface-hover)}.notification-history-card-header{justify-content:space-between;align-items:baseline;gap:var(--space-sm);display:flex}.notification-history-title{font-weight:600}.notification-history-meta{color:var(--color-muted);white-space:nowrap;font-size:.85rem}.notification-history-body{color:var(--color-text-secondary);white-space:pre-line;margin:0;font-size:.9rem}.notification-history-footer{justify-content:space-between;align-items:center;gap:var(--space-sm);color:var(--color-muted);font-size:.8rem;display:flex}.notification-history-recipients{padding:var(--space-sm) var(--space-md) var(--space-md);border-top:1px solid var(--color-border);background:var(--color-surface)}.notification-history-recipients h3{margin-bottom:var(--space-xs);font-size:.85rem;font-weight:600}.notification-recipient-list{gap:var(--space-xs) var(--space-sm);flex-wrap:wrap;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.notification-recipient-list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm)}.language-switcher{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.language-switcher .btn.reason{flex:8rem;min-height:48px}.login-header{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:1rem;display:flex}.login-header .language-switcher{margin-top:0}.profile-language-heading{margin:1rem 0 0;font-size:1rem;font-weight:600}.rollcall-compact-header{align-items:center;gap:var(--space-sm);flex-wrap:wrap;min-height:44px;display:flex}.rollcall-compact-header .back{flex-shrink:0}.rollcall-hub-title{white-space:nowrap;margin:0;font-size:1.1rem}.rollcall-inline-search{min-width:6rem;padding:var(--space-xs) var(--space-sm);flex:1;margin:0;font-size:.9rem}.rollcall-status-badge{color:var(--color-warning-fg);background:var(--color-warning-bg);border-radius:var(--radius-sm);white-space:nowrap;padding:.15rem .5rem;font-size:.85rem;font-weight:600}.roster-card.clickable{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .1s}.roster-card.clickable:hover{background:var(--color-surface-hover)}.roster-card.clickable.complete{opacity:.7}.picker-sticky-footer{background:var(--color-surface);padding-top:var(--space-sm);border-top:1px solid var(--color-border);flex-shrink:0;margin-top:auto;position:sticky;bottom:0}.planned-clock-in-confirm{margin-bottom:var(--space-sm);touch-action:manipulation}@media(min-width:768px)and (min-height:600px){.rollcall-split-page.page{max-width:64rem}.rollcall-split-layout{gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:start;display:grid}.rollcall-picker-col{--rollcall-picker-top:calc(var(--sticky-header-height,5rem) + var(--space-md));--rollcall-picker-max-height:max(8rem, calc(100dvh - var(--nav-bottom, calc(4rem + env(safe-area-inset-top)) ) - var(--rollcall-picker-top) - var(--space-lg) - env(safe-area-inset-bottom)));top:var(--rollcall-picker-top);max-height:var(--rollcall-picker-max-height);-webkit-overflow-scrolling:touch;position:sticky;overflow:auto}.rollcall-picker-panel{padding:var(--space-lg)}.rollcall-picker-panel .inline-picker-panel{max-height:calc(var(--rollcall-picker-max-height) - 2 * var(--space-lg) - 2px);border-top:none;margin-top:0;padding-top:0}.rollcall-picker-empty{border:2px dashed var(--color-border);border-radius:var(--radius-lg);min-height:12rem;padding:var(--space-xl);text-align:center;justify-content:center;align-items:center;display:flex}.roster-card.active{border-left:3px solid var(--color-primary-700);background:var(--color-primary-50)}}@media(max-width:767px),(max-height:599px){.rollcall-split-layout{display:block}}.manual-hours-table-wrap{-webkit-overflow-scrolling:touch;margin-top:var(--space-md);overflow-x:auto}.manual-hours-table{border-collapse:collapse;width:100%;min-width:48rem}.manual-hours-table th,.manual-hours-table td{text-align:center;vertical-align:middle;padding:.25rem}.manual-hours-table th[scope=row]{text-align:left;white-space:nowrap;padding-right:.75rem}.manual-hours-date{color:var(--color-muted);font-size:.85em;font-weight:400;display:block}.manual-hours-special-col{touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:100%;min-height:44px;margin:.35rem auto 0;padding:.25rem .4rem;font-size:.8rem;display:block}.manual-hours-cell{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;width:100%;min-width:44px;min-height:44px;display:flex}.manual-hours-cell.manual{border-color:var(--color-primary-700)}.manual-hours-cell.absence{text-align:center;overflow-wrap:anywhere;padding:.25rem;font-size:.8rem;line-height:1.2}.manual-hours-badge{color:var(--color-primary-900);font-size:.7rem;font-weight:600}.manual-hours-badge.pto{display:block}.manual-hours-badge.edited{color:var(--color-warning-fg);display:block}.manual-hours-badge.pending{color:var(--color-warning-fg);font-style:italic;display:block}.manual-hours-badge.withheld{color:var(--color-danger-text);display:block}.manual-hours-badge.kept{display:block}.manual-hours-request{margin:var(--space-md) 0;padding:var(--space-md);border-left:4px solid var(--color-warning-fg);background:var(--color-warning-bg);border-radius:var(--radius-md)}.manual-hours-request h3{margin-top:0}.manual-hours-waiting{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-sm) var(--space-md);border-left:4px solid var(--color-warning-fg);background:var(--color-warning-bg);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.clock-out-change-list .roster-card{padding:0}.clock-out-change-row{align-items:center;gap:var(--space-xs) var(--space-md);width:100%;min-height:48px;padding:var(--space-md) var(--space-lg);font:inherit;color:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-wrap:wrap;display:flex}.clock-out-change-name{flex:100%;font-weight:600}.clock-out-change-pill{border-radius:var(--radius-full);background:var(--color-warning-bg);color:var(--color-warning-fg);margin-left:auto;padding:.1rem .6rem;font-size:.8rem;font-weight:600}.clock-out-change-pending,.clock-out-change-list .clock-out-change-panel{padding:0 var(--space-lg) var(--space-lg);margin:0}.clock-out-change-list .clock-out-change-panel{border-top:none}.clock-out-change-mine{margin:0;padding:0;list-style:none}.clock-out-change-mine-row{justify-content:space-between;gap:var(--space-xs) var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.clock-out-change-mine-row .sub{flex:100%}.clock-out-change-status{font-weight:600}.clock-out-change-mine-row.pending .clock-out-change-status{color:var(--color-warning-fg)}.clock-out-change-mine-row.approved .clock-out-change-status{color:var(--color-success-fg)}.manual-hours-clock-out-was{margin-top:var(--space-xs)}.manual-hours-pto{border-bottom:1px solid var(--color-border);margin:.75rem 0 1rem;padding-bottom:1rem}.manual-hours-pto h3{margin:0 0 .25rem;font-size:1rem}.manual-hours-table tfoot th,.manual-hours-table tfoot td{z-index:var(--z-base);background:var(--color-surface-subtle);position:sticky;bottom:0}.manual-hours-total-cell{background:var(--color-surface-muted);font-weight:700}.manual-hours-start{margin:0 0 .75rem}.manual-hours-start div,.manual-hours-punches div{margin:0}.manual-hours-start dt,.manual-hours-punches dt{color:var(--color-muted);font-size:.85rem}.manual-hours-start dd,.manual-hours-punches dd{min-height:1.5rem;margin:.25rem 0 0;font-size:1rem}.manual-hours-punches{grid-template-columns:1fr 1fr;gap:.75rem;margin:0;display:grid}.manual-hours-suggested-hint{margin:.5rem 0 0}.manual-hours-preview{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin:.75rem 0;padding:.75rem 0}.manual-hours-calc{margin:.75rem 0 0;font-size:.95rem;line-height:1.4}.manual-hours-punches input[type=time]{width:100%;min-height:44px;font-size:var(--input-font-size);touch-action:manipulation}.growth-ring{flex-shrink:0}.growth-ring-track{fill:none;stroke:var(--color-meter-track);stroke-width:11px}.growth-ring-fill{fill:none;stroke:var(--color-accent-text);stroke-width:11px;stroke-linecap:round}.growth-ring-over{fill:none;stroke:var(--color-warning-fg);stroke-width:11px;stroke-linecap:round}.week-hours-summary{align-items:flex-end;gap:var(--space-lg);margin:var(--space-sm) 0;flex-wrap:wrap;display:flex}.week-hours-ring{align-items:center;gap:var(--space-md);display:flex}.week-hours-words p{margin:0}.week-hours-total{font-variant-numeric:tabular-nums;font-weight:700}.week-hours-overtime{margin-top:var(--space-xs);border-radius:var(--radius-full);background:var(--color-warning-bg);color:var(--color-warning-fg);padding:.15rem .5rem;font-size:.85rem;font-weight:700;display:inline-block}.week-hours-chart{align-items:flex-end;gap:var(--space-xs);margin:0;padding:0;list-style:none;display:flex}.week-hours-day{font-variant-numeric:tabular-nums;flex-direction:column;align-items:center;gap:2px;width:2.2rem;font-size:.75rem;display:flex}.week-hours-day-track{border-radius:var(--radius-xs);background:var(--color-meter-track);width:1rem;height:4rem;display:block;position:relative;overflow:hidden}.week-hours-day-bar{background:var(--color-accent-text);display:block;position:absolute;bottom:0;left:0;right:0}.week-hours-day-label{color:var(--color-muted)}.week-hours-day.is-open .week-hours-day-label{color:var(--color-primary-900);font-weight:700}.week-hours-day.is-open .week-hours-day-track{outline:2px solid var(--color-primary-900);outline-offset:1px}.manual-hours-stepper{align-items:center;gap:.5rem;margin:.75rem 0;display:flex}.manual-hours-stepper .btn{min-width:44px;min-height:44px}.manual-hours-stepper input{text-align:center;flex:1;min-height:44px;font-size:1rem}.log-type-choices{flex-direction:column;gap:.75rem;display:flex}.log-type-card{text-align:left;flex-direction:column;align-items:flex-start;gap:.25rem;min-height:72px;padding:.75rem 1rem;display:flex}.log-type-card-title{font-weight:700}.log-type-card-hint{opacity:.75;font-weight:400}.condition-choices{flex-wrap:wrap;gap:.5rem;display:flex}.gas-station-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.gas-station-choices .btn{touch-action:manipulation;min-height:48px}.gas-station-detail{gap:.5rem;margin:0;display:grid}.gas-station-detail dd{margin:0;font-weight:600}.gas-station-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.gas-station-fill{text-align:left;touch-action:manipulation;width:100%;min-height:48px}.gas-station-fill.voided{opacity:.6}.gas-station-receipt-preview{object-fit:contain;border-radius:var(--radius-sm);max-width:100%;max-height:40dvh;display:block}.finding-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.finding-card{border:1px solid var(--color-border-strong);border-radius:var(--radius-finding);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.finding-card-body{flex-direction:column;gap:.15rem;display:flex}.material-count-row{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.material-count-label{flex:auto;min-width:0;font-weight:600}.material-count-row .manual-hours-stepper{flex:none;margin:.25rem 0}.other-material{border-top:1px solid var(--color-divider);padding-top:var(--space-sm)}.material-count-row .manual-hours-stepper input{flex:none;width:3.5rem}.material-count-row input[type=text]{min-width:0;min-height:44px;font-size:var(--input-font-size);touch-action:manipulation;flex:60%}.proposal-type-fieldset{border:0;margin:0;padding:0}@media(min-width:1081px){.proposal-board-queues{align-items:center;gap:var(--space-sm);flex-flow:wrap;display:flex}}.proposal-board-filters{gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.proposal-board-filter{flex:10rem;margin-bottom:0;font-weight:600}.proposal-board-filter select{min-height:44px;margin-top:var(--space-xs);touch-action:manipulation}.proposal-status-chips{gap:var(--space-xs);-webkit-overflow-scrolling:touch;touch-action:pan-x;margin:var(--space-sm) 0 0;flex-wrap:nowrap;display:flex;overflow-x:auto}.proposal-status-chips .tab{white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex:1 0 auto;min-width:4.5rem;min-height:44px;padding-inline:.6rem;position:relative}.proposal-status-chips .tab .nav-badge{top:.1rem;right:.1rem}.proposal-status-chips--wrap{gap:var(--space-sm);touch-action:manipulation;flex-wrap:wrap;overflow-x:visible}.proposal-status-chips--wrap .tab{white-space:normal;flex:auto;min-height:44px}.proposal-board-controls{margin-bottom:var(--space-md)}.proposal-history-filter{margin-top:var(--space-sm);font-weight:600;display:block}.proposal-history-filter input{min-height:44px;font-size:var(--input-font-size);touch-action:manipulation}.proposal-board-card-link{text-align:left;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;gap:.15rem;width:100%;min-height:44px;text-decoration:none;display:flex}.proposal-board-card-link:focus-visible{outline:3px solid var(--color-primary-800);outline-offset:2px}.proposal-board-card-actions{width:100%}.proposal-board-card-actions .btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex:8rem;min-height:48px}.proposal-expiry-countdown{font-weight:600}.proposal-pdf-preview-wrap{gap:var(--space-md);flex-direction:column;display:flex}.proposal-pdf-preview{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);touch-action:manipulation;width:100%;height:70dvh;min-height:320px}.proposal-preview-page .proposal-pdf-preview{height:82dvh}.proposal-photo-picker .row-between{justify-content:space-between;align-items:baseline;display:flex}.proposal-photo-grid{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(96px,1fr));margin:0;padding:0;list-style:none;display:grid}.proposal-photo-cell{aspect-ratio:1;position:relative}.proposal-photo-thumb{object-fit:cover;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt);width:100%;height:100%}.proposal-photo-thumb.is-error{color:var(--color-danger-text);justify-content:center;align-items:center;font-weight:700;display:flex}.proposal-photo-remove{border-radius:var(--radius-round);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;width:24px;height:24px;font-size:16px;line-height:1;position:absolute;top:-8px;right:-8px}.time-wheel{justify-content:center;align-items:flex-end;gap:var(--space-xs);display:flex}.time-wheel-column{align-items:center;gap:var(--space-xs);flex-direction:column;min-width:4.5rem;display:flex}.time-wheel-column-label{color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem}.time-wheel-separator{color:var(--color-muted);padding-bottom:76px;font-size:1.6rem;font-weight:600}.time-wheel-window{border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;height:192px;position:relative;overflow:hidden}.time-wheel-highlight{border-top:1px solid var(--color-primary-900);border-bottom:1px solid var(--color-primary-900);background:var(--color-wheel-band);pointer-events:none;height:48px;z-index:var(--z-base);margin-top:-24px;position:absolute;top:50%;left:0;right:0}.time-wheel-list{z-index:var(--z-raised);scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;height:192px;margin:0;padding:72px 0;list-style:none;position:relative;overflow-y:auto}.time-wheel-list>li{margin:0;padding:0}.time-wheel-item{scroll-snap-align:center;width:100%;height:48px;color:var(--color-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.time-wheel-item.selected{color:var(--color-foreground);font-weight:700}.time-readout{justify-content:center;align-items:baseline;gap:var(--space-xs);letter-spacing:-.01em;font-size:2rem;font-weight:700;display:flex}.duration-readout{text-align:center;font-size:1.1rem;font-weight:600}.duration-readout.warn{color:var(--color-danger-text)}.wizard-progress{gap:var(--space-xs);flex-direction:column;display:flex}.growth-bar{border-radius:var(--radius-full);background:var(--color-meter-track);height:12px;margin-block:5px;display:block;position:relative}.growth-bar-fill{border-radius:var(--radius-full);background:var(--gradient-meter),var(--color-primary-800);display:block;position:absolute;top:0;bottom:0;left:0}.growth-bar-knob{pointer-events:none;width:22px;height:22px;position:absolute;top:-5px}.growth-bar-knob-disc{fill:var(--color-surface);stroke:var(--color-accent-text);stroke-width:2px}.growth-bar-knob.is-done .growth-bar-knob-disc{fill:var(--color-accent-text);stroke:none}.growth-bar-knob-check{fill:none;stroke:var(--color-on-primary);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.plan-tomorrow-progress{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:inline-flex}.plan-tomorrow-progress>.growth-bar{flex:6rem;min-width:6rem;max-width:14rem}.growth-bar--on-dark{background:var(--color-on-dark-wash)}.growth-bar--on-dark .growth-bar-fill{background:var(--color-on-panel)}.growth-bar--on-panel{background:var(--color-panel-track)}.growth-bar--on-panel .growth-bar-fill{background:var(--color-panel-meter)}.rollcall-progress{align-items:center;gap:var(--space-sm);display:inline-flex}.rollcall-progress>.growth-bar{flex-shrink:0;width:6rem}@media(max-width:640px){.rollcall-progress>.growth-bar{width:3rem}}.zones-progress{gap:var(--space-xs);flex-direction:column;display:flex}.zones-progress>.hint{margin:0}.route-stop-tiles{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.route-stop-tile{align-items:center;gap:var(--space-md);width:100%;min-height:64px;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font:inherit;text-align:left;touch-action:manipulation;display:flex}button.route-stop-tile{cursor:pointer}button.route-stop-tile:disabled,.route-stop-tile--done{opacity:.7}.route-stop-tile-order{border-radius:var(--radius-round);background:var(--color-primary-800);width:2rem;height:2rem;color:var(--color-on-primary);flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.route-stop-tile--done .route-stop-tile-order{background:var(--color-border);color:inherit}.route-stop-tile-text{flex-direction:column;flex:auto;min-width:0;display:flex}.route-stop-tile-address{overflow-wrap:anywhere;font-weight:600}.route-stop-tile-status{color:inherit;font-size:.85rem}.route-stop-tile-note{margin-top:var(--space-xs);text-align:left;font-size:.85rem;display:block}.route-stop-tile-note--left{padding-left:var(--space-sm);border-left:3px solid var(--color-unfinished-line);color:var(--color-unfinished-fg)}.route-board-foreman-report{margin:var(--space-xs) 0 0;font-size:.9em;font-weight:600}.route-board-foreman-report--complete{color:var(--color-success)}.route-board-foreman-report--unfinished{color:var(--color-unfinished-fg)}.route-board-foreman-report--needs_attention{color:var(--color-danger-text)}.route-board-clears{display:block}.log-site-status{font-weight:600}.log-site-status--complete{color:var(--color-success)}.log-site-status--unfinished{color:var(--color-unfinished-fg)}.log-site-status--needs_attention{color:var(--color-danger-text)}.route-stop-tile-note--needs_attention{padding-left:var(--space-sm);border-left:3px solid var(--color-danger);color:var(--color-danger-text);font-weight:600}.custom-activity-review{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.custom-activity-review li{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.route-updated-notice{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);padding:var(--space-sm) var(--space-md);border:1px solid var(--color-primary-800);border-radius:var(--radius-md);background:var(--color-surface);font-weight:600;display:flex}.route-updated-notice .btn{flex-shrink:0;min-height:44px}.wizard-question-backdrop{padding:max(var(--space-sm),env(safe-area-inset-top)) env(safe-area-inset-right) 0 env(safe-area-inset-left);touch-action:manipulation;align-items:flex-end}.wizard-question-dialog{border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);width:100%;max-width:32rem;max-height:100%;box-shadow:var(--shadow-md);outline:none;flex-direction:column;display:flex;overflow:hidden}.wizard-question-progress{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-lg);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.wizard-question-backdrop--keyboard-aware{inset:auto}.wizard-question-progress>.wizard-progress{flex:auto}.wizard-question-progress>.btn{flex-shrink:0;margin-inline-start:auto}.wizard-add-item{touch-action:manipulation;border-style:dashed;width:100%;min-height:48px}.wizard-question-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;padding:0 var(--space-lg) env(safe-area-inset-bottom);flex:auto;overflow-y:auto}.wizard-question-body>.card,.wizard-question-body>[data-spray-chem-flow]>.card{padding:var(--space-md) 0 var(--space-lg);box-shadow:none;background:0 0;border:none;border-radius:0;margin:0}.wizard-question-body>.card>.form-actions,.wizard-question-body>[data-spray-chem-flow]>.card>.form-actions{z-index:var(--z-base);margin-inline:calc(-1 * var(--space-lg));padding:var(--space-sm) var(--space-lg);border-top:1px solid var(--color-border);background:var(--color-surface);position:sticky;bottom:0}@media(min-width:768px){.wizard-question-backdrop{padding:max(var(--space-lg),env(safe-area-inset-top)) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-lg),env(safe-area-inset-bottom)) max(var(--space-lg),env(safe-area-inset-left));align-items:center}.wizard-question-dialog{border-radius:var(--radius-lg);max-height:min(92dvh,48rem)}.wizard-question-body{padding-bottom:0}}@media(prefers-reduced-motion:no-preference){.wizard-question-dialog{animation:.18s ease-out wizard-question-in}}@keyframes wizard-question-in{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}.dialog-backdrop.picker-sheet-backdrop{touch-action:manipulation;justify-content:stretch;align-items:stretch;padding:0;inset:auto}.picker-sheet{background:var(--color-surface);outline:none;flex-direction:column;width:100%;height:100%;max-height:100dvh;display:flex;overflow:hidden}.picker-sheet-header{padding:max(var(--space-xs),env(safe-area-inset-top)) max(var(--space-md),env(safe-area-inset-right)) var(--space-xs) max(var(--space-md),env(safe-area-inset-left));border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;display:flex}.picker-sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;padding:var(--space-md) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-lg),env(safe-area-inset-bottom)) max(var(--space-lg),env(safe-area-inset-left));flex:auto;overflow-y:auto}.picker-sheet-body .inline-picker-panel,.picker-sheet-body .absent-panel{border-top:none;max-height:none;margin-top:0;padding-top:0;overflow:visible}.picker-sheet-body .stack>.inline-picker-panel+.inline-picker-panel{padding-top:var(--space-md);border-top:1px solid var(--color-border)}.picker-sheet .form-actions .btn{min-height:48px}.picker-sheet-body>.inline-picker-panel>.form-actions,.picker-sheet-body>.stack>.inline-picker-panel:last-child>.form-actions{z-index:var(--z-base);padding:var(--space-sm) 0;border-top:1px solid var(--color-border);background:var(--color-surface);margin-bottom:0;position:sticky;bottom:0}@media(prefers-reduced-motion:no-preference){.picker-sheet{animation:.18s ease-out wizard-question-in}}.foreman-log-flags{border-left:3px solid var(--color-danger);padding-left:var(--space-sm)}.foreman-log-flag{color:var(--color-danger-text)}.board-stop{border-left:4px solid var(--color-border);padding-left:calc(var(--space-lg) - 4px)}.board-stop.board-stop--completed{border-left-color:var(--color-success)}.board-stop.board-stop--unfinished{border-left-color:var(--color-unfinished-line)}.board-stop.board-stop--needs-attention{border-left-color:var(--color-danger)}.board-status-pill{margin-left:var(--space-xs);border-radius:var(--radius-full);vertical-align:middle;white-space:nowrap;padding:.2rem .5rem;font-size:.7em;font-weight:700;line-height:1.6;display:inline-block}.board-status-pill.board-stop--completed{background:var(--color-success-light);color:var(--color-success-fg)}.board-status-pill.board-stop--unfinished{background:var(--color-unfinished-bg);color:var(--color-unfinished-fg)}.board-status-pill.board-stop--needs-attention{background:var(--color-danger-bg);color:var(--color-danger-fg)}.board-progress{margin-top:var(--space-xs)}.board-empty-state{align-items:flex-start;gap:var(--space-md);flex-direction:column;display:flex}.board-empty-state .btn.primary{min-height:48px}.board-date-controls{align-items:center;gap:var(--space-xs);display:flex}.board-date-step{touch-action:manipulation;min-width:44px;min-height:44px;font-size:1.25rem;line-height:1}.board-date-today{touch-action:manipulation;min-height:44px}.issue-card{border-left:4px solid var(--color-border);padding-left:var(--space-md)}.issue-card.issue-unowned{border-left-color:var(--color-warning-fg);background:var(--color-warning-bg)}.issue-card.issue-owned{border-left-color:var(--color-success)}.seasonal-color-field{margin-top:var(--space-md)}.seasonal-color-split{margin-top:var(--space-sm)}.contract-term-seasons{margin-top:var(--space-md);padding-left:var(--space-md);border-left:2px solid var(--color-border)}.contract-details-row{padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);flex-direction:column;gap:.15rem;display:flex}.contract-details-row:last-child{border-bottom:none}.renewal-review{border-left:4px solid var(--color-primary-700)}.renewal-review-done{border-left-color:var(--color-border)}.renewal-review-list{margin:0}.contracts-portal-bar{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.view-mode-toggle.reason-grid{margin:0}.view-mode-toggle .btn.reason{touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-height:44px}.filter-chips{gap:var(--space-sm);margin:var(--space-sm) 0;flex-wrap:wrap;display:flex}.filter-chip{min-height:44px;padding:0 var(--space-md);border:1px solid var(--color-border-input);border-radius:var(--radius-full);background:var(--color-primary-50);color:var(--color-primary-900);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font-size:.85rem}.filter-chip[aria-pressed=true]{background:var(--gradient-primary),var(--color-primary-800);border-color:var(--color-primary-800);color:var(--color-on-primary)}.filter-chips-scroll{-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.filter-chips-scroll::-webkit-scrollbar{display:none}.filter-chips-scroll .filter-chip{white-space:nowrap;flex:none}.contract-grid{margin:var(--space-md) 0;gap:var(--space-md);grid-template-columns:1fr;padding:0;list-style:none;display:grid}@media(min-width:768px){.contract-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.contract-tile{gap:var(--space-sm);flex-direction:column;margin:0;display:flex}.contract-item-link{min-height:48px;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;gap:.2rem;text-decoration:none;display:flex}.contract-row{align-items:stretch;gap:var(--space-sm);flex-direction:column}.contract-item-head{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.contract-status-chip{border-radius:var(--radius-full);white-space:nowrap;color:var(--color-primary-900);background:var(--color-primary-50);border:1px solid var(--color-border-input);flex:none;padding:.1rem .5rem;font-size:.75rem;font-weight:600}.contract-status-chip.tone-active{color:var(--color-primary-950);background:var(--color-success-light);border-color:#0000}.contract-status-chip.tone-expiring{color:var(--color-warning-fg);background:var(--color-warning-bg);border-color:#0000}.contract-status-chip.tone-cancelled{color:var(--color-danger-text);background:0 0;border:1px solid}.contract-term{font-size:.85rem}.term-bar{border-radius:var(--radius-full);background:var(--color-border);height:.4rem;overflow:hidden}.term-bar-fill{background:var(--color-primary-700);height:100%}.contract-figures{align-items:center;gap:var(--space-sm);flex-wrap:wrap;font-size:.85rem;font-weight:600;display:flex}.running-hot-badge{border-radius:var(--radius-full);color:var(--color-warning-fg);background:var(--color-warning-bg);padding:.1rem .5rem;font-size:.75rem}.contract-renew{align-self:flex-start}.load-more{width:100%;margin:var(--space-md) 0}.contract-profile-header h2{margin:0}.contract-profile-actions{gap:var(--space-sm);flex-wrap:wrap}.job-cost-controls{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;flex-wrap:wrap;display:flex}.job-cost-view-toggle.reason-grid{margin:0}.job-cost-view-toggle .btn.reason{touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-height:48px}.job-cost-stepper{align-items:center;gap:var(--space-sm);display:flex}.job-cost-stepper .btn{touch-action:manipulation;min-width:48px;min-height:48px}.job-cost-kpis{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media(min-width:768px){.job-cost-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}.job-cost-kpi{padding:var(--space-md);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);flex-direction:column;gap:.1rem;display:flex}.job-cost-kpi strong{font-size:1.25rem}.job-cost-meter{align-items:center;gap:var(--space-sm);grid-template-columns:9rem 1fr auto;display:grid}@media(max-width:480px){.job-cost-meter{grid-template-columns:1fr auto}.job-cost-meter .term-bar{grid-area:2/1/auto/-1}}.term-bar-fill.is-hot{background:var(--color-warning-fg)}.job-cost-months{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.job-cost-month-row{align-items:center;gap:.2rem var(--space-sm);width:100%;min-height:48px;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;grid-template-columns:3rem minmax(4rem,1fr);grid-template-areas:"name bar""figures figures";display:grid}@media(min-width:768px){.job-cost-month-row{grid-template-columns:3rem minmax(6rem,1fr) auto;grid-template-areas:"name bar figures"}}.job-cost-month-name{grid-area:name;font-weight:600}.job-cost-month-bar{grid-area:bar;width:100%;height:.5rem}.job-cost-bar-track{fill:var(--color-border)}.job-cost-bar-fill{fill:var(--color-primary-700)}.job-cost-category-bar{border-radius:var(--radius-sm);width:100%;height:1rem;overflow:hidden}.job-cost-category-legend{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.job-cost-category-legend li{align-items:center;gap:var(--space-sm);grid-template-columns:1rem 1fr auto auto;display:grid}.job-cost-swatch{border-radius:var(--radius-swatch);background:currentColor;width:.85rem;height:.85rem;display:inline-block}.job-cost-seg-labor{fill:var(--color-primary-700);color:var(--color-primary-700)}.job-cost-seg-materials{fill:var(--color-cost-materials);color:var(--color-cost-materials)}.job-cost-seg-plants_seasonal_color{fill:var(--color-cost-plants);color:var(--color-cost-plants)}.job-cost-seg-chemicals{fill:var(--color-cost-chemicals);color:var(--color-cost-chemicals)}.job-cost-seg-equipment_rental{fill:var(--color-cost-equipment);color:var(--color-cost-equipment)}.job-cost-seg-subcontractor{fill:var(--color-cost-subcontractor);color:var(--color-cost-subcontractor)}.job-cost-seg-disposal{fill:var(--color-cost-disposal);color:var(--color-cost-disposal)}.job-cost-seg-other{fill:var(--color-cost-other);color:var(--color-cost-other)}.proposal-job-cost-bucket{flex-direction:column;align-items:stretch;gap:.35rem}.proposal-job-cost-bucket.is-total{border:2px solid var(--color-border)}.proposal-job-cost-figures{gap:var(--space-sm);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.proposal-job-cost-figures dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.proposal-job-cost-over,.proposal-job-cost-pending{color:var(--color-warning-fg)}.proposal-job-cost-visit{align-items:flex-start}.job-cost-card-header{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.job-cost-month-figures{grid-area:figures;font-size:.85rem}.job-cost-visit{flex-direction:column;align-items:stretch}.job-cost-visit-summary{gap:.2rem var(--space-md);width:100%;min-height:48px;color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-wrap:wrap;padding:0;font-size:.9rem;display:flex}.job-cost-visit-detail{margin-top:var(--space-sm);font-size:.9rem}.job-cost-crew{margin:0;padding-left:1.1rem}.bid-sheet-computed{justify-content:space-between;align-items:baseline;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--color-primary-50);font-variant-numeric:tabular-nums;margin:0;display:flex}.bid-sheet-computed--total{background:var(--color-band);color:var(--color-on-primary)}.bid-sheet-computed--total .hint{color:var(--color-on-band-muted)}.bid-sheet-fields{gap:var(--space-md);grid-template-columns:minmax(0,1fr);display:grid}@media(min-width:640px){.bid-sheet-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.bid-sheet-fields>.bid-sheet-computed{grid-column:1/-1}.bid-sheet-number{text-align:center;font-variant-numeric:tabular-nums;min-height:44px}.bid-sheet-months .btn.reason{flex:22%;min-width:0}.warning-notice-text{white-space:pre-wrap;overflow-wrap:anywhere}.warning-notice-answers dt{color:var(--color-muted);margin-top:var(--space-sm)}.warning-notice-answers dd{margin:0;font-weight:600}.warning-notice-row{touch-action:manipulation;flex-direction:column;gap:.15rem;min-height:44px;display:flex}.signature-pad{gap:var(--space-sm);flex-direction:column;display:flex}.signature-pad-canvas{aspect-ratio:3;background:var(--color-signature-paper);border:2px dashed var(--color-border-input);border-radius:var(--radius-sm);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:100%;min-height:8rem;display:block}.signature-pad .btn.compact{align-self:flex-start}.warning-notice-acknowledgement,.advance-agreement-text{line-height:1.4}.badge.badge-signed{color:var(--color-success);font-weight:600}.report-pdf-range{gap:var(--space-sm);margin:0 0 var(--space-sm);border:none;grid-template-columns:1fr 1fr auto;align-items:end;padding:0;display:grid}.report-pdf-range label{margin-bottom:0}.report-pdf-range input{touch-action:manipulation;min-height:44px}.report-pdf-range-problem{grid-column:1/-1;margin:0}.pdf-file-actions{margin-top:var(--space-md)}@media(max-width:480px){.report-pdf-range{grid-template-columns:1fr 1fr}.report-pdf-range .btn{grid-column:1/-1}}.report-pdf-company{gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.report-pdf-company .btn{flex:1 1 0}.irrigation-zone-row{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.irrigation-zone-details{gap:var(--space-xs);min-width:0}.irrigation-zone-notes{white-space:pre-wrap;overflow-wrap:anywhere}.irrigation-zone-row>.btn{touch-action:manipulation;flex-shrink:0}.irrigation-zones-dialog,.irrigation-zone-form{max-width:34rem}.irrigation-zone-form-row{gap:var(--space-sm);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.irrigation-zone-heads,.irrigation-zone-run-times{border:0;margin:0;padding:0}.irrigation-zone-heads .btn.reason{touch-action:manipulation}.irrigation-zone-run-time{gap:var(--space-sm);grid-template-columns:minmax(0,1fr) 5.5rem auto;align-items:end;display:grid}.irrigation-zone-run-time .btn{touch-action:manipulation;min-height:44px}.irrigation-zone-retire{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.seasonal-color-row{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.seasonal-color-details{gap:var(--space-xs);overflow-wrap:anywhere;min-width:0}.seasonal-color-notes{white-space:pre-wrap}.seasonal-color-row>.btn{touch-action:manipulation;flex-shrink:0;min-height:44px}.seasonal-color-form{max-width:34rem}.seasonal-color-form fieldset{border:0;margin:0;padding:0}.seasonal-color-form .btn{touch-action:manipulation;min-height:44px}.contract-usual-order{margin:0 0 var(--space-sm);overflow-wrap:anywhere;padding-left:1.1rem}.contract-usual-order li+li{margin-top:var(--space-xs)}.contract-usual-order-notes{white-space:pre-wrap;display:block}.contract-usual-order-empty{margin:0 0 var(--space-sm)}.buying-list-total{display:block}.buying-list-toggle{justify-content:space-between;align-items:center;gap:var(--space-sm);width:100%;min-height:44px;color:inherit;font:inherit;text-align:left;touch-action:manipulation;cursor:pointer;background:0 0;border:0;padding:0;display:flex}.buying-list-flower{gap:0 var(--space-sm);overflow-wrap:anywhere;flex-wrap:wrap;min-width:0;display:flex}.buying-list-quantity{flex-shrink:0}.buying-list-properties{margin:var(--space-xs) 0 0;padding-left:1.1rem}.buying-list-properties li{justify-content:space-between;gap:0 var(--space-sm);padding:var(--space-xs) 0;overflow-wrap:anywhere;flex-wrap:wrap;display:flex}.buying-list-notes{white-space:pre-wrap;flex-basis:100%}.seasonal-color-remove{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.irrigation-zone-answer-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.irrigation-zone-name{text-align:left;touch-action:manipulation;flex:auto;min-width:0;min-height:44px;font-weight:600}.irrigation-zone-answer-head .board-status-pill{flex-shrink:0}.irrigation-zone-buttons{margin:0}.irrigation-zone-buttons .btn.reason,.irrigation-repair-zones .btn.reason,.irrigation-repair-zone .btn.reason{touch-action:manipulation;min-height:48px}.irrigation-repair-zone{border:0;margin:0;padding:0}.status-word{white-space:nowrap;flex-shrink:0;font-weight:600}.activity-date-row{align-items:flex-end;gap:var(--space-sm);padding-top:var(--space-sm);flex-wrap:wrap;display:flex}.activity-date-field{flex-direction:column;flex:9rem;gap:.15rem;font-size:.85rem;display:flex}.activity-date-field input{width:100%;min-height:44px}.activity-date-row .btn{min-height:44px}.activity-count,.activity-entity-note{margin:var(--space-sm) 0}.activity-entry{flex-direction:column;align-items:stretch}.activity-entry-main{flex-direction:column;gap:.15rem;min-width:0;display:flex}.activity-entry-line{overflow-wrap:anywhere}.activity-entry-meta{font-size:.85rem}.activity-entry-chevron{opacity:.6;flex-shrink:0}.activity-entry-detail{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-border)}.activity-changes{border-collapse:collapse;width:100%;font-size:.9rem}.activity-changes th,.activity-changes td{text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:.3rem .5rem .3rem 0}.activity-changes thead th{border-bottom:1px solid var(--color-border);font-weight:600}.activity-changes tbody th{width:30%;font-weight:600}.activity-details{margin:0;font-size:.9rem}.activity-details-row{gap:var(--space-sm);padding:.2rem 0;display:flex}.activity-details-row dt{overflow-wrap:anywhere;flex:0 0 30%;font-weight:600}.activity-details-row dd{overflow-wrap:anywhere;margin:0}.activity-show-older{width:100%;min-height:48px;margin-top:var(--space-sm)}
