/* ========================================================================== */
/* Affinity Hotel Suite V4.12.7 — Vibrant Hospitality Theme                  */
/* Presentation only: new color identity, compact rhythm, modern login.       */
/* ========================================================================== */

/* ---------- Shared palette: intentionally different from V4.12.6 ---------- */
.professional-ui {
    --v7-ink:#20304a;
    --v7-text:#465872;
    --v7-muted:#7a899d;
    --v7-line:#dbe3ef;
    --v7-purple:#7657e8;
    --v7-purple2:#9a6df0;
    --v7-indigo:#536de8;
    --v7-teal:#10a589;
    --v7-teal2:#38c3a5;
    --v7-coral:#ef6f6c;
    --v7-coral2:#f58a74;
    --v7-amber:#eca83f;
    --v7-amber2:#f4c45f;
    --v7-aqua:#35a9d6;
    --v7-aqua2:#62c6e6;
    --v7-mint:#e8faf3;
    --v7-lav:#f3efff;
    --v7-peach:#fff1ea;
    --v7-sun:#fff7dd;
    --v7-sky:#ecf7ff;
    --v7-shadow:0 10px 28px rgba(48,57,92,.09);
    --v7-shadow-hover:0 18px 44px rgba(48,57,92,.14);
    font-size:16.5px !important;
    color:var(--v7-ink);
    background:
        radial-gradient(circle at 92% 7%,rgba(118,87,232,.11),transparent 27%),
        radial-gradient(circle at 11% 14%,rgba(239,111,108,.09),transparent 24%),
        radial-gradient(circle at 72% 88%,rgba(16,165,137,.08),transparent 24%),
        linear-gradient(180deg,#fffaf8 0%,#f7f7ff 46%,#f1f7fb 100%) !important;
}

/* Stronger module identity — visible, not just variable changes */
.professional-ui.module-frontdesk{--module:var(--v7-purple);--module-2:var(--v7-indigo);--module-soft:#f2efff;--module-rgb:118,87,232}
.professional-ui.module-cashiering{--module:#c455b7;--module-2:#8b64e8;--module-soft:#fbecfa;--module-rgb:196,85,183}
.professional-ui.module-pos{--module:var(--v7-teal);--module-2:#26bba0;--module-soft:#e9faf5;--module-rgb:16,165,137}
.professional-ui.module-housekeeping{--module:var(--v7-aqua);--module-2:#5ac2df;--module-soft:#eaf8fd;--module-rgb:53,169,214}
.professional-ui.module-inventory{--module:#e78e2d;--module-2:#f0b64d;--module-soft:#fff4e4;--module-rgb:231,142,45}
.professional-ui.module-banquet{--module:var(--v7-coral);--module-2:#e9619c;--module-soft:#fff0f2;--module-rgb:239,111,108}
.professional-ui.module-admin{--module:#536de8;--module-2:#35a9d6;--module-soft:#edf3ff;--module-rgb:83,109,232}
.professional-ui.module-reports{--module:#8a5ae4;--module-2:#d05ca8;--module-soft:#f7efff;--module-rgb:138,90,228}

.professional-ui .content-wrap{padding:12px 15px 22px !important;max-width:1920px}
.professional-ui .main{background:transparent}

/* ---------- Sidebar: aubergine -> indigo -> teal, not navy-only ---------- */
.professional-ui .sidebar{
    background:
      radial-gradient(circle at 18% 8%,rgba(159,112,240,.22),transparent 23%),
      radial-gradient(circle at 87% 78%,rgba(30,183,158,.16),transparent 25%),
      linear-gradient(180deg,#2c225d 0%,#263568 42%,#174b62 100%) !important;
    box-shadow:12px 0 34px rgba(38,39,82,.16) !important;
}
.professional-ui .brand{height:76px !important;padding:11px 15px !important;border-bottom-color:rgba(255,255,255,.10)!important}
.professional-ui .brand-mark{
    width:45px !important;height:45px !important;border-radius:15px !important;
    background:linear-gradient(135deg,var(--v7-coral) 0%,var(--v7-purple) 52%,var(--v7-teal) 100%) !important;
    box-shadow:0 10px 24px rgba(62,42,142,.32)!important;
}
.professional-ui .brand-copy strong{font-size:18.5px !important}
.professional-ui .brand-copy span{font-size:10.25px !important;color:#d3d8ee!important}
.professional-ui .sidebar-property{
    min-height:52px !important;margin:9px 10px 6px !important;padding:8px 10px !important;border-radius:14px !important;
    background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.055))!important;
    border-color:rgba(255,255,255,.14)!important;
}
.professional-ui .sidebar-property small{font-size:10px!important;color:#c8d5e6!important}
.professional-ui .sidebar-property strong{font-size:14.75px!important}
.professional-ui .sidebar-nav{padding:6px 8px 9px!important}
.professional-ui .nav-group-toggle{min-height:44px!important;font-size:14.75px!important;border-radius:12px!important}
.professional-ui .nav-group-icon{width:34px!important;height:34px!important;border-radius:11px!important;background:rgba(255,255,255,.09)!important}
.professional-ui .nav-group:nth-child(4n+1) .nav-group-icon{color:#a8e8d9!important;background:rgba(33,198,162,.13)!important}
.professional-ui .nav-group:nth-child(4n+2) .nav-group-icon{color:#ffd095!important;background:rgba(239,168,63,.14)!important}
.professional-ui .nav-group:nth-child(4n+3) .nav-group-icon{color:#ffc2c0!important;background:rgba(239,111,108,.14)!important}
.professional-ui .nav-group:nth-child(4n) .nav-group-icon{color:#d8c5ff!important;background:rgba(154,109,240,.16)!important}
.professional-ui .nav-group.open>.nav-group-toggle,
.professional-ui .nav-group-toggle:hover{background:rgba(255,255,255,.105)!important;color:#fff!important}
.professional-ui .nav-leaf{min-height:39px!important;font-size:14.5px!important;color:#d0d7e8!important;border-radius:10px!important}
.professional-ui .nav-leaf.active{
    background:linear-gradient(90deg,rgba(var(--module-rgb),.42),rgba(255,255,255,.08))!important;
    box-shadow:inset 3px 0 rgba(255,255,255,.85),0 8px 20px rgba(26,24,74,.12)!important;
}
.professional-ui .support-chip{background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.055))!important;border:1px solid rgba(255,255,255,.10)!important}

/* ---------- Topbar: warm/colored line, distinctly different ---------- */
.professional-ui .topbar{
    height:66px !important;padding:0 16px !important;
    background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,250,247,.98) 32%,rgba(248,247,255,.98) 68%,rgba(245,253,251,.98))!important;
    border-bottom:0!important;
    box-shadow:0 6px 20px rgba(48,57,92,.06)!important;
}
.professional-ui .topbar::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
    background:linear-gradient(90deg,var(--v7-coral),var(--v7-amber),var(--v7-teal),var(--v7-aqua),var(--v7-purple));
    opacity:.78;
}
.professional-ui .topbar-page small{font-size:10.75px!important;color:#8a769f!important}
.professional-ui .topbar-page strong{font-size:16.25px!important}
.professional-ui .top-search{height:40px!important;border-radius:13px!important;background:#fff!important;border-color:#e0e4ef!important;box-shadow:0 5px 15px rgba(54,63,92,.04)!important}
.professional-ui .top-search input{font-size:14.25px!important}
.professional-ui .sidebar-toggle,.professional-ui .top-icon-link{background:linear-gradient(180deg,#fff,#f9f6ff)!important;border-color:#dedcf2!important;color:#6e5bc4!important}
.professional-ui .quick-create-btn{
    height:40px!important;border-radius:13px!important;font-size:13.5px!important;
    color:#fff!important;background:linear-gradient(135deg,var(--v7-purple),var(--v7-indigo))!important;border:0!important;
    box-shadow:0 8px 18px rgba(102,84,215,.18)!important;
}
.professional-ui .quick-create-btn.quick-checkin-btn{background:linear-gradient(135deg,var(--v7-teal),var(--v7-teal2))!important;color:#fff!important}
.professional-ui .property-pill{height:40px!important;border-radius:13px!important;background:linear-gradient(135deg,#fff4de,#fff8e8)!important;border-color:#f2d995!important;color:#a76c12!important;font-size:13px!important;font-weight:750!important}
.professional-ui .avatar{background:linear-gradient(135deg,#f2eaff,#e8efff)!important;color:#6d55d0!important}

/* ---------- Page heads/cards: visible module + rainbow accents ---------- */
.professional-ui .page-head:not(.calendar-page-head),
.professional-ui .compact-page-head{
    position:relative;overflow:hidden;padding:10px 13px!important;margin-bottom:10px!important;border-radius:16px!important;
    background:linear-gradient(110deg,#fff 0%,var(--module-soft) 72%,#fff8f2 100%)!important;
    border:1px solid rgba(var(--module-rgb),.14)!important;box-shadow:var(--v7-shadow)!important;
}
.professional-ui .page-head:not(.calendar-page-head)::before,
.professional-ui .compact-page-head::before{
    content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--module),var(--v7-coral));
}
.professional-ui .page-head h2,.professional-ui .compact-page-head h2{font-size:27px!important}
.professional-ui .page-head p,.professional-ui .compact-page-head p{font-size:14px!important}
.professional-ui .eyebrow{font-size:11.25px!important;color:var(--module)!important}

.professional-ui .panel-card,.professional-ui .section-card,.professional-ui .card,
.professional-ui .filter-bar,.professional-ui .pos-toolbar,.professional-ui .room-status-strip,
.professional-ui .pos-selector-section,.professional-ui .checkout-flow-card,.professional-ui .stay-control-card,
.professional-ui .cashier-selector-card,.professional-ui .calendar-toolbar-card,.professional-ui .calendar-board-card{
    border-radius:16px!important;border-color:var(--v7-line)!important;box-shadow:var(--v7-shadow)!important;
}
.professional-ui .panel-card,.professional-ui .section-card{border-top:3px solid rgba(var(--module-rgb),.72)!important}
.professional-ui .card-header.clean{padding:10px 13px!important;background:linear-gradient(90deg,var(--module-soft),#fff 65%,#fff8f3)!important}
.professional-ui .card-header.clean h5,.professional-ui .section-title h5{font-size:17px!important}

/* ---------- Larger text + compact vertical rhythm ---------- */
.professional-ui .form-label{font-size:13.25px!important;line-height:1.1!important;margin-bottom:3px!important;color:#53647b!important;font-weight:760!important}
.professional-ui .form-control,.professional-ui .form-select{min-height:40px!important;padding:.42rem .72rem!important;font-size:14.75px!important;border-radius:12px!important}
.professional-ui .form-control:focus,.professional-ui .form-select:focus{border-color:rgba(var(--module-rgb),.55)!important;box-shadow:0 0 0 3px rgba(var(--module-rgb),.11)!important}
.professional-ui .text-secondary,.professional-ui .text-muted{font-size:13.75px!important}
.professional-ui .btn{min-height:38px!important;font-size:14px!important;border-radius:12px!important}
.professional-ui .btn-primary{background:linear-gradient(135deg,var(--module),var(--module-2))!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px rgba(var(--module-rgb),.20)!important}
.professional-ui .btn-success{background:linear-gradient(135deg,var(--v7-teal),var(--v7-teal2))!important;color:#fff!important;border:0!important}
.professional-ui .btn-warning{background:linear-gradient(135deg,var(--v7-amber),var(--v7-amber2))!important;color:#6b4400!important;border:0!important}
.professional-ui .btn-danger{background:linear-gradient(135deg,var(--v7-coral),#e75a78)!important;color:#fff!important;border:0!important}
.professional-ui .btn-info{background:linear-gradient(135deg,var(--v7-aqua),var(--v7-aqua2))!important;color:#fff!important;border:0!important}

/* ---------- Tables: colored professional headers ---------- */
.professional-ui .modern-table thead th,.professional-ui .table thead th{
    padding:8px 10px!important;font-size:12px!important;
    background:linear-gradient(180deg,var(--module-soft),#f8faff)!important;
    color:#56647c!important;border-bottom:2px solid rgba(var(--module-rgb),.20)!important;
}
.professional-ui .modern-table td,.professional-ui .table td{padding:8px 10px!important;font-size:14.25px!important}
.professional-ui .modern-table tbody tr:nth-child(even),.professional-ui .table tbody tr:nth-child(even){background:#fbfcff!important}
.professional-ui .modern-table tbody tr:hover,.professional-ui .table tbody tr:hover{background:var(--module-soft)!important}

/* ---------- Icon action system: colorful but smooth ---------- */
.professional-ui .icon-action,.professional-ui .fd-icon-action{
    width:35px!important;height:35px!important;border-radius:11px!important;background:#fff!important;border:1px solid #dfe5ef!important;
    box-shadow:0 5px 12px rgba(48,57,92,.06)!important;color:#5f6d83!important;
}
.professional-ui .icon-action.primary,.professional-ui .fd-icon-action.primary{background:linear-gradient(135deg,#f0edff,#e7edff)!important;color:var(--v7-purple)!important;border-color:#d7cef9!important}
.professional-ui .icon-action.ok,.professional-ui .fd-icon-action.ok{background:linear-gradient(135deg,#ebfbf5,#dcf7ee)!important;color:var(--v7-teal)!important;border-color:#c8edde!important}
.professional-ui .icon-action.warn,.professional-ui .fd-icon-action.warn{background:linear-gradient(135deg,#fff6e4,#ffedc8)!important;color:#c37b12!important;border-color:#f2daa5!important}
.professional-ui .icon-action.danger,.professional-ui .icon-action.checkout-go,.professional-ui .fd-icon-action.checkout,.professional-ui .fd-icon-action.danger{background:linear-gradient(135deg,#fff0ef,#ffe2e1)!important;color:#d95458!important;border-color:#f4caca!important}

/* ---------- Front Desk filter: much less dead space ---------- */
.professional-ui .fd-search-strip{
    position:relative;overflow:hidden;padding:8px 11px!important;margin-bottom:9px!important;border-radius:16px!important;
    background:linear-gradient(100deg,#fffaf6 0%,#f8f5ff 46%,#f0fbfa 100%)!important;
    border:1px solid #e4dfed!important;box-shadow:0 10px 28px rgba(71,61,111,.08)!important;
}
.professional-ui .fd-search-strip::before{
    content:"";position:absolute;left:0;right:0;top:0;height:4px;
    background:linear-gradient(90deg,var(--v7-coral),var(--v7-amber),var(--v7-teal),var(--v7-aqua),var(--v7-purple));
}
.professional-ui .fd-search-strip .row{margin:0!important;--bs-gutter-y:0!important;align-items:end!important}
.professional-ui .fd-search-form .form-label{font-size:13.25px!important;margin-bottom:2px!important;line-height:1.05!important}
.professional-ui .fd-search-form .form-control,.professional-ui .fd-search-form .form-select{
    min-height:42px!important;height:42px!important;padding:.42rem .72rem!important;font-size:14.75px!important;border-radius:12px!important;background:#fff!important;
}
.professional-ui .fd-search-form .btn{min-height:42px!important;height:42px!important;border-radius:12px!important;background:linear-gradient(135deg,var(--v7-purple),var(--v7-indigo))!important}

/* ---------- Front Desk board: more colorful status language ---------- */
.professional-ui .fd-unified-board{
    position:relative;overflow:hidden;padding:11px!important;border-radius:17px!important;
    background:linear-gradient(135deg,#fff 0%,#fffdfb 52%,#fbfaff 100%)!important;border:1px solid #e0e4ee!important;box-shadow:var(--v7-shadow)!important;
}
.professional-ui .fd-unified-board::before{
    content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--v7-purple),var(--v7-aqua),var(--v7-teal),var(--v7-amber),var(--v7-coral));
}
.professional-ui .fd-unified-board-head.compact{margin-bottom:8px!important;padding-top:2px!important}
.professional-ui .fd-unified-board-head.compact h5{font-size:20px!important;margin:1px 0 1px!important}
.professional-ui .fd-unified-board-head.compact p{font-size:13px!important}
.professional-ui .fd-unified-legend span{padding:5px 9px!important;font-size:11px!important;border-radius:999px!important;box-shadow:0 3px 8px rgba(56,67,98,.04)!important}
.professional-ui .fd-unified-legend .guestin,.professional-ui .fd-unified-legend .reserved{background:#efeefe!important;color:#5f56cf!important;border-color:#dcd8fb!important}
.professional-ui .fd-unified-legend .clean{background:#e7faf3!important;color:#087d61!important;border-color:#cbeede!important}
.professional-ui .fd-unified-legend .dirty{background:#fff3dd!important;color:#ad6a10!important;border-color:#f2dcaa!important}
.professional-ui .fd-unified-legend .maintenance{background:#ffeded!important;color:#be4f56!important;border-color:#f3ced0!important}
.professional-ui .fd-unified-legend .management{background:#f4ebff!important;color:#754fb8!important;border-color:#e3d3f8!important}
.professional-ui .fd-unified-room-grid.compact-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;gap:9px!important}
.professional-ui .fd-unified-room-card{border-radius:15px!important;box-shadow:0 8px 22px rgba(47,57,91,.07)!important;border:1px solid #dfe5ee!important}
.professional-ui .fd-unified-room-card:hover{transform:translateY(-2px)!important;box-shadow:var(--v7-shadow-hover)!important}
.professional-ui .state-clean .fd-room-status-head{background:linear-gradient(120deg,#e5faf2,#d7f7f0 60%,#e9f7ff)!important;color:#087b60!important;border-bottom-color:#bfe9da!important}
.professional-ui .state-dirty .fd-room-status-head{background:linear-gradient(120deg,#fff4dd,#ffe9c4 60%,#fff1e9)!important;color:#a96a10!important;border-bottom-color:#f0d39b!important}
.professional-ui .state-maintenance .fd-room-status-head{background:linear-gradient(120deg,#ffeded,#ffe2e7 60%,#fff0f5)!important;color:#bc4d5c!important;border-bottom-color:#efc8ce!important}
.professional-ui .state-management .fd-room-status-head{background:linear-gradient(120deg,#f3ebff,#e7ddff 60%,#eef0ff)!important;color:#6d4eb3!important;border-bottom-color:#dccdf6!important}
.professional-ui .state-guestin .fd-room-status-head,.professional-ui .state-reserved .fd-room-status-head{background:linear-gradient(120deg,#eeecff,#e2e8ff 60%,#e8f5ff)!important;color:#555bcc!important;border-bottom-color:#d0d6f5!important}
.professional-ui .fd-room-status-head{min-height:50px!important;padding:6px 9px!important;grid-template-columns:34px minmax(0,1fr) auto!important;gap:7px!important}
.professional-ui .fd-room-status-icon{width:34px!important;height:34px!important;border-radius:11px!important;background:rgba(255,255,255,.75)!important}
.professional-ui .fd-room-number-block strong{font-size:20px!important}.professional-ui .fd-room-number-block small{font-size:9.5px!important}
.professional-ui .fd-room-status-name{font-size:10px!important;padding:4px 7px!important;border-radius:999px!important;background:rgba(255,255,255,.78)!important}
.professional-ui .fd-room-card-body{padding:7px 9px 6px!important;gap:4px!important}
.professional-ui .fd-room-title-row strong{font-size:14.5px!important}.professional-ui .fd-room-title-row>div>span{font-size:10.5px!important}
.professional-ui .fd-stay-availability{font-size:9.5px!important;padding:3px 6px!important}
.professional-ui .fd-room-compact-meta{gap:4px!important}.professional-ui .fd-room-compact-meta span{font-size:10px!important;padding:3px 6px!important;background:#f8f9fc!important}
.professional-ui .fd-room-current-info{padding-top:4px!important;gap:4px!important}.professional-ui .fd-info-main b{font-size:12px!important}.professional-ui .fd-info-main small,.professional-ui .fd-info-note{font-size:9.75px!important}
.professional-ui .fd-room-card-footer{padding:6px 8px!important;background:linear-gradient(90deg,#fff,#fbf8ff)!important}.professional-ui .fd-room-rate-copy strong{font-size:14.5px!important}
.professional-ui .fd-room-rate-copy small,.professional-ui .fd-room-rate-copy span{font-size:8.75px!important}

/* ---------- KPI/cards: different colors in one screen ---------- */
.professional-ui .kpi-grid{gap:9px!important}.professional-ui .kpi-card{padding:11px 12px!important;border-radius:15px!important;overflow:hidden;position:relative!important}
.professional-ui .kpi-card:nth-child(4n+1){background:linear-gradient(135deg,#f1efff,#fff)!important;border-color:#ddd6fb!important}.professional-ui .kpi-card:nth-child(4n+1) .kpi-icon{background:#e5e0ff!important;color:#7257df!important}
.professional-ui .kpi-card:nth-child(4n+2){background:linear-gradient(135deg,#eafbf5,#fff)!important;border-color:#cfeee1!important}.professional-ui .kpi-card:nth-child(4n+2) .kpi-icon{background:#dbf7ec!important;color:#159277!important}
.professional-ui .kpi-card:nth-child(4n+3){background:linear-gradient(135deg,#fff5e3,#fff)!important;border-color:#f1dfb7!important}.professional-ui .kpi-card:nth-child(4n+3) .kpi-icon{background:#ffedc8!important;color:#c58318!important}
.professional-ui .kpi-card:nth-child(4n){background:linear-gradient(135deg,#ffeff0,#fff)!important;border-color:#f3d2d5!important}.professional-ui .kpi-card:nth-child(4n) .kpi-icon{background:#ffe1e3!important;color:#cf5a63!important}
.professional-ui .kpi-card strong{font-size:24px!important}.professional-ui .kpi-card span{font-size:12.75px!important}
.professional-ui .kpi-card.accent{background:linear-gradient(135deg,var(--module),var(--module-2))!important;color:#fff!important;border:0!important}
.professional-ui .kpi-card.accent span,.professional-ui .kpi-card.accent small{color:rgba(255,255,255,.84)!important}.professional-ui .kpi-card.accent .kpi-icon{background:rgba(255,255,255,.16)!important;color:#fff!important}

/* ---------- POS / cashier / housekeeping touchpoints ---------- */
.professional-ui .pos-category.active{background:linear-gradient(135deg,var(--v7-teal),var(--v7-teal2))!important;color:#fff!important;border-color:transparent!important}
.professional-ui .pos-item-card{border-radius:13px!important;box-shadow:0 6px 18px rgba(47,57,91,.06)!important}.professional-ui .pos-item-card:hover{border-color:rgba(var(--module-rgb),.35)!important;box-shadow:0 12px 28px rgba(var(--module-rgb),.12)!important}
.professional-ui .pos-item-price{color:var(--v7-teal)!important;font-weight:800!important}
.professional-ui .checkout-flow-step.active{background:linear-gradient(135deg,var(--module-soft),#fff8f5)!important}.professional-ui .checkout-flow-step.active>span{background:linear-gradient(135deg,var(--module),var(--v7-coral))!important}
.professional-ui .discount-checkout-box{background:linear-gradient(135deg,#f8f1ff,#fff8f0)!important;border-color:#e6daf5!important}
.professional-ui .checkout-complete-card.ready{background:linear-gradient(135deg,#eafaf4,#f8fffc)!important;border-color:#caeede!important}

/* ========================================================================== */
/* Login V4.12.7: new centered colorful composition, no dark split-screen     */
/* ========================================================================== */
.professional-ui.vibrant-login-page{margin:0;min-height:100vh;background:#f7f4ff!important;color:#243149}
.professional-ui .login-v127-page{
    position:relative;min-height:100vh;overflow:hidden;padding:24px 34px 18px;
    background:
      radial-gradient(circle at 7% 12%,rgba(239,111,108,.28),transparent 24%),
      radial-gradient(circle at 92% 10%,rgba(118,87,232,.25),transparent 25%),
      radial-gradient(circle at 88% 88%,rgba(16,165,137,.22),transparent 25%),
      radial-gradient(circle at 12% 88%,rgba(236,168,63,.22),transparent 24%),
      linear-gradient(135deg,#fff8f4 0%,#f7f3ff 42%,#eef9fb 100%);
}
.professional-ui .login-v127-blob{position:absolute;border-radius:48% 52% 61% 39%/45% 44% 56% 55%;filter:blur(0);opacity:.55;pointer-events:none}
.professional-ui .login-v127-blob.blob-a{width:330px;height:280px;left:-140px;top:26%;background:linear-gradient(135deg,#ffb18f,#ef6f6c);transform:rotate(18deg)}
.professional-ui .login-v127-blob.blob-b{width:350px;height:290px;right:-130px;top:24%;background:linear-gradient(135deg,#a983ff,#6d7df2);transform:rotate(-14deg)}
.professional-ui .login-v127-blob.blob-c{width:300px;height:250px;right:15%;bottom:-150px;background:linear-gradient(135deg,#56d6bb,#2ba9c8);transform:rotate(12deg)}
.professional-ui .login-v127-top{position:relative;z-index:2;max-width:1280px;margin:0 auto 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.professional-ui .login-v127-brand{display:flex;align-items:center;gap:12px}.professional-ui .login-v127-brandmark{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--v7-coral),var(--v7-purple) 52%,var(--v7-teal));color:#fff;font-size:21px;box-shadow:0 12px 28px rgba(94,70,177,.25)}
.professional-ui .login-v127-brand strong{display:block;font-size:20px;color:#25324a}.professional-ui .login-v127-brand span{display:block;margin-top:1px;font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:#7b879b}
.professional-ui .login-v127-top-chip{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.78);box-shadow:0 8px 20px rgba(66,60,107,.08);backdrop-filter:blur(12px);font-size:12px;font-weight:750;color:#6757ad}.professional-ui .login-v127-top-chip i{color:#ef8a4b}
.professional-ui .login-v127-stage{
    position:relative;z-index:2;max-width:1280px;min-height:690px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(410px,.92fr);gap:18px;
    padding:18px;border-radius:34px;background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.76);box-shadow:0 32px 90px rgba(71,61,118,.16);backdrop-filter:blur(18px);
}
.professional-ui .login-v127-showcase{
    position:relative;overflow:hidden;border-radius:26px;padding:42px 42px 34px;color:#fff;
    background:
      radial-gradient(circle at 86% 14%,rgba(255,200,106,.30),transparent 24%),
      radial-gradient(circle at 12% 85%,rgba(82,219,190,.22),transparent 26%),
      linear-gradient(145deg,#7657e8 0%,#6a5be1 34%,#3d78d5 65%,#19a89a 100%);
    box-shadow:0 18px 44px rgba(87,74,184,.22);
}
.professional-ui .login-v127-showcase::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;bottom:-110px;background:rgba(255,255,255,.08)}
.professional-ui .login-v127-showcase-copy,.professional-ui .login-v127-dashboard,.professional-ui .login-v127-feature-grid{position:relative;z-index:1}
.professional-ui .login-v127-kicker{font-size:11px;font-weight:850;letter-spacing:.13em;color:#fff0bf}
.professional-ui .login-v127-showcase-copy h1{font-size:clamp(40px,4vw,58px);line-height:1.02;letter-spacing:-.035em;margin:10px 0 10px;max-width:700px}
.professional-ui .login-v127-showcase-copy p{font-size:16px;line-height:1.6;max-width:650px;margin:0;color:rgba(255,255,255,.88)}
.professional-ui .login-v127-dashboard{margin-top:24px;padding:15px;border-radius:20px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px);box-shadow:0 14px 30px rgba(37,38,97,.14)}
.professional-ui .login-v127-dash-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.professional-ui .login-v127-dash-head span{display:flex;align-items:center;gap:7px;font-weight:760}.professional-ui .login-v127-dash-head small{font-size:11px;color:rgba(255,255,255,.75)}
.professional-ui .login-v127-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.professional-ui .login-v127-stat{display:grid;grid-template-columns:34px 1fr;gap:7px;align-items:center;padding:9px;border-radius:14px;background:#fff;color:#2a3750}.professional-ui .login-v127-stat>i{width:34px;height:34px;border-radius:11px;display:grid;place-items:center}.professional-ui .login-v127-stat b{display:block;font-size:18px;line-height:1}.professional-ui .login-v127-stat small{display:block;font-size:9.5px;color:#7a8799;margin-top:3px}.professional-ui .login-v127-stat.mint>i{background:#dcf8ed;color:#108a6e}.professional-ui .login-v127-stat.violet>i{background:#eee9ff;color:#7256dc}.professional-ui .login-v127-stat.amber>i{background:#fff1ce;color:#bd7914}.professional-ui .login-v127-stat.coral>i{background:#ffe4e1;color:#d65c57}
.professional-ui .login-v127-room-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.professional-ui .login-v127-room-strip>div{padding:9px 10px;border-radius:13px;background:rgba(255,255,255,.90);color:#2b3950}.professional-ui .login-v127-room-strip b{display:block;font-size:15px}.professional-ui .login-v127-room-strip span{display:block;font-size:9.5px;margin-top:1px}.professional-ui .login-v127-room-strip .ready{border-left:4px solid var(--v7-teal)}.professional-ui .login-v127-room-strip .guest{border-left:4px solid var(--v7-purple)}.professional-ui .login-v127-room-strip .dirty{border-left:4px solid var(--v7-amber)}
.professional-ui .login-v127-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.professional-ui .login-v127-feature-grid .feature{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;padding:10px 11px;border-radius:15px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.14)}.professional-ui .login-v127-feature-grid .feature>i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.16);font-size:17px}.professional-ui .login-v127-feature-grid b{display:block;font-size:13.5px}.professional-ui .login-v127-feature-grid small{display:block;font-size:10.5px;color:rgba(255,255,255,.80);margin-top:2px}.professional-ui .login-v127-feature-grid .teal>i{color:#9ff1dc}.professional-ui .login-v127-feature-grid .purple>i{color:#e3d5ff}.professional-ui .login-v127-feature-grid .coral>i{color:#ffd1c8}.professional-ui .login-v127-feature-grid .amber>i{color:#ffe0a0}
.professional-ui .login-v127-auth-wrap{display:flex;align-items:center;justify-content:center;padding:34px 30px}
.professional-ui .login-v127-card{position:relative;width:min(470px,100%);padding:30px 30px 24px;border-radius:26px;background:rgba(255,255,255,.94);border:1px solid #e4e3ee;box-shadow:0 22px 58px rgba(65,58,104,.12)}
.professional-ui .login-v127-card-accent{position:absolute;top:0;left:28px;right:28px;height:5px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.professional-ui .login-v127-card-accent span{border-radius:0 0 999px 999px}.professional-ui .login-v127-card-accent span:nth-child(1){background:var(--v7-coral)}.professional-ui .login-v127-card-accent span:nth-child(2){background:var(--v7-amber)}.professional-ui .login-v127-card-accent span:nth-child(3){background:var(--v7-teal)}.professional-ui .login-v127-card-accent span:nth-child(4){background:var(--v7-purple)}
.professional-ui .login-v127-auth-head{display:grid;grid-template-columns:52px 1fr;gap:13px;align-items:center}.professional-ui .login-v127-auth-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#eee9ff,#e7f7ff);color:#7158dc;font-size:21px}.professional-ui .login-v127-auth-head span{display:block;font-size:10px;font-weight:850;letter-spacing:.13em;color:#8a60cf}.professional-ui .login-v127-auth-head h2{font-size:28px;margin:2px 0 1px;letter-spacing:-.025em}.professional-ui .login-v127-auth-head p{font-size:13.75px;margin:0;color:#7b889b}
.professional-ui .login-v127-fields{display:grid;gap:13px;margin-top:22px}.professional-ui .login-v127-card .form-label{font-size:13.25px!important;margin-bottom:4px!important}.professional-ui .login-v127-input{position:relative}.professional-ui .login-v127-input>i{position:absolute;left:14px;top:50%;transform:translateY(-50%);z-index:2;color:#8d78bd}.professional-ui .login-v127-input .form-control{min-height:46px!important;padding-left:42px!important;background:#fbfbff!important;border-color:#dedfec!important}
.professional-ui .login-v127-submit{min-height:47px!important;margin-top:19px!important;border:0!important;border-radius:14px!important;background:linear-gradient(90deg,var(--v7-coral) 0%,var(--v7-purple) 45%,var(--v7-indigo) 72%,var(--v7-teal) 100%)!important;color:#fff!important;font-size:14.75px!important;font-weight:780!important;box-shadow:0 12px 28px rgba(101,80,200,.20)!important}.professional-ui .login-v127-submit i{margin-right:7px}
.professional-ui .login-v127-trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:13px}.professional-ui .login-v127-trust-row span{display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 5px;border-radius:11px;background:#f8f7fc;border:1px solid #e6e4ee;font-size:10.5px;color:#68768b}.professional-ui .login-v127-trust-row span:nth-child(1) i{color:var(--v7-teal)}.professional-ui .login-v127-trust-row span:nth-child(2) i{color:var(--v7-purple)}.professional-ui .login-v127-trust-row span:nth-child(3) i{color:var(--v7-amber)}
.professional-ui .login-v127-demo{text-align:center;margin-top:10px;padding:8px;border-radius:11px;background:linear-gradient(90deg,#fff8f1,#f7f3ff,#effaf7);border:1px solid #e7e1e9;font-size:11.5px;color:#6d7789}
.professional-ui .login-v127-footer{position:relative;z-index:2;max-width:1280px;margin:12px auto 0;text-align:center;font-size:10.5px;color:#7d8598}.professional-ui .login-v127-footer span{color:#b296db;margin:0 5px}

@media(max-width:1200px){
  .professional-ui .login-v127-stage{grid-template-columns:1fr;max-width:900px}.professional-ui .login-v127-auth-wrap{padding:22px}.professional-ui .login-v127-showcase{padding:34px}.professional-ui .login-v127-stat-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .professional-ui .login-v127-page{padding:18px}.professional-ui .login-v127-top{align-items:flex-start}.professional-ui .login-v127-top-chip{display:none}.professional-ui .login-v127-feature-grid{grid-template-columns:1fr 1fr}.professional-ui .fd-unified-room-grid.compact-cards{grid-template-columns:repeat(auto-fill,minmax(245px,1fr))!important}
}
@media(max-width:650px){
  .professional-ui{font-size:15.25px!important}.professional-ui .login-v127-page{padding:12px}.professional-ui .login-v127-top{margin-bottom:10px}.professional-ui .login-v127-brand span{display:none}.professional-ui .login-v127-stage{padding:8px;border-radius:24px}.professional-ui .login-v127-showcase{padding:26px 20px;border-radius:20px}.professional-ui .login-v127-showcase-copy h1{font-size:34px}.professional-ui .login-v127-stat-grid{grid-template-columns:1fr 1fr}.professional-ui .login-v127-room-strip{grid-template-columns:1fr}.professional-ui .login-v127-feature-grid{grid-template-columns:1fr}.professional-ui .login-v127-auth-wrap{padding:14px 8px}.professional-ui .login-v127-card{padding:24px 18px 18px;border-radius:20px}.professional-ui .login-v127-trust-row{grid-template-columns:1fr}.professional-ui .fd-unified-room-grid.compact-cards{grid-template-columns:1fr!important}
}


/* ========================================================================== */
/* V4.12.8 - Targeted polish                                                   */
/* 1) Full-width login coverage                                               */
/* 2) Deeper, unified room-card headers across Front Desk + Housekeeping      */
/* ========================================================================== */
:root{
  --v128-clean-1:#15a57d; --v128-clean-2:#11946f; --v128-clean-3:#0f7f60; --v128-clean-soft:#e6faf3;
  --v128-dirty-1:#f1b24b; --v128-dirty-2:#de9726; --v128-dirty-3:#bb7910; --v128-dirty-soft:#fff3df;
  --v128-maint-1:#ef7388; --v128-maint-2:#dc5a71; --v128-maint-3:#bc4458; --v128-maint-soft:#fff0f4;
  --v128-guest-1:#7080ff; --v128-guest-2:#5c68e8; --v128-guest-3:#4b56cf; --v128-guest-soft:#efeeff;
  --v128-mgmt-1:#a070f5; --v128-mgmt-2:#8a5fe0; --v128-mgmt-3:#724bc0; --v128-mgmt-soft:#f3edff;
  --v128-neutral-1:#93a1b8; --v128-neutral-2:#8090aa; --v128-neutral-3:#697996; --v128-neutral-soft:#f2f5f9;
}

.professional-ui .fd-unified-legend .guestin,.professional-ui .fd-unified-legend .reserved{background:var(--v128-guest-soft)!important;color:var(--v128-guest-3)!important;border-color:#ddd8fb!important}
.professional-ui .fd-unified-legend .clean{background:var(--v128-clean-soft)!important;color:var(--v128-clean-3)!important;border-color:#cbeedc!important}
.professional-ui .fd-unified-legend .dirty{background:var(--v128-dirty-soft)!important;color:var(--v128-dirty-3)!important;border-color:#f0dcae!important}
.professional-ui .fd-unified-legend .maintenance{background:var(--v128-maint-soft)!important;color:var(--v128-maint-3)!important;border-color:#f3d0d8!important}
.professional-ui .fd-unified-legend .management{background:var(--v128-mgmt-soft)!important;color:var(--v128-mgmt-3)!important;border-color:#e1d2fb!important}

/* Front Desk room card headers - deeper color */
.professional-ui .state-clean .fd-room-status-head{
  background:linear-gradient(135deg,var(--v128-clean-1),var(--v128-clean-2) 62%,var(--v128-clean-3))!important;
  color:#fff!important;border-bottom-color:rgba(0,0,0,.06)!important;
}
.professional-ui .state-dirty .fd-room-status-head{
  background:linear-gradient(135deg,var(--v128-dirty-1),var(--v128-dirty-2) 62%,var(--v128-dirty-3))!important;
  color:#fff!important;border-bottom-color:rgba(0,0,0,.06)!important;
}
.professional-ui .state-maintenance .fd-room-status-head{
  background:linear-gradient(135deg,var(--v128-maint-1),var(--v128-maint-2) 62%,var(--v128-maint-3))!important;
  color:#fff!important;border-bottom-color:rgba(0,0,0,.06)!important;
}
.professional-ui .state-management .fd-room-status-head{
  background:linear-gradient(135deg,var(--v128-mgmt-1),var(--v128-mgmt-2) 62%,var(--v128-mgmt-3))!important;
  color:#fff!important;border-bottom-color:rgba(0,0,0,.06)!important;
}
.professional-ui .state-guestin .fd-room-status-head,
.professional-ui .state-reserved .fd-room-status-head{
  background:linear-gradient(135deg,var(--v128-guest-1),var(--v128-guest-2) 62%,var(--v128-guest-3))!important;
  color:#fff!important;border-bottom-color:rgba(0,0,0,.06)!important;
}
.professional-ui .state-neutral .fd-room-status-head{
  background:linear-gradient(135deg,var(--v128-neutral-1),var(--v128-neutral-2) 62%,var(--v128-neutral-3))!important;
  color:#fff!important;border-bottom-color:rgba(0,0,0,.06)!important;
}
.professional-ui .fd-room-status-icon,
.professional-ui .fd-room-status-name{background:rgba(255,255,255,.16)!important;color:#fff!important;border-color:rgba(255,255,255,.24)!important}
.professional-ui .fd-room-number-block small{opacity:.82!important;color:#fff!important}
.professional-ui .fd-room-number-block strong{color:#fff!important}

/* Housekeeping dashboard + room status board - same header colors */
.professional-ui .hk-dash-room.state-clean .hk-dash-room-head,
.professional-ui .hk-smart-room.state-clean .hk-smart-top{
  background:linear-gradient(135deg,var(--v128-clean-1),var(--v128-clean-2) 62%,var(--v128-clean-3))!important;color:#fff!important;
}
.professional-ui .hk-dash-room.state-dirty .hk-dash-room-head,
.professional-ui .hk-smart-room.state-dirty .hk-smart-top{
  background:linear-gradient(135deg,var(--v128-dirty-1),var(--v128-dirty-2) 62%,var(--v128-dirty-3))!important;color:#fff!important;
}
.professional-ui .hk-dash-room.state-maintenance .hk-dash-room-head,
.professional-ui .hk-smart-room.state-maintenance .hk-smart-top{
  background:linear-gradient(135deg,var(--v128-maint-1),var(--v128-maint-2) 62%,var(--v128-maint-3))!important;color:#fff!important;
}
.professional-ui .hk-dash-room.state-management .hk-dash-room-head,
.professional-ui .hk-smart-room.state-management .hk-smart-top{
  background:linear-gradient(135deg,var(--v128-mgmt-1),var(--v128-mgmt-2) 62%,var(--v128-mgmt-3))!important;color:#fff!important;
}
.professional-ui .hk-dash-room.state-guestin .hk-dash-room-head,
.professional-ui .hk-smart-room.state-guestin .hk-smart-top,
.professional-ui .hk-dash-room.state-reserved .hk-dash-room-head,
.professional-ui .hk-smart-room.state-reserved .hk-smart-top{
  background:linear-gradient(135deg,var(--v128-guest-1),var(--v128-guest-2) 62%,var(--v128-guest-3))!important;color:#fff!important;
}
.professional-ui .hk-dash-room.state-neutral .hk-dash-room-head,
.professional-ui .hk-smart-room.state-neutral .hk-smart-top{
  background:linear-gradient(135deg,var(--v128-neutral-1),var(--v128-neutral-2) 62%,var(--v128-neutral-3))!important;color:#fff!important;
}
.professional-ui .hk-dash-room-head .status,
.professional-ui .hk-smart-top .status,
.professional-ui .hk-dash-room-head .badge,
.professional-ui .hk-smart-top .badge,
.professional-ui .hk-dash-room-head .chip,
.professional-ui .hk-smart-top .chip{background:rgba(255,255,255,.16)!important;color:#fff!important;border-color:rgba(255,255,255,.22)!important}
.professional-ui .hk-dash-room-head i,
.professional-ui .hk-smart-top i,
.professional-ui .hk-dash-room-head small,
.professional-ui .hk-smart-top small,
.professional-ui .hk-dash-room-head span,
.professional-ui .hk-smart-top span,
.professional-ui .hk-dash-room-head strong,
.professional-ui .hk-smart-top strong{color:#fff!important}

/* Full-width login page coverage */
.professional-ui .login-v127-page{padding:14px 18px 12px!important}
.professional-ui .login-v127-top,
.professional-ui .login-v127-stage,
.professional-ui .login-v127-footer{max-width:none!important;width:100%!important}
.professional-ui .login-v127-top{margin:0 0 12px!important;padding:0 4px!important}
.professional-ui .login-v127-stage{
  margin:0!important;
  min-height:calc(100vh - 96px)!important;
  grid-template-columns:minmax(0,1.12fr) minmax(430px,.88fr)!important;
  gap:16px!important;
  padding:16px!important;
}
.professional-ui .login-v127-showcase{min-height:100%!important;padding:34px 34px 28px!important}
.professional-ui .login-v127-auth-wrap{padding:22px 16px!important}
.professional-ui .login-v127-card{width:min(520px,100%)!important}
.professional-ui .login-v127-footer{margin-top:8px!important}
@media(max-width:1200px){
  .professional-ui .login-v127-stage{grid-template-columns:1fr!important;min-height:auto!important}
}


/* ========================================================================== */
/* V4.12.9 - Login Full-Viewport Hotfix                                       */
/* Root cause: legacy site.css makes .login-page a 1.2fr/.8fr CSS grid.       */
/* The V4.12.7/8 login canvas was therefore confined to grid column #1.       */
/* ========================================================================== */
html:has(body.vibrant-login-page),
body.login-page.professional-ui.vibrant-login-page {
    width: 100% !important;
    max-width: none !important;
    min-width: 100% !important;
    min-height: 100vh !important;
    overflow-x: hidden !important;
}
body.login-page.professional-ui.vibrant-login-page {
    display: block !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    place-items: initial !important;
    background: #f7f4ff !important;
}
body.login-page.professional-ui.vibrant-login-page > .login-v127-page {
    display: block !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}
body.login-page.professional-ui.vibrant-login-page .login-v127-top,
body.login-page.professional-ui.vibrant-login-page .login-v127-stage,
body.login-page.professional-ui.vibrant-login-page .login-v127-footer {
    width: 100% !important;
    max-width: none !important;
}
body.login-page.professional-ui.vibrant-login-page .login-v127-stage {
    grid-template-columns: minmax(0, 1.12fr) minmax(430px, .88fr) !important;
}
@media (max-width:1200px) {
    body.login-page.professional-ui.vibrant-login-page .login-v127-stage {
        grid-template-columns: 1fr !important;
    }
}


/* ========================================================================== */
/* V4.12.10 - Sidebar collapse width hotfix                                   */
/* Theme CSS previously overrode the legacy 84px collapsed sidebar width.     */
/* ========================================================================== */
@media (min-width: 901px) {
    body.professional-ui.sidebar-collapsed .sidebar {
        width: 84px !important;
        min-width: 84px !important;
        max-width: 84px !important;
        overflow-x: hidden !important;
        transition: width .24s ease, min-width .24s ease, max-width .24s ease !important;
    }

    body.professional-ui.sidebar-collapsed .main {
        margin-left: 84px !important;
        transition: margin-left .24s ease !important;
    }

    body.professional-ui.sidebar-collapsed .brand {
        justify-content: center !important;
        gap: 0 !important;
        padding: 11px 8px !important;
    }

    body.professional-ui.sidebar-collapsed .brand-copy {
        display: none !important;
    }

    body.professional-ui.sidebar-collapsed .brand-mark {
        width: 45px !important;
        height: 45px !important;
        flex: 0 0 45px !important;
        margin: 0 auto !important;
    }

    body.professional-ui.sidebar-collapsed .sidebar-property {
        min-height: 48px !important;
        margin: 9px 10px 6px !important;
        padding: 8px !important;
        justify-content: center !important;
        gap: 0 !important;
    }

    body.professional-ui.sidebar-collapsed .sidebar-property div,
    body.professional-ui.sidebar-collapsed .sidebar-property > i {
        display: none !important;
    }

    body.professional-ui.sidebar-collapsed .sidebar-property .property-dot {
        width: 11px !important;
        height: 11px !important;
        margin: 0 !important;
    }

    body.professional-ui.sidebar-collapsed .sidebar-nav {
        padding: 6px 8px 9px !important;
        overflow-x: hidden !important;
    }

    body.professional-ui.sidebar-collapsed .nav-group {
        overflow: visible !important;
    }

    body.professional-ui.sidebar-collapsed .nav-group-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        grid-template-columns: none !important;
        min-height: 48px !important;
        margin: 2px 0 !important;
        padding: 5px !important;
        gap: 0 !important;
        border-radius: 12px !important;
    }

    body.professional-ui.sidebar-collapsed .nav-group-label,
    body.professional-ui.sidebar-collapsed .nav-group-count,
    body.professional-ui.sidebar-collapsed .nav-group-chevron {
        display: none !important;
    }

    body.professional-ui.sidebar-collapsed .nav-group-icon {
        width: 40px !important;
        height: 40px !important;
        flex: 0 0 40px !important;
        margin: 0 !important;
        font-size: 17px !important;
        border-radius: 12px !important;
    }

    body.professional-ui.sidebar-collapsed .nav-group-items {
        display: none !important;
    }

    body.professional-ui.sidebar-collapsed .support-chip {
        justify-content: center !important;
        padding: 8px !important;
        gap: 0 !important;
        min-height: 48px !important;
    }

    body.professional-ui.sidebar-collapsed .support-chip div,
    body.professional-ui.sidebar-collapsed .sidebar-footer > small {
        display: none !important;
    }

    body.professional-ui.sidebar-collapsed .support-chip > i {
        margin: 0 !important;
        font-size: 18px !important;
    }

    body.professional-ui.sidebar-collapsed .sidebar-footer {
        padding: 9px 8px 11px !important;
    }
}


/* V4.12.16 - Direct in-house room change / upgrade */
.professional-ui .fd-icon-action.room-move{
    background:linear-gradient(135deg,#e8f8f4,#eee9ff)!important;
    color:#4f66d6!important;
    border-color:#cfd8f5!important;
}
.professional-ui .fd-icon-action.room-move:hover{
    background:linear-gradient(135deg,#18a783,#695be7)!important;
    color:#fff!important;
    border-color:transparent!important;
}
.professional-ui .room-move-page-head{border-top:4px solid transparent!important;border-image:linear-gradient(90deg,#18a783,#6674ed,#ed8c53) 1!important}
.professional-ui .room-move-summary{
    display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:13px;align-items:center;
    padding:12px 14px;border:1px solid #dbe5ef;border-radius:16px;
    background:linear-gradient(110deg,#effbf7 0%,#f8f7ff 58%,#fff8ef 100%);
    box-shadow:0 8px 22px rgba(40,57,88,.06);
}
.professional-ui .room-move-summary-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#18a783,#6470e7);color:#fff;font-size:20px}
.professional-ui .room-move-summary-copy small,.professional-ui .room-move-current-room small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7c899c;font-weight:800}
.professional-ui .room-move-summary-copy strong{display:block;font-size:17px;color:#23344d}.professional-ui .room-move-summary-copy span{display:block;font-size:12px;color:#718098;margin-top:2px}
.professional-ui .room-move-current-room{text-align:right;padding:8px 11px;border-radius:12px;background:#fff;border:1px solid #dfe6f0;min-width:180px}
.professional-ui .room-move-current-room strong{display:block;font-size:21px;color:#168b6c;line-height:1.05}.professional-ui .room-move-current-room span{font-size:11px;color:#728096}
.professional-ui .room-move-form-card{overflow:hidden}.professional-ui .room-move-form-card .card-header.clean{background:linear-gradient(100deg,#effbf7,#f7f5ff)!important}
.professional-ui .room-move-note{display:flex;gap:8px;align-items:flex-start;padding:9px 10px;border-radius:11px;background:#f1f8ff;border:1px solid #d8e7f6;color:#5e718b;font-size:12px}.professional-ui .room-move-note i{color:#5570df;margin-top:1px}
@media(max-width:700px){.professional-ui .room-move-summary{grid-template-columns:42px 1fr}.professional-ui .room-move-summary-icon{width:42px;height:42px}.professional-ui .room-move-current-room{grid-column:1/-1;text-align:left}}


/* V4.12.17 - Cashiering active Guest-In selector: guest-wise / room-wise search */
.professional-ui .cashier-inhouse-selector{overflow:visible!important}
.professional-ui .cashier-inhouse-selector>.p-3{padding:11px 13px!important}
.professional-ui .cashier-inhouse-form{display:grid;gap:10px}
.professional-ui .cashier-search-grid{display:grid;grid-template-columns:180px minmax(280px,1fr) auto;gap:8px;align-items:end}
.professional-ui .cashier-search-grid .form-label,.professional-ui .cashier-active-select-row .form-label{margin-bottom:3px!important;font-size:12.5px!important}
.professional-ui .cashier-search-input{position:relative}
.professional-ui .cashier-search-input>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:2;color:#8a78bd}
.professional-ui .cashier-search-input .form-control{padding-left:38px!important}
.professional-ui .cashier-search-actions{display:flex;gap:6px;align-items:center}
.professional-ui .cashier-search-actions .btn{white-space:nowrap}
.professional-ui .cashier-active-select-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end;padding-top:9px;border-top:1px solid #ece7f4}
.professional-ui .cashier-active-select{min-width:0}
.professional-ui .cashier-result-count{display:inline-grid;place-items:center;min-width:23px;height:20px;margin-left:5px;padding:0 6px;border-radius:999px;background:#efe9ff;color:#6a55c4;font-size:10px;font-weight:800;vertical-align:middle}
.professional-ui .cashier-active-select .form-select{font-weight:650;color:#31445d}
.professional-ui .cashier-selector-help{display:block;margin-top:5px;color:#78879a;font-size:10.75px;line-height:1.35}
.professional-ui .cashier-selector-help i{color:#6a61da;margin-right:3px}
.professional-ui .cashier-open-checkout{min-width:158px;white-space:nowrap}
@media(max-width:850px){
 .professional-ui .cashier-search-grid{grid-template-columns:1fr 1fr}.professional-ui .cashier-search-actions{grid-column:1/-1}
 .professional-ui .cashier-active-select-row{grid-template-columns:1fr}.professional-ui .cashier-open-checkout{width:100%}
}
@media(max-width:560px){.professional-ui .cashier-search-grid{grid-template-columns:1fr}.professional-ui .cashier-search-actions{grid-column:auto}}


/* ========================================================================== */
/* V4.12.18 - Check-out Today Alarm + Extend Stay                              */
/* ========================================================================== */
@keyframes checkoutTodayBlink{
  0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(220,53,69,.34)}
  50%{opacity:.38;transform:scale(1.08);box-shadow:0 0 0 6px rgba(220,53,69,0)}
}
.professional-ui .checkout-today-head-alarm{
  display:inline-grid;place-items:center;width:20px;height:20px;margin-left:5px;border-radius:999px;
  background:#dc3545;color:#fff;border:1px solid rgba(255,255,255,.48);vertical-align:middle;
  animation:checkoutTodayBlink 1.15s ease-in-out infinite;
}
.professional-ui .checkout-today-head-alarm i{font-size:10px}
.professional-ui .checkout-today-alarm,
.professional-ui .hk-checkout-today{
  display:inline-flex;align-items:center;gap:4px;margin-left:5px;padding:2px 6px;border-radius:999px;
  background:#dc3545;color:#fff!important;font-size:8.5px!important;font-weight:800;letter-spacing:.02em;
  animation:checkoutTodayBlink 1.15s ease-in-out infinite;white-space:nowrap;
}
.professional-ui .checkout-today-cell{background:linear-gradient(135deg,#fff6f7,#fff)!important;border:1px solid #f4cfd5!important}
.professional-ui .checkout-today-card{box-shadow:0 0 0 2px rgba(220,53,69,.10),0 10px 28px rgba(44,58,91,.09)!important}
.professional-ui .fd-icon-action.extend-stay{
  background:linear-gradient(135deg,#fff5dc,#ffecbd)!important;color:#a86a0c!important;border-color:#efcf82!important;
}
.professional-ui .fd-icon-action.extend-stay:hover{background:linear-gradient(135deg,#ffedbf,#ffe4a1)!important;color:#8e5600!important}
.professional-ui .extend-stay-modal{border-radius:18px!important;overflow:hidden}
.professional-ui .extend-stay-current{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:linear-gradient(135deg,#f5f2ff,#f0f8ff);border:1px solid #dddaf4}
.professional-ui .extend-stay-current>span{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#ebe7ff;color:#7055d7;font-size:16px}
.professional-ui .extend-stay-current small{display:block;color:#7b8798;font-size:10px}.professional-ui .extend-stay-current b{display:block;color:#24334b;font-size:14px;margin-top:1px}
.professional-ui .extend-stay-note{display:grid;grid-template-columns:20px 1fr;gap:7px;margin-top:10px;padding:8px 10px;border-radius:10px;background:#f7fafc;color:#6c7a8f;font-size:10.5px;line-height:1.45}
.professional-ui .extend-stay-note i{color:#5d72dc;margin-top:1px}

/* V4.12.20 Night Audit exception drill-down */
.professional-ui .na-exception-action{display:flex;align-items:flex-start;gap:8px;justify-content:space-between;min-width:220px}
.professional-ui .na-exception-action small{max-width:260px;line-height:1.35}
.professional-ui .na-view-exception{white-space:nowrap;flex:0 0 auto}
.professional-ui .na-exception-detail-modal{border-top:4px solid #7657e8!important}
.professional-ui .na-exception-loading{display:flex;align-items:center;justify-content:center;gap:9px;padding:48px;color:#718198}
.professional-ui .na-exception-detail-table th{white-space:nowrap;position:sticky;top:0;z-index:2}
.professional-ui .na-exception-detail-table td{vertical-align:top!important}
.professional-ui .na-exception-detail-table .na-problem-cell{min-width:260px;max-width:380px;white-space:normal}
.professional-ui .na-exception-detail-table .na-action-cell{min-width:240px;max-width:340px;white-space:normal}
@media(max-width:900px){.professional-ui .na-exception-action{min-width:180px;flex-direction:column}.professional-ui .na-exception-detail-table{min-width:1200px}}
.professional-ui .modal-dialog.modal-xxl{--bs-modal-width:min(1500px,96vw)}
