:root{--bg: #ffffff;--surface: #f2f2f2;--surface-2: #ffffff;--raised: #e6e6e6;--border: #e6e6e6;--border-strong: #d6d6d6;--fg: #111111;--muted: #5c5c5c;--faint: #767676;--hint: #686868;--input-border: #858585;--ink: #111111;--on-ink: #ffffff;--ink-hover: #2b2b2b;--ink-accent: #ff7a1a;--hero: #111111;--on-hero: #ffffff;--hero-muted: #bdbdbd;--accent: #ff7a1a;--accent-hover: #f06a0a;--accent-soft: #ffe3cc;--accent-ink: #6b3a10;--on-accent: #111111;--link: #c2410c;--danger: #b42318;--red: #b42318;--orange: #a84500;--green: #1e7a3a;--blue: #1f5fbf;--red-soft: #fde4e1;--orange-soft: #ffe3cc;--green-soft: #dcf3e3;--blue-soft: #e1eafb;--purple: #6d3fc9;--purple-soft: #ece5fb;--hero-tile: #262626;--card-shadow: none;--shadow: 0 -.5rem 1.5rem rgb(17 17 17 / .08);--radius-s: .75rem;--radius: 1.25rem;--radius-input: 1rem;--radius-l: 1.75rem;--pill: 9999px;--ease-out: cubic-bezier(.23, 1, .32, 1);--font: "Onest", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: var(--font);--fs-2xs: .6875rem;--fs-xs: .8125rem;--fs-sm: .875rem;--fs-base: .9375rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.75rem;--fs-3xl: 2.5rem;--inset-top: calc(var(--tg-safe-area-inset-top, env(safe-area-inset-top, 0px)) + var(--tg-content-safe-area-inset-top, 0px));--inset-right: calc(var(--tg-safe-area-inset-right, env(safe-area-inset-right, 0px)) + var(--tg-content-safe-area-inset-right, 0px));--inset-bottom: calc(var(--tg-safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)) + var(--tg-content-safe-area-inset-bottom, 0px));--inset-left: calc(var(--tg-safe-area-inset-left, env(safe-area-inset-left, 0px)) + var(--tg-content-safe-area-inset-left, 0px));color-scheme:light}:root[data-theme=dark]{--bg: #121212;--surface: #1e1e1e;--surface-2: #1e1e1e;--raised: #2a2a2a;--border: #2a2a2a;--border-strong: #3a3a3a;--fg: #f2f2f2;--muted: #a3a3a3;--faint: #7a7a7a;--hint: #9a9aa3;--input-border: #6b6b74;--ink: #f2f2f2;--on-ink: #121212;--ink-hover: #ffffff;--ink-accent: #c2410c;--hero: #262626;--on-hero: #f2f2f2;--hero-muted: #a3a3a3;--accent: #ff7a1a;--accent-hover: #ff8a33;--accent-soft: #3a2412;--accent-ink: #ffb27a;--on-accent: #121212;--link: #ff9a4d;--danger: #ff6b5e;--red: #ff6b5e;--orange: #ff9a4d;--green: #5bd37f;--blue: #7aa2ff;--red-soft: #3a1714;--orange-soft: #3a2412;--green-soft: #13301d;--blue-soft: #18233d;--purple: #b39cff;--purple-soft: #261d3d;--hero-tile: #333333;--card-shadow: none;--shadow: 0 -.5rem 1.5rem rgb(0 0 0 / .5);color-scheme:dark}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #121212;--surface: #1e1e1e;--surface-2: #1e1e1e;--raised: #2a2a2a;--border: #2a2a2a;--border-strong: #3a3a3a;--fg: #f2f2f2;--muted: #a3a3a3;--faint: #7a7a7a;--hint: #9a9aa3;--input-border: #6b6b74;--ink: #f2f2f2;--on-ink: #121212;--ink-hover: #ffffff;--ink-accent: #c2410c;--hero: #262626;--on-hero: #f2f2f2;--hero-muted: #a3a3a3;--accent: #ff7a1a;--accent-hover: #ff8a33;--accent-soft: #3a2412;--accent-ink: #ffb27a;--on-accent: #121212;--link: #ff9a4d;--danger: #ff6b5e;--red: #ff6b5e;--orange: #ff9a4d;--green: #5bd37f;--blue: #7aa2ff;--red-soft: #3a1714;--orange-soft: #3a2412;--green-soft: #13301d;--blue-soft: #18233d;--purple: #b39cff;--purple-soft: #261d3d;--hero-tile: #333333;--card-shadow: none;--shadow: 0 -.5rem 1.5rem rgb(0 0 0 / .5);color-scheme:dark}}html{font-size:clamp(14px,4.07vw,17px);-webkit-text-size-adjust:100%;text-size-adjust:100%}*{box-sizing:border-box}body{margin:0;overscroll-behavior-y:none;background:var(--bg);color:var(--fg);font:1rem/1.5 var(--font);-webkit-font-smoothing:antialiased}html,body{height:100%;overflow:hidden}#root{height:100%;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:var(--inset-top) var(--inset-right) var(--inset-bottom) var(--inset-left)}main{padding:1rem 1rem 2rem;max-width:640px;margin:0 auto}h1{font-size:var(--fs-xl);font-weight:800;letter-spacing:-.02em;line-height:1.15;margin:.25rem 0 1rem;text-wrap:balance}h2{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.01em;color:var(--fg);margin:1.5rem 0 .5rem}p{margin:0 0 .75rem}.hint{color:var(--muted)}.error{color:var(--danger)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}a{color:var(--link);text-decoration-color:currentColor;text-underline-offset:.15em}.list{list-style:none;margin:1rem 0 .875rem;padding:0;display:grid;gap:.5rem}.list li{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap;background:var(--surface);border:1px solid transparent;border-radius:var(--radius);box-shadow:var(--card-shadow);padding:.875rem 1rem}.list li.nav{padding:0;transition:transform .16s var(--ease-out)}.list li.nav:active{transform:scale(.98)}.list li.nav>a{display:flex;align-items:center;gap:.75rem;flex:1;padding:.875rem 1rem;color:inherit;text-decoration:none}.list li.nav>a:after{content:"›";margin-left:auto;color:var(--faint);font-size:var(--fs-xl);line-height:1}.list li.nav>button.link-row{display:flex;align-items:center;gap:.75rem;flex:1;width:100%;min-width:0;padding:.875rem 1rem;border-radius:var(--radius);background:none;color:inherit;font-weight:400;text-align:left}.list li.nav>button.link-row:hover:not(:disabled){background:none}.list li.nav>button.link-row:after{content:"›";margin-left:auto;color:var(--faint);font-size:var(--fs-xl);line-height:1}.list li.nav>button.link-row .box-main{flex:1}.list li.nav>button.link-row small{color:var(--muted);font-size:var(--fs-sm)}form{display:grid;gap:.875rem}label{display:grid;gap:.375rem;color:var(--fg);font-size:var(--fs-base);font-weight:600}input{font:inherit;color:var(--fg);background:var(--surface);border:2px solid transparent;border-radius:var(--radius-input);padding:.75rem .875rem;min-height:3.25rem;min-width:0;font-weight:400;box-shadow:inset 0 0 0 1px var(--input-border)}input::placeholder{color:var(--hint);opacity:1}input:focus{outline:none;border-color:var(--fg);box-shadow:none}button,.button{font:inherit;font-weight:600;display:inline-block;text-align:center;text-decoration:none;background:var(--ink);color:var(--on-ink);border:0;border-radius:var(--pill);padding:.8125rem 1.5rem;min-height:3.25rem;cursor:pointer;transition:background .15s,transform .16s var(--ease-out);-webkit-tap-highlight-color:transparent}button:hover:not(:disabled),.button:hover{background:var(--ink-hover)}button:active:not(:disabled),.button:active{transform:scale(.97)}:focus-visible{outline:2px solid var(--fg);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none}[tabindex="-1"]:focus{outline:none}@media (prefers-reduced-motion: reduce){button,.button,.list li.nav{transition:background .15s}button:active:not(:disabled),.button:active,.list li.nav:active{transform:none}}button:disabled{opacity:.45;cursor:default}.button{display:block;margin-top:.5rem}form>button{width:100%}button.danger{background:var(--red-soft);color:var(--danger);border:1px solid transparent;width:100%;margin-top:2rem}button.danger:hover:not(:disabled){background:var(--red-soft);border-color:var(--danger)}button.icon{flex-shrink:0;background:transparent;color:var(--muted);padding:.5rem;border-radius:var(--radius);font-weight:400;line-height:1;min-height:44px;min-width:44px}button.icon:hover:not(:disabled){background:transparent;color:var(--danger)}button.link{background:none;color:var(--link);padding:0 0 0 .5rem;border-radius:0;font-weight:600;min-height:0;text-decoration:none}button.link:hover{background:none;color:var(--link);text-decoration:underline}button.secondary,.button.secondary{background:var(--raised);color:var(--fg);border:1px solid transparent;width:100%;margin-top:.5rem}button.secondary:hover:not(:disabled){background:var(--raised);border-color:var(--border-strong)}button.outline,.button.outline{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 2px var(--ink)}button.outline:hover:not(:disabled),.button.outline:hover{background:transparent}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:.25rem;background:var(--surface);border-radius:var(--pill);padding:.25rem;margin:0 0 1rem}.segmented button{background:transparent;color:var(--fg);min-height:max(2.5rem,44px);padding:.375rem .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.segmented button:hover:not(:disabled){background:transparent}.segmented button.active,.segmented button.active:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}.list.hours li{display:grid;grid-template-columns:3.2em minmax(0,1fr) auto;align-items:center;gap:.5rem .75rem;padding:.625rem .875rem}.list.hours li.invalid{border-color:var(--danger)}.hours .day{font-weight:600;letter-spacing:.04em;font-size:var(--fs-md)}.hours .times{display:flex;align-items:center;gap:.25rem;min-width:0}.time{display:inline-flex;align-items:center;gap:2px}.time select{font:inherit;font-size:var(--fs-md);font-weight:700;font-family:var(--mono);color:var(--fg);background:var(--bg);border:0;border-radius:var(--radius-s);padding:.5rem .25rem;-moz-appearance:none;appearance:none;-webkit-appearance:none;text-align:center;text-align-last:center;min-width:2.4em}.time select:focus{outline:2px solid var(--fg);outline-offset:1px;border-color:transparent}.hours .note{grid-column:2 / -1;font-size:var(--fs-base);color:var(--muted)}.hours .note.error{color:var(--danger)}.switch{position:relative;display:inline-block;width:2.875rem;height:1.75rem;cursor:pointer}.switch input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;cursor:pointer}.switch span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:9999px;background:var(--border-strong);border:1px solid transparent;transition:background .15s}.switch span:after{content:"";position:absolute;top:.1875rem;left:.1875rem;width:1.25rem;height:1.25rem;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .15s}.switch input:checked+span{background:var(--accent);border-color:var(--accent)}.switch input:checked+span:after{transform:translate(1.125rem)}.switch input:focus-visible+span{outline:2px solid var(--fg);outline-offset:2px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.25rem 0 1rem}.page-head h1{margin:0;min-width:0;overflow-wrap:anywhere}.page-head-3{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;margin:.25rem 0 1rem}.page-head-3 h1{grid-column:2;margin:0;font-size:var(--fs-xl);text-align:center;overflow-wrap:anywhere}.page-head-3>:first-child{justify-self:start}.page-head-3>:last-child{justify-self:end}.head-btn{background:none;color:var(--link);font-weight:600;font-size:var(--fs-lg);padding:.5rem .375rem;border-radius:.5rem;white-space:nowrap;min-height:max(2.75rem,44px)}.head-btn:hover:not(:disabled){background:none;color:var(--link)}.head-btn:disabled{opacity:.4;cursor:default}.head-btn-danger{color:var(--danger)}.head-btn-danger:hover:not(:disabled){background:none;color:var(--danger)}.add-btn{flex-shrink:0;width:max(2.5rem,44px);height:max(2.5rem,44px);display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--on-ink);text-decoration:none;border-radius:var(--pill);font-size:var(--fs-2xl);line-height:1;font-weight:400}.add-btn:hover{background:var(--ink-hover)}.add-btn:focus-visible{outline:2px solid var(--fg);outline-offset:2px;border-radius:.5rem}.list.boxes li.nav>a>.box-main{flex:1}.box-main{display:grid;gap:2px;min-width:0}.box-main>span:first-child:not(.stat-value){font-size:var(--fs-md);font-weight:600}.box-main .hint{font-size:var(--fs-sm);overflow-wrap:anywhere}.maplink{font-size:var(--fs-md);color:var(--link);text-decoration:none;overflow-wrap:anywhere}.maplink:hover{text-decoration:underline}button.maplink{background:none;border:0;padding:0;font-weight:400;border-radius:0;cursor:pointer}button.maplink:hover:not(:disabled){background:none}.box-fields{display:grid;gap:.625rem}.box-fields>h2{margin-bottom:0}.box-fields>h2+*{margin-top:0}input.box-name{width:100%}.box-fields .location{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem .25rem}.box-fields .location .coords{margin-right:.25rem}.box-fields .location button.secondary{margin-top:0}.select-all{margin-top:.5rem}.list li.catalog-edit{display:flex;align-items:flex-start;gap:.75rem}.list li.catalog-edit>.box-fields{flex:1;min-width:0}.catalog-edit-select{width:1.25rem;height:1.25rem;margin-top:.625rem;accent-color:var(--accent);flex-shrink:0}.checkbox-row{display:flex;align-items:center;gap:.625rem;font-size:var(--fs-md);cursor:pointer}.checkbox-row input[type=checkbox]{width:1.125rem;height:1.125rem;min-height:0;padding:0;box-shadow:none;accent-color:var(--accent);flex-shrink:0}.phone-field{display:grid;gap:.5rem}.phone-field .hint{margin:0;font-size:var(--fs-base)}button.save{width:100%;margin-top:.5rem}.box-main .services{font-style:normal}.bottom-dock{position:fixed;left:0;right:0;bottom:0;z-index:10;background:var(--bg);box-shadow:var(--shadow)}.tab-bar{display:grid;max-width:640px;margin:0 auto;padding:.375rem calc(.5rem + var(--inset-right)) calc(.375rem + var(--inset-bottom)) calc(.5rem + var(--inset-left))}.tab{display:flex;flex-direction:column;align-items:center;gap:.1875rem;min-width:0;padding:.25rem .25rem .125rem;border-radius:var(--radius);color:var(--muted);text-decoration:none;-webkit-tap-highlight-color:transparent}.tab.active{color:var(--fg)}.tab:active{background:var(--raised)}.tab-icon{position:relative;display:grid;place-items:center}.tab-icon svg{width:1.5rem;height:1.5rem}.tab.active .tab-icon svg{stroke-width:2.2}.tab.active .tab-label{font-weight:600}.tab-label{font-size:var(--fs-2xs);font-weight:400;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-badge{position:absolute;top:-.3125rem;left:calc(100% - .5rem);display:grid;place-items:center;min-width:1.125rem;height:1.125rem;padding:0 .25rem;border-radius:9999px;background:var(--accent);color:var(--on-accent);font-size:var(--fs-2xs);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--bg)}.tab-badge.alert{background:var(--danger);color:var(--bg)}.has-bottom-nav{padding-bottom:var(--dock-h, calc(4rem + var(--inset-bottom)))}@media (min-width: 880px){.bottom-dock:has(>.tab-bar.admin){display:none}.admin-shell.has-bottom-nav{padding-bottom:0}.admin-switch{display:none}}.list li.nav>button.result{display:grid;justify-items:start;gap:.25rem;flex:1;width:100%;min-width:0;padding:1rem;border-radius:var(--radius);background:none;color:inherit;font-weight:400;text-align:left}.list li.nav>button.result:hover:not(:disabled){background:none}.result-top{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;width:100%}.result-shop{font-size:var(--fs-lg);font-weight:700;letter-spacing:-.01em;min-width:0;overflow-wrap:anywhere}.list.results .hint{margin:0}.distance{color:var(--muted);font:500 var(--fs-xs) var(--mono);white-space:nowrap}.badge{font-size:var(--fs-xs);font-weight:600;letter-spacing:.02em;white-space:nowrap;color:var(--accent-ink);background:var(--accent-soft);border-radius:9999px;padding:2px .625rem}.chips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .75rem}.chip{font-size:var(--fs-sm);font-weight:500;padding:.25rem .75rem;background:var(--accent-soft);color:var(--accent-ink);border:1px solid transparent;border-radius:9999px}.chip:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-ink)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#00000073;opacity:0;transition:opacity .25s ease}.sheet-backdrop.open{opacity:1}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:21;max-height:85vh;max-height:85dvh;max-width:640px;margin:0 auto;display:flex;flex-direction:column;background:var(--bg);border-radius:var(--radius-l) var(--radius-l) 0 0;border:0;box-shadow:var(--shadow)}.sheet-grab{flex-shrink:0;display:grid;place-items:center;padding:.75rem 0 .5rem;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.sheet-grab span{width:2.5rem;height:.3125rem;border-radius:9999px;background:var(--border-strong)}.sheet-body{overflow-y:auto;padding:0 calc(1rem + var(--inset-right)) calc(1.25rem + var(--inset-bottom)) calc(1rem + var(--inset-left))}.sheet-body h1{margin:0 0 .25rem;overflow-wrap:anywhere}.sheet-body h2{margin-top:1.25rem}.sheet-actions{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:1.25rem}.popup-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000073;display:flex;align-items:center;justify-content:center;padding:calc(1rem + var(--inset-top)) calc(1rem + var(--inset-right)) calc(1rem + var(--inset-bottom)) calc(1rem + var(--inset-left))}.popup{width:100%;max-width:22rem;max-height:100%;overflow-y:auto;background:var(--bg);border:0;border-radius:var(--radius-l);box-shadow:var(--shadow);padding:1rem}.popup-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.875rem}.popup-head h2{flex:1;margin:0;min-width:0;overflow-wrap:anywhere}.popup-pin{flex:none;width:1.5rem;height:1.5rem;color:var(--accent)}button.popup-close{flex:none;display:grid;place-items:center;width:44px;height:44px;padding:0;min-height:0;background:var(--raised);color:var(--muted);border:1px solid transparent;border-radius:var(--radius)}button.popup-close:hover:not(:disabled){background:var(--surface);color:var(--fg);border-color:var(--fg)}.popup-close svg{width:1rem;height:1rem}.popup-list{display:grid;gap:.5rem}.nav-option{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;min-width:0;background:var(--surface);border:1px solid transparent;border-radius:var(--radius);color:var(--fg);font-size:var(--fs-md);font-weight:600;text-decoration:none;cursor:pointer}.nav-option:hover{border-color:var(--border-strong)}.nav-name{flex:1;min-width:0;overflow-wrap:anywhere}.nav-icon{flex:none;width:2.25rem;height:2.25rem;border-radius:.625rem;display:grid;place-items:center;color:#fff}.nav-icon svg{width:1.375rem;height:1.375rem}.nav-chevron{flex:none;width:1.25rem;height:1.25rem;color:var(--muted)}.call-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000073;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 calc(.5rem + var(--inset-right)) calc(.5rem + var(--inset-bottom)) calc(.5rem + var(--inset-left))}.call-sheet{width:100%;max-width:640px;display:grid;gap:.5rem}.call-number,.call-cancel{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;border:0;border-radius:.875rem;font-size:var(--fs-xl);text-align:center;text-decoration:none;cursor:pointer;transition:transform .16s var(--ease-out)}.call-number{background:var(--tg-theme-button-color, #3390ec);color:var(--tg-theme-button-text-color, #fff);font-weight:600}.call-number svg{width:1.25rem;height:1.25rem}.call-cancel{background:var(--bg);color:var(--tg-theme-link-color, #3390ec);font-weight:600}.call-number:active,.call-cancel:active{transform:scale(.98)}.phone-link{display:inline;padding:0;border:0;background:none;font:inherit;cursor:pointer;min-height:0;color:var(--tg-theme-link-color, #3390ec);text-align:left}@media (prefers-reduced-motion: reduce){.call-number,.call-cancel{transition:none}.call-number:active,.call-cancel:active{transform:none}}.catalog-tabs{display:flex;gap:.375rem;margin:0 0 .75rem}.catalog-tabs a{flex:1;text-align:center;padding:.625rem;border-radius:var(--pill);font-size:var(--fs-base);font-weight:600;color:var(--fg);text-decoration:none}.catalog-tabs{background:var(--surface);border-radius:var(--pill);padding:4px;gap:4px}.catalog-tabs a.active{color:var(--on-ink);background:var(--ink)}.list li.editing,.admin-shell{display:block}.admin-sidebar{display:none}.admin-content{display:block}.stat-value{font-size:var(--fs-3xl);font-weight:800;letter-spacing:-.03em}@media (min-width: 880px){.admin-shell{display:flex;align-items:flex-start;max-width:1180px;margin:0 auto}.admin-sidebar{display:flex;flex-direction:column;gap:2px;flex:0 0 12.5rem;padding:1.75rem .75rem;border-right:1px solid var(--border);min-height:100vh}.admin-sidebar-title{font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:.5rem .75rem .875rem}.admin-sidebar a{padding:.5rem .75rem;border-radius:var(--radius);color:var(--fg);text-decoration:none;font-weight:500;font-size:var(--fs-base)}.admin-sidebar a:hover{background:var(--raised)}.admin-sidebar a.active{background:var(--ink);color:var(--on-ink)}.admin-content{flex:1;min-width:0}.admin-content main{max-width:920px;margin:0;padding:1.75rem 2rem 2.5rem}.list.tile-grid{grid-template-columns:repeat(auto-fill,minmax(16.25rem,1fr))}.list.tile-grid li.editing{grid-column:1 / -1}}.list li.nav{flex-wrap:nowrap}.list li.inactive .box-main{color:var(--muted)}.model-add{display:flex;align-items:center;gap:.5rem}.model-add input{flex:1;min-width:0}.list li.model-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto) auto;align-items:center;gap:.5rem}.model-row .model-years,.model-row .error{grid-column:1 / -1}.model-row input{flex:1;min-width:0}.model-row input,.model-row select.powertrain{background:var(--bg)}.list li.model-row{padding:.75rem;min-width:0}.model-years{display:flex;align-items:center;gap:.5rem;flex-basis:100%}.model-years input{flex:1 1 0}.model-add+.model-years{margin-top:.5rem}.model-row .error{flex-basis:100%;margin:0}.model-add select.powertrain,.model-row select.powertrain{flex:0 1 auto;min-width:0;max-width:40%}.model-row select.powertrain{max-width:none}.factor-list li{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem}.factor-list .factor-group{min-width:0;overflow-wrap:anywhere}.factor-list .hint{flex-shrink:0;margin:0}.chips{display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;margin:.5rem 0 1rem;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.chips::-webkit-scrollbar{display:none}button.chip{flex-shrink:0;background:var(--surface);color:var(--fg);border:1px solid transparent;padding:.5rem 1rem;font-weight:600;white-space:nowrap;border-radius:var(--pill);min-height:max(2.75rem,44px)}button.chip:hover:not(:disabled){background:var(--surface);border-color:var(--border-strong)}button.chip.active,button.chip.active:hover:not(:disabled){background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.slot-grid button.chip.active,.slot-grid button.chip.active:hover:not(:disabled){background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.5rem;margin:.5rem 0 1rem}.slot-grid button.chip{padding:.625rem 0;font-family:var(--mono);font-size:var(--fs-base)}.car-form select,select.district-select,select.minutes,select.powertrain,.assignee-field select{font:inherit;color:var(--fg);background:var(--surface);min-width:0;min-height:3.25rem;border:2px solid transparent;border-radius:var(--radius-input);padding:.625rem .75rem;box-shadow:inset 0 0 0 1px var(--input-border)}select.district-select{width:100%;font-weight:400;padding:.75rem 2.5rem .75rem .875rem;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:right 1.25rem center,right .9rem center;background-size:.375rem .375rem;background-repeat:no-repeat}select.district-select:focus{outline:none;border-color:var(--fg);box-shadow:none}.car-form select:focus,select.minutes:focus,select.powertrain:focus,.assignee-field select:focus{outline:none;border-color:var(--fg);box-shadow:none}select.minutes,select.powertrain{padding:.375rem .5rem;font-size:var(--fs-base)}.car-form{display:grid;gap:.75rem;margin-top:.5rem}.car-form button{width:100%}.inline-select{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem;color:var(--fg);font-size:var(--fs-md);font-weight:400}.list.bookings li.booking{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}.booking-main{display:grid;gap:.25rem;min-width:0;overflow-wrap:anywhere}.booking-main>strong{font-family:var(--mono);font-weight:800;font-size:var(--fs-lg);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.status-badge{font-size:var(--fs-xs);font-weight:600;white-space:nowrap;border-radius:9999px;padding:2px .625rem;background:var(--raised);color:var(--muted)}.status-booked .status-badge{background:var(--accent-soft);color:var(--accent-ink)}.status-arrived .status-badge{background:var(--hero);color:var(--on-hero)}.status-in_progress .status-badge{background:var(--accent);color:var(--on-accent)}.status-done .status-badge{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--border-strong)}.status-displaced .status-badge,.status-no_show .status-badge{background:var(--orange-soft);color:var(--orange)}.status-cancelled .status-badge,.status-declined .status-badge,.status-expired .status-badge{background:var(--red-soft);color:var(--red)}.status-pending .status-badge{background:var(--orange-soft);color:var(--orange)}.status-in_progress.booking{border-color:var(--accent)}.status-cancelled .booking-main,.status-no_show .booking-main,.status-declined .booking-main,.status-expired .booking-main,.status-done .booking-main{color:var(--muted)}.booking>button.secondary,.booking-actions{grid-column:1 / -1}.booking>button.secondary{margin-top:0}.booking-actions{display:flex;flex-wrap:wrap;gap:.5rem}.booking-actions button{flex:1;min-width:6rem;padding:.5rem .75rem;margin-top:0;width:auto}.lane h2{margin-top:1.25rem}.list.bookings li.booking.nav{display:block}.booking-open{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem;width:100%;padding:.875rem 1rem;background:none;color:inherit;font-weight:400;text-align:left;border-radius:inherit}.booking-open:hover:not(:disabled){background:none}.sheet-body .booking-actions{margin-top:1rem}.calendar{background:var(--surface);border:0;border-radius:var(--radius);padding:.5rem .5rem .75rem;margin:.5rem 0 1rem}.calendar-head{display:flex;align-items:center;gap:.25rem;margin-bottom:.25rem}.calendar-head strong{flex:1;text-align:center;text-transform:capitalize}.calendar-head button.icon{font-size:var(--fs-xl);padding:.125rem .75rem;color:var(--fg)}.calendar-head button.icon:hover:not(:disabled){color:var(--fg)}.calendar-head button.link{padding:0 .25rem;font-size:var(--fs-sm);text-decoration:none}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem}.calendar-weekday{text-align:center;font-size:var(--fs-2xs);font-weight:600;letter-spacing:.04em;color:var(--muted);padding:.25rem 0}button.calendar-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.125rem;min-width:0;min-height:max(2.75rem,44px);padding:.375rem 0 .25rem;border-radius:var(--pill);background:transparent;color:var(--fg);font-weight:700;font-variant-numeric:tabular-nums}button.calendar-day:hover:not(:disabled){background:var(--raised)}button.calendar-day.outside{color:var(--muted)}button.calendar-day.today{box-shadow:inset 0 0 0 2px var(--fg)}button.calendar-day.selected,button.calendar-day.selected:hover:not(:disabled){background:var(--ink);color:var(--on-ink);opacity:1}.calendar-mark{font-size:var(--fs-2xs);font-weight:700;line-height:1;min-width:1.125rem;padding:2px .25rem;border-radius:9999px;background:var(--accent);color:var(--on-accent)}.selected .calendar-mark{background:var(--accent);color:var(--on-accent)}.calendar-dot{width:.3125rem;height:.3125rem;margin-top:.25rem;border-radius:50%;background:var(--faint)}.selected .calendar-dot{background:var(--on-ink)}.board-day{margin:1.25rem 0 .25rem;text-transform:capitalize}.board-lanes{transition:opacity .15s}.board-lanes.stale{opacity:.5;pointer-events:none}.notice{background:var(--orange-soft);color:var(--fg);border-radius:var(--radius);padding:.75rem 1rem .75rem 2.5rem;margin:.75rem 0;position:relative}.notice:before{content:"";position:absolute;left:.875rem;top:.9375rem;width:1.125rem;height:1.125rem;background:var(--orange);-webkit-mask:var(--icon-warn) center / contain no-repeat;mask:var(--icon-warn) center / contain no-repeat}:root{--icon-warn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z'/%3E%3Cpath d='M12 9v4M12 17h.01'/%3E%3C/svg%3E")}.notice-inline{color:var(--orange);font-weight:600;font-size:var(--fs-base)}.booking-actions.extend{align-items:center}.booking-actions.extend .hint{flex-basis:100%;font-size:var(--fs-sm)}.booking-actions.attend{margin:.75rem 0 .25rem}.button.secondary{background:var(--raised);color:var(--fg);border:1px solid transparent}.button.secondary:hover{background:var(--raised);border-color:var(--border-strong)}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;max-width:none;margin:0;padding:0;display:flex;align-items:center;justify-content:center;background:#00000040}.loading-screen~.loading-screen{display:none}.loader{width:7.5rem;height:7.5rem}.loader-rim{transform-box:fill-box;transform-origin:center;animation:loader-spin .8s linear infinite}.loader-tick{stroke-dasharray:1;animation:loader-tick 2.4s ease-in-out infinite both}.loader-tick.second{animation-delay:.45s}@keyframes loader-spin{to{transform:rotate(360deg)}}@keyframes loader-tick{0%,8%{stroke-dashoffset:1;opacity:1}28%,82%{stroke-dashoffset:0;opacity:1}96%,to{stroke-dashoffset:0;opacity:0}}@media (prefers-reduced-motion: reduce){.loader-rim,.loader-tick{animation:none}}.home-head{margin:.25rem 0 1rem}.home-hello{margin:0 0 .125rem;color:var(--muted);font-weight:500}.home-head h1{margin:0 0 .375rem;font-size:var(--fs-2xl);letter-spacing:-.03em;line-height:1.05}.home-head .hint{margin:0}.search-field{display:flex;align-items:center;gap:.5rem;padding:0 .875rem;background:var(--surface);border:2px solid transparent;border-radius:var(--radius-input);color:var(--muted);box-shadow:inset 0 0 0 1px var(--input-border)}.search-field:focus-within{border-color:var(--fg);box-shadow:none}.search-field svg{width:1.25rem;height:1.25rem;flex:none}.search-field input,.search-field input:focus{flex:1;border:0;background:none;padding-left:0;padding-right:0;box-shadow:none}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.section-head{margin:1.5rem 0 .5rem}.section-head h2{flex:1;margin:0}.section-head button.link{padding:.25rem 0}.recent-row{display:flex;gap:.5rem;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -1rem;padding:0 1rem 2px;scroll-padding:0 1rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}.recent-row::-webkit-scrollbar{display:none}.service-name{flex:1;min-width:0;overflow-wrap:anywhere}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hero-block{display:grid;gap:.625rem;margin:.25rem 0 1rem;padding:1.125rem;border-radius:var(--radius);background:var(--hero);color:var(--on-hero)}.hero-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.hero-block .hero-time{font-size:var(--fs-3xl);letter-spacing:-.05em}.hero-actions{display:flex;gap:.5rem}button.hero-btn,button.hero-btn:hover:not(:disabled){flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:max(2.75rem,44px);padding:.5rem 1rem;background:color-mix(in srgb,var(--on-hero) 14%,transparent);color:var(--on-hero)}.hero-actions svg{width:1.125rem;height:1.125rem}.status-displaced .hero-pill,.status-cancelled .hero-pill,.status-no_show .hero-pill,.status-pending .hero-pill,.status-declined .hero-pill,.status-expired .hero-pill{background:var(--on-hero);color:var(--hero)}.soft-card{background:var(--accent-soft);color:var(--fg);border-radius:var(--radius);padding:.875rem 1rem;margin:.75rem 0}.soft-card>strong{display:block;font-size:var(--fs-xs);color:var(--accent-ink)}.soft-card p{margin:.125rem 0 0}.timeline-card{background:var(--surface);border-radius:var(--radius);padding:.875rem 1rem;margin:.75rem 0}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:.625rem}.timeline li{position:relative;display:flex;align-items:center;gap:.75rem;min-height:1.5rem;color:var(--muted)}.timeline li:not(:last-child):after{content:"";position:absolute;left:calc(.375rem - 1px);top:1.125rem;height:1.125rem;width:2px;background:var(--border-strong)}.timeline li.step-done:not(:last-child):after{background:var(--fg)}.timeline-dot{flex:none;width:.75rem;height:.75rem;border-radius:50%;box-shadow:inset 0 0 0 2px var(--border-strong)}.timeline .step-done,.timeline .step-now,.timeline .step-end{color:var(--fg);font-weight:600}.timeline .step-done .timeline-dot{background:var(--fg);box-shadow:none}.timeline .step-now .timeline-dot{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.timeline .step-end .timeline-dot{background:var(--red);box-shadow:none}.timeline-label{flex:1;min-width:0}.timeline-at{color:var(--muted);font-weight:500;font-variant-numeric:tabular-nums}.timeline-card>.hint{margin:.625rem 0 0}.booking-page .day-link{display:flex;justify-content:center;margin-top:1.25rem}.list.results li.nav.closest{background:var(--hero);color:var(--on-hero)}.list.results li.nav.closest .hint,.list.results li.nav.closest .distance{color:var(--hero-muted)}.list.results li.nav.closest .distance{color:var(--on-hero)}.list.results li.nav.closest .badge{background:var(--accent);color:var(--on-accent)}.free-from{margin-top:.5rem;font-size:var(--fs-base);font-weight:600;color:var(--muted)}.free-from.today{color:var(--green)}.list.results li.nav.closest .free-from{color:var(--accent)}.list.results li.nav.closest .badge{margin-bottom:.25rem}.list.results .distance{font:800 var(--fs-xl) var(--font);letter-spacing:-.03em;color:var(--fg)}.list.menu li.current{background:var(--hero);color:var(--on-hero)}.list.menu li.current .hint{color:var(--hero-muted)}.list.menu li.current .menu-icon{background:var(--accent);color:var(--on-accent)}.day-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:.5rem 0 .75rem}.day-stat{display:grid;padding:.625rem .75rem;border-radius:var(--radius);background:var(--surface);font-size:var(--fs-xs);color:var(--muted)}.day-stat strong{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--fg)}.day-stat.hero{background:var(--hero);color:var(--hero-muted)}.day-stat.hero strong{color:var(--on-hero)}.day-stat.soft{background:var(--accent-soft);color:var(--accent-ink)}.hero-card.accent{background:var(--accent);color:var(--on-accent)}.hero-card.accent .hero-sub{color:var(--on-accent);font-size:var(--fs-lg);font-weight:600}h2>svg{width:1.25rem;height:1.25rem;vertical-align:-.2em}.service-icon{flex:none;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:9999px;background:var(--bg);color:var(--fg)}.service-icon svg{width:1.25rem;height:1.25rem}.service-rows .service-icon{width:2rem;height:2rem}.service-rows .service-icon svg{width:1.125rem;height:1.125rem}.service-group-icon{display:inline-grid}.service-group-icon svg{width:1.125rem;height:1.125rem}.icon-picker{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0 0;padding:0;border:0;min-width:0}.icon-picker legend{padding:0;margin-bottom:.5rem}button.icon-choice{display:grid;place-items:center;width:max(3rem,44px);height:max(3rem,44px);padding:0;margin:0;background:var(--surface);color:var(--fg);border:2px solid transparent;border-radius:var(--radius-input)}button.icon-choice.auto{display:flex;gap:.5rem;width:auto;padding:0 .875rem 0 .375rem;font-weight:600;font-size:var(--fs-sm)}button.icon-choice.on,button.icon-choice.on:hover:not(:disabled){border-color:var(--ink)}button.icon-choice .service-icon{background:none}.card-field-edit{display:grid;gap:.5rem;margin:0;padding:.75rem;border:0;border-radius:var(--radius);background:var(--surface);min-width:0}.card-field-head{display:flex;align-items:center;gap:.25rem}.card-field-head strong{flex:1;min-width:0;overflow-wrap:anywhere}.card-field-edit .field-title{margin-top:.25rem}.card-option-edit{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.375rem;align-items:center}@media (max-width: 480px){.card-option-edit{grid-template-columns:minmax(0,1fr) auto}.card-option-edit>button{grid-row:1;grid-column:2}}.card-field-edit button.link{justify-self:start}.hero-card{display:flex;align-items:center;gap:1rem;margin:1rem 0 0;padding:1rem 1.125rem;border-radius:var(--radius);background:var(--hero);color:var(--on-hero);text-decoration:none;transition:transform .16s var(--ease-out)}.hero-card:active{transform:scale(.98)}.hero-main{flex:1;min-width:0;display:grid;gap:.25rem}.hero-muted{font-size:var(--fs-sm);color:var(--hero-muted)}.hero-time{font-size:var(--fs-3xl);font-weight:800;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}.hero-sub{font-size:var(--fs-base);color:var(--hero-muted);overflow-wrap:anywhere}.hero-pill{flex:none;font-size:var(--fs-xs);font-weight:600;padding:.375rem .75rem;border-radius:var(--pill);background:var(--accent);color:var(--on-accent)}@media (prefers-reduced-motion: reduce){.hero-card:active{transform:none}}.now-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}button.now-card{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;min-height:9rem;min-width:0;padding:.875rem;border-radius:var(--radius);text-align:left;font-weight:400}button.now-card.running,button.now-card.running:hover:not(:disabled){background:var(--hero);color:var(--on-hero)}button.now-card.arrived,button.now-card.arrived:hover:not(:disabled){background:var(--accent-soft);color:var(--fg)}.now-where{font-size:var(--fs-xs);color:var(--hero-muted);overflow-wrap:anywhere}.now-card.arrived .now-where{color:var(--accent-ink)}.now-who{font-weight:600;overflow-wrap:anywhere}.now-big{margin-top:auto;font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}.now-big.long{font-size:var(--fs-xl);letter-spacing:-.02em;line-height:1.15}.field-title{display:block;font-size:var(--fs-base);font-weight:600;margin-top:.75rem}button.primary-lg.accent,button.primary-lg.accent:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.primary-extra{margin-left:auto;color:var(--ink-accent)}button.primary-lg:has(.primary-extra){justify-content:flex-start;padding:0 1.5rem}.walk-in button.primary-lg{margin-top:1rem}.has-action{padding-bottom:8rem}.action-bar{position:fixed;z-index:9;left:0;right:0;bottom:var(--dock-h, 4rem);padding:1.25rem calc(1rem + var(--inset-right)) .5rem calc(1rem + var(--inset-left));background:linear-gradient(to bottom,transparent,var(--bg) 1.25rem)}.action-bar>*{max-width:608px;margin-left:auto;margin-right:auto}button.primary-lg{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:3.5rem;font-size:var(--fs-lg);border-radius:var(--pill)}.primary-lg svg{width:1.25rem;height:1.25rem;flex:none}button.primary-lg.more{width:auto;min-width:11rem;margin:1rem auto 0;padding:0 1.75rem}.empty{display:grid;gap:.5rem;justify-items:center;text-align:center;padding:2rem 1rem}.empty .button{margin:0}.props{margin:.75rem 0 1rem;padding:.375rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);display:grid}.prop{display:grid;grid-template-columns:1.25rem 5.5rem minmax(0,1fr);gap:.5rem;align-items:start;padding:.375rem 0;font-size:var(--fs-base)}.prop-icon{color:var(--faint);padding-top:.125rem}.prop-icon svg{width:1rem;height:1rem;display:block}.prop dt{color:var(--muted)}.prop dd{margin:0;min-width:0;overflow-wrap:anywhere}.callout{position:relative;border-radius:var(--radius);padding:.75rem 1rem .75rem 2.5rem;margin:.75rem 0;color:var(--fg)}.callout:before{content:"";position:absolute;left:.875rem;top:.9375rem;width:1.125rem;height:1.125rem;-webkit-mask:var(--callout-icon) center / contain no-repeat;mask:var(--callout-icon) center / contain no-repeat}.callout.info{background:var(--blue-soft);--callout-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4M12 8h.01'/%3E%3C/svg%3E")}.callout.info:before{background:var(--blue)}.callout.danger{background:var(--red-soft);--callout-icon: var(--icon-warn)}.callout.danger:before{background:var(--red)}.calendar.week{padding-bottom:.5rem}.calendar.week .calendar-grid{grid-template-rows:auto auto}.calendar-head button.link{white-space:nowrap}.booking-actions.extend button{flex:0 0 auto;min-width:0;min-height:max(2.75rem,44px);padding:.25rem 1rem;font:800 var(--fs-base) var(--mono)}.lane>h2{display:flex;justify-content:space-between}.lane>h2 button.link{font-size:var(--fs-sm);font-weight:600}.walk-in .chips{flex-wrap:wrap;overflow:visible;margin:.375rem 0 .875rem}.walk-in>label{margin:.75rem 0 1rem}.avatar{flex-shrink:0;width:3.25rem;height:3.25rem;border-radius:9999px;display:grid;place-items:center;font-weight:800;font-size:var(--fs-xl);background:var(--accent);color:var(--on-accent)}.list.menu li.nav>a>.box-main,.list.menu .menu-row>.box-main{flex:1}.list.menu .menu-row{display:flex;align-items:center;gap:.75rem;width:100%;text-align:left;font:inherit;color:inherit;background:none;border:0;border-radius:0;box-shadow:none;min-height:0;padding:.875rem 1rem;flex:1;cursor:pointer}.list.menu li.current .menu-row{cursor:default}.menu-icon{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:var(--radius);display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink)}.menu-icon svg{width:1.25rem;height:1.25rem}.menu-icon.flag,.list.menu li.current .menu-icon.flag{font-size:var(--fs-xl);background:var(--surface)}.req-badge{font-size:var(--fs-xs);font-weight:600;white-space:nowrap;border-radius:9999px;padding:2px .625rem}.req-badge.req-pending{background:var(--blue-soft);color:var(--blue)}.req-badge.req-approved{background:var(--green-soft);color:var(--green)}.req-badge.req-rejected{background:var(--red-soft);color:var(--red)}textarea{font:inherit;color:var(--fg);background:var(--surface);resize:vertical;border:2px solid transparent;border-radius:var(--radius-input);padding:.75rem .875rem;min-width:0;width:100%;box-sizing:border-box;box-shadow:inset 0 0 0 1px var(--input-border)}textarea::placeholder{color:var(--hint);opacity:1}textarea:focus{outline:none;border-color:var(--fg);box-shadow:none}.pre{white-space:pre-wrap}.list li.request{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}.request-actions{grid-column:1 / -1;display:grid;gap:.5rem}.request-actions .secondary{margin-top:0}.booking-comment{white-space:pre-wrap;overflow-wrap:anywhere}.booking-comment-line{font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.booking-comment-field{display:grid;gap:.5rem;margin-top:1rem}.booking-notes{margin-top:1.25rem}.booking-notes>h2{margin-top:0}.note-group{margin-top:.75rem}.note-group>h3{font-size:var(--fs-base);font-weight:600;margin:0 0 .375rem}.note-group>h3:empty{display:none}.note-group>.hint{margin:0 0 .25rem;font-size:var(--fs-base)}.note-list{list-style:none;margin:0 0 .25rem;padding:0;display:grid;gap:.5rem}.note-list>li{background:var(--surface);border-radius:var(--radius);padding:.625rem .875rem;min-width:0}.note-body{margin:0 0 .25rem;white-space:pre-wrap;overflow-wrap:anywhere}.note-meta{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;flex-wrap:wrap;font-size:var(--fs-xs)}.note-actions{display:flex;gap:.75rem}.note-actions button.link{padding:0;font-size:var(--fs-xs)}.shop-notes .note-list>li{background:var(--surface);box-shadow:var(--card-shadow)}button.link.note-delete{color:var(--danger)}button.link.note-delete:hover:not(:disabled){color:var(--danger)}button.link.note-add{padding:.25rem 0}.note-form{display:grid;gap:.5rem;margin-top:.25rem}.note-form-actions{display:flex;gap:.5rem;justify-content:flex-end}.note-form-actions button{flex:0 1 auto;min-width:6rem}.shop-comment-field{display:grid;gap:.5rem;margin-top:1rem}.shop-comment-field .hint{margin:0;font-size:var(--fs-sm)}.map-view-wrap{position:relative;z-index:0;width:100%;height:100%}.map-view{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface);font-family:var(--font)}button.map-locate{position:absolute;z-index:1000;right:.75rem;bottom:.75rem;display:grid;place-items:center;width:max(2.75rem,44px);height:max(2.75rem,44px);margin:0;padding:0;border-radius:50%;background:var(--bg);color:var(--fg);box-shadow:0 2px 10px #0000002e;transition:transform .16s var(--ease-out)}button.map-locate:hover:not(:disabled){background:var(--bg)}button.map-locate:active{transform:scale(.94)}button.map-locate:disabled{opacity:1;color:var(--muted)}button.map-locate svg{width:1.25rem;height:1.25rem}@media (prefers-reduced-motion: reduce){button.map-locate:active{transform:none}}.map-credits{position:absolute;z-index:1000;left:.75rem;bottom:.75rem;display:flex;align-items:center;gap:.375rem;max-width:calc(100% - 5rem);padding:.125rem;border-radius:var(--pill);background:var(--bg);color:var(--fg);box-shadow:0 1px 4px #00000026;font-size:var(--fs-2xs)}.map-credits button{position:relative;display:grid;place-items:center;flex:none;width:1rem;height:1rem;margin:0;padding:0;border-radius:50%;background:var(--surface);color:var(--fg);font:italic 700 .625rem/1 Georgia,serif}.map-credits button:before{content:"";position:absolute;inset:min(-.625rem,-14px)}.map-credits button:hover:not(:disabled){background:var(--surface)}.map-credits span{padding-right:.5rem;overflow-wrap:anywhere}.map-credits a{color:var(--link)}:root[data-theme=dark] .map-view .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.9) contrast(.9)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .map-view .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.9) contrast(.9)}}.map-pin-wrap,.map-user-wrap{background:none;border:0}.map-pin{position:absolute;left:2px;top:2px;width:28px;height:28px;display:grid;place-items:center;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--accent);border:2px solid #111111;box-shadow:0 2px 6px #0000004d}.map-pin:after{content:"";width:8px;height:8px;border-radius:50%;background:#111}.map-pin:has(b):after{display:none}.map-pin b{transform:rotate(45deg);font-size:12px;font-weight:800;color:#111}.map-user{display:block;width:16px;height:16px;margin:2px;border-radius:50%;background:#1f6feb;border:3px solid #ffffff;box-shadow:0 0 0 6px #1f6feb40}main.map-page{position:fixed;top:0;left:0;right:0;bottom:var(--dock-h, 4rem);max-width:none;margin:0;padding:0;display:flex;flex-direction:column}.map-page>.map-view-wrap{flex:1;min-height:0;height:auto}.map-page button.map-locate,.map-page .map-credits{bottom:2.25rem}.map-status{position:absolute;z-index:2;top:calc(var(--inset-top) + 7.75rem);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.25rem;max-width:calc(100% - 2rem);padding:.5rem 1rem;border-radius:var(--pill);background:var(--bg);box-shadow:0 2px 10px #0000002e;font-size:var(--fs-sm);font-weight:600}.map-sheet{position:relative;z-index:2;flex:none;display:flex;flex-direction:column;max-height:45dvh;margin-top:-1.5rem;background:var(--bg);border-radius:var(--radius-l) var(--radius-l) 0 0;box-shadow:0 -4px 20px #0000001a}.map-sheet-body{overflow-y:auto;padding:0 calc(1rem + var(--inset-right)) 1rem calc(1rem + var(--inset-left))}.map-sheet-body>*{max-width:608px;margin-left:auto;margin-right:auto}.map-sheet-body .chips{margin:.75rem 0 0}.map-sheet-body .notice{margin:0 0 .75rem}.map-sheet-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.map-sheet-head h2{margin:0;font-size:var(--fs-xl);font-weight:800;letter-spacing:-.02em}.map-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.map-card-head h2{min-width:0;margin:.25rem 0 0;font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.03em;overflow-wrap:anywhere}.map-card-head h2 a{color:inherit;text-decoration:none}.map-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin:.25rem 0 .75rem;font-size:var(--fs-sm)}.map-card-meta .hint{margin:0}.map-card-addr{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.625rem;row-gap:.125rem;margin:0 0 .75rem}.map-card-addr svg{width:1.25rem;height:1.25rem;color:var(--muted)}.map-card-addr .hint{grid-column:2;margin:0;font-size:var(--fs-sm)}.map-card-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem;margin-bottom:1rem}.open-pill{padding:.25rem .75rem;border-radius:var(--pill);background:var(--green-soft);color:var(--green);font-size:var(--fs-xs);font-weight:600}.open-pill.closed{background:var(--surface);color:var(--muted)}.map-card-actions{display:flex;align-items:center;gap:.625rem}.map-card-actions button.primary-lg{flex:1;min-width:0}.round-btn.big{width:3.5rem;height:3.5rem}.map-icon-wrap{background:none;border:0}.map-icon{position:absolute;left:4px;top:4px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#111;color:#fff;border:2px solid #ffffff;box-shadow:0 2px 6px #0000004d;cursor:pointer;transition:transform .15s var(--ease-out)}.map-icon svg{width:18px;height:18px}.map-icon.on{background:var(--accent);color:var(--on-accent);transform:scale(1.25)}.map-icon b{position:absolute;top:-6px;right:-8px;min-width:18px;height:18px;padding:0 4px;border-radius:9999px;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);border:2px solid #ffffff;font:800 11px/1 var(--font)}.map-icon.on b{background:#111;color:#fff}.map-icon.ideal:not(.on){background:#1e7a3a}.map-ideal-key{display:flex;align-items:center;gap:.5rem;margin:0 0 .5rem;color:var(--muted);font-size:var(--fs-sm)}.map-ideal-key span{width:.75rem;height:.75rem;flex:none;border-radius:50%;background:#1e7a3a}@media (prefers-reduced-motion: reduce){.map-icon{transition:none}}.location-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;width:100%}.location-actions button.secondary{margin-top:0;min-width:0;display:flex;align-items:center;justify-content:center;gap:.5rem;padding-inline:.75rem}.location-actions svg,.maplink svg,.icon-text svg,button.icon svg{width:1.125rem;height:1.125rem;flex-shrink:0}.maplink,.icon-text{display:inline-flex;align-items:center;gap:.375rem}.map-picker{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--bg)}.map-picker-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:calc(var(--inset-top) + .75rem) calc(1rem + var(--inset-right)) .75rem calc(1rem + var(--inset-left))}.map-picker-head h2{margin:0}.map-picker-map{position:relative}.map-picker-pin{left:50%;top:50%;z-index:1;margin:-34px 0 0 -14px;pointer-events:none}.map-picker-foot{padding:.75rem calc(1rem + var(--inset-right)) calc(.75rem + var(--inset-bottom)) calc(1rem + var(--inset-left))}.map-picker-foot .hint{margin:0 0 .75rem}.map-picker-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.map-picker-actions button{margin-top:0;min-width:0}.welcome .welcome-skip{display:block;margin:1rem auto 0}.ptr{position:fixed;left:50%;top:var(--inset-top);z-index:60;pointer-events:none;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--surface);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transform:translate(-50%,-48px);opacity:0;transition:transform .25s var(--ease-out),opacity .2s}.ptr.dragging{transition:none}.ptr span{width:1.125rem;height:1.125rem;border:2px solid var(--muted);border-top-color:transparent;border-radius:50%}.ptr.ready span,.ptr.spinning span{border-color:var(--fg);border-top-color:transparent}.ptr.spinning{opacity:1}.ptr.spinning span{animation:ptr-spin .7s linear infinite}@keyframes ptr-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.ptr{transition:none}.ptr.spinning span{animation-duration:2s}}.swipe-back{position:fixed;left:0;top:50%;z-index:60;pointer-events:none;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--surface);color:var(--muted);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transform:translate(-48px,-50%);opacity:0;transition:transform .25s var(--ease-out),opacity .2s,background .15s,color .15s}.swipe-back.dragging{transition:background .15s,color .15s}.swipe-back.ready{background:var(--ink);color:var(--on-ink)}@media (prefers-reduced-motion: reduce){.swipe-back{transition:none}}.district-list{list-style:none;margin:0;padding:0;display:grid;gap:.375rem}.district-row{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:0;border-radius:var(--radius-input);background:var(--surface);color:var(--fg);font:inherit;text-align:left;cursor:pointer}.district-row.on{background:var(--ink);color:var(--on-ink)}.district-row svg{width:1.25rem;height:1.25rem;flex:none}.district-row-main{display:grid;flex:1;min-width:0;font-weight:600}.district-row-main small{font-weight:400}.home section{margin-top:.25rem}.section-head{align-items:center}.section-link{color:var(--link);font-weight:600;font-size:var(--fs-base);text-decoration:none;white-space:nowrap}.all-services .action-bar .primary-extra{color:var(--accent)}.round-btn{display:grid;place-items:center;flex:none;width:max(2.75rem,44px);height:max(2.75rem,44px);border-radius:50%;background:var(--surface);color:var(--fg);transition:transform .16s var(--ease-out)}.round-btn:active{transform:scale(.94)}.round-btn svg{width:1.25rem;height:1.25rem}.chips.wrap{flex-wrap:wrap;overflow:visible;margin:0 0 1rem}.chips button.chip{display:inline-flex;align-items:center;gap:.375rem}.chips button.chip svg{width:1rem;height:1rem}.chip-link{display:inline-flex;align-items:center;gap:.375rem;min-height:max(2.75rem,44px);padding:.5rem 1rem;border-radius:var(--pill);background:var(--surface);color:var(--fg);font-weight:600;text-decoration:none;white-space:nowrap}.chip-link svg{width:1rem;height:1rem}@media (prefers-reduced-motion: reduce){.round-btn:active{transform:none}}.shop-photo{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius);background:var(--surface);margin:0 0 .75rem}.shop-address{margin:-.25rem 0 .75rem;color:var(--muted);overflow-wrap:anywhere}.shop-actions{display:flex;gap:.5rem;margin:0 0 1rem}.shop-actions button.shop-btn,.shop-actions button.shop-btn:hover:not(:disabled){flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:max(2.75rem,44px);padding:.5rem 1rem;background:var(--surface);color:var(--fg)}.shop-actions svg{width:1.125rem;height:1.125rem}.hours-card{display:grid;gap:.625rem;margin:0 0 .5rem;padding:1rem 1.125rem;border-radius:var(--radius);background:var(--surface)}.hours-card>div{display:flex;justify-content:space-between;gap:.75rem}.hours-card dt{color:var(--muted)}.hours-card dd{margin:0;font-weight:700}.hours-card button.link{justify-self:start;padding:0;color:var(--link);font-weight:600}.box-card{display:grid;gap:.5rem;margin:0 0 .75rem;padding:1.125rem;border-radius:var(--radius);background:var(--surface)}.box-card h3{margin:0;font-size:var(--fs-lg);font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere}.box-card .hint,.box-card .shop-actions{margin:0}.box-services{list-style:none;margin:0;padding:0;display:grid;gap:.375rem}.box-card .button.book{margin-top:.25rem;text-align:center}.steps{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem}.steps span{height:.25rem;border-radius:var(--pill);background:var(--surface)}.steps span.on{background:var(--ink)}.book>.hint{margin:0 0 .25rem}.service-pick-check{display:grid;place-items:center;flex:none;width:1.75rem;height:1.75rem;border-radius:var(--pill);border:2px solid var(--faint);color:transparent}.service-pick-check svg{width:1rem;height:1rem;stroke-width:3}.car-tile{position:relative;display:grid;align-content:space-between;gap:.75rem;flex:none;min-width:9.5rem;min-height:5.5rem;padding:.875rem 2.5rem .875rem 1rem;text-align:left;border-radius:var(--radius);background:var(--surface);color:var(--fg);box-shadow:inset 0 0 0 1px var(--border-strong);transition:background-color .16s var(--ease-out),color .16s var(--ease-out),box-shadow .16s var(--ease-out)}.car-tile:hover:not(:disabled){background:var(--surface)}.car-tile.active,.car-tile.active:hover:not(:disabled){background:var(--ink);color:var(--on-ink);box-shadow:none}.car-tile-name{font-weight:700}.car-tile .plate{justify-self:start;padding:.125rem .5rem;border-radius:.5rem;font-size:var(--fs-xs);font-weight:600;box-shadow:inset 0 0 0 1px var(--faint)}.car-tile.active .plate{background:var(--on-ink);color:var(--ink);box-shadow:none}@media (prefers-reduced-motion: reduce){.car-tile{transition:none}}.list.answers,.list.bookings{display:grid;gap:.625rem;padding:0;list-style:none}.answer-card,.list.answers li.answer-card{justify-content:stretch;background:var(--accent-soft);color:var(--accent-ink);border-radius:var(--radius);padding:1rem;display:grid;gap:.5rem}.answer-card p{margin:0;color:var(--accent-ink)}.answer-head{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem}.answer-time:empty{display:none}.answer-head .hint{color:var(--accent-ink)}.answer-time{display:flex;align-items:baseline;gap:.5rem;font-variant-numeric:tabular-nums}.answer-time s{color:var(--muted)}.answer-time strong{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.04em;color:var(--fg)}.answer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.answer-actions>*{margin:0;text-align:center}.car-cards{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.75rem}.car-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .75rem;padding:1rem 1.125rem;border-radius:var(--radius);background:var(--surface);color:var(--fg);text-decoration:none;transition:transform .16s var(--ease-out)}.car-card:active{transform:scale(.98)}.car-card.first{background:var(--hero);color:var(--on-hero)}.car-card-name{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere}.car-card-chev{color:var(--faint);display:grid;justify-self:end}.car-tick{display:inline-grid;place-items:center;width:1.375rem;height:1.375rem;margin-left:.5rem;vertical-align:.125rem;border-radius:50%;background:var(--accent);color:var(--on-accent)}.car-tick svg{width:.875rem;height:.875rem}.car-card-chev svg{width:1.25rem;height:1.25rem}.car-card-sub{color:var(--muted);font-size:var(--fs-base)}.car-card.first .car-card-sub,.car-card.first .car-card-km{color:var(--hero-muted)}.car-card .plate{justify-self:start;margin-top:.5rem;padding:.25rem .625rem;border-radius:.625rem;font-size:var(--fs-base);font-weight:700;box-shadow:inset 0 0 0 1.5px var(--faint)}.car-card.first .plate{background:#fff;color:#111;box-shadow:none}.car-card-km{justify-self:end;color:var(--muted);margin-top:.5rem;white-space:nowrap;font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){.car-card:active{transform:none}}.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.row2>label{min-width:0}.row2>label:only-child{grid-column:1 / -1}.car-delete{display:block;margin:1.5rem auto 0}.fuel-field{display:grid;gap:.375rem}.fuel-field>span{font-size:var(--fs-base);font-weight:600}.fuel-field .chips{margin:0}.car-default{display:grid;gap:.5rem;margin:1rem 0 0}.car-default .hint{margin:0}.avatar{background:var(--accent-soft);color:var(--accent-ink)}.role-cards{display:grid;gap:.75rem;margin:0 0 .875rem}.role-card{display:flex;align-items:center;gap:.625rem;padding:1.125rem 1.25rem;border-radius:var(--radius-input);background:var(--surface);color:var(--fg);text-decoration:none;font-weight:700;font-size:var(--fs-lg)}.role-card>span:first-of-type{flex:1}.role-card svg{width:1.25rem;height:1.25rem}.role-card.current{background:var(--ink);color:var(--on-ink)}.role-card.current svg{color:var(--ink-accent)}.role-card.dashed{background:transparent;border:2px dashed var(--faint);font-size:var(--fs-base)}.role-card.dashed>span:first-of-type{flex:0 1 auto}.role-card.dashed .req-badge{margin-left:auto}.calendar-head strong{flex:0 1 auto;text-align:left;margin-right:auto;padding-left:.5rem;font-size:var(--fs-md)}.calendar-head button.link{color:var(--link);font-weight:700}button.calendar-day.today{box-shadow:none}button.calendar-day.today .calendar-wd{color:var(--link)}.calendar-wd{font-size:var(--fs-2xs);font-weight:600;color:var(--muted)}.selected .calendar-wd,button.calendar-day.selected.today .calendar-wd{color:var(--on-ink);opacity:.7}.calendar.week .calendar-dot{background:var(--accent)}.lane-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:1.25rem 0 .5rem}.lane-head h3{margin:0;font-size:var(--fs-lg);font-weight:700}.lane-head .hint{font-size:var(--fs-xs)}.lane-head button.link{font-size:var(--fs-sm);font-weight:700;color:var(--link)}.lane-empty{margin:0}.booking-time{font:800 var(--fs-lg) var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;align-self:center}.list.bookings .booking-open{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.list.bookings .booking-main>strong{font-family:inherit;font-size:var(--fs-md);letter-spacing:0}.booking-hero{padding:1rem 1.125rem;border-radius:var(--radius);background:var(--hero);color:var(--on-hero);display:grid;gap:.5rem}.booking-hero-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.booking-hero h1{margin:0;font-size:var(--fs-3xl);font-weight:800;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}.booking-hero h1 small{font-size:var(--fs-lg);font-weight:700;color:var(--hero-muted);letter-spacing:0}.customer-card{display:grid;gap:.75rem;margin:.75rem 0;padding:.875rem;border-radius:var(--radius);background:var(--surface)}.customer-card-who{display:flex;align-items:center;gap:.75rem}.customer-card-who .box-main{display:grid;min-width:0}.avatar.soft{width:max(2.75rem,44px);height:max(2.75rem,44px);font-size:var(--fs-lg);background:var(--accent-soft);color:var(--accent-ink)}.customer-card button.outline{width:100%;display:inline-flex;justify-content:center;gap:.5rem}.sheet-body .props{background:var(--surface);border:0;border-radius:var(--radius);padding:.5rem 1rem}.callout-soft{margin:.75rem 0;padding:.75rem 1rem;border-radius:var(--radius);background:var(--accent-soft);color:var(--fg)}.callout-soft small{display:block;font-weight:700;color:var(--accent-ink)}.callout-soft p{margin:.125rem 0 0}.came-question{margin:1.25rem 0 0}.came-question+.sheet-actions{margin-top:.5rem}.round-btn{display:grid;place-items:center;flex:none;width:max(2.75rem,44px);height:max(2.75rem,44px);min-height:0;padding:0;border-radius:var(--pill);background:var(--surface);color:var(--fg)}.round-btn:hover:not(:disabled){background:var(--surface)}.round-btn svg{width:1.375rem;height:1.375rem}.link-accent{color:var(--link);font-weight:700;text-decoration:none;white-space:nowrap}.shop-cards,.box-cards,.svc-list{list-style:none;margin:.5rem 0 1rem;padding:0;display:grid;gap:.625rem}.shop-card{display:grid;gap:.25rem;padding:1rem;border-radius:var(--radius);background:var(--surface);color:var(--fg);text-decoration:none;transition:transform .16s var(--ease-out)}.shop-card:active{transform:scale(.98)}.shop-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.shop-card-head strong{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere}.chev{color:var(--faint);font-size:var(--fs-xl);line-height:1}.shop-card .hint{margin:0;font-size:var(--fs-base)}.count-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.5rem}.count-tiles>span{display:grid;gap:.125rem;padding:.75rem;border-radius:var(--radius-input);background:var(--bg);font-size:var(--fs-sm);color:var(--muted)}.count-tiles strong{font-size:var(--fs-xl);font-weight:800;letter-spacing:-.03em;color:var(--fg)}.info-card{display:grid;gap:.75rem;padding:1rem 1.125rem;border-radius:var(--radius);background:var(--surface);margin:0 0 .5rem}.info-card>div{display:flex;align-items:center;gap:.75rem;min-width:0;overflow-wrap:anywhere;font-weight:600}.info-card svg{width:1.25rem;height:1.25rem;flex:none;color:var(--muted)}.info-card .phone-link{font:inherit;font-weight:600;color:var(--fg);background:none;padding:0;min-height:0;border-radius:0}.info-card .phone-link:hover:not(:disabled){background:none}.box-cards li{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:var(--radius);background:var(--surface)}.box-cards li.inactive .box-card-main strong,.box-cards li.inactive .box-card-main .hint{color:var(--muted)}.box-card-main{display:grid;gap:.125rem;flex:1;min-width:0;color:var(--fg);text-decoration:none}.box-card-main strong{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere}.box-card-main .hint{font-size:var(--fs-sm);overflow-wrap:anywhere}.box-state{font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.box-state.on{color:var(--green)}.sheet-stack{display:grid;gap:.625rem;margin-top:1.25rem}button.primary-lg.soft,button.primary-lg.soft:hover:not(:disabled){background:var(--surface);color:var(--fg)}button.primary-lg.danger-text,button.primary-lg.danger-text:hover:not(:disabled){color:var(--danger)}.sheet-body>.hint,.sheet-body h1+.hint{margin:0;font-size:var(--fs-md)}.svc-list li{padding:.875rem 1rem;border-radius:var(--radius);background:var(--surface)}.svc-pick{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:var(--fs-md)}.svc-pick input{position:absolute;opacity:0;pointer-events:none}.svc-pick:has(input:checked) .service-pick-check{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.svc-name{font-weight:700}.svc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.75rem}.svc-field{display:grid;gap:.125rem;padding:.625rem .75rem;border-radius:var(--radius-input);background:var(--bg)}.svc-field .hint{font-size:var(--fs-xs)}.svc-field input.price{font:inherit;font-weight:800;font-size:var(--fs-lg);color:var(--fg);background:transparent;border:0;padding:0;min-width:0;width:100%;outline:0}.svc-field select.minutes{font:inherit;font-weight:800;font-size:var(--fs-lg);color:var(--fg);background:transparent;border:0;padding:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;min-width:0}.qr{width:min(15rem,70%);margin:.5rem auto 1rem;padding:.5rem;border-radius:var(--radius-input);background:#fff;line-height:0}.qr svg{width:100%;height:auto}.star{display:inline-flex;color:var(--border-strong);font-size:var(--fs-md);line-height:1}.star.on{color:var(--accent)}.stars{display:inline-flex;gap:.125rem}.rating-line{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--fs-base)}.star-input{display:flex;gap:.75rem;margin:1rem 0}.star-input button.star{font-size:var(--fs-3xl);padding:0;min-height:0;width:auto;background:none;border:0;border-radius:0}.review-card,.list.reviews li.review-card{display:grid;justify-content:stretch;align-items:start;gap:.375rem;background:var(--surface);border-radius:var(--radius);padding:.875rem 1rem;list-style:none}.review-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.review-tags{font-size:var(--fs-xs);font-weight:600}.list.reviews{display:grid;gap:.5rem;padding:0;margin:0 0 .75rem}button.rated{display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;padding:0;min-height:0;width:auto}button.rated .link{color:var(--link);font-weight:600}.car-log{margin-top:1.5rem}.log-list{list-style:none;padding:0;margin:0 0 .5rem;background:var(--surface);border-radius:var(--radius)}.log-list:empty{display:none}.log-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem 1rem}.log-list li+li{border-top:1px solid var(--border)}.log-list li.due strong{color:var(--link)}.log-main{display:grid;gap:.125rem;min-width:0;overflow-wrap:anywhere;justify-items:start}.log-price{white-space:nowrap}.log-main button.link{padding:.25rem 0 0;color:var(--danger)}.log-actions{display:flex;gap:1rem}.log-actions button.link:first-child{color:var(--link)}.due-reminder{display:grid;gap:.25rem;margin-top:.5rem}.log-note{color:var(--muted);font-size:var(--fs-base);white-space:pre-line}.log-card{font-size:var(--fs-base)}.oil-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.25rem .75rem;align-items:start;padding:1rem;border-radius:var(--radius);background:var(--surface)}.oil-card.due{background:var(--accent-soft);color:var(--accent-ink)}.oil-card.due .hint{color:var(--accent-ink)}.oil-card-icon{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--bg);color:var(--fg)}.oil-card-icon svg{width:1.375rem;height:1.375rem}.oil-card-main{display:grid;gap:.125rem;min-width:0;overflow-wrap:anywhere}.oil-card-main small{color:var(--muted)}.oil-card.due .oil-card-main small{color:var(--accent-ink)}.oil-card-next{grid-column:1 / -1;display:grid;gap:.375rem;margin-top:.5rem}.oil-meter{display:block;height:.5rem;border-radius:var(--pill);background:var(--bg);overflow:hidden}.oil-meter>span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.car-cards{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.car-cards button{width:100%;min-height:max(2.75rem,44px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.875rem 1rem;border:0;border-radius:var(--radius);background:var(--surface);color:var(--fg);font:inherit;text-align:left}.car-cards button:disabled{opacity:1;cursor:default}.car-cards li.due button{background:var(--accent-soft);color:var(--accent-ink)}.car-cards li.due .hint{color:var(--accent-ink)}.car-card-main{display:grid;gap:.125rem;min-width:0;overflow-wrap:anywhere}.car-card-status{font-size:var(--fs-sm);font-weight:700;white-space:nowrap}.car-card-status.due{background:var(--ink);color:var(--on-ink);border-radius:var(--pill);padding:.25rem .625rem;font-size:var(--fs-xs)}.card-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.card-tile{min-height:5.25rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:.875rem .375rem;border:0;border-radius:var(--radius-input);background:var(--surface);color:var(--fg);font:inherit;font-size:var(--fs-xs);font-weight:600;text-align:center;overflow-wrap:anywhere}.card-tile svg{width:1.375rem;height:1.375rem}.card-tile.other{background:var(--bg);box-shadow:inset 0 0 0 1.5px var(--faint)}.card-tile-plus{font-size:var(--fs-xl);line-height:1}.oil-field{display:grid;gap:.375rem}.oil-field>span{font-size:var(--fs-base);font-weight:600}.oil-field .chips.wrap{margin:0 0 .25rem}.oil-next-head{margin:1.25rem 0 .5rem;font-size:var(--fs-lg)}.car-card-oil{grid-column:1 / -1;margin-top:.375rem;font-size:var(--fs-base);color:var(--muted)}.car-card.first .car-card-oil{color:var(--hero-muted)}.car-card-oil.due,.car-card.first .car-card-oil.due{color:var(--link);font-weight:700}.due-actions{display:flex;gap:.5rem;margin-top:.5rem}.due-actions>*{flex:1;text-align:center;margin:0}.customer-head{display:flex;align-items:center;gap:1rem;margin:.5rem 0 1rem}.customer-head h1{margin:0}.avatar.soft.big{width:4rem;height:4rem;font-size:var(--fs-xl);flex:none}.customer-page .stat-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.stat-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.75rem}.stat-tiles>span{display:grid;gap:.125rem;min-width:0;padding:.75rem;border-radius:var(--radius-input);background:var(--surface);font-size:var(--fs-xs);color:var(--muted)}.stat-tiles strong{font-size:var(--fs-xl);font-weight:800;letter-spacing:-.03em;color:var(--fg)}.customer-page>button.outline,.customer-page>.outline{width:100%;display:inline-flex;justify-content:center;gap:.5rem}.customer-page .list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.customer-card-link{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;font-weight:700;color:var(--link);text-decoration:none}.customer-card-link svg{width:1rem;height:1rem}.stat-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem;margin:0 0 1.25rem}.stat-tiles>div{display:grid;gap:.125rem;align-content:start;padding:1rem;border-radius:var(--radius);background:var(--surface);min-width:0}.stat-tiles strong{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.03em;line-height:1.1}.stat-tiles span{font-weight:700}.stat-tiles small{color:var(--muted);font-size:var(--fs-xs);overflow-wrap:anywhere}.stat-chart{padding:1rem;border-radius:var(--radius);background:var(--surface);margin:0 0 1.25rem}.stat-chart h2{margin:0 0 .75rem;font-size:var(--fs-md)}.bars{display:flex;align-items:stretch;gap:.375rem;height:9rem}.bars-month{gap:2px}.bar{flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:.375rem}.bar .fill{width:100%;background:var(--ink);border-radius:.375rem;min-height:2px}.bar.now .fill{background:var(--accent)}.bar .tick{font-size:var(--fs-2xs);color:var(--muted);height:.875rem;line-height:.875rem;white-space:nowrap}.stat-services{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;gap:.875rem}.stat-services li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.375rem .75rem;position:relative}.stat-services li>span{min-width:0;overflow-wrap:anywhere}.stat-services .track{grid-column:1 / -1;display:block;height:.5rem;border-radius:var(--pill);background:var(--surface);overflow:hidden}.stat-services .track b{display:block;height:100%;min-width:.5rem;border-radius:var(--pill);background:var(--ink)}.staff{margin-top:1.5rem}.staff-list>li{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.staff-who{display:grid;gap:.125rem;min-width:0;overflow-wrap:anywhere}.staff-who .hint{margin:0}button.link.staff-remove,button.link.staff-remove:hover{flex-shrink:0;color:var(--danger);text-decoration:none}.staff-add{display:grid;gap:.5rem;margin-top:.75rem}.staff-add .segmented{margin:0}.due-row{display:flex;align-items:center;gap:.75rem;margin:.75rem 0 0;padding:.875rem 1rem;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-ink);text-decoration:none}.due-row>svg{width:1.375rem;height:1.375rem;flex:none}.due-row-main{display:grid;gap:.125rem;flex:1;min-width:0}.due-row-title{font-weight:700}.due-row-sub{font-size:var(--fs-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-link{display:inline-flex;align-items:center;gap:.25rem}.section-link svg{width:1rem;height:1rem}.all-services h1{margin:0 0 1rem}.all-services .search-field{margin-bottom:1rem}.service-group{margin-top:1.25rem}.service-group-head{display:flex;align-items:center;gap:.5rem;margin:0 0 .625rem;font-size:var(--fs-md);font-weight:700}.service-rows{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:var(--radius);overflow:hidden}.service-rows li+li{border-top:1px solid var(--border)}button.service-row{display:flex;align-items:center;gap:.875rem;width:100%;min-height:3.25rem;padding:.75rem 1rem;background:none;color:var(--fg);font-weight:400;text-align:left;border:0;border-radius:0;-webkit-tap-highlight-color:transparent}button.service-row:hover:not(:disabled){background:none}button.service-row:active{transform:none;background:var(--border)}button.service-row.on .service-name{font-weight:700}.service-tick{flex:none;display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:9999px;border:2px solid var(--faint)}.service-row.on .service-tick{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.service-tick svg{width:.875rem;height:.875rem;stroke-width:3}.service-price{flex:none;color:var(--muted);font-size:var(--fs-sm);white-space:nowrap}.cal{--hour: 3.5rem;--gutter: 2.75rem;overflow-x:auto;margin:.5rem -1rem 0;padding:0 1rem .5rem}.cal-heads,.cal-body{min-width:calc(var(--gutter) + var(--cal-cols) * 8rem)}.cal-heads{display:grid;grid-template-columns:repeat(var(--cal-cols),minmax(0,1fr));gap:.375rem;padding-left:var(--gutter);margin-bottom:.75rem}.cal-head{display:grid;min-width:0}.cal-head strong{font-size:var(--fs-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-head .hint{font-size:var(--fs-xs)}.cal-body{position:relative}.cal-hour{position:absolute;left:0;right:0;border-top:1px solid var(--border);pointer-events:none}.cal-hour span{position:absolute;top:-.5rem;left:0;padding-right:.25rem;background:var(--bg);font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.cal-col{position:absolute;top:0;bottom:0;left:calc(var(--gutter) + var(--cal-col) * ((100% - var(--gutter) + .375rem) / var(--cal-cols)));width:calc((100% - var(--gutter) + .375rem) / var(--cal-cols) - .375rem)}.cal-col.closed,.cal-off{background:repeating-linear-gradient(135deg,transparent 0 6px,var(--surface) 6px 12px)}.cal-off{position:absolute;left:0;right:0;pointer-events:none}.cal-break{position:absolute;left:0;right:0;display:grid;place-items:center;border-radius:.75rem;background:var(--surface);color:var(--muted);font-size:var(--fs-xs);pointer-events:none}.cal-booking{position:absolute;left:0;right:0;display:block;overflow:hidden;margin:0;min-height:0;padding:.25rem .5rem;border-radius:.625rem;text-align:left;font-weight:400;font-size:var(--fs-xs);line-height:1.25;background:var(--surface);color:var(--fg);box-shadow:inset 0 0 0 1px var(--bg)}.cal-booking strong,.cal-booking span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-booking strong{font-size:var(--fs-xs)}.cal-booking.status-booked,.cal-booking.status-booked:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-ink)}.cal-booking.status-arrived,.cal-booking.status-arrived:hover:not(:disabled){background:var(--hero);color:var(--on-hero)}.cal-booking.status-in_progress,.cal-booking.status-in_progress:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.cal-booking.status-done,.cal-booking.status-no_show{color:var(--muted)}.cal-booking.status-no_show{text-decoration:line-through}.cal-booking.status-pending,.cal-booking.status-pending:hover:not(:disabled){background:var(--surface);color:var(--orange);box-shadow:inset 0 0 0 1px var(--orange);border-style:dashed}.request-panel{margin:1rem 0}.request-panel>.link{margin-top:.75rem}.assignee-field{margin:.75rem 0}.assignee-field select{width:100%}.other-days h2 .hint{font-weight:400}button.cal-walk-in,button.cal-walk-in:hover:not(:disabled){position:absolute;left:0;right:0;height:calc(var(--hour) * .75);margin:0;padding:0;transform:translateY(-50%);border-radius:.75rem;border:2px dashed var(--faint);background:var(--bg);color:var(--muted);font-size:var(--fs-xs);font-weight:600}.cal-now{position:absolute;left:calc(var(--gutter) - .25rem);right:0;height:2px;background:var(--red);pointer-events:none;z-index:1}.cal-now:before{content:"";position:absolute;left:-.25rem;top:-.25rem;width:.625rem;height:.625rem;border-radius:50%;background:var(--red)}.title-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.title-row h1{min-width:0}.title-row button.link{flex:none;padding:0}.board-bar{position:relative;display:flex;align-items:center;gap:.5rem;min-height:max(2.75rem,44px);margin:.25rem 0 .75rem}.board-bar>h1{flex:1;min-width:0;margin:0}button.board-shop{flex:1;min-width:0;display:flex;align-items:center;gap:.25rem;min-height:max(2.75rem,44px);padding:0;background:none;color:var(--fg);text-align:left;border-radius:var(--radius-s)}button.board-shop:hover:not(:disabled){background:none}.board-shop-text{display:flex;flex-direction:column;min-width:0}.board-kicker{font-size:var(--fs-2xs);font-weight:600;color:var(--muted);line-height:1.2}.board-shop h1{margin:0;font-size:var(--fs-xl);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-shop-chev{flex:none;display:grid;color:var(--faint);align-self:flex-end;margin-bottom:.125rem}.board-shop-chev svg{width:1.125rem;height:1.125rem;transform:rotate(90deg);transition:transform .16s var(--ease-out)}.board-shop[aria-expanded=true] .board-shop-chev svg{transform:rotate(-90deg)}.view-toggle{flex:none;display:flex;gap:.125rem;padding:.125rem;background:var(--surface);border-radius:var(--pill)}.view-toggle button{display:grid;place-items:center;width:max(2.75rem,44px);min-height:max(2.75rem,44px);padding:0;background:transparent;color:var(--fg);border-radius:var(--pill)}.view-toggle button:hover:not(:disabled){background:transparent}.view-toggle button.active,.view-toggle button.active:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}.view-toggle svg{width:1.125rem;height:1.125rem}.shop-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30}.shop-menu{position:absolute;top:calc(100% + .25rem);left:0;z-index:31;min-width:14rem;max-width:100%;max-height:60dvh;overflow-y:auto;list-style:none;margin:0;padding:.375rem;background:var(--bg);border-radius:var(--radius);box-shadow:0 .5rem 1.75rem #1111112e,0 0 0 1px var(--border)}.shop-menu button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:max(2.75rem,44px);padding:0 .75rem;background:none;color:var(--fg);font-weight:600;text-align:left;border-radius:var(--radius-s)}.shop-menu button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shop-menu button.active,.shop-menu button:hover:not(:disabled){background:var(--surface)}.shop-menu svg{flex:none;width:1.125rem;height:1.125rem;color:var(--link)}.round-btn.bell{position:relative;text-decoration:none}.round-btn.bell .tab-badge{top:-.125rem;left:auto;right:-.25rem}.feed-filters{margin-bottom:1rem}.kind-actions .button.feed-act{display:inline-flex;align-items:center;margin:0;padding:0 1.25rem;min-height:max(2.75rem,44px);background:var(--bg);color:var(--fg)}.kind-actions .button.feed-act.primary{background:var(--ink);color:var(--on-ink)}.feed-page .empty svg{width:2rem;height:2rem;color:var(--faint)}.state{display:grid;gap:.75rem;padding:1.5rem 0 1rem}.state-icon{width:4rem;height:4rem;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--muted)}.state-icon svg{width:1.75rem;height:1.75rem}.state-icon.danger{background:var(--red-soft);color:var(--red)}.state h2{margin:.25rem 0 0;font-size:var(--fs-2xl)}.state p{margin:0;color:var(--muted)}.state-actions{display:grid;gap:.625rem;margin-top:.5rem}.state-actions .primary-lg{width:100%}.state .qr{width:min(11rem,55%);margin:.25rem auto}body.offline :is(.loading-screen,.sheet-backdrop,.sheet,.call-backdrop,.popup-backdrop,.map-picker){display:none}.skeleton-list{display:grid;gap:1.25rem;margin-top:1rem}.skeleton-card{display:grid;gap:.75rem;padding:1rem;border-radius:var(--radius);background:var(--surface)}.skeleton-line{display:block;height:.875rem;border-radius:var(--pill);background:var(--border-strong);animation:skeleton-pulse 1.1s ease-in-out infinite alternate}.skeleton-line.slot-skeleton{height:max(2.75rem,44px)}@keyframes skeleton-pulse{to{opacity:.45}}@media (prefers-reduced-motion: reduce){.skeleton-line{animation:none}}.nearest-slots{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.nearest-slots button,.nearest-slots button:hover:not(:disabled){min-height:max(2.75rem,44px);padding:0 1rem;border-radius:var(--pill);background:var(--surface-2);color:var(--fg);font-weight:700}.car-chip-add{display:block;margin-top:.75rem;text-align:center}.home-answers{margin:1rem 0 0}.home .live-card{margin:1rem 0 0;color:var(--on-hero);text-decoration:none}a.live-card{transition:transform .16s var(--ease-out)}a.live-card:active{transform:scale(.98)}.hero-cap{font-size:var(--fs-xs);font-weight:700;color:var(--hero-muted);text-transform:uppercase;letter-spacing:.04em}.live-what{display:grid;gap:.375rem}.live-line{font-weight:600;overflow-wrap:anywhere}.live-title{font-size:var(--fs-xl);font-weight:800;letter-spacing:-.02em;line-height:1.15}.live-left{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem}.home .live-left .hero-time{font-size:var(--fs-3xl)}.live-bar{display:block;height:.5rem;border-radius:var(--pill);background:color-mix(in srgb,var(--on-hero) 16%,transparent);overflow:hidden}.live-bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .6s var(--ease-out)}.live-answer{display:grid;gap:.25rem;justify-items:start}.live-known{display:flex;align-items:center;gap:.5rem;color:var(--accent);font-size:var(--fs-sm);font-weight:700}.live-known svg{width:1rem;height:1rem;flex:none;stroke-width:2.6}button.live-change,button.live-change:hover:not(:disabled){padding:.25rem 0;color:var(--hero-muted);font-weight:600;text-decoration:underline}.live-ask{display:grid;gap:.5rem}.live-chips{display:flex;flex-wrap:wrap;gap:.5rem}button.live-chip,button.live-chip:hover:not(:disabled){min-height:max(2.75rem,44px);padding:0 1rem;border-radius:var(--pill);font-size:var(--fs-sm);font-weight:700;background:color-mix(in srgb,var(--on-hero) 14%,transparent);color:var(--on-hero)}button.live-chip.on,button.live-chip.on:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.live-chips button.live-chip:first-child:not(.on){background:var(--on-hero);color:var(--hero)}.live-actions{display:flex;align-items:center;gap:.5rem}button.live-round,button.live-round:hover:not(:disabled){display:grid;place-items:center;width:max(2.75rem,44px);height:max(2.75rem,44px);padding:0;border-radius:50%;background:color-mix(in srgb,var(--on-hero) 14%,transparent);color:var(--on-hero)}.live-round svg{width:1.125rem;height:1.125rem}.live-details{margin-left:auto;display:inline-flex;align-items:center;gap:.125rem;min-height:max(2.75rem,44px);color:var(--on-hero);font-weight:600;text-decoration:none}.live-details svg{width:1rem;height:1rem}button.live-btn,button.live-btn:hover:not(:disabled){justify-self:start;background:var(--on-hero);color:var(--hero)}.due-card{display:grid;gap:.75rem;margin:.75rem 0 0;padding:1rem;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-ink)}.due-card-head{display:flex;align-items:center;gap:.75rem;color:inherit;text-decoration:none}.due-card-head>svg{width:1.375rem;height:1.375rem;flex:none}.due-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.due-card-actions>*{margin:0}.header-block{margin:calc(-1rem - var(--inset-top)) -1rem 1rem;padding:calc(var(--inset-top) + 1rem) 1rem 1.25rem;border-radius:0 0 var(--radius-l) var(--radius-l);background:var(--hero);color:var(--on-hero)}.header-block .hint{color:var(--hero-muted)}.hb-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:1rem}.hb-stat{display:grid;gap:.125rem;min-width:0;padding:.75rem;border-radius:var(--radius-s);background:var(--hero-tile)}.hb-stat strong{font-size:var(--fs-xl);font-weight:800;line-height:1.1}.hb-stat span{font-size:var(--fs-xs);color:var(--hero-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb-action{display:grid;justify-items:center;align-content:center;gap:.375rem;min-width:0;min-height:4.5rem;padding:.75rem .5rem;border:0;border-radius:var(--radius-s);background:var(--hero-tile);color:var(--on-hero);font:600 var(--fs-xs)/1.2 var(--font);text-align:center;text-decoration:none;transition:transform .16s var(--ease-out)}.hb-action:active{transform:scale(.97)}.hb-action-icon{color:var(--accent)}.hb-action-icon svg{width:1.5rem;height:1.5rem}.section-link.more{display:inline-flex;align-items:center;gap:.125rem;color:var(--muted)}.section-link.more svg{width:1rem;height:1rem}.carousel{display:flex;gap:.5rem;margin:0 -1rem;padding:0 1rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 1rem;scrollbar-width:none;overscroll-behavior-x:contain}.carousel::-webkit-scrollbar{display:none}.carousel>*{flex:none;scroll-snap-align:start}.tone-blue{--tone-bg: var(--blue-soft);--tone-fg: var(--blue)}.tone-peach{--tone-bg: var(--accent-soft);--tone-fg: var(--link)}.tone-green{--tone-bg: var(--green-soft);--tone-fg: var(--green)}.tone-purple{--tone-bg: var(--purple-soft);--tone-fg: var(--purple)}.tone-red{--tone-bg: var(--red-soft);--tone-fg: var(--red)}.tone-grey{--tone-bg: var(--surface);--tone-fg: var(--muted)}.tint-tile{display:grid;align-content:space-between;gap:.75rem;width:7.25rem;min-height:6.75rem;padding:.875rem;border:0;border-radius:var(--radius);background:var(--tone-bg);color:var(--fg);font:inherit;text-align:left;text-decoration:none;transition:transform .16s var(--ease-out)}.tint-tile:active{transform:scale(.97)}.tint-tile.ring{box-shadow:inset 0 0 0 2px var(--accent)}.tint-icon{color:var(--tone-fg)}.tint-icon svg{width:1.5rem;height:1.5rem}.tint-title{font-size:var(--fs-sm);font-weight:600;line-height:1.25;overflow-wrap:anywhere}.tint-sub{font-size:var(--fs-xs);color:var(--muted)}.kind-card{display:grid;gap:.25rem;margin:0 0 .75rem;padding:1rem;border-radius:var(--radius);background:var(--surface)}.kind-card.unread{background:color-mix(in srgb,var(--accent-soft) 40%,var(--bg));box-shadow:inset 0 0 0 1.5px var(--accent)}.kind-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.kind-label{display:inline-flex;align-items:center;gap:.375rem;min-width:0;color:var(--tone-fg);font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;text-transform:uppercase}.kind-dot{width:.5rem;height:.5rem;flex:none;border-radius:50%;background:var(--accent)}.kind-at{flex:none;font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.kind-title{margin:.25rem 0 0;font-size:var(--fs-md);font-weight:800;letter-spacing:-.01em}.kind-text{margin:0;color:var(--muted);font-size:var(--fs-sm)}.kind-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.kind-actions>*{margin:0}.kind-actions>button{display:inline-flex;align-items:center;gap:.5rem;width:auto;margin:0;padding:0 1.25rem;min-height:max(2.75rem,44px)}.kind-actions>button svg{width:1.125rem;height:1.125rem}.header-block .round-btn{background:var(--hero-tile);color:var(--on-hero)}.menu-list{list-style:none;margin:0 0 1rem;padding:0 1rem;border-radius:var(--radius);background:var(--surface)}.menu-list li+li{border-top:1px solid var(--border)}.menu-row{display:flex;align-items:center;gap:.875rem;width:100%;min-height:max(3.25rem,44px);padding:.5rem 0;border:0;background:none;color:var(--fg);font:600 var(--fs-base)/1.3 var(--font);text-align:left;text-decoration:none}.menu-row.is-danger{color:var(--danger)}.mrow-icon{display:grid;place-items:center;flex:none}.mrow-icon svg{width:1.375rem;height:1.375rem}.menu-label{flex:1;min-width:0;overflow-wrap:anywhere}.menu-value{flex:none;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-weight:400}.menu-chevron{display:grid;flex:none;color:var(--faint)}.menu-chevron svg{width:1.125rem;height:1.125rem}.avatar-v3{display:grid;place-items:center;flex:none;width:max(2.75rem,44px);height:max(2.75rem,44px);border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:var(--fs-sm);font-weight:700;letter-spacing:.02em}.avatar-v3.sm{width:2.25rem;height:2.25rem;font-size:var(--fs-xs)}.avatar-v3.lg{width:3.5rem;height:3.5rem;font-size:var(--fs-lg)}.page-head-actions{display:flex;align-items:center;gap:.5rem;flex:none}.meter-v3{display:block;height:.375rem;border-radius:var(--pill);background:var(--raised);overflow:hidden}.header-block .meter-v3{background:#fff3}.meter-v3>span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.meter-v3.ink>span{background:var(--fg)}.timeline .step-todo .timeline-dot{background:var(--border-strong);box-shadow:none}@media (prefers-reduced-motion: reduce){.hb-action:active,.tint-tile:active{transform:none}}.home.v3 section{margin-top:1.5rem}.home-header{display:grid;gap:.875rem}.hh-top{display:flex;align-items:center;gap:.75rem}.hh-hello{display:grid;flex:1;min-width:0;line-height:1.2}.hh-hello .hint{font-size:var(--fs-sm)}.hh-hello strong{font-size:var(--fs-lg);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hh-search{display:flex;align-items:center;gap:.625rem;min-height:max(3rem,44px);padding:0 1rem;border-radius:var(--radius-input);background:var(--hero-tile);color:var(--hero-muted);text-decoration:none}.hh-search svg{width:1.25rem;height:1.25rem;flex:none}.hh-search span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hh-car{display:grid;gap:.375rem;justify-items:start}.hh-car>.hint{font-size:var(--fs-sm)}.hh-car .meter-v3{justify-self:stretch}.hh-car-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;max-width:100%}button.hh-car-name,button.hh-car-name:hover:not(:disabled){display:inline-flex;align-items:center;gap:.375rem;min-width:0;max-width:100%;min-height:44px;margin:0;padding:0;background:none;color:var(--on-hero);text-align:left}.hh-car-name strong{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.03em;line-height:1.1;overflow-wrap:anywhere}.hh-car-name svg{width:1.25rem;height:1.25rem;flex:none;transform:rotate(90deg)}.plate{display:inline-block;padding:.25rem .625rem;border-radius:var(--pill);background:var(--bg);color:var(--fg);font-size:var(--fs-xs);font-weight:600;letter-spacing:.02em;white-space:nowrap;font-variant-numeric:tabular-nums}.plate.dark{background:var(--hero-tile);color:var(--on-hero)}.hh-car-lead{font-size:var(--fs-xl);font-weight:800;letter-spacing:-.02em}.button.hh-add{display:inline-flex;align-items:center;gap:.5rem;width:auto;margin:.25rem 0 0;padding:0 1.25rem;background:var(--accent);color:var(--on-accent)}.hh-add svg{width:1.125rem;height:1.125rem}.home-header .hb-row{margin-top:0}.cat-chip{display:inline-flex;align-items:center;gap:.5rem;min-height:max(2.75rem,44px);padding:.375rem 1rem .375rem .375rem;border-radius:var(--radius-s);background:var(--surface);color:var(--fg);font-weight:600;font-size:var(--fs-sm);text-decoration:none;white-space:nowrap;transition:transform .16s var(--ease-out)}.cat-chip:active{transform:scale(.97)}.cat-chip-icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--tone-bg);color:var(--tone-fg)}.cat-chip-icon svg{width:1.125rem;height:1.125rem}.home.v3 .live-card{--hero: var(--accent-soft);--on-hero: var(--fg);--hero-muted: var(--accent-ink)}.home.v3 .live-card .hero-cap{color:var(--accent-ink)}.home-visit>:first-child{margin-top:1.5rem}.empty-card{display:grid;justify-items:center;gap:.375rem;margin:1.5rem 0 0;padding:1.5rem 1rem;text-align:center;border:2px dashed var(--border-strong);border-radius:var(--radius)}.empty-card-icon{display:grid;place-items:center;width:3rem;height:3rem;margin-bottom:.25rem;border-radius:50%;background:var(--accent-soft);color:var(--link)}.empty-card-icon svg{width:1.5rem;height:1.5rem}.empty-card strong{font-size:var(--fs-md)}.button.empty-card-btn{display:inline-flex;align-items:center;gap:.5rem;width:auto;margin:.5rem 0 0;padding:0 1.25rem}.empty-card-btn svg{width:1.125rem;height:1.125rem}.empty-row{display:flex;align-items:center;gap:.75rem;padding:1rem;border:2px dashed var(--border-strong);border-radius:var(--radius)}.empty-row-icon{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:var(--radius-s);background:var(--blue-soft);color:var(--blue)}.empty-row-icon svg{width:1.375rem;height:1.375rem}.empty-row-text{display:grid;flex:1;min-width:0;gap:.125rem}.empty-row-text .hint{font-size:var(--fs-sm)}.button.empty-row-btn{flex:none;width:auto;margin:0;padding:0 1rem}.car-tile{display:grid;align-content:start;justify-items:start;gap:.5rem;width:12rem;padding:1rem;border-radius:var(--radius);background:var(--tone-bg);color:var(--fg);text-decoration:none;transition:transform .16s var(--ease-out)}.car-tile:active{transform:scale(.98)}.car-tile-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;justify-self:stretch}.car-tile-badge{padding:.25rem .625rem;border-radius:var(--pill);background:var(--accent);color:var(--on-accent);font-size:var(--fs-2xs);font-weight:700;white-space:nowrap}.car-tile-name{font-size:var(--fs-md);font-weight:800;overflow-wrap:anywhere}.car-tile-sub{font-size:var(--fs-xs);color:var(--muted)}.tip-body{margin:.5rem 0 1rem;line-height:1.5}.popular-grid{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0;padding:0}.popular-tile{position:relative;display:block;min-height:6.5rem;padding:.875rem;border-radius:var(--radius);overflow:hidden;background:var(--surface);color:var(--fg);text-decoration:none;transition:transform .16s var(--ease-out)}.popular-tile:active{transform:scale(.97)}.popular-name{position:relative;display:block;max-width:85%;font-weight:600;font-size:var(--fs-sm);line-height:1.25;overflow-wrap:anywhere}.popular-icon{position:absolute;right:.75rem;bottom:.75rem;display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--accent-soft);color:var(--link)}.popular-icon svg{width:1.625rem;height:1.625rem}.row-card{padding:.25rem 1rem;border-radius:var(--radius);background:var(--surface)}.row-card ul,ul.row-card{list-style:none;margin:0;padding:0}ul.row-card{padding:.25rem 1rem}.row-item{display:flex;align-items:center;gap:.75rem}.row-item+.row-item{border-top:1px solid var(--border)}.row-main{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0;min-height:max(3.75rem,44px);color:var(--fg);text-decoration:none}.row-icon,.row-initial{display:grid;place-items:center;flex:none;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--bg)}.row-icon svg{width:1.25rem;height:1.25rem}.row-initial{background:var(--accent-soft);color:var(--accent-ink);font-weight:700}.row-text{display:grid;flex:1;min-width:0;gap:.125rem}.row-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-text .hint{font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-end{flex:none;font-size:var(--fs-sm);font-weight:600;color:var(--muted)}button.row-end.link-btn,button.row-end.link-btn:hover:not(:disabled){width:auto;min-height:44px;margin:0;padding:0 .25rem;background:none;color:var(--link)}.status-text-done{color:var(--green)}.status-text-cancelled,.status-text-no_show,.status-text-declined,.status-text-expired{color:var(--red)}.near-km{color:var(--green);font-weight:700}.row-hint{margin:.75rem 0 0}.row-foot{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:max(3rem,44px);border-top:1px solid var(--border);color:var(--link);font-weight:600;text-decoration:none}.row-hint+.row-foot{border-top:0}.row-foot svg{width:1.125rem;height:1.125rem}button.near-area,button.near-area:hover:not(:disabled){display:inline-flex;align-items:center;gap:.25rem;width:auto;max-width:55%;min-height:44px;margin:0;padding:0;background:none;color:var(--muted);font-size:var(--fs-sm);font-weight:600}.near-area span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.near-area svg{width:1rem;height:1rem;flex:none}button.customize-btn,button.customize-btn:hover:not(:disabled){display:flex;align-items:center;gap:.5rem;width:auto;margin:1.5rem auto .5rem;padding:0 1.5rem;background:var(--surface);color:var(--fg)}.customize-btn svg{width:1.125rem;height:1.125rem}.widget-list{list-style:none;margin:.75rem 0 1rem;padding:0 1rem;border-radius:var(--radius);background:var(--surface)}.widget-row{display:flex;align-items:center;gap:.75rem;min-height:max(3.25rem,44px)}.widget-row+.widget-row{border-top:1px solid var(--border)}.widget-name{flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}button.widget-move,button.widget-move:hover:not(:disabled){display:grid;place-items:center;flex:none;width:44px;height:44px;margin:0;padding:0;border-radius:50%;background:none;color:var(--fg)}button.widget-move:disabled{color:var(--faint);background:none}.widget-move svg{width:1.125rem;height:1.125rem}.widget-actions>*{margin:0}.so-top{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem}.so-top .search-field{flex:1;min-width:0;margin:0}button.so-cancel,button.so-cancel:hover:not(:disabled){flex:none;width:auto;min-height:44px;margin:0;padding:0;background:none;color:var(--link);font-weight:600}.search-overlay section{margin-top:1.25rem}.so-list{list-style:none;margin:0;padding:0}.so-list>li+li{border-top:1px solid var(--border)}.so-recent{display:flex;align-items:center}button.so-row,button.so-row:hover:not(:disabled){display:flex;align-items:center;gap:.75rem;flex:1;min-width:0;width:100%;min-height:max(3rem,44px);margin:0;padding:0;background:none;color:var(--fg);font-weight:500;text-align:left}.so-row svg,.so-row .service-icon svg{width:1.25rem;height:1.25rem;flex:none;color:var(--muted)}.so-row .service-icon{display:grid;flex:none}.so-row-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.so-remove,button.so-remove:hover:not(:disabled){display:grid;place-items:center;flex:none;width:44px;height:44px;margin:0;padding:0;background:none;color:var(--muted)}.so-remove svg{width:1.125rem;height:1.125rem}.so-groups{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:0;padding:0}.so-group{display:grid;justify-items:center;align-content:center;gap:.5rem;min-height:6.25rem;padding:.75rem .375rem;border-radius:var(--radius);background:var(--surface);color:var(--fg);font-size:var(--fs-xs);font-weight:600;text-align:center;text-decoration:none;overflow-wrap:anywhere;transition:transform .16s var(--ease-out)}.so-group:active{transform:scale(.97)}.so-group-icon{display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:var(--radius-s);background:var(--tone-bg);color:var(--tone-fg)}.so-group-icon svg{width:1.375rem;height:1.375rem}.so-group.tone-grey .so-group-icon{background:var(--raised)}@media (prefers-reduced-motion: reduce){.cat-chip:active,.car-tile:active,.popular-tile:active,.so-group:active{transform:none}}button.section-link.more,button.section-link.more:hover:not(:disabled){width:auto;min-height:44px;margin:0;padding:0;background:none;font-size:var(--fs-base);font-weight:600}.so-group-icon .service-icon,.so-row .service-icon{width:auto;height:auto;background:none;color:inherit}.shops-head{display:grid;gap:.625rem}.shops-head .page-head,.shops-head .chips,.shops-head .segmented{margin:0}main.map-page>.shops-head{flex:none;position:relative;z-index:3;background:var(--bg);padding:calc(var(--inset-top) + .75rem) calc(1rem + var(--inset-right)) .75rem calc(1rem + var(--inset-left))}main.map-page>.shops-head>*{width:100%;max-width:608px;margin-left:auto;margin-right:auto}.shops-page .shops-head,.shops-page .where{margin-bottom:1rem}.shops-page .where button.secondary,.map-sheet .where button.secondary{display:flex;align-items:center;justify-content:center;gap:.5rem}.where button.secondary svg{width:1.25rem;height:1.25rem}.map-page .map-status{top:auto;bottom:1.25rem}.map-page>.map-ideal-key{position:absolute;z-index:2;left:50%;bottom:1.25rem;transform:translate(-50%);max-width:calc(100% - 7rem);margin:0;padding:.375rem .875rem;border-radius:var(--pill);background:var(--bg);box-shadow:0 2px 10px #0000002e}.filter-btn{position:relative}.filter-dot{position:absolute;top:-.125rem;right:-.25rem;min-width:1.125rem;height:1.125rem;padding:0 .25rem;display:grid;place-items:center;border-radius:var(--pill);background:var(--accent);color:var(--on-accent);font-size:var(--fs-2xs);font-weight:800}.result-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;font-size:var(--fs-sm)}.result-meta .hint{margin:0;overflow-wrap:anywhere}.result-meta .rating-line{font-size:var(--fs-sm)}.list li.nav>a.result{display:grid;justify-items:start;gap:.25rem;padding:1rem}.list li.nav>a.result:after{display:none}.list.results .free-from{margin-top:.375rem}.map-card-head{align-items:center}.map-card-head .avatar-v3{background:var(--accent-soft);color:var(--accent-ink);font-size:var(--fs-md)}.map-card-title{flex:1;min-width:0}.map-card-head h2{margin:0;font-size:var(--fs-xl)}.map-card-meta{margin:.125rem 0 0}.map-card-addr{margin:.875rem 0 .75rem;color:var(--muted);font-size:var(--fs-sm);overflow-wrap:anywhere}.map-card-row{justify-content:flex-start;margin-bottom:.75rem}.tag-pill{padding:.25rem .75rem;border-radius:var(--pill);box-shadow:inset 0 0 0 1px var(--border);font-size:var(--fs-xs);font-weight:600}.map-card-boxes{list-style:none;margin:0 0 1rem;padding:0 1rem;border-radius:var(--radius);background:var(--surface)}.map-card-boxes li+li{border-top:1px solid var(--border)}.map-card-boxes a{display:flex;align-items:center;gap:.75rem;min-height:max(3rem,44px);color:var(--fg);text-decoration:none}.map-card-boxes svg{width:1.25rem;height:1.25rem;flex:none;color:var(--muted)}.map-card-box{flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}.map-card-boxes .free-from{flex:none;max-width:50%;margin:0;font-size:var(--fs-xs);font-weight:500;text-align:right}.map-card-actions button.route-btn,.map-card-actions button.route-btn:hover:not(:disabled){display:inline-flex;align-items:center;gap:.5rem;flex:none;width:auto;margin:0;padding:0 1.25rem;min-height:3.5rem;border:0;background:var(--surface);color:var(--fg)}.map-card-actions .route-btn svg{width:1.125rem;height:1.125rem}.filter-sheet .sheet-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1rem}.filter-sheet .sheet-head h2{margin:0;font-size:var(--fs-xl);font-weight:800;letter-spacing:-.02em}.filter-rows{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;gap:.5rem}.filter-row{border-radius:var(--radius-input);background:var(--surface)}.filter-head,button.filter-head,button.filter-head:hover:not(:disabled){display:flex;align-items:center;gap:.75rem;width:100%;min-height:max(3.25rem,44px);margin:0;padding:0 1rem;border:0;background:none;color:var(--fg);font:600 var(--fs-base)/1.3 var(--font);text-align:left;text-decoration:none}.filter-label{flex:1;min-width:0}.filter-value{flex:none;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-weight:400}.filter-head svg{width:1rem;height:1rem;flex:none;color:var(--faint);transition:transform .16s var(--ease-out)}.filter-row.open .filter-head svg{transform:rotate(90deg)}.chips.wrap.filter-options{margin:0;padding:0 1rem 1rem}.filter-options button.chip:not(.active),.filter-options button.chip:not(.active):hover:not(:disabled){background:var(--bg)}button.filter-reset,button.filter-reset:hover:not(:disabled){display:block;width:auto;margin:.75rem auto 0;background:none;color:var(--muted);font-weight:600}@media (prefers-reduced-motion: reduce){.filter-head svg{transition:none}}.shop-title{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.shop-title h1{min-width:0;margin:0 0 .25rem;font-size:var(--fs-2xl);overflow-wrap:anywhere}.round-btn.fav.on{color:var(--red)}.round-btn.fav.on svg{fill:currentColor}.shop-sub{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin:0 0 .875rem}.shop-address{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.625rem;row-gap:.125rem;margin:0 0 1rem;color:var(--fg)}.shop-address svg{width:1.25rem;height:1.25rem;color:var(--muted)}.shop-address .hint{grid-column:2;margin:0;font-size:var(--fs-sm)}.shop-actions .round-btn.share{flex:none;width:max(2.75rem,44px);height:auto;min-height:max(2.75rem,44px)}.page-sub{margin:-.5rem 0 1rem;color:var(--muted);font-size:var(--fs-sm)}.service-group-head{margin-bottom:.5rem;color:var(--muted);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase}.service-rows .service-icon{width:2.5rem;height:2.5rem;border-radius:.75rem;background:var(--bg)}.service-text{display:grid;flex:1;min-width:0;gap:.125rem}.service-text .service-name{font-weight:600}.service-text .service-price{font-size:var(--fs-xs)}.service-tick{border-color:var(--muted)}.fav-shops{margin-bottom:.5rem}.fav-shop{display:grid;align-content:start;gap:.25rem;width:9rem;padding:.875rem;border-radius:var(--radius);background:var(--accent-soft);color:var(--fg);text-decoration:none;transition:transform .16s var(--ease-out)}.fav-shop:active{transform:scale(.97)}.fav-shop svg{width:1.25rem;height:1.25rem;color:var(--red);fill:currentColor}.fav-shop-name{font-weight:700;overflow-wrap:anywhere}.fav-shop .hint{margin:0;font-size:var(--fs-xs)}a.so-row{display:flex;align-items:center;gap:.75rem;min-height:max(3rem,44px);color:var(--fg);font-weight:500;text-decoration:none}@media (prefers-reduced-motion: reduce){.fav-shop:active{transform:none}}.map-page .map-sheet{padding-top:1.25rem}.tone-accent{--tone-bg: var(--accent);--tone-fg: var(--on-accent)}.bk-pill{flex:none;padding:.25rem .625rem;border-radius:var(--pill);background:var(--tone-bg);color:var(--tone-fg);font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.bk-steps{display:flex;align-items:center;gap:.375rem;margin:.25rem 0 1rem;color:var(--link);font-size:var(--fs-sm);font-weight:700}.bk-steps>span:first-child{margin-right:.375rem}.bk-step{width:.5rem;height:.5rem;border-radius:var(--pill);background:var(--border-strong);transition:width .2s var(--ease-out)}.bk-step.past{background:var(--accent)}.bk-step.on{width:1.5rem;background:var(--accent)}.bk-shop{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;padding:.875rem 1rem;border-radius:var(--radius);background:var(--surface)}.bk-shop-avatar{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--accent-soft);color:var(--link);font-weight:700}.bk-shop-text{display:grid;gap:.125rem;flex:1;min-width:0}.bk-shop-text strong{font-size:var(--fs-md);overflow-wrap:anywhere}.bk-shop-text .hint{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-shop-change{flex:none;padding:.75rem 0 .75rem .5rem;color:var(--link);font-weight:700;text-decoration:none}.bk-cars{display:flex;gap:.5rem;margin:0 -1rem 1rem;padding:0 1rem .25rem;overflow-x:auto;scrollbar-width:none}.bk-cars::-webkit-scrollbar{display:none}button.bk-car{display:grid;align-content:start;justify-items:start;gap:.25rem;flex:none;width:9.5rem;min-height:6.5rem;margin:0;padding:.875rem;border-radius:var(--radius);background:var(--surface);color:var(--fg);text-align:left}button.bk-car:hover:not(:disabled){background:var(--surface)}button.bk-car svg{width:1.5rem;height:1.5rem;margin-bottom:.25rem;color:var(--muted)}button.bk-car strong{font-size:var(--fs-md);font-weight:800;overflow-wrap:anywhere}button.bk-car span{font-size:var(--fs-xs);color:var(--muted);font-weight:500}button.bk-car.on,button.bk-car.on:hover:not(:disabled){background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}button.bk-car.on svg{color:var(--link)}button.bk-car.add,button.bk-car.add:hover:not(:disabled){width:6.5rem;justify-items:center;align-content:center;background:transparent;border:1.5px dashed var(--border-strong)}button.bk-car.add svg{margin:0;color:var(--fg)}button.bk-car.add strong{font-size:var(--fs-sm);font-weight:600}main.book.has-action:has(.bk-bar-note){padding-bottom:10rem}.action-bar .bk-bar-note{margin-bottom:.5rem;color:var(--muted);font-size:var(--fs-sm)}.bk-what{margin:0 0 .5rem;color:var(--muted);font-size:var(--fs-sm)}.bk-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:1.25rem 0 .75rem}.bk-head h2{margin:0}.bk-month{color:var(--muted);font-size:var(--fs-sm);font-weight:600;text-transform:capitalize}.bk-step-note{display:inline-flex;align-items:center;gap:.375rem;color:var(--muted);font-size:var(--fs-xs)}.bk-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--green)}.bk-days{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(4rem,max-content);gap:.5rem;margin:0 -1rem;padding:0 1rem;overflow-x:auto;scrollbar-width:none}.bk-days::-webkit-scrollbar{display:none}button.bk-day{display:grid;justify-items:center;gap:.125rem;min-height:4.25rem;margin:0;padding:.625rem;border-radius:var(--radius-s);background:var(--surface);color:var(--fg)}button.bk-day:hover:not(:disabled){background:var(--surface)}button.bk-day span{font-size:var(--fs-xs);font-weight:500;color:var(--muted)}button.bk-day strong{font-size:var(--fs-xl);font-weight:800;letter-spacing:-.03em}button.bk-day.on,button.bk-day.on:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}button.bk-day.on span{color:var(--on-ink);opacity:.7}button.bk-day:disabled{opacity:.4}.bk-part-head{margin:.875rem 0 .5rem;color:var(--muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.bk-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}button.bk-slot{min-height:2.75rem;margin:0;padding:0;border-radius:var(--radius-s);background:var(--surface);color:var(--fg);font-weight:700;font-variant-numeric:tabular-nums}button.bk-slot:hover:not(:disabled){background:var(--surface)}button.bk-slot.on,button.bk-slot.on:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.bk-slot-skeleton{height:2.75rem;border-radius:var(--radius-s)}.bk-total{display:flex;justify-content:space-between;gap:1rem;margin:1rem 0 0;padding:.875rem 1rem;border-radius:var(--radius);background:var(--surface)}.bk-total span{color:var(--muted)}main.bk-done{display:grid;align-content:start;gap:.75rem;padding-top:1.5rem}.bk-done-icon{display:grid;place-items:center;justify-self:center;width:5rem;height:5rem;border-radius:50%;background:var(--green-soft);color:var(--green)}.bk-done-icon.wait{background:var(--accent-soft);color:var(--link)}.bk-done-icon svg{width:2.25rem;height:2.25rem;stroke-width:2.25}main.bk-done h1{margin:.25rem 0 0;font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.03em;text-align:center}.bk-done-lead{max-width:34ch;margin:0 auto .5rem;color:var(--muted);text-align:center}.bk-rows{margin:0;padding:0 1rem;border-radius:var(--radius);background:var(--surface)}.bk-rows>div{display:flex;justify-content:space-between;gap:1rem;padding:.875rem 0}.bk-rows>div+div{border-top:1px solid var(--border)}.bk-rows dt{color:var(--muted)}.bk-rows dd{margin:0;font-weight:700;text-align:right;overflow-wrap:anywhere}main.bk-done>.button{margin:0;min-height:3.5rem;display:grid;place-items:center}main.bk-done>.button.secondary{background:var(--surface)}.bk-tiles{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:.5rem;margin:.75rem 0}.bk-tile,button.bk-tile{display:grid;justify-items:center;align-content:center;gap:.375rem;min-width:0;min-height:4.75rem;margin:0;padding:.75rem .5rem;border:0;border-radius:var(--radius);background:var(--surface);color:var(--fg);font:600 var(--fs-xs)/1.2 var(--font);text-align:center;text-decoration:none}button.bk-tile:hover:not(:disabled){background:var(--surface)}.bk-tile svg{width:1.375rem;height:1.375rem}button.bk-tile.on{box-shadow:inset 0 0 0 2px var(--fg)}.bk-lead{display:grid;justify-items:center;gap:.5rem;margin:.5rem 0 1rem;text-align:center}.bk-lead h2{margin:.25rem 0 0;font-size:var(--fs-xl);font-weight:800}.bk-lead p{max-width:36ch;margin:0;color:var(--muted)}.bk-hero{display:grid;gap:.375rem;margin:0 0 .75rem;padding:1.125rem 1.25rem;border-radius:var(--radius-l);background:var(--hero);color:var(--on-hero)}.bk-hero.soft{background:var(--accent-soft);color:var(--fg)}.bk-hero-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--hero-muted);font-size:var(--fs-sm)}.bk-hero.soft .bk-hero-top{color:var(--link)}.bk-hero.soft .bk-pill{background:var(--bg);color:var(--fg)}.bk-hero-time{font-size:clamp(2.25rem,11vw,2.875rem);font-weight:800;letter-spacing:-.04em;line-height:1.05;font-variant-numeric:tabular-nums}.bk-hero-sub,.bk-hero-where{color:var(--hero-muted);font-size:var(--fs-sm);overflow-wrap:anywhere}.bk-hero.soft .bk-hero-where{color:var(--muted)}.bk-hero-where.strong{color:var(--on-hero);font-size:var(--fs-md);font-weight:700}.bk-hero-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:.5rem;margin-top:.5rem}.bk-hero-btn,button.bk-hero-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;margin:0;padding:0 1rem;border:0;border-radius:var(--pill);background:var(--hero-tile);color:var(--on-hero);font:600 var(--fs-sm) var(--font);text-decoration:none}button.bk-hero-btn:hover:not(:disabled){background:var(--hero-tile)}.bk-hero-btn svg{width:1.125rem;height:1.125rem}.bk-remind,.bk-message{display:grid;gap:.5rem;margin:.75rem 0;padding:1rem;border-radius:var(--radius);background:var(--blue-soft)}.bk-remind h2{margin:0;font-size:var(--fs-md);font-weight:800}.bk-remind-kind{display:inline-flex;align-items:center;gap:.375rem;color:var(--blue);font-size:var(--fs-xs);font-weight:700;letter-spacing:.02em;text-transform:uppercase}.bk-remind-kind svg{width:1rem;height:1rem;flex:none}.bk-message p{margin:0}.bk-remind-chips{display:flex;flex-wrap:wrap;gap:.5rem}.bk-remind-chips button{display:inline-flex;align-items:center;gap:.375rem;min-height:max(2.75rem,44px);margin:0;padding:0 1.125rem;background:color-mix(in srgb,var(--bg) 75%,transparent);color:var(--fg);font-size:var(--fs-sm)}.bk-remind-chips button:hover:not(:disabled){background:color-mix(in srgb,var(--bg) 75%,transparent)}.bk-remind-chips button.on,.bk-remind-chips button.on:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}.bk-remind-chips button.outline{background:var(--bg);box-shadow:inset 0 0 0 1.5px var(--fg)}.bk-remind-chips svg{width:1rem;height:1rem}.bk-move{display:grid;margin:0 0 1rem}.bk-move .bk-head{margin-top:.5rem}.bk-move .primary-lg{margin-top:1rem}.bk-facts{list-style:none;margin:.75rem 0;padding:0 1rem;border-radius:var(--radius);background:var(--surface)}.bk-facts>li+li{border-top:1px solid var(--border)}.bk-fact{display:grid;grid-template-columns:1.375rem minmax(5rem,7rem) minmax(0,1fr);align-items:center;gap:.75rem;padding:.875rem 0}.bk-fact-icon{display:grid;color:var(--muted)}.bk-fact-icon svg{width:1.25rem;height:1.25rem}.bk-fact-label{color:var(--muted);font-size:var(--fs-sm)}.bk-fact-value{font-weight:700;overflow-wrap:anywhere;white-space:pre-wrap}.bk-fact-value button.link{display:block;padding:.25rem 0 0}.bk-fact-edit{display:grid;gap:.5rem;padding:.875rem 0}.bk-fact-edit label{display:grid;gap:.5rem}.bk-fact-edit button.secondary{margin:0}button.bk-cancel-link{display:block;margin:1rem auto;padding:.75rem 1rem;min-height:44px;color:var(--red);font-weight:700}button.bk-cancel-link:hover{color:var(--red)}.bk-page .action-bar button.secondary{margin:0;background:var(--surface)}.bk-rate{display:grid;gap:.75rem;margin:.75rem 0;padding:1.25rem 1rem;border-radius:var(--radius);background:var(--accent-soft);text-align:center}.bk-rate h2{margin:0;font-size:var(--fs-md)}.bk-rate .star-input,.bk-rate .chips{justify-content:center;margin:0}.bk-rate button.chip:not(.active){background:color-mix(in srgb,var(--bg) 60%,transparent)}.bk-rate-text textarea{background:var(--bg);border-color:transparent;box-shadow:none}.bk-again{justify-self:center;color:var(--link);font-weight:700;text-decoration:none}.bk-rated{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.75rem 0}.bk-rated .rated{margin:0;min-height:max(2.75rem,44px)}.bk-cap{margin:1rem 0 .5rem;color:var(--muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}button.bk-sheet-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:3.5rem;margin:.75rem 0 0;font-size:var(--fs-md)}button.bk-sheet-btn svg{width:1.25rem;height:1.25rem}button.bk-sheet-btn.outline{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 2px var(--fg)}button.bk-sheet-btn.danger,button.bk-sheet-btn.danger:hover:not(:disabled){border:0;background:var(--red-soft);color:var(--red)}.bk-list .segmented{margin-bottom:.5rem}.bk-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:1.25rem 0 .25rem}.bk-day-head h2{margin:0;color:var(--muted);font-size:var(--fs-sm);font-weight:600}.bk-day-head span{color:var(--muted);font-size:var(--fs-xs)}.bk-rows-list{list-style:none;margin:0;padding:0}.bk-rows-list li+li .bk-row{border-top:1px solid var(--border)}.bk-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;color:var(--fg);text-decoration:none}.bk-row .service-icon{width:2.75rem;height:2.75rem;border-radius:var(--radius-s);background:var(--surface)}.bk-row-text{display:grid;gap:.125rem;flex:1;min-width:0}.bk-row-text strong{font-size:var(--fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-row-text span{color:var(--muted);font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-row-end{display:grid;justify-items:end;gap:.25rem;flex:none}.bk-row-end strong{font-size:var(--fs-md);font-weight:800;font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){.bk-step{transition:none}}.more-page>h2{margin-top:1.25rem}.more-who{display:grid;gap:.125rem;flex:1;min-width:0}.more-who strong{font-weight:700;overflow-wrap:anywhere}.more-who .hint{font-size:var(--fs-sm);font-weight:400}.more-head,.more-banner{display:flex;align-items:center;gap:.875rem;margin:.25rem 0 1rem;color:var(--fg);text-decoration:none;transition:transform .16s var(--ease-out)}.more-head:active,.more-banner:active{transform:scale(.98)}.more-head .more-who strong{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.01em}.verified-line{display:inline-flex;align-items:center;gap:.25rem;color:var(--green);font-size:var(--fs-sm)}.verified-line svg{width:.875rem;height:.875rem;flex:none}.more-banner{margin:0 0 .5rem;padding:.875rem 1rem;border-radius:var(--radius);background:var(--accent-soft)}.more-banner .hint{color:var(--accent-ink)}.more-banner-icon{display:grid;place-items:center;flex:none;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--accent);color:var(--on-accent)}.more-banner-icon svg{width:1.25rem;height:1.25rem}.radio-list{list-style:none;margin:0 0 1rem;padding:0 1rem;border-radius:var(--radius);background:var(--surface)}.radio-list li+li{border-top:1px solid var(--border)}button.radio-row{display:flex;align-items:center;gap:.75rem;width:100%;min-height:max(3.75rem,44px);margin:0;padding:.625rem 0;border:0;border-radius:0;background:none;color:var(--fg);font:inherit;text-align:left}button.radio-row:hover:not(:disabled){background:none}.radio-dot{display:grid;place-items:center;flex:none;width:1.5rem;height:1.5rem;border-radius:50%;box-shadow:inset 0 0 0 2px var(--faint)}.radio-dot.on{background:var(--ink);color:var(--on-ink);box-shadow:none}.radio-dot svg{width:.875rem;height:.875rem}.share-qr .qr{width:min(10rem,50%);margin:.75rem auto 1rem;box-shadow:inset 0 0 0 1px var(--border)}.share-link{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;padding:.25rem .25rem .25rem 1rem;border-radius:var(--radius-input);background:var(--surface);font-weight:600}.share-link span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-link .round-btn{background:var(--bg)}.data-hero{display:grid;justify-items:center;gap:.375rem;margin:0 0 1.25rem;text-align:center}.data-hero h2{margin:.5rem 0 0;font-size:var(--fs-2xl);overflow-wrap:anywhere}.avatar-v3.xl{width:5.5rem;height:5.5rem;font-size:var(--fs-2xl)}.data-card{margin:0 0 1rem;padding:0 1rem;border-radius:var(--radius);background:var(--surface)}.data-card>div{display:grid;gap:.25rem;padding:.875rem 0}.data-card>div+div{border-top:1px solid var(--border)}.data-card dt{color:var(--muted);font-size:var(--fs-sm)}.data-card dd{margin:0;font-weight:700;overflow-wrap:anywhere}.car-row-icon{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:var(--radius-s);background:var(--tone-bg);color:var(--tone-fg)}.car-row-icon svg{width:1.375rem;height:1.375rem}.danger-zone{display:grid;justify-items:center;margin:1.5rem 0 0;text-align:center}button.link.danger-link{color:var(--danger);font-weight:700;text-decoration:none}.await-card{display:grid;justify-items:start;gap:.25rem;margin:0 0 .75rem;padding:1rem;border-radius:var(--radius);background:var(--accent-soft)}.await-card .kind-label{color:var(--accent-ink)}.await-card h2{margin:.25rem 0 0;font-size:var(--fs-md)}.await-card .hint{color:var(--accent-ink)}button.await-stars{margin:.25rem 0;padding:0;min-height:max(2.75rem,44px);border:0;background:none;font-size:var(--fs-xl)}button.await-stars:hover:not(:disabled){background:none}button.ink-pill{width:auto;margin:.25rem 0 0;padding:0 1.25rem;min-height:max(2.75rem,44px)}.my-review{display:grid;gap:.5rem;margin:0 0 .75rem;padding:1rem;border-radius:var(--radius);background:var(--surface)}.my-review>p{margin:0}.my-review-top{display:flex;align-items:flex-start;gap:.75rem}.my-review-top .stars{flex:none;margin-top:.125rem}.shop-reply{display:grid;gap:.25rem;padding:.75rem;border-radius:var(--radius-s);background:var(--bg)}.shop-reply p{margin:0;font-size:var(--fs-sm)}.my-review-actions{display:flex;gap:1rem}.my-review-actions button.link{padding:.5rem 0;font-weight:700;text-decoration:none}button.link.muted-link{color:var(--muted)}label.switch-row{cursor:pointer}.switch-row .switch{flex:none}button.contact-card{display:flex;align-items:center;gap:.875rem;width:100%;margin:0 0 .75rem;padding:.875rem 1rem;border:0;border-radius:var(--radius);background:var(--surface);color:var(--fg);font:inherit;text-align:left}button.contact-card:hover:not(:disabled){background:var(--surface)}.contact-icon{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:var(--radius-s);background:var(--tone-bg);color:var(--tone-fg)}.contact-icon svg{width:1.375rem;height:1.375rem}button.faq-q{margin:0;border-radius:0;font-weight:600}button.faq-q:hover:not(:disabled){background:none}.faq-q .menu-chevron{transition:transform .16s var(--ease-out)}.faq-q[aria-expanded=true] .menu-chevron{transform:rotate(90deg)}.faq-a{margin:-.25rem 0 0;padding:0 0 .875rem;color:var(--muted);font-size:var(--fs-sm)}button.report-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:3.5rem;border-radius:var(--pill)}.report-btn svg{width:1.25rem;height:1.25rem}.about-hero{display:grid;justify-items:center;gap:.25rem;margin:1rem 0 1.5rem;text-align:center}.about-hero h2{margin:.75rem 0 0;font-size:var(--fs-2xl)}.about-hero p{margin:0}.about-icon{display:grid;place-items:center;width:5.5rem;height:5.5rem;border-radius:1.5rem;background:#111;color:var(--accent)}.about-icon svg{width:2.75rem;height:2.75rem}.about-foot{text-align:center}.fb-q{margin:.5rem 0 0;text-align:center}.star-input.fb-stars{justify-content:center;margin:.75rem 0 .25rem}.fb-hint{margin:0 0 1.25rem;text-align:center}.eyebrow{display:block;margin:0 0 .5rem;color:var(--muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.owner-reviews .my-review{background:var(--surface)}.reply-form{display:grid;gap:.5rem;margin:0}.reply-form label{margin:0}.reply-form .my-review-actions{align-items:center}.review-card .shop-reply{margin-top:.25rem;font-size:var(--fs-sm)}.await-stars .stars{gap:.5rem}.await-stars .star{font-size:var(--fs-2xl)}
