body{margin:0;background:#f8fafc;color:#0f172a;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}.min-h-screen{min-height:100vh}.bg-white{background:white}.bg-slate-50{background:#f8fafc}.bg-slate-100{background:#f1f5f9}.text-slate-500{color:#64748b}.text-slate-600{color:#475569}.text-slate-700{color:#334155}.text-slate-900,.text-slate-950{color:#0f172a}.text-brand-700{color:#14766e}.text-brand-900{color:#123d3a}.bg-brand-600{background:#14766e}.text-white{color:white}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mx-auto{margin-left:auto;margin-right:auto}.block{display:block}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.flex{display:flex}.grid{display:grid}.hidden{display:none}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.rounded-md{border-radius:.375rem}.border{border:1px solid #e2e8f0}.border-b{border-bottom:1px solid #e2e8f0}.border-r{border-right:1px solid #e2e8f0}.border-slate-100{border-color:#f1f5f9}.border-slate-200{border-color:#e2e8f0}.border-slate-300{border-color:#cbd5e1}.shadow-sm{box-shadow:0 1px 2px rgba(15,23,42,.06)}.w-full{width:100%}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-5xl{max-width:64rem}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.capitalize{text-transform:capitalize}.text-center{text-align:center}.last\:border-0:last-child{border-width:0}.form-input,input,select,textarea{box-sizing:border-box;width:100%;border:1px solid #cbd5e1;border-radius:.375rem;padding:.55rem .7rem;font:inherit}.form-label{display:block;font-size:.875rem;font-weight:600;color:#334155;margin-bottom:.25rem}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;padding:.55rem 1rem;font-size:.875rem;font-weight:700;text-decoration:none;cursor:pointer}.btn-primary{border:0;background:#14766e;color:white}.btn-secondary{border:1px solid #cbd5e1;background:white;color:#334155}.nav-link{display:flex;gap:.5rem;border-radius:.375rem;padding:.5rem .75rem;text-decoration:none;color:#475569}.nav-link-active,.nav-link:hover{background:white;color:#14766e}.sticky{position:sticky}.left-0{left:0}.z-10{z-index:10}.min-w-\[980px\]{min-width:980px}.min-h-16{min-height:4rem}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:p-6{padding:1.5rem}}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-\[1fr_280px\]{grid-template-columns:1fr 280px}}@media (min-width:1024px){.lg\:flex{display:flex}.lg\:block{display:block}.lg\:min-h-screen{min-height:100vh}.lg\:w-64{width:16rem}.lg\:border-b-0{border-bottom-width:0}.lg\:border-r{border-right:1px solid #e2e8f0}.lg\:p-8{padding:2rem}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}

:root{--ink:#101828;--muted:#667085;--line:#e4e7ec;--surface:#fff;--surface-2:#f8fafc;--brand:#0f766e;--brand-dark:#115e59;--accent:#2563eb;--shadow:0 18px 48px rgba(15,23,42,.08)}
body{background:linear-gradient(135deg,#f7fbfb 0%,#f8fafc 48%,#eef6ff 100%);color:var(--ink)}
.admin-shell{min-height:100vh;display:grid;grid-template-columns:1fr}
.admin-sidebar{background:rgba(255,255,255,.88);border-bottom:1px solid rgba(226,232,240,.9);padding:1rem;backdrop-filter:blur(18px)}
.sidebar-brand{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.brand-lockup{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.875rem;background:linear-gradient(135deg,#0f766e,#2563eb);color:#fff;font-size:.8rem;font-weight:800;box-shadow:0 12px 28px rgba(15,118,110,.28)}
.brand-name{display:block;font-weight:800;letter-spacing:.01em;color:#0f172a}
.brand-subtitle{display:block;margin-top:.1rem;color:#667085;font-size:.75rem;font-weight:600}
.logout-button{border:1px solid #d0d5dd;background:#fff;color:#475467;border-radius:999px;padding:.45rem .75rem;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}
.sidebar-nav{display:grid;gap:1rem}
.sidebar-section-title{margin:.25rem .5rem .45rem;color:#98a2b3;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.sidebar-section{min-width:0}
.sidebar-link{display:flex;align-items:center;gap:.7rem;border-radius:.75rem;padding:.65rem .75rem;color:#475467;text-decoration:none;font-size:.9rem;font-weight:700;transition:.18s ease}
.sidebar-link:hover{background:#f2f4f7;color:#0f766e}
.sidebar-link-active{background:#ecfdf3;color:#0f766e;box-shadow:inset 0 0 0 1px rgba(15,118,110,.12)}
.sidebar-link-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 1.75rem;width:1.75rem;height:1.75rem;border-radius:.55rem;background:#f2f4f7;color:#667085;font-size:.68rem;font-weight:900}
.sidebar-link-active .sidebar-link-icon{background:#0f766e;color:#fff}
.admin-workspace{min-width:0}
.admin-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:rgba(248,250,252,.82);border-bottom:1px solid rgba(226,232,240,.8);backdrop-filter:blur(18px)}
.topbar-kicker{margin:0 0 .15rem;color:#667085;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.topbar-title{margin:0;color:#0f172a;font-size:1.15rem;line-height:1.2}
.topbar-actions{display:none;align-items:center;gap:.65rem}
.quick-action{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d0d5dd;background:#fff;color:#344054;border-radius:999px;padding:.62rem .9rem;text-decoration:none;font-size:.85rem;font-weight:800;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.quick-action-primary{background:#0f766e;border-color:#0f766e;color:#fff}
.admin-content{padding:1rem}
.alert{margin-bottom:1rem;border-radius:.9rem;padding:.85rem 1rem;font-size:.9rem;font-weight:700}
.alert-success{border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}
.alert-danger{border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}
.page-hero{display:grid;gap:1rem;align-items:end;margin-bottom:1rem;padding:1.25rem;border:1px solid rgba(226,232,240,.9);border-radius:1.25rem;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,253,250,.9));box-shadow:var(--shadow)}
.eyebrow{margin:0 0 .35rem;color:#0f766e;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.page-hero h2,.panel h3{margin:0;color:#101828}
.page-hero h2{font-size:1.85rem;line-height:1.05;letter-spacing:0}
.page-hero-copy{max-width:44rem;margin:.65rem 0 0;color:#667085;line-height:1.6}
.hero-stat{display:grid;gap:.55rem;min-width:12rem;padding:1rem;border-radius:1rem;background:#fff;border:1px solid #e4e7ec}
.hero-stat-label{color:#667085;font-size:.8rem;font-weight:800}
.hero-stat strong{font-size:2rem;line-height:1}
.progress-track{display:block;height:.45rem;overflow:hidden;border-radius:999px;background:#eef2f6}
.progress-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0f766e,#2563eb)}
.report-tabs{display:flex;gap:.5rem;overflow:auto;margin:0 0 1rem;padding:.25rem;border:1px solid #e4e7ec;border-radius:999px;background:rgba(255,255,255,.78)}
.report-tabs a{white-space:nowrap;border-radius:999px;padding:.62rem .9rem;color:#475467;text-decoration:none;font-size:.85rem;font-weight:800}
.report-tabs a:hover{background:#f2f4f7;color:#0f766e}
.kpi-grid{display:grid;gap:1rem;grid-template-columns:1fr}
.kpi-card{position:relative;overflow:hidden;border:1px solid #e4e7ec;border-radius:1rem;background:#fff;padding:1rem;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.kpi-card:before{content:"";position:absolute;inset:0 0 auto;height:.22rem;background:#0f766e}
.kpi-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:#667085;font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.status-dot{width:.55rem;height:.55rem;border-radius:999px;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}
.kpi-card strong{display:block;margin:.75rem 0 .15rem;color:#101828;font-size:1.75rem;line-height:1;font-weight:900}
.kpi-card p{margin:0 0 .85rem;color:#667085;font-size:.86rem}
.kpi-blue:before{background:#2563eb}.kpi-violet:before{background:#7c3aed}.kpi-amber:before{background:#d97706}.kpi-rose:before{background:#e11d48}.kpi-sky:before{background:#0284c7}.kpi-slate:before{background:#475569}.kpi-teal:before{background:#0d9488}.kpi-orange:before{background:#ea580c}.kpi-red:before{background:#dc2626}.kpi-indigo:before{background:#4f46e5}
.report-grid{display:grid;gap:1rem;margin-top:1rem}
.panel{border:1px solid #e4e7ec;border-radius:1rem;background:rgba(255,255,255,.92);padding:1rem;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.panel-header{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.panel-badge{display:inline-flex;align-items:center;border-radius:999px;background:#ecfdf3;color:#047857;padding:.35rem .65rem;font-size:.72rem;font-weight:900}
.mini-chart{display:flex;align-items:end;gap:.55rem;height:13rem;padding:1rem;border-radius:1rem;background:linear-gradient(180deg,#f8fafc,#eef6ff)}
.mini-chart span{flex:1;min-width:.7rem;border-radius:999px 999px .35rem .35rem;background:linear-gradient(180deg,#2563eb,#0f766e);box-shadow:0 8px 18px rgba(37,99,235,.18)}
.export-panel{display:grid;gap:.85rem;align-content:start}
.form-label{display:block;margin-bottom:.3rem}
@media (min-width:640px){.topbar-actions{display:flex}.admin-content{padding:1.25rem}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-hero{grid-template-columns:1fr auto;padding:1.5rem}.page-hero h2{font-size:2.35rem}}
@media (min-width:1024px){.admin-shell{grid-template-columns:18rem 1fr}.admin-sidebar{position:sticky;top:0;height:100vh;border-right:1px solid rgba(226,232,240,.9);border-bottom:0;padding:1.15rem;overflow:auto}.admin-content{padding:1.5rem 2rem 2rem}.admin-topbar{padding:1rem 2rem}.sidebar-nav{display:block}.sidebar-section{margin-top:1rem}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.report-grid{grid-template-columns:minmax(0,1fr) 22rem}.page-hero{margin-bottom:1.25rem}}
@media (min-width:1440px){.kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.admin-content{padding:2rem 2.5rem 2.5rem}}
.admin-sidebar{position:sticky;top:0;z-index:30}
.sidebar-nav{display:flex;gap:.45rem;overflow:auto;padding-bottom:.25rem}
.sidebar-section{display:flex;gap:.45rem;flex:0 0 auto}
.sidebar-section-title{display:none}
.sidebar-link{flex:0 0 auto;padding:.5rem}
.sidebar-link span:not(.sidebar-link-icon){display:none}
@media (min-width:1024px){.sidebar-nav{display:block;overflow:visible;padding-bottom:0}.sidebar-section{display:block}.sidebar-section-title{display:block}.sidebar-link{padding:.65rem .75rem}.sidebar-link span:not(.sidebar-link-icon){display:inline}}
.text-right{text-align:right}.mt-4{margin-top:1rem}
.page-heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.page-heading h2{margin:0;color:#101828;font-size:1.75rem;line-height:1.1}
.filter-bar{display:grid;gap:.75rem;margin:0 0 1rem;padding:.85rem;border:1px solid #e4e7ec;border-radius:1rem;background:rgba(255,255,255,.9);box-shadow:0 8px 24px rgba(15,23,42,.04)}
.data-table-wrap{overflow:auto;border:1px solid #e4e7ec;border-radius:1rem;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.data-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;font-size:.9rem}.data-table th{position:sticky;top:0;z-index:5;background:#f8fafc;color:#667085;text-align:left;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.data-table th,.data-table td{border-bottom:1px solid #eef2f6;padding:.85rem 1rem;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#f8fafc}
.row-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem}.compact-input{min-width:8.5rem;padding:.42rem .55rem!important;font-size:.82rem!important}.btn-compact{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#344054;padding:.42rem .7rem;text-decoration:none;font-size:.8rem;font-weight:900;cursor:pointer}.btn-compact:hover{background:#f2f4f7;color:#0f766e}.btn-danger{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.btn-danger:hover{background:#fee2e2;color:#991b1b}
.status-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.36rem .65rem;font-size:.72rem;font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.04em;background:#f2f4f7;color:#475467;border:1px solid rgba(102,112,133,.14)}.status-pill:before{content:"";width:.45rem;height:.45rem;border-radius:999px;background:currentColor}
.status-available,.status-clean,.status-inspected,.status-completed,.status-resolved,.status-paid,.status-confirmed{background:#ecfdf3;color:#047857;border-color:#bbf7d0}
.status-occupied,.status-checked_in,.status-in_progress,.status-authorized,.status-issued{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.status-dirty,.status-pending,.status-assigned,.status-on_hold,.status-partially_paid,.priority-high{background:#fffbeb;color:#b45309;border-color:#fde68a}
.status-maintenance,.status-refunded,.status-partially_refunded,.priority-normal{background:#f5f3ff;color:#6d28d9;border-color:#ddd6fe}
.status-out_of_order,.status-cancelled,.status-no_show,.status-failed,.status-failed_inspection,.status-open,.status-rejected,.priority-urgent{background:#fef2f2;color:#b91c1c;border-color:#fecaca}
.status-checked_out,.status-closed,.status-void,.status-draft,.priority-low{background:#f8fafc;color:#475569;border-color:#e2e8f0}
.empty-state{padding:2rem;text-align:center;color:#667085;font-weight:800}.pagination-wrap{margin-top:1rem}.pagination-wrap nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#667085}.pagination-wrap a,.pagination-wrap span{border-radius:.65rem}
.card-link{text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease}.card-link:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,23,42,.1)}
.tape-legend{display:flex;gap:.75rem;overflow:auto;margin-bottom:1rem;padding:.75rem;border:1px solid #e4e7ec;border-radius:1rem;background:rgba(255,255,255,.85)}.tape-legend span{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap;color:#475467;font-size:.78rem;font-weight:900}.reservation-chip{width:.8rem;height:.8rem;border-radius:.25rem}
.tape-chart-wrap{overflow:auto;border:1px solid #e4e7ec;border-radius:1rem;background:#fff;box-shadow:0 12px 32px rgba(15,23,42,.06)}.tape-chart{display:grid;grid-auto-rows:minmax(4.75rem,auto);min-width:1480px}.tape-corner,.tape-date{position:sticky;top:0;z-index:8;border-bottom:1px solid #e4e7ec;background:#f8fafc;padding:.85rem;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.tape-corner{left:0;z-index:10}.tape-date{text-align:center}.tape-date span{display:block;color:#98a2b3;font-size:.68rem}.tape-date strong{display:block;color:#101828;font-size:.86rem}.tape-date.is-today{background:#ecfdf3;color:#0f766e}
.tape-room{position:sticky;left:0;z-index:6;display:grid;gap:.25rem;align-content:center;min-height:4.75rem;border-bottom:1px solid #eef2f6;background:#fff;padding:.75rem}.tape-room strong{font-size:.95rem}.tape-room>span:not(.status-pill){color:#667085;font-size:.78rem}.tape-cell{position:relative;min-height:4.75rem;border-bottom:1px solid #eef2f6;border-left:1px solid #eef2f6;background:#fff;padding:.45rem}.tape-cell.is-today{background:#f0fdfa}.tape-cell.room-blocked{background:repeating-linear-gradient(135deg,#fff,#fff 8px,#f8fafc 8px,#f8fafc 16px)}.cell-note{display:inline-flex;margin-top:.75rem;border-radius:999px;background:#fff7ed;color:#c2410c;padding:.3rem .55rem;font-size:.68rem;font-weight:900;text-transform:uppercase}
.reservation-block{display:grid;gap:.08rem;border-radius:.7rem;padding:.5rem .6rem;color:#fff;font-size:.76rem;font-weight:900;box-shadow:0 10px 20px rgba(15,23,42,.12);cursor:help}.reservation-block span{font-size:.68rem;opacity:.88}.reservation-pill{z-index:7;align-self:center;display:grid;min-width:0;gap:.08rem;margin:.45rem .35rem;border-radius:999px;padding:.52rem .75rem;color:#fff;font-size:.76rem;font-weight:900;line-height:1.15;box-shadow:0 10px 20px rgba(15,23,42,.14);cursor:help}.reservation-pill strong,.reservation-pill span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reservation-pill span{font-size:.68rem;opacity:.9}.reservation-confirmed{background:linear-gradient(135deg,#059669,#0f766e)}.reservation-pending{background:linear-gradient(135deg,#d97706,#b45309)}.reservation-checked_in{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.reservation-checked_out{background:linear-gradient(135deg,#64748b,#475569)}.reservation-cancelled,.reservation-no_show{background:linear-gradient(135deg,#dc2626,#991b1b)}.reservation-refunded{background:linear-gradient(135deg,#7c3aed,#5b21b6)}
@media (min-width:768px){.filter-bar{grid-template-columns:minmax(14rem,1fr) 14rem 14rem auto}.page-heading h2{font-size:2rem}}
.brand-mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:.875rem}
.settings-layout{display:grid;gap:1rem}.settings-nav{display:flex;gap:.5rem;overflow:auto;position:sticky;top:8.5rem;z-index:8}.settings-nav a{white-space:nowrap;border-radius:999px;padding:.55rem .75rem;color:#475467;text-decoration:none;font-size:.8rem;font-weight:900}.settings-nav a:hover{background:#ecfdf3;color:#0f766e}.settings-main{display:grid;gap:1rem}.settings-section{scroll-margin-top:9rem}.settings-grid{display:grid;gap:1rem}.settings-span{grid-column:1/-1}.brand-preview{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;border:1px solid #e4e7ec;border-radius:1rem;background:linear-gradient(135deg,#f8fafc,#f0fdfa)}.brand-preview-mark{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:1.1rem;background:linear-gradient(135deg,#0f766e,#2563eb);color:#fff;font-weight:900;overflow:hidden}.brand-preview-mark img{width:100%;height:100%;object-fit:cover}.brand-preview strong,.brand-preview span{display:block}.brand-preview strong{font-size:1.15rem}.brand-preview span{color:#667085;font-size:.9rem}.settings-toggle{display:flex;align-items:center;gap:.6rem;min-height:2.7rem;border:1px solid #e4e7ec;border-radius:.8rem;background:#fff;padding:.65rem .75rem;color:#344054;font-size:.9rem;font-weight:800}.settings-toggle input{width:auto;accent-color:#0f766e}.settings-checks{display:flex;flex-wrap:wrap;gap:.6rem}.settings-note{margin:1rem 0 0;color:#667085}.role-grid{display:grid;gap:.75rem}.role-card{display:flex;align-items:center;justify-content:space-between;border:1px solid #e4e7ec;border-radius:.85rem;background:#fff;padding:.85rem 1rem}.role-card span{color:#475467;font-weight:800}.role-card strong{font-size:1.35rem}.settings-savebar{position:sticky;bottom:1rem;display:flex;gap:.75rem;align-items:center;justify-content:flex-end;border:1px solid rgba(226,232,240,.9);border-radius:1rem;background:rgba(255,255,255,.9);padding:.85rem;box-shadow:0 16px 36px rgba(15,23,42,.1);backdrop-filter:blur(18px)}
@media (min-width:768px){.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1180px){.settings-layout{grid-template-columns:17rem minmax(0,1fr);align-items:start}.settings-nav{display:grid;top:6rem}.settings-nav a{white-space:normal}.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.role-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#344054;padding:.62rem .85rem;font:inherit;font-size:.85rem;font-weight:900;cursor:pointer;box-shadow:0 1px 2px rgba(16,24,40,.04)}.theme-toggle-icon{font-size:1rem;line-height:1}.topbar-actions{display:flex;flex-wrap:wrap}
html[data-theme=dark]{color-scheme:dark;--ink:#e5eefb;--muted:#9aa8bd;--line:#263348;--surface:#111827;--surface-2:#0b1220;--shadow:0 18px 48px rgba(0,0,0,.35)}
html[data-theme=dark] body{background:linear-gradient(135deg,#070b12 0%,#0b1220 45%,#111827 100%);color:#e5eefb}
html[data-theme=dark] .admin-sidebar{background:rgba(10,16,28,.9);border-color:#243044}
html[data-theme=dark] .admin-topbar{background:rgba(11,18,32,.82);border-color:#243044}
html[data-theme=dark] .brand-name,html[data-theme=dark] .topbar-title,html[data-theme=dark] .page-heading h2,html[data-theme=dark] .page-hero h2,html[data-theme=dark] .panel h3,html[data-theme=dark] .kpi-card strong,html[data-theme=dark] .hero-stat strong,html[data-theme=dark] .tape-date strong,html[data-theme=dark] .page-hero h2{color:#f8fafc}
html[data-theme=dark] .brand-subtitle,html[data-theme=dark] .topbar-kicker,html[data-theme=dark] .page-hero-copy,html[data-theme=dark] .kpi-card p,html[data-theme=dark] .hero-stat-label,html[data-theme=dark] .form-label,html[data-theme=dark] .settings-note,html[data-theme=dark] .empty-state,html[data-theme=dark] .tape-room>span:not(.status-pill),html[data-theme=dark] .brand-preview span{color:#9aa8bd}
html[data-theme=dark] .sidebar-section-title{color:#748196}
html[data-theme=dark] .sidebar-link{color:#cbd5e1}
html[data-theme=dark] .sidebar-link:hover{background:#172033;color:#5eead4}
html[data-theme=dark] .sidebar-link-active{background:rgba(20,184,166,.14);color:#5eead4;box-shadow:inset 0 0 0 1px rgba(94,234,212,.2)}
html[data-theme=dark] .sidebar-link-icon{background:#172033;color:#9aa8bd}
html[data-theme=dark] .sidebar-link-active .sidebar-link-icon{background:#0f766e;color:#fff}
html[data-theme=dark] .quick-action,html[data-theme=dark] .logout-button,html[data-theme=dark] .btn-secondary,html[data-theme=dark] .btn-compact,html[data-theme=dark] .theme-toggle{background:#111827;border-color:#334155;color:#e2e8f0;box-shadow:none}
html[data-theme=dark] .quick-action:hover,html[data-theme=dark] .logout-button:hover,html[data-theme=dark] .btn-secondary:hover,html[data-theme=dark] .btn-compact:hover,html[data-theme=dark] .theme-toggle:hover{background:#172033;color:#5eead4}
html[data-theme=dark] .quick-action-primary,html[data-theme=dark] .btn-primary{background:#0f766e;border-color:#0f766e;color:#fff}
html[data-theme=dark] .panel,html[data-theme=dark] .kpi-card,html[data-theme=dark] .hero-stat,html[data-theme=dark] .filter-bar,html[data-theme=dark] .data-table-wrap,html[data-theme=dark] .tape-chart-wrap,html[data-theme=dark] .settings-toggle,html[data-theme=dark] .role-card{background:rgba(17,24,39,.92);border-color:#263348;box-shadow:0 10px 28px rgba(0,0,0,.28)}
html[data-theme=dark] .page-hero,html[data-theme=dark] .brand-preview{background:linear-gradient(135deg,rgba(17,24,39,.96),rgba(13,35,45,.9));border-color:#263348;box-shadow:0 18px 48px rgba(0,0,0,.35)}
html[data-theme=dark] .report-tabs,html[data-theme=dark] .settings-nav,html[data-theme=dark] .tape-legend,html[data-theme=dark] .settings-savebar{background:rgba(17,24,39,.9);border-color:#263348;box-shadow:0 14px 34px rgba(0,0,0,.28)}
html[data-theme=dark] .report-tabs a,html[data-theme=dark] .settings-nav a,html[data-theme=dark] .tape-legend span,html[data-theme=dark] .role-card span{color:#cbd5e1}
html[data-theme=dark] .report-tabs a:hover,html[data-theme=dark] .settings-nav a:hover{background:#172033;color:#5eead4}
html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea,html[data-theme=dark] .form-input{background:#0b1220;border-color:#334155;color:#e5eefb}
html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#64748b}
html[data-theme=dark] .data-table th,html[data-theme=dark] .tape-corner,html[data-theme=dark] .tape-date{background:#0b1220;border-color:#263348;color:#9aa8bd}
html[data-theme=dark] .data-table th,html[data-theme=dark] .data-table td,html[data-theme=dark] .tape-room,html[data-theme=dark] .tape-cell{border-color:#263348}
html[data-theme=dark] .data-table tbody tr:hover{background:#172033}
html[data-theme=dark] .tape-room,html[data-theme=dark] .tape-cell{background:#111827}
html[data-theme=dark] .tape-date.is-today,html[data-theme=dark] .tape-cell.is-today{background:rgba(15,118,110,.16)}
html[data-theme=dark] .tape-cell.room-blocked{background:repeating-linear-gradient(135deg,#111827,#111827 8px,#0b1220 8px,#0b1220 16px)}
.tape-chart{display:block;min-width:1480px}.tape-row{position:relative;display:grid;grid-template-columns:var(--tape-columns);min-height:var(--tape-row-height,4.75rem)}.tape-header{position:sticky;top:0;z-index:12;min-height:auto}.tape-cell{min-width:0}.tape-section-label{position:sticky;left:0;z-index:8;border-top:1px solid #e4e7ec;border-bottom:1px solid #e4e7ec;background:#f8fafc;padding:.65rem .85rem;color:#475467;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.tape-row-unassigned .tape-room,.tape-row-unassigned .tape-cell{background:#fffbeb}.reservation-pill{grid-row:1}.reservation-pill.continues-from-before{border-top-left-radius:.35rem;border-bottom-left-radius:.35rem}.reservation-pill.continues-after{border-top-right-radius:.35rem;border-bottom-right-radius:.35rem}html[data-theme=dark] .tape-section-label{border-color:#263348;background:#0b1220;color:#cbd5e1}html[data-theme=dark] .tape-row-unassigned .tape-room,html[data-theme=dark] .tape-row-unassigned .tape-cell{background:rgba(180,83,9,.16)}
.reservation-pill{position:absolute;top:calc(1rem + (var(--reservation-lane,0) * 2.8rem));left:calc(190px + (var(--reservation-start,0) * 120px) + .35rem);width:calc((var(--reservation-span,1) * 120px) - .7rem);margin:0}
html[data-theme=dark] .mini-chart{background:linear-gradient(180deg,#0b1220,#111827)}
html[data-theme=dark] .progress-track{background:#263348}
html[data-theme=dark] .alert-success{background:rgba(20,83,45,.28);border-color:#166534;color:#bbf7d0}
html[data-theme=dark] .alert-danger{background:rgba(127,29,29,.28);border-color:#991b1b;color:#fecaca}
.sidebar-collapse-toggle{display:none;width:100%;align-items:center;justify-content:center;gap:.45rem;margin-top:1rem;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;padding:.55rem .75rem;font:inherit;font-size:.85rem;font-weight:800;cursor:pointer}@media (min-width:1024px){.sidebar-collapse-toggle{display:inline-flex}.admin-shell.sidebar-collapsed{grid-template-columns:5.25rem 1fr}.admin-shell.sidebar-collapsed .admin-sidebar{padding-inline:.75rem}.admin-shell.sidebar-collapsed .sidebar-brand{justify-content:center}.admin-shell.sidebar-collapsed .brand-lockup{justify-content:center}.admin-shell.sidebar-collapsed .brand-lockup>span:not(.brand-mark),.admin-shell.sidebar-collapsed .sidebar-brand form,.admin-shell.sidebar-collapsed .sidebar-section-title,.admin-shell.sidebar-collapsed .sidebar-link span:not(.sidebar-link-icon),.admin-shell.sidebar-collapsed .sidebar-collapse-toggle span:not([data-sidebar-toggle-icon]){display:none}.admin-shell.sidebar-collapsed .sidebar-link{justify-content:center;padding-inline:.5rem}}html[data-theme=dark] .sidebar-collapse-toggle{background:#111827;border-color:#334155;color:#e2e8f0}
html[data-theme=dark] .bg-white{background:#111827}.text-slate-500,html[data-theme=dark] .text-slate-500{color:#9aa8bd}html[data-theme=dark] .text-slate-600,html[data-theme=dark] .text-slate-700{color:#cbd5e1}
