/* Admin ERP theme */
:root{--p:#0f5c52;--p2:#0a443d;--pl:#eaf5f2;--gold:#c9a45c;--ink:#16221f;--mut:#6b7772;--line:#e7ebe9;--bg:#f4f6f5;--card:#fff;--r:14px;--sh:0 1px 2px #0a2a2510,0 6px 22px #0a2a250a;
--serif:"Cormorant Garamond",Georgia,serif;--sans:Inter,"Segoe UI",system-ui,-apple-system,sans-serif}
*{box-sizing:border-box}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--bg);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--p);text-decoration:none}h1,h2,h3{margin:0 0 .5em;font-weight:650;letter-spacing:-.01em}.muted{color:var(--mut)}.right{text-align:right}.num{text-align:right;font-variant-numeric:tabular-nums}.ic{flex:none;vertical-align:-.22em}
/* shell */
.side{position:fixed;inset:0 auto 0 0;width:248px;background:linear-gradient(180deg,#08241f,#0b312b);color:#b9d3cc;overflow:auto;padding:18px 14px;z-index:20}
.brand{display:flex;align-items:center;gap:12px;padding:4px 8px 20px;margin-bottom:6px}.brand i{width:38px;height:38px;border-radius:11px;background:var(--gold);color:#08241f;display:grid;place-items:center;font:700 22px var(--serif);font-style:normal}
.brand b{display:block;color:#fff;font:700 18px/1.1 var(--serif);letter-spacing:.01em}.brand small{color:#7fb3a7;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.mg{font-size:10.5px;text-transform:uppercase;letter-spacing:.14em;color:#6fa397;margin:20px 10px 6px;font-weight:600}
.side a{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:10px;color:#c9ded8;font-size:13.5px;font-weight:500;transition:.15s}.side a .ic{opacity:.8}.side a:hover{background:#ffffff12;color:#fff}.side a.on{background:#ffffff1c;color:#fff;box-shadow:inset 3px 0 0 var(--gold)}.side a.on .ic{color:var(--gold);opacity:1}
.main{margin-left:248px;min-height:100vh}.top{display:flex;align-items:center;gap:14px;background:#fffffff2;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:12px 28px;position:sticky;top:0;z-index:10}
.top h1{font-size:19px;margin:0;font-weight:700}.tr{margin-left:auto;display:flex;align-items:center;gap:14px}.who{font-size:13px;font-weight:600;text-align:right;line-height:1.25}.who small{color:var(--mut);display:block;font-size:11px;font-weight:500}
.burger{display:none;border:0;background:none;color:var(--ink);cursor:pointer}.content{padding:26px 28px 60px;max-width:1560px}
.pill{background:var(--pl);color:var(--p2);padding:5px 12px;border-radius:99px;font-weight:600;font-size:12px}
.bsw select{border-radius:99px;padding:7px 14px;font-weight:600;background:var(--pl);border-color:#cfe5df;color:var(--p2)}
/* cards & grid */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;margin-bottom:20px;box-shadow:var(--sh)}.card h3{font-size:15.5px;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.grid{display:grid;gap:18px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g6{grid-template-columns:repeat(6,1fr)}.grid>.card{margin-bottom:0}.grid+.card,.grid+.grid{margin-top:20px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;box-shadow:var(--sh);position:relative;overflow:hidden}.kpi .ki{position:absolute;right:16px;top:16px;width:38px;height:38px;border-radius:11px;background:var(--pl);color:var(--p);display:grid;place-items:center}
.kpi small{color:var(--mut);display:block;font-size:12px;font-weight:500}.kpi b{font-size:25px;display:block;margin:4px 0 2px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.kpi i{font-style:normal;font-size:11.5px;color:var(--mut)}
.up{color:#0b7a55!important}.down{color:#c2362b!important}
/* tables */
table{width:100%;border-collapse:collapse}th,td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#f7faf9;color:#587069;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:650;position:sticky;top:0;white-space:nowrap}
tbody tr{transition:.12s}tbody tr:hover{background:#f9fbfa}tbody tr:last-child td{border-bottom:0}tfoot td{font-weight:700;background:#f7faf9}.tw{overflow-x:auto}
/* buttons & forms */
.btn{display:inline-flex;align-items:center;gap:7px;background:var(--p);color:#fff;border:1px solid var(--p);padding:9px 16px;border-radius:10px;font:600 13px var(--sans);cursor:pointer;transition:.15s;white-space:nowrap}.btn:hover{background:var(--p2);border-color:var(--p2)}
.btn.sm{padding:5px 11px;font-size:12px;border-radius:8px}.btn.ghost{background:#fff;color:var(--p);border-color:#cfdad6}.btn.ghost:hover{background:var(--pl);border-color:var(--p)}.btn.red{background:#c2362b;border-color:#c2362b}.btn.red:hover{background:#a42b21}.btn.gold{background:var(--gold);border-color:var(--gold);color:#2b2008}.btn.gold:hover{background:#b8934d}
input,select,textarea{width:100%;padding:9px 12px;border:1px solid #d6dedb;border-radius:10px;font:inherit;background:#fff;color:var(--ink);transition:.15s}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--p);box-shadow:0 0 0 3px #0f5c5220}
label{display:block;font-size:12px;font-weight:600;color:#3d4f4a}label>*:not(span){margin-top:5px;font-weight:400}.form{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.form .full{grid-column:1/-1}
.bar{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-bottom:16px}.bar>*{width:auto}.bar label{min-width:140px}.bar .sp{margin-left:auto}
.alert{padding:12px 16px;border-radius:12px;margin-bottom:16px;font-weight:500;border:1px solid}.a-ok{background:#ecf8f2;color:#0b5c40;border-color:#bfe3d2}.a-err{background:#fdf0ee;color:#962b1e;border-color:#f2c6bf}
.badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:650;background:#e9eeec;color:#44554f;text-transform:capitalize;white-space:nowrap}
.b-booked,.b-pending,.b-low{background:#fdf1d6;color:#8a5a06}.b-checked_in,.b-checkedin,.b-occupied,.b-in_progress,.b-inprogress{background:#dfeafb;color:#1d4a9c}.b-checkedout,.b-available,.b-paid,.b-done,.b-active,.b-ok{background:#dcf4e8;color:#0b6140}.b-cancelled,.b-maintenance,.b-high,.b-inactive{background:#fde4e1;color:#a22d22}.b-cleaning{background:#ece6fb;color:#5a30b0}
.chart{width:100%;height:auto}.hb-row{display:grid;grid-template-columns:130px 1fr 110px;gap:12px;align-items:center;margin:9px 0}.hb-t{background:#eef3f1;height:9px;border-radius:9px;overflow:hidden}.hb-t i{display:block;height:100%;border-radius:9px}.hb-row b{text-align:right;font-size:12.5px;font-variant-numeric:tabular-nums}
.rack{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.room{border-radius:12px;padding:12px;border:1px solid var(--line);background:#fff;border-left:5px solid #a3b0ab;font-size:12px;box-shadow:var(--sh)}.room b{font:700 20px var(--sans);display:block}
.room.available{border-left-color:#16a37a}.room.occupied{border-left-color:#3b78e0;background:#f3f7ff}.room.cleaning{border-left-color:#8a5cf0;background:#f7f4ff}.room.maintenance{border-left-color:#e0483b;background:#fff5f4}
hr{border:0;border-top:1px solid var(--line);margin:12px 0}
/* login */
.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:#fff}.lv{background:radial-gradient(700px 500px at 80% 10%,#1c7a6b55,transparent 60%),linear-gradient(160deg,#061a17,#0d3b34);color:#fff;padding:60px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.lv:before{content:"";position:absolute;inset:0;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cpath d='M40 4 76 40 40 76 4 40z M40 20 60 40 40 60 20 40z' fill='none' stroke='%23fff'/%3E%3C/svg%3E")}
.lv>*{position:relative}.lv .brand{padding:0}.lv h2{font:600 clamp(38px,4vw,58px)/1.05 var(--serif);margin:0 0 16px}.lv h2 em{color:#e4c98b}.lv p{color:#a9c7c0;max-width:420px;font-size:16px}.lv ul{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px;color:#cfe3de}.lv li{display:flex;gap:10px;align-items:center}.lv li .ic{color:#e4c98b}
.lf{display:grid;place-items:center;padding:40px}.lf form{width:100%;max-width:380px}.lf h2{font:700 28px var(--sans);margin-bottom:4px}.lf .hint{background:var(--pl);border-radius:10px;padding:10px 12px;font-size:12px;color:var(--p2);margin-top:18px}
@media(max-width:1000px){.g4,.g6{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.login{grid-template-columns:1fr}.lv{display:none}}
@media(max-width:760px){.side{transform:translateX(-100%);transition:.2s;box-shadow:0 0 40px #0006}.side.open{transform:none}.main{margin-left:0}.burger{display:block}.g2,.g3,.g4,.g6{grid-template-columns:1fr}.who{display:none}.content{padding:16px 14px 50px}.top{padding:10px 14px}.hb-row{grid-template-columns:90px 1fr 90px}}
@media print{.side,.top,.noprint{display:none!important}.main{margin:0}body{background:#fff}.card{border:0;padding:0;box-shadow:none}}
