:root{--bg:#0a0a0a;--surface:#161616;--surface-2:#1d1d1d;--surface-nav:#121212;--surface-active:#201d16;--border:#272727;--border-strong:#3a3a3a;--gold:#c8a24a;--gold-text:#d9b45a;--gold-soft:#342c19;--on-gold:#0a0a0a;--live:#3fb87f;--success:#3fbf8a;--success-soft:#153025;--alert:#e5603d;--alert-soft:#3a1c14;--on-alert:#fff;--text:#fff;--text-muted:#9a9a9a;--text-faint:#6b6b6b;--radius-card:16px;--radius-field:14px;--radius-btn:12px;--radius-pill:999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--font:"Cairo", system-ui, sans-serif;--fs-title:1.75rem;--fs-h2:1.15rem;--fs-body:1rem;--fs-small:.85rem;--nav-height:4.25rem;--sidebar-width:15rem;font-family:var(--font);color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0}h1,h2,h3{margin:0;font-weight:700}.title{font-size:var(--fs-title);font-weight:800;line-height:1.3}.subtitle{color:var(--text-muted);font-size:var(--fs-small);margin:var(--space-1) 0 0}.section-title{font-size:var(--fs-h2);font-weight:700}.muted{color:var(--text-muted)}.small{font-size:var(--fs-small);font-weight:400}.error{color:var(--alert);margin:var(--space-2) 0}.info{color:var(--success);margin:var(--space-2) 0}button,.btn{font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-btn);border:1px solid var(--border-strong);background:var(--surface);min-height:2.75rem;color:var(--text);padding:.5rem 1rem;font-weight:600;display:inline-flex}button:hover{border-color:var(--gold)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button.primary,.btn-primary{background:var(--gold);border-color:var(--gold);color:var(--on-gold);font-weight:700}button.primary:hover{filter:brightness(1.08)}.btn-block{border-radius:var(--radius-field);width:100%;min-height:3.25rem}.btn-alert{background:var(--alert);border-color:var(--alert);color:var(--on-alert);border-radius:var(--radius-pill);padding-inline:1.25rem;font-weight:700}button.link{min-height:0;color:var(--gold-text);padding:var(--space-1);background:0 0;border:0;font-weight:600}button.link:hover{text-decoration:underline}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-4)}.card.active{background:var(--surface-active);border-color:var(--gold)}form{gap:var(--space-4);margin:var(--space-4) 0;display:grid}label{gap:var(--space-2);font-size:var(--fs-small);color:var(--text-muted);font-weight:600;display:grid}input,select,textarea{font:inherit;min-height:3rem;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-field);padding:.65rem .9rem}input::placeholder{color:var(--text-faint)}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:0;border-color:var(--gold)}input[type=checkbox]{min-height:0;accent-color:var(--gold)}input[type=date],input[type=time]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}option{background:var(--surface)}.badge{font-size:var(--fs-small);border-radius:var(--radius-pill);background:var(--gold-soft);color:var(--gold-text);padding:.15rem .8rem;font-weight:600;display:inline-block}.badge.done{background:var(--success-soft);color:var(--success)}.badge.arrived{background:var(--gold-soft);color:var(--gold-text)}.badge.cancelled,.badge.no_show{background:var(--alert-soft);color:var(--alert)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--space-1);border:1px solid var(--border);background:var(--surface-2);min-height:2.25rem;color:var(--text);border-radius:var(--radius-pill);font-weight:600;font-size:var(--fs-small);cursor:pointer;flex-direction:row;padding:.3rem .85rem;display:inline-flex}.chip.on{background:var(--gold-soft);border-color:var(--gold);color:var(--gold-text)}.chip.time{justify-content:center;min-width:4.2rem}.chip.time.on{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}.row-inline{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.grow{flex:10rem;min-width:0}.grid2{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}@media (width<=520px){.grid2{grid-template-columns:1fr}}.app-header{align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);max-width:960px;margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-2);color:var(--gold);font-size:2rem;font-weight:800;line-height:1;display:flex}.brand svg{width:20px;height:20px}.app-header .salon{color:var(--text-muted);font-size:var(--fs-small);margin-inline-start:auto}.shell{max-width:960px;padding:var(--space-4) var(--space-4) calc(var(--nav-height) + env(safe-area-inset-bottom,0px) + var(--space-4));margin:0 auto}.bottom-nav{inset-inline:0;z-index:20;height:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface-nav);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0}.nav-item{min-height:0;color:var(--text-muted);background:0 0;border:0;border-radius:0;flex-direction:column;flex:1;gap:2px;font-size:.75rem;font-weight:600;position:relative}.nav-item:hover{color:var(--text);border:0}.nav-item.active{color:var(--gold-text)}.nav-item.active:before{content:"";top:-1px;background:var(--gold);height:2px;position:absolute;inset-inline:22%}.brand-side{display:none}.fab{z-index:15;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px) + var(--space-3));min-height:3rem;position:fixed;inset-inline-start:var(--space-4);box-shadow:0 6px 20px #00000073}.timeline{gap:var(--space-3);margin:0;padding:0;padding-inline-start:var(--space-5);list-style:none;display:grid;position:relative}.timeline:before{content:"";background:var(--border-strong);width:1px;position:absolute;inset-block:1.5rem;inset-inline-start:5px}.timeline>li{position:relative}.timeline>li:before{content:"";top:1.5rem;background:var(--gold);border-radius:50%;width:11px;height:11px;position:absolute;inset-inline-start:calc(-1 * var(--space-5))}.switch{border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-2);direction:ltr;flex:none;width:3rem;height:1.75rem;min-height:0;padding:0;position:relative}.switch span{top:3px;background:var(--text-muted);border-radius:50%;width:1.25rem;height:1.25rem;transition:inset-inline-start .15s,background .15s;position:absolute;inset-inline-start:3px}.switch.on{background:var(--gold);border-color:var(--gold)}.switch.on span{background:var(--on-gold);inset-inline-start:calc(100% - 1.25rem - 3px)}.agent-card{gap:var(--space-3);margin-bottom:var(--space-4);border-color:var(--gold);background:linear-gradient(180deg, var(--surface-active), var(--surface));display:grid}.agent-head{gap:var(--space-3);align-items:flex-start;display:flex}.agent-icon{background:var(--gold-soft);width:2.75rem;height:2.75rem;color:var(--gold-text);border-radius:50%;flex:none;place-items:center;display:grid}.agent-row{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border);display:grid}.icon-btn{flex:none;width:2.75rem;padding:0}.btn-quiet{color:var(--text-muted);background:0 0;border-color:#0000;min-width:2.75rem;font-weight:600}.btn-quiet:hover{border-color:var(--border);color:var(--text)}.menu{flex:none;position:relative}.menu-pop{z-index:30;top:calc(100% + 4px);min-width:10rem;padding:var(--space-1);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-field);gap:2px;display:grid;position:absolute;inset-inline-end:0;box-shadow:0 8px 24px #0000008c}.menu-pop button{white-space:nowrap;background:0 0;border:0;justify-content:flex-start;min-height:2.75rem}.menu-pop button:hover{background:var(--surface-active)}.page-head{align-items:center;gap:var(--space-2);display:flex}h1{color:var(--gold);margin:0 0 .25rem}h2{margin:0 0 1rem}.card.auth{max-width:380px;margin:3rem auto;padding:1.5rem}.primary-row{margin-top:var(--space-4);flex-wrap:nowrap}.primary-row .btn-block{min-height:3.25rem;font-size:1.1rem}.booking{column-gap:var(--space-3);row-gap:var(--space-3);padding:var(--space-3) var(--space-4);grid-template-columns:3.5rem minmax(0,1fr) auto;align-items:start;display:grid}.booking.next,.booking.arrived{background:var(--surface-active);border-color:var(--gold)}.booking.cancelled,.booking.no_show{opacity:.6}.booking .time{font-variant-numeric:tabular-nums;width:3.5rem;font-size:1.1rem;font-weight:700;line-height:1.7}.b-info{gap:.1rem;min-width:0;display:grid}.b-name{overflow-wrap:anywhere;line-height:1.5}.b-name.unnamed{color:var(--text-muted);font-weight:400}.b-sub{overflow-wrap:anywhere}.phone{color:var(--text-muted);text-align:right;width:fit-content}.booking>.badge{white-space:nowrap;margin-top:.2rem}.actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.booking .actions{border-top:1px solid var(--border);padding-top:var(--space-3);grid-column:1/-1}.booking .actions:empty{display:none}.booking .actions button{flex:1 1 0}.booking .actions .btn-quiet{flex:none;margin-inline-start:auto}.booking.compact{padding:var(--space-1) var(--space-3);grid-template-columns:3.5rem minmax(0,1fr) auto auto;align-items:center;row-gap:0}.booking.compact .time{color:var(--text-muted);line-height:1.4}.booking.compact .b-name{font-weight:600}.booking.compact>.badge{margin-top:0}.late{color:var(--alert);font-size:.85rem;font-weight:600}.now-card{margin-top:var(--space-5);gap:var(--space-3);padding:var(--space-4);border-width:2px;border-color:var(--gold);background:linear-gradient(180deg, var(--surface-active), var(--surface));display:grid}.now-badge{background:var(--gold);color:var(--on-gold);font-weight:800}.now-row{column-gap:var(--space-3);grid-template-columns:4.5rem minmax(0,1fr);align-items:start;display:grid}.now-time{font-variant-numeric:tabular-nums;width:4.5rem;font-size:1.6rem;font-weight:800;line-height:1.3}.now-name{overflow-wrap:anywhere;font-size:1.3rem;line-height:1.4}.now-name.unnamed{color:var(--text-muted);font-weight:400}.actions.big{border-top:1px solid var(--border);padding-top:var(--space-3)}.actions.big:empty{display:none}.actions.big button{flex:1 1 0;min-height:3.25rem;font-size:1.05rem}.actions.big .btn-quiet{flex:none;min-height:2.75rem;margin-inline-start:auto;font-size:1rem}.finished{margin-top:var(--space-5);gap:var(--space-3);display:grid}.finished-toggle{background:var(--surface);width:100%;min-height:3rem;color:var(--text-muted);border-color:var(--border);border-radius:var(--radius-field);justify-content:flex-start}.finished-toggle .chev{transition:transform .15s;display:inline-flex}.finished-toggle .chev.open{transform:rotate(-90deg)}.fab-space{padding-bottom:4.5rem}.timeline.single{padding-inline-start:0}.timeline.single:before,.timeline.single>li:before{display:none}.row-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);flex-wrap:wrap;align-items:end;gap:.6rem;padding:.75rem;display:flex}.row-card.add{margin-bottom:.75rem}.row-card.inactive,.staff-card.inactive{opacity:.55}.mini{width:6rem;font-size:.8rem;font-weight:600}.mini input{width:100%}.staff-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);overflow-wrap:anywhere;min-width:0;padding:.75rem}.list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.list.tight{gap:.25rem;margin-top:.5rem}.detail{border-top:1px dashed var(--border-strong);margin-top:.75rem;padding-top:.5rem}.detail h3{margin:1rem 0 .4rem;font-size:1rem}.week{gap:.4rem;margin-bottom:.75rem;display:grid}.day{grid-template-columns:4.5rem minmax(0,1fr);align-items:start;gap:.5rem;display:grid}.ranges{flex-wrap:wrap;align-items:center;gap:.4rem .8rem;display:flex}.range{flex-wrap:wrap;align-items:center;gap:.25rem;max-width:100%;display:inline-flex}.range input{width:7.5rem;max-width:100%;min-height:0;padding:.3rem .4rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);gap:.75rem;margin-bottom:1rem;padding:1rem;display:grid}.panel h3{margin:.5rem 0 0;font-size:1rem}.panel h2{margin:0}.seg{gap:.4rem;display:flex}.seg button{flex:1}.seg button.active{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}.cal-toolbar{gap:var(--space-3);margin:var(--space-4) 0;display:grid}.cal-modes{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.cal-modes .seg{width:12rem}.date-nav{align-items:stretch;gap:var(--space-2);display:flex}.date-btn{min-height:2.75rem;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-btn);background:var(--surface);color:var(--text);text-align:center;cursor:pointer;flex:1;place-items:center;font-size:1rem;font-weight:700;display:grid;position:relative}.date-btn:focus-within{outline:2px solid var(--gold)}.date-btn input{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;position:absolute;inset:0}.unnamed{color:var(--text-muted);font-weight:400}.clients-split{gap:var(--space-4);margin-top:var(--space-4);display:grid}.clients-list{gap:var(--space-3);align-content:start;display:grid}.search{width:100%}.client-row{justify-content:flex-start;gap:var(--space-3);background:var(--surface);border-color:var(--border);border-radius:var(--radius-field);text-align:start;width:100%;min-height:3.25rem}.client-row.selected{border-color:var(--gold);background:var(--surface-active)}.client-name{overflow-wrap:anywhere;font-weight:700}.client-name.unnamed{color:var(--text-muted);font-weight:400}.client-detail{gap:var(--space-3);display:grid}.client-detail textarea{resize:vertical}.stats{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.stats>div{padding:var(--space-2) var(--space-3);background:var(--surface-2);border-radius:var(--radius-btn);gap:2px;display:grid}.stats b{font-size:1rem}.stats span{color:var(--text-muted);font-size:var(--fs-small)}.history-row{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border);align-items:center;display:flex}.history-row .grow{display:grid}.settings-link{width:100%;margin-top:var(--space-3);justify-content:flex-start;gap:var(--space-3);text-align:start;min-height:3.5rem}.settings-link .grow{gap:2px;display:grid}.client-page{padding:var(--space-4) var(--space-4) 7rem;gap:var(--space-4);align-content:start;min-height:100dvh;display:grid}.client-head{align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--border);display:flex}.client-logo{background:var(--gold-soft);width:2.5rem;height:2.5rem;color:var(--gold-text);border-radius:50%;flex:none;place-items:center;display:grid}.small-brand{font-size:1.6rem}.client-step{gap:var(--space-4);display:grid}.client-step .title{margin:0}.option-list{gap:var(--space-3);display:grid}.option{justify-content:flex-start;gap:var(--space-3);width:100%;min-height:4.5rem;padding:var(--space-3) var(--space-4);background:var(--surface);border-color:var(--border);border-radius:var(--radius-card);text-align:start}.option .grow{gap:2px;display:grid}.option.on{background:var(--surface-active);border-color:var(--gold)}.option .radio{border:2px solid var(--border-strong);border-radius:50%;flex:none;width:1.25rem;height:1.25rem}.option.on .radio{border-color:var(--gold);box-shadow:inset 0 0 0 3px var(--surface-active);background:var(--gold)}.avatar{background:var(--gold-soft);width:2.5rem;height:2.5rem;color:var(--gold-text);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.date-strip{gap:var(--space-2);padding-bottom:var(--space-1);scrollbar-width:thin;display:flex;overflow-x:auto}.day-chip{border-radius:var(--radius-field);background:var(--surface);border-color:var(--border);flex-direction:column;flex:0 0 4.5rem;gap:0;min-height:4rem}.day-chip b{font-size:1.15rem}.day-chip.on{background:var(--gold);border-color:var(--gold);color:var(--on-gold)}.time-grid{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.time-grid .chip.time{border-radius:var(--radius-btn);min-height:3rem;font-size:1rem}.client-bottom{bottom:0;z-index:10;gap:var(--space-3);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:linear-gradient(to top, var(--bg) 70%, transparent);max-width:var(--client-max,480px);align-items:center;margin-inline:auto;display:flex;position:fixed;inset-inline:0}.client-form{gap:var(--space-4);margin:0;display:grid}.code-input{letter-spacing:.4em;text-align:center;font-size:1.5rem}.summary{gap:var(--space-3);margin:0;display:grid}.summary div{justify-content:space-between;gap:var(--space-3);display:flex}.summary dt{color:var(--text-muted)}.summary dd{text-align:end;margin:0;font-weight:700}.done-step{text-align:center;padding-top:var(--space-6);justify-items:center}.done-mark{background:var(--success-soft);width:4rem;height:4rem;color:var(--success);border-radius:50%;place-items:center;font-size:2rem;font-weight:800;display:grid}.my-booking{gap:var(--space-3);display:grid}.my-booking.upcoming{border-color:var(--gold);background:var(--surface-active)}.move-box{gap:var(--space-3);display:grid}.client-page h1.title{color:var(--text)}.photo-picker{gap:var(--space-2);justify-items:start;display:grid;position:relative}.photo-picker.wide{width:100%}.photo{background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);flex:none;place-items:center;display:grid;overflow:hidden}.photo.circle{border-radius:50%}.photo.wide{aspect-ratio:16/6;border-radius:var(--radius-card);width:100%}.photo img{object-fit:cover;width:100%;height:100%;display:block}.photo.busy{opacity:.5}.photo-fallback{color:var(--gold-text);place-items:center;display:grid}.photo-btn{background:0 0;border:0;border-radius:50%;min-height:0;padding:0}.photo-btn:hover .photo{border-color:var(--gold)}.photo-x{top:-6px;background:var(--surface-2);border-radius:50%;width:1.5rem;height:1.5rem;min-height:0;padding:0;font-size:1rem;line-height:1;position:absolute;inset-inline-end:-6px}.row-card .photo-picker,.staff-card .photo-picker{flex:none}.branding-card{gap:var(--space-4);margin-top:var(--space-4);display:grid}.brand-row{gap:var(--space-2);display:grid}.brand-label{font-size:var(--fs-small);color:var(--text-muted);font-weight:600}.swatches{gap:var(--space-3);flex-wrap:wrap;display:flex}.swatch{border:2px solid #0000;border-radius:50%;width:2.75rem;height:2.75rem;min-height:0;padding:0}.swatch.on{border-color:var(--text);box-shadow:0 0 0 3px var(--bg) inset}.client-cover{aspect-ratio:16/6;border-radius:var(--radius-card);background:var(--surface-2) center / cover no-repeat;margin-bottom:-2.75rem}.client-head.on-cover{padding-inline:var(--space-3);border-bottom:0}.client-logo{overflow:hidden}.client-logo img{object-fit:cover;width:100%;height:100%}.client-head.on-cover .client-logo{border:3px solid var(--bg);width:4rem;height:4rem}.client-head.on-cover strong{margin-top:1.5rem}.thumb{background:var(--gold-soft);border-radius:50%;flex:none;place-items:center;width:2.75rem;height:2.75rem;display:grid;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.client-page .option.on,.client-page .my-booking.upcoming{background:var(--gold-soft)}.client-head.on-cover .small-brand{display:none}.branding-card .photo-picker.wide{max-width:30rem}.swatches{gap:var(--space-2)}.empty-state{justify-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;display:grid}.empty-state img{object-fit:contain;opacity:.85;width:120px;height:120px}.empty-state p{margin:0}.who-for{gap:var(--space-3);display:grid}.who-for .section-title{margin:0}.who-services{gap:var(--space-2);display:grid}.who-services label{color:var(--text);font-weight:600}.who-services select{max-width:60%}.client-people{gap:var(--space-2);margin-top:var(--space-3);display:grid}.person-note{color:var(--text)}.load-error{gap:var(--space-3);padding:var(--space-4) 0;justify-items:start;display:grid}.record{margin-top:var(--space-5);gap:var(--space-2);display:grid}.record h2{margin:0}.record-row{align-items:center}.record-row .actions{gap:var(--space-2);display:flex}.onboarding-art{margin:0 auto var(--space-3);max-width:160px;height:auto;display:block}.client-head{flex-wrap:wrap}.client-head .link{white-space:nowrap}.client-head strong.grow{overflow-wrap:anywhere;min-width:0}.summary-rows{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.group-summary{gap:var(--space-2);display:grid}.stepper{gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.stepper li{gap:var(--space-1);color:var(--text-muted);display:grid}.stepper .bar{background:var(--border-strong);border-radius:4px;height:4px}.stepper li.done .bar,.stepper li.current .bar{background:var(--gold)}.stepper li.current{color:var(--text);font-weight:700}.chip.time{flex-direction:column;gap:0;line-height:1.2}.chip.time.current:not(.on){border-style:dashed;border-color:var(--text-muted)}.current-label{opacity:.85;font-weight:400}.cal{background:var(--surface);border:1px solid var(--border);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;border-radius:14px;max-height:max(24rem,100dvh - 22rem);display:flex;position:relative;overflow:auto}.axis{z-index:6;background:var(--surface);border-inline-end:1px solid var(--border);flex:0 0 3.5rem;position:sticky;inset-inline-start:0}.axis .colhead{cursor:default}.axis-body{margin-block:12px;position:relative}.axis-body span{text-align:center;font-variant-numeric:tabular-nums;color:#d4d4d4;font-size:.82rem;font-weight:600;line-height:1;position:absolute;inset-inline:0;transform:translateY(-50%)}.axis-body .now-pill{z-index:3;background:var(--alert);color:var(--on-alert);border-radius:6px;padding:3px 0;font-weight:700;inset-inline:.2rem}.cols{flex:auto;display:flex}.col{border-inline-start:1px solid var(--border);flex:1 0 11rem;min-width:11rem}.colhead{z-index:4;justify-content:center;align-items:center;gap:var(--space-2);background:var(--surface);border-bottom:1px solid var(--border);cursor:pointer;white-space:nowrap;height:44px;display:flex;position:sticky;top:0;overflow:hidden}.col.today .colhead{background:var(--surface-2)}.col-body{background-color:var(--bg);background-image:linear-gradient(#ffffff2b 1px,#0000 1px),linear-gradient(#ffffff0e 1px,#0000 1px);background-size:100% calc(var(--px) * 60), 100% calc(var(--px) * 15);margin-block:12px;position:relative}.col-body.off{background-image:repeating-linear-gradient(45deg, var(--bg), var(--bg) 8px, var(--surface-2) 8px, var(--surface-2) 16px)}.off-label{top:.5rem;text-align:center;color:var(--text-muted);font-size:.85rem;position:absolute;inset-inline:0}.work{background:#ffffff08;position:absolute;inset-inline:0}.now-line{z-index:5;border-top:2px solid var(--alert);pointer-events:none;height:0;position:absolute;inset-inline:0}.now-line:before{content:"";top:-5px;background:var(--alert);border-radius:50%;width:8px;height:8px;position:absolute;inset-inline-end:-1px}.gap{z-index:1;color:#ffffff42;background:0 0;border:1px dashed #ffffff1c;border-radius:10px;place-items:center;min-height:0;padding:0;font-weight:400;display:grid;position:absolute;inset-inline:4px}.gap:hover,.gap:focus-visible{color:var(--text);background:#ffffff0d;border-color:#fff6}.ev{z-index:2;text-align:start;min-height:0;color:var(--text);cursor:pointer;background:#1c1c1c;border:1px solid #2f2f2f;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:8px;padding:2px 8px;font-size:.82rem;font-weight:400;line-height:1.25;display:grid;position:absolute;inset-inline:4px;overflow:hidden}.ev:hover{border-color:#4a4a4a}.ev.sel{outline-offset:-2px;outline:2px solid #fff}.ev-ico{color:var(--text-muted);place-items:center;display:grid}.ev-main{min-width:0;display:grid}.ev-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:700;overflow:hidden}.ev-sub{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ev-meta{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.ev-time{color:var(--text-muted);white-space:nowrap;font-size:.76rem}.ev-ai{color:#e6e6e6;display:inline-grid}.ev-pill{border-radius:var(--radius-pill);white-space:nowrap;padding:0 .5rem;font-size:.72rem;font-weight:700;line-height:1.5}.ev.compact{padding-block:0}.ev.compact .ev-meta{align-items:center;gap:var(--space-2);flex-direction:row}.ev.compact .ev-pill{display:none}.ev.compact .ev-name{font-size:.82rem}.ev.compact .ev-ico svg{width:14px;height:14px}.ev.st-upcoming,.sw.st-upcoming{background:#1c1c1c;border-color:#2f2f2f}.ev.st-next,.sw.st-next{border:2px solid var(--gold);background:#1d1b15}.ev.st-next .ev-ico,.sw.st-next{color:var(--gold-text)}.ev-pill.st-next{color:var(--gold-text);border:1px solid var(--gold)}.ev.st-now,.sw.st-now{border:2px solid var(--live);background:#3fb87f1f;box-shadow:0 0 0 3px #3fb87f29}.ev.st-now .ev-ico,.sw.st-now{color:var(--live)}.ev-pill.st-now{background:var(--live);color:#04210f}.ev.st-late,.sw.st-late{background:var(--alert-soft);border-color:var(--alert)}.ev.st-late .ev-ico,.sw.st-late{color:var(--alert)}.ev.st-done,.sw.st-done,.ev.st-no_show,.sw.st-no_show{opacity:.72;background:#171717;border-color:#232323}.ev.st-no_show .ev-name{text-decoration:line-through;-webkit-text-decoration-color:var(--text-faint);text-decoration-color:var(--text-faint)}.ev.st-pending,.sw.st-pending{background:0 0;border:1.5px dashed #8d8d8d}.ev.st-block,.sw.st-block{background:repeating-linear-gradient(45deg,#1f1f1f,#1f1f1f 6px,#2a2a2a 6px 12px);border-color:#333}.ev.st-block .ev-name{font-weight:600}.sw.st-ai{color:#e6e6e6}.badge.st-now{color:var(--live);background:#3fb87f2e}.badge.st-next{color:var(--gold-text);box-shadow:inset 0 0 0 1px var(--gold);background:0 0}.badge.st-upcoming{background:var(--surface-2);color:var(--text-muted)}.badge.st-late{background:var(--alert-soft);color:var(--alert)}.badge.st-done,.badge.st-no_show,.badge.st-cancelled{background:var(--surface-2);color:var(--text-muted)}.badge.st-pending{color:var(--text);background:0 0;box-shadow:inset 0 0 0 1px #8d8d8d}.staff-tabs{gap:var(--space-2);scrollbar-width:none;display:flex;overflow-x:auto}.staff-tabs button{flex:1 0 auto;min-width:5rem}.staff-tabs button.active{background:var(--surface-active);color:var(--text);border-color:#fff}.cal-legend{margin-top:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-2) var(--space-4)}.cal-legend summary{cursor:pointer;align-items:center;min-height:2.75rem;font-weight:700;display:flex}.cal-legend ul{padding:0 0 var(--space-2);gap:var(--space-2) var(--space-4);grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));margin:0;list-style:none;display:grid}.cal-legend li{align-items:center;gap:var(--space-2);font-size:.85rem;display:flex}.sw{width:2.1rem;height:1.4rem;color:var(--text-muted);border:1px solid #2f2f2f;border-radius:6px;flex:none;place-items:center;display:grid}:root{--rail-width:5.75rem;--content-max:1100px;--client-max:480px}@media (width<=767px){.nav-team{display:none}}.today-pane{display:none}.client-shell{width:100%;max-width:var(--client-max);margin-inline:auto}@media (width>=768px){.bottom-nav{width:var(--rail-width);justify-content:flex-start;align-items:stretch;gap:var(--space-1);height:auto;padding:var(--space-4) var(--space-2) calc(var(--space-4) + env(safe-area-inset-bottom,0px));border-top:0;border-inline-end:1px solid var(--border);flex-direction:column;inset-block:0;inset-inline:0 auto}.brand-side{margin-bottom:var(--space-4);flex-direction:column;align-items:center;gap:2px;font-size:1.5rem;display:flex}.nav-item{border-radius:var(--radius-btn);flex:none;gap:4px;min-height:4rem;font-size:.8rem}.nav-item.active{background:var(--surface-active)}.nav-item.active:before{top:25%;bottom:25%;inset-inline:auto;border-radius:3px;width:3px;height:auto;inset-inline-start:calc(-1 * var(--space-2))}.app-main{padding-inline-start:var(--rail-width)}.app-header,.shell{max-width:var(--content-max);margin-inline:auto}.app-header{padding-inline:var(--space-5)}.app-header .brand{display:none}.shell{padding:var(--space-5) var(--space-5) var(--space-6)}.fab-space{padding-bottom:0}.fab{bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));inset-inline-start:auto;inset-inline-end:var(--space-5)}.btn-block{width:auto}.primary-row{justify-content:flex-start}.primary-row .grow{flex:none;padding-inline:1.75rem}.actions{justify-content:flex-start}.actions button,.booking .actions button,.actions.big button{flex:none;min-width:6.5rem}.actions .btn-quiet,.actions.big .btn-quiet{min-width:0}form>button{justify-self:start;min-width:10rem}.row-card>button{min-width:0}.seg{width:fit-content}.seg button{flex:none;min-width:6.5rem}.cal-modes .seg{width:fit-content}.date-nav{max-width:28rem}.finished-toggle{width:100%}.panel{max-width:44rem}.card.auth{max-width:420px;margin-top:12vh}button.link,.btn-quiet,.chip,.range input,.row-card input,.mini input{min-height:2.75rem}.switch:after{content:"";position:absolute;inset:-9px -4px}.colhead{height:44px}.cal{max-height:max(20rem,100dvh - 17rem)}.today-split{gap:var(--space-5);margin-top:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.today-split .now-card,.today-split .record,.today-split .finished{margin-top:0}.today-list{gap:var(--space-5);display:grid}.today-pane{gap:var(--space-3);top:var(--space-4);display:grid;position:sticky}.today-pane .seg{justify-self:start}.today-pane .now-card{margin-top:0}.today-pane{grid-template-columns:minmax(0,1fr);min-width:0}.today-pane>*,.date-btn{min-width:0}.date-btn span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.today-pane .cal{max-height:calc(100dvh - 16rem)}.today-pane .page-head{display:none}.today-pane .cal-toolbar{margin-top:0}.selectable{cursor:pointer}.selectable:hover{border-color:var(--border-strong)}.selectable:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.selected,.selected:hover{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.today-list .now-card{gap:var(--space-2)}.today-list .now-time{font-size:1.3rem}.today-list .now-name{font-size:1.1rem}}@media (width>=1100px){.today-split{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}@media (width>=768px){.clients-split{align-items:start;gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.client-detail{top:var(--space-4);position:sticky}}button{transition:transform .12s ease-out,background-color .15s,border-color .15s,color .15s,filter .15s}button:active:not(:disabled){transform:scale(.97)}.switch span{transition:inset-inline-start .15s,background .15s}@keyframes haki-step-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.client-step{animation:.22s ease-out haki-step-in}@keyframes haki-slide-in-rtl{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:none}}@keyframes haki-slide-in-ltr{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}.slide-in{animation:.25s ease-out haki-slide-in-ltr}[dir=rtl] .slide-in{animation-name:haki-slide-in-rtl}@keyframes haki-fade-in{0%{opacity:0}to{opacity:1}}.fade-in{animation:.18s ease-out haki-fade-in}@keyframes haki-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes haki-draw{0%{stroke-dashoffset:40px}to{stroke-dashoffset:0}}.check-anim{width:4.5rem;height:4.5rem;animation:.22s ease-out haki-pop}.check-anim circle{fill:var(--success-soft);stroke:var(--success);stroke-width:2px}.check-anim path{fill:none;stroke:var(--success);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:0;animation:.28s ease-out haki-draw}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}button:active:not(:disabled){transform:none}}
