:root{--blue:#1976d2;--blue2:#0d5ac7;--navy:#0f2d5c;--navy2:#071d3d;--teal:#00b894;--violet:#7957d5;--orange:#f59e0b;--bg:#f4f7fb;--text:#142033;--muted:#6b7280;--card:#fff;--danger:#c0392b;--line:#e7edf5}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}.top{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e8edf5;display:flex;align-items:center;justify-content:space-between;padding:13px 3vw;box-shadow:0 2px 14px #0f2d5c0a}
.brand{display:flex;align-items:center;gap:8px}.brand .mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;font-size:22px;box-shadow:0 8px 20px #1976d236}.brand b{font-size:24px;color:var(--navy);letter-spacing:-.5px}.brand b span{color:var(--blue)}.brand small{color:var(--muted)}
nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.container{width:min(1180px,92%);margin:28px auto}.narrow{width:min(620px,92%)}
.hero{padding:70px 6%;border-radius:28px;background:linear-gradient(135deg,#eef7ff,#ecfff9);display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center}.hero h1{font-size:clamp(38px,5vw,64px);line-height:1.02;margin:0 0 15px;color:var(--navy)}.hero h1 span{color:var(--blue)}.hero p{font-size:18px;color:var(--muted);max-width:650px}
.hero-badge{background:#fff;border:1px solid #e7eef8;border-radius:28px;padding:35px;box-shadow:0 20px 50px #0f2d5c18;text-align:center;font-size:90px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;padding:11px 17px;font-weight:750;cursor:pointer;box-shadow:0 8px 18px #1976d225;transition:.18s}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px #1976d233}.btn.sm{padding:8px 12px;font-size:13px}.btn.ghost{background:#fff;color:var(--blue);border:1px solid #cfe1fb;box-shadow:none}.btn.danger{background:var(--danger)}.btn.wide{width:100%;padding:14px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid.two{grid-template-columns:repeat(2,1fr)}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 8px 24px #0f2d5c0a}.card h2,.card h3,.panel h2,.panel h3{margin-top:0}.muted{color:var(--muted)}
.stat{font-size:32px;font-weight:850;color:var(--navy)}.form{display:grid;gap:14px}.form label{display:grid;gap:7px;font-weight:650;font-size:13px;color:#27364c}.form input,.form select,.form textarea{width:100%;padding:12px 13px;border:1px solid #dce5f1;border-radius:11px;background:#fff;font:inherit;outline:none;transition:.18s}.form input:focus,.form select:focus,.form textarea:focus{border-color:#8bbcf1;box-shadow:0 0 0 4px #1976d20e}.form textarea{min-height:104px;resize:vertical}
.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:12px;border-bottom:1px solid #edf1f7;text-align:left;vertical-align:middle}.table th{color:#536277;background:#f8fbff;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.table td{font-size:13px}.table tr:last-child td{border-bottom:0}.pill{display:inline-block;padding:5px 9px;border-radius:99px;background:#eef5ff;color:#185fb6;font-size:12px;font-weight:750}.pill.green{background:#eafff8;color:#08785e}.pill.red{background:#fff0ee;color:#a83224}
.alert{padding:12px 14px;border-radius:10px;margin-bottom:18px}.alert.ok{background:#eafff3;color:#12613d}.alert.err{background:#fff0ee;color:#9d271c}
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.tabs a{padding:10px 13px;border-radius:10px;background:#fff;border:1px solid #dfe8f3}.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.permission-grid label{background:#f8fbff;border:1px solid #e2ebf5;padding:10px;border-radius:10px}
footer{padding:35px;text-align:center;color:var(--muted)}

/* Professional Super Admin */
body:has(.admin-layout) .container{width:min(1480px,96%);margin:22px auto}
body:has(.admin-layout) footer{padding:22px 20px 35px}
.admin-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px;align-items:start}
.admin-sidebar{position:sticky;top:88px;background:linear-gradient(180deg,#0d2b55,#071b38);border-radius:20px;padding:18px 14px;min-height:calc(100vh - 130px);color:#fff;box-shadow:0 22px 55px #0b24442b}
.admin-profile{display:flex;align-items:center;gap:11px;padding:9px 8px 20px;border-bottom:1px solid #ffffff18}.admin-profile b{display:block;font-size:14px}.admin-profile small{display:block;color:#b9c8dc;margin-top:3px;font-size:11px}
.admin-avatar{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#28a3ff,#00c8a1);font-weight:850;box-shadow:0 8px 20px #0002}
.side-label{font-size:10px;letter-spacing:.12em;color:#8197b4;margin:22px 10px 8px;font-weight:800}.side-link{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:11px;color:#cdd9e9;font-size:13px;margin:3px 0;transition:.18s}.side-link span{width:22px;text-align:center}.side-link em{margin-left:auto;font-style:normal;background:#ffffff14;color:#dce7f5;border-radius:999px;padding:2px 7px;font-size:10px}.side-link:hover,.side-link.active{background:linear-gradient(90deg,#1976d2,#1688d1);color:#fff;box-shadow:0 8px 20px #0002}.side-link.active em{background:#fff;color:#155da8}
.sidebar-help{margin-top:24px;border:1px solid #ffffff14;background:#ffffff08;border-radius:14px;padding:14px}.sidebar-help b{font-size:12px}.sidebar-help small{display:block;color:#aebdd2;line-height:1.5;margin-top:6px;font-size:11px}
.admin-content{min-width:0}.admin-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:2px 0 20px}.admin-page-head h1{margin:3px 0 4px;font-size:28px;letter-spacing:-.7px;color:var(--navy)}.admin-page-head p{margin:0;color:var(--muted);font-size:13px}.eyebrow{font-size:10px;font-weight:850;letter-spacing:.12em;color:var(--blue)}.head-actions{display:flex;gap:10px}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.metric-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;align-items:center;gap:14px;box-shadow:0 10px 24px #0f2d5c0d;transition:.2s}.metric-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}.metric-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px #0f2d5c16}.metric-card.blue{--accent:#1976d2}.metric-card.teal{--accent:#00b894}.metric-card.violet{--accent:#7957d5}.metric-card.orange{--accent:#f59e0b}.metric-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 11%,white);font-size:22px}.metric-card span{display:block;color:#637186;font-size:12px;font-weight:700}.metric-card strong{display:block;font-size:28px;line-height:1.1;margin:3px 0;color:#112b50}.metric-card small{color:#8b96a8;font-size:11px}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,.8fr);gap:16px;margin-bottom:16px}.dashboard-grid.lower{grid-template-columns:minmax(0,1.55fr) minmax(330px,.85fr)}
.panel{padding:0;overflow:hidden;border-radius:18px;box-shadow:0 10px 28px #0f2d5c0d}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid #edf1f7}.panel-head h2{font-size:16px;margin:0;color:#102b50}.panel-head p{margin:4px 0 0;color:#8490a1;font-size:11px}.text-link{font-size:12px;color:var(--blue);font-weight:750}
.calendar-nav{display:flex;align-items:center;gap:10px}.calendar-nav a{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#f4f8fd;border:1px solid #e2eaf4;font-size:20px;color:#31557e}.calendar-nav b{font-size:12px;min-width:92px;text-align:center}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);padding:10px 14px 16px;gap:5px}.cal-week{padding:7px 4px;color:#8c98a8;font-size:10px;text-align:center;font-weight:800;text-transform:uppercase}.cal-day{min-height:88px;border:1px solid #edf1f6;border-radius:11px;padding:7px;background:#fff;position:relative;transition:.15s}.cal-day:hover{border-color:#acd1f7;background:#fbfdff}.cal-day.empty{background:#fafbfd;border-color:transparent}.cal-day.has-booking{background:linear-gradient(180deg,#f7fbff,#fff);border-color:#d5e8fb}.cal-day.today{box-shadow:inset 0 0 0 2px var(--blue)}.date-num{font-size:11px;font-weight:800;color:#34485f}.booking-count{display:inline-block;margin-top:6px;background:#eaf4ff;color:#1764b6;padding:3px 6px;border-radius:999px;font-size:9px;font-weight:800}.cal-mini{display:grid;gap:2px;margin-top:5px}.cal-mini small{font-size:8px;color:#718096;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.status-panel{min-height:100%}.status-summary{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:center;padding:22px 16px 10px}.donut-wrap{display:grid;place-items:center}.donut{width:126px;height:126px;border-radius:50%;background:conic-gradient(#1976d2 0 calc(var(--confirmed)*1%),#00b894 calc(var(--confirmed)*1%) calc((var(--confirmed) + var(--completed))*1%),#f59e0b calc((var(--confirmed) + var(--completed))*1%) calc((var(--confirmed) + var(--completed) + var(--pending))*1%),#e7edf5 0);display:grid;place-items:center}.donut:before{content:"";position:absolute}.donut>div{width:82px;height:82px;border-radius:50%;background:#fff;display:grid;place-items:center;align-content:center;box-shadow:0 3px 12px #0001}.donut b{font-size:23px;color:#102b50}.donut span{font-size:10px;color:#8490a1}.status-list{display:grid;gap:8px}.status-list>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;font-size:11px;color:#5f6c7c}.status-list b{color:#152d4d}.status-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8}.status-dot.confirmed{background:#1976d2}.status-dot.completed{background:#00b894}.status-dot.pending{background:#f59e0b}.status-dot.cancelled{background:#ef5350}.status-dot.rejected{background:#8c6ae4}
.quick-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 16px 18px}.quick-summary div{background:#f8fafd;border:1px solid #edf1f6;border-radius:11px;padding:10px;text-align:center}.quick-summary span{display:block;font-size:9px;color:#8b97a7;text-transform:uppercase}.quick-summary b{font-size:18px;color:#173252}
.admin-table th,.admin-table td{padding:13px 14px}.person-cell{display:flex;align-items:center;gap:9px;min-width:130px}.person-cell b{display:block;font-size:12px;color:#1e334f}.person-cell small,.table-sub{display:block;color:#8b96a5;font-size:10px;margin-top:2px}.mini-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#e8f3ff,#e6fff8);color:#1763ae;font-size:11px;font-weight:850;border:1px solid #dcebf8}.mini-avatar.nh{font-size:16px}
.status-badge,.role-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;text-transform:capitalize}.status-badge.success{background:#e9fbf5;color:#087659}.status-badge.warning{background:#fff7df;color:#a46a00}.status-badge.danger{background:#fff0ef;color:#b5382f}.status-badge.neutral,.role-badge{background:#eef3f8;color:#536579}
.activity-list{padding:8px 16px 14px}.activity-item{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:11px 4px;border-bottom:1px solid #f0f3f7}.activity-item:last-child{border-bottom:0}.nh-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#eff7ff}.activity-main b{display:block;font-size:11px;color:#233a59}.activity-main small{font-size:9px;color:#8b97a8}.activity-bar{height:4px;background:#edf2f7;border-radius:99px;margin-top:6px;overflow:hidden}.activity-bar span{display:block;height:100%;background:linear-gradient(90deg,#1976d2,#00b894);border-radius:99px}.activity-count{text-align:right}.activity-count b{display:block;color:#193b67}.activity-count small{font-size:8px;color:#8d98a8}
.section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin-bottom:14px}.section-toolbar b{display:block;color:#173455;font-size:14px}.section-toolbar span{display:block;color:#8a96a8;font-size:10px;margin-top:3px}
.editor-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px}.form-panel{padding-bottom:20px}.form-panel .form{padding:18px 20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.permission-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:6px}.permission-head h3{margin:0;font-size:14px}.permission-head p{margin:3px 0 0;color:#8995a6;font-size:10px}.link-button{background:transparent;border:0;color:var(--blue);font-weight:750;font-size:11px;cursor:pointer}.permission-grid.professional{grid-template-columns:repeat(2,1fr)}.permission-grid.professional label{display:flex;align-items:center;gap:8px;background:#f9fbfd;padding:9px;border-radius:10px;font-size:11px;font-weight:650}.permission-grid.professional input{width:auto;accent-color:var(--blue)}.sticky-card{position:sticky;top:88px;padding-bottom:18px}.sticky-card .form{padding:16px 18px}.info-box{margin:0 18px;padding:12px;background:#f5f9ff;border-radius:11px;border:1px solid #e3edf8}.info-box b,.info-box small{display:block}.info-box small{color:#69809a;margin-top:4px}.note-panel{text-align:center;padding:34px 24px}.big-note-icon{font-size:50px}.note-panel h2{margin:12px 0 5px}.note-panel p{color:#8390a1;font-size:12px;line-height:1.6}.inline-form{display:flex;gap:7px;align-items:center}.inline-form select{padding:7px 8px;border:1px solid #dae4ef;border-radius:8px;font-size:11px}.empty-state{text-align:center!important;color:#8a96a7!important;padding:30px!important}

@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.dashboard-grid.lower,.editor-grid{grid-template-columns:1fr}.admin-sidebar{position:relative;top:0;min-height:auto}.admin-layout{grid-template-columns:210px minmax(0,1fr)}.sticky-card{position:relative;top:0}}
@media(max-width:850px){.hero{grid-template-columns:1fr}.grid,.grid.two{grid-template-columns:1fr}.permission-grid{grid-template-columns:1fr 1fr}.top{align-items:flex-start;gap:12px;flex-direction:column}nav{gap:12px}.brand small{display:none}.admin-layout{grid-template-columns:1fr}.admin-sidebar{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;min-height:auto}.admin-profile,.side-label,.sidebar-help{display:none}.admin-page-head{align-items:flex-start;flex-direction:column}.head-actions{width:100%;flex-wrap:wrap}.metric-grid{grid-template-columns:1fr 1fr}.calendar{overflow-x:auto}.cal-day{min-height:74px}.dashboard-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}
@media(max-width:560px){.metric-grid{grid-template-columns:1fr}.permission-grid.professional{grid-template-columns:1fr}.admin-sidebar{grid-template-columns:1fr 1fr}.calendar{grid-template-columns:repeat(7,80px)}.admin-page-head h1{font-size:23px}}
