:root{--bg:#f6f8fb;--card:#fff;--ink:#142033;--muted:#697386;--line:#e6eaf0;--brand:#4f46e5;--brand-dark:#3730a3;--brand-soft:#eef2ff;--green:#138a61;--amber:#a76005;--red:#b42318;--shadow:0 10px 30px rgba(20,32,51,.06)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;background:#111827;color:#dbe3f1;padding:22px 16px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:11px;padding:4px 8px 28px}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.brand strong{display:block;color:#fff;font-size:18px}.brand span,.sidebar-bottom span{display:block;color:#94a3b8;font-size:12px;margin-top:2px}nav{display:flex;flex-direction:column;gap:5px}.nav-item{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:10px;color:#b9c4d5;font-size:14px;font-weight:600}.nav-item.active,.nav-item:hover{background:#202b3c;color:#fff}.nav-count{margin-left:auto;background:#ef4444;color:#fff;font-size:11px;min-width:21px;height:21px;border-radius:999px;display:grid;place-items:center}.sidebar-bottom{margin-top:auto;border-top:1px solid #273244;padding:18px 8px 2px;display:flex;align-items:center;gap:10px}.sidebar-bottom strong{display:block;color:#fff;font-size:13px}.business-avatar,.user-avatar{width:34px;height:34px;border-radius:10px;background:#3730a3;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}.main{margin-left:260px;min-height:100vh}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);padding:0 34px;gap:20px;position:-webkit-sticky;position:sticky;top:0;z-index:15}.search,.topbar{display:flex;align-items:center}.search{gap:9px;color:#8a94a5;font-size:13px;min-width:260px}.live-pill{margin-left:auto;font-size:12px;font-weight:700;color:#526071;display:flex;align-items:center;gap:7px}.live-pill i{width:7px;height:7px;background:#22c55e;border-radius:50%}.menu-btn,.mobile-close{display:none;border:0;background:none;color:inherit}.page{padding:34px;max-width:1500px;margin:auto}.page-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.page-heading h1{margin:0;font-size:28px;letter-spacing:-.5px}.page-heading p{margin:6px 0 0;color:var(--muted);font-size:14px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}.metric{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow);position:relative}.metric-icon{position:absolute;right:18px;top:18px;width:38px;height:38px;border-radius:11px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center}.metric>span{display:block;color:var(--muted);font-size:13px;font-weight:650}.metric>strong{display:block;font-size:30px;margin:10px 0 5px}.metric>small{color:#7c8798}.attention{margin:20px 0 30px;padding:24px 26px;background:linear-gradient(120deg,#312e81,#4f46e5);border-radius:18px;color:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.attention h2{margin:5px 0;font-size:20px}.attention p{margin:0;color:#dbe2ff;font-size:13px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800;color:#7c88a0}.attention .eyebrow{color:#c7d2fe}.primary-btn,.secondary-btn{border:0;border-radius:10px;padding:11px 15px;font-weight:750;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer}.primary-btn{background:var(--brand);color:#fff}.attention .primary-btn{background:#fff;color:#312e81}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.primary-btn.compact{padding:9px 12px}.primary-btn.full{width:100%;margin-top:5px}.secondary-btn{background:#fff;color:#344054;border:1px solid var(--line)}.section-title{display:flex;justify-content:space-between;align-items:end;margin:0 2px 13px}.section-title h2{font-size:18px;margin:0}.section-title p{font-size:13px;color:var(--muted);margin:4px 0 0}.section-title>a{color:var(--brand);font-size:13px;font-weight:700}.table-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#7c8798;padding:13px 17px;background:#fafbfc;border-bottom:1px solid var(--line)}td{padding:15px 17px;border-bottom:1px solid #eef1f5;font-size:13px;color:#445065}tr:last-child td{border-bottom:0}td span,td strong{display:block;color:#202b3c}td small{display:block;margin-top:4px;color:#8a94a5}.row-open{width:30px;height:30px;display:grid;place-items:center;border-radius:8px}.row-open:hover{background:var(--brand-soft);color:var(--brand)}.status{display:inline-flex!important;width:max-content;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#eef2f6;color:#526071}.status-needs-action{background:#fff3e0;color:#9a5b06}.status-confirmed{background:#eaf8f2;color:#087653}.status-reserved,.status-slot-offered{background:#eef2ff;color:#4338ca}.status-qualified{background:#ecf7ff;color:#0369a1}.toolbar{display:flex;gap:10px;margin-bottom:15px}.input-like{flex:1 1;max-width:420px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:#8a94a5;font-size:13px;display:flex;gap:8px;align-items:center}.action-list,.appointment-grid{display:grid;grid-gap:13px;gap:13px}.action-card,.appointment{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.action-main,.appointment{gap:14px}.action-main{display:flex;align-items:flex-start}.action-icon,.appointment-date,.setting-icon{width:42px;height:42px;border-radius:12px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;flex:none}.card-top{display:flex;align-items:center;gap:10px}.action-card h3,.card-top h3{margin:0;font-size:15px}.action-card p,.appointment p{margin:5px 0;color:#596579;font-size:13px}.action-card small,.appointment small{color:#8a94a5;font-size:12px}.appointment{justify-content:flex-start}.appointment small{display:flex;align-items:center;gap:5px}.detail-layout{grid-template-columns:minmax(0,1fr) 340px}.detail-layout,.detail-main{display:grid;grid-gap:18px;gap:18px}.action-panel,.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:flex-start}.action-panel h2,.panel h2{margin:5px 0 18px;font-size:19px}.info-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px 24px;gap:18px 24px}.info-grid span{display:block;color:#8a94a5;font-size:11px;margin-bottom:5px}.info-grid strong{display:flex;align-items:center;gap:6px;font-size:13px}.muted{color:var(--muted);font-size:13px;line-height:1.6}.action-panel label{display:block;color:#526071;font-size:12px;font-weight:700;margin:14px 0}.action-panel input,.action-panel textarea{display:block;width:100%;margin-top:7px;border:1px solid #dce1e8;border-radius:9px;padding:10px 11px;outline:none}.action-panel textarea{height:85px;resize:vertical}.safe-note{display:flex;gap:6px;color:#7c8798;line-height:1.4;margin-top:12px}.confirmed-box{display:flex;gap:10px;padding:13px;background:#eaf8f2;color:#087653;border-radius:11px}.confirmed-box span,.confirmed-box strong{display:block}.confirmed-box span{font-size:12px;margin-top:3px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.setting{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px;display:flex;gap:14px;box-shadow:var(--shadow)}.setting h3{margin:0;font-size:14px}.setting p{margin:5px 0 8px;color:var(--muted);font-size:12px;line-height:1.5}.setting span{font-size:11px;color:var(--brand);font-weight:700}.overlay{display:none}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(430px,1fr) minmax(340px,.82fr);background:#f6f8fb}.login-panel{width:min(100%,500px);margin:auto;padding:58px 54px}.login-brand{display:flex;align-items:center;gap:11px;margin-bottom:70px}.login-brand .brand-mark{width:42px;height:42px}.login-brand small,.login-brand strong{display:block}.login-brand strong{font-size:18px}.login-brand small{color:var(--muted);font-size:12px;margin-top:2px}.login-heading .eyebrow{color:var(--brand)}.login-heading h1{font-size:32px;margin:12px 0 8px}.login-heading p{color:var(--muted);font-size:14px;margin:0}.login-form{display:grid;grid-gap:9px;gap:9px;margin-top:32px}.login-form label{font-size:13px;font-weight:700;margin-top:8px}.login-input-wrap{height:46px;display:flex;align-items:center;gap:10px;padding:0 12px;background:#fff;border:1px solid #dce1e8;border-radius:9px;color:#8a94a5}.login-input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(79,70,229,.1)}.login-input-wrap input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.login-input-wrap input::placeholder{color:#a0a8b5}.login-submit{width:100%;margin-top:14px;min-height:45px}.login-submit:disabled{opacity:.55;cursor:not-allowed}.login-error,.login-notice{font-size:12px;line-height:1.5;margin:3px 0;color:var(--red)}.login-notice{color:#596579;background:#eef2ff;padding:10px 12px;border-radius:8px}.login-footer{margin:22px 0 0;text-align:center;color:#7c8798;font-size:12px}.login-aside{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;padding:64px;background:linear-gradient(155deg,#101a2b 4%,#202e48 58%,#35308c);color:#fff;overflow:hidden}.login-aside:after,.login-aside:before{content:"";position:absolute;left:13%;right:-20%;height:1px;background:rgba(255,255,255,.16);transform:rotate(-27deg)}.login-aside:before{top:31%}.login-aside:after{top:53%;left:-12%;right:3%}.login-aside-mark{position:absolute;top:64px;left:64px;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.27);border-radius:14px;color:#d2d9ff}.login-aside p{position:relative;font-size:30px;line-height:1.25;font-weight:700;margin:0 0 20px}.login-aside>span{position:relative;color:#b8c3d8;font-size:10px;font-weight:800;letter-spacing:.12em}.logout-form{margin-left:auto}.logout-btn{width:32px;height:32px;display:grid;place-items:center;border:1px solid #344054;border-radius:8px;background:transparent;color:#b9c4d5;cursor:pointer}.logout-btn:hover{background:#202b3c;color:#fff}@media(max-width:1000px){.metric-grid{grid-template-columns:1fr 1fr}.detail-layout{grid-template-columns:1fr}.action-panel{order:-1}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.2s ease;width:275px}.sidebar-open{transform:translateX(0)}.mobile-close{display:block;margin-left:auto}.overlay{display:block;position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:25}.main{margin-left:0}.topbar{height:62px;padding:0 17px}.menu-btn{display:grid;place-items:center}.search{min-width:0;flex:1 1}.live-pill,.search span{display:none}.page{padding:22px 16px 90px}.page-heading h1{font-size:24px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:16px}.metric-icon{width:34px;height:34px;right:13px;top:13px}.metric>strong{font-size:25px}.attention{gap:18px;padding:20px}.action-card,.attention{align-items:flex-start;flex-direction:column}.action-card{gap:14px}.action-card .primary-btn{width:100%}.info-grid,.settings-grid{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.input-like{max-width:none}.appointment,.card-top{align-items:flex-start}.card-top{flex-wrap:wrap}.login-page{grid-template-columns:1fr}.login-panel{padding:38px 24px 44px}.login-brand{margin-bottom:52px}.login-aside{display:none}}@media(max-width:430px){.metric-grid{grid-template-columns:1fr}.page-heading{margin-bottom:20px}}.data-state{padding:24px;border:1px solid #e1e6ee;border-radius:12px;background:#fff;color:var(--ink);margin:12px 0}.data-state strong{display:block;font-size:15px}.data-state p{margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.data-state a{display:inline-block;margin-top:12px;color:var(--brand);font-size:13px;font-weight:700}.data-state-error{border-color:#f1d2d2;background:#fffafa}.attention .data-state{margin:12px 0 0}.filter-control{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:700}.filter-control input,.filter-control select{min-height:38px;padding:0 10px;border:1px solid #dce1e8;border-radius:8px;background:#fff;color:var(--ink);font:inherit}.pagination-link{display:inline-flex;margin-top:16px;text-decoration:none}.panel form label{display:block;color:#526071;font-size:12px;font-weight:700;margin:14px 0}.panel form input,.panel form textarea{display:block;width:100%;margin-top:7px;border:1px solid #dce1e8;border-radius:9px;padding:10px 11px;outline:none}.panel form textarea{height:85px;resize:vertical}.price-confirmation-review{padding:14px;background:#f8f9fc;border:1px solid var(--line);border-radius:11px}.price-confirmation-review>p:first-child{margin-top:0}.price-confirmation-actions{display:flex;gap:9px;flex-wrap:wrap}.price-confirmation-feedback{padding:13px;background:#eaf8f2;color:#087653;border-radius:11px;font-size:13px;line-height:1.5}.price-confirmation-feedback p{margin:7px 0 0}.price-confirmation-conflict{background:#fff3e0;color:#8b5100}.price-confirmation-error{color:var(--red);font-size:13px;line-height:1.5}.message-list{display:grid;grid-gap:13px;gap:13px}.message-card{padding:19px 20px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.message-card-new{border-left:4px solid var(--brand)}.message-card-bottom,.message-card-top,.message-meta{display:flex;align-items:center;justify-content:space-between;gap:14px}.message-caller h2,.message-detail h2{margin:0;font-size:16px}.message-caller p,.message-detail .muted{margin:5px 0 0;color:var(--muted);font-size:13px}.message-status-control{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.message-status-control .secondary-btn{padding:7px 10px;font-size:11px}.message-status-new{background:#eef2ff;color:#4338ca}.message-status-read{background:#eef2f6;color:#526071}.message-status-error{width:100%;color:var(--red);font-size:11px;text-align:right}.message-meta{justify-content:flex-start;margin-top:17px;color:#8a94a5;font-size:12px}.message-category{padding:5px 8px;border-radius:999px;background:#f3f4f6;color:#526071;font-weight:750}.message-full-text,.message-preview{color:#344054;font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.message-preview{margin:13px 0 18px}.message-card-bottom{border-top:1px solid #eef1f5;padding-top:13px;font-size:12px}.message-back,.message-card-bottom>a{color:var(--brand);font-weight:700}.owner-alert{font-weight:700}.owner-alert-sent{color:var(--green)}.owner-alert-pending{color:var(--amber)}.owner-alert-failed{color:var(--red)}.message-detail{max-width:900px}.message-back{display:inline-block;margin:0 0 14px;font-size:13px}.message-detail .panel-head{align-items:center}.message-detail .panel{display:grid;grid-gap:20px;gap:20px}.message-full-text{margin:0;padding:17px;background:#f8f9fc;border:1px solid var(--line);border-radius:11px}@media(max-width:600px){.message-card-bottom,.message-card-top{align-items:flex-start;flex-direction:column}.message-status-control{justify-content:flex-start}.message-status-error{text-align:left}.message-meta{align-items:flex-start;flex-direction:column;gap:8px}}