:root{--bs-body-bg:#fffbf4;--bs-body-font-family:"Lexend", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bs-logo-lg-height:48px}.sidenav-menu .logo{min-height:70px;text-align:center!important;justify-content:center!important;align-items:center!important;width:100%!important;padding:.75rem 1rem!important;display:flex!important}.sidenav-menu .logo img,.logo-lg img{object-fit:contain;width:auto!important;height:48px!important;max-height:52px!important;margin:0 auto!important}html[data-sidenav-size=condensed] .sidenav-menu .logo,html[data-sidenav-size=sm-hover]:not(:hover) .sidenav-menu .logo,html[data-sidenav-size=sm-hover-active]:not(:hover) .sidenav-menu .logo{opacity:0!important;visibility:hidden!important;height:70px!important;min-height:70px!important;display:flex!important}.sidenav-menu,html[data-menu-color=dark] .sidenav-menu,html[data-menu-color=light] .sidenav-menu{background:#535b40!important}html[data-sidenav-size=condensed] .sidenav-menu,html[data-sidenav-size=sm-hover]:not(:hover) .sidenav-menu,html[data-sidenav-size=sm-hover-active]:not(:hover) .sidenav-menu{height:100vh!important;min-height:100vh!important;position:fixed!important;top:0!important;bottom:0!important}html[data-sidenav-size=condensed] .sidenav-menu [data-simplebar],html[data-sidenav-size=sm-hover]:not(:hover) .sidenav-menu [data-simplebar]{height:calc(100vh - 70px)!important}.sidenav-menu .side-nav-title{letter-spacing:.05em;text-transform:uppercase;color:#ffffffb3!important;font-weight:600!important}.sidenav-menu .side-nav .side-nav-link,.sidenav-menu .sub-menu .side-nav-link{color:#fff!important;box-shadow:none!important;background:0 0!important;border:none!important}.sidenav-menu .side-nav .side-nav-link .menu-text,.sidenav-menu .sub-menu .side-nav-link .menu-text,.sidenav-menu .side-nav .side-nav-link .menu-icon,.sidenav-menu .side-nav .side-nav-link .menu-icon i{color:#fff!important}.sidenav-menu .side-nav .side-nav-link .menu-arrow,.sidenav-menu .side-nav .side-nav-link .menu-arrow:before{color:#fffc!important}.sidenav-menu .side-nav .side-nav-link:hover,.sidenav-menu .side-nav .side-nav-link:focus,.sidenav-menu .side-nav .side-nav-link:active,.sidenav-menu .sub-menu .side-nav-link:hover,.sidenav-menu .sub-menu .side-nav-link:focus,.sidenav-menu .sub-menu .side-nav-link:active{border-radius:6px;color:#fff!important;box-shadow:none!important;background:#ffffff26!important}.sidenav-menu .side-nav .side-nav-link:hover .menu-text,.sidenav-menu .side-nav .side-nav-link:hover .menu-icon i,.sidenav-menu .side-nav .side-nav-link:focus .menu-text,.sidenav-menu .side-nav .side-nav-link:focus .menu-icon i,.sidenav-menu .sub-menu .side-nav-link:hover .menu-text,.sidenav-menu .sub-menu .side-nav-link:focus .menu-text{color:#fff!important}.sidenav-menu .side-nav .side-nav-link.active,.sidenav-menu .sub-menu .side-nav-link.active,.sidenav-menu .side-nav .side-nav-item.menuitem-active>.side-nav-link{border-radius:6px;color:#fff!important;box-shadow:none!important;background:#ffffff38!important;border:none!important;font-weight:600!important}html[data-sidenav-size=condensed] .sidenav-menu .side-nav>.side-nav-item:hover>.side-nav-link,html[data-sidenav-size=sm-hover]:not(:hover) .sidenav-menu .side-nav>.side-nav-item:hover>.side-nav-link,html[data-sidenav-size=sm-hover-active]:not(:hover) .sidenav-menu .side-nav>.side-nav-item:hover>.side-nav-link{color:#fff!important;z-index:1050!important;background:#3d432f!important;border-radius:6px!important;box-shadow:0 4px 16px #0006!important}html[data-sidenav-size=condensed] .sidenav-menu .sub-menu,html[data-sidenav-size=sm-hover]:not(:hover) .sidenav-menu .sub-menu,html[data-sidenav-size=sm-hover-active]:not(:hover) .sidenav-menu .sub-menu{background:#3d432f!important;border:1px solid #ffffff26!important;box-shadow:0 8px 24px #0006!important}html[data-sidenav-size=condensed] .sidenav-menu .sub-menu .side-nav-link,html[data-sidenav-size=sm-hover]:not(:hover) .sidenav-menu .sub-menu .side-nav-link{color:#fff!important;background-color:#0000!important}html[data-sidenav-size=condensed] .sidenav-menu .sub-menu .side-nav-link:hover,html[data-sidenav-size=sm-hover]:not(:hover) .sidenav-menu .sub-menu .side-nav-link:hover{color:#fff!important;background:#ffffff26!important}.sidenav-menu .side-nav .side-nav-link.active .menu-text,.sidenav-menu .side-nav .side-nav-link.active .menu-icon i,.sidenav-menu .side-nav .side-nav-item.menuitem-active>.side-nav-link .menu-text,.sidenav-menu .side-nav .side-nav-item.menuitem-active>.side-nav-link .menu-icon i,.sidenav-menu .sub-menu .side-nav-link.active .menu-text,.sidenav-menu .button-sm-hover,.sidenav-menu .button-close-fullsidebar{color:#fff!important}html,body{background-color:var(--bs-body-bg);height:100%;font-family:var(--bs-body-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.card{background-color:#fff;border:1px solid #1e293b!important;border-radius:10px!important;box-shadow:5px 5px #475569!important}.shadow-sm,.shadow,.shadow-lg{box-shadow:5px 5px #475569!important}.pos-no-shadow,.pos-no-shadow .card,.pos-no-shadow .btn,.pos-no-shadow .shadow-sm,.pos-no-shadow .shadow,.pos-no-shadow .shadow-lg,.pos-no-shadow .shadow-2xs,.pos-no-shadow .hover-shadow{box-shadow:none!important}.table{border-collapse:separate;border-spacing:0}.table thead th{text-transform:uppercase;letter-spacing:.05em;background-color:#f8fafc;font-size:.75rem;font-weight:600;border-bottom:2px solid #1e293b!important}.table-responsive{border-radius:8px;-webkit-overflow-scrolling:touch!important;overflow-x:auto!important}.form-control,.form-select{border-color:#1e293b;border-radius:6px}.form-check-input{border-color:#1e293b}.btn-primary,.btn-dark{border:1px solid #1e293b;transition:all .15s ease-in-out;box-shadow:3px 3px #1e293b}.btn-primary:hover,.btn-dark:hover{transform:translate(-1px,-1px);box-shadow:4px 4px #1e293b}.btn-primary:active,.btn-dark:active{transform:translate(2px,2px);box-shadow:1px 1px #1e293b}.floor-selector{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:10px;margin-bottom:12px;padding:8px 12px;display:flex}.floor-selector-icon{color:var(--bs-primary);align-items:center;font-size:1.2rem;display:flex}.floor-selector-tabs{gap:8px;display:flex}.floor-selector-tab{cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;flex-direction:column;align-items:center;gap:1px;padding:6px 16px;line-height:1.2;transition:all .2s;display:flex;color:#1e293b!important}.floor-selector-tab:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a!important}.floor-selector-tab.active{background:var(--bs-primary)!important;border-color:var(--bs-primary)!important;color:#fff!important}.floor-selector-tab.active .floor-selector-tab-number,.floor-selector-tab.active .floor-selector-tab-name{color:#fff!important}.floor-selector-tab-number{letter-spacing:.3px;color:inherit;font-size:.8125rem;font-weight:700}.floor-selector-tab-name{opacity:.85;white-space:nowrap;color:inherit;font-size:.65rem}.floor-map-viewer{width:100%}.floor-map-container{background:#1a1a2e;border:1px solid #ffffff14;border-radius:12px;width:100%;position:relative;overflow:hidden}.map-editor-canvas{-webkit-user-select:none;user-select:none;background:#0f172a;border-radius:0 0 12px 12px;width:100%;position:relative;overflow:hidden}.map-editor-hotspot{cursor:grab;z-index:5;border:2px dashed #ffffff80;border-radius:4px;justify-content:center;align-items:center;transition:box-shadow .15s;display:flex;position:absolute}.map-editor-hotspot:hover{z-index:10;box-shadow:0 0 12px #3b82f666}.map-editor-hotspot.selected{z-index:15;border-style:solid;border-width:2.5px;box-shadow:0 0 0 3px #3b82f64d,0 4px 12px #0000004d}.map-editor-hotspot.dragging{cursor:grabbing;opacity:.85}.map-editor-hotspot-label{color:#fff;text-shadow:0 1px 3px #0009;pointer-events:none;white-space:nowrap;letter-spacing:.5px;text-transform:uppercase;font-size:.6rem;font-weight:700}.map-editor-resize-handle{cursor:se-resize;z-index:20;opacity:0;background:#3b82f6;border:2px solid #fff;border-radius:2px;width:10px;height:10px;transition:opacity .15s;position:absolute;bottom:-4px;right:-4px}.map-editor-hotspot:hover .map-editor-resize-handle,.map-editor-hotspot.selected .map-editor-resize-handle{opacity:1}.map-editor-resize-handle.active{opacity:1;background:#f59e0b}.map-editor-facility-list{max-height:260px;overflow-y:auto}.map-editor-facility-item{cursor:pointer;border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:6px 12px;transition:background .1s;display:flex}.map-editor-facility-item:hover{background:#3b82f60f}.map-editor-facility-item.active{background:#3b82f61f;border-left:3px solid #3b82f6}.map-editor-facility-item.dirty{background:#f59e0b0f}.map-editor-color-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.floor-map-image{pointer-events:none;width:100%;height:auto;display:block}.floor-map-overlay{width:100%;height:100%;position:absolute;top:0;left:0}.facility-hotspot{cursor:pointer;z-index:5;border:2px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute}.facility-hotspot:hover{z-index:10;filter:brightness(1.2);box-shadow:0 4px 15px #0000004d;border-color:#fff!important}.facility-hotspot.non-interactive{cursor:default}.facility-hotspot.non-interactive:hover{filter:none;box-shadow:none;border-color:#0000!important}.facility-hotspot-label{color:#fff;text-shadow:0 1px 4px #000000b3;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 2px;font-size:.6rem;font-weight:700;line-height:1.2;overflow:hidden}.facility-hotspot.available{background:#22c55e66;border-color:#22c55ea6}.facility-hotspot.occupied{cursor:not-allowed;background:#ef444466;border-color:#ef4444a6}.facility-hotspot.ending-soon{background:#facc1566;border-color:#facc15a6;animation:2s ease-in-out infinite hotspot-pulse}.facility-hotspot.selected{z-index:25;box-shadow:0 0 20px #22c55ecc;border:3px solid #22c55e!important;animation:.75s ease-in-out infinite alternate hotspot-blink!important}@keyframes hotspot-blink{0%{opacity:1;transform:scale(1);box-shadow:0 0 25px #22c55ee6,0 0 10px #fffc;background-color:#22c55eb3!important}to{opacity:.35;transform:scale(1.03);box-shadow:0 0 5px #22c55e33;background-color:#22c55e40!important}}.floor-map-legend{background:#ffffff05;border-radius:8px;padding:8px 12px}.floor-map-legend .legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.floor-map-legend .legend-dot.available{background:#22c55e;box-shadow:0 0 6px #22c55e80}.floor-map-legend .legend-dot.occupied{background:#ef4444;box-shadow:0 0 6px #ef444480}.floor-map-legend .legend-dot.ending-soon{background:#eab308;box-shadow:0 0 6px #eab30880}.facility-hotspot-tooltip{color:#f8fafc;white-space:nowrap;z-index:100;pointer-events:none;text-align:left;background:#0f172af2;border:1px solid #ffffff26;border-radius:8px;padding:8px 12px;font-size:.72rem;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0006}.facility-hotspot-tooltip:after{content:"";border:5px solid #0000;border-top-color:#0f172af2;position:absolute;top:100%;left:50%;transform:translate(-50%)}.monitor-fullscreen{background-color:var(--bs-body-bg,#f3f4f7);width:100vw;height:100vh;color:var(--bs-body-color,#313a46);-webkit-user-select:none;user-select:none;margin:0;padding:0;font-family:Lexend,Inter,sans-serif;overflow:hidden}.monitor-fullscreen .monitor-header{background:var(--bs-card-bg,#fff);border-bottom:1px solid var(--bs-border-color,#00000014);z-index:10;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;box-shadow:0 1px 3px #00000008}.monitor-fullscreen .monitor-body{background:var(--bs-body-bg,#f3f4f7);gap:16px;height:calc(100vh - 120px);padding:16px;display:flex;overflow:auto hidden}.monitor-fullscreen .sport-block{background:var(--bs-card-bg,#fff);border:1px solid var(--bs-border-color,#00000014);border-radius:14px;flex-direction:column;flex:1;min-width:320px;max-width:480px;display:flex;overflow:hidden;box-shadow:0 2px 12px #0000000a}.monitor-fullscreen .sport-header{border-bottom:1px solid var(--bs-border-color,#00000014);background:var(--bs-tertiary-bg,#f8fafc);padding:14px 18px}.monitor-fullscreen .sport-content{flex-direction:column;flex:1;gap:12px;padding:12px;display:flex;overflow-y:auto}.monitor-fullscreen .sport-footer{border-top:1px solid var(--bs-border-color,#00000014);background:var(--bs-tertiary-bg,#f8fafc);padding:10px 18px}.monitor-fullscreen .bay-card{background:var(--bs-card-bg,#fff);border:1px solid var(--bs-border-color,#00000014);border-radius:12px;padding:14px 16px;transition:all .25s;box-shadow:0 1px 3px #00000008}@keyframes pulse-ring{0%{transform:scale(.95);box-shadow:0 0 #eab308b3}70%{transform:scale(1.1);box-shadow:0 0 0 8px #eab30800}to{transform:scale(.95);box-shadow:0 0 #eab30800}}.monitor-fullscreen .monitor-footer{background:var(--bs-card-bg,#fff);border-top:1px solid var(--bs-border-color,#00000014);z-index:10;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;box-shadow:0 -1px 3px #00000008}.monitor-fullscreen .facility-title{color:var(--bs-heading-color,var(--bs-body-color));font-size:1.05rem;font-weight:600}.monitor-fullscreen .court-schedule-strip{background:var(--bs-tertiary-bg,#00000008);border:1px solid var(--bs-border-color-translucent,#0000000f);border-radius:6px;grid-template-columns:repeat(17,1fr);gap:2px;padding:4px;display:grid}.monitor-fullscreen .schedule-hour-cell{cursor:default;border-radius:3px;justify-content:center;align-items:center;height:18px;font-size:9px;font-weight:600;transition:all .2s;display:flex}@media print{body *{visibility:hidden!important}.printable-receipt,.printable-receipt *{visibility:visible!important}.printable-receipt{color:#000!important;background:#fff!important;width:80mm!important;max-width:100%!important;margin:0!important;padding:8px!important;font-family:Courier New,Courier,monospace!important;font-size:9.5px!important;line-height:1.25!important;position:absolute!important;top:0!important;left:0!important}.printable-receipt table{border-collapse:collapse!important;width:100%!important}.printable-receipt th,.printable-receipt td{color:#000!important;padding:2px 4px!important;font-size:9.5px!important}.printable-receipt .price-val{white-space:nowrap!important}.no-print,.modal-header,.modal-footer,.btn-close,.modal-backdrop,.sidenav-menu,.app-topbar,.footer{visibility:hidden!important;display:none!important}.modal{background:0 0!important;width:100%!important;height:auto!important;position:absolute!important;top:0!important;left:0!important;overflow:visible!important}.modal-dialog{max-width:100%!important;margin:0!important;transform:none!important}.modal-content{box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}@page{size:auto;margin:5mm}}.pos-product-card{background:#fff;position:relative;overflow:hidden;border:1px solid #00000014!important;border-radius:14px!important;transition:all .22s cubic-bezier(.16,1,.3,1)!important}.pos-product-card:hover{transform:translateY(-4px);border-color:#535b404d!important;box-shadow:0 10px 25px -5px #0000001a,0 4px 10px -2px #0000000a!important}.pos-product-card.in-cart{background:#fcfdfa!important;border:2px solid #535b40!important;box-shadow:0 4px 14px #535b4026!important}.pos-product-card.out-of-stock{opacity:.6;filter:grayscale(40%)}.pos-category-pill{background:#fff;color:#4b5563!important;border:1px solid #00000014!important;border-radius:50rem!important;padding:.4rem .9rem!important;font-size:.8rem!important;font-weight:600!important;transition:all .2s!important}.pos-category-pill:hover{color:#111827!important;background:#f3f4f6!important}.pos-category-pill.active{color:#fff!important;background:#535b40!important;border-color:#535b40!important;box-shadow:0 4px 12px #535b4040!important}.pos-qty-pill{background:#f3f4f6;border-radius:50rem;align-items:center;gap:4px;padding:2px 6px;display:inline-flex}.pos-qty-pill button{border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:.75rem;font-weight:700;transition:background .15s;display:flex}.pos-qty-pill button:hover{background:#e5e7eb}.pagination{gap:4px}.pagination .page-item .page-link{color:#374151;border:1px solid #cbd5e1;padding:.45rem .85rem;font-size:.875rem;font-weight:600;transition:all .15s ease-in-out;border-radius:8px!important}.pagination .page-item.active .page-link{box-shadow:0 2px 6px #535b4040;color:#fff!important;background-color:#535b40!important;border-color:#535b40!important}.pagination .page-item .page-link:hover:not(.active){color:#111827;background-color:#f1f5f9}.pagination .page-item.disabled .page-link{color:#94a3b8;background-color:#f8fafc;border-color:#e2e8f0}html[data-layout=topnav] .topnav{background-color:#535b40!important;border-top:1px solid #ffffff26!important;box-shadow:0 4px 12px #00000014!important}html[data-layout=topnav] .topnav .navbar-nav .nav-link{font-weight:500;color:#fff!important;padding:.75rem 1.1rem!important}html[data-layout=topnav] .topnav .navbar-nav .nav-link .menu-icon,html[data-layout=topnav] .topnav .navbar-nav .nav-link .menu-icon i{color:#ffffffe6!important}html[data-layout=topnav] .topnav .navbar-nav .nav-link:hover,html[data-layout=topnav] .topnav .navbar-nav .nav-link:hover .menu-icon i{color:#c6ae94!important}html[data-layout=topnav] .topnav .navbar-nav .nav-item.active>.nav-link,html[data-layout=topnav] .topnav .navbar-nav .nav-link.active{font-weight:700;color:#c6ae94!important}html[data-layout=topnav] .topnav .navbar-nav .nav-item.active>.nav-link .menu-icon i,html[data-layout=topnav] .topnav .navbar-nav .nav-link.active .menu-icon i{color:#c6ae94!important}html[data-layout=topnav] .topnav .dropdown-menu{border-radius:.5rem;padding:.5rem 0;background-color:#535b40!important;border:1px solid #ffffff26!important;box-shadow:0 8px 24px #0000002e!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item,html[data-layout=topnav] .topnav .dropdown.active>a.dropdown-item{padding:.5rem 1.25rem;font-weight:500;transition:all .15s;color:#fff!important;background:0 0!important;justify-content:flex-start!important;align-items:center!important;gap:.5rem!important;display:flex!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item.dropdown-toggle{justify-content:space-between!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item:hover,html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item.hover{color:#c6ae94!important;background-color:#ffffff1f!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item.active,html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item:active,html[data-layout=topnav] .topnav .dropdown-menu .dropdown.active>a.dropdown-item,html[data-layout=topnav] .topnav .dropdown.active>a.dropdown-item,.topnav .dropdown.active>a.dropdown-item{color:#c6ae94!important;background:#ffffff2e!important;font-weight:600!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item i,html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item .menu-arrow{color:inherit!important}html[data-layout=topnav] .app-topbar .logo{align-items:center;min-height:auto!important;padding:0!important;display:flex!important}html[data-layout=topnav] .app-topbar .logo img{width:auto!important;height:40px!important}@media (min-width:992px){html[data-layout=topnav] .topnav .navbar-nav>.nav-item>.dropdown-menu{display:none!important;position:absolute!important;top:100%!important;left:0!important}html[data-layout=topnav] .topnav .navbar-nav>.nav-item:hover>.dropdown-menu{display:block!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown>.dropdown-menu{margin-top:-.5rem!important;margin-left:.25rem!important;display:none!important;position:absolute!important;top:0!important;left:100%!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown:hover>.dropdown-menu{display:block!important}}@media (max-width:991.98px){html[data-layout=topnav] .topnav .navbar-nav{padding:.5rem 0}html[data-layout=topnav] .topnav .dropdown-menu,html[data-layout=topnav] .topnav .dropdown-menu .dropdown>.dropdown-menu{float:none!important;width:100%!important;box-shadow:none!important;background-color:#0003!important;border:none!important;border-radius:.5rem!important;margin-top:.25rem!important;margin-bottom:.25rem!important;margin-left:0!important;padding:.25rem .5rem!important;position:static!important;top:0!important;left:0!important}html[data-layout=topnav] .topnav .dropdown-menu:not(.show){display:none!important}html[data-layout=topnav] .topnav .dropdown-menu.show{display:block!important}html[data-layout=topnav] .topnav .dropdown-menu .dropdown-item{margin-bottom:.125rem;border-radius:.375rem!important;padding:.45rem .75rem!important}}@media (max-width:767.98px){.page-title{font-size:1.15rem!important}.table-responsive{width:100%;display:block;-webkit-overflow-scrolling:touch!important;overflow-x:auto!important}.table-responsive .table{min-width:650px}.table{font-size:.8125rem}.table th,.table td{white-space:nowrap;padding:.5rem}.card-body{padding:.875rem}.form-control,.form-select{min-height:38px;font-size:.875rem}.btn-sm{min-height:36px;padding:.35rem .75rem}.modal-dialog{align-items:center!important;min-height:calc(100% - 1rem)!important;margin:.5rem auto!important;display:flex!important}.modal-content{max-height:calc(100vh - 2rem)!important;overflow-y:auto!important}.page-title-box-group{flex-wrap:wrap;gap:.5rem}}@media (max-width:575.98px){.page-container{padding-left:.75rem;padding-right:.75rem}}.pos-page{width:100%}.pos-page .btn-lg{min-height:52px;font-size:1.05rem}.pos-product-card{cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .15s,box-shadow .15s}.pos-product-card:active{transform:scale(.97)}.scrollbar-none::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.no-scrollbar::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.scrollbar-none,.no-scrollbar{-ms-overflow-style:none!important;scrollbar-width:none!important}.monitor-fullscreen{background-color:var(--bs-body-bg,#f3f4f7);width:100vw;max-width:100vw;height:100vh;max-height:100vh;color:var(--bs-body-color,#313a46);-webkit-user-select:none;user-select:none;flex-direction:column;margin:0;padding:0;font-family:Lexend,Inter,sans-serif;display:flex;overflow:hidden!important}.monitor-fullscreen.idle-cursor,.monitor-fullscreen.idle-cursor *{cursor:none!important}.monitor-fullscreen .monitor-header{background:var(--bs-card-bg,#fff);border-bottom:1px solid var(--bs-border-color,#00000014);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;height:52px;min-height:52px;max-height:52px;padding:0 16px;display:flex;box-shadow:0 1px 3px #00000008}.monitor-fullscreen .monitor-body{background:var(--bs-body-bg,#f3f4f7);flex:1;gap:12px;width:100%;height:calc(100vh - 92px);min-height:0;max-height:calc(100vh - 92px);padding:10px;display:flex;overflow:hidden!important}.monitor-fullscreen .sport-block{background:var(--bs-card-bg,#fff);border:1px solid var(--bs-border-color,#00000014);border-radius:12px;flex-direction:column;flex:1;min-width:0;height:100%;max-height:100%;display:flex;box-shadow:0 2px 8px #00000008;overflow:hidden!important}.monitor-fullscreen .sport-block .sport-header{border-bottom:1px solid var(--bs-border-color,#00000014);background:var(--bs-tertiary-bg,#f8fafc);flex-shrink:0;padding:8px 14px}.monitor-fullscreen .sport-block .sport-content{flex-direction:column;flex:1;gap:8px;height:100%;min-height:0;padding:8px;display:flex;overflow:hidden}.monitor-fullscreen .sport-block .sport-footer{border-top:1px solid var(--bs-border-color,#00000014);background:var(--bs-tertiary-bg,#f8fafc);flex-shrink:0;padding:6px 14px;font-size:.75rem}.monitor-fullscreen .bay-card{background:var(--bs-card-bg,#fff);border:1px solid var(--bs-border-color,#00000014);border-radius:10px;flex-direction:column;flex:1;justify-content:space-between;min-height:0;padding:8px 10px;transition:all .2s;display:flex;overflow:hidden;box-shadow:0 1px 2px #00000005}.monitor-fullscreen .bay-card:hover{border-color:var(--bs-primary-border-subtle,#b4c6fc);box-shadow:0 3px 8px #0000000f}.monitor-fullscreen .bay-card.status-occupied{background:var(--bs-danger-bg-subtle,#dc26260a);border-color:var(--bs-danger-border-subtle,#dc262640)}.monitor-fullscreen .bay-card.status-available{background:var(--bs-success-bg-subtle,#22c55e08);border-color:var(--bs-success-border-subtle,#22c55e33)}.monitor-fullscreen .bay-card.status-ending_soon{background:var(--bs-warning-bg-subtle,#eab3080d);border-color:var(--bs-warning-border-subtle,#eab30859)}.monitor-fullscreen .status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.monitor-fullscreen .status-dot.available{background:#22c55e;box-shadow:0 0 6px #22c55e99}.monitor-fullscreen .status-dot.occupied{background:#ef4444;box-shadow:0 0 6px #ef444499}.monitor-fullscreen .status-dot.ending-soon{background:#eab308;animation:1.8s infinite monitor-pulse-ring;box-shadow:0 0 8px #eab308cc}@keyframes monitor-pulse-ring{0%{transform:scale(.95);box-shadow:0 0 #eab308b3}70%{transform:scale(1.1);box-shadow:0 0 0 6px #eab30800}to{transform:scale(.95);box-shadow:0 0 #eab30800}}.monitor-fullscreen .monitor-footer{background:var(--bs-card-bg,#fff);border-top:1px solid var(--bs-border-color,#00000014);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;height:40px;min-height:40px;max-height:40px;padding:0 16px;display:flex;box-shadow:0 -1px 3px #00000005}.monitor-fullscreen .facility-title{color:var(--bs-heading-color,var(--bs-body-color));font-size:clamp(.85rem,1vw,1rem);font-weight:700;line-height:1.2}.monitor-fullscreen .customer-text{color:var(--bs-body-color);font-size:clamp(.75rem,.85vw,.85rem)}.monitor-fullscreen .time-remaining-text{color:var(--bs-secondary-color);font-size:clamp(.75rem,.8vw,.8rem)}.monitor-fullscreen .sport-title-text{color:var(--bs-heading-color,var(--bs-body-color));font-size:clamp(1rem,1.1vw,1.15rem);font-weight:700}.monitor-fullscreen .clock-display-text{letter-spacing:.5px;font-family:monospace;font-size:clamp(1rem,1.1vw,1.15rem);font-weight:700}.monitor-fullscreen .court-schedule-strip{background:var(--bs-tertiary-bg,#00000008);border:1px solid var(--bs-border-color-translucent,#0000000f);border-radius:4px;align-items:center;gap:1.5px;height:clamp(14px,1.6vh,18px);padding:2px;display:grid}.monitor-fullscreen .schedule-hour-cell{cursor:default;-webkit-user-select:none;user-select:none;border-radius:2px;justify-content:center;align-items:center;height:100%;font-size:clamp(7.5px,.65vw,9px);font-weight:700;transition:all .2s;display:flex}.monitor-fullscreen .schedule-hour-cell.free{background:var(--bs-light,#0000000a);color:var(--bs-secondary-color,#64748b)}.monitor-fullscreen .schedule-hour-cell.booked{background:var(--bs-primary,#4680ff);color:#fff}.monitor-fullscreen .schedule-hour-cell.in-use{background:var(--bs-danger,#ef4444);color:#fff}.monitor-fullscreen .slot-chips-container{flex-wrap:wrap;gap:3px;max-height:48px;display:flex;overflow:hidden}.monitor-fullscreen .slot-chip{padding:1px 5px;font-size:clamp(9px,.7vw,10.5px);line-height:1.3}@media (min-width:2560px),(min-height:1200px){.monitor-fullscreen .monitor-header{height:68px;min-height:68px;padding:0 28px}.monitor-fullscreen .monitor-footer{height:52px;min-height:52px;padding:0 28px}.monitor-fullscreen .monitor-body{gap:18px;height:calc(100vh - 120px);max-height:calc(100vh - 120px);padding:18px}.monitor-fullscreen .sport-block{border-radius:16px}.monitor-fullscreen .sport-block .sport-header{padding:12px 18px}.monitor-fullscreen .sport-block .sport-content{gap:12px;padding:12px}.monitor-fullscreen .bay-card{border-radius:14px;padding:14px 16px}.monitor-fullscreen .court-schedule-strip{gap:2px;height:24px;padding:3px}}
