:root{color:#f4f1e9;background:#111312;font-family:Vazirmatn,Inter,Segoe UI,Tahoma,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #111312;--surface: #1b1e1c;--surface-2: #232724;--surface-3: #2b302d;--line: rgba(255, 255, 255, .1);--muted: #abaea9;--gold: #d1ad56;--gold-strong: #e3c36d;--green: #70b28b;--red: #e07b78;--ink: #111312}*{box-sizing:border-box}html{min-width:320px;background:var(--bg)}body{min-width:320px;min-height:100vh;margin:0;background:var(--bg)}button,input,select,textarea,a{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.52}h1,h2,h3,p{margin-top:0}.app-shell{width:min(1440px,100%);min-height:100vh;margin:0 auto;padding:0 24px 40px}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:16px;background:#111312f5;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;min-width:0;gap:10px;color:inherit;text-decoration:none}.brand-mark,.avatar{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;border-radius:8px;background:var(--gold);color:var(--ink);font-weight:900}.brand strong,.brand small{display:block}.brand strong{font-size:1rem}.brand small{max-width:280px;overflow:hidden;color:var(--muted);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.top-actions,.button-row,.icon-actions,.row-actions{display:flex;align-items:center;gap:8px}.icon-button,.language-button,.download-button,.primary-button,.secondary-button,.text-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;gap:8px;border:0;border-radius:7px;cursor:pointer;font-weight:800;text-decoration:none}.icon-button{width:40px;padding:0;border:1px solid var(--line);background:var(--surface);color:#fff}.language-button{padding:0 12px;border:1px solid var(--line);background:var(--surface);color:#fff}.download-button,.primary-button{padding:0 15px;background:var(--gold);color:var(--ink)}.download-button:hover,.primary-button:hover{background:var(--gold-strong)}.secondary-button{padding:0 13px;border:1px solid var(--line);background:var(--surface-2);color:#fff}.text-button{min-height:34px;padding:0 10px;background:transparent;color:var(--gold-strong)}.primary-wide{width:100%}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-layout{display:grid;grid-template-columns:192px minmax(0,1fr);gap:22px;padding-top:20px}.sidebar{position:sticky;top:90px;align-self:start;display:grid;gap:7px}.sidebar-label{display:flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;color:var(--muted);font-size:.76rem;font-weight:800}.role-button{display:flex;align-items:center;width:100%;min-height:44px;gap:10px;padding:0 12px;border:1px solid transparent;border-radius:7px;background:transparent;color:#d6d8d4;cursor:pointer;font-weight:800;text-align:start}.role-button svg{width:18px}.role-button:hover{background:var(--surface)}.role-button.active{border-color:#d1ad5673;background:#d1ad5621;color:var(--gold-strong)}.sidebar-status{display:flex;align-items:center;gap:8px;margin-top:14px;padding:12px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #70b28b21}.workspace{min-width:0}.workspace-header{position:relative;display:flex;align-items:flex-end;justify-content:space-between;min-height:172px;gap:24px;overflow:hidden;padding:22px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.workspace-header>img,.invite-intro>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.header-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:#090b0aad}.workspace-heading,.date-chip{position:relative;z-index:1}.workspace-heading{max-width:690px}.role-badge{display:inline-flex;align-items:center;min-height:30px;gap:7px;padding:0 9px;border:1px solid rgba(227,195,109,.38);border-radius:999px;background:#111312d1;color:var(--gold-strong);font-size:.75rem;font-weight:900}.workspace-heading h1{margin:9px 0 5px;font-size:1.55rem;line-height:1.35}.workspace-heading p{max-width:650px;margin-bottom:0;color:#d3d4d0;line-height:1.8}.date-chip{display:grid;grid-template-columns:auto 1fr;align-items:center;min-width:210px;gap:3px 8px;padding:12px;border:1px solid rgba(255,255,255,.16);border-radius:7px;background:#111312db}.date-chip svg{grid-row:1 / 3;color:var(--gold)}.date-chip span{font-size:.82rem;font-weight:800}.date-chip small{color:var(--muted)}.notice-bar{min-height:42px;margin:12px 0;padding:11px 14px;border-inline-start:3px solid var(--green);border-radius:5px;background:#70b28b1a;color:#b9dec7;font-size:.84rem;font-weight:800}.notice-bar.busy{border-inline-start-color:var(--gold);color:var(--gold-strong)}.view-stack{display:grid;gap:14px}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric-card{display:flex;align-items:center;min-width:0;min-height:104px;gap:12px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.metric-card>span{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border-radius:7px;background:#d1ad5621;color:var(--gold-strong)}.metric-card div{min-width:0}.metric-card small,.small-stat small{display:block;margin-bottom:5px;color:var(--muted);font-size:.74rem}.metric-card strong{display:block;overflow:hidden;font-size:1.08rem;text-overflow:ellipsis;white-space:nowrap}.panel{min-width:0;padding:17px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.panel-lite{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.collapsible-panel{align-self:start;overflow:hidden;padding:0}.panel-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;gap:12px;padding:0 14px;border:0;background:transparent;color:#fff;cursor:pointer;text-align:start}.panel-toggle:hover{background:var(--surface-2)}.panel-toggle-title,.panel-toggle-side{display:flex;align-items:center;min-width:0;gap:9px}.panel-toggle-title{flex:1 1 auto}.panel-toggle-title svg{flex:0 0 auto;width:18px;color:var(--gold-strong)}.panel-toggle-title strong{overflow:hidden;font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.panel-toggle-side{flex:0 0 auto;color:var(--muted)}.panel-toggle-side small{max-width:150px;overflow:hidden;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.panel-toggle-side svg{transition:transform .16s ease}.panel-toggle[aria-expanded=true] .panel-toggle-side svg{transform:rotate(180deg)}.panel-content{padding:14px;border-top:1px solid var(--line);animation:panel-in .16s ease-out}@keyframes panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.panel-head{display:flex;align-items:center;justify-content:space-between;min-height:32px;gap:12px;margin-bottom:15px}.panel-head>div{display:flex;align-items:center;min-width:0;gap:9px}.panel-head svg{width:18px;color:var(--gold-strong)}.panel-head h2{overflow:hidden;margin:0;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.panel-head>span{flex:0 0 auto;color:var(--muted);font-size:.76rem}.two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.three-column{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.invite-content{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.invite-content code{min-width:0;overflow:hidden;padding:12px;border:1px solid rgba(209,173,86,.25);border-radius:6px;background:#111312;color:var(--gold-strong);direction:ltr;font-family:Consolas,monospace;font-size:.79rem;text-overflow:ellipsis;white-space:nowrap}.team-list,.appointment-table,.compact-list,.health-list,.service-list{display:grid;gap:8px}.team-row{display:flex;align-items:center;min-width:0;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.team-row:last-child{border-bottom:0}.avatar{position:relative;width:36px;height:36px;overflow:hidden;font-size:.82rem}.avatar img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.grow{flex:1 1 auto;min-width:0}.team-row strong,.team-row small,.appointment-row strong,.appointment-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-row small,.appointment-row small{margin-top:3px;color:var(--muted);font-size:.75rem}.icon-actions button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:#70b28b24;color:#a9d9bb;cursor:pointer}.icon-actions button.danger{background:#e07b781f;color:#f0a19e}.photo-button{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:6px;background:var(--surface-2);color:var(--gold-strong);cursor:pointer}.photo-button input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.photo-button:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}.photo-button:has(input:disabled){cursor:not-allowed;opacity:.52}.status{display:inline-flex;flex:0 0 auto;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;background:#70b28b21;color:#a9d9bb;font-size:.69rem;font-weight:900;white-space:nowrap}.status-requested,.status-awaiting_approval,.status-pending,.status-pending_owner,.status-eligible,.status-offered{background:#d1ad5621;color:var(--gold-strong)}.status-rejected,.status-cancelled,.status-forfeited,.status-suspended{background:#e07b781f;color:#f0a19e}.finance-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.small-stat{min-width:0;padding:11px;border-inline-start:2px solid var(--gold);background:var(--surface-2)}.small-stat strong{display:block;overflow:hidden;font-size:.83rem;text-overflow:ellipsis;white-space:nowrap}.compact-list>div,.health-list>div,.service-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid var(--line);font-size:.78rem}.health-list svg{color:var(--green)}.health-list span{flex:1}.health-list strong{color:#a9d9bb;font-size:.72rem}.stack-form{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px}.stack-form label,.inline-form label,.booking-form>label,.invite-form label{display:grid;min-width:0;gap:6px}label>span{color:#d8dad6;font-size:.75rem;font-weight:800}input,select{width:100%;min-height:40px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#111312;color:#fff}input[type=datetime-local],input[type=time]{color-scheme:dark}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.form-triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.compensation-form>strong{font-size:.8rem}.service-list span strong,.service-list span small{display:block}.service-list span small{margin-top:3px;color:var(--muted);font-size:.7rem}.service-list b{flex:0 0 auto;color:var(--gold-strong);font-size:.76rem}.barber-switch{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 15px}.barber-switch small,.barber-switch strong{display:block}.barber-switch small{margin-bottom:3px;color:var(--muted);font-size:.7rem}.barber-switch select{width:min(360px,50%)}.appointment-row{display:grid;grid-template-columns:135px minmax(150px,1fr) auto 64px minmax(160px,auto);align-items:center;gap:12px;min-height:72px;padding:10px 0;border-top:1px solid var(--line)}.appointment-row:first-child{border-top:0}.appointment-date strong{color:var(--gold-strong);font-size:1.05rem}.appointment-meta{text-align:center}.appointment-meta small{color:var(--muted)}.row-actions{justify-content:flex-end;flex-wrap:wrap}.row-actions button{display:inline-flex;align-items:center;min-height:32px;gap:5px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface-2);color:#fff;cursor:pointer;font-size:.72rem;font-weight:800}.row-actions button.approve{color:#a9d9bb}.row-actions button.reject{color:#f0a19e}.waitlist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.waitlist-item{padding:13px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2)}.timeline{display:flex;align-items:center;gap:8px;color:var(--gold-strong);font-size:.76rem}.waitlist-item h3{margin:12px 0 5px;font-size:.94rem}.waitlist-item p{min-height:44px;margin-bottom:12px;color:var(--muted);font-size:.78rem;line-height:1.8}.waitlist-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.empty-state{display:flex;align-items:center;justify-content:center;min-height:90px;gap:8px;color:var(--muted);font-size:.8rem}.client-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:14px;align-items:start}.booking-form{display:grid;gap:10px}.compact-booking-form>.collapsible-panel{width:100%}.step-title{display:flex;align-items:center;gap:10px;padding-top:5px}.step-title>span{display:grid;flex:0 0 auto;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--gold);color:var(--ink);font-weight:900}.step-title strong,.step-title small{display:block}.step-title small{margin-top:3px;color:var(--muted);font-size:.72rem}.barber-choice,.service-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.barber-choice button,.service-choice button{display:flex;align-items:center;min-width:0;min-height:64px;gap:9px;padding:9px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2);color:#fff;cursor:pointer;text-align:start}.barber-choice button.selected,.service-choice button.selected{border-color:var(--gold);background:#d1ad561a}.barber-choice button>span:not(.avatar),.service-choice button>span{flex:1;min-width:0}.barber-choice strong,.barber-choice small,.service-choice strong,.service-choice small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.barber-choice small,.service-choice small{margin-top:3px;color:var(--muted);font-size:.69rem}.barber-choice button>svg{opacity:0;color:var(--gold)}.barber-choice button.selected>svg{opacity:1}.service-choice b{flex:0 0 auto;color:var(--gold-strong);font-size:.72rem}.availability-picker{display:grid;min-width:0;gap:13px;padding-top:2px}.availability-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.75rem}.availability-summary span{display:inline-flex;align-items:center;gap:6px}.availability-summary svg{color:var(--green)}.availability-summary strong{color:#d8dad6}.availability-state{display:flex;align-items:center;justify-content:center;min-height:112px;gap:9px;border:1px dashed var(--line);border-radius:7px;color:var(--muted);font-size:.8rem}.availability-state.error{color:#f0a19e}.day-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(104px,1fr);gap:8px;overflow-x:auto;padding:2px 1px 7px;scrollbar-color:var(--surface-3) transparent}.day-strip button{display:grid;align-content:center;min-height:98px;gap:7px;padding:9px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2);color:#fff;cursor:pointer;text-align:center}.day-strip button small{color:var(--muted);font-size:.7rem}.day-strip button strong{font-size:.82rem}.day-strip button span{color:#a9d9bb;font-size:.7rem;font-weight:900}.day-strip button.selected{border-color:var(--gold);background:#d1ad561f}.day-strip button.selected small,.day-strip button.selected strong{color:var(--gold-strong)}.day-strip button:disabled{background:#202321;color:#6f746f;opacity:.68}.day-strip button:disabled span,.day-strip button:disabled small{color:#6f746f}.slot-section{display:grid;gap:11px}.selected-day-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.selected-day-title strong{font-size:.9rem}.selected-day-title small{color:var(--muted);font-size:.72rem}.slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.slot-grid button{min-width:0;min-height:46px;padding:0 8px;border:1px solid rgba(112,178,139,.72);border-radius:7px;background:transparent;color:#a9d9bb;cursor:pointer;font-size:.91rem;font-weight:900}.slot-grid button:hover:not(:disabled){background:#70b28b1a}.slot-grid button.selected{border-color:var(--gold);background:var(--gold);color:var(--ink)}.slot-grid button:disabled{border-color:transparent;background:#252825;color:#707570;opacity:.66}.selected-slot-note{display:flex;align-items:center;justify-content:center;min-height:38px;gap:6px;margin:0;padding:8px;background:#70b28b14;color:#b9dec7;font-size:.76rem}.selected-slot-note svg{flex:0 0 auto}.deposit-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;border:1px solid rgba(209,173,86,.35);border-radius:7px;background:#d1ad5614}.deposit-summary>span{display:flex;align-items:center;gap:10px}.deposit-summary svg{color:var(--gold-strong)}.deposit-summary small,.deposit-summary strong{display:block}.deposit-summary small{color:var(--muted);font-size:.72rem}.deposit-summary strong{margin-top:3px}.client-aside{display:grid;gap:14px}.qr-content{display:grid;place-items:center;min-height:210px;color:#f2efe6;text-align:center}.qr-content svg{color:var(--gold-strong)}.qr-content span,.qr-content small{color:var(--muted);font-size:.75rem}.policy-content{display:flex;gap:11px}.policy-content>svg{flex:0 0 auto;color:var(--green)}.policy-content strong{font-size:.85rem}.policy-content p{margin:6px 0 0;color:var(--muted);font-size:.76rem;line-height:1.8}.qr-card{display:grid;place-items:center;min-height:260px;padding:20px;border:1px solid var(--line);border-radius:8px;background:#f2efe6;color:#151815;text-align:center}.qr-card svg{color:#151815}.qr-card span,.qr-card small{color:#5c625d;font-size:.75rem}.policy-card{display:flex;gap:11px;padding:15px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.policy-card svg{flex:0 0 auto;color:var(--green)}.policy-card strong{font-size:.85rem}.policy-card p{margin:6px 0 0;color:var(--muted);font-size:.76rem;line-height:1.8}.success-state{display:grid;place-items:center;min-height:420px;text-align:center}.success-state>svg{color:var(--green)}.success-state h2{margin:16px 0 8px}.success-state p{color:var(--muted)}.success-state>div{display:grid;min-width:min(360px,100%);gap:7px;margin:18px 0;padding:14px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2)}.success-state .success-actions{display:flex;padding:0;border:0;background:transparent}.cancel-button{color:#f0a19e}.tenant-card h2{margin:4px 0}.tenant-card p{color:var(--gold-strong);direction:ltr;text-align:start}.tenant-facts{display:flex;flex-wrap:wrap;gap:8px}.tenant-facts span{padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:.72rem}.invite-page{min-height:100vh;background:var(--bg)}.invite-topbar{width:min(1180px,calc(100% - 32px));margin:0 auto}.invite-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);width:min(1180px,calc(100% - 32px));min-height:calc(100vh - 112px);margin:20px auto 40px;gap:16px;align-items:stretch}.invite-intro{position:relative;display:flex;align-items:flex-end;min-height:590px;overflow:hidden;padding:34px;border:1px solid var(--line);border-radius:8px}.invite-intro>div:last-child{position:relative;z-index:1;max-width:650px}.invite-intro h1{margin:14px 0 10px;font-size:2.2rem;line-height:1.45}.invite-intro p{margin:0;color:#d5d6d2;line-height:1.9}.invite-form{display:grid;align-content:center;gap:13px}.form-status{margin:0;color:var(--gold-strong);font-size:.8rem;line-height:1.8;text-align:center}.form-status.success{color:#a9d9bb}@media(max-width:1120px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.three-column{grid-template-columns:1fr 1fr}.three-column>:last-child{grid-column:1 / -1}.appointment-row{grid-template-columns:112px minmax(130px,1fr) auto 54px}.appointment-row .row-actions{grid-column:1 / -1;justify-content:flex-start}.barber-choice,.service-choice{grid-template-columns:1fr 1fr}}@media(max-width:860px){.app-shell{padding:0 14px 32px}.app-layout{grid-template-columns:1fr;gap:12px;padding-top:12px}.sidebar{position:static;display:flex;gap:7px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.sidebar-label,.sidebar-status{display:none}.role-button{flex:0 0 auto;width:auto;padding:0 13px}.workspace-header{min-height:158px;align-items:flex-end;padding:18px}.date-chip{display:none}.two-column,.client-layout,.invite-layout,.three-column{grid-template-columns:1fr}.three-column>:last-child{grid-column:auto}.invite-content{grid-template-columns:1fr}.invite-layout{min-height:auto}.invite-intro{min-height:370px}}@media(max-width:620px){.topbar{min-height:62px}.brand small,.download-button span,.language-button svg{display:none}.download-button{width:40px;padding:0}.language-button{min-width:40px;padding:0 8px}.sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.role-button{width:100%;justify-content:flex-start}.workspace-header{min-height:145px}.workspace-heading h1{font-size:1.3rem}.workspace-heading p{font-size:.82rem}.metrics-grid{grid-template-columns:1fr 1fr}.metric-card{min-height:96px;padding:12px}.metric-card>span{width:34px;height:34px}.metric-card strong{font-size:.86rem;white-space:normal}.button-row{display:grid;grid-template-columns:1fr 1fr}.button-row>:last-child{grid-column:1 / -1}.team-row{flex-wrap:wrap}.panel-toggle{min-height:48px;padding:0 12px}.panel-content{padding:12px}.inline-form,.form-pair,.form-triple{grid-template-columns:1fr}.appointment-row{grid-template-columns:84px minmax(0,1fr) auto;gap:8px}.appointment-meta{display:none}.appointment-row .row-actions{grid-column:1 / -1}.waitlist-grid,.barber-choice,.service-choice{grid-template-columns:1fr}.barber-switch{align-items:stretch;flex-direction:column}.barber-switch select{width:100%}.deposit-summary,.availability-summary,.selected-day-title{align-items:flex-start;flex-direction:column}.day-strip{grid-auto-columns:100px}.invite-topbar,.invite-layout{width:min(100% - 20px,1180px)}.invite-intro{min-height:330px;padding:22px}.invite-intro h1{font-size:1.65rem}}
