@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAaEABMAAAAADFgAAAYdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJpBmA/U1RBVIE4AFwvbBEICoJ8gkMLFAAwhCoBNgIkAyIEIAWGUAdiDAcbvgpRVHJOI/viwCYyfSFrJjFIG8raYpYj9+IeSF0s6zD+Lk/4OGrZHhHV+wvt2ffuWPwlA51lIICIosSVmyOKEs5Uzlx3NKeXIgn1ssCydUybDV0IHga+SszIyfrQe9bLTFNxjayzgs76hNsDoSYtRe32fiJ4gxBjrP8L+w//zzHjv7Yqyr9o2vOBDXhCo2jMtr4uwAK/gV1U0PxAq/EAD+yW9EoKOL1KLw8rHrFgCSgRTQRzBzpeXVhweEDlyfY8gIoOa2CQJzrTAHIIoitTMVV2dyFwpJ2iAEQTpSkhPitxD3YwuZHEagTcAhyKAcBmUyPdhTovJThOw6HYiaF2M/J7erdi2OUutor6ES6Ac88AvfZvKpb6fJoArohb524042j6Jij36NI7P8Pb7s721naN9gcTtcjXQP4l+8BKEzFVGMxxoHqlq8Ul4LGneFJBDFaOdKpLPcg8P14YSDwIcn75hdlyJLTBlZ4voL6tT46yC/njunXqpJ0/bSvmrH1o3kRlwZ+j0DBogkF3KbDRVBlbOc+fY5HVXwPoT9hfekPnyZMaEmenYLMSg5npqegFOsgXsBv1IoF9aIVfSCNHkk6+gIzILsiYuhWQCfUtZEpbkRntQxBZgw7MwFbMcRvwJrAnBlDqs7isLtL7pO84Xru1i7ah7tckH1Wreqq6K9u0amxU1bcff/s2Y1ni3rh2I8zHzqkm3PGvv3mzC6NDBz/UcOBIg+nm88rxN8MbdtypvHUL5o1c2zG0urYpRmW+VHZdiba6GXN/3v0B3i3nt4RBsbfAu8ftLqRcTIlZ4VYheFTAS5nXLS65VZrbuW3daF2Ze1ChyGXWZN6u9nUuH1LfyTERifZXEpIueMe28vF8FOoTnsONzw+1djo9P71lZGx1vM8mH/BhvSa2HDsRZ1+Ul+RmpnPOIaEuwWnZZdkgQWAAyCDDZ1wk+0sh7wseAAwA6UlHxbftCgYAAwKAgwIAEA7ACfHIRbV7J6dwF/ZzcRRmAjXUYKAGWAlDCCFmKnH+LJEQfHKEmVrfmKwSEab36AcubXQBoDYJV/aRV+funFD8wAXLSLYbwr9+DR+h/qZIKCfeqRG5ghHpdY0zcV2nuz5iJMhAFjaTDwOcoyKGG9JHrCfdp4cC+kCvUrxc7+bliIMiHj95sPIbUeWZEP/HLnN2tlr9EBeRiktHuWvErx98fRz1MuEvHO3FDRgtsSzL/P0hsDLK2n5/uHMOjvTst0HD6t+80ZN798j7j//kjqHxIOZDFPR/FxurFD6/HxGbB799RPHLx5F89MoBOub9jVuOWtmPH3o9H3r26DIuff+LqPLwff/xryDRmiAYmjxiK0GwS9XU+k8QpUrHsCTs4qH89Fv44ubWbQmOE51M7J8Pt8+h+NKt3zZpa2L9zZqcRlyEc4MaNGdfjQCxgIygn78ne4yAzcLWA3zAJ6RRGbijvHr1W+XN8ywrG0EoZSySb0/A9KsllI7Q/Pq8hLu76tfTy5cF4X8bQxTtYp2vr6/+1oI4AhgAlNYFryt62VaX9ktO6VsAeDLeWx6fff4vdV1ts7N6+gw9GCsQnqPB0QUttB9nEc7Aaf4XM0NQ90VJ+HV1rG04znGCmXcpPCA9+nxdMPgPlT7Dz83NMfZuMJaNeRqbc+tjd2QER/b0B44d7nv5Rif7VC8svYkx9SKWwb3YzN2M3cY8jSNLl+PYZqfjxNTxOLXVCmfmduDc0ty1kLbjeiGfIrDFJXWPTTMD5TKupR8cpZgJeXTofId8NoUj6E8XfAc2k4WPdbCberDYAp8Q7L5dUo8wE8cs9QINZYvwXKzvBS4v/n+fQZkGrrFysKEIuFBgjQpxiHH1XA+ZBI+C+oAoxhYKECc42rGOc8L4mYhsiThGfFjOcKmFubPpDgwnY1918Fwo8ouenDJxvGP96HFWJ28hiOy251oKjkcbGz2POMme8CTMThx6wqOPsFtPI6j6HhDyDTxFQYnL88FcXGAGHl3ZuueRbEuxbK6Hc84ZDvRrREtLzyjj8Xkd/uShR1b0sYd8Nh8/c8znxCnadxQcf2nFVWIyw1g+4StXav9j75s+CQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--sage-50:#f2f7f4;--sage-100:#e6f0eb;--sage-200:#c6ded5;--sage-300:#9dc7b9;--sage-400:#74ac9b;--sage-500:#4f9180;--sage-600:#3f7a6a;--sage-700:#346357;--sage-800:#294e45;--sage-900:#213f39;--stone-50:#faf8f4;--stone-100:#f3f0ea;--stone-150:#ece8e0;--stone-200:#e4dfd5;--stone-300:#d3ccbf;--stone-400:#b3ab9c;--stone-500:#8c8475;--stone-600:#6a6356;--stone-700:#4b463d;--stone-800:#322e27;--stone-900:#221f1a;--stone-950:#161310;--white:#fff;--red-50:#fbeeeb;--red-100:#f6dad3;--red-500:#c0493b;--red-600:#a93c2f;--amber-50:#fbf3e1;--amber-100:#f6e7c2;--amber-500:#b7791f;--amber-600:#9c6516;--slate-50:#eef2f4;--slate-500:#5e7c86;--slate-600:#4e6a73;--cat-client:var(--sage-600);--cat-client-bg:var(--sage-50);--cat-walkin:#b0764f;--cat-walkin-bg:#f6ede3;--cat-block:var(--stone-400);--cat-block-bg:var(--stone-100);--cat-break:var(--slate-500);--cat-break-bg:var(--slate-50);--bg:var(--stone-50);--surface:var(--white);--surface-2:var(--stone-100);--surface-3:var(--stone-150);--surface-sunken:var(--stone-100);--text-strong:var(--stone-950);--text:var(--stone-800);--text-muted:var(--stone-600);--text-subtle:var(--stone-500);--text-on-accent:var(--white);--border:var(--stone-200);--border-strong:var(--stone-300);--divider:var(--stone-150);--accent:var(--sage-600);--accent-hover:var(--sage-700);--accent-active:var(--sage-800);--accent-bg:var(--sage-50);--accent-bg-2:var(--sage-100);--accent-text:var(--sage-700);--on-accent:var(--white);--focus-ring:#3f7a6a52;--positive:var(--sage-600);--positive-text:var(--sage-700);--positive-bg:var(--sage-50);--negative:var(--red-500);--negative-text:var(--red-600);--negative-bg:var(--red-50);--warning:var(--amber-500);--warning-text:var(--amber-600);--warning-bg:var(--amber-50);--info:var(--slate-500);--info-bg:var(--slate-50);--ink:var(--stone-950);--ink-2:var(--stone-800);--ink-3:var(--stone-600);--ink-4:var(--stone-400);--line:var(--border);--line-strong:var(--border-strong);--rose:var(--accent);--rose-deep:var(--accent-hover);--rose-light:var(--accent-bg);--rose-glow:var(--focus-ring);--sage:var(--sage-500);--sage-light:var(--sage-50);--font-display:"Bricolage Grotesque", "Hanken Grotesk", system-ui, sans-serif;--font-text:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--fs-xs:12px;--fs-sm:13.5px;--fs-base:15px;--fs-md:17px;--fs-lg:20px;--fs-xl:24px;--fs-2xl:30px;--fs-3xl:38px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-display:600;--lh-tight:1.08;--lh-snug:1.25;--lh-normal:1.5;--lh-relaxed:1.65;--ls-tighter:-.035em;--ls-tight:-.02em;--ls-normal:0;--ls-wide:.04em;--ls-wider:.12em;--num-tabular:"tnum" 1, "lnum" 1;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--container:1200px;--container-md:880px;--container-sm:640px;--gutter:clamp(16px, 4vw, 32px);--control-sm:36px;--control-md:44px;--control-lg:52px;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--radius-2xl:28px;--radius-pill:999px;--radius-circle:50%;--shadow-xs:0 1px 2px #221f1a0d;--shadow-sm:0 1px 3px #221f1a0f, 0 1px 2px #221f1a0a;--shadow-md:0 4px 14px #221f1a12, 0 2px 4px #221f1a0a;--shadow-lg:0 12px 32px #221f1a1a, 0 4px 8px #221f1a0d;--shadow-xl:0 24px 56px #221f1a24, 0 8px 16px #221f1a0f;--ring:0 0 0 3px var(--focus-ring);--shadow-inset:inset 0 1px 2px #221f1a0d;--dur-instant:80ms;--dur-fast:.14s;--dur:.2s;--dur-slow:.32s;--ease-out:cubic-bezier(.22,.61,.36,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--ease-standard:cubic-bezier(.2,0,0,1);--transition-colors:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);--transition-transform:transform var(--dur) var(--ease-out)}@media (prefers-reduced-motion:reduce){:root{--dur-instant:0s;--dur-fast:0s;--dur:0s;--dur-slow:0s}}*,:before,:after{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{min-width:320px;min-height:100vh}body{font-family:var(--font-text);font-size:var(--fs-base);font-weight:var(--fw-regular);line-height:var(--lh-normal);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:var(--fw-display);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--text-strong);margin:0}p{margin:0}a{color:var(--accent-text);transition:var(--transition-colors);font-weight:500;text-decoration:none}a:hover{color:var(--accent-hover)}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--sage-200);color:var(--stone-950)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--stone-300) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--stone-300);border-radius:var(--radius-pill);background-clip:padding-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--stone-400);background-clip:padding-box}.tnum,[data-tnum]{font-feature-settings:var(--num-tabular);font-variant-numeric:tabular-nums lining-nums}@keyframes floatUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-md);padding:0 var(--space-6);border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);font-family:var(--font-text);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:0;cursor:pointer;box-shadow:none;transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);text-transform:none;border:1px solid #0000;display:inline-flex;position:relative}button:hover:not(:disabled){background:var(--accent-hover)}button:active:not(:disabled){background:var(--accent-active)}button:disabled{opacity:.5;cursor:not-allowed}.secondaryButton{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-xs)}.secondaryButton:hover:not(:disabled){background:var(--surface-2);border-color:var(--stone-400);box-shadow:var(--shadow-sm)}a.secondaryButton,a.primaryLink,a.buttonLink{min-height:var(--control-sm);padding:0 var(--space-4);font-size:var(--fs-xs);justify-content:center;align-items:center;display:inline-flex}.ghostButton{color:var(--text-muted);box-shadow:none;min-height:var(--control-sm);padding:0 var(--space-4);font-size:var(--fs-sm);background:0 0;border:none}.ghostButton:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.sageButton{background:var(--accent);color:var(--on-accent)}.sageButton:hover:not(:disabled){background:var(--accent-hover)}.sageButton:active:not(:disabled){background:var(--accent-active)}.dangerButton{background:var(--negative);color:var(--white);border-color:#0000}.dangerButton:hover:not(:disabled){background:var(--negative-text)}.dangerText{color:var(--negative)}.inputWrap{min-height:var(--control-md);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);box-shadow:var(--shadow-inset);grid-template-columns:44px 1fr;align-items:center;display:grid;overflow:hidden}.inputWrap:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.inputWrap span{border-right:1px solid var(--border);background:var(--surface-2);height:100%;color:var(--text-subtle);place-items:center;font-size:16px;display:grid}.inputWrap input{width:100%;height:100%;color:var(--text-strong);padding:0 var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);background:0 0;border:none;outline:none}.inputWrap input::placeholder{color:var(--text-subtle)}select{width:100%;min-height:var(--control-md);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-strong);padding:0 var(--space-10) 0 var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238C8475' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;box-shadow:var(--shadow-inset);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);outline:none}select:focus{border-color:var(--accent);box-shadow:var(--ring)}textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:100px;color:var(--text-strong);padding:var(--space-3) var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-regular);line-height:var(--lh-normal);resize:vertical;box-shadow:var(--shadow-inset);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);outline:none}textarea:focus{border-color:var(--accent);box-shadow:var(--ring)}label{gap:var(--space-2);color:var(--text-strong);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;display:grid}label small{text-transform:none;letter-spacing:0;font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.errorBox{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--negative-bg);border:1px solid var(--red-100);color:var(--negative-text);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:var(--lh-snug);animation:floatUp var(--dur) var(--ease-out);display:flex}.successBox{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--positive-bg);border:1px solid var(--sage-200);color:var(--positive-text);font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:var(--lh-snug);animation:floatUp var(--dur) var(--ease-out);display:flex}.authShell{grid-template-columns:minmax(440px,1fr) minmax(380px,.85fr);align-items:stretch;gap:0;min-height:100vh;display:grid}.authHero{background:var(--stone-100);border-right:1px solid var(--border);flex-direction:column;justify-content:space-between;padding:clamp(32px,5vw,56px);display:flex;position:relative;overflow:hidden}.brandRow{align-items:center;gap:var(--space-4);animation:floatUp var(--dur-slow) var(--ease-out) both;display:flex}.brandLogo{border-radius:var(--radius-md);background:var(--accent);flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.brandName{font-family:var(--font-display);font-size:clamp(22px,3vw,28px);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);line-height:1}.brandName span{color:var(--accent)}.brandTagline{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted);margin-top:3px}.heroCopy{animation:floatUp var(--dur-slow) 80ms var(--ease-out) both;flex-direction:column;flex:1;justify-content:center;padding:clamp(40px,6vw,72px) 0;display:flex}.heroCopy h1{font-family:var(--font-display);font-size:clamp(44px,6vw,70px);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--ls-tighter);color:var(--text-strong);margin-bottom:var(--space-5)}.heroCopy h1 span{color:var(--accent)}.heroCopy p{font-size:clamp(16px,1.8vw,18px);font-weight:var(--fw-regular);color:var(--text-muted);line-height:var(--lh-relaxed);max-width:420px}.heroPills{gap:var(--space-2);animation:floatUp var(--dur-slow) .16s var(--ease-out) both;flex-wrap:wrap;display:flex}.heroPill{align-items:center;gap:var(--space-2);padding:5px var(--space-3);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted);display:inline-flex}.authPanel{background:var(--bg);place-items:center;padding:clamp(16px,2vw,32px);display:grid}.authCard{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(100%,480px);box-shadow:var(--shadow-md);animation:floatUp var(--dur-slow) 60ms var(--ease-out) both;gap:var(--space-3);flex-direction:column;padding:clamp(20px,3vw,36px);display:flex}.eyebrow{align-items:center;gap:var(--space-2);margin:0 auto var(--space-3);padding:4px var(--space-3);border-radius:var(--radius-pill);background:var(--accent-bg);color:var(--accent-text);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;width:fit-content;display:flex}.authCard h2{font-family:var(--font-display);font-size:clamp(24px,3.5vw,32px);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);text-align:center;line-height:var(--lh-snug);margin-bottom:var(--space-2)}.muted{color:var(--text-muted);font-size:var(--fs-sm);font-weight:var(--fw-regular);line-height:var(--lh-normal);text-align:center;margin-bottom:0}.form{gap:var(--space-4);display:grid}.twoColumns{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.form>button[type=submit]{width:100%;font-size:var(--fs-base);min-height:var(--control-lg);margin-top:var(--space-1)}.authDivider{align-items:center;gap:var(--space-3);margin:var(--space-2) 0;color:var(--text-subtle);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;grid-template-columns:1fr auto 1fr;display:grid}.authDivider:before,.authDivider:after{content:"";background:var(--border);height:1px}.googleAuthBlock,.appleAuthBlock{gap:var(--space-3);display:grid}.googleButton,.appleButton{width:100%}.googleButton{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-xs)}.googleButton:hover:not(:disabled){background:var(--surface-2);border-color:var(--stone-400)}.appleButton{background:var(--stone-900);color:var(--white);border-color:var(--stone-900)}.appleButton:hover:not(:disabled){background:var(--stone-800)}.switchText{margin-top:var(--space-5);text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}.captchaBox{min-height:68px;padding:var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);place-items:center;display:grid}@media (width<=1000px){.authShell{grid-template-columns:1fr}.authHero{min-height:auto;padding-bottom:var(--space-8)}}@media (width<=660px){.authCard{padding:24px 18px}.authPanel{padding:var(--space-4)}.heroCopy h1{font-size:42px}.twoColumns{grid-template-columns:1fr}}.verificationIcon{background:var(--accent-bg);border-radius:34px;place-items:center;width:96px;height:96px;margin:18px auto 0;font-size:52px;animation:none;display:grid}.mailboxCard{border:1px dashed var(--border-strong);background:var(--surface-2);text-align:center;border-radius:24px;place-items:center;gap:10px;padding:24px;display:grid}.mailboxCard div{font-size:54px}.mailboxCard strong{color:var(--text-strong);font-size:20px}.mailboxCard p{max-width:380px;color:var(--text-muted);margin:0;line-height:1.45}.manualTokenBox{gap:16px;margin-top:18px;display:grid}.verifyActions{gap:14px;margin-top:18px;display:grid}.loadingShell{min-height:100vh;font-size:var(--fs-base);color:var(--text-muted);justify-content:center;align-items:center;display:flex}.dashShell{background:var(--bg);min-height:100vh}.dashHeader{padding:var(--space-4) var(--space-6);background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs);justify-content:space-between;align-items:center;display:flex}.dashHeader .brandRow{animation:none}.logoutBtn{border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 var(--space-4);min-height:var(--control-sm);cursor:pointer;font-size:var(--fs-xs);color:var(--text-muted);font-weight:var(--fw-medium);box-shadow:none;background:0 0}.logoutBtn:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}.dashWelcome{padding:var(--space-10) var(--space-6);max-width:var(--container-sm);margin:0 auto}.dashWelcome h1{font-family:var(--font-display);font-size:clamp(24px,3.5vw,34px);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);margin-bottom:var(--space-2)}.dashboardPage{min-height:100vh;padding:var(--space-8) var(--gutter)}.dashboardCard{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(100%,900px);box-shadow:var(--shadow-sm);animation:floatUp var(--dur-slow) var(--ease-out) both;margin:0 auto;padding:clamp(24px,3.5vw,40px)}.dashboardCardWide{width:min(100%,1200px)}.verifyNotice{align-items:flex-start;gap:var(--space-5);padding:var(--space-5) var(--space-6);border:1px solid var(--amber-100);border-radius:var(--radius-md);background:var(--warning-bg);margin-bottom:var(--space-5);animation:floatUp var(--dur) var(--ease-out);display:flex}.noticeIcon{border-radius:var(--radius-sm);background:var(--warning);width:44px;height:44px;color:var(--white);flex-shrink:0;place-items:center;font-size:20px;display:grid}.loadingSpinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;margin:0 auto;animation:.7s linear infinite spin}.buttonLink{min-height:var(--control-md);padding:0 var(--space-5);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-semibold);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.secondaryLink{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-xs)}.secondaryLink:hover{background:var(--surface-2);border-color:var(--stone-400);color:var(--text);box-shadow:var(--shadow-sm);text-decoration:none}.primaryLink{background:var(--accent);color:var(--on-accent);border:1px solid #0000}.primaryLink:hover{background:var(--accent-hover);color:var(--on-accent);text-decoration:none}.dashNav{align-items:center;gap:var(--space-1);display:flex}.dashNavLink{height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);transition:var(--transition-colors);align-items:center;text-decoration:none;display:inline-flex}.dashNavLink:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.dashNavLinkActive{background:var(--accent-bg);color:var(--accent-text);font-weight:var(--fw-semibold)}.dashNavLinkActive:hover{background:var(--accent-bg-2);color:var(--accent-text)}.pageShell{max-width:var(--container-md);padding:var(--space-8) var(--gutter);gap:var(--space-6);flex-direction:column;margin:0 auto;display:flex}.pageShellNarrow{max-width:var(--container-sm)}.pageHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.pageTitle{font-family:var(--font-display);font-size:clamp(22px,3.5vw,30px);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);line-height:var(--lh-snug);margin-bottom:var(--space-1)}.settingsSaveBar{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.settingsSaveStatus{align-items:center;gap:var(--space-1);font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;display:flex}.settingsSaveStatusDirty{color:var(--warning-text)}.settingsSaveStatusSaved{color:var(--positive-text)}.backLink{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);margin-bottom:var(--space-1);transition:var(--transition-colors);align-items:center;text-decoration:none;display:inline-flex}.backLink:hover{color:var(--accent-text);text-decoration:none}.sectionHeader{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3);display:flex}.sectionTitle{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);color:var(--text-strong)}.specialtySection{gap:var(--space-4);flex-direction:column;display:flex}.specialtyReadCard{gap:var(--space-3)}.specialtyReadCardHeader{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.specialtyReadRows{flex-direction:column;display:flex}.specialtyReadRow{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--border);display:flex}.specialtyReadRow:last-child{border-bottom:none}.specialtyReadLabel{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.specialtyReadValue{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-strong);text-align:right}.specialtyPatchSummary{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border)}.specialtyPatchSummaryHeader{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-1);display:flex}.specialtyPatchBadge{font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:2px var(--space-3);border-radius:var(--radius-pill);white-space:nowrap}.forgotPasswordLink{text-align:right;font-size:var(--fs-sm);margin-top:-4px}.clientList{gap:var(--space-2);flex-direction:column;display:flex}.clientCard{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:inherit;box-shadow:var(--shadow-xs);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);grid-template-columns:44px 1fr auto auto;text-decoration:none;display:grid}.clientCard:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);text-decoration:none}.clientAvatar{border-radius:var(--radius-sm);background:var(--accent-bg-2);width:44px;height:44px;color:var(--accent-text);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);border:1px solid var(--sage-200);flex-shrink:0;place-items:center;display:grid}.clientInfo{min-width:0}.clientName{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;overflow:hidden}.clientMeta{gap:var(--space-3);font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}.clientTags{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.clientVisitInfo{text-align:right;white-space:nowrap;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.clientVisitLabel{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-subtle)}.clientVisitDate{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.clientArrow{color:var(--text-subtle);transition:var(--transition-colors);font-size:16px}.clientCard:hover .clientArrow{color:var(--accent)}@media (width<=660px){.clientCard{grid-template-columns:44px 1fr auto}.clientVisitInfo{display:none}}.tag{padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--accent-bg);color:var(--accent-text);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;display:inline-flex}.tagPicker{gap:var(--space-2);flex-wrap:wrap;display:flex}.tagToggle{min-height:var(--control-sm);padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text);border:1px solid var(--border);font-size:var(--fs-xs);font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors)}.tagToggle:hover:not(:disabled){background:var(--accent-bg);border-color:var(--sage-200);color:var(--accent-text)}.tagToggle:after{display:none}.tagToggleActive{background:var(--accent-bg-2);border-color:var(--sage-300);color:var(--accent-text)}.tagToggleActive:hover:not(:disabled){background:var(--accent-bg-2)}.catalogueBadge{padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);align-items:center;margin-top:4px;display:inline-flex}.catalogueBadgePersonal{background:var(--accent-bg);color:var(--accent-text)}.catalogueBadgePending{background:var(--warning-bg);color:var(--warning-text)}.catalogueBadgeApproved{background:var(--positive-bg);color:var(--positive-text)}.formCard{padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);gap:var(--space-4);flex-direction:column;display:flex}.fieldGroup{gap:var(--space-3);display:grid}.fieldLabel{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--text-strong)}.formActions{justify-content:flex-end;align-items:center;gap:var(--space-3);margin-top:var(--space-2);display:flex}.formCardTitle{font-family:var(--font-display);font-size:var(--fs-md);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);color:var(--text-strong);margin-bottom:var(--space-2)}.formCardHint{font-size:var(--fs-sm);color:var(--text-muted);line-height:var(--lh-normal);margin-bottom:var(--space-4)}.clientProfileHeader{gap:var(--space-4);padding:var(--space-5) var(--space-6);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);flex-direction:column;display:flex}.clientProfileTop{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.clientProfileIdentity{align-items:center;gap:var(--space-4);min-width:0;display:flex}.clientAvatarLarge{border-radius:var(--radius-md);background:var(--accent-bg-2);width:64px;height:64px;color:var(--accent-text);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-semibold);border:1px solid var(--sage-200);flex-shrink:0;place-items:center;display:grid}.clientProfileContactRow{align-items:center;gap:var(--space-4);font-size:var(--fs-sm);color:var(--text-muted);padding-top:var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.clientArchiveBtn{margin-left:auto;font-size:var(--fs-xs)!important}.clientProfileActions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.statsRow{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.statCard{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);text-align:center}.statValue{font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);margin-bottom:var(--space-1);font-feature-settings:var(--num-tabular)}.statLabel{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--ls-wider)}.visitList,.visitHistoryList{gap:var(--space-2);flex-direction:column;display:flex}.visitHistoryRow{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);font-weight:var(--fw-regular);text-align:left;width:100%;transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);display:flex}.visitHistoryRow:hover:not(:disabled){border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.visitHistoryRow:after{display:none}.visitHistoryCheck{border-radius:var(--radius-circle);background:var(--positive-bg);width:22px;height:22px;color:var(--positive-text);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.visitHistoryService{min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.visitHistoryDate{font-size:var(--fs-sm);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.visitHistoryPrice{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--positive-text);white-space:nowrap;text-align:right;font-feature-settings:var(--num-tabular);flex-shrink:0;min-width:56px}.visitCard{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);transition:var(--transition-colors);overflow:hidden}.visitCardExpanded{border-color:var(--accent);box-shadow:var(--shadow-sm)}.overdueApptCard{border-color:var(--amber-200,#fde68a)}.overdueApptFlag{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--warning-text);align-items:center;gap:4px;margin-top:2px;display:inline-flex}.visitCardRow{align-items:start;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);grid-template-columns:100px 1fr auto;display:grid}.visitCardRow:hover{background:var(--surface-2)}.visitDateBadge{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);white-space:nowrap;padding-top:2px}.visitInfo{min-width:0}.visitService{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;overflow:hidden}.visitNotes{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-normal)}.visitNotesPreview{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.visitCardRight{align-items:flex-end;gap:var(--space-1);flex-direction:column;flex-shrink:0;display:flex}.visitPrice{font-family:var(--font-display);font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--positive-text);white-space:nowrap;font-feature-settings:var(--num-tabular)}.visitExpandIcon{color:var(--text-subtle);font-size:9px}.visitCardDetails{padding:0 var(--space-4) var(--space-3);border-top:1px solid var(--border)}.visitNotesExpanded{font-size:var(--fs-sm);color:var(--text);line-height:var(--lh-normal);padding:var(--space-3) 0 var(--space-2)}.generalNotesText{font-size:var(--fs-sm);color:var(--text);line-height:var(--lh-normal);white-space:pre-wrap}.visitCardActions{gap:var(--space-3);display:flex}.visitEditBtn{min-height:var(--control-sm)!important;padding:0 var(--space-4)!important;font-size:var(--fs-xs)!important}.visitSpecialtySummary{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--accent-text);white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.visitTime{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted);margin-top:2px}@media (width<=660px){.statsRow{grid-template-columns:1fr 1fr}.statsRow .statCard:last-child{grid-column:1/-1}.clientProfileHeader{flex-direction:column}.clientProfileActions{width:100%}}.appHeader{z-index:100;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs);position:sticky;top:0}.appHeaderInner{max-width:var(--container);padding:0 var(--gutter);align-items:center;gap:var(--space-2);height:56px;margin:0 auto;display:flex}.appLogo{align-items:center;gap:var(--space-3);margin-right:var(--space-4);flex-shrink:0;text-decoration:none;display:flex}.appLogo:hover{text-decoration:none}.appLogoIcon{border-radius:var(--radius-sm);background:var(--accent);flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.appLogoIcon img,.appLogoIcon svg{width:20px;height:20px}.appLogoName{font-family:var(--font-display);font-size:18px;font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);line-height:1}.appLogoName span{color:var(--accent)}.appNav{align-items:center;gap:var(--space-2);flex:1;display:flex}.appNavLink{align-items:center;gap:var(--space-2);height:var(--control-sm);padding:0 var(--space-4);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);transition:var(--transition-colors);white-space:nowrap;text-decoration:none;display:inline-flex}.appNavLink:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.appNavLinkActive{background:var(--accent-bg);color:var(--accent-text);font-weight:var(--fw-semibold)}.appNavLinkActive:hover{background:var(--accent-bg-2);color:var(--accent-text)}.appNavIcon{font-size:14px}.appHeaderRight{align-items:center;gap:var(--space-2);flex-shrink:0;margin-left:auto;display:flex}.appProfileBtn{align-items:center;gap:var(--space-2);height:var(--control-sm);padding:0 var(--space-3) 0 var(--space-2);border-radius:var(--radius-pill);color:var(--text);transition:var(--transition-colors);text-decoration:none;display:inline-flex}.appProfileBtn:hover{background:var(--surface-2);text-decoration:none}.appProfileBtnActive{background:var(--accent-bg)}.appProfileBtnActive:hover{background:var(--accent-bg-2)}.appAvatar{border-radius:var(--radius-circle);background:var(--accent-bg-2);width:34px;height:34px;color:var(--accent-text);font-family:var(--font-display);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);border:1px solid var(--sage-200);flex-shrink:0;place-items:center;display:grid}.appProfileName{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.appLogoutBtn{width:32px;height:32px;min-height:unset;border-radius:var(--radius-sm);color:var(--text-subtle);box-shadow:none;border:1px solid var(--border);transition:var(--transition-colors);background:0 0;place-items:center;padding:0;display:grid}.appLogoutBtn:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}@media (width<=600px){.appLogoName,.appProfileName,.appNavLink span.appNavIcon+*{display:none}.appNavLink{padding:0 var(--space-2)}}.emptyState{align-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-6);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-2);text-align:center;color:var(--text-muted);flex-direction:column;display:flex}.emptyStateIcon{font-size:40px}.emptyState strong{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--text)}.emptyState p{font-size:var(--fs-sm);max-width:300px;margin:0}.loadingCenter{padding:var(--space-12);justify-content:center;display:flex}.settingsTabs{border-bottom:1px solid var(--border);margin-bottom:var(--space-2);gap:2px;display:flex}.settingsTab{height:42px;padding:0 var(--space-5);border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:var(--text-muted);font-size:14px;font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);align-items:center;gap:var(--space-2);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;display:flex}.settingsTab:hover:not(:disabled){color:var(--text-strong);background:var(--surface-2)}.settingsTab:after{display:none}.settingsTabActive{color:var(--accent-text)!important;border-bottom-color:var(--accent)!important;font-weight:var(--fw-semibold)!important;background:0 0!important}.settingsSection{gap:var(--space-4);padding-top:var(--space-2);flex-direction:column;display:flex}.settingsSectionHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.settingsSectionTitle{font-family:var(--font-display);font-size:var(--fs-base);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);color:var(--text-strong);margin-bottom:var(--space-1)}.settingsSectionHint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-normal)}.settingsSmallBtn{min-height:var(--control-sm)!important;padding:0 var(--space-3)!important;font-size:var(--fs-xs)!important}.locationList{gap:var(--space-2);flex-direction:column;display:flex}.locationCard{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);flex-wrap:wrap;display:flex}.locationColorDot{border-radius:var(--radius-circle);flex-shrink:0;width:12px;height:12px;box-shadow:0 0 0 2px #0000000f}.locationInfo{flex:1;min-width:0}.locationName{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-strong);margin-bottom:2px}.locationAddress{font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:var(--space-1);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.locationTypeBadge{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted)}.locationActions{gap:var(--space-2);flex-shrink:0;display:flex}.locationEditForm{gap:var(--space-3);flex-direction:column;width:100%;display:flex}.colorPicker{gap:var(--space-2);flex-wrap:wrap;display:flex}.colorSwatch{border-radius:var(--radius-circle);width:26px;height:26px;min-height:unset;box-shadow:var(--shadow-xs);transition:box-shadow var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);border:2px solid #0000;padding:0}.colorSwatch:hover:not(:disabled){box-shadow:var(--shadow-sm)}.colorSwatch:after{display:none}.colorSwatchActive{border-color:var(--stone-800)!important;box-shadow:var(--shadow-sm)!important}.weekGrid{gap:var(--space-2);flex-direction:column;display:flex}.dayRow{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);transition:var(--transition-colors);display:flex}.dayRowActive{background:var(--surface);border-color:var(--border-strong)}.dayToggle{align-items:center;gap:var(--space-2);flex-shrink:0;padding-top:6px;display:flex}.dayToggle input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--accent)}.dayLabel{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text);text-transform:uppercase;width:32px;letter-spacing:var(--ls-wide);cursor:pointer}.daySessions{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.daySessionRow{align-items:center;gap:var(--space-3);grid-template-columns:auto 1fr auto;display:grid}.dayHours{align-items:center;gap:var(--space-2);white-space:nowrap;flex-shrink:0;display:flex}.dayHours select{flex-shrink:0;width:auto;min-width:64px}.dayHours input[type=time]{border:1px solid var(--border);border-radius:var(--radius-xs);padding:4px var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-strong);background:var(--surface);width:88px;transition:var(--transition-colors);outline:none}.dayHours input[type=time]:focus{border-color:var(--accent);box-shadow:var(--ring)}.dayHoursSep{color:var(--text-subtle);font-weight:var(--fw-medium)}.dayLocation{align-items:center;gap:var(--space-2);min-width:0;display:flex}.dayLocation select{min-height:var(--control-sm);font-size:var(--fs-xs);padding:0 var(--space-8) 0 var(--space-3);width:100%}.daySessionAddBtn,.daySessionRemoveBtn{white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;display:flex}.dayLocationDot{border-radius:var(--radius-circle);flex-shrink:0;width:8px;height:8px}.dayOff{font-size:var(--fs-xs);color:var(--text-subtle);padding-top:6px;font-style:italic}.bufferPicker{gap:var(--space-2);flex-wrap:wrap;display:flex}.bufferOption{min-height:var(--control-sm);padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text);border:1px solid var(--border);font-size:var(--fs-xs);font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors)}.bufferOption:hover:not(:disabled){background:var(--accent-bg);border-color:var(--sage-300);color:var(--accent-text)}.bufferOption:after{display:none}.bufferOptionActive{background:var(--accent-bg-2)!important;border-color:var(--sage-300)!important;color:var(--accent-text)!important;font-weight:var(--fw-semibold)!important}.recurringBlockList{gap:var(--space-2);flex-direction:column;display:flex}.recurringBlockRow{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-wrap:wrap;display:flex}.datePickerPopup .rdp-root{--rdp-accent-color:var(--accent);--rdp-accent-background-color:var(--accent-bg);--rdp-today-color:var(--accent-text);font-family:var(--font-text);margin:0}.datePickerPopup .rdp-month_caption{font-family:var(--font-display);font-weight:var(--fw-semibold);color:var(--text-strong);font-size:var(--fs-sm)}.datePickerPopup .rdp-weekday{color:var(--text-subtle);font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase}.datePickerPopup .rdp-day_button{color:var(--text);font-size:var(--fs-xs);font-weight:var(--fw-medium);border-radius:var(--radius-circle);transition:var(--transition-colors)}.datePickerPopup .rdp-day_button:hover:not(:disabled){background:var(--accent-bg)}.datePickerPopup .rdp-selected .rdp-day_button{background:var(--accent);color:var(--on-accent);font-weight:var(--fw-semibold)}.datePickerPopup .rdp-today:not(.rdp-outside) .rdp-day_button{font-weight:var(--fw-bold)}.datePickerPopup .rdp-button_next,.datePickerPopup .rdp-button_previous{color:var(--text-muted);border-radius:var(--radius-xs)}.datePickerPopup .rdp-button_next:hover:not(:disabled),.datePickerPopup .rdp-button_previous:hover:not(:disabled){background:var(--surface-2)}.dateOverrideList{gap:var(--space-2);flex-wrap:wrap;display:flex}.dateOverrideCard{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text);box-shadow:var(--shadow-xs);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);display:flex}.dateOverrideCard:hover:not(:disabled){border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.dateOverrideCardDate{align-items:center;gap:var(--space-2);color:var(--text-strong);font-weight:var(--fw-semibold);white-space:nowrap;display:flex}.dateOverrideCardType{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.dateOverrideCardTypeOff{color:var(--text-subtle);font-style:italic}@media (width<=660px){.dateOverrideRow{grid-template-columns:1fr}}.dateOverrideHoursType{width:100%}.toggleLabel{align-items:center;gap:var(--space-3);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text);cursor:pointer;text-transform:none;letter-spacing:0;display:flex}.toggleLabel input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.checkboxLabel{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:var(--surface);transition:var(--transition-colors);display:flex}.checkboxLabel:hover{background:var(--surface-2)}.checkboxLabel input[type=checkbox]{accent-color:var(--accent);flex-shrink:0;margin-top:3px}.checkboxLabelTitle{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.checkboxLabelHint{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.serviceOverrideList{border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.serviceOverrideHeader{gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--surface-2);font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-muted);border-bottom:1px solid var(--border);grid-template-columns:1fr 130px 130px 60px;display:grid}.serviceOverrideRow{gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface);transition:background var(--dur-fast) var(--ease-out);grid-template-columns:1fr 130px 130px 60px;align-items:center;display:grid}.serviceOverrideRow:last-child{border-bottom:none}.serviceOverrideRow:hover{background:var(--surface-2)}.serviceOverrideInactive{opacity:.5}.serviceOverrideName{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-strong)}.inputWrapSm{min-height:var(--control-sm)!important}.inputWrapSm input{height:34px!important;font-size:var(--fs-xs)!important}.inputWrapSm span{font-size:13px!important}.serviceActiveCheck{cursor:pointer;width:16px;height:16px;accent-color:var(--accent)}@media (width<=660px){.serviceOverrideHeader,.serviceOverrideRow{gap:var(--space-2);grid-template-columns:1fr 80px 80px 36px}.dayHours input[type=time]{width:76px}.daySessionRow{gap:var(--space-2);grid-template-columns:1fr}.daySessionAddBtn,.daySessionRemoveBtn{justify-self:flex-start}}.serviceSeedBar{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--accent-bg);border:1px solid var(--sage-200);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.serviceSeedBarLabel{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--accent-text);white-space:nowrap}.serviceSeedBarItem{align-items:center;gap:var(--space-2);display:inline-flex}.serviceSeedBarDismissed{background:var(--surface-2);border-color:var(--border)}.serviceSeedBarDismissedLabel{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted)}.defaultsCheckList{gap:var(--space-1);flex-direction:column;max-height:320px;display:flex;overflow-y:auto}.serviceArchive{margin-top:var(--space-2)}.serviceArchiveSummary{padding:var(--space-2) 0;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;list-style:none;display:flex}.serviceArchiveSummary::-webkit-details-marker{display:none}.serviceArchive[open] .serviceArchiveSummary svg{transform:rotate(90deg)}.serviceArchiveSummary svg{transition:transform var(--dur-fast) var(--ease-out)}.serviceArchive>div:not(.serviceArchiveSummary){padding-top:var(--space-2)}.serviceList{gap:var(--space-2);flex-direction:column;display:flex}.serviceCard{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.serviceCardInactive{opacity:.55;background:var(--surface-2)}.serviceCardMain{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.serviceCardInfo{flex:1;min-width:0}.serviceCardName{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong);margin-bottom:var(--space-1)}.serviceCardVariants{gap:var(--space-2);flex-wrap:wrap;display:flex}.serviceVariantChip{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px var(--space-3)}.serviceCardActions{gap:var(--space-2);flex-shrink:0;display:flex}.serviceEditForm{padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.variantRow{align-items:center;gap:var(--space-2);display:flex}@media (width<=600px){.variantRow{flex-wrap:wrap}}.calShell{flex-direction:column;height:calc(100vh - 56px);display:flex;overflow:hidden}.calToolbar{padding:var(--space-2) var(--space-5);border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;flex-shrink:0;display:flex}.calToolbarLeft,.calToolbarRight{align-items:center;gap:var(--space-2);display:flex}.calNavBtn{min-height:var(--control-sm)!important;width:var(--control-sm)!important;color:var(--text-muted)!important;border-color:var(--border)!important;box-shadow:none!important;background:0 0!important;justify-content:center!important;align-items:center!important;padding:0!important;display:inline-flex!important}.calNavBtn:hover:not(:disabled){background:var(--surface-2)!important;color:var(--text)!important}.calTodayBtn{min-height:var(--control-sm)!important;padding:0 var(--space-3)!important;font-size:var(--fs-xs)!important;font-weight:var(--fw-semibold)!important;color:var(--text-muted)!important;border-color:var(--border)!important;box-shadow:none!important;background:0 0!important}.calTodayBtn:hover:not(:disabled){background:var(--surface-2)!important;color:var(--text)!important}.calPeriodLabel{font-family:var(--font-display);font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--text-strong);letter-spacing:var(--ls-tight)}.calAddBtn{min-height:var(--control-sm)!important;padding:0 var(--space-4)!important;font-size:var(--fs-xs)!important;font-weight:var(--fw-semibold)!important;border-radius:var(--radius-sm)!important}.calViewSwitch{border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;overflow:hidden}.calViewBtn{min-height:30px;padding:0 var(--space-3);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);background:0 0;border:none;border-radius:0}.calViewBtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.calViewBtn:after{display:none}.calViewBtnActive{background:var(--accent-bg)!important;color:var(--accent-text)!important;font-weight:var(--fw-semibold)!important}.calGrid{flex-direction:column;flex:1;display:flex;overflow:hidden}.calDayHeaders{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;grid-template-columns:52px repeat(7,1fr);display:grid}.calTimeColHeader{border-right:1px solid var(--border)}.calDayHeader{padding:var(--space-2) var(--space-1);cursor:pointer;border-left:1px solid var(--border);transition:background var(--dur-fast) var(--ease-out);flex-direction:column;flex:1;align-items:center;display:flex}.calDayHeader:hover{background:var(--surface-2)}.calDayHeaderToday .calDayHeaderDate{background:var(--accent);color:var(--on-accent);border-radius:var(--radius-circle);justify-content:center;align-items:center;width:28px;height:28px;display:flex}.calDayHeaderWeekday{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-subtle);margin-bottom:2px}.calDayHeaderDate{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-strong);line-height:1}.calDayHeadersWrap{scrollbar-color:transparent transparent;overflow-y:scroll}.calBody{flex:1;display:flex;position:relative;overflow:hidden scroll}.calTimeCol{background:var(--surface);z-index:2;border-right:1px solid var(--border);flex-shrink:0;width:52px;position:sticky;left:0}.calTimeSlot{align-items:flex-start;display:flex;position:relative}.calTimeLabel{font-size:10px;font-weight:var(--fw-medium);color:var(--text-subtle);padding:2px var(--space-2) 0;white-space:nowrap;display:block}.calColumns{flex:1;display:flex;position:relative}.calColumnsWeek{grid-template-columns:repeat(7,1fr);display:grid}.calDayCol{border-left:1px solid var(--border);cursor:crosshair;flex:1;min-width:0;position:relative}.calDayColToday{background:var(--accent-bg)}.calDayColHoliday{background:var(--amber-50)}.calHourLine{background:var(--border);pointer-events:none;height:1px;position:absolute;left:0;right:0}.calOffHours{pointer-events:none;z-index:0;background:#221f1a08;position:absolute;left:0;right:0}.calNowLine{background:var(--accent);z-index:3;pointer-events:none;height:2px;position:absolute;left:0;right:0}.calNowLine:before{content:"";border-radius:var(--radius-circle);background:var(--accent);width:10px;height:10px;position:absolute;top:-4px;left:-4px}.calHolidayBanner{top:var(--space-2);text-align:center;font-size:10px;font-weight:var(--fw-semibold);color:var(--warning-text);pointer-events:none;z-index:2;position:absolute;left:0;right:0}.apptBlock{border-radius:var(--radius-xs);padding:3px var(--space-2);cursor:pointer;z-index:1;transition:filter var(--dur-fast) var(--ease-out);box-shadow:var(--shadow-xs);border-left:3px solid;position:absolute;left:3px;right:3px;overflow:hidden}.apptBlock:hover{filter:brightness(.96)}.apptBlock-cancelled{opacity:.4;text-decoration:line-through}.apptBlock-completed{opacity:.65}.apptBlockLabel{font-size:12px;font-weight:var(--fw-semibold);color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;line-height:1.3;overflow:hidden}.apptBlockSub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;overflow:hidden}.apptBlockTime{color:var(--text-subtle);font-size:10px;line-height:1.3}.calBufferBlock{border-top:1px dashed var(--border-strong);z-index:1;pointer-events:none;padding-left:var(--space-2);background:repeating-linear-gradient(45deg,#221f1a08,#221f1a08 3px,#0000 3px 8px);align-items:center;display:flex;position:absolute;left:0;right:0}.calBufferBlock span{font-size:9px;font-weight:var(--fw-semibold);color:var(--text-subtle);text-transform:uppercase;letter-spacing:var(--ls-wide);white-space:nowrap}.calLunchBlock{background:var(--accent-bg);border-top:1px solid var(--sage-200);border-bottom:1px solid var(--sage-200);z-index:1;pointer-events:none;padding-left:var(--space-2);align-items:center;display:flex;position:absolute;left:0;right:0}.calLunchBlock span{font-size:11px;font-weight:var(--fw-medium);color:var(--accent-text);white-space:nowrap}.modalOverlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;padding:var(--space-4);background:#16131080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modalBox{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:min(100%,500px);max-height:90vh;animation:popIn var(--dur) var(--ease-out);border:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.modalHeader{padding:var(--space-5) var(--space-6) var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.modalTitle{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);color:var(--text-strong)}.modalClose{width:30px;min-height:30px;color:var(--text-subtle);box-shadow:none;border-radius:var(--radius-xs);background:0 0;border:none;padding:0;font-size:14px}.modalClose:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.modalClose:after{display:none}.modalBody{padding:var(--space-5) var(--space-6);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.modalBodyPlainForm .formCard{box-shadow:none;background:0 0;border:none;padding:0}.modalFooter{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;flex-shrink:0;display:flex}.modalFooterLeft,.modalFooterRight{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.modalActionBtn{white-space:nowrap;min-height:var(--control-sm)!important;padding:0 var(--space-4)!important;font-size:var(--fs-xs)!important;align-items:center!important;gap:4px!important;display:inline-flex!important}.modalCancelConfirm{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.modalCancelConfirm span{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.apptActionsSection{gap:var(--space-2);padding-top:var(--space-4);margin-top:var(--space-2);border-top:1px solid var(--border);flex-direction:column;display:flex}.apptActionsRow{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.apptTypePicker{gap:var(--space-2);padding:0 var(--space-6) var(--space-4);flex-wrap:wrap;display:flex}.apptSubtypePicker{margin-top:calc(-1 * var(--space-3));padding-top:0}.apptTypeBtn{min-height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);border:1px solid var(--border);box-shadow:none;transition:var(--transition-colors)}.apptTypeBtn:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.apptTypeBtn:after{display:none}.apptTypeBtnActive{font-weight:var(--fw-semibold)!important}.apptSourceTag{padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-subtle);font-size:11px;font-weight:var(--fw-medium);align-self:flex-start;align-items:center;gap:4px;display:inline-flex}.clientSearchWrap{position:relative}.clientDropdown{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:10;margin-top:var(--space-1);position:absolute;top:100%;left:0;right:0;overflow:hidden}.clientDropdownItem{padding:var(--space-3) var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-strong);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);justify-content:space-between;align-items:center;display:flex}.clientDropdownItem:hover{background:var(--accent-bg)}.clientDropdownPhone{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.clientDropdownEmpty{padding:var(--space-3) var(--space-4);font-size:var(--fs-xs);color:var(--text-muted);text-align:center}.completeFormInline{padding:var(--space-4);background:var(--accent-bg);border:1px solid var(--sage-200);border-radius:var(--radius-md);gap:var(--space-3);flex-direction:column;display:flex}.completeFormHeader{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.completeFormTitle{font-family:var(--font-display);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--accent-text);letter-spacing:var(--ls-tight);align-items:center;gap:6px;display:flex}.completeFormAmount{font-size:var(--fs-sm);color:var(--text)}.completeFormAmount strong{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--accent-text);font-feature-settings:var(--num-tabular)}@media (width<=660px){.calDayHeaderWeekday{display:none}.calPeriodLabel{font-size:var(--fs-base)}.apptBlockSub{display:none}}.todaySummary{gap:var(--space-5);border-radius:var(--radius-md);background:var(--stone-900);box-shadow:var(--shadow-sm);padding:var(--space-5) var(--space-6);grid-template-columns:1fr auto;align-items:center;display:grid;overflow:hidden}.todaySummaryTotal{gap:var(--space-1);flex-direction:column;display:flex}.todaySummaryLabel{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:#ffffffb3}.todaySummaryAmount{font-family:var(--font-display);font-size:var(--fs-3xl);font-weight:var(--fw-bold);color:var(--white);letter-spacing:var(--ls-tight);font-feature-settings:var(--num-tabular);line-height:1}.todaySummaryCount{font-size:var(--fs-xs);color:#ffffff80}.todaySummaryBreakdown{gap:var(--space-3);flex-wrap:wrap;display:flex}.todaySummaryMethod{align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:#ffffff14;flex-direction:column;min-width:84px;display:flex}.tsMethodIcon{color:#ffffff8c}.tsMethodLabel{font-size:var(--fs-xs);color:#fff9}.tsMethodAmount{font-family:var(--font-display);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--white);font-feature-settings:var(--num-tabular)}.workBookPeriodBar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.periodSwitch{border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;overflow:hidden}.periodBtn{min-height:var(--control-sm);padding:0 var(--space-4);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);background:0 0;border:none;border-radius:0}.periodBtn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.periodBtn:after{display:none}.periodBtnActive{background:var(--accent-bg)!important;color:var(--accent-text)!important;font-weight:var(--fw-semibold)!important}.workBookPeriodTotal{align-items:baseline;gap:var(--space-2);display:flex}.workBookPeriodLabel{font-size:var(--fs-xs);color:var(--text-muted);font-weight:var(--fw-medium)}.workBookPeriodAmount{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--text-strong);letter-spacing:var(--ls-tight);font-feature-settings:var(--num-tabular)}.dayGroupList{gap:var(--space-2);flex-direction:column;display:flex}.dayGroup{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);transition:var(--transition-colors);overflow:hidden}.dayGroupToday{border-color:var(--accent)}.dayGroupHeader{padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);justify-content:space-between;align-items:center;display:flex}.dayGroupHeader:hover{background:var(--surface-2)}.dayGroupLeft{flex-direction:column;gap:2px;display:flex}.dayGroupDate{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.dayGroupBreakdown{gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}.dayGroupCount{color:var(--text-subtle)}.dayGroupRight{align-items:center;gap:var(--space-3);display:flex}.dayGroupTotal{font-family:var(--font-display);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--positive-text);font-feature-settings:var(--num-tabular)}.dayGroupChevron{color:var(--text-subtle);font-size:9px}.dayGroupBody{border-top:1px solid var(--border)}.takingRow{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--space-3);transition:background var(--dur-fast) var(--ease-out);display:flex}.takingRow:last-child{border-bottom:none}.takingRow:hover{background:var(--surface-2)}.takingRowLeft{flex:1;min-width:0}.takingRowMethod{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong);margin-bottom:2px}.takingRowMeta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.takingRowRight{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.takingRowAmount{font-family:var(--font-display);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-strong);font-feature-settings:var(--num-tabular)}.takingDeleteBtn{min-height:26px!important;padding:0 var(--space-2)!important;font-size:var(--fs-xs)!important;box-shadow:none!important}.takingConfirmDelete{align-items:center;gap:var(--space-1);font-size:var(--fs-xs);color:var(--text-muted);display:flex}.quickAddFormBody{gap:var(--space-4);flex-direction:column;display:flex}.workBookTabs{border-bottom:1px solid var(--border);margin-bottom:var(--space-1);display:flex}.workBookTab{height:42px;padding:0 var(--space-5);color:var(--text-muted);font-size:14px;font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px}.workBookTab:hover:not(:disabled){color:var(--text-strong);background:0 0}.workBookTab:after{display:none}.workBookTabActive{color:var(--accent-text)!important;border-bottom-color:var(--accent)!important;font-weight:var(--fw-semibold)!important}.workBookTabBadge{border-radius:var(--radius-pill);background:var(--surface-2);min-width:18px;height:18px;color:var(--text-muted);font-size:11px;font-weight:var(--fw-semibold);justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.workBookTabActive .workBookTabBadge{background:var(--accent-bg-2);color:var(--accent-text)}.expenseList{gap:var(--space-1);flex-direction:column;display:flex}.expenseAmount{color:var(--text)!important}.expenseHmrcHint{font-size:var(--fs-xs);color:var(--text-muted);background:var(--surface-2);border-radius:var(--radius-xs);padding:var(--space-2) var(--space-3)}.expenseHmrcHint em{color:var(--text);font-style:normal;font-weight:var(--fw-semibold)}.hmrcSummary{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);overflow:hidden}.hmrcSummaryTitle{padding:var(--space-3) var(--space-4);font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border)}.hmrcSummaryRows{flex-direction:column;display:flex}.hmrcSummaryRow{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.hmrcSummaryRow:last-child{border-bottom:none}.hmrcSummaryBucket{font-size:var(--fs-sm);color:var(--text);flex:1}.hmrcSummaryAmount{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong);white-space:nowrap;font-feature-settings:var(--num-tabular)}.hmrcSummaryTotal{background:var(--surface-2)}.hmrcSummaryTotal .hmrcSummaryBucket{font-weight:var(--fw-semibold);color:var(--text-strong)}.hmrcSummaryTotal .hmrcSummaryAmount{font-size:var(--fs-base);color:var(--negative-text)}.expenseEditRow{border-top:1px solid var(--border)}.expenseSourceBadge{font-size:11px;font-weight:var(--fw-regular);color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill);padding:1px var(--space-2);margin-left:var(--space-2);vertical-align:middle}.expenseCard{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);transition:var(--transition-colors);overflow:hidden}.expenseCardExpanded{border-color:var(--accent)}.expenseCardRow{cursor:pointer;border-radius:0!important}.expenseChevron{color:var(--text-subtle);flex-shrink:0;font-size:9px}.expenseExpandedDetail{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);gap:var(--space-3);background:var(--surface-2);flex-direction:column;display:flex}.expenseReceiptLink{align-items:center;gap:var(--space-3);color:var(--accent-text);font-size:var(--fs-sm);font-weight:var(--fw-medium);text-decoration:none;display:flex}.expenseReceiptThumb{object-fit:cover;border-radius:var(--radius-xs);border:1px solid var(--border);width:56px;height:56px}.expenseExpandedMeta{gap:var(--space-1);font-size:var(--fs-sm);color:var(--text);flex-direction:column;display:flex}.expenseExpandedMeta strong{color:var(--text-strong)}.expenseExpandedActions{gap:var(--space-2);display:flex}.scannedReceiptPreview{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--accent-bg);border:1px solid var(--sage-200);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--accent-text);display:flex}.scannedReceiptPreview img{object-fit:cover;border-radius:var(--radius-xs);width:36px;height:36px}.filtersBar{gap:var(--space-3);flex-direction:column;display:flex}.filtersBarTop{gap:var(--space-2);align-items:center;display:flex}.filtersSearch{flex:1}.filtersToggle{white-space:nowrap;flex-shrink:0;min-height:var(--control-md)!important;padding:0 var(--space-3)!important;font-size:var(--fs-xs)!important}.filtersToggleActive{color:var(--accent-text)!important}.filtersClear{min-height:var(--control-md)!important;padding:0 var(--space-2)!important;font-size:var(--fs-xs)!important;color:var(--text-subtle)!important}.filtersExpanded{gap:var(--space-3);padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex}.customDateRange{align-items:center;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;display:flex}@media (width<=600px){.todaySummary{grid-template-columns:1fr}.todaySummaryBreakdown{gap:var(--space-2)}.todaySummaryMethod{min-width:0;padding:var(--space-2) var(--space-3);flex:1}}.taxOverview{gap:var(--space-3);flex-direction:column;display:flex}.taxOverviewPeriod{padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.taxOverviewPeriodLabel{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-muted)}.taxOverviewPeriodValue{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.taxSection{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);overflow:hidden}.taxSectionTitle{padding:var(--space-2) var(--space-4);font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-muted);background:var(--surface-2);border-bottom:1px solid var(--border)}.taxRow{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--fs-sm);color:var(--text);display:flex}.taxRow:last-child{border-bottom:none}.taxRowSmall{font-size:var(--fs-xs);padding:var(--space-2) var(--space-4);color:var(--text-muted)}.taxRowSubtotal{font-weight:var(--fw-semibold);color:var(--text-strong);background:var(--surface-2)}.taxRowEmpty{padding:var(--space-3) var(--space-4);font-size:var(--fs-xs);color:var(--text-subtle);font-style:italic}.taxRowAmount{font-family:var(--font-display);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-strong);white-space:nowrap;font-feature-settings:var(--num-tabular)}.taxRowAmount.income{color:var(--positive-text)}.taxProfitRow{padding:var(--space-4) var(--space-5);background:var(--stone-900);border-radius:var(--radius-md);color:var(--white);justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--fs-base);font-weight:var(--fw-medium);display:flex}.taxProfitAmount{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--white);letter-spacing:var(--ls-tight);font-feature-settings:var(--num-tabular)}.taxLoss{color:var(--red-100)}.taxEstimateSection{border-color:var(--amber-100)}.taxEstimateSection .taxSectionTitle{background:var(--warning-bg);border-bottom-color:var(--amber-100);color:var(--warning-text)}.taxSetAside{color:var(--warning-text)!important;font-size:var(--fs-md)!important}.taxDisclaimer{font-size:var(--fs-xs);color:var(--text-subtle);line-height:var(--lh-relaxed);padding:var(--space-3) var(--space-4);background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid var(--border)}.taxPeriodSelector{gap:var(--space-2);flex-wrap:wrap;display:flex}.taxPeriodBtn{min-height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-medium);border:1px solid var(--border);box-shadow:none;transition:var(--transition-colors);position:relative}.taxPeriodBtn:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.taxPeriodBtn:after{display:none}.taxPeriodBtnActive{background:var(--accent-bg-2)!important;border-color:var(--sage-300)!important;color:var(--accent-text)!important;font-weight:var(--fw-semibold)!important}.taxPeriodBtnCurrent{border-color:var(--sage-300)!important}.taxPeriodCurrentDot{border-radius:var(--radius-circle);background:var(--accent);width:5px;height:5px;position:absolute;top:4px;right:4px}.taxPeriodInfo{padding:var(--space-3) var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.taxPeriodInfoLabel{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text)}.taxMtdDeadline{font-size:var(--fs-xs);color:var(--text-muted)}.taxMtdDeadline strong{color:var(--text-strong);font-weight:var(--fw-semibold)}.dashGreeting{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.dashGreetingText{font-family:var(--font-display);font-size:clamp(22px,3vw,28px);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong)}.dashDate{font-size:var(--fs-xs);color:var(--text-muted);font-weight:var(--fw-medium)}.dashSetupNudge{border:1px solid var(--amber-100);border-radius:var(--radius-md);background:var(--warning-bg);padding:var(--space-4) var(--space-5);gap:var(--space-3);flex-direction:column;display:flex}.dashSetupNudgeTitle{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--warning-text);font-family:var(--font-display);letter-spacing:var(--ls-tight)}.dashSetupNudgeSteps{gap:var(--space-2);flex-direction:column;display:flex}.dashSetupStep{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-strong);transition:var(--transition-colors);text-decoration:none;display:flex}.dashSetupStep:hover{border-color:var(--border-strong);background:var(--surface-2)}.dashSetupStepDone{opacity:.5}.dashSetupStepDone .dashSetupStepCheck{color:var(--positive-text)}.dashSetupStepCheck{border-radius:var(--radius-circle);background:var(--surface-2);border:1px solid var(--border-strong);width:22px;height:22px;font-size:11px;font-weight:var(--fw-semibold);color:var(--text-subtle);flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashSetupStepArrow{color:var(--text-subtle);margin-left:auto;font-size:13px}.dashGrid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}@media (width<=660px){.dashGrid{grid-template-columns:1fr}}.dashWidget{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-xs);flex-direction:column;display:flex;overflow:hidden}.dashWidgetHeader{padding:var(--space-3) var(--space-4) var(--space-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.dashWidgetTitle{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-muted)}.dashWidgetLink{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--accent-text);text-decoration:none}.dashWidgetLink:hover{text-decoration:underline}.dashWidgetEmpty{align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);font-size:var(--fs-xs);color:var(--text-subtle);text-align:center;flex-direction:column;display:flex}.dashEmptyBtn{min-height:var(--control-sm)!important;padding:0 var(--space-3)!important;font-size:var(--fs-xs)!important}.dashApptStats{gap:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--fs-xs);font-weight:var(--fw-semibold);border-bottom:1px solid var(--border);display:flex}.dashStatDone{color:var(--positive-text)}.dashStatRemaining{color:var(--warning-text)}.dashApptList{flex-direction:column;display:flex}.dashApptRow{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);transition:background var(--dur-fast) var(--ease-out);display:flex}.dashApptRow:last-child{border-bottom:none}.dashApptRow:hover{background:var(--surface-2)}.dashApptTime{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--accent-text);font-feature-settings:var(--num-tabular);flex-shrink:0;width:40px}.dashApptInfo{flex:1;min-width:0}.dashApptName{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dashApptService{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dashApptPrice{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-muted);white-space:nowrap;font-feature-settings:var(--num-tabular);flex-shrink:0}.dashApptMore{padding:var(--space-2) var(--space-4);font-size:var(--fs-xs);color:var(--text-subtle);font-style:italic}.dashTakingsSummary{padding:var(--space-5) var(--space-4);justify-content:center;align-items:center;gap:var(--space-2);flex-direction:column;flex:1;display:flex}.dashTakingsTotal{font-family:var(--font-display);font-size:clamp(32px,5vw,44px);font-weight:var(--fw-bold);color:var(--text-strong);letter-spacing:var(--ls-tight);font-feature-settings:var(--num-tabular);line-height:1}.dashTakingsBreakdown{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.dashTakingsMethod{font-size:var(--fs-xs);color:var(--text-muted);font-weight:var(--fw-medium)}.dashTakingsCount{font-size:var(--fs-xs);color:var(--text-subtle)}.dashQuickActions{background:var(--border);grid-template-columns:1fr 1fr;gap:1px;display:grid}.dashQuickBtn{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-strong);transition:background var(--dur-fast) var(--ease-out);text-decoration:none;display:flex}.dashQuickBtn:hover{background:var(--surface-2)}.dashQuickBtnIcon{font-size:18px}.onboardingShell{min-height:100vh;padding:var(--space-5);background:var(--bg);justify-content:center;align-items:center;display:flex}.onboardingCard{background:var(--surface);border-radius:var(--radius-lg);width:min(100%,480px);box-shadow:var(--shadow-md);border:1px solid var(--border);padding:var(--space-8);gap:var(--space-5);flex-direction:column;display:flex}.onboardingLogo{align-items:center;gap:var(--space-2);justify-content:center;display:flex}.onboardingProgress{gap:var(--space-2);display:flex}.onboardingProgressStep{border-radius:var(--radius-pill);background:var(--border);height:3px;transition:background var(--dur) var(--ease-out);flex:1}.onboardingProgressDone{background:var(--accent)}.onboardingProgressCurrent{background:var(--sage-200)}.onboardingStepLabel{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-subtle);text-align:center}.onboardingStep{gap:var(--space-4);flex-direction:column;display:flex}.onboardingStepIcon{text-align:center;font-size:36px}.onboardingStepTitle{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-strong);text-align:center}.onboardingStepDesc{font-size:var(--fs-sm);color:var(--text-muted);text-align:center;line-height:var(--lh-normal)}.onboardingForm{gap:var(--space-3);flex-direction:column;display:flex}.onboardingNextBtn{width:100%;min-height:var(--control-lg)!important;font-size:var(--fs-base)!important;font-weight:var(--fw-semibold)!important;border-radius:var(--radius-sm)!important}.onboardingActions{gap:var(--space-3);align-items:center;display:flex}.onboardingSkipBtn{flex-shrink:0;min-height:var(--control-md)!important;font-size:var(--fs-xs)!important;color:var(--text-muted)!important}.specialtyGrid{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.specialtyCard{align-items:flex-start;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);text-align:left;transition:var(--transition-colors);box-shadow:none;min-height:unset;cursor:pointer;flex-direction:column;display:flex;position:relative}.specialtyCard:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}.specialtyCard:after{display:none}.specialtyCardSelected{border-color:var(--accent)!important;background:var(--accent-bg)!important}.specialtyCardIcon{font-size:22px}.specialtyCardLabel{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.specialtyCardDesc{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted);line-height:var(--lh-snug)}.specialtyCardCheck{top:var(--space-2);right:var(--space-2);border-radius:var(--radius-circle);background:var(--accent);width:18px;height:18px;color:var(--on-accent);font-size:10px;font-weight:var(--fw-semibold);justify-content:center;align-items:center;display:flex;position:absolute}.locationTypeGrid{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.locationTypeBtn{align-items:center;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text);box-shadow:none;transition:var(--transition-colors);min-height:unset;cursor:pointer;display:flex}.locationTypeBtn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}.locationTypeBtn:after{display:none}.locationTypeBtnActive{border-color:var(--accent)!important;background:var(--accent-bg)!important;color:var(--accent-text)!important}.onboardingServicesLoad{gap:var(--space-4);flex-direction:column;align-items:center;display:flex}.onboardingServicesPreview{gap:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.onboardingServicesSpecialty{font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--accent-bg-2);color:var(--accent-text);border:1px solid var(--sage-200)}.onboardingServicesLoaded{gap:var(--space-3);flex-direction:column;display:flex}.onboardingServicesCount{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--positive-text)}.onboardingServicesList{border:1px solid var(--border);border-radius:var(--radius-md);max-height:260px;overflow-y:auto}.onboardingServiceGroupTitle{padding:var(--space-1) var(--space-3);font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-subtle);background:var(--surface-2);border-bottom:1px solid var(--border)}.onboardingServiceRow{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);display:flex}.onboardingServiceRow:last-child{border-bottom:none}.onboardingServiceRow:hover{background:var(--surface-2)}.onboardingServiceRowHidden{opacity:.4}.onboardingServiceName{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-strong);flex:1}.onboardingServiceVariants{font-size:var(--fs-xs);color:var(--text-subtle)}.onboardingServiceToggle{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--positive-text);text-align:right;min-width:48px}.onboardingServiceRowHidden .onboardingServiceToggle{color:var(--text-subtle)}@media (width<=480px){.specialtyGrid{grid-template-columns:1fr 1fr}.onboardingCard{padding:var(--space-5)}}.receiptScannerHeader{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.receiptScanBtn{flex-shrink:0;min-height:var(--control-sm)!important;padding:0 var(--space-3)!important;font-size:var(--fs-xs)!important}.receiptScanner{gap:var(--space-3);flex-direction:column;display:flex}.receiptDropZone{border:1px dashed var(--border-strong);border-radius:var(--radius-md);padding:var(--space-6) var(--space-5);align-items:center;gap:var(--space-2);cursor:pointer;transition:var(--transition-colors);text-align:center;flex-direction:column;display:flex}.receiptDropZone:hover{border-color:var(--accent);background:var(--accent-bg)}.receiptDropIcon{font-size:32px}.receiptDropTitle{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-strong)}.receiptDropDesc{font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:var(--space-1)}.receiptDropActions{gap:var(--space-2);margin-top:var(--space-1);display:flex}.receiptPreviewArea{gap:var(--space-3);flex-direction:column;display:flex}.receiptPreviewImg{object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);width:100%;max-height:200px}.receiptScanning{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-2);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--text-muted);display:flex}.receiptResult{border:1px solid var(--sage-200);border-radius:var(--radius-md);background:var(--accent-bg);overflow:hidden}.receiptResultHeader{padding:var(--space-2) var(--space-3);background:var(--accent-bg-2);border-bottom:1px solid var(--sage-200);justify-content:space-between;align-items:center;display:flex}.receiptResultTitle,.receiptResultConfidence{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--accent-text)}.receiptResultFields{padding:var(--space-1) 0;flex-direction:column;display:flex}.receiptResultField{align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--sage-100);display:flex}.receiptResultField:last-child{border-bottom:none}.receiptResultLabel{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--accent-text);flex-shrink:0;width:40px}.receiptResultValue{font-size:var(--fs-sm);color:var(--text-strong);font-weight:var(--fw-medium);flex:1}.receiptResultAmount{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-strong);font-feature-settings:var(--num-tabular)}.receiptResultHmrc{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.receiptResultActions{gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--sage-100);display:flex}.receiptCancelBtn{align-self:center;font-size:var(--fs-xs)!important;color:var(--text-subtle)!important}.receiptDuplicate{margin:0 var(--space-3) var(--space-3);padding:var(--space-3);background:var(--warning-bg);border:1px solid var(--amber-100);border-radius:var(--radius-sm);gap:var(--space-1);flex-direction:column;display:flex}.receiptDuplicateTitle{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--warning-text)}.receiptDuplicateDesc{font-size:var(--fs-xs);color:var(--warning-text);line-height:var(--lh-normal)}.receiptDuplicateConfirm{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--warning-text);margin-top:var(--space-1)}.clientDetailTabs{border-bottom:1px solid var(--border);margin-bottom:var(--space-1);display:flex}.clientDetailTab{height:42px;padding:0 var(--space-4);color:var(--text-muted);font-size:14px;font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px}.clientDetailTab:hover:not(:disabled){color:var(--text-strong);background:0 0}.clientDetailTab:after{display:none}.clientDetailTabActive{color:var(--accent-text)!important;border-bottom-color:var(--accent)!important;font-weight:var(--fw-semibold)!important}.photoUploader{gap:var(--space-3);flex-direction:column;display:flex}.photoSection{gap:var(--space-2);flex-direction:column;display:flex}.photoSectionHeader{align-items:center;gap:var(--space-3);display:flex}.photoSectionLabel{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);padding:3px var(--space-3);border-radius:var(--radius-pill)}.photoSectionBefore{background:var(--warning-bg);color:var(--warning-text)}.photoSectionAfter{background:var(--accent-bg-2);color:var(--accent-text)}.photoAddBtn{min-height:26px!important;padding:0 var(--space-3)!important;font-size:var(--fs-xs)!important}.photoGrid{gap:var(--space-2);flex-wrap:wrap;display:flex}.photoThumb{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;flex-shrink:0;width:76px;height:76px;position:relative;overflow:hidden}.photoThumb img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur) var(--ease-out)}.photoThumb:hover img{transform:scale(1.04)}.photoThumbLoading{background:var(--surface-2);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.photoThumbBadge{font-size:9px;font-weight:var(--fw-semibold);text-transform:uppercase;border-radius:3px;padding:1px 5px;position:absolute;bottom:3px;left:3px}.photoThumbBadge-before{background:var(--warning-bg);color:var(--warning-text)}.photoThumbBadge-after{background:var(--accent);color:var(--on-accent)}.photoThumbDelete{border-radius:var(--radius-circle);width:18px;height:18px;color:var(--white);min-height:unset;box-shadow:none;cursor:pointer;background:#00000080;border:none;justify-content:center;align-items:center;padding:0;font-size:10px;display:none;position:absolute;top:2px;right:2px}.photoThumb:hover .photoThumbDelete{display:flex}.photoThumbDelete:after{display:none}.photoEmpty{border-radius:var(--radius-sm);border:1px dashed var(--border-strong);justify-content:center;align-items:center;gap:var(--space-1);cursor:pointer;width:76px;height:76px;font-size:var(--fs-xs);color:var(--text-subtle);transition:var(--transition-colors);flex-direction:column;display:flex}.photoEmpty:hover{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-text)}.photoEmpty span:first-child{font-size:18px}.visitPhotosSection{padding:var(--space-3) 0 0;border-top:1px solid var(--border);margin-top:var(--space-3)}.visitPhotosSectionTitle{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:var(--ls-wide)}.lightbox{z-index:2000;background:#000000eb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightboxContent{gap:var(--space-3);flex-direction:column;width:min(90vw,580px);max-height:90vh;display:flex}.lightboxHeader{color:var(--white);justify-content:space-between;align-items:center;display:flex}.lightboxLabel{align-items:center;gap:var(--space-2);font-size:var(--fs-xs);color:#ffffffb3;display:flex}.lightboxClose{border-radius:var(--radius-circle);width:32px;height:32px;color:var(--white);min-height:unset;box-shadow:none;cursor:pointer;background:#ffffff1f;border:none;padding:0;font-size:14px}.lightboxClose:after{display:none}.lightboxClose:hover:not(:disabled){background:#ffffff38}.lightboxImg{flex:1;justify-content:center;align-items:center;min-height:200px;display:flex}.lightboxImg img{object-fit:contain;border-radius:var(--radius-sm);max-width:100%;max-height:70vh}.lightboxNav{justify-content:center;align-items:center;gap:var(--space-5);color:#fff9;font-size:var(--fs-xs);display:flex}.lightboxNav button{border-radius:var(--radius-circle);width:38px;height:38px;color:var(--white);min-height:unset;box-shadow:none;cursor:pointer;background:#ffffff1f;border:none;padding:0;font-size:18px}.lightboxNav button:disabled{opacity:.3}.lightboxNav button:after{display:none}.lightboxNav button:hover:not(:disabled){background:#ffffff38}.clientGallerySection{gap:var(--space-3);flex-direction:column;display:flex}.clientGalleryEmptyTile{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-5);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-subtle);font-size:var(--fs-sm);font-weight:var(--fw-medium);width:100%;transition:var(--transition-colors);flex-direction:column;display:flex}.clientGalleryEmptyTile:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg);color:var(--accent-text)}.visitPickerList{gap:var(--space-1);flex-direction:column;display:flex}.visitPickerRow{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);width:100%;display:flex}.visitPickerRow:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}.visitPickerRow:after{display:none}.visitPickerDate{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong);flex-shrink:0}.visitPickerService{font-size:var(--fs-sm);color:var(--text-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clientGallery{gap:var(--space-4);flex-direction:column;display:flex}.galleryTabs{gap:var(--space-1);border-bottom:1px solid var(--border);display:flex}.galleryTab{height:42px;padding:0 var(--space-4);color:var(--text-muted);font-size:14px;font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px}.galleryTab:hover:not(:disabled){color:var(--text-strong);background:0 0}.galleryTab:after{display:none}.galleryTabActive{color:var(--accent-text)!important;border-bottom-color:var(--accent)!important;font-weight:var(--fw-semibold)!important}.galleryByVisits{gap:var(--space-4);flex-direction:column;display:flex}.galleryVisitGroup{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.galleryVisitHeader{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface-2);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.galleryVisitDate{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-strong)}.galleryVisitService{font-size:var(--fs-xs);color:var(--text-muted);flex:1}.galleryVisitCount{font-size:var(--fs-xs);color:var(--text-subtle)}.galleryVisitPhotos{padding:var(--space-3);gap:var(--space-3);flex-direction:column;display:flex}.galleryPhotoGroup{gap:var(--space-2);flex-direction:column;display:flex}.galleryPhotoGroupLabel{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);padding:2px var(--space-2);border-radius:3px;width:fit-content}.galleryPhotoGroupLabel.before{background:var(--warning-bg);color:var(--warning-text)}.galleryPhotoGroupLabel.after{background:var(--accent-bg-2);color:var(--accent-text)}.galleryGrid{gap:var(--space-2);flex-wrap:wrap;display:flex}.galleryGridLarge .galleryThumb{width:96px;height:96px}.galleryThumb{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;width:76px;height:76px;transition:box-shadow var(--dur-fast) var(--ease-out);flex-shrink:0;position:relative;overflow:hidden}.galleryThumb:hover{box-shadow:var(--shadow-sm)}.galleryThumb img{object-fit:cover;width:100%;height:100%}.galleryThumbLoading{background:var(--surface-2);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.galleryThumbBadge{font-size:9px;font-weight:var(--fw-semibold);border-radius:3px;padding:1px 5px;position:absolute;bottom:3px;left:3px}.galleryThumbBadge-before{background:var(--warning-bg);color:var(--warning-text)}.galleryThumbBadge-after{background:var(--accent);color:var(--on-accent)}.bookingSubNav{border-bottom:1px solid var(--border);margin-bottom:var(--space-5);gap:2px;display:flex}.bookingSubNavBtn{height:42px;padding:0 var(--space-4);color:var(--text-muted);font-size:14px;font-weight:var(--fw-medium);box-shadow:none;transition:var(--transition-colors);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px}.bookingSubNavBtn:hover:not(:disabled){color:var(--text-strong);background:0 0}.bookingSubNavBtn:after{display:none}.bookingSubNavBtnActive{color:var(--accent-text)!important;border-bottom-color:var(--accent)!important;font-weight:var(--fw-semibold)!important}.bookingPageSettings{gap:var(--space-4);flex-direction:column;display:flex}.slugInputWrap{border:1px solid var(--border-strong);border-radius:var(--radius-sm);margin-top:var(--space-2);background:var(--surface);transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out);align-items:center;display:flex;overflow:hidden}.slugInputWrap:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.slugPrefix{padding:0 var(--space-3);font-size:var(--fs-xs);color:var(--text-subtle);background:var(--surface-2);border-right:1px solid var(--border);white-space:nowrap;align-items:center;height:40px;display:flex}.slugInput{font-size:var(--fs-sm);background:0 0;outline:none;flex:1;height:40px;padding:0 var(--space-3)!important;border:none!important}.bookingToggleRow{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);display:flex}.bookingToggleLabel{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.bookingToggleHint{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.bookingActiveStatus{color:var(--positive-text);font-weight:var(--fw-medium)}.bookingActiveStatus a{color:var(--accent-text)}.toggleSwitch{flex-shrink:0;width:44px;height:24px;display:inline-block;position:relative}.toggleSwitch input{opacity:0;width:0;height:0;position:absolute}.toggleSwitchSlider{background:var(--stone-300);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--dur) var(--ease-out);position:absolute;inset:0}.toggleSwitchSlider:before{content:"";background:var(--white);border-radius:var(--radius-circle);width:18px;height:18px;transition:transform var(--dur) var(--ease-out);position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #221f1a40}.toggleSwitch input:checked+.toggleSwitchSlider{background:var(--accent)}.toggleSwitch input:checked+.toggleSwitchSlider:before{transform:translate(20px)}.toggleSwitch input:focus-visible+.toggleSwitchSlider{box-shadow:var(--ring)}.bookingOptions{gap:var(--space-2);flex-direction:column;display:flex}.bookingPageReadCard{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;display:flex}.bookingPageReadRow{flex-direction:column;gap:2px;display:flex}.bookingPageReadLabel{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-subtle)}.bookingPageReadValue{font-size:var(--fs-sm);color:var(--text-strong);word-break:break-word}.bookingPageReadBadges{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.bookingPageReadBadge{padding:3px var(--space-3);border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted);align-items:center;gap:4px;display:inline-flex}.generateLinkForm{gap:var(--space-3);padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-4);flex-direction:column;display:flex}.bookingLinkList{gap:var(--space-3);flex-direction:column;display:flex}.bookingLinkRow{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);display:flex}.bookingLinkRowInactive{opacity:.5}.bookingLinkInfo{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.bookingLinkLabel{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong);align-items:center;gap:var(--space-2);display:flex}.bookingLinkExpired{font-size:11px;font-weight:var(--fw-semibold);color:var(--negative-text);background:var(--negative-bg);padding:2px var(--space-2);border-radius:var(--radius-pill)}.bookingLinkUrl{font-size:var(--fs-xs);color:var(--accent-text);font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bookingLinkMeta{gap:var(--space-2);flex-wrap:wrap;display:flex}.bookingLinkMeta span{color:var(--text-subtle);background:var(--surface-2);padding:2px var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--border);font-size:11px}.bookingLinkActions{gap:var(--space-2);flex-shrink:0;display:flex}.bookingsFilterBar{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.bookingCardList{gap:var(--space-3);flex-direction:column;display:flex}.bookingCard{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--surface);gap:var(--space-2);flex-direction:column;display:flex}.bookingCard-pending{border-color:var(--amber-100);background:var(--warning-bg)}.bookingCard-confirmed{border-color:var(--sage-200);background:var(--accent-bg)}.bookingCardHeader{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.bookingCardDate{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.bookingCardStatus{font-size:11px;font-weight:var(--fw-semibold);padding:3px var(--space-3);border-radius:var(--radius-pill);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.bookingCardStatus-pending{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--amber-100)}.bookingCardStatus-confirmed{background:var(--positive-bg);color:var(--positive-text);border:1px solid var(--sage-200)}.bookingCardService{font-size:var(--fs-sm);color:var(--text)}.bookingCardClient{font-size:var(--fs-xs);color:var(--text-muted)}.bookingCardActions{gap:var(--space-2);margin-top:var(--space-1);display:flex}.bookingCardClickable{cursor:pointer;transition:var(--transition-colors), box-shadow var(--dur-fast) var(--ease-out)}.bookingCardClickable:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.bookingCardViewLink{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--accent-text);margin-top:var(--space-1);align-items:center;gap:4px;display:inline-flex}.bookingNotConfigured{padding:var(--space-3) var(--space-4);background:var(--warning-bg);border:1px solid var(--amber-100);border-radius:var(--radius-md);font-size:var(--fs-sm);color:var(--warning-text);font-weight:var(--fw-medium)}.publicBookingShell{background:var(--bg);min-height:100vh;padding:var(--space-6) var(--space-4) var(--space-12);justify-content:center;align-items:flex-start;display:flex}.publicBookingCard{background:var(--surface);border-radius:var(--radius-lg);width:min(100%,540px);box-shadow:var(--shadow-lg);border:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.publicBookingHeader{align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6) var(--space-4);background:var(--accent-bg);border-bottom:1px solid var(--sage-200);display:flex}.publicBookingLogo{font-size:28px}.publicBookingTitle{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--text-strong);letter-spacing:var(--ls-tight);margin:0}.publicBookingBio{font-size:var(--fs-xs);color:var(--text-muted);margin:var(--space-1) 0 0}.publicBookingSteps{padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--border);background:var(--surface);gap:0;display:flex;overflow-x:auto}.publicBookingStep{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.publicBookingStep:after{content:"›";color:var(--text-subtle);margin:0 var(--space-1);font-size:14px}.publicBookingStep:last-child:after{display:none}.publicBookingStepNum{border-radius:var(--radius-circle);background:var(--border);width:20px;height:20px;color:var(--text-subtle);font-size:10px;font-weight:var(--fw-semibold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.publicBookingStepActive .publicBookingStepNum{background:var(--accent);color:var(--on-accent)}.publicBookingStepDone .publicBookingStepNum{background:var(--positive-bg);color:var(--positive-text)}.publicBookingStepLabel{font-size:11px;font-weight:var(--fw-medium);color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.publicBookingStepActive .publicBookingStepLabel{color:var(--accent-text);font-weight:var(--fw-semibold)}.publicBookingStepDone .publicBookingStepLabel{color:var(--positive-text)}.publicBookingSection{padding:var(--space-5) var(--space-6);gap:var(--space-4);flex-direction:column;display:flex}.publicBookingSectionTitle{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-strong);letter-spacing:var(--ls-tight);margin:0}.publicServiceList,.publicServiceGroup{gap:var(--space-2);flex-direction:column;display:flex}.publicServiceGroupName{font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-wider);color:var(--text-subtle);padding:var(--space-1) 0 0}.publicServiceCard{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);text-align:left;transition:var(--transition-colors);min-height:unset;box-shadow:none;cursor:pointer;justify-content:space-between;align-items:center;display:flex;position:relative}.publicServiceCard:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}.publicServiceCard:after{display:none}.publicServiceCardSelected{border-color:var(--accent)!important;background:var(--accent-bg)!important}.publicServiceName{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.publicServiceMeta{gap:var(--space-3);font-size:var(--fs-xs);color:var(--text-muted);display:flex}.publicServiceCheck{right:var(--space-4);border-radius:var(--radius-circle);background:var(--accent);width:20px;height:20px;color:var(--on-accent);font-size:11px;font-weight:var(--fw-semibold);justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.publicBookingNextBtn{width:100%;min-height:var(--control-lg)!important;font-size:var(--fs-base)!important;font-weight:var(--fw-semibold)!important;border-radius:var(--radius-sm)!important}.publicBookingNextBtn:disabled{opacity:.4}.datePicker{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.datePickerHeader{padding:var(--space-3) var(--space-4);background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.datePickerMonth{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.datePickerNav{min-height:30px!important;padding:0 var(--space-2)!important;box-shadow:none!important;color:var(--text-muted)!important;background:0 0!important;border:none!important;font-size:16px!important}.datePickerNav:hover:not(:disabled){color:var(--text)!important;background:var(--surface-3)!important}.datePickerNav:after{display:none}.datePickerDays{padding:var(--space-2);grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.datePickerDayLabel{font-size:11px;font-weight:var(--fw-semibold);color:var(--text-subtle);text-align:center;padding:var(--space-1) 0;text-transform:uppercase;letter-spacing:var(--ls-wide)}.datePickerDay{aspect-ratio:1;border-radius:var(--radius-xs);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted);box-shadow:none;min-height:unset;transition:var(--transition-colors);cursor:pointer;background:0 0;border:none}.datePickerDay:after{display:none}.datePickerDayAvailable{color:var(--text-strong);background:var(--accent-bg);font-weight:var(--fw-semibold)}.datePickerDayAvailable:hover:not(:disabled){background:var(--accent-bg-2)}.datePickerDaySelected{background:var(--accent)!important;color:var(--on-accent)!important}.datePickerDayDisabled{opacity:.3;cursor:not-allowed}.publicTimeSlots{gap:var(--space-3);flex-direction:column;display:flex}.publicTimeSlotsTitle{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}.publicNoSlots{font-size:var(--fs-xs);color:var(--text-subtle);text-align:center;padding:var(--space-4)}.publicSlotGrid{gap:var(--space-2);flex-wrap:wrap;display:flex}.publicSlot{min-height:var(--control-md);padding:var(--space-2) var(--space-4);font-size:var(--fs-sm);font-weight:var(--fw-medium);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-strong);transition:var(--transition-colors);box-shadow:none;cursor:pointer;flex-direction:column;align-items:center;gap:2px;display:flex}.publicSlot:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}.publicSlot:after{display:none}.publicSlotSelected{border-color:var(--accent)!important;background:var(--accent)!important;color:var(--on-accent)!important}.publicSlotLocation{font-size:11px;font-weight:var(--fw-regular);opacity:.8}.publicBookingNav{gap:var(--space-3);align-items:center;display:flex}.publicBookingForm{gap:var(--space-3);flex-direction:column;display:flex}.publicBookingSummary{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.publicBookingSummaryRow{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-size:var(--fs-sm);display:flex}.publicBookingSummaryRow:last-child{border-bottom:none}.publicBookingSummaryRow span:first-child{color:var(--text-muted);font-weight:var(--fw-medium);white-space:nowrap}.publicBookingSummaryRow span:last-child{color:var(--text-strong);font-weight:var(--fw-semibold);text-align:right}.publicBookingNotice{padding:var(--space-3) var(--space-4);background:var(--info-bg);border:1px solid var(--slate-50);border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--info)}.publicBookingSuccess{padding:var(--space-8) var(--space-6);align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;display:flex}.publicBookingSuccessIcon{font-size:48px}.publicBookingSuccessTitle{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--text-strong);letter-spacing:var(--ls-tight);margin:0}.publicBookingSuccessMsg{font-size:var(--fs-base);color:var(--text);margin:0}.publicBookingSuccessNote{font-size:var(--fs-xs);color:var(--text-subtle);margin:0}.publicBookingFooter{padding:var(--space-3) var(--space-6);text-align:center;font-size:var(--fs-xs);color:var(--text-subtle);border-top:1px solid var(--border);background:var(--surface-2)}.appTabBar{display:none}@media (width<=860px){.appNav{display:none}.appHeaderInner{gap:var(--space-3)}.appProfileName,.appLogoName{display:none}.dashShell{padding-bottom:78px}.calShell{height:calc(100vh - 134px)}.appTabBar{z-index:100;background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom));display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 14px #221f1a12}.appTabBarBtn{cursor:pointer;color:var(--text-muted);font-family:var(--font-text);min-height:unset;box-shadow:none;transition:var(--transition-colors);background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;align-items:center;gap:3px;padding:6px 0;display:flex}.appTabBarBtn:after{display:none}.appTabBarBtn:hover:not(:disabled){color:var(--text);background:0 0}.appTabBarLabel{font-size:10.5px;font-weight:var(--fw-semibold);white-space:nowrap;line-height:1}.appTabBarBtnActive,.appTabBarBtnActive:hover:not(:disabled){color:var(--accent-text)}a.appTabBarBtn{color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:3px;padding:6px 0;text-decoration:none;display:flex}a.appTabBarBtnActive{color:var(--accent-text)}}@media (width<=980px){.appNavLink span:not(.appNavIcon){display:none}.appNavLink{padding:0 var(--space-2)}.appProfileName{display:none}}@media (width<=1000px){.authShell{grid-template-columns:1fr}.authHero{min-height:auto;padding-bottom:32px}}@media (width<=660px){.authCard{border-radius:var(--radius-lg);padding:26px 20px}.authPanel{padding:16px}.heroCopy h1{font-size:50px}.twoColumns{grid-template-columns:1fr}.dashHeader{flex-flow:wrap;gap:10px}.dashboardPage{padding:16px}.dashboardCard{border-radius:var(--radius-lg);padding:20px}.verifyNotice{flex-direction:column;gap:14px}.dashStatGrid,.dashMainGrid{grid-template-columns:1fr!important}}.compact{text-align:left;margin-bottom:0}.center{text-align:center}.mt-auto{margin-top:auto}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{inset-inline-start:0;height:var(--rdp-nav-height);display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{inset-inline-end:0;height:var(--rdp-nav-height);justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}
