*{box-sizing:border-box}:root{--bg:#f5f6fa;--surface:#fff;--text:#171821;--muted:#74798a;--border:#e5e7ee;--accent:#6757e8;--sidebar:#15161d;--success:#1e9d70}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none}.app{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;height:100vh;padding:22px 16px;background:var(--sidebar);color:#fff;display:flex;flex-direction:column;overflow:auto}.brand,.login-brand{display:flex;align-items:center;gap:11px}.brand{padding:0 7px 22px}.brand-mark{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:800}.brand span,.login-brand span{display:block;color:#9498a7;font-size:11px;margin-top:3px}.sidebar nav{display:grid;gap:3px}.sidebar nav a{padding:10px 12px;border-radius:8px;color:#d9dbe4;font-size:13px}.sidebar nav a:hover{background:#282a34;color:#fff}.coming{margin-top:22px;padding:14px 10px;border-top:1px solid #2b2d37;display:grid;gap:8px}.coming b{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#777c8c}.coming span{font-size:11px;color:#6f7482}.sidebar-bottom{margin-top:auto;padding-top:18px;border-top:1px solid #2b2d37;display:grid;gap:10px;font-size:12px}.sidebar-bottom button{width:100%;padding:9px;border:1px solid #343640;border-radius:8px;background:transparent;color:#ddd;cursor:pointer}.content{grid-column:2;padding:34px 38px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar h1{margin:4px 0 5px;font-size:29px}.topbar p,.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;color:var(--accent)}.status{padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:#fff;font-size:12px}.status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--success);margin-right:7px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.cards article,.panel{border:1px solid var(--border);border-radius:14px;background:var(--surface)}.cards article{padding:20px}.cards span{display:block;color:var(--muted);font-size:12px}.cards strong{display:block;margin-top:9px;font-size:22px}.panel{padding:22px;margin-bottom:16px}.panel h2{margin:0 0 15px;font-size:18px}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:0 14px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);font-size:12px;font-weight:700;cursor:pointer}.button.primary{background:var(--accent);border-color:var(--accent);color:#fff}table{width:100%;border-collapse:collapse}th,td{padding:12px 10px;border-bottom:1px solid var(--border);text-align:left;font-size:13px}th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}tr:last-child td{border-bottom:0}.pill{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f0f1f5;font-size:10px;font-weight:700}.form-panel{max-width:980px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field label{display:block;margin-bottom:6px;font-size:12px;font-weight:700}.field input:not([type=checkbox]),.field select,.field textarea,.search input{width:100%;padding:10px 11px;border:1px solid #d9dce5;border-radius:8px;background:#fff;font:inherit}.field .error{display:block;color:#b42318;margin-top:5px}.form-panel .actions{justify-content:flex-end;margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.search{display:flex;gap:8px;max-width:560px;margin-bottom:16px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.roomgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.roomtile{padding:14px;border:1px solid var(--border);border-radius:10px;background:#fafbfc;display:grid;gap:8px}.roomtile>div{display:flex;justify-content:space-between}.roomtile.occupied{background:#f4f1ff;border-color:#dcd5ff}.roomtile small{color:var(--muted)}.free{color:var(--success);font-weight:700;font-size:12px}.hk{display:flex;gap:5px;flex-wrap:wrap}.hk form{margin:0}.hk button{border:1px solid var(--border);background:#fff;border-radius:6px;padding:5px 7px;font-size:10px;cursor:pointer}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f4f5f9}.login-card{width:100%;max-width:420px;padding:36px;border:1px solid var(--border);border-radius:16px;background:#fff}.login-brand{margin-bottom:28px}.login-card label{display:block;margin:15px 0 6px;font-size:12px;font-weight:700}.login-card input{width:100%;padding:11px;border:1px solid #d9dce5;border-radius:8px}.login-card .primary{width:100%;margin-top:20px;padding:11px;border:0;border-radius:8px;background:var(--accent);color:#fff;font-weight:700}.login-footer{margin-top:22px;text-align:center;color:var(--muted);font-size:11px}@media(max-width:900px){.app{display:block}.sidebar{position:static;width:100%;height:auto}.content{padding:22px}.cards{grid-template-columns:1fr 1fr}.two,.form-grid{grid-template-columns:1fr}}@media(max-width:560px){.cards{grid-template-columns:1fr}.topbar{display:block}.topbar>.actions{margin-top:12px}}

/* PMS 0.2.1 premium shell */
:root{--sidebar-width:276px;--sidebar:#11131a;--sidebar-soft:#1a1d27;--sidebar-border:#292d39;--accent:#6557f5;--accent-soft:#eeecff;--bg:#f6f7fb;--surface:#fff;--text:#181a22;--muted:#727789;--border:#e2e5ed;--shadow:0 1px 2px rgba(20,24,40,.03),0 8px 30px rgba(20,24,40,.035)}
body{background:var(--bg);font-size:15px}.app,.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
.sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:var(--sidebar-width);height:100vh;padding:22px 14px 16px;background:var(--sidebar);color:#fff;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;border-right:1px solid #20232d}
.brand{padding:0 8px 22px;gap:12px}.brand-mark{width:40px;height:40px;border-radius:12px;box-shadow:0 7px 18px rgba(101,87,245,.28)}.brand-copy{min-width:0}.brand-copy strong{display:block;font-size:15px}.brand-copy span{font-size:11px;color:#8f95a6}
.nav-section-label{padding:9px 11px 7px;color:#666d80;font-size:9px;font-weight:800;letter-spacing:.15em}.config-label{margin-top:12px}.main-nav{display:grid;gap:3px}.sidebar .main-nav a{display:flex;align-items:center;gap:11px;min-height:42px;padding:0 11px;border-radius:9px;color:#cdd1dc;font-size:13px;font-weight:550;transition:.15s ease}.sidebar .main-nav a:hover{background:#1c1f29;color:#fff}.sidebar .main-nav a.active{background:#242534;color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.nav-icon{width:19px;min-width:19px;text-align:center;color:#858b9c;font-size:15px}.main-nav a.active .nav-icon{color:#a99fff}
.future-modules{margin-top:17px;padding-top:9px;border-top:1px solid var(--sidebar-border)}.future-item{display:grid;grid-template-columns:19px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:38px;padding:0 11px;color:#73798a;font-size:11px}.future-item span:nth-child(2){white-space:normal;line-height:1.25}.future-item em{font-style:normal;font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:#5e6474;border:1px solid #2b2f3a;border-radius:999px;padding:3px 5px}
.sidebar-bottom{margin-top:auto;padding:15px 5px 0;border-top:1px solid var(--sidebar-border);gap:10px}.user-chip{display:flex;align-items:center;gap:9px;padding:2px 3px}.avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#252936;color:#dcdfff;font-weight:800}.user-chip small,.user-chip strong{display:block}.user-chip small{font-size:9px;color:#6f7585}.user-chip strong{font-size:11px;margin-top:2px}.sidebar-bottom button{min-height:36px;border-color:#303442;background:#171922}.sidebar-bottom button:hover{background:#20232d;color:#fff}
.content{grid-column:2;padding:0;min-width:0}.content-inner{width:min(100%,1500px);margin:0 auto;padding:38px 44px 70px}.topbar{margin-bottom:28px}.topbar h1{font-size:30px;letter-spacing:-.035em;margin:5px 0 6px}.topbar p{margin:0;font-size:14px}.eyebrow{font-size:9px;letter-spacing:.15em}.actions{gap:8px}.button{min-height:38px;border-radius:9px;padding:0 13px}.button.primary{box-shadow:0 4px 12px rgba(101,87,245,.15)}
.cards{gap:15px}.cards article,.panel{border-color:var(--border);box-shadow:var(--shadow)}.panel{padding:0;overflow:hidden;margin-bottom:18px}.panel>h2{margin:0;padding:21px 24px 14px;font-size:18px;letter-spacing:-.02em}.panel>form,.panel>.actions,.panel>.search,.panel>.roomgrid,.panel>p{margin-left:24px;margin-right:24px}.panel table{border-top:1px solid var(--border)}
table{table-layout:auto}th,td{padding:13px 24px;vertical-align:middle}th{background:#fafbfc;color:#747a8b;font-size:9px;font-weight:800;letter-spacing:.08em;white-space:nowrap}td{font-size:13px}tbody tr:hover td{background:#fbfbfe}td a{font-weight:700}.pill{padding:5px 8px}.roomgrid{padding-bottom:22px}.search{margin-top:0;padding-top:0}.two{gap:18px}
@media(max-width:1100px){:root{--sidebar-width:240px}.content-inner{padding:30px 28px}.future-item em{display:none}}
@media(max-width:900px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;max-height:none}.future-modules{display:none}.content{display:block}.content-inner{padding:24px}.cards{grid-template-columns:1fr 1fr}.two,.form-grid{grid-template-columns:1fr}}
@media(max-width:560px){.content-inner{padding:20px 14px}.cards{grid-template-columns:1fr}.topbar{display:block}.topbar>.actions{margin-top:14px}th,td{padding:11px 14px}.panel>h2{padding-left:16px;padding-right:16px}}
