.sidebar{width:250px;background:linear-gradient(180deg,#0e2422,#091817);color:#d4ede9;display:flex;flex-direction:column;height:100vh;position:fixed;left:0;top:0;overflow-y:auto;-webkit-user-select:none;user-select:none;border-right:1px solid rgba(255,255,255,.05);box-shadow:2px 0 16px #00000038;z-index:50}.sidebar-header{padding:16px 16px 14px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.08);background:#0000002e}.sidebar-brand-logo-img{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid rgba(200,168,130,.45);box-shadow:0 2px 10px #0000004d}.sidebar-brand-ar{font-family:var(--font-brand-arabic);font-size:.95rem;font-weight:700;color:#fff;line-height:1.1;letter-spacing:.02em}.sidebar-brand-title{font-family:var(--font-brand);font-size:.9rem;font-weight:700;color:var(--color-brand-gold);letter-spacing:.1em;line-height:1.2}.sidebar-brand-subtitle{font-size:.6rem;font-weight:500;color:#c8e0dc;opacity:.7;letter-spacing:.05em}.sidebar-section{padding:16px 12px 6px}.sidebar-section-title{padding:0 12px;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#7ec4bc;opacity:.7;margin-bottom:6px}.sidebar-nav{display:flex;flex-direction:column;gap:3px}.sidebar-link{padding:9px 14px;display:flex;align-items:center;gap:12px;color:#a8d4ce;font-size:.84rem;font-weight:500;border-radius:8px;transition:all .15s ease;position:relative;letter-spacing:-.005em}.sidebar-link svg{flex-shrink:0;opacity:.85;transition:opacity .15s ease}.sidebar-link:hover svg,.sidebar-link.active svg{opacity:1}.sidebar-link:hover{background-color:#ffffff14;color:#fff;transform:translate(2px)}.sidebar-link.active{background:linear-gradient(90deg,#5aa89e38,#5aa89e0f);color:#fff;font-weight:600;border-left:3px solid #5aa89e}.sidebar-footer{margin-top:auto;padding:16px 14px;border-top:1px solid rgba(255,255,255,.08);background:#0003}.user-info{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:4px}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#3a7a72,#2a5e58);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.95rem;color:#fff;box-shadow:0 2px 8px #00000040}.user-details{display:flex;flex-direction:column}.user-name{font-size:.85rem;font-weight:600;color:#fff;letter-spacing:-.01em}.user-role{font-size:.7rem;color:#7ec4bc;text-transform:capitalize;letter-spacing:.01em}.logout-btn{width:100%;padding:8px 12px;background:#ffffff0f;color:#c4d8d5;border-radius:8px;font-size:.8rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s ease;border:1px solid rgba(255,255,255,.08);letter-spacing:.01em}.logout-btn:hover{background:#dc262633;color:#fecdd3;border-color:#dc26264d}.sidebar-resizer{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:60;transition:background-color .15s ease}.sidebar-resizer:hover,.sidebar.is-resizing .sidebar-resizer{background-color:var(--color-brand-gold, #c8a882);box-shadow:0 0 6px #c8a88299}.sidebar.is-resizing{-webkit-user-select:none;user-select:none}.sidebar-toggle-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#a8d4ce;border-radius:6px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .15s ease}.sidebar-toggle-btn:hover{background:#ffffff24;color:#fff;border-color:#ffffff40}.sidebar.collapsed{width:68px!important}.sidebar.collapsed .sidebar-header{padding:14px 8px;justify-content:center;position:relative}.sidebar.collapsed .sidebar-brand-logo-img{width:36px;height:36px}.sidebar.collapsed .sidebar-toggle-btn{position:absolute;right:-10px;top:18px;background:#0e2422;border:1px solid rgba(255,255,255,.2);width:20px;height:20px;border-radius:50%;box-shadow:0 2px 6px #0006;z-index:65}.sidebar.collapsed .sidebar-section{padding:10px 8px 4px}.sidebar.collapsed .sidebar-link{padding:10px 0;justify-content:center;border-radius:8px}.sidebar.collapsed .sidebar-link span{display:none}.sidebar.collapsed .sidebar-link.active{border-left:none;background:#5aa89e40;box-shadow:inset 0 0 0 1px #5aa89e66}.sidebar.collapsed .sidebar-footer{padding:12px 6px;display:flex;flex-direction:column;align-items:center;gap:10px}.sidebar.collapsed .user-info{margin-bottom:0;padding:0;justify-content:center}.sidebar.collapsed .logout-btn{padding:8px 0;width:38px;height:38px;border-radius:8px;justify-content:center}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top,#134e4a,#0d2826 60%,#061716);padding:24px}.auth-card{width:100%;max-width:420px;padding:40px;background:var(--color-card);border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px #00000073;border:1px solid var(--color-border)}.auth-header{text-align:center;margin-bottom:28px}.auth-logo{width:54px;height:54px;margin:0 auto 14px;background:linear-gradient(135deg,#14b8a6,#0f766e);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;box-shadow:0 4px 12px #14b8a659}.auth-title{color:var(--color-text-primary);font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.auth-subtitle{color:var(--color-text-secondary);font-size:.82rem;margin-top:4px}.auth-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.78rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.auth-error{background-color:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border);padding:10px 14px;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;text-align:center;animation:shake .3s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .18s ease-out}html.dark .modal-overlay,[data-theme=dark] .modal-overlay{background-color:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{background:var(--color-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;display:flex;flex-direction:column;border:1px solid var(--color-border);animation:modalPop .2s cubic-bezier(.16,1,.3,1);overflow:hidden}html.dark .modal-content,[data-theme=dark] .modal-content{border:1px solid var(--color-border-strong);box-shadow:0 25px 60px -10px #000000d9}.modal-sm{width:420px}.modal-md{width:620px}.modal-lg{width:840px;max-width:92vw}.modal-header{padding:18px 24px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;background:var(--color-card-secondary)}.modal-title{font-size:1.15rem;font-weight:800;color:var(--color-text-primary);letter-spacing:-.01em}.modal-close{width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:var(--color-text-secondary);transition:all .15s ease}.modal-close:hover{background:var(--color-border);color:var(--color-text-primary)}.modal-body{padding:24px;overflow-y:auto}.modal-footer{padding:16px 24px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:12px;background:var(--color-card)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalPop{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.rack-page{display:flex;flex-direction:column;gap:14px}.rack-toolbar-container{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow-sm);flex-wrap:nowrap;overflow-x:auto}.rack-toolbar-left{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;flex-shrink:0}.rack-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;flex-shrink:0}.date-picker-box{display:inline-flex;align-items:center;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:3px 6px;gap:4px;box-shadow:var(--shadow-xs);transition:border-color .15s}.date-picker-box:hover{border-color:var(--color-accent-light)}.date-picker-arrow-btn{background:transparent;border:none;font-size:1rem;color:var(--color-text-secondary);cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .15s}.date-picker-arrow-btn:hover{background:var(--color-card-secondary);color:var(--color-text-primary)}.date-picker-display{display:flex;flex-direction:column;align-items:center;padding:0 4px;-webkit-user-select:none;user-select:none}.date-picker-label{font-size:.6rem;font-weight:700;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.05em}.date-picker-input{border:none;background:transparent;font-size:.82rem;font-weight:700;color:var(--color-text-primary);cursor:pointer;padding:0;outline:none;text-align:center}.date-picker-sublabel{font-size:.68rem;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.pill-group{display:inline-flex;gap:2px;background:var(--color-card-secondary);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:2px}.pill-btn{padding:5px 10px;border-radius:var(--radius-pill);background:transparent;border:none;font-size:.74rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s ease}.pill-btn:hover{color:var(--color-text-primary)}.pill-btn.active{background:var(--color-card);color:var(--color-accent);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);font-weight:700}.btn-toolbar-action{border-radius:var(--radius-sm);padding:7px 12px;font-size:.8rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;flex-shrink:0;transition:all .15s ease}.btn-rates{background:var(--color-card);color:var(--color-text-primary);border:1px solid var(--color-border);box-shadow:var(--shadow-xs)}.btn-rates:hover{background:var(--color-card-secondary);border-color:var(--color-border-strong)}.btn-arrivals{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;box-shadow:var(--shadow-xs)}.btn-arrivals:hover{background:#dcfce7;border-color:#86efac;transform:translateY(-1px)}.btn-arrivals .counter-badge{background:#16a34a;color:#fff;font-size:.7rem;font-weight:800;padding:1px 7px;border-radius:999px;margin-left:2px}.btn-departures{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa;box-shadow:var(--shadow-xs)}.btn-departures:hover{background:#ffedd5;border-color:#fdba74;transform:translateY(-1px)}.btn-departures .counter-badge{background:#ea580c;color:#fff;font-size:.7rem;font-weight:800;padding:1px 7px;border-radius:999px;margin-left:2px}[data-theme=dark] .btn-arrivals,html.dark .btn-arrivals{background:#16653438;color:#86efac;border-color:#4ade8059}[data-theme=dark] .btn-arrivals:hover,html.dark .btn-arrivals:hover{background:#16653459}[data-theme=dark] .btn-departures,html.dark .btn-departures{background:#9a341238;color:#fdba74;border-color:#fb923c59}[data-theme=dark] .btn-departures:hover,html.dark .btn-departures:hover{background:#9a341259}.btn-new-booking{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-primary) 100%);color:#fff;border:none;box-shadow:0 2px 4px #2a4d4947}.btn-new-booking:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 4px 8px #2a4d4959}.search-unit-input{padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.8rem;outline:none;width:150px;background:var(--color-card);color:var(--color-text-primary);flex-shrink:0;transition:all .15s}.search-unit-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #3a64602e;width:180px}.rack-legend-bar{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 18px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;box-shadow:var(--shadow-xs)}.rack-legend-items{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.rack-legend-item{display:flex;align-items:center;gap:7px;color:var(--color-text-secondary);font-size:.78rem;font-weight:500}.legend-dot{width:12px;height:12px;border-radius:3px;box-shadow:0 1px 2px #0000001a}.rack-legend-hint{color:var(--color-text-muted);font-size:.75rem;font-weight:500}.rack-container{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:auto;max-height:calc(100vh - 240px);position:relative;box-shadow:var(--shadow-sm)}.rack-grid{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;table-layout:fixed}.rack-grid th,.rack-grid td{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:0;text-align:center}.rack-grid thead th{background:var(--color-card-secondary);color:var(--color-text-secondary);-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);transition:background-color .15s ease}.th-month-group{background:var(--color-card-secondary);position:sticky;top:0;z-index:26;padding:6px 10px;font-size:.74rem;font-weight:800;color:var(--color-text-primary);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--color-border-strong)!important;border-right:1px solid var(--color-border-strong)!important;height:30px;box-sizing:border-box;text-align:center;-webkit-user-select:none;user-select:none}.rack-grid thead tr.tr-days th.th-date-col{position:sticky;top:30px;z-index:25;width:74px;min-width:74px;max-width:74px;padding:8px 4px 6px;border-bottom:2px solid var(--color-border-strong)}.rack-grid thead th.col-unit-header{position:sticky;left:0;top:0;z-index:35;background:var(--color-card-secondary);text-align:left;padding:12px 18px;width:240px;min-width:240px;max-width:240px;box-sizing:border-box;font-size:.75rem;font-weight:800;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.08em;border-right:2px solid var(--color-border-strong);border-bottom:2px solid var(--color-border-strong);vertical-align:middle}.th-date-col{background:var(--color-card-secondary)}.th-date-day{font-size:.7rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.th-date-num{font-size:.9rem;font-weight:800;color:var(--color-text-primary);margin:1px 0;letter-spacing:-.01em}.th-date-pct{font-size:.65rem;font-weight:800;padding:1px 6px;border-radius:4px;display:inline-block;margin-top:2px;line-height:1.3;transition:all .15s ease;letter-spacing:.02em}.th-date-pct.pct-zero{color:var(--color-text-muted);background:transparent;opacity:.7}.th-date-pct.pct-low{color:#0f766e;background:#14b8a61f;border:1px solid rgba(20,184,166,.25)}.th-date-pct.pct-med{color:#047857;background:#10b98124;border:1px solid rgba(16,185,129,.28)}.th-date-pct.pct-high{color:#b45309;background:#f59e0b29;border:1px solid rgba(245,158,11,.32)}.th-date-pct.pct-full{color:#fff;background:#dc2626;font-weight:800;box-shadow:0 1px 3px #dc26264d}[data-theme=dark] .th-date-pct.pct-low,html.dark .th-date-pct.pct-low{color:#7ec4bc;background:#3a7a7233;border:1px solid rgba(90,168,158,.38)}[data-theme=dark] .th-date-pct.pct-med,html.dark .th-date-pct.pct-med{color:#6ee7b7;background:#10b98133;border:1px solid rgba(52,211,153,.38)}[data-theme=dark] .th-date-pct.pct-high,html.dark .th-date-pct.pct-high{color:#fcd34d;background:#d9770633;border:1px solid rgba(251,191,36,.4)}[data-theme=dark] .th-date-pct.pct-full,html.dark .th-date-pct.pct-full{color:#fff;background:#dc2626;box-shadow:0 1px 4px #dc262673}.rack-grid tbody td.col-unit{position:sticky;left:0;background:var(--color-card);z-index:15;padding:10px 18px;text-align:left;border-right:2px solid var(--color-border-strong);border-bottom:1px solid var(--color-border);width:240px;min-width:240px;max-width:240px;box-sizing:border-box;box-shadow:4px 0 8px -2px #0000000d}.unit-row-inner{display:flex;align-items:center;justify-content:space-between}.unit-name{font-weight:700;font-size:.88rem;color:var(--color-text-primary);letter-spacing:-.01em}.unit-type{font-size:.72rem;color:var(--color-text-muted);font-weight:500}.unit-badge{font-size:.65rem;font-weight:700;padding:2px 8px;background:var(--color-card-secondary);border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-secondary);text-transform:uppercase}.rack-cell-td{height:48px;width:72px;min-width:72px;max-width:72px;padding:2px!important}.rack-cell{width:100%;height:44px;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .15s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px;box-sizing:border-box}.rack-cell:hover{transform:scale(.97);box-shadow:0 2px 6px #00000026}.status-available{background-color:transparent;-webkit-user-select:none;user-select:none}.status-available:hover{background-color:#10b9811f;border:1px dashed #10b981}[data-theme=dark] .status-available:hover,html.dark .status-available:hover{background-color:#5aa89e1f;border:1px dashed #5aa89e}.rack-cell.status-available.is-drag-selecting{background:#3a646047!important;border:1.5px solid #3a7a72!important;border-radius:4px;box-shadow:0 0 0 1px #3a7a724d}[data-theme=dark] .rack-cell.status-available.is-drag-selecting,html.dark .rack-cell.status-available.is-drag-selecting{background:#5aa89e52!important;border:1.5px solid #5aa89e!important;box-shadow:0 0 8px #5aa89e4d!important}.status-reserved{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 2px 4px #2563eb40}.status-checked_in{background:linear-gradient(135deg,#059669,#047857);color:#fff;box-shadow:0 2px 4px #10b98140}.status-checked_out{background:linear-gradient(135deg,#64748b,#475569);color:#fff}.status-no_show{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;box-shadow:0 2px 4px #d9770647}.status-out_of_order{background:repeating-linear-gradient(45deg,#334155,#334155 10px,#1e293b 10px,#1e293b 20px)!important;color:#f1f5f9!important;border:1px solid #475569!important;box-shadow:0 2px 4px #0f172a66!important}[data-theme=dark] .status-out_of_order,html.dark .status-out_of_order{background:repeating-linear-gradient(45deg,#1f2937,#1f2937 10px,#111827 10px,#111827 20px)!important;border:1px solid #374151!important;box-shadow:0 2px 6px #00000080!important}.btn-out-of-order{background:#334155;color:#fff;border:1px solid #475569;border-radius:var(--radius-sm);padding:8px 15px;font-size:.82rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:7px;box-shadow:0 1px 3px #00000026;transition:all .15s ease}.btn-out-of-order:hover{background:#1e293b;border-color:#64748b;transform:translateY(-1px)}.rack-booking-td{padding:3px 2px!important;vertical-align:middle}.pms-booking-bar{width:100%;height:40px;border-radius:7px;display:flex;align-items:center;position:relative;padding:0 8px;gap:6px;cursor:pointer;box-shadow:0 2px 5px #0000001f,inset 0 1px #ffffff40;transition:all .15s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;box-sizing:border-box;overflow:hidden}.pms-booking-bar.status-out_of_order{border:1px solid #64748b}.pms-booking-bar.status-out_of_order:hover{filter:brightness(1.2);border-color:#94a3b8}.pms-ooo-badge{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.68rem;font-weight:800;background:#dc2626d9;border:1px solid rgba(255,255,255,.3);color:#fff;padding:2px 6px;border-radius:4px;letter-spacing:.04em;flex-shrink:0;display:inline-flex;align-items:center;gap:3px;line-height:1.2}.pms-ooo-text{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.84rem;font-weight:700;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px rgba(0,0,0,.8);flex:1}.pms-booking-bar:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 4px 12px #0003,inset 0 1px #ffffff59}.pms-id-badge{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.7rem;font-weight:800;background:#00000059;border:1px solid rgba(255,255,255,.22);color:#fff;padding:2px 6px;border-radius:4px;letter-spacing:.03em;flex-shrink:0;display:inline-flex;align-items:center;line-height:1.2}.pms-repeat-badge{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.66rem;font-weight:800;background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid rgba(255,255,255,.3);color:#fff;padding:2px 6px;border-radius:4px;letter-spacing:.02em;flex-shrink:0;display:inline-flex;align-items:center;gap:3px;box-shadow:0 1px 3px #00000040}.pms-source-badge{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.65rem;font-weight:800;padding:2px 6px;border-radius:4px;letter-spacing:.02em;flex-shrink:0;display:inline-flex;align-items:center;gap:3px;border:1px solid rgba(255,255,255,.25);box-shadow:0 1px 2px #0003;line-height:1.2}.pms-booking-bar.is-multi-day .pms-guest-name{flex:1;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.94rem;font-weight:700;color:#fff;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize;letter-spacing:.015em;padding:0 4px}.pms-booking-bar.is-single-day{padding:0 4px;gap:4px;justify-content:flex-start}.pms-booking-bar.is-single-day .pms-id-badge{font-size:.65rem;padding:1px 4px}.pms-booking-bar.is-single-day .pms-repeat-badge{display:none}.pms-booking-bar.is-single-day .pms-guest-name{flex:1;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:.8rem;font-weight:700;color:#fff;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.is-today{position:relative}.is-today:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--color-accent)}.is-today .th-date-num{color:var(--color-accent)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.admin-header h2{font-size:1.3rem;font-weight:800;color:var(--color-text-primary);letter-spacing:-.02em}.table-container{background:var(--color-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:14px 20px;text-align:left;border-bottom:1px solid var(--color-border)}.data-table th{background-color:var(--color-card-secondary);font-weight:700;color:var(--color-text-secondary);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.data-table tr:hover td{background-color:var(--color-card-secondary)}.data-table tr:last-child td{border-bottom:none}.action-buttons{display:flex;gap:8px}.btn-icon{padding:6px 10px;border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-card-secondary);border:1px solid var(--color-border);font-size:.85rem;transition:all .15s ease}.btn-icon:hover{background:var(--color-card-secondary);color:var(--color-text-primary);border-color:var(--color-border-strong);transform:translateY(-1px)}.btn-icon.delete:hover{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-pill);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.badge-admin{background:var(--color-accent-subtle);color:var(--color-accent);border:1px solid var(--color-brand-teal-light)}.badge-employee{background:var(--color-card-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.reservations-filter{display:flex;gap:14px;margin-bottom:20px;background:var(--color-card);padding:16px 20px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);flex-wrap:wrap}.reservations-filter .form-group{min-width:200px;flex:1}.reservation-detail-card{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:var(--color-card-secondary);padding:20px;border-radius:var(--radius-md);border:1px solid var(--color-border)}.detail-group{margin-bottom:8px}.detail-label{font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;font-weight:700;letter-spacing:.05em;margin-bottom:4px}.detail-value{font-size:1rem;font-weight:700;color:var(--color-text-primary)}.status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-pill);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.status-badge.reserved{background:var(--color-info-bg);color:var(--color-info);border:1px solid var(--color-info-border)}.status-badge.checked_in{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.status-badge.checked_out{background:var(--color-checked-out-bg);color:var(--color-checked-out);border:1px solid var(--color-checked-out-border)}.status-badge.no_show{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.pms-date-filter-container{display:flex;align-items:center;gap:12px;flex-wrap:wrap;width:100%;padding-top:10px;border-top:1px solid var(--color-border-subtle, rgba(0, 0, 0, .06))}.pms-date-capsule{display:inline-flex;align-items:center;background:var(--color-card-secondary, #f8fafc);border:1px solid var(--color-border, #cbd5e1);border-radius:8px;padding:4px 10px;transition:all .2s ease;min-height:38px}.pms-date-capsule:focus-within{border-color:var(--color-brand-teal, #0f766e);box-shadow:0 0 0 3px #0f766e1f;background:#fff}.pms-date-capsule.has-value{border-color:var(--color-brand-teal, #0f766e);background:#0f766e08}.pms-date-label{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary, #64748b);padding-right:10px;border-right:1px solid var(--color-border-subtle, #e2e8f0);white-space:nowrap}.pms-date-label svg{color:var(--color-brand-teal, #0f766e)}.pms-date-inputs{display:inline-flex;align-items:center;gap:6px;padding-left:8px}.pms-date-input{border:none!important;background:transparent!important;padding:3px 6px!important;font-size:.82rem!important;font-weight:600!important;color:var(--color-text-primary, #0f172a)!important;outline:none!important;box-shadow:none!important;cursor:pointer;width:125px}.pms-date-input:focus{background:#0f766e0f!important;border-radius:4px}.pms-date-arrow{color:var(--color-text-muted, #94a3b8);font-size:.8rem;font-weight:700;-webkit-user-select:none;user-select:none}.pms-date-clear-btn{background:none;border:none;color:#94a3b8;font-size:.74rem;cursor:pointer;padding:2px 5px;border-radius:4px;margin-left:4px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.pms-date-clear-btn:hover{color:#ef4444;background:#ef44441f}.pms-quick-chips{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.pms-quick-chip{padding:6px 11px;font-size:.75rem;font-weight:600;border-radius:6px;border:1px solid var(--color-border, #cbd5e1);background:var(--color-card, #ffffff);color:var(--color-text-secondary, #475569);cursor:pointer;transition:all .15s ease;white-space:nowrap}.pms-quick-chip:hover{border-color:var(--color-brand-teal, #0f766e);color:var(--color-brand-teal, #0f766e);background:#0f766e0d}.pms-quick-chip.active{background:var(--color-brand-teal, #0f766e);color:#fff;border-color:var(--color-brand-teal, #0f766e)}.executive-date-field{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;cursor:pointer;border-radius:6px;min-width:105px;-webkit-user-select:none;user-select:none;background:#00000005;transition:all .15s ease}.executive-date-field:hover{background:#0f766e14}.executive-date-text{font-size:.82rem;font-weight:600;white-space:nowrap;letter-spacing:.02em;pointer-events:none}.executive-date-text.is-placeholder{color:var(--color-text-muted, #94a3b8);font-weight:600;font-size:.76rem;letter-spacing:.05em}.executive-date-text.has-date{color:var(--color-brand-teal, #0f766e);font-weight:700}.executive-date-hidden-picker{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none!important;padding:0!important;margin:0!important;pointer-events:auto}.logs-page{padding:24px 32px;max-width:1440px;margin:0 auto;color:var(--color-text-primary);animation:fadeIn .25s ease-out}.logs-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:24px}.logs-header-title-group{display:flex;align-items:center;gap:14px}.logs-header-icon{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#3a646026,#c8a88233);border:1px solid var(--color-border);color:var(--color-brand-teal);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #2a4d4914}.logs-header h1{font-size:1.65rem;font-weight:800;color:var(--color-brand-teal-deep);letter-spacing:-.02em;margin:0;line-height:1.2}.logs-header-subtitle{margin:4px 0 0;font-size:.84rem;color:var(--color-text-secondary);font-weight:500}.logs-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.logs-live-beacon{display:inline-flex;align-items:center;gap:8px;background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;padding:6px 14px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.02em;box-shadow:0 1px 2px #10b98114}.logs-beacon-dot{width:8px;height:8px;border-radius:50%;background-color:#10b981;position:relative}.logs-beacon-dot:after{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:50%;background-color:#10b981;opacity:.6;animation:beaconPulse 2s infinite ease-out}@keyframes beaconPulse{0%{transform:scale(1);opacity:.8}to{transform:scale(2.6);opacity:0}}.logs-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:24px}.logs-kpi-card{background:var(--color-card);border:1.5px solid var(--color-border);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 3px #0000000a;position:relative;overflow:hidden}.logs-kpi-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000000f;border-color:var(--color-brand-teal)}.logs-kpi-card.active{border-color:var(--color-brand-teal);background:linear-gradient(180deg,#fff,#f4f8f7);box-shadow:0 0 0 3px #3a646026,0 4px 12px #0000000f}.logs-kpi-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.logs-kpi-label{font-size:.74rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}.logs-kpi-icon-wrap{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center}.logs-kpi-number{font-size:1.85rem;font-weight:800;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,monospace;line-height:1.1;letter-spacing:-.02em}.logs-kpi-footer{font-size:.72rem;color:var(--color-text-secondary);font-weight:500;margin-top:6px;display:flex;align-items:center;gap:4px}.logs-segmented-nav{display:flex;align-items:center;gap:6px;background:var(--color-card-secondary);border:1px solid var(--color-border);padding:5px;border-radius:12px;margin-bottom:16px;overflow-x:auto;scrollbar-width:none}.logs-segmented-nav::-webkit-scrollbar{display:none}.logs-tab-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--color-text-secondary);font-size:.8rem;font-weight:700;cursor:pointer;transition:all .15s ease;white-space:nowrap}.logs-tab-btn:hover{background:#ffffffb3;color:var(--color-text-primary)}.logs-tab-btn.active{background:#fff;color:var(--color-brand-teal-deep);border-color:var(--color-border);box-shadow:0 2px 5px #0000000d}.logs-tab-badge{font-size:.7rem;padding:1px 7px;border-radius:999px;font-weight:800}.logs-filter-card{background:var(--color-card);border:1.5px solid var(--color-border);border-radius:14px;padding:16px 20px;margin-bottom:22px;box-shadow:0 1px 3px #00000008}.logs-filter-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr auto;gap:12px;align-items:flex-end}@media (max-width: 1100px){.logs-filter-grid{grid-template-columns:1fr 1fr}}@media (max-width: 650px){.logs-filter-grid{grid-template-columns:1fr}}.logs-filter-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:6px;display:block}.logs-main-card{background:var(--color-card);border:1.5px solid var(--color-border);border-radius:16px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.logs-card-header{padding:16px 24px;background:#fafcfc;border-bottom:1.5px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.logs-card-title{font-size:.94rem;font-weight:800;color:var(--color-brand-teal-deep);display:flex;align-items:center;gap:8px}.logs-view-toggle{display:flex;align-items:center;background:#f1f5f9;border:1px solid var(--color-border);border-radius:8px;padding:2px}.logs-view-toggle button{border:none;background:transparent;padding:5px 12px;border-radius:6px;font-size:.76rem;font-weight:700;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .15s ease}.logs-view-toggle button.active{background:#fff;color:var(--color-brand-teal-deep);box-shadow:0 1px 3px #00000014}.logs-timeline-date-group{position:relative;padding:20px 24px 8px;border-bottom:1px solid var(--color-border-subtle)}.logs-timeline-date-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#eef5f4;border:1px solid #c8dedb;color:var(--color-brand-teal-dark);font-size:.76rem;font-weight:800;border-radius:20px;margin-bottom:16px;letter-spacing:.02em}.logs-event-card{position:relative;padding:16px 20px;border-radius:12px;border:1px solid var(--color-border-subtle);border-left:5px solid #cbd5e1;background:#fff;margin-bottom:12px;transition:all .18s ease}.logs-event-card.logs-event-create{border-left-color:#10b981}.logs-event-card.logs-event-update{border-left-color:#3b82f6}.logs-event-card.logs-event-delete{border-left-color:#ef4444}.logs-event-card.logs-event-status_change{border-left-color:#f59e0b}.logs-event-card:hover{border-color:var(--color-border);box-shadow:0 4px 12px #0000000a;background:#fafcfc}.logs-event-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:10px}.logs-actor-pill{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:8px;font-size:.86rem;box-shadow:0 1px 2px #00000008}.logs-actor-action-text{font-weight:700;opacity:.95}.logs-actor-name-highlight{font-weight:800;color:#0f172a}.logs-actor-username-text{font-size:.74rem;font-family:monospace;color:#64748b;font-weight:600}.logs-user-pill{display:flex;align-items:center;gap:10px}.logs-user-avatar{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.88rem;color:#fff;box-shadow:0 2px 4px #0000001a}.logs-user-name{font-size:.88rem;font-weight:800;color:var(--color-text-primary);line-height:1.2}.logs-user-username{font-size:.74rem;font-family:monospace;font-weight:600;color:var(--color-text-muted)}.logs-action-badge{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:800;padding:3px 10px;border-radius:6px;letter-spacing:.03em;text-transform:uppercase}.logs-entity-badge{font-size:.74rem;font-weight:800;font-family:monospace;padding:4px 9px;border-radius:6px;background:#f1f5f9;border:1px solid #e2e8f0;color:#334155;display:inline-flex;align-items:center;gap:6px}.logs-time-badge{font-family:monospace;font-size:.78rem;font-weight:700;color:#475569;display:inline-flex;align-items:center;gap:5px}.logs-event-desc{font-size:.9rem;color:var(--color-text-primary);font-weight:500;line-height:1.5;margin-bottom:8px}.logs-diff-container{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--color-border)}.logs-diff-chip{display:inline-flex;align-items:center;gap:6px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:4px 10px;font-size:.76rem;color:#334155}.logs-diff-chip strong{color:var(--color-brand-teal-dark)}.logs-diff-arrow{color:#94a3b8;font-weight:800}.logs-table{width:100%;border-collapse:collapse;font-size:.84rem}.logs-table th{background:#f8fafc;border-bottom:1.5px solid var(--color-border);padding:12px 18px;text-align:left;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.logs-table td{padding:14px 18px;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.logs-table tr:hover td{background:#fafcfc}.logs-pagination-bar{padding:14px 24px;background:#fafcfc;border-top:1.5px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}:root{--color-brand-teal: #3a6460;--color-brand-teal-dark: #2a4d49;--color-brand-teal-deep: #1a3330;--color-brand-teal-light: #4d8078;--color-brand-gold: #c8a882;--color-brand-gold-light: #e0cbb4;--color-brand-gold-subtle: #f9f4ee;--color-brand-gold-dark: #a8845e;--color-primary: #2a4d49;--color-primary-hover: #3a6460;--color-primary-active: #4d8078;--color-accent: #3a6460;--color-accent-light: #4d8078;--color-accent-hover: #2a4d49;--color-accent-subtle: #eef5f4;--color-success: #0e9f6e;--color-success-bg: #ecfdf5;--color-success-border: #a7f3d0;--color-info: #2563eb;--color-info-bg: #eff6ff;--color-info-border: #bfdbfe;--color-warning: #d97706;--color-warning-bg: #fffbeb;--color-warning-border: #fde68a;--color-danger: #dc2626;--color-danger-bg: #fff1f2;--color-danger-border: #fecdd3;--color-checked-out: #64748b;--color-checked-out-bg: #f8fafc;--color-checked-out-border: #cbd5e1;--color-bg-page: #f5f7f5;--color-card: #ffffff;--color-card-secondary:#f0f4f3;--color-text-primary: #12211f;--color-text-secondary: #3d5c59;--color-text-muted: #7a9c99;--color-border: #d6e4e2;--color-border-subtle: #e8f0ef;--color-border-strong: #b8d0cd;--radius-xs: 4px;--radius-sm: 7px;--radius-md: 11px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 9999px;--shadow-xs: 0 1px 2px 0 rgba(18, 33, 31, .05);--shadow-sm: 0 1px 4px 0 rgba(18, 33, 31, .08), 0 1px 2px -1px rgba(18, 33, 31, .04);--shadow-md: 0 4px 10px -2px rgba(18, 33, 31, .09), 0 2px 4px -2px rgba(18, 33, 31, .04);--shadow-lg: 0 10px 20px -4px rgba(18, 33, 31, .1), 0 4px 6px -4px rgba(18, 33, 31, .05);--shadow-xl: 0 20px 32px -6px rgba(18, 33, 31, .12), 0 8px 12px -6px rgba(18, 33, 31, .06);--shadow-inner: inset 0 2px 4px 0 rgba(18, 33, 31, .06);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-brand: "Cinzel", "Cormorant Garamond", serif;--font-brand-serif: "Cormorant Garamond", Georgia, serif;--font-brand-arabic: "Amiri", "Traditional Arabic", serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}html.dark,[data-theme=dark]{color-scheme:dark;--color-brand-teal: #5aa89e;--color-brand-teal-dark: #3a7a72;--color-brand-teal-deep: #1e4a45;--color-brand-teal-light: #7ec4bc;--color-brand-gold: #d4b896;--color-brand-gold-light: #e8d0b8;--color-brand-gold-subtle: #1e1a15;--color-brand-gold-dark: #b8946e;--color-primary: #3a7a72;--color-primary-hover: #5aa89e;--color-primary-active: #7ec4bc;--color-accent: #5aa89e;--color-accent-light: #7ec4bc;--color-accent-hover: #3a7a72;--color-accent-subtle: rgba(90, 168, 158, .14);--color-success: #34d399;--color-success-bg: rgba(16, 185, 129, .14);--color-success-border: rgba(52, 211, 153, .3);--color-info: #60a5fa;--color-info-bg: rgba(37, 99, 235, .14);--color-info-border: rgba(96, 165, 250, .32);--color-warning: #fbbf24;--color-warning-bg: rgba(217, 119, 6, .14);--color-warning-border: rgba(251, 191, 36, .3);--color-danger: #f87171;--color-danger-bg: rgba(220, 38, 38, .16);--color-danger-border: rgba(248, 113, 113, .32);--color-checked-out: #94a3b8;--color-checked-out-bg: rgba(148, 163, 184, .1);--color-checked-out-border: rgba(148, 163, 184, .22);--color-bg-page: #090e0d;--color-card: #101918;--color-card-secondary:#162221;--color-text-primary: #e8f4f2;--color-text-secondary: #8ab5b0;--color-text-muted: #4e7a75;--color-border: #1c2f2d;--color-border-subtle: #131f1e;--color-border-strong: #27403d;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .55);--shadow-sm: 0 2px 5px 0 rgba(0, 0, 0, .48), 0 1px 2px -1px rgba(0, 0, 0, .38);--shadow-md: 0 4px 12px -2px rgba(0, 0, 0, .58), 0 2px 4px -2px rgba(0, 0, 0, .38);--shadow-lg: 0 12px 28px -4px rgba(0, 0, 0, .68), 0 4px 8px -4px rgba(0, 0, 0, .42);--shadow-xl: 0 24px 40px -8px rgba(0, 0, 0, .78), 0 8px 14px -6px rgba(0, 0, 0, .52);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .52)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14.5px}body{font-family:var(--font-sans);background-color:var(--color-bg-page);color:var(--color-text-primary);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;background:none;font-family:inherit}input,select,textarea{font-family:inherit;font-size:.9rem;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;transition:all .15s ease;background-color:var(--color-card);color:var(--color-text-primary)}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #3a64602e}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--color-card) inset!important;-webkit-text-fill-color:var(--color-text-primary)!important;transition:background-color 5000s ease-in-out 0s}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;transition:all .15s ease;-webkit-user-select:none;user-select:none;border:1px solid transparent}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--color-accent);color:#fff;box-shadow:0 1px 2px #2a4d4938}.btn-primary:hover{background-color:var(--color-accent-hover);box-shadow:0 2px 4px #2a4d4947}.btn-secondary{background-color:var(--color-card);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-card-secondary);color:var(--color-text-primary);border-color:var(--color-border-strong)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover{background-color:#be123c}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}html.dark ::-webkit-scrollbar-thumb,[data-theme=dark] ::-webkit-scrollbar-thumb{background:#253346}html.dark ::-webkit-scrollbar-thumb:hover,[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#394d68}.card{background:var(--color-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:background-color .2s ease,border-color .2s ease}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media print{html,body{background:#fff!important;color:#0f172a!important;font-size:11pt!important;margin:0!important;padding:0!important}body *{visibility:hidden!important}.sidebar,.topbar,.reservations-filter,.modal-overlay,.modal-header,.modal-close,.no-print{display:none!important;visibility:hidden!important}.printable-report,.printable-report *,.printable-reservation,.printable-reservation *{visibility:visible!important}.printable-report,.printable-reservation{position:fixed!important;left:0!important;top:0!important;width:100%!important;margin:0!important;padding:10mm!important;background:#fff!important;border:none!important;box-shadow:none!important;z-index:999999!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}@page{size:auto;margin:8mm}}
