:root{background:#f3f6fa;color:#193551}.sidebar,.auth-art{background:#102a4e}.logo b{background:#bcd4ff;color:#09244e}.auth-art h1 em{color:#b6d6ff}.nav a.active{background:#dceaff;color:#154a83}.btn{border-color:#dae4f5;color:#194d84}.btn.primary{background:#0022ee;border-color:#0022ee;color:white}.btn.primary:hover{background:#1537ee}.product-tag,.eyebrow{color:#83a7dc}.metric,.panel{border-color:#dce6f4}.note{background:#e9f0fe;color:#245181;border-color:#c7dbff}.topbar{border-color:#dce7f6}.auth-art .eyebrow{color:#b3cdff}.auth-art .auth-tags span{background:#ffffff18}.reservation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.reservation-card{padding:20px;border:1px solid #d9e5f5;border-radius:17px;background:#fff;display:flex;flex-direction:column;gap:12px}.reservation-card h2{margin:0;font-size:17px}.reservation-card .dates{display:flex;gap:10px;flex-wrap:wrap}.reservation-card .dates span{padding:9px 12px;background:#edf3ff;color:#335c8d;border-radius:9px;font-size:11px}.reservation-card .actions{display:flex;gap:8px;flex-wrap:wrap}.hotel-status{border-radius:20px;padding:5px 9px;background:#e7f0ff;color:#2a5c8c;font-size:11px;font-weight:700}.hotel-status.checked_in{background:#e1f7e9;color:#26744a}.hotel-status.cancelled,.hotel-status.no_show{background:#f9e8e6;color:#974b47}.hotel-status.dirty{background:#fff0d9;color:#956b2f}.hotel-status.clean{background:#dcf4e4;color:#2b7e54}.hotel-room-table{min-width:620px}.hotel-caption{font-size:11px;color:#728da9;line-height:1.65}.hotel-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:13px}.hotel-stat-grid .metric{min-width:0}.hotel-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hotel-details strong{display:block;color:#345b86}.hotel-detail{padding:12px;border:1px solid #d7e5f8;border-radius:10px}.hotel-footer{margin-top:auto}.form-stack{display:grid;gap:14px}.auth-tags{display:flex;gap:8px;flex-wrap:wrap}.auth-tags span{padding:7px 10px;border-radius:20px;font-size:10px}.hotel-form .form-grid{grid-template-columns:1fr 1fr}.hotel-form .form-grid .full{grid-column:1/-1}#modal .modal-wrap{padding:27px}#toast{position:fixed;bottom:18px;right:18px;z-index:90;max-width:420px;padding:13px 20px;border-radius:12px;background:#183e66;color:#fff}#toast.error{background:#893b39}@media(max-width:720px){.hotel-form .form-grid{grid-template-columns:1fr}.reservation-grid{grid-template-columns:1fr}.hotel-details{grid-template-columns:1fr}.hotel-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-card{padding:16px}}

/* Hotel operations: wide calendar remains scrollable and readable on mobile. */
.ht-calendar-scroll{max-width:100%;overflow:auto;margin:15px 0}
.ht-calendar{border-collapse:separate;border-spacing:3px;white-space:nowrap;min-width:max-content;width:100%;font-size:12px}
.ht-calendar th,.ht-calendar td{padding:10px 8px;min-width:82px;text-align:center;border:1px solid #c6d5e3;border-radius:8px}
.ht-calendar th:first-child{position:sticky;left:0;z-index:2;background:#e6effb;min-width:135px}
.ht-calendar th small{display:block;font-size:10px;color:#647b94;font-weight:normal}
.ht-calendar .ht-occupied{background:#dbe8fa;color:#144879;font-weight:700}
.ht-calendar .ht-available{background:#eef7f4;color:#317f6f}
.ht-group-rooms{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;max-height:230px;overflow:auto;border:1px solid #cbd9e7;border-radius:12px;padding:12px}
.ht-group-rooms legend{font-size:12px;font-weight:700;color:#40668b}
.ht-group-rooms label{display:flex;gap:9px;align-items:center;font-size:12px}
.ht-group-rooms input{width:16px;height:16px;flex:none}
.ht-folio{line-height:1.65}
.ht-folio li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #dbe4ed}
.ht-folio strong{color:inherit}
@media(max-width:700px){.ht-calendar th,.ht-calendar td{padding:9px 5px;min-width:70px}.ht-group-rooms{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.ht-group-rooms{grid-template-columns:1fr}}
