:root{color:#17202a;background:#f7f9fc;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--ink: #17202a;--muted: #64748b;--soft: #f7f9fc;--surface: #ffffff;--surface-strong: #f1f5f9;--line: #e2e8f0;--line-strong: #cbd5e1;--primary: #0f766e;--primary-strong: #115e59;--blue: #2563eb;--coral: #e35d4f;--amber: #d97706;--green: #16a34a;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 0 rgba(15, 23, 42, .04);--shadow-md: 0 18px 40px rgba(15, 23, 42, .09);--shadow-lg: 0 28px 70px rgba(15, 23, 42, .16);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{background:linear-gradient(180deg,#fbfcff,#f7f9fc 42%,#f2f6fb);margin:0;min-width:320px}[dir=rtl]{text-align:right}[dir=rtl] .row-actions,[dir=rtl] .topbar-actions,[dir=rtl] .form-actions{direction:rtl}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.auth-page{align-items:center;background:linear-gradient(135deg,rgba(15,118,110,.11),transparent 42%),linear-gradient(315deg,rgba(37,99,235,.1),transparent 46%),#f7f9fc;display:flex;min-height:100vh;padding:var(--space-6)}.auth-panel{background:#fffffff0;border:1px solid rgba(226,232,240,.9);border-radius:8px;box-shadow:var(--shadow-lg);margin:0 auto;max-width:440px;padding:32px;width:100%}.language-switcher{align-items:center;display:inline-grid;gap:var(--space-2);grid-template-columns:auto minmax(92px,auto);justify-self:end}.auth-panel>.language-switcher{margin-bottom:var(--space-4)}.language-switcher select{height:34px;min-width:92px}.brand-block{align-items:center;display:flex;gap:14px}.brand-block.compact{align-items:flex-start;padding:var(--space-5)}.brand-mark{align-items:center;background:#0f766e;border-radius:8px;box-shadow:0 10px 22px #0f766e3d;color:#fff;display:flex;font-weight:900;height:42px;justify-content:center;width:42px}.brand-block h1,.topbar h2,.panel-heading h3,.empty-state h3{letter-spacing:0;margin:0}.brand-block h1{color:var(--ink);font-size:28px;line-height:1.1}.brand-block.compact h1{color:var(--ink);font-size:20px}.eyebrow{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:0;margin:0 0 5px;text-transform:uppercase}.auth-form,.appointment-form,.business-form,.activity-form,.service-form{display:grid;gap:var(--space-4)}.auth-form{margin-top:var(--space-7)}.auth-tabs{background:#edf6f5;border:1px solid #d8eeeb;border-radius:8px;display:grid;gap:3px;grid-template-columns:repeat(2,1fr);margin-top:var(--space-6);padding:4px}.auth-tabs.three{grid-template-columns:repeat(3,1fr)}.auth-tabs{display:none}.auth-tabs button{background:transparent;border:0;border-radius:6px;color:#475569;font-weight:850;min-height:38px}.auth-tabs button.selected{background:#fff;box-shadow:var(--shadow-sm);color:var(--primary-strong)}.auth-subactions{display:grid;gap:var(--space-4)}.auth-divider{align-items:center;color:var(--muted);display:flex;font-size:12px;font-weight:800;gap:var(--space-3);text-transform:uppercase}.auth-divider:before,.auth-divider:after{background:var(--line);content:"";flex:1;height:1px}.auth-link-actions,.auth-form-switch{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);justify-content:center}.auth-form-switch{color:var(--muted);font-size:13px}.auth-link-button{background:transparent;border:0;color:var(--blue);font-weight:800;min-height:auto;padding:0}.auth-link-button:hover,.auth-link-button:focus-visible{color:#1d4ed8;outline:none;text-decoration:underline}label{color:#334155;display:grid;font-size:13px;font-weight:800;gap:8px}input,select{background:#fff;border:1px solid var(--line-strong);border-radius:8px;color:var(--ink);height:42px;min-width:0;padding:0 var(--space-3);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;width:100%}input:hover,select:hover{border-color:#94a3b8}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #0f766e21;outline:none}.primary-button,.ghost-button,.icon-button,.action-button{align-items:center;border-radius:8px;display:inline-flex;font-weight:850;gap:8px;justify-content:center;min-height:40px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.primary-button{background:var(--primary);border:1px solid var(--primary);box-shadow:0 10px 20px #0f766e2e;color:#fff;padding:0 var(--space-4)}.primary-button:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong);transform:translateY(-1px)}.ghost-button{background:#fff;border:1px solid var(--line);color:#263241;padding:0 var(--space-3)}.ghost-button:hover:not(:disabled),.icon-button:hover:not(:disabled),.action-button:hover:not(:disabled){border-color:#b6c2d2;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.icon-button{aspect-ratio:1;background:#fff;border:1px solid var(--line);color:#263241;padding:0;width:40px}.action-button{background:#fff;border:1px solid var(--line);color:#263241;padding:0 var(--space-3);white-space:nowrap}.icon-button.approve,.action-button.approve{background:#ecfdf5;border-color:#bbf7d0;color:#15803d}.action-button.reject,.icon-button.reject,.icon-button.danger{background:#fff5f4;border-color:#fecaca;color:#b42318}.form-error{color:#b42318;font-size:13px;font-weight:800;margin:0}.form-notice{color:#15803d;font-size:13px;font-weight:800;margin:0}.form-note{background:#f8fafc;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:13px;font-weight:700;margin:0;padding:var(--space-3)}.app-shell{align-content:start;display:grid;grid-template-columns:268px minmax(0,1fr);min-height:100vh}.sidebar{background:#ffffffe0;border-right:1px solid rgba(226,232,240,.95);color:var(--ink);display:flex;flex-direction:column;min-height:100vh}.sidebar .eyebrow{color:#718096}.sidebar-nav{display:grid;gap:var(--space-2);padding:var(--space-1) var(--space-4) var(--space-4)}.nav-button{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;color:#475569;display:flex;font-weight:850;gap:10px;min-height:44px;padding:0 var(--space-3);text-align:left;transition:background .16s ease,border-color .16s ease,color .16s ease}.nav-button.active{background:#e9f7f5;border-color:#c7ece8;color:var(--primary-strong)}.nav-button:hover{background:#f1f5f9;border-color:var(--line);color:var(--ink)}.sidebar-action{margin:auto var(--space-4) var(--space-5)}.sidebar-actions{display:grid;gap:var(--space-3);margin:auto var(--space-4) var(--space-5)}.sidebar-impersonation-indicator{align-items:center;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;display:inline-flex;gap:8px;margin:0 var(--space-4) var(--space-4);padding:10px 12px}.sidebar-impersonation-indicator span{font-size:13px;font-weight:800}.sidebar-actions .sidebar-action{margin:0}.workspace{align-content:start;display:grid;gap:var(--space-5);padding:28px}.topbar,.panel-heading,.appointment-activity header,.service-row,.appointment-row,.metric-strip{align-items:center;display:flex}.topbar{background:#ffffffc7;border:1px solid rgba(226,232,240,.88);border-radius:8px;box-shadow:var(--shadow-sm);justify-content:space-between;padding:var(--space-5)}.topbar h2{color:#111827;font-size:30px;line-height:1.05}.topbar-actions,.form-actions,.row-actions{align-items:center;display:flex;gap:10px}.panel-heading-actions{align-items:center;display:flex;gap:12px}.account-menu{position:relative}.account-menu-trigger{align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;color:var(--ink);cursor:pointer;display:inline-flex;height:40px;justify-content:center;padding:0;position:relative;width:40px}.account-avatar{align-items:center;background:#e9f7f5;border-radius:999px;color:var(--primary-strong);display:inline-flex;flex:0 0 auto;font-size:12px;font-weight:900;height:24px;justify-content:center;width:24px}.account-menu-badge{background:var(--amber);border:2px solid #ffffff;border-radius:999px;height:10px;inset-inline-end:0;position:absolute;top:0;width:10px}.account-menu-panel{display:none;inset-inline-end:0;padding-top:8px;position:absolute;top:100%;z-index:20}.account-menu:hover .account-menu-panel,.account-menu:focus-within .account-menu-panel{display:block}.account-menu-status{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;box-shadow:var(--shadow-sm);display:grid;gap:4px;margin-bottom:8px;padding:10px 12px;white-space:nowrap}.account-menu-status strong{color:#9a3412;font-size:12px}.account-menu-status span{color:#7c2d12;font-size:12px;font-weight:700}.account-menu-action{box-shadow:var(--shadow-sm);white-space:nowrap}.business-switcher{align-items:center;color:#475569;display:grid;gap:var(--space-2);grid-template-columns:auto minmax(220px,1fr)}.business-switcher select{appearance:auto;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-weight:850;height:40px;min-width:0;padding:0 var(--space-3)}.business-switcher.compact{gap:8px;grid-template-columns:auto minmax(160px,220px)}.topbar-actions .language-switcher{margin-bottom:0}.topbar-actions .language-switcher select{height:40px}.business-switcher select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #0f766e21;outline:none}.alert{border-radius:8px;font-size:14px;font-weight:800;padding:var(--space-3) var(--space-4)}.alert.error{background:#fff5f4;border:1px solid #fecaca;color:#b42318}.alert.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#15803d}.metric-strip{background:transparent;border:0;border-radius:0;display:grid;gap:var(--space-4);grid-template-columns:repeat(4,1fr);overflow:visible}.metric{background:var(--surface);border:1px solid rgba(226,232,240,.95);border-radius:8px;box-shadow:var(--shadow-sm);display:grid;gap:8px;min-height:108px;padding:var(--space-5);position:relative}.metric:before{background:var(--primary);border-radius:8px 8px 0 0;content:"";height:3px;inset:-1px -1px auto;position:absolute}.metric:nth-child(2):before{background:var(--blue)}.metric:nth-child(3):before{background:var(--green)}.metric:nth-child(4):before{background:var(--coral)}.metric+.metric{border-left:1px solid rgba(226,232,240,.95)}.metric span{color:var(--muted);font-size:12px;font-weight:850}.metric strong{color:#0f172a;font-size:30px;line-height:1}.content-grid{align-items:start;display:grid;gap:var(--space-5);grid-template-columns:minmax(360px,.85fr) minmax(0,1.35fr)}.dashboard-grid{align-items:start;display:grid;gap:var(--space-5);grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr)}.appointment-page,.service-page{display:grid;max-width:1120px;width:100%}.panel{background:var(--surface);border:1px solid rgba(226,232,240,.95);border-radius:8px;box-shadow:var(--shadow-sm);display:grid;gap:var(--space-5);padding:var(--space-5)}.panel-heading{justify-content:space-between}.panel-heading h3{color:#111827;font-size:20px;line-height:1.15}.panel-heading>svg{background:#eef7ff;border:1px solid #dbeafe;border-radius:8px;color:var(--blue);height:36px;padding:8px;width:36px}.request-panel .panel-heading>svg{background:#fff7ed;border-color:#fed7aa;color:var(--amber)}.service-form,.activity-form,.appointment-form,.business-form{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-form-fields,.business-form-fields,.activity-form-fields,.service-form-fields{display:grid;gap:var(--space-4);grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}.batch-service-form{border-bottom:1px solid var(--line);padding-bottom:var(--space-4)}.wide{grid-column:1 / -1}.service-draft{background:#fbfdff;border:1px solid var(--line);border-radius:8px;display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:var(--space-4)}.service-draft-heading,.service-list-section header{align-items:center;display:flex;justify-content:space-between}.service-draft-heading{grid-column:1 / -1}.service-draft-heading strong,.service-list-section h4{color:#334155;font-size:14px;margin:0}.add-row-button{justify-self:start}.segmented{background:#f1f5f9;border:1px solid var(--line);border-radius:8px;display:grid;gap:3px;grid-template-columns:repeat(2,1fr);padding:4px}.segmented button{background:transparent;border:0;border-radius:6px;color:#475569;font-weight:850;min-height:36px}.segmented button.selected{background:#fff;box-shadow:var(--shadow-sm);color:var(--primary-strong)}.toggle{align-items:center;background:#fbfdff;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:row;gap:10px;min-height:42px;padding:0 var(--space-3)}.toggle input{accent-color:var(--primary);height:18px;width:18px}.item-list,.service-list-section{display:grid;gap:var(--space-3)}.business-table,.activity-table,.service-table{display:grid;gap:var(--space-2)}.business-table-header,.business-table .business-row,.activity-table-header,.activity-table .activity-row,.service-table-header,.service-table .service-row{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(220px,1.5fr) 110px 110px 120px minmax(170px,auto)}.business-table-header,.activity-table-header,.service-table-header{color:var(--muted);font-size:12px;font-weight:900;padding:0 var(--space-3);text-transform:uppercase}.business-table-header,.business-table .business-row{grid-template-columns:minmax(220px,1.4fr) 112px 112px 124px 150px 86px minmax(170px,auto)}.activity-table-header,.activity-table .activity-row{grid-template-columns:minmax(220px,1.35fr) 142px minmax(180px,1fr) 112px 104px minmax(210px,auto)}.business-row,.activity-row,.service-row,.appointment-row{background:#fff;border:1px solid var(--line);border-radius:8px;gap:var(--space-3);padding:var(--space-3);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.business-row:hover,.activity-row:hover,.service-row:hover,.appointment-row:hover{border-color:#cbd5e1;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.activity-row.inactive,.service-row.inactive{background:#f8fafc;opacity:.86}.activity-row .muted{align-items:center;display:inline-flex;gap:6px}.activity-row strong small{color:var(--muted);display:block;font-size:11px;font-weight:800;margin-top:2px}.business-title-with-logo{align-items:center;display:inline-flex;gap:8px}.business-title-with-logo img,.business-card img,.logo-preview img{border-radius:6px;display:block;height:28px;object-fit:cover;width:28px}.business-logo-upload{align-items:center;background:#fbfdff;border:1px solid var(--line);border-radius:8px;display:grid;gap:var(--space-3);grid-column:1 / -1;grid-template-columns:54px 1fr;padding:var(--space-3)}.logo-preview{align-items:center;background:#edf6f5;border:1px solid #d8eeeb;border-radius:8px;color:var(--primary-strong);display:flex;height:46px;justify-content:center;width:46px}.admin-user-list,.business-card-list,.quick-business-list{display:grid;gap:var(--space-3)}.admin-user-row{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:var(--space-3);grid-template-columns:minmax(220px,1fr) 150px 120px minmax(180px,1fr) auto;padding:var(--space-3)}.admin-user-action{justify-self:end}.admin-user-actions{justify-content:flex-end}.customer-search-panel{display:grid;gap:var(--space-4)}.customer-home-grid,.customer-history-grid{width:100%}.business-card-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.business-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);display:grid;gap:6px;justify-items:start;min-height:104px;padding:var(--space-4);text-align:start}.business-card.selected{border-color:var(--primary);box-shadow:0 0 0 3px #0f766e24}.business-card small{color:var(--muted);font-weight:800}.quick-business-list{grid-template-columns:repeat(auto-fit,minmax(150px,max-content))}.customer-recent-businesses{display:grid;gap:var(--space-3)}.recent-business-card{align-items:center;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe7f5;border-radius:8px;color:var(--ink);display:grid;gap:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;padding:var(--space-3) var(--space-4);text-align:start}.recent-business-brand{align-items:center;background:#eef7ff;border:1px solid #dbeafe;border-radius:999px;color:var(--blue);display:flex;height:44px;justify-content:center;overflow:hidden;width:44px}.recent-business-brand img{height:100%;object-fit:cover;width:100%}.recent-business-copy{display:grid;gap:4px;min-width:0}.recent-business-copy strong{color:#111827;font-size:14px}.recent-business-copy small,.recent-business-action{color:var(--muted);font-size:12px;font-weight:800}.recent-business-action{color:var(--blue)}.customer-booking-form{border-top:1px solid var(--line);padding-top:var(--space-4)}.customer-booking-modal{border-top:0;padding-top:0}.compact-heading{margin-top:var(--space-2)}.customer-appointment-row{grid-template-columns:1fr}.modal-backdrop,.drawer-backdrop{background:#0f172a59;inset:0;position:fixed;z-index:50}.modal-backdrop{align-items:center;display:flex;justify-content:center;padding:var(--space-5)}.modal-panel,.side-editor{background:#fff;border:1px solid rgba(226,232,240,.95);box-shadow:var(--shadow-lg)}.modal-panel{border-radius:8px;max-width:560px;padding:var(--space-5);width:min(100%,560px)}.drawer-backdrop{display:flex;justify-content:flex-end}.side-editor{align-content:start;border-bottom:0;border-radius:0;border-top:0;display:grid;gap:var(--space-6);min-height:100vh;overflow-y:auto;padding:var(--space-5);width:min(100%,520px)}.modal-actions{justify-content:flex-end}.row-main{background:transparent;border:0;color:inherit;display:grid;flex:1;gap:4px;min-width:0;padding:0;text-align:left}.row-main strong,.appointment-main strong{color:#17202a}.row-main span,.appointment-main span,.appointment-main small,.muted{color:var(--muted);font-size:13px}.status-pill{border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:900;justify-self:start;line-height:1;padding:7px 10px;text-transform:capitalize;width:fit-content}.status-pill.green{background:#ecfdf5;border-color:#bbf7d0;color:#15803d}.status-pill.amber{background:#fff7ed;border-color:#fed7aa;color:#b45309}.status-pill.blue{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.status-pill.red{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.appointment-panel{min-width:0}.appointment-activities{display:grid;gap:var(--space-4)}.appointment-activity{background:#fbfdff;border:1px solid var(--line);border-radius:8px;display:grid;gap:var(--space-3);padding:var(--space-3)}.appointment-activity header{border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:var(--space-2)}.appointment-activity header span{align-items:center;color:#334155;display:inline-flex;font-size:13px;font-weight:900;gap:var(--space-2)}.appointment-activity header strong{color:var(--primary-strong)}.compact-list{gap:var(--space-2)}.appointment-main{display:grid;flex:1;gap:3px;min-width:0}.admin-manager{border-top:1px solid var(--line);display:grid;gap:var(--space-4);padding-top:var(--space-5)}.admin-invite-form{align-items:end;display:grid;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto}.admin-invite-list{display:grid;gap:var(--space-2)}.admin-invite-row{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto auto;padding:var(--space-3)}.admin-invite-row small{color:#b42318;font-size:12px}.empty-state,.inline-loading{align-items:center;display:grid;justify-items:center;padding:56px var(--space-6);text-align:center}.empty-state{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-sm)}.empty-state p{color:var(--muted);margin:8px 0 0}.impersonation-banner{align-items:center;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-4) var(--space-5)}.impersonation-banner-icon{align-items:center;background:#ffffffb8;border:1px solid #fed7aa;border-radius:999px;color:#c2410c;display:inline-flex;flex:0 0 auto;height:36px;justify-content:center;width:36px}.impersonation-banner div{display:grid;gap:4px}.impersonation-banner strong{color:#7c2d12;font-size:16px}.impersonation-banner span{color:#9a3412;font-size:13px;font-weight:800}.loader{animation:spin 1s linear infinite;border:3px solid #dbeafe;border-radius:999px;border-top-color:var(--primary);height:30px;width:30px}.inline-loading{gap:var(--space-2);padding:var(--space-6)}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1080px){.app-shell{align-content:start;grid-template-columns:1fr}.sidebar{gap:var(--space-4);min-height:auto;padding:var(--space-5) var(--space-6)}.brand-block.compact{padding:0}.sidebar-nav{display:grid;gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));overflow-x:auto;padding:0}.nav-button{justify-content:center;min-width:0}.sidebar-action{align-self:flex-start;margin:0;min-width:160px}.content-grid,.dashboard-grid{grid-template-columns:1fr}}@media(max-width:840px){.auth-page{padding:var(--space-4)}.auth-panel{padding:var(--space-5)}.sidebar{padding:var(--space-4)}.sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-button{justify-content:flex-start}.sidebar-action{width:100%}.workspace{gap:var(--space-4);padding:var(--space-4)}.topbar{align-items:flex-start;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.topbar-actions,.business-switcher,.business-switcher select{width:100%}.business-switcher{grid-template-columns:auto minmax(0,1fr)}.appointment-form,.appointment-form-fields,.business-form,.business-form-fields,.activity-form,.activity-form-fields,.service-form,.service-form-fields,.service-draft{grid-template-columns:1fr}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-height:92px}.metric+.metric{border-left:1px solid rgba(226,232,240,.95);border-top:0}.activity-row,.service-row,.appointment-row{align-items:stretch;flex-direction:column}.business-table-header,.activity-table-header,.service-table-header{display:none}.business-table .business-row,.activity-table .activity-row,.service-table .service-row,.admin-user-row,.admin-invite-form,.admin-invite-row{align-items:stretch;grid-template-columns:1fr}.business-logo-upload{grid-template-columns:1fr}.row-actions{justify-content:flex-end;flex-wrap:wrap}.modal-backdrop,.modal-panel,.side-editor{padding:var(--space-4)}}@media(max-width:560px){.metric-strip{grid-template-columns:1fr}.topbar-actions{align-items:stretch;flex-direction:column}}
