:root,[data-theme=light]{--bg: #f7f3ec;--bg-deep: #efe8dc;--bg-elevated: #fffdf9;--ink: #241c17;--muted: #6f6256;--line: #e4dcd0;--carmine: var(--brand-accent-ink, #8a6a3b);--carmine-deep: var(--brand-accent-deep, #6e532c);--on-carmine: var(--brand-on-accent, #fffdf9);--lacquer: var(--brand-primary, #241c17);--lacquer-deep: var(--brand-primary-deep, #3a2e26);--on-lacquer: var(--brand-on-primary, #fffdf9);--rail: var(--brand-primary, #241c17);--rail-ink: var(--brand-on-primary, #f7f3ec);--rail-muted: var(--brand-rail-muted, #c9b8a4);--rail-line: color-mix(in srgb, var(--rail-ink) 14%, transparent);--silk: var(--brand-silk, #c4a36a);--accent: var(--brand-accent-ink, #8a6a3b);--accent-soft: var(--brand-accent-soft, #f3ebdd);--danger: #9b2c2c;--ok: #2f6b45;--shadow: none;--shadow-sm: none;--radius: 2px;--sidebar-w: 248px;--sidebar-w-collapsed: 76px;--topbar-h: 56px;--sans: "Outfit", "Avenir Next", "Segoe UI", sans-serif;--mark: var(--brand-accent-ink, #8a6a3b);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--page-max: 72rem;--gutter: var(--space-6);--gutter-sm: var(--space-4);--measure: 46ch;--hit: 2.75rem;--step--1: .8125rem;--step-0: 1rem;--step-1: 1.25rem;--step-2: 1.625rem;--step-3: clamp(2rem, 3vw, 2.75rem);--leading-body: 1.5;--leading-title: 1.08;color-scheme:light}[data-theme=dark]{--bg: #221c17;--bg-deep: #1a1511;--bg-elevated: #2c251e;--ink: #f7f3ec;--muted: #c9b8a4;--line: #3f342c;--carmine: var(--brand-accent-ink, #d4b483);--carmine-deep: var(--brand-accent-deep, #e4c9a2);--on-carmine: var(--brand-on-accent, #241c17);--lacquer: var(--brand-primary, #f7f3ec);--lacquer-deep: var(--brand-primary-deep, #e4d7c6);--on-lacquer: var(--brand-on-primary, #241c17);--rail: var(--brand-primary, #1a1511);--rail-ink: var(--brand-on-primary, #f7f3ec);--rail-muted: var(--brand-rail-muted, #c9b8a4);--silk: var(--brand-silk, #d4b483);--accent: var(--brand-accent-ink, #d4b483);--accent-soft: var(--brand-accent-soft, rgba(212, 180, 131, .16));--danger: #f0b4ae;--ok: #9dceb4;--mark: var(--brand-accent-ink, #d4b483);color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--sans);font-weight:400;font-size:var(--step-0);color:var(--ink);background:var(--bg);line-height:var(--leading-body)}h1,h2,h3{font-family:var(--sans);font-weight:500;letter-spacing:0}.page-header h2,.login__brand,.login__card h1,.login__mark,.modal__head h3,.section-block h3{font-family:var(--sans);font-style:normal;letter-spacing:0}.num{font-family:var(--sans);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}:focus-visible{outline:2px solid var(--carmine);outline-offset:2px}.eyebrow{text-transform:none;letter-spacing:0;font-size:.8rem;font-family:var(--sans);font-weight:500;color:var(--muted);margin:0 0 .4rem}.lede,.muted{color:var(--muted);line-height:1.55}.boot{min-height:100vh;display:grid;place-items:center;font-family:var(--sans);font-size:1.5rem;color:var(--muted)}.avatar{display:inline-grid;place-items:center;border-radius:50%;overflow:hidden;flex-shrink:0;color:#f7f3ec;font-family:var(--sans);font-weight:500;background:#2a2422}.avatar img{width:100%;height:100%;object-fit:cover}.avatar--sm{width:32px;height:32px;font-size:.75rem}.avatar--md{width:40px;height:40px;font-size:.9rem}.avatar--lg{width:56px;height:56px;font-size:1.15rem}.avatar--xl{width:96px;height:96px;font-size:1.85rem}.login{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:var(--bg)}.login__visual{position:relative;min-height:100vh;overflow:hidden;background:var(--rail);color:var(--rail-ink);padding:2.75rem 3.25rem 2.75rem 4.25rem;display:flex;flex-direction:column;justify-content:space-between}.login__visual:before{content:"";position:absolute;left:2.15rem;top:2.5rem;bottom:2.5rem;width:1px;background:var(--silk)}.login__visual>*{position:relative;z-index:1}.login__mark{margin:0;font-family:var(--sans);font-size:1.45rem;font-weight:500;letter-spacing:0}.login__brand{font-family:var(--sans);font-style:normal;font-weight:500;font-size:clamp(2.4rem,5vw,3.6rem);margin:0 0 1rem;line-height:1.15;letter-spacing:0;max-width:16ch}.login__tag{max-width:28ch;margin:0;color:var(--rail-muted);font-size:1.05rem;line-height:1.5}.login__panel{display:grid;place-items:center;padding:2.5rem;background:var(--bg)}.login__card{width:min(380px,100%)}.login__card h1{margin:0 0 .35rem;font-size:2.6rem;font-style:normal;font-weight:500;line-height:1.2}.login__card form{display:grid;gap:.9rem;margin-top:1.6rem}.shell{--current-sidebar: var(--sidebar-w);min-height:100vh;display:grid;grid-template-columns:var(--current-sidebar) 1fr;background:var(--bg);transition:grid-template-columns .22s ease}.shell--collapsed{--current-sidebar: var(--sidebar-w-collapsed)}.shell__backdrop{display:none}.shell__nav{position:sticky;top:0;height:100vh;padding:1.15rem .85rem 1rem;display:flex;flex-direction:column;gap:1.25rem;background:var(--rail);color:var(--rail-ink);z-index:30}.shell__brand{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;padding:.2rem .45rem .85rem;min-height:52px;border-bottom:1px solid var(--rail-line)}.shell__brand-mark{width:2.25rem;height:2.25rem;display:grid;place-items:center;font-family:var(--sans);font-style:normal;font-size:1.7rem;line-height:1;color:var(--silk);background:none;border-radius:0;overflow:hidden}.shell__brand-mark img{width:100%;height:100%;object-fit:contain}.shell__brand-text{min-width:0;overflow:hidden}.shell__wordmark{margin:0 0 .1rem;font-family:var(--sans);font-size:.72rem;font-weight:500;color:var(--rail-muted)}.shell__brand-text h1{margin:0;font-size:1.15rem;font-style:normal;line-height:1.05;color:var(--rail-ink)}button.shell__edge{position:absolute;top:1.55rem;right:0;z-index:2;transform:translate(50%);width:1.75rem;height:1.75rem;min-width:1.75rem;min-height:1.75rem;padding:0;display:grid;place-items:center;border-radius:999px;border:1px solid var(--line);background:var(--bg-elevated);color:var(--ink);box-shadow:none}button.shell__edge:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--ink);color:var(--ink)}.shell__links{display:flex;flex-direction:column;gap:.1rem;flex:1;overflow:auto;padding:0}.shell__link{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:.75rem;color:var(--rail-muted);text-decoration:none;min-height:var(--hit);padding:var(--space-2) var(--space-3);border-radius:0;font-size:.94rem;border-left:2px solid transparent}.shell__link svg{justify-self:center}.shell__link:hover{color:var(--rail-ink);background:transparent}.shell__link.active{color:var(--rail-ink);background:transparent;font-weight:500;border-left-color:var(--silk)}.shell--collapsed .shell__link.active{color:var(--silk)}.shell__footer{display:grid;gap:.65rem;padding-top:.75rem;border-top:1px solid var(--rail-line)}.shell__toolbar{display:flex;gap:.4rem;justify-content:space-between;padding:0 .15rem}.shell--collapsed .shell__toolbar{justify-content:center}.shell__nav .icon-btn{color:var(--rail-ink);border-color:color-mix(in srgb,var(--rail-ink) 22%,transparent);background:transparent}.shell__nav .icon-btn:hover{background:color-mix(in srgb,var(--rail-ink) 8%,transparent);border-color:color-mix(in srgb,var(--rail-ink) 40%,transparent)}.shell__profile{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:center;padding:.55rem .45rem;border-radius:0;text-decoration:none;color:inherit;border:0;border-left:2px solid transparent}.shell__profile:hover,.shell__profile.active{background:transparent;border-left-color:var(--silk)}.shell__profile-text{min-width:0;display:grid}.shell__profile-text strong{font-size:.88rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shell__profile-text span{color:var(--rail-muted);font-size:.75rem}.shell--collapsed .shell__profile{border-left-color:transparent}.shell__content{min-width:0;display:flex;flex-direction:column;min-height:100vh}.topbar{position:sticky;top:0;z-index:20;height:var(--topbar-h);display:flex;align-items:center;gap:var(--space-3);padding:0 var(--gutter);border-bottom:1px solid var(--line);background:var(--bg)}button.topbar__menu{display:none}.topbar__spacer{flex:1}.topbar__user{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:inherit;padding:.2rem .15rem;border-radius:0;border:0}.topbar__user:hover{color:var(--mark);background:transparent}.topbar__user-name{font-size:.88rem;font-weight:500}.shell__main{padding:var(--space-6) var(--gutter) var(--space-7);min-width:0}.page{max-width:var(--page-max);min-width:0}.page--book{max-width:none}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4) var(--space-5);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--line);flex-wrap:wrap}.page-header h2{margin:0;font-size:var(--step-3);font-style:normal;font-weight:500;line-height:1.2}.page-header h2.book__title{font-family:var(--sans);font-style:normal;font-weight:500;letter-spacing:0;font-size:clamp(1.75rem,2.4vw,2.25rem);line-height:1.2}.page-header .lede{margin:var(--space-2) 0 0;max-width:var(--measure)}.page-header__actions{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.page-header__actions button{display:inline-flex;align-items:center;gap:.4rem}label{display:grid;gap:.35rem;font-size:.82rem;font-weight:500;color:var(--muted)}input,select,textarea{font:inherit;font-weight:400;color:var(--ink);background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .8rem;width:100%}textarea{min-height:88px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--carmine);outline-offset:1px;border-color:var(--carmine)}button,.btn{font:inherit;font-weight:500;cursor:pointer;border:1px solid transparent;border-radius:var(--radius);padding:.65rem var(--space-4);min-height:var(--hit);background:var(--lacquer);color:var(--on-lacquer);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}button:hover:not(:disabled),.btn:hover{background:var(--lacquer-deep)}button:disabled{opacity:.5;cursor:not-allowed}button.ghost,.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}button.ghost:hover:not(:disabled),.btn.ghost:hover{background:transparent;border-color:var(--ink)}button.active{background:var(--lacquer);color:var(--on-lacquer);border-color:transparent}button.danger{background:transparent;color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 45%,var(--line))}button.danger:hover:not(:disabled){background:transparent;border-color:var(--danger)}.icon-btn{width:var(--hit);height:var(--hit);padding:0;border-radius:var(--radius);background:transparent;color:var(--ink);border:1px solid var(--line);display:inline-grid;place-items:center}.icon-btn:hover{background:transparent;border-color:var(--ink)}.check{display:flex;align-items:center;gap:.5rem;color:var(--ink);font-weight:400}.check input{width:auto}.form-grid{display:grid;gap:.9rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.settings-tabs{display:flex;flex-wrap:wrap;gap:0;margin:0 0 var(--space-5);border-bottom:1px solid var(--line)}button.settings-tab{background:transparent;color:var(--muted);border:0;border-bottom:2px solid transparent;border-radius:0;min-height:var(--hit);padding:.35rem 1rem;margin-bottom:-1px}button.settings-tab:hover:not(:disabled),button.settings-tab:focus-visible{background:transparent;color:var(--ink);border-bottom-color:var(--line)}button.settings-tab.is-selected,button.settings-tab.is-selected:hover:not(:disabled){background:transparent;color:var(--ink);border-bottom-color:var(--ink)}.brand-editor{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:center}.panel[role=tabpanel]{margin-top:0}.brand-editor__mark{width:4.5rem;height:4.5rem;justify-self:start;display:grid;place-items:center;border:1px solid var(--line);background:var(--rail);color:var(--rail-ink);font-size:2rem;line-height:1;overflow:hidden}.brand-editor__mark img{width:100%;height:100%;object-fit:contain;background:var(--bg-elevated)}.brand-editor__actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.brand-editor__actions p{flex-basis:100%;margin:0}.palette-pick{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.4rem 0 1rem}button.palette{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:.75rem;row-gap:.1rem;align-items:center;justify-content:start;text-align:left;min-height:4.6rem;padding:.7rem .85rem;background:var(--bg-elevated);color:var(--ink);border:1px solid var(--line)}button.palette:hover:not(:disabled),button.palette:focus-visible{background:var(--bg-elevated);color:var(--ink);border-color:var(--ink)}button.palette.is-selected,button.palette.is-selected:hover:not(:disabled){background:var(--bg-elevated);color:var(--ink);border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.palette__chip{grid-row:1 / span 2;width:2.75rem;height:2.75rem;display:grid;grid-template-columns:.55rem 1fr;grid-template-rows:1fr .45rem;background:var(--bg);border:1px solid var(--line)}.palette__chip i{display:block}.palette__chip i:first-child{grid-row:1 / span 2}.palette__chip i:last-child{grid-column:2;grid-row:2}.palette__name{font-weight:500;color:var(--ink)}.palette__note{color:var(--muted);font-size:.8rem;line-height:1.3}.form-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;color:var(--muted);font-size:.82rem;text-transform:none;letter-spacing:0;margin:.35rem 0}.form-divider:before,.form-divider:after{content:"";height:1px;background:var(--line)}.error{color:var(--danger);margin:0}.ok-msg{color:var(--ok);margin:.85rem 0 0;font-size:.92rem}.empty-state{border:1px solid var(--line);border-radius:var(--radius);padding:2.25rem 1.25rem;text-align:left;background:var(--bg-elevated)}.empty{color:var(--muted);margin:0}.data-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:var(--space-4)}.grid-card{display:grid;gap:.5rem;align-content:start;padding:1rem 1.05rem .95rem;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);box-shadow:none;text-align:left;color:inherit}.grid-card:hover{border-color:var(--ink);transform:none;box-shadow:none}.grid-card--clickable{cursor:pointer;font:inherit;width:100%;background:var(--bg-elevated);color:inherit}.grid-card--clickable:hover{background:var(--bg-elevated)}.grid-card__head{display:flex;align-items:center;gap:.75rem}.grid-card__title{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0}.grid-card__title strong{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:1.2rem;font-weight:500;line-height:1.2}.grid-card__meta{margin:0;color:var(--muted);font-size:.88rem;display:inline-flex;align-items:center;gap:.35rem}.grid-card__note{margin:0;color:var(--muted);font-size:.84rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.grid-card__price{margin:0;font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:1.55rem;font-weight:500;letter-spacing:-.02em}.grid-card__actions{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.35rem}.grid-card__actions button{padding:var(--space-2) var(--space-3);min-height:var(--hit);font-size:var(--step--1)}.color-dot{width:8px;height:8px;border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 1px #0000002e}.panel{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem 1.2rem;box-shadow:none}.list{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}.list>li,.row-item{display:grid;grid-template-columns:1fr auto;gap:.35rem 1rem;align-items:center;padding:.9rem .15rem;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.list>li:hover,.row-item:hover{border-color:var(--line)}.row-item__meta{display:flex;flex-direction:column;gap:.15rem;min-width:0}.row-item__meta strong{font-family:var(--sans);font-variant-numeric:tabular-nums;font-weight:500;font-size:1.15rem}.row-item em{font-family:var(--sans);font-variant-numeric:tabular-nums;font-style:italic;font-size:1.15rem}.row-item__actions{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}.row-item__actions button{padding:var(--space-2) var(--space-3);min-height:var(--hit);font-size:var(--step--1)}.pill{display:inline-block;font-family:var(--sans);font-size:.75rem;font-weight:500;text-transform:none;letter-spacing:0;padding:.1rem .4rem;border-radius:var(--radius);background:transparent;border:1px solid var(--mark);color:var(--mark);width:fit-content}.pill--confirmed,.pill--completed{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}.pill--cancelled{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.pill--booked,.pill--pending{background:color-mix(in srgb,#8a6232 14%,transparent);color:#6e4c24}[data-theme=dark] .pill--booked,[data-theme=dark] .pill--pending{color:#e2c48a}.toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-5)}.toolbar select{width:auto;min-width:min(100%,11.5rem);max-width:100%}.search-field{display:flex;align-items:center;gap:var(--space-2);flex:1 1 16rem;min-width:min(100%,16rem);min-height:var(--hit);max-width:24rem;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-elevated);color:var(--muted)}.search-field input{border:none;background:transparent;padding:.65rem 0}.search-field input:focus-visible{outline:none}.search-field:focus-within{border-color:var(--carmine);outline:2px solid var(--carmine);outline-offset:1px}.segmented{display:inline-flex;padding:0;background:transparent;border:1px solid var(--line);border-radius:var(--radius);gap:0;overflow:hidden}.segmented button{background:transparent;color:var(--muted);border:0;border-radius:0;padding:var(--space-2) var(--space-4);min-height:var(--hit);font-size:var(--step--1)}.segmented button+button{border-left:1px solid var(--line)}.segmented button.active{background:var(--lacquer);color:var(--on-lacquer)}.segmented button.active:hover:not(:disabled){background:var(--lacquer-deep);color:var(--on-lacquer)}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--space-5) var(--space-6);margin-bottom:var(--space-5);padding-block:var(--space-4);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metric{text-align:left;background:transparent;border:0;border-radius:0;padding:0;color:inherit;display:grid;gap:var(--space-1);box-shadow:none;min-width:0}.metric span{color:var(--muted);font-size:var(--step--1)}.metric strong{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:clamp(1.75rem,4vw,3rem);font-weight:500;letter-spacing:-.03em;line-height:1.05;overflow-wrap:anywhere}button.metric{cursor:pointer;background:transparent;color:inherit;justify-content:start;text-align:left}button.metric:hover{background:transparent;border-color:transparent;color:var(--mark)}.year-grid,.month-grid{display:grid;gap:var(--space-2)}.year-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,7.5rem),1fr))}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.month-cell,.day-cell,button.month-cell,button.day-cell{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem;color:var(--ink);text-align:left;display:grid;gap:.2rem;min-height:72px;font-weight:400}.month-cell:hover,.day-cell:hover,button.month-cell:hover,button.day-cell:hover{border-color:var(--ink);background:var(--bg-elevated);color:var(--ink)}.month-cell strong{font-family:var(--sans);font-variant-numeric:tabular-nums;font-weight:500;font-size:1.2rem}.day-cell strong{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:500}.day-cell span,.month-cell span{color:var(--muted);font-size:.8rem}.bars{display:flex;align-items:flex-end;gap:.45rem;height:140px;margin:.75rem 0 1.5rem;padding:.5rem 0;border-bottom:1px solid var(--line)}.bars--scroll{overflow-x:auto}.bars--scroll .bar{flex:0 0 1.4rem}.bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:.35rem;min-width:0}.bar i{display:block;width:100%;max-width:10px;border-radius:0;background:var(--carmine);min-height:2px}.bar span{font-size:.68rem;color:var(--muted)}.modal-root{position:fixed;inset:0;z-index:50;background:#12111085;display:grid;place-items:center;padding:1.25rem}.modal{width:min(440px,100%);max-height:min(88vh,720px);overflow:auto;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);box-shadow:none}.modal--wide{width:min(560px,100%)}.modal__head{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1.05rem;border-bottom:1px solid var(--line)}.modal__head h3{margin:0;font-size:1.45rem;font-style:normal;font-weight:500}.modal__body{padding:1.05rem}.profile-layout{display:grid;grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);gap:var(--space-4);align-items:start}.profile-card{text-align:left}.profile-card__avatar{display:grid;justify-items:start;gap:.85rem}.profile-card__avatar-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-start}.profile-card__hint{margin:.85rem 0 0;font-size:.82rem}.chip-group{display:flex;flex-wrap:wrap;gap:.4rem}.chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);min-height:var(--hit);border-radius:var(--radius);border:1px solid var(--line);background:transparent;color:var(--ink);font-size:var(--step--1)}.chip:hover{background:transparent;border-color:var(--ink)}.chip.selected{background:transparent;border-color:var(--mark);color:var(--mark)}.chip.selected:hover{background:transparent;border-color:var(--carmine-deep)}.section-block{margin-top:var(--space-6)}.section-block h3{margin:0 0 var(--space-3);font-size:var(--step-2);font-style:normal;font-weight:500;line-height:1.2}@media(min-width:961px){.shell--collapsed .shell__brand{grid-template-columns:1fr;justify-items:center;padding-inline:0}.shell--collapsed .shell__brand-text{display:none}.shell--collapsed .shell__link{grid-template-columns:1fr;justify-items:center;padding:.7rem .35rem;border-left-color:transparent}.shell--collapsed .shell__link span,.shell--collapsed .shell__profile-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.shell--collapsed .shell__toolbar{flex-direction:column;align-items:center}.shell--collapsed .shell__profile{grid-template-columns:1fr;justify-items:center;padding:.45rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:960px){.login{grid-template-columns:1fr}.login__visual{min-height:auto;padding:1.75rem 1.5rem 1.75rem 2.25rem;gap:1.75rem}.login__visual:before{left:1rem;top:1.5rem;bottom:1.5rem}.login__brand{font-size:clamp(2.4rem,12vw,3.4rem)}.shell{grid-template-columns:1fr}.shell__nav{position:fixed;inset:0 auto 0 0;width:min(288px,86vw);transform:translate(-105%);transition:transform .22s ease}.shell--mobile-open .shell__nav{transform:none}.shell--mobile-open .shell__backdrop{display:block;position:fixed;inset:0;z-index:25;background:#1211107a}.shell--collapsed{--current-sidebar: 0px}button.topbar__menu{display:inline-grid}button.shell__edge{display:none}.topbar{padding-inline:var(--gutter-sm)}.shell__main{padding:var(--space-5) var(--gutter-sm) var(--space-6)}.topbar__user-name{display:none}}@media(max-width:720px){.profile-layout,.form-row,.palette-pick,.brand-editor{grid-template-columns:1fr}.page-header h2{font-size:clamp(1.85rem,9vw,2.4rem)}.day-cell,.month-cell,button.day-cell,button.month-cell{padding:var(--space-2);min-height:3.25rem}.day-cell strong,.month-cell strong{font-size:var(--step-0)}.drawer{width:100%}}.book__toolbar{align-items:stretch}.book__months{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0 0 var(--space-4)}button.book__months,.book__months button,button.cal__day,button.book-slot,button.book-appt,button.book-svc,button.slot-pick,button.client-hit{background:transparent;color:var(--ink);border:1px solid transparent;min-height:var(--hit);font-weight:400;scroll-margin-top:calc(var(--topbar-h) + 3.25rem)}.book__months button{border-color:var(--line);padding:var(--space-2) var(--space-3);font-size:var(--step--1)}.book__months button[aria-current=true]{background:var(--ink);color:var(--bg-elevated);border-color:var(--ink)}.book__months button:hover:not(:disabled){background:transparent;color:var(--ink);border-color:var(--ink)}.book__months button[aria-current=true]:hover:not(:disabled){background:var(--ink);color:var(--bg-elevated);border-color:var(--ink)}.book__scroll{overflow-x:auto;border-top:1px solid var(--line)}.book__board{--hour: 5.5rem;display:grid;grid-template-columns:4.25rem repeat(var(--cols),minmax(11.5rem,1fr));min-width:100%}.book__corner,.book__head{position:sticky;top:0;z-index:3;background:var(--bg);border-bottom:1px solid var(--line);min-height:2.75rem;display:flex;align-items:flex-end;padding:var(--space-2) var(--space-3)}.book__head{font-weight:500;border-left:1px solid var(--line)}.book__times,.book__track{position:relative;height:calc(12 * var(--hour))}.book__times{position:sticky;left:0;z-index:4;background:var(--bg)}.book__corner{z-index:5}.book__hour{position:absolute;left:0;right:var(--space-2);transform:translateY(-.55em);color:var(--muted);font-size:var(--step--1);text-align:right}.book__hour:first-child{transform:none}.book__track{border-left:1px solid var(--line)}button.book-slot{position:absolute;left:0;right:0;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0}button.book-slot:hover:not(:disabled),button.book-slot:focus-visible{background:var(--accent-soft);color:var(--ink)}button.book-appt{position:absolute;left:var(--space-1);right:var(--space-1);z-index:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.1rem;overflow:hidden;padding:var(--space-1) var(--space-2);text-align:left;background:var(--bg-elevated);border:1px solid var(--line);border-left:2px solid var(--ink);border-radius:var(--radius);line-height:1.25;min-height:0}button.book-appt:hover:not(:disabled),button.book-appt:focus-visible{border-color:var(--ink);background:var(--bg-elevated);color:var(--ink)}.book-appt strong,.book-appt span{font-size:var(--step--1);line-height:1.25}.book-appt__meta{display:flex;gap:var(--space-2)}.book-appt span{color:var(--muted)}.book-vip{color:var(--accent);font-size:.75rem;font-weight:500}.book__now{position:absolute;left:0;right:0;z-index:2;border-top:1px solid var(--accent);pointer-events:none}.book__now b{position:absolute;top:-.55rem;right:0;color:var(--accent);font-size:.75rem;font-weight:500}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1)}.cal__dow{color:var(--muted);font-size:var(--step--1);padding:var(--space-2) var(--space-1)}button.cal__day{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);min-height:4.5rem;padding:var(--space-2);border-color:var(--line);background:var(--bg-elevated);text-align:left}button.cal__day:hover:not(:disabled){border-color:var(--ink);background:var(--bg-elevated);color:var(--ink)}button.cal__day.is-out,button.cal__day.is-out strong{background:transparent;color:var(--muted)}button.cal__day.is-out:hover:not(:disabled),button.cal__day.is-out:hover:not(:disabled) strong{color:var(--ink);background:transparent}.cal__day.is-today{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}button.cal__day.is-selected,button.cal__day.is-selected:hover:not(:disabled){background:var(--lacquer);border-color:var(--lacquer);color:var(--on-lacquer)}button.cal__day.is-selected strong,button.cal__day.is-selected .cal__count,button.cal__day.is-selected:hover:not(:disabled) strong,button.cal__day.is-selected:hover:not(:disabled) .cal__count{color:var(--on-lacquer)}.cal--pick{margin-bottom:var(--space-4)}.cal--pick button.cal__day{min-height:2.75rem;padding:.35rem .45rem}.cal__count{color:var(--muted);font-size:var(--step--1)}.drawer-root{position:fixed;inset:0;z-index:60;display:flex;justify-content:flex-end;background:#241c1766}.drawer{display:flex;flex-direction:column;width:min(26rem,100%);height:100%;overflow:hidden;background:var(--bg-elevated);border-left:1px solid var(--line);padding:var(--space-5) var(--space-4) var(--space-4)}.drawer__head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.drawer__head h3{margin:0;font-size:var(--step-1)}.drawer form,.drawer .stack,.drawer__body{display:grid;gap:var(--space-4)}.drawer .stack{overflow:auto;min-height:0;flex:1;align-content:start}.drawer__form{min-height:0;flex:1;grid-template-rows:minmax(0,1fr) auto}.drawer__body{overflow:auto;align-content:start;padding-bottom:var(--space-4)}.drawer__foot{border-top:1px solid var(--line);padding-top:var(--space-3);background:var(--bg-elevated)}.drawer__foot button{width:100%}.client-list,.slot-list,.svc-list{display:grid;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0;list-style:none}button.client-hit,button.slot-pick,button.book-svc{width:100%;justify-content:space-between;border-color:var(--line);background:transparent;color:var(--ink);text-align:left}button.client-hit:hover:not(:disabled),button.slot-pick:hover:not(:disabled),button.book-svc:hover:not(:disabled){border-color:var(--ink);background:transparent;color:var(--ink)}button.slot-pick[aria-pressed=true],button.book-svc[aria-pressed=true]{border-color:var(--ink);background:var(--bg);color:var(--ink)}.slot-list{grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr))}button.slot-pick{justify-content:center}
