:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#edf2ff;background:#0b0f17;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-width:320px;min-height:100%}body{min-height:100vh;background:radial-gradient(circle at top left,rgba(127,153,219,.1),transparent 30%),radial-gradient(circle at bottom right,rgba(86,112,168,.08),transparent 26%),linear-gradient(180deg,#0b1018,#0d121b 44%,#0a0f16)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.admin-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;gap:0}.sidebar-shell{position:relative}.sidebar{display:flex;flex-direction:column;justify-content:space-between;padding:28px 22px;border-right:1px solid rgba(171,186,220,.08);background:linear-gradient(180deg,#131925f5,#0f141ff0);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:inset -1px 0 #ffffff05}.mobile-topbar,.sidebar-backdrop{display:none}.mobile-topbar-title{display:block;margin-top:2px;color:#f4f7ff;font-size:18px;letter-spacing:-.03em}.mobile-nav-toggle{padding:10px 14px;border:1px solid rgba(173,187,215,.1);border-radius:14px;background:#ffffff0a;color:#f5f7fb}.brand-block{margin-bottom:28px}.brand-block h1,.page-header h2{margin:0;font-size:28px;line-height:1.1;letter-spacing:-.03em}.brand-block p,.page-header p,.metric-card p,.user-role{color:#95a2bb}.brand-eyebrow{display:inline-block;margin-bottom:8px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#aabcf0}.nav-list{display:flex;flex-direction:column;gap:10px}.nav-item{width:100%;padding:13px 14px;border:1px solid rgba(255,255,255,.04);border-radius:16px;background:#ffffff03;color:#bec9dd;text-align:left;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.nav-item:hover{background:#ffffff0a;border-color:#aabbdf1f;color:#f5f7ff;transform:translate(2px)}.nav-item-active{background:linear-gradient(180deg,#7085b829,#6075a61a);border-color:#97abdb3d;color:#fff;box-shadow:0 8px 24px #090d1547}.sidebar-footer{display:flex;flex-direction:column;gap:12px}.user-badge{display:flex;flex-direction:column;gap:5px;padding:15px;border-radius:18px;border:1px solid rgba(255,255,255,.04);background:linear-gradient(180deg,#ffffff0a,#ffffff05)}.user-name{font-weight:600;color:#f4f7ff}.ghost-button,.primary-button{border:1px solid rgba(173,187,215,.1);border-radius:16px;background:#ffffff0a;color:#f5f7fb;transition:background-color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.ghost-button:hover,.primary-button:hover{background:#ffffff12;border-color:#a2b4dc38;transform:translateY(-1px);box-shadow:0 10px 24px #0a0e163d}.ghost-button,.primary-button{padding:12px 16px}.primary-button{background:linear-gradient(135deg,#6d84be,#89a0d8);border:none;color:#09101a;font-weight:700}.primary-button:hover{background:linear-gradient(135deg,#7890ca,#94a9dd)}.ghost-button{background:#ffffff06}.ghost-button:disabled,.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.content-area{padding:32px;background:linear-gradient(180deg,#ffffff03,#fff0),transparent}.page-section{display:flex;flex-direction:column;gap:24px;max-width:1320px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:4px 2px 2px}.page-header-copy{display:flex;flex-direction:column}.page-header h2{color:#f4f7ff}.page-header p{max-width:760px;margin-top:8px;line-height:1.65}.page-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.section-eyebrow{display:inline-flex;align-items:center;width:fit-content;margin-bottom:10px;padding:6px 10px;border:1px solid rgba(166,181,215,.14);border-radius:999px;background:#ffffff06;color:#a5b5d2;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.metrics-grid,.content-grid{display:grid;gap:16px}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.single-column{grid-template-columns:1fr}.metric-card,.panel-card,.table-card,.login-card{padding:22px;border:1px solid rgba(176,189,217,.08);border-radius:26px;background:linear-gradient(180deg,#181e2beb,#111621f5);box-shadow:0 18px 44px #0000002e,inset 0 1px #ffffff05}.metric-card{display:flex;flex-direction:column;gap:10px;min-height:144px}.metric-card span{font-size:14px;color:#9fadc4}.metric-card strong{font-size:32px;letter-spacing:-.04em;color:#f5f7ff}.metric-label{text-transform:uppercase;letter-spacing:.08em}.metric-card-1{background:linear-gradient(180deg,#212a3bf0,#121722f5)}.metric-card-2{background:linear-gradient(180deg,#1f2d38f0,#121722f5)}.metric-card-3{background:linear-gradient(180deg,#2a273bf0,#121722f5)}.metric-card-4{background:linear-gradient(180deg,#233030f0,#121722f5)}.panel-card h3{margin:0 0 14px;color:#f0f4ff}.panel-card-accent{border-color:#94aadc1a;background:linear-gradient(180deg,#1c2535f5,#121823fa)}.panel-card-muted{background:linear-gradient(180deg,#151b27f5,#10151ffa)}.panel-list{margin:0;padding-left:18px;color:#c2ccde;line-height:1.7}.panel-list li+li{margin-top:8px}.panel-note{margin:0 0 16px;color:#96a3bc}.table-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.05)}.toolbar-badges{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.table-toolbar h3{margin:0;color:#f2f6ff}.table-toolbar p{margin:8px 0 0;color:#94a1b8;line-height:1.6}.data-table{width:100%;border-collapse:collapse;overflow:hidden}.data-table th,.data-table td{padding:15px 12px;text-align:left;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:top}.data-table th{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#8f9db4;font-weight:700}.data-table td{color:#edf2ff}.data-table td span{display:block;color:#8795ad;font-size:13px}.data-table tbody tr{transition:background-color .18s ease}.data-table tbody tr:hover{background:#ffffff06}.data-stack{display:flex;flex-direction:column;gap:4px}.bookings-sections{display:grid;gap:18px}.bookings-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.bookings-tab{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.06);border-radius:18px;background:#ffffff05;color:#c2ccde;transition:background-color .2s ease,border-color .2s ease,transform .2s ease}.bookings-tab span{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8f9db4}.bookings-tab strong{font-size:18px;color:#f4f7ff}.bookings-tab:hover{transform:translateY(-1px);background:#ffffff09}.bookings-tab-active{border-color:#97abdb3d;background:linear-gradient(180deg,#7085b829,#6075a61a)}.booking-section{display:grid;gap:12px}.booking-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.booking-section-head h4{margin:0;color:#f4f7ff;font-size:18px}.booking-card{display:grid;gap:14px;padding:18px;border:1px solid rgba(255,255,255,.06);border-radius:20px;background:#ffffff06}.booking-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-field{display:flex;flex-direction:column;gap:4px}.booking-field span,.booking-progress-meta span{color:#8f9db4;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.booking-field strong,.booking-progress-meta strong{color:#f4f7ff;font-size:14px}.booking-progress{display:grid;gap:8px}.booking-progress-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.progress-track{width:100%;height:10px;border-radius:999px;background:#ffffff14;overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#78c69b,#9ce2bc)}.booking-actions{display:flex;flex-wrap:wrap;gap:10px}.login-screen{display:grid;place-items:center;min-height:100vh;padding:24px}.login-card{width:min(720px,100%);background:linear-gradient(180deg,#171c28f5,#121722fa)}.role-picker{display:grid;grid-template-columns:1fr;gap:16px;margin-top:24px}.form-field{display:flex;flex-direction:column;gap:10px}.form-field span{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8f9db4}.form-field input,.form-field select{width:100%;padding:14px 16px;border:1px solid rgba(255,255,255,.07);border-radius:16px;background:#ffffff06;color:#f5f7fb;outline:none;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.form-field input:focus,.form-field select:focus{border-color:#9cb2e261;background:#ffffff0b;box-shadow:0 0 0 4px #7a90c11f}.form-error{padding:12px 14px;border:1px solid rgba(223,118,118,.22);border-radius:14px;background:#d060601a;color:#f3bbbb}.login-hint{display:flex;flex-direction:column;gap:8px;margin-top:20px;padding:16px;border:1px solid rgba(255,255,255,.06);border-radius:18px;background:#ffffff06}.login-hint strong{font-size:14px}.login-hint span{color:#98a3b7;font-size:14px}.staff-form{display:grid;gap:16px}.role-description{padding:14px 16px;border:1px solid rgba(255,255,255,.06);border-radius:16px;background:#ffffff06;color:#98a3b7;line-height:1.65}.soft-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:7px 11px;border:1px solid rgba(180,193,219,.1);border-radius:999px;background:#ffffff09;color:#d8e1f1;font-size:12px;font-weight:600}.status-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.status-active{background:#51b07c24;color:#a2e0b8}.status-info{background:#6e90d829;color:#bad0ff}.status-warn{background:#c6a35c29;color:#f0d39d}.status-danger{background:#c2636329;color:#f1b0b0}.status-muted{background:#ffffff12;color:#b8c2d6}.empty-state{padding:18px;border:1px dashed rgba(169,183,212,.14);border-radius:18px;background:#ffffff05;color:#96a3bc;text-align:center}strong{color:#f4f7ff}@media(max-width:1100px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.sidebar-shell{min-height:76px}.mobile-topbar{position:fixed;z-index:40;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.07);background:#0b1018eb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-backdrop{position:fixed;inset:0;z-index:35;border:0;background:#04070c8f;opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebar-backdrop-visible{opacity:1;pointer-events:auto}.sidebar{position:fixed;z-index:45;top:0;left:0;bottom:0;width:min(86vw,320px);border-right:1px solid rgba(255,255,255,.07);transform:translate(-100%);transition:transform .22s ease}.sidebar-open{transform:translate(0)}.content-area{padding-top:108px}.content-grid,.role-picker{grid-template-columns:1fr}}@media(max-width:768px){.data-table{display:block;border:0}.data-table thead{display:none}.data-table tbody{display:flex;flex-direction:column;gap:12px}.data-table tr{display:flex;flex-direction:column;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:16px;gap:12px}.data-table tbody tr:hover{background:#ffffff0d}.data-table td{display:flex;justify-content:space-between;align-items:center;padding:0;border:none;text-align:right;width:100%}.data-table td:empty{display:none}.data-table td:before{content:attr(data-label);color:#8f9db4;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-right:12px;text-align:left}.data-stack{text-align:right;align-items:flex-end}.data-table td:last-child{margin-top:8px;padding-top:12px;border-top:1px solid rgba(255,255,255,.06);justify-content:flex-end}}@media(max-width:640px){.content-area,.sidebar{padding:20px}.metric-card,.panel-card,.table-card,.login-card{padding:18px;border-radius:22px}.page-header{flex-direction:column}.page-header-actions,.table-toolbar{width:100%}.toolbar-badges{justify-content:flex-start}.table-toolbar{flex-direction:column}.metrics-grid{grid-template-columns:1fr}.data-table{display:block;overflow-x:auto}.mobile-topbar{padding:12px 16px}.mobile-nav-toggle{padding:9px 12px;font-size:14px}.content-area{padding:94px 16px 20px}.nav-item,.ghost-button,.primary-button{min-height:44px}.booking-card-top,.booking-progress-meta{flex-direction:column;align-items:flex-start}.booking-grid{grid-template-columns:1fr}.booking-actions{flex-direction:column}.bookings-tabs{grid-template-columns:1fr}}
