.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078A8}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:black}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers.ef6db872.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers-2x.9859cd12.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(/_next/static/media/marker-icon.d577052a.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.8);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;box-sizing:border-box;background:rgba(255,255,255,.8);text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:white;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678)}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{color-scheme:light;--bg:#fbfbf7;--surface:#ffffff;--surface-muted:#eaf4ea;--surface-subtle:#f4f8f3;--ink:#123316;--muted:#5d6b5f;--line:#d8e2d5;--brand:#23612c;--brand-dark:#12471b;--brand-hover:#1b5225;--accent:#9b6519;--danger:#a93636;--danger-dark:#842525;--warning:#8a5e16;--success:#216e35;--focus:rgba(35,97,44,0.25);--shadow-sm:0 5px 16px rgba(18,71,27,0.06);--shadow:0 18px 45px rgba(18,71,27,0.12);--radius-sm:6px;--radius:8px;--radius-lg:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--border:var(--line);--ink-muted:var(--muted)}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}a:hover{color:var(--brand-dark)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,input,select,textarea{font:inherit;font-size:16px}input,select,textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text}button{-webkit-user-select:none;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-moz-user-select:none;user-select:none}button:disabled{cursor:not-allowed;opacity:.6}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.auth-shell{display:grid;min-height:100vh;place-items:center;padding:24px}.public-shell{display:grid;min-height:100vh;place-items:start center;padding:32px 16px}.auth-panel{width:min(100%,420px)}.auth-panel,.public-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:28px}.public-card{width:min(100%,760px)}.auth-panel h1,.page-header h1,.public-card h1{margin:0 0 8px;color:var(--brand-dark);font-size:clamp(1.85rem,4vw,2.55rem);font-weight:850;letter-spacing:-.025em;line-height:1.05}.muted{color:var(--muted)}.copy-row{display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto}.copy-row input{min-width:0}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{display:flex;flex-direction:column;gap:8px;height:100vh;overflow-y:auto;overscroll-behavior:contain;position:-webkit-sticky;position:sticky;scrollbar-gutter:stable;top:0;border-right:1px solid var(--line);background:rgba(255,255,255,.88);padding:20px 16px}.brand-block{padding:6px 6px 18px}.sidebar-brand{align-items:center;display:inline-flex;gap:10px}.sidebar-brand,.sidebar-brand:hover{color:var(--brand-dark)}.sidebar-brand-mark{background:var(--surface);border:1px solid var(--line);border-radius:50%;display:grid;height:42px;overflow:hidden;place-items:center;width:42px}.sidebar-brand-mark img{display:block;height:100%;object-fit:cover;width:100%}.sidebar-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.sidebar-menu{display:contents}.sidebar-menu-button{display:none;flex:0 0 auto;margin-top:2px}.brand-block strong,.sidebar-brand strong{display:block;font-size:1.05rem;font-weight:850;line-height:1.05}.sidebar-brand .muted{display:block;font-size:.78rem;font-weight:700;margin-top:3px}.nav-list{display:grid;grid-gap:4px;gap:4px;list-style:none;margin:0;padding:0}.nav-link{align-items:center;border-radius:var(--radius-sm);color:var(--muted);display:flex;gap:10px;min-height:42px;padding:10px 11px;transition:background-color .16s ease,color .16s ease,transform .12s ease}.nav-link:hover{background:var(--surface-muted);color:var(--brand-dark)}.nav-badge{align-items:center;background:var(--brand);border-radius:999px;color:#fff;display:inline-flex;font-size:.78rem;font-weight:700;justify-content:center;margin-left:auto;min-height:22px;min-width:22px;padding:2px 7px}.nav-link[aria-current=page]{background:var(--surface-muted);color:var(--brand-dark);font-weight:800}.nav-link-button{background:transparent;border:0;cursor:pointer;font:inherit;text-align:left;width:100%}.advanced-chevron{transition:transform .18s ease}.advanced-chevron.open{transform:rotate(180deg)}.advanced-nav-list{border-left:1px solid var(--line);margin:4px 0 4px 19px;padding-left:8px}.advanced-nav-link{min-height:38px}.group-participant-row{align-items:center;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto auto;padding:12px}.group-participant-row,.group-session-card{border:1px solid var(--line);border-radius:8px;display:grid}.group-session-card{box-shadow:var(--shadow);grid-gap:16px;gap:16px;padding:20px}.group-session-card.completed{background:var(--surface-subtle);color:var(--muted)}.group-session-facts{display:flex;flex-wrap:wrap;gap:8px}.group-session-facts span{align-items:center;background:var(--surface-muted);border-radius:999px;display:inline-flex;gap:6px;min-height:32px;padding:6px 10px;width:-moz-fit-content;width:fit-content}.nav-footer{border-top:1px solid var(--line);margin-top:auto;padding-top:16px}.nav-footer .muted{font-size:.76rem;font-weight:800;letter-spacing:.075em;margin:0 0 4px;text-transform:uppercase}.main{padding:30px}.page-header{align-items:flex-start;display:flex;justify-content:space-between;gap:16px;margin-bottom:22px}.page-header .page-heading-content>div>.muted:first-child,.page-header>div:first-child>.muted:first-child,.today-header>div:first-child>.muted:first-child{color:var(--brand-dark);font-size:.76rem;font-weight:850;letter-spacing:.09em;margin:0 0 7px;text-transform:uppercase}.page-header h1,.today-header h1{color:var(--brand-dark);font-weight:850;letter-spacing:-.03em;line-height:1.02}.eyebrow{color:var(--brand-dark);font-size:.76rem;font-weight:850;letter-spacing:.09em;margin:0 0 7px;text-transform:uppercase}.grid{display:grid;grid-gap:16px;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:18px;min-width:0}.card h2,.card h3{margin:0 0 10px;color:var(--brand-dark);font-weight:850;letter-spacing:-.015em;line-height:1.14}.card>:last-child{margin-bottom:0}.directory-list{display:grid;grid-gap:10px;gap:10px}.directory-card{align-items:center;border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(170px,1.2fr) minmax(130px,1fr) minmax(130px,.8fr) minmax(160px,auto) auto;padding:14px}.booking-directory-card{grid-template-columns:minmax(180px,1.2fr) minmax(130px,.85fr) minmax(150px,auto) minmax(70px,auto) auto}.directory-primary h2{font-size:1.06rem;margin:0}.directory-detail strong,.directory-primary p{margin:4px 0 0;overflow-wrap:anywhere}.directory-kicker,.directory-label{color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.04em;margin:0;text-transform:uppercase}.directory-detail,.directory-price,.directory-status{display:grid;grid-gap:6px;gap:6px;min-width:0}.directory-status{align-content:center;justify-items:start}.pagination{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:16px}.pagination p{margin:0}.pagination-actions{align-items:center;display:flex;gap:8px}.pagination-page{color:var(--muted);font-size:.9rem;font-weight:750;white-space:nowrap}.icon-button.disabled{cursor:default;opacity:.45;pointer-events:none}.metric{display:grid;grid-gap:6px;gap:6px;min-height:108px}.metric strong{color:var(--brand-dark);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:850;line-height:1}.dashboard-header{margin-bottom:16px}.dashboard-metrics{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.dashboard-cash{display:grid;grid-gap:12px;gap:12px;margin-bottom:16px}.dashboard-cash h2{margin:0 0 4px}.dashboard-cash-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:1fr}.dashboard-card,.dashboard-grid .weather-card{align-content:start;display:grid;grid-gap:12px;gap:12px}.dashboard-today-list{display:grid;grid-gap:6px;gap:6px}.dashboard-today-list a{align-items:center;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:auto minmax(0,1fr) auto;min-height:38px;padding:7px 9px}.dashboard-today-list span{color:var(--brand);font-weight:900}.dashboard-today-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-today-list em{color:var(--muted);font-size:.82rem;font-style:normal;font-weight:800}.dashboard-today-list a.completed{background:var(--surface-muted);color:var(--muted)}.dashboard-today-list a.completed span,.dashboard-today-list a.completed strong{color:var(--muted)}.dashboard-stat-list{display:grid;grid-gap:10px;gap:10px;margin:0}.dashboard-stat-list a,.dashboard-stat-list div{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;padding-bottom:10px}.dashboard-stat-list dt,.dashboard-stat-list span{color:var(--muted);font-weight:700}.dashboard-stat-list dd,.dashboard-stat-list strong{font-size:1.35rem;font-weight:900;margin:0}.dashboard-calendar-card{display:grid;grid-gap:16px;gap:16px}.dashboard-calendar-heading{align-items:center;gap:12px}.dashboard-calendar-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.dashboard-calendar-actions .button{min-height:42px;padding-inline:12px}.dashboard-calendar-layout{display:grid;grid-gap:16px;gap:16px}.dashboard-calendar-main{display:grid;grid-gap:10px;gap:10px}.dashboard-calendar{display:grid;grid-gap:6px;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr))}.dashboard-calendar-weekday{color:var(--muted);font-size:.82rem;font-weight:800;text-align:center}.dashboard-calendar-day{aspect-ratio:1;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;display:grid;font:inherit;grid-gap:4px;gap:4px;min-width:0;padding:7px;text-align:left}.dashboard-calendar-day span:first-child{color:var(--brand-dark);font-weight:900}.dashboard-calendar-day strong,.dashboard-calendar-empty{align-self:end;background:var(--brand-dark);border-radius:999px;color:#fff;display:inline-grid;font-size:.82rem;font-weight:900;justify-self:start;min-height:22px;min-width:22px;place-items:center;padding:0 7px}.dashboard-calendar-day-markers{align-items:flex-end;display:flex;gap:4px;min-height:22px}.dashboard-calendar-day-markers i{align-items:center;background:#a66a15;border-radius:999px;color:#fff;display:inline-flex;font-size:.72rem;font-style:normal;font-weight:900;justify-content:center;min-height:22px;min-width:22px}.dashboard-calendar-empty{background:transparent;color:transparent;min-width:0;padding:0}.dashboard-calendar-day.selected,.dashboard-calendar-day.today{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.dashboard-calendar-day.selected{background:var(--surface-muted)}.dashboard-calendar-day.outside-month{color:var(--muted);opacity:.58}.dashboard-calendar-side{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:14px}.dashboard-holiday-list{display:grid;grid-gap:8px;gap:8px}.dashboard-holiday{align-items:center;background:#fff8ec;border:1px solid #e7c48d;border-radius:var(--radius-sm);display:flex;gap:10px;justify-content:space-between;padding:10px}.text-button{background:transparent;border:0;color:var(--brand-dark);cursor:pointer;font:inherit;font-weight:800;padding:4px;text-decoration:underline}.danger-text{color:var(--danger)}.holiday-dialog{max-width:620px}.dashboard-calendar-booking{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);display:grid;grid-gap:4px;gap:4px;padding:12px}.dashboard-calendar-booking:hover{background:var(--surface-muted);border-color:color-mix(in srgb,var(--brand) 38%,var(--line))}.dashboard-calendar-booking span{color:var(--brand);font-weight:900}.dashboard-calendar-booking em,.dashboard-calendar-booking small{color:var(--muted);font-style:normal}.operations-review-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:1fr}.clean-list{display:grid;grid-gap:10px;gap:10px;margin:0;padding-left:18px}.payment-card,.payments-list{display:grid;grid-gap:12px;gap:12px}.payment-card{align-items:center}.payment-card p{margin:4px 0 0}.payment-card .actions{justify-content:flex-start}@media (min-width:620px){.dashboard-cash-grid,.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:760px){.dashboard-grid,.operations-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-calendar-card{grid-column:1/-1}.payment-card{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto auto}}@media (min-width:1180px){.dashboard-calendar-layout{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr)}.operations-review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.operations-review-grid>.card:nth-child(4),.operations-review-grid>.card:nth-child(5){grid-column:span 2}}.today-header{align-items:flex-start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) auto minmax(220px,320px);margin-bottom:18px}.today-header h1{font-size:clamp(2rem,8vw,3.4rem);margin:0}.today-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}.today-weather{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-gap:8px;gap:8px;padding:14px}.today-summary-grid{grid-gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.today-progress,.today-summary-grid{display:grid;gap:12px;margin-bottom:16px}.today-progress{align-items:center;grid-gap:12px;grid-template-columns:minmax(0,1fr) minmax(160px,280px)}.today-progress progress{accent-color:var(--brand-dark);height:16px;width:100%}.active-booking{align-items:center;background:var(--surface-subtle);border-color:color-mix(in srgb,var(--warning) 35%,var(--line));display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}#active-service-card,#group-walks-today,.today-booking-card[id]{scroll-margin-top:18px}.booking-stopwatch{align-items:center;background:var(--surface-muted);border:1px solid color-mix(in srgb,var(--brand) 24%,var(--line));border-radius:var(--radius);display:inline-flex;gap:10px;justify-content:space-between;max-width:100%;min-height:44px;padding:8px 12px;width:-moz-fit-content;width:fit-content}.booking-stopwatch span{color:var(--muted);font-size:.92rem}.booking-stopwatch strong{color:var(--brand);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.today-timeline{display:grid;grid-gap:12px;gap:12px;margin-top:16px}.day-planner{margin-top:16px}.day-planner-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.day-planning-active .today-timeline{display:none}.day-planner-undo{align-items:center;display:flex;gap:12px;justify-content:space-between;margin:12px 0}.day-planner-scroll{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-top:12px;max-height:min(70vh,780px);overflow:auto;overscroll-behavior:contain}.day-planner-grid{min-width:0;position:relative}.day-planner-hours{background:var(--surface);bottom:0;left:0;position:absolute;top:0;width:58px;z-index:1}.day-planner-hours span{color:var(--muted);font-size:.78rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;left:7px;line-height:1;position:absolute;transform:translateY(-50%)}.day-planner-time-grid{bottom:0;left:58px;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.day-planner-time-grid span{left:0;position:absolute;right:0}.day-planner-time-grid .hour{border-top:2px solid color-mix(in srgb,var(--line) 80%,transparent)}.day-planner-time-grid .quarter{border-top:1px solid color-mix(in srgb,var(--line) 42%,transparent)}.day-planner-booking{background:var(--surface-subtle);border-left:1px solid var(--brand);border:1px solid var(--brand);border-left-width:4px;border-radius:6px;box-shadow:none;cursor:-webkit-grab;cursor:grab;display:grid;grid-gap:2px;gap:2px;min-height:40px;overflow:hidden;padding:7px 9px;position:absolute;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:2}.day-planner-booking.confirmed{background:color-mix(in srgb,var(--brand) 9%,var(--surface));border-color:color-mix(in srgb,var(--brand) 72%,var(--line))}.day-planner-booking.cancelled,.day-planner-booking.completed,.day-planner-booking.missed{border-color:var(--line);cursor:not-allowed;opacity:.72}.day-planner-booking.in_progress{background:color-mix(in srgb,var(--warning) 14%,var(--surface));border-color:var(--warning);cursor:not-allowed}.day-planner-booking.dragging{box-shadow:0 10px 24px color-mix(in srgb,var(--brand-dark) 24%,transparent);cursor:-webkit-grabbing;cursor:grabbing;opacity:.94;touch-action:none;z-index:5}.day-planner-booking-head{align-items:center;display:flex;gap:5px;min-width:0}.day-planner-drag-handle{align-items:center;background:transparent;border:0;color:var(--brand-dark);cursor:-webkit-grab;cursor:grab;display:inline-flex;flex:0 0 32px;height:32px;justify-content:center;margin:-6px -3px -6px -7px;padding:0;touch-action:none}.day-planner-drag-handle:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.day-planner-mobile-change-time{display:none}.day-planner-booking.dragging .day-planner-drag-handle{cursor:-webkit-grabbing;cursor:grabbing}.day-planner-booking-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-planner-booking-head .badge{font-size:.65rem;margin-left:auto;padding:2px 5px}.day-planner-booking>span:not(.badge){font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-planner-time{align-items:center;display:inline-flex;font-weight:700;gap:4px}.day-planner-locked,.day-planner-overlap,.day-planner-service{color:var(--muted)}.day-planner-overlap{color:var(--warning);font-weight:700}.day-planner-change-time{align-self:start;background:transparent;border:0;color:var(--brand-dark);cursor:pointer;font:inherit;font-size:.78rem;font-weight:700;padding:2px 0;text-decoration:underline}.day-planner-now{border-top:2px solid var(--danger);left:58px;position:absolute;right:0;z-index:4}.day-planner-now span{background:var(--danger);border-radius:0 4px 4px 0;color:white;font-size:.68rem;left:0;padding:2px 5px;position:absolute;top:-11px}.day-planner-unscheduled{display:none}.today-day-heading{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:16px}.today-day-heading h2{margin:0}.day-collapsible{display:grid;grid-gap:12px;gap:12px;margin-top:16px}.day-collapsible-summary{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:12px;justify-content:space-between;list-style:none;padding:12px 14px}.day-collapsible-summary::-webkit-details-marker{display:none}.day-collapsible-summary h2,.day-collapsible-summary>span:first-child{align-items:center;display:inline-flex;gap:8px}.day-collapsible-summary svg{transition:transform .16s ease}.day-collapsible[open]>.day-collapsible-summary svg{transform:rotate(180deg)}.today-booking-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);display:grid;grid-gap:14px;gap:14px;grid-template-columns:76px minmax(0,1fr);padding:14px}.today-booking-card.current{border-color:color-mix(in srgb,var(--brand) 48%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 10%,transparent)}.today-booking-card.completed{background:var(--surface-subtle);opacity:.78}.travel-card{align-items:center;background:var(--surface-subtle);border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius-sm);display:flex;gap:12px;justify-content:space-between;margin:-5px 16px;padding:10px 12px}.travel-card.failed,.travel-card.short{border-left-color:var(--danger)}.travel-card.tight,.travel-card.unavailable{border-left-color:var(--warning)}.travel-card-main p,.travel-card-main small{margin:2px 0 0}.travel-card-main small{color:var(--muted)}.travel-card-controls,.travel-card-side,.travel-card-title{align-items:center;display:flex;gap:7px}.travel-card-side{justify-content:flex-end}.travel-card-controls select{background:transparent;border:0;color:var(--muted);font:inherit;max-width:132px;padding:2px}.travel-feasibility{white-space:nowrap}.travel-feasibility.short{color:var(--danger)}.travel-feasibility.tight{color:var(--warning-text)}.today-card-collapsible{display:block;gap:0;padding:0}.today-card-summary{cursor:pointer;display:grid;grid-gap:14px;gap:14px;grid-template-columns:76px minmax(0,1fr) auto;list-style:none;padding:14px}.today-card-summary::-webkit-details-marker{display:none}.today-card-summary-main{min-width:0}.today-card-chevron{align-self:start;color:var(--muted);margin-top:4px;transition:transform .16s ease}.today-card-collapsible[open]>.today-card-summary .today-card-chevron{transform:rotate(180deg)}.today-card-body{padding:0 14px 14px 104px}.week-planner{display:grid;grid-gap:18px;gap:18px;margin-top:16px}.week-day-section{display:grid;grid-gap:10px;gap:10px}.week-day-section.past{opacity:.72}.week-day-heading{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;padding:8px 0}.week-day-heading.day-collapsible-summary{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.week-day-heading h2{margin:0}.compact-actions{gap:8px}.client-bookings-section{margin-top:16px}.client-booking-list{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.client-booking-filters{align-items:end;display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(180px,1fr)) auto;margin-top:14px}.client-booking-bulk-controls{align-items:end;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(170px,auto) minmax(170px,1fr) minmax(170px,1fr) auto;margin-top:14px;padding:12px}.client-booking-confirmation-actions{display:flex;justify-content:flex-end;margin-top:12px}.client-booking-confirmation-error{margin-top:12px}.client-booking-confirmation-dialog textarea{min-height:260px}.client-booking-filter-actions{align-items:center;display:flex;gap:8px}.client-booking-card{align-items:center;border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(80px,auto) minmax(120px,.9fr) minmax(180px,1.2fr) minmax(160px,1fr) minmax(140px,auto);padding:12px}.client-booking-card h3{margin:0}.client-booking-actions,.client-booking-statuses{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.client-booking-actions{justify-content:flex-end}.client-payment-form{align-items:end;display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(150px,1fr) auto}.client-booking-select{align-items:center}.timeline-time{display:grid;grid-gap:4px;gap:4px;justify-items:start}.timeline-time strong{font-size:1.2rem}.timeline-main{display:grid;grid-gap:12px;gap:12px}.today-card-facts{display:flex;flex-wrap:wrap;gap:8px}.today-card-facts span{align-items:center;background:var(--surface-muted);border-radius:999px;display:inline-flex;gap:6px;min-height:32px;padding:6px 10px}.group-inline-participants{display:flex;flex-wrap:wrap;gap:8px}.group-dog-list{color:var(--ink);font-weight:800;margin:6px 0 0;overflow-wrap:anywhere}.button.compact{min-height:34px;padding:7px 10px}.button.success{background:var(--surface-muted);border-color:color-mix(in srgb,var(--brand) 28%,var(--line));color:var(--brand)}.compact-stack{gap:4px}.compact-stack p{margin:0}.notification-card{border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:14px}.notification-card.read{opacity:.72}.dog-operational-card{border:1px solid var(--line);border-radius:8px;padding:12px}.booking-completion-section,.booking-danger-actions,.booking-detail-grid,.booking-detail-header,.client-detail-header{min-width:0}.page-heading-content{display:grid;grid-gap:10px;gap:10px;min-width:0}.back-button{width:-moz-fit-content;width:fit-content}.booking-detail-grid>.card{min-width:0}.booking-detail-grid dd,.booking-detail-grid li,.booking-detail-grid p{overflow-wrap:anywhere}.booking-actions-card{align-self:start}.booking-completion-section,.booking-danger-actions{margin-top:16px}.contact-dialog{max-width:560px}.contact-list{display:grid;grid-gap:10px;gap:10px;margin:16px 0}.contact-row{align-items:center;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:12px}.contact-row p{margin:4px 0 0}.compact-dl{margin:0}.compact-dl,.compact-dl div{display:grid;grid-gap:8px;gap:8px}.compact-dl div{border-bottom:1px solid var(--line);grid-template-columns:minmax(100px,160px) minmax(0,1fr);padding-bottom:8px}.compact-dl dt{color:var(--muted);font-weight:700}.compact-dl dd{margin:0;overflow-wrap:anywhere}.sensitive-panel{display:grid;grid-gap:12px;gap:12px}.checkbox-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.skeleton-card{min-height:150px;overflow:hidden;position:relative}.skeleton-card:after{animation:shimmer 1.2s infinite;background:linear-gradient(90deg,transparent,rgba(255,255,255,.65),transparent);content:"";inset:0;position:absolute;transform:translateX(-100%)}@keyframes shimmer{to{transform:translateX(100%)}}.card-heading-row{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.lead-workflow-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) minmax(260px,360px)}.lead-workflow-main{min-width:0}.lead-journey-summary{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.lead-journey-summary h2{grid-column:1/-1;margin-bottom:0}.lead-journey-summary div{border-left:3px solid var(--line);display:grid;grid-gap:5px;gap:5px;padding-left:12px}.lead-journey-summary strong{overflow-wrap:anywhere}.current-step-card{border-color:color-mix(in srgb,var(--brand) 35%,var(--line));box-shadow:var(--shadow);display:grid;grid-gap:14px;gap:14px}.current-step-card h2{font-size:clamp(1.7rem,5vw,2.5rem);margin-bottom:0}.lead-primary-form{border-top:1px solid var(--line);padding-top:14px}.lead-primary-button{min-height:52px;width:min(100%,420px)}.more-options{border-top:1px solid var(--line);margin-top:4px;padding-top:10px}.more-options summary,.support-section summary{cursor:pointer;font-weight:800;list-style-position:inside;min-height:42px;padding:8px 0}.support-section{display:grid;grid-gap:8px;gap:8px}.support-section details{border-top:1px solid var(--line)}.details-grid{padding:10px 0 4px}.journey-timeline-card{position:-webkit-sticky;position:sticky;top:20px}.journey-timeline{list-style:none;margin:0;padding:0}.journey-step,.journey-timeline{display:grid;grid-gap:10px;gap:10px}.journey-step{align-items:flex-start;border:1px solid var(--line);border-radius:8px;color:var(--muted);grid-template-columns:28px minmax(0,1fr);padding:10px}.journey-step small,.journey-step strong{display:block}.journey-step small{margin-top:3px}.journey-step.complete{background:var(--surface-muted);color:var(--brand)}.journey-step.active{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:inset 4px 0 0 var(--brand);color:var(--ink)}.journey-marker{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;display:inline-flex;font-weight:800;height:28px;justify-content:center;width:28px}.request-total{align-items:flex-end;display:grid;grid-gap:6px;gap:6px;justify-items:end;text-align:right}.request-total strong{font-size:1.35rem}.weather-card,.weather-current-card{overflow-wrap:anywhere}.weather-icon{align-items:center;color:var(--brand);display:inline-flex;flex:0 0 auto}.weather-current-compact,.weather-hero{align-items:center;display:flex;gap:14px;margin:12px 0}.weather-current-compact strong{font-size:1.6rem}.weather-hero strong{font-size:clamp(2rem,8vw,3.6rem);line-height:1}.weather-current-compact p,.weather-hero p{margin:4px 0 0}.weather-metrics{display:grid;grid-gap:10px;gap:10px;margin:0}.weather-metrics div{align-items:center;border-bottom:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) auto;padding:8px 0}.weather-metrics dt{align-items:center;color:var(--muted);display:flex;gap:6px}.weather-metrics dd{font-weight:700;margin:0;text-align:right}.hourly-strip{display:grid;grid-gap:10px;gap:10px;grid-auto-columns:minmax(128px,1fr);grid-auto-flow:column;overflow-x:auto;padding-bottom:6px}.hourly-item{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;min-width:128px;padding:12px}.weather-location-list{display:grid;grid-gap:10px;gap:10px;list-style:none;margin:0;padding:0}.weather-location-list li{align-items:center;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding-bottom:10px}.weather-level.favourable{border-color:color-mix(in srgb,var(--success) 28%,var(--line));color:var(--success)}.weather-level.caution,.weather-level.review{border-color:color-mix(in srgb,var(--warning) 30%,var(--line));color:var(--warning)}.weather-level.high_concern,.weather-level.unavailable{border-color:color-mix(in srgb,var(--danger) 30%,var(--line));color:var(--danger)}.weather-clamp{overflow-wrap:anywhere}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top}th{color:var(--muted);font-size:.82rem;font-weight:850;letter-spacing:.075em;text-transform:uppercase}tbody tr{transition:background-color .15s ease}.badge,tbody tr:hover{background:var(--surface-subtle)}.badge{align-items:center;border:1px solid var(--line);border-radius:999px;display:inline-flex;font-size:.82rem;font-weight:800;gap:5px;line-height:1;padding:6px 9px}.badge.success{background:color-mix(in srgb,var(--success) 8%,var(--surface));border-color:color-mix(in srgb,var(--success) 30%,var(--line));color:var(--success)}.badge.warning{background:color-mix(in srgb,var(--warning) 8%,var(--surface));border-color:color-mix(in srgb,var(--warning) 30%,var(--line));color:var(--warning)}.badge.danger{background:color-mix(in srgb,var(--danger) 7%,var(--surface));border-color:color-mix(in srgb,var(--danger) 30%,var(--line));color:var(--danger)}.form{display:grid;grid-gap:14px;gap:14px}.field{display:grid;grid-gap:6px;gap:6px}.field label{color:var(--brand-dark);font-size:.92rem;font-weight:800}.field input,.field select,.field textarea{-webkit-user-select:text;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:16px;min-height:42px;padding:10px 12px;position:relative;-moz-user-select:text;user-select:text;width:100%}.field input:focus,.field select:focus,.field textarea:focus,input:not([type=hidden]):focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--focus);outline:none}input[type=checkbox],input[type=radio]{accent-color:var(--brand);block-size:18px;inline-size:18px}fieldset{border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:var(--space-4)}legend{color:var(--brand-dark);font-weight:850;padding:0 var(--space-1)}.field textarea{min-height:120px;resize:vertical}.client-search-select{position:relative}.client-search-select input[type=search]{-webkit-padding-end:76px;padding-inline-end:76px}.client-search-clear{background:transparent;border:0;color:var(--brand-dark);cursor:pointer;font:inherit;font-weight:750;min-height:42px;padding:0 var(--space-3);position:absolute;inset-block-start:0;inset-inline-end:0}.client-search-options{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;margin-top:6px;max-height:260px;overflow-y:auto;position:absolute;width:100%;z-index:20}.client-search-option{background:transparent;border:0;color:var(--ink);cursor:pointer;font:inherit;min-height:48px;padding:12px;text-align:start}.client-search-option+.client-search-option{border-top:1px solid var(--line)}.client-search-option.is-active,.client-search-option:hover{background:var(--surface-muted);color:var(--brand-dark)}.client-search-empty{color:var(--muted);margin:0;padding:12px}.actions{display:flex;flex-wrap:wrap;gap:10px}.actions,.button{align-items:center}.button{background:var(--brand);border:1px solid var(--brand);border-radius:7px;box-shadow:0 2px 0 var(--brand-dark);color:white;display:inline-flex;font-weight:850;gap:8px;justify-content:center;min-height:42px;padding:9px 14px;position:relative;transform:translateY(0);transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease,transform .08s ease}.button:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover);color:#fff;transform:translateY(-1px)}.icon-button{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--brand);display:inline-flex;justify-content:center;min-height:40px;min-width:40px;padding:8px;transform:translateY(0);transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease,transform .08s ease}.icon-button:focus-visible,.icon-button:hover{background:var(--surface-muted);border-color:var(--brand)}.button:focus-visible,.button:hover{box-shadow:0 3px 0 var(--brand-dark)}.button:active,.icon-button:active,.nav-link-button:active{box-shadow:0 1px 0 color-mix(in srgb,var(--brand-dark) 45%,transparent);transform:translateY(2px)}.button:disabled:active,.icon-button:disabled:active{transform:none}.button.secondary{background:var(--surface);color:var(--brand-dark);border-color:color-mix(in srgb,var(--brand) 32%,var(--line));box-shadow:0 2px 0 var(--line)}.button.secondary:hover:not(:disabled){background:var(--surface-muted);border-color:var(--brand);color:var(--brand-dark)}.button.danger{background:var(--danger);border-color:var(--danger);box-shadow:0 2px 0 var(--danger-dark)}.button.danger:hover:not(:disabled){background:var(--danger-dark);border-color:var(--danger-dark)}.social-photo-upload{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:14px}.post-day-to-socials{align-items:flex-start;display:grid;grid-gap:8px;gap:8px}.post-day-to-socials-status{color:var(--muted);margin:0;max-width:360px}.social-photo-upload-heading{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.social-photo-upload h3,.social-photo-upload p{margin:0}.social-photo-upload-actions{display:flex;flex-wrap:wrap;gap:10px}.walk-photo-gallery{display:grid;grid-gap:8px;gap:8px}.walk-photo-gallery-heading{color:var(--ink-muted);font-size:.9rem}.walk-photo-gallery-heading span,.walk-photo-unavailable{align-items:center;display:inline-flex;gap:6px}.walk-photo-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.walk-photo-thumb{aspect-ratio:1;background:transparent;border:1px solid var(--line);border-radius:6px;cursor:pointer;flex:0 0 76px;padding:0;overflow:hidden}.walk-photo-thumb:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.walk-photo-thumb img{display:block;height:100%;object-fit:cover;width:100%}.walk-photo-gallery.compact .walk-photo-thumb{flex-basis:58px}.walk-photo-delete-dialog{max-width:440px}.walk-photo-delete-preview{border:1px solid var(--line);border-radius:6px;display:block;height:auto;margin:12px 0;max-height:50vh;object-fit:contain;width:100%}.social-photo-upload .button{width:-moz-fit-content;width:fit-content}.social-photo-upload.compact{margin:14px 0}.social-photo-upload.compact .button,.social-photo-upload.compact .social-photo-upload-actions{width:100%}@media (max-width:640px){.social-photo-upload .button,.social-photo-upload-actions{width:100%}}.notice{background:var(--surface-subtle);border:1px solid var(--line);border-radius:var(--radius);font-weight:650;padding:14px}.notice.error{background:color-mix(in srgb,var(--danger) 6%,var(--surface));border-color:color-mix(in srgb,var(--danger) 30%,var(--line));color:var(--danger)}.notice.success{background:color-mix(in srgb,var(--success) 7%,var(--surface));border-color:color-mix(in srgb,var(--success) 30%,var(--line));color:var(--success)}.route-button{gap:.45rem}.muted-route-button{opacity:.78}.route-layout{align-items:start}.route-main-card{min-width:0}.route-map{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius);margin:1rem 0;min-height:360px;overflow:hidden;width:100%}.route-map-empty{color:var(--muted);display:grid;padding:2rem;place-items:center}.summary-list{display:grid;grid-gap:.75rem;gap:.75rem;margin:0}.summary-list div{border-bottom:1px solid var(--line);display:flex;gap:1rem;justify-content:space-between;padding-bottom:.6rem}.summary-list dt{color:var(--muted)}.summary-list dd{font-weight:800;margin:0;text-align:right}.plain-list{padding-left:1.2rem}.compact-form{gap:.75rem}.calendar-sync-indicator{bottom:20px;display:grid;justify-items:end;position:fixed;right:20px;z-index:30}.calendar-sync-pill{align-items:center;background:var(--brand-dark);border:0;border-radius:999px;box-shadow:var(--shadow);color:var(--surface);cursor:pointer;display:flex;font:inherit;font-weight:800;gap:8px;min-height:44px;padding:9px 14px}.calendar-sync-indicator.has-attention .calendar-sync-pill{background:var(--danger,#9f2f2f)}.calendar-sync-pill .rotated{transform:rotate(180deg)}.calendar-sync-drawer{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);display:grid;grid-gap:10px;gap:10px;margin-bottom:8px;max-width:min(420px,calc(100vw - 32px));padding:16px;order:-1}.calendar-sync-drawer h2{font-size:1.2rem;margin:0}.calendar-queue-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.calendar-queue-heading .icon-button{flex:0 0 auto}.calendar-sync-drawer .button{width:auto}.calendar-sync-details p{margin:0}.spin-slow{animation:calendar-spin 1.8s linear infinite}@keyframes calendar-spin{to{transform:rotate(1turn)}}.stack{display:grid;grid-gap:12px;gap:12px}.json-block{background:var(--brand-dark);border-radius:var(--radius);color:var(--surface-muted);overflow-x:auto;padding:14px;white-space:pre-wrap}.dialog-backdrop{align-items:center;background:color-mix(in srgb,var(--brand-dark) 42%,transparent);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:20}.dialog{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);max-width:480px;padding:20px;width:100%}.mobile-topbar{display:none}@media (max-width:880px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;max-height:none;overflow:visible;position:static}.sidebar-menu-button{display:inline-flex}.sidebar-menu{display:none}.sidebar-menu.open{display:grid;grid-gap:8px;gap:8px;max-height:calc(100dvh - 88px);overflow-y:auto;padding-top:8px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.nav-list{grid-template-columns:1fr}.nav-footer{margin-top:14px;position:static}.main{padding:16px 16px calc(72px + env(safe-area-inset-bottom))}.page-header{display:grid}.page-header>.button{width:100%}.grid.four,.grid.three,.grid.two{grid-template-columns:1fr}.booking-directory-card,.directory-card{align-items:stretch;grid-template-columns:minmax(0,1fr) auto}.directory-detail,.directory-price,.directory-primary,.directory-status{grid-column:1/-1}.directory-card>.button{grid-column:1/-1;width:100%}.directory-status{display:flex;flex-wrap:wrap}.pagination{align-items:stretch;flex-direction:column}.pagination-actions{justify-content:space-between}.card-heading-row,.weather-location-list li{display:grid}.weather-metrics div{grid-template-columns:1fr}.weather-metrics dd{text-align:left}.compact-dl div,.lead-journey-summary,.lead-workflow-layout,.today-header,.today-progress,.today-summary-grid{grid-template-columns:1fr}.today-summary-grid.client-detail-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-detail-summary-grid .metric{min-height:96px;padding:14px}.client-detail-summary-grid .metric strong{font-size:1.4rem;overflow-wrap:anywhere}.journey-timeline-card{order:-1;position:static}.lead-primary-button{width:100%}.active-booking{align-items:stretch;display:grid}.booking-stopwatch{width:100%}.today-booking-card{grid-template-columns:1fr}.travel-card{align-items:stretch;display:grid;grid-gap:8px;gap:8px;margin:-4px 8px}.travel-card-side{justify-content:space-between}.today-card-summary{grid-template-columns:minmax(0,1fr) auto}.today-card-summary>.timeline-time{grid-column:1/-1}.today-card-body{padding:0 14px 14px}.client-booking-card,.group-participant-row{align-items:stretch;grid-template-columns:1fr}.notification-card{grid-template-columns:1fr}.booking-danger-actions,.booking-detail-grid .actions,.booking-detail-header .actions,.client-detail-header .actions,.contact-row{align-items:stretch;grid-template-columns:1fr}.booking-actions-card{order:-1}.booking-detail-grid{gap:12px}.booking-detail-grid>.card{padding:16px}.booking-summary-card p{align-items:baseline;display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(108px,.72fr) minmax(0,1.28fr);margin:0}.booking-summary-card p strong{color:var(--muted)}.client-bookings-section .card-heading-row{gap:12px}.client-booking-card{gap:10px;padding:14px}.client-booking-select{border-bottom:1px solid var(--line);padding-bottom:10px}.client-booking-statuses{border-top:1px solid var(--line);padding-top:10px}.page-heading-content .back-button{width:-moz-fit-content;width:fit-content}.dialog{max-height:calc(100dvh - 40px);overflow-y:auto}.client-booking-actions{justify-content:stretch}.client-booking-bulk-controls,.client-booking-filters,.client-payment-form{grid-template-columns:1fr}.client-booking-filter-actions{align-items:stretch;flex-direction:column}.client-booking-confirmation-actions{justify-content:stretch}.timeline-time{align-items:baseline;display:flex;gap:10px}.actions,.today-card-facts{align-items:stretch}.actions form,.actions input,.button,.today-card-facts span{width:100%}.group-session-facts span{width:-moz-fit-content;width:fit-content}.button{justify-content:center}.day-planner-scroll{max-height:min(68dvh,680px)}.day-planner-booking{gap:1px;min-height:0;padding:5px 6px}.day-planner-booking-head{gap:3px}.day-planner-drag-handle{flex-basis:28px;height:28px;margin:-4px -2px -4px -5px}.day-planner-mobile-change-time{align-items:center;background:transparent;border:0;color:var(--brand-dark);display:inline-flex;flex:0 0 24px;height:28px;justify-content:center;padding:0}.day-planner-booking-head .badge,.day-planner-change-time,.day-planner-locked,.day-planner-overlap,.day-planner-service{display:none}.day-planner-booking>span:not(.badge){font-size:.7rem}.day-planner-undo{align-items:stretch;flex-direction:column}.checkbox-grid{grid-template-columns:1fr}.calendar-sync-indicator{bottom:10px;left:10px;right:10px}.calendar-sync-drawer{max-height:42vh;max-width:none;overflow-y:auto;width:100%}.calendar-sync-pill{max-width:100%}.calendar-sync-drawer h2{font-size:1rem}.calendar-sync-drawer .notice{padding:10px}.calendar-sync-drawer .button{min-height:40px;width:100%}}@media (max-width:430px){.auth-panel,.card,.client-booking-card,.today-booking-card{padding:14px}.sidebar{padding:12px}.nav-list{grid-template-columns:1fr}.nav-link{min-height:48px}}@media (prefers-reduced-motion:reduce){.skeleton-card:after{animation:none}}.offline-indicator{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:90;width:min(360px,calc(100vw - 32px));border:1px solid var(--border,#d4ddd1);border-radius:8px;background:#fff;box-shadow:0 12px 32px rgb(20 45 26/16%)}.offline-indicator-summary{display:flex;width:100%;align-items:center;gap:10px;border:0;background:transparent;color:inherit;padding:12px 14px;font:inherit;font-weight:700;text-align:left}.offline-indicator-detail{padding:0 14px 14px}.offline-indicator-detail p{margin:0 0 10px}.offline-sync-issue{margin:0 0 12px;padding:12px;border:1px solid #d4ddd1;border-radius:8px;font-size:.875rem;overflow-wrap:anywhere}.offline-sync-issue p:last-child{margin-bottom:0}.offline-sync-review-help{color:var(--muted,#627268)}.offline-sync-actions{display:flex;flex-wrap:wrap;gap:8px}.offline-sync-actions .button{min-height:40px;padding:8px 12px;font-size:.875rem}@media (max-width:640px){.offline-indicator{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto}}