/* === تصغير كامل النظام إلى 80% مثل Ctrl + Scroll === */
:root{--site-page-zoom:.8}
@supports (zoom: 1){
  html{zoom:var(--site-page-zoom)}
}
@supports not (zoom: 1){
  body{
    width:calc(100% / var(--site-page-zoom));
    min-height:calc(100vh / var(--site-page-zoom));
    transform:scale(var(--site-page-zoom));
    transform-origin:top right;
    overflow-x:hidden!important;
  }
}

:root{user-select:none;--primary:#1e3a8a;--primary-light:#3b82f6;--primary-dark:#1e40af;--secondary:#f59e0b;--success:#10b981;--danger:#ef4444;--logout-accent:#2e6f6e;--logout-accents:white;--logout-accent-dark:#991b1b;--warning:#f59e0b;--info:#06b6d4;--dark:#1f2937;--light:#f8fafc;--border:#e5e7eb;--text:#374151;--text-light:#6b7280;--bg-gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--bg-gradient-alt:linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);--shadow:0 10px 15px -3px rgba(0, 0, 0, 0.1);--shadow-lg:0 20px 25px -5px rgba(0, 0, 0, 0.1);--shadow-xl:0 25px 50px -12px rgba(0, 0, 0, 0.25);--radius:12px;--radius-lg:16px;--transition:background-color 0.22s ease,color 0.22s ease,border-color 0.22s ease,box-shadow 0.22s ease,transform 0.22s ease,opacity 0.22s ease;--transition-fast:background-color 0.15s ease,color 0.15s ease,border-color 0.15s ease,box-shadow 0.15s ease,transform 0.15s ease,opacity 0.15s ease;--card:#ffffff;--card-bg:#ffffff;--border-soft:rgba(2, 6, 23, 0.2);--border-soft-2:rgba(2, 6, 23, 0.14);--bg-soft:rgba(2, 6, 23, 0.03)}html.theme-changing *,html.theme-changing ::after,html.theme-changing ::before{transition:none!important;animation:none!important}body.no-sidebar .side-nav{display:none!important}body.no-sidebar .nav-toggle{display:none!important}body.readonly .row-actions{display:none!important}.hall-card .book-hall-btn{display:block;width:100%;margin-top:14px;padding:14px 18px;font-size:1.05rem;border-radius:var(--radius-lg)}.hall-card .book-hall-btn.disabled,.hall-card .book-hall-btn:disabled{opacity:.45;cursor:not-allowed}.hint{min-height:1.6em}.card.pagination{margin-top:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.card.pagination .meta{opacity:.85;font-weight:900}.card.pagination .meta .sep{margin:0 8px;opacity:.5}.card.pagination .pager{display:flex;gap:10px;align-items:center}.card.pagination .pager .btn{height:40px}@media (max-width:640px){.card.pagination{padding:12px 12px}.card.pagination .pager{width:100%;justify-content:space-between}}.table .row{display:grid;grid-template-columns:80px 150px 200px 120px 120px 1fr;align-items:center;padding:8px 10px;border-bottom:1px solid #eee}.table .row.head{font-weight:700;background:#f5f7fa}.actions{display:flex;gap:8px;justify-content:center}.actions .btn{min-width:80px;padding:6px 12px;border-radius:10px;font-weight:500;font-size:14px;cursor:pointer}.modal-overlay.show{display:flex}.modal-overlay.show{display:flex;align-items:center;justify-content:center;z-index:9999}.modal{opacity:1!important;transform:translateY(0) scale(1)!important;pointer-events:auto!important;visibility:visible!important}.modal-overlay .modal{transition:opacity .2s ease,transform .2s ease}[data-theme=dark]{color-scheme:dark;--primary:#3b82f6;--primary-light:#276463;--primary-dark:#2563eb;--secondary:#fbbf24;--success:#34d399;--danger:#f87171;--warning:#fbbf24;--info:#22d3ee;--dark:#f9fafb;--light:#111827;--border:#374151;--text:#f9fafb;--text-light:#d1d5db;--bg-gradient:linear-gradient(135deg, #1f2937 0%, #111827 100%);--bg-gradient-alt:linear-gradient(135deg, #374151 0%, #1f2937 100%);--card:#0f172a;--card-bg:#0f172a;--border-soft:rgba(255, 255, 255, 0.12);--border-soft-2:rgba(255, 255, 255, 0.18);--bg-soft:rgba(255, 255, 255, 0.06)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Segoe UI',Tahoma,Arial,sans-serif;background:var(--light);color:var(--text);line-height:1.6;overflow-x:hidden;transition:var(--transition);scroll-behavior:smooth;position:relative}body::before{content:"";position:fixed;inset:0;background-image:url('logo/logo.png');background-repeat:no-repeat;background-position:center center;background-size:min(900px,92vw);opacity:.06;pointer-events:none;z-index:9999;transform:none;mix-blend-mode:normal}[data-theme=dark] body::before{content:"";position:fixed;inset:0;background-image:url('logo/logo.png');background-repeat:no-repeat;background-position:center center;background-size:min(900px,92vw);opacity:.06;pointer-events:none;z-index:9999;transform:none;mix-blend-mode:normal}body.scroll-locked{overflow:hidden}.btn,.hall-card,.stat-card,.tab,button{user-select:none}.loading-overlay{position:fixed;inset:0;background:rgba(255,255,255,.9);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;visibility:hidden;transition:var(--transition)}.loading-overlay.show{opacity:1;visibility:visible}[data-theme=dark] .loading-overlay{background:rgba(17,24,39,.9)}.loading-spinner{width:60px;height:60px;border:4px solid var(--border);border-top:4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.header{background:var(--bg-gradient);color:#fff;padding:1rem 0;box-shadow:var(--shadow);position:sticky;top:0;z-index:100;overflow:hidden}.header::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="rgba(255,255,255,0.1)"/><circle cx="80" cy="40" r="3" fill="rgba(255,255,255,0.08)"/><circle cx="40" cy="80" r="1" fill="rgba(255,255,255,0.12)"/></svg>');animation:float 6s ease-in-out infinite}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.header-content{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1;padding-right:4.25rem}.brand{display:flex;align-items:center;gap:1rem}.logo{width:75px;height:75px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3);transition:var(--transition);overflow:hidden}.logo:hover{transform:rotate(360deg) scale(1.1)}.logo.logo-img{font-size:0}.logo.logo-img:hover{transform:scale(1.06)}.logo img{width:100%;height:100%;object-fit:contain;display:block;padding:6px}.brand-text h1{font-size:1.5rem;font-weight:700;margin-bottom:.25rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.brand-text p{font-size:.9rem;opacity:.9}.header-actions{display:flex;align-items:center;gap:1rem}.user-info{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:rgba(255,255,255,.1);border-radius:50px;backdrop-filter:blur(10px);transition:var(--transition)}.user-info:hover{background:rgba(255,255,255,.2);transform:translateY(-1px)}.theme-toggle{background:rgba(255,255,255,.1);border:none;color:#fff;padding:.75rem;border-radius:50%;cursor:pointer;transition:var(--transition);backdrop-filter:blur(10px);font-size:1.2rem}.theme-toggle:hover{background:rgba(255,255,255,.2);transform:rotate(180deg) scale(1.1)}.nav-toggle{background:rgba(255,255,255,.1);border:none;color:#fff;padding:.75rem;border-radius:14px;cursor:pointer;transition:var(--transition);backdrop-filter:blur(10px);font-size:1.2rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.nav-toggle:hover{background:rgba(255,255,255,.2);transform:translateY(calc(-50% - 1px))}#notificationCenter{position:fixed;top:20px;right:20px;z-index:2147483647;display:flex;flex-direction:column;gap:12px;max-width:380px;width:min(90vw,480px);pointer-events:none}.notification{--bg:#ffffff;--fg:#374151;--border:#e5e7eb;--ring:#3b82f6;direction:rtl;display:grid;grid-template-columns:32px 1fr auto;column-gap:12px;row-gap:6px;align-items:start;background:var(--bg);color:var(--fg);border:1px solid var(--border);border-radius:14px;padding:12px 14px;box-shadow:0 14px 30px rgba(0,0,0,.12);transform:translateX(120%);opacity:0;animation:notif-in .35s cubic-bezier(.2,.7,.2,1) forwards;pointer-events:auto;position:relative;overflow:hidden}.notification .icon{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;font-weight:900;color:#fff;font-size:16px}.notification .msg{font-size:14px;line-height:1.5;font-weight:600}.notification .close{border:0;background:0 0;cursor:pointer;color:#9ca3af;font-size:18px;line-height:1;padding-inline:6px}.notification .close:hover{color:#111827}.notification .bar{grid-column:1/-1;height:3px;border-radius:999px;background:currentColor;opacity:.65;transform-origin:right;animation:notif-bar linear forwards}.notification.info{--ring:#3b82f6}.notification.success{--ring:#10b981}.notification.warning{--ring:#f59e0b}.notification.danger{--ring:#ef4444}.notification.info .icon{background:#3b82f6}.notification.success .icon{background:#10b981}.notification.warning .icon{background:#f59e0b}.notification.danger .icon{background:#ef4444}.notification::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--ring);opacity:.15}@keyframes notif-in{to{transform:translateX(0);opacity:1}}@keyframes notif-out{to{transform:translateX(120%);opacity:0}}@keyframes notif-bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}.login-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(10px)}.login-card{background:#fff;border-radius:var(--radius-lg);padding:2rem;width:min(420px,90vw);box-shadow:var(--shadow-xl);transform:scale(.9);opacity:0;animation:modalAppear .3s ease-out forwards;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .login-card{background:var(--dark);color:var(--text);border-color:var(--border)}@keyframes modalAppear{to{transform:scale(1);opacity:1}}.login-header{text-align:center;margin-bottom:2rem}.login-header h2{color:var(--primary);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.form-group{margin-bottom:1.5rem;position:relative}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text)}.form-input{width:100%;padding:.75rem 1rem;border:2px solid var(--border);border-radius:var(--radius);font-size:1rem;transition:var(--transition);background:var(--light);color:var(--text)}.form-input:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.1);transform:translateY(-1px)}.form-input:hover{border-color:var(--primary-light)}.btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;justify-content:center;position:relative;overflow:hidden;min-height:44px}.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.btn:hover::before{left:100%}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-light);transform:translateY(-2px);box-shadow:var(--shadow)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:#059669;transform:translateY(-2px);box-shadow:var(--shadow)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626;transform:translateY(-2px);box-shadow:var(--shadow)}.btn-warning{background:var(--warning);color:#fff}.btn-warning:hover{background:#d97706;transform:translateY(-2px);box-shadow:var(--shadow)}.btn-secondary{background:var(--border);color:var(--text)}.btn-secondary:hover{background:#d1d5db;transform:translateY(-2px);box-shadow:var(--shadow)}.btn-info{background:linear-gradient(180deg,rgba(31,100,99,.22),rgba(31,100,99,.11));color:#276463}.btn-info:hover{background:#276463;transform:translateY(-2px);box-shadow:var(--shadow);color:#fff}[data-theme=dark] .btn-info{background:rgba(34,211,238,.18);color:#67e8f9;border:1px solid rgba(34,211,238,.45);box-shadow:none}[data-theme=dark] .btn-info:hover{background:rgba(34,211,238,.28);box-shadow:none}.btn-outline{background:0 0;border:2px solid #2e6f6e;color:#2e6f6e}.btn-outline:hover{background:var(--primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow)}#logoutBtn.btn-outline{border-color:var(--logout-accent);color:var(--logout-accents)}#logoutBtn.btn-outline:hover{background:var(--logout-accent);border-color:var(--logout-accent);color:#fff}#logoutBtn.btn-outline:active{background:var(--logout-accent-dark);border-color:var(--logout-accent-dark)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn:disabled:hover{transform:none!important;box-shadow:none!important}.container{max-width:1200px;margin:2rem auto;padding:0 1rem}.card{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow);margin-bottom:2rem;border:1px solid var(--border);transition:var(--transition);position:relative;overflow:hidden}.card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--bg-gradient)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}[data-theme=dark] .card{background:var(--dark);border-color:var(--border)}.controls-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem}.control-group{display:flex;flex-direction:column;gap:.5rem}.control-group label{font-weight:600;color:var(--text);font-size:.9rem}.date-navigation{display:flex;align-items:center;gap:1rem;justify-content:center;flex-wrap:wrap}.date-display{padding:1rem 2rem;background:var(--bg-gradient);color:#fff;border-radius:var(--radius-lg);font-weight:600;font-size:1rem;min-width:250px;text-align:center;box-shadow:var(--shadow);white-space:nowrap;display:flex;flex-direction:column;align-items:center;gap:.25rem;position:relative;overflow:hidden}.date-display::before{content:'';position:absolute;inset:0;background:linear-gradient(45deg,transparent 30%,rgba(255,255,255,.1) 50%,transparent 70%);transform:translateX(-100%);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%{transform:translateX(-100%)}50%{transform:translateX(100%)}100%{transform:translateX(100%)}}.date-day{font-size:.9rem;opacity:.9}.date-full{font-size:1.1rem;font-weight:700}.quick-dates{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:1rem}.quick-date-btn{padding:.5rem 1rem;border:1px solid var(--border);background:var(--light);color:var(--text);border-radius:25px;cursor:pointer;transition:var(--transition);font-size:.9rem;min-height:40px}.quick-date-btn.active,.quick-date-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow)}.hall-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin-bottom:2rem}.hall-card{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow);border:2px solid transparent;transition:var(--transition);cursor:pointer;position:relative;overflow:hidden}[data-theme=dark] .hall-card{background:var(--dark);border-color:var(--border)}.hall-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--bg-gradient)}.hall-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl);border-color:var(--primary)}.hall-card.selected{border-color:var(--primary);background:linear-gradient(135deg,#f8fafc 0,#f1f5f9 100%);transform:translateY(-4px);box-shadow:var(--shadow-lg)}[data-theme=dark] .hall-card.selected{background:linear-gradient(135deg,#1f2937 0,#111827 100%)}.hall-info h3{color:var(--primary);margin-bottom:.5rem;font-size:1.25rem;font-weight:700}.hall-info p{color:var(--text-light);margin-bottom:1rem;line-height:1.5}.hall-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;margin:1rem 0}.meta-item{text-align:center;padding:.75rem .5rem;background:var(--light);border-radius:var(--radius);transition:var(--transition)}.meta-item:hover{transform:translateY(-2px);box-shadow:var(--shadow)}[data-theme=dark] .meta-item{background:#374151}.meta-value{font-weight:700;color:var(--primary);display:block;font-size:1.2rem}.meta-label{font-size:.85rem;color:var(--text-light);margin-top:.25rem}.time-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem;margin-top:1rem}.time-slot{padding:.75rem;border-radius:var(--radius);text-align:center;font-weight:600;cursor:pointer;transition:var(--transition);border:2px solid transparent;position:relative;min-height:60px;display:flex;flex-direction:column;justify-content:center;align-items:center}.time-slot.available{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 100%);color:#065f46;border-color:#10b981}.time-slot.available:hover{background:linear-gradient(135deg,#d1fae5 0,#a7f3d0 100%);transform:scale(1.05);box-shadow:var(--shadow)}.time-slot.booked{background:linear-gradient(135deg,#fef2f2 0,#fecaca 100%);color:#991b1b;border-color:#ef4444;cursor:not-allowed}.time-slot.ended{background:linear-gradient(135deg,#f9fafb 0,#e5e7eb 100%);color:#6b7280;border-color:#d1d5db;cursor:not-allowed;opacity:.7}.time-slot.pending{background:linear-gradient(135deg,#fff7ed 0,#fed7aa 100%);color:#9a3412;border-color:#f59e0b}.time-slot.selected{border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.2);transform:scale(1.05)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(8px);overscroll-behavior:contain;touch-action:none}.modal-overlay.confirm-overlay{background:rgba(2,6,23,.45);backdrop-filter:none}.confirm-overlay .modal{width:min(420px,92vw)}.confirm-overlay .modal-header{background:linear-gradient(180deg,rgba(59,130,246,.22),rgba(59,130,246,.08));color:inherit}.confirm-overlay .modal-footer{background:0 0}.modal{background:#fff;border-radius:var(--radius-lg);width:min(600px,95vw);max-height:90vh;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;box-shadow:var(--shadow-xl);transform:scale(.9);opacity:0;transition:var(--transition);border:1px solid rgba(255,255,255,.2)}body.scroll-locked{overflow:hidden}[data-theme=dark] .modal{background:var(--dark);border-color:var(--border)}.modal.show{transform:scale(1);opacity:1}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border);background:var(--bg-gradient);color:#fff;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-header h3{margin:0;font-size:1.25rem;font-weight:700}.modal-body{padding:1.5rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border);display:flex;gap:1rem;justify-content:flex-end;background:rgba(0,0,0,.02);border-radius:0 0 var(--radius-lg) var(--radius-lg)}[data-theme=dark] .modal-footer{background:rgba(255,255,255,.02)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.bookings-section{margin-top:2rem}.booking-item{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1rem;box-shadow:var(--shadow);border-left:4px solid var(--primary);transition:var(--transition);position:relative;overflow:hidden}.booking-item::before{content:'';position:absolute;top:0;right:0;bottom:0;width:0;background:linear-gradient(90deg,transparent,rgba(59,130,246,.05));transition:var(--transition);pointer-events:none;z-index:0}.booking-item>*{position:relative;z-index:1}.booking-item:hover::before{width:100%}[data-theme=dark] .booking-item{background:var(--dark)}.booking-item:hover{transform:translateX(4px);box-shadow:var(--shadow-lg)}.booking-item.pending{border-left-color:var(--warning)}.booking-item.approved{border-left-color:var(--success)}.booking-item.rejected{border-left-color:var(--danger)}.booking-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.booking-info h4{color:var(--primary);margin-bottom:.25rem;font-size:1.1rem;font-weight:700}.booking-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.booking-meta>div{min-width:0}.hosp-row{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}.hosp-row .hosp-k{flex:0 0 auto}.hosp-row .hosp-extra{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.hosp-none{color:#0f172a;font-weight:800}.booking-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-start}.booking-status{position:absolute;top:1rem;right:1rem;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.booking-status.pending{background:linear-gradient(135deg,#fff7ed 0,#fed7aa 100%);color:#9a3412}.booking-status.approved{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 100%);color:#065f46}.booking-status.rejected{background:linear-gradient(135deg,#fef2f2 0,#fecaca 100%);color:#991b1b}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow);text-align:center;position:relative;overflow:hidden;transition:var(--transition);border:1px solid var(--border)}.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary)}.stat-card::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0,rgba(59,130,246,.1) 0,transparent 50%);opacity:0;transition:var(--transition)}.stat-card:hover::after{opacity:1}[data-theme=dark] .stat-card{background:var(--dark)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-value{font-size:2.5rem;font-weight:700;color:var(--primary);margin-bottom:.5rem;background:linear-gradient(135deg,var(--primary) 0,var(--primary-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{color:var(--text-light);font-weight:600;font-size:.9rem}.stat-change{font-size:.8rem;margin-top:.5rem;font-weight:600}.stat-change.positive{color:var(--success)}.stat-change.negative{color:var(--danger)}.stat-value.bump{animation:stat-bump .5s ease-out}@keyframes stat-bump{0%{transform:scale(1);text-shadow:0 0 0 rgba(59,130,246,0)}40%{transform:scale(1.12);text-shadow:0 6px 18px rgba(59,130,246,.35)}100%{transform:scale(1);text-shadow:0 0 0 rgba(59,130,246,0)}}.stat-card.flash::after{opacity:1;animation:stat-flash .6s ease-out}@keyframes stat-flash{from{background:radial-gradient(circle at 50% 0,rgba(59,130,246,.18) 0,transparent 55%)}to{background:radial-gradient(circle at 50% 0,rgba(59,130,246,0) 0,transparent 55%)}}.tabs{display:flex;gap:0;margin-bottom:1.5rem;background:var(--light);border-radius:var(--radius-lg);padding:.25rem;box-shadow:inset 0 1px 3px rgba(0,0,0,.1)}[data-theme=dark] .tabs{background:#374151}.tab{flex:1;padding:.75rem 1rem;border:none;background:0 0;cursor:pointer;border-radius:var(--radius);transition:var(--transition);font-weight:600;color:var(--text);position:relative;overflow:hidden}.tab::before{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary);transition:var(--transition);transform:translateX(-50%)}.tab.active::before{width:80%}.tab.active{background:#fff;color:var(--primary);box-shadow:var(--shadow);transform:translateY(-1px)}[data-theme=dark] .tab.active{background:var(--dark)}.tab:hover:not(.active){background:rgba(59,130,246,.1);color:var(--primary)}.tab-content{display:none;animation:fadeInUp .3s ease-out}.tab-content.active{display:block}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.alert{padding:1rem 1.5rem;border-radius:var(--radius);margin-bottom:1rem;border-left:4px solid;position:relative;overflow:hidden}.alert::before{content:'';position:absolute;top:0;left:0;bottom:0;width:4px;animation:pulse 2s ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.5}100%{opacity:1}}.alert-success{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 100%);border-color:var(--success);color:#065f46}.alert-success::before{background:var(--success)}.alert-danger{background:linear-gradient(135deg,#fef2f2 0,#fecaca 100%);border-color:var(--danger);color:#991b1b}.alert-danger::before{background:var(--danger)}.alert-warning{background:linear-gradient(135deg,#fffbeb 0,#fed7aa 100%);border-color:var(--warning);color:#92400e}.alert-warning::before{background:var(--warning)}.calendar-table{width:100%;border-collapse:collapse;margin:1rem 0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);background:#fff}[data-theme=dark] .calendar-table{background:var(--dark)}.calendar-table th{background:var(--bg-gradient-alt);color:#fff;padding:1rem;text-align:center;font-weight:600;border:none;position:relative}.calendar-table th::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:rgba(255,255,255,.3)}.calendar-table th:first-child{background:linear-gradient(135deg,#1f2937 0,#374151 100%)}.calendar-table td{padding:1rem .75rem;text-align:center;border:1px solid #f3f4f6;min-height:80px;vertical-align:middle;transition:var(--transition);position:relative}.calendar-table td::before{content:'';position:absolute;inset:0;background:rgba(59,130,246,.05);opacity:0;transition:var(--transition)}.calendar-table td:hover::before{opacity:1}[data-theme=dark] .calendar-table td{border-color:#374151}.calendar-table tr:nth-child(2n){background:rgba(0,0,0,.02)}[data-theme=dark] .calendar-table tr:nth-child(2n){background:rgba(255,255,255,.02)}.calendar-table tr:hover{background:rgba(59,130,246,.05)}.calendar-table .time-cell{background:linear-gradient(135deg,#f8fafc 0,#e2e8f0 100%);font-weight:700;color:var(--dark);border-right:3px solid var(--primary);position:relative}.calendar-table .time-cell::after{content:'';position:absolute;right:0;top:20%;bottom:20%;width:3px;background:var(--primary);animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{box-shadow:0 0 5px var(--primary)}100%{box-shadow:0 0 20px var(--primary)}}[data-theme=dark] .calendar-table .time-cell{background:linear-gradient(135deg,#374151 0,#1f2937 100%);color:var(--text)}.calendar-table .available-cell{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 100%);color:#065f46}.calendar-table .booked-cell{background:linear-gradient(135deg,#fef2f2 0,#fecaca 100%);color:#991b1b;font-weight:500}.calendar-table .ended-cell{background:linear-gradient(135deg,#f9fafb 0,#e5e7eb 100%);color:#6b7280;opacity:.8}.calendar-table .empty-cell{color:#9ca3af;font-style:italic}.ticket{max-width:500px;width:100%;margin:2rem auto;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;position:relative;border:2px dashed #e5e7eb;page-break-inside:avoid;transition:var(--transition)}.ticket:hover{transform:translateY(-4px);box-shadow:0 25px 50px rgba(0,0,0,.15)}[data-theme=dark] .ticket{background:var(--dark);border-color:var(--border)}.ticket::after,.ticket::before{content:'';position:absolute;top:45%;width:20px;height:20px;background:var(--light);border-radius:50%;border:2px solid var(--border)}.ticket::before{left:-10px}.ticket::after{right:-10px}[data-theme=dark] .ticket::after,[data-theme=dark] .ticket::before{background:var(--light)}.ticket-header{background:var(--bg-gradient);color:#fff;padding:2rem 1.5rem;text-align:center;position:relative;overflow:hidden}.ticket-header::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.2) 0,transparent 50%)}.ticket-title{font-size:1.4rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.ticket-subtitle{opacity:.9;font-size:1rem;margin-bottom:1rem}.ticket-id-display{background:rgba(255,255,255,.2);color:#fff;padding:.75rem 1.5rem;border-radius:30px;font-size:1.1rem;font-weight:700;letter-spacing:2px;margin:0 auto;display:inline-block;border:2px solid rgba(255,255,255,.3);backdrop-filter:blur(10px)}.ticket-body{padding:1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem}.ticket-row{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:linear-gradient(135deg,#f8fafc 0,#f1f5f9 100%);border-radius:var(--radius);border-left:4px solid var(--primary);position:relative;overflow:hidden}.ticket-row::before{content:'';position:absolute;top:0;left:0;bottom:0;width:4px;background:var(--primary);animation:ticketPulse 2s ease-in-out infinite alternate}@keyframes ticketPulse{0%{opacity:.5}100%{opacity:1}}[data-theme=dark] .ticket-row{background:linear-gradient(135deg,#374151 0,#1f2937 100%)}.ticket-row.full-width{grid-column:1/-1}.ticket-label{font-weight:700;color:var(--text-light);font-size:.8rem;text-transform:uppercase;letter-spacing:1px}.ticket-value{font-weight:700;color:var(--dark);font-size:1rem}[data-theme=dark] .ticket-value{color:var(--text)}.ticket-footer{background:linear-gradient(135deg,#f8fafc 0,#e2e8f0 100%);padding:1.5rem;text-align:center;font-size:.8rem;color:var(--text-light);border-top:1px dashed var(--border);line-height:1.6}[data-theme=dark] .ticket-footer{background:linear-gradient(135deg,#374151 0,#1f2937 100%)}.ticket-qr{width:60px;height:60px;background:linear-gradient(45deg,#333,#666);margin:1rem auto;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;box-shadow:var(--shadow)}.search-modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(8px)}.search-card{background:#fff;border-radius:var(--radius-lg);width:min(500px,95vw);box-shadow:var(--shadow-xl);overflow:hidden;border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .search-card{background:var(--dark);border-color:var(--border)}.search-header{background:var(--bg-gradient);color:#fff;padding:1.5rem;text-align:center}.search-body{padding:2rem}.search-input{width:100%;padding:1.2rem;border:2px solid var(--border);border-radius:var(--radius);font-size:1.3rem;text-align:center;letter-spacing:3px;font-weight:700;text-transform:uppercase;background:var(--light);color:var(--text);transition:var(--transition)}.search-input:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 4px rgba(59,130,246,.1);transform:translateY(-2px)}.search-result{margin-top:1.5rem;padding:1.5rem;border-radius:var(--radius);text-align:center;transition:var(--transition);border:2px solid transparent}.search-result.found{background:linear-gradient(135deg,#ecfdf5 0,#d1fae5 100%);border-color:#10b981;color:#065f46}.search-result.not-found{background:linear-gradient(135deg,#fef2f2 0,#fecaca 100%);border-color:#ef4444;color:#991b1b}.rating-system{margin-top:1.5rem;padding:1.5rem;background:linear-gradient(135deg,var(--light) 0,#f1f5f9 100%);border-radius:var(--radius);border:1px solid var(--border)}[data-theme=dark] .rating-system{background:linear-gradient(135deg,#374151 0,#1f2937 100%)}.rating-stars{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.rating-star{font-size:2rem;color:#d1d5db;cursor:pointer;transition:var(--transition);text-shadow:0 2px 4px rgba(0,0,0,.1)}.rating-star.active,.rating-star:hover{color:#fbbf24;transform:scale(1.2);text-shadow:0 0 20px rgba(251,191,36,.5)}.approval-panel{background:linear-gradient(135deg,#fffbeb 0,#fef3c7 100%);border:2px solid #fbbf24;border-radius:var(--radius);padding:1.5rem;margin-top:1rem;position:relative;overflow:hidden}.approval-panel::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#fbbf24,#f59e0b,#fbbf24);animation:approvalShimmer 2s ease-in-out infinite}@keyframes approvalShimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}[data-theme=dark] .approval-panel{background:linear-gradient(135deg,#374151 0,#1f2937 100%);border-color:#fbbf24}.approval-actions{display:flex;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap}.advanced-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-chart{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow);border:1px solid var(--border);transition:var(--transition)}.stat-chart:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}[data-theme=dark] .stat-chart{background:var(--dark);border-color:var(--border)}.chart-placeholder{height:220px;background:linear-gradient(135deg,#f8fafc 0,#e2e8f0 100%);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--text-light);font-weight:600;font-size:1.1rem;border:2px dashed var(--border);position:relative;overflow:hidden}.chart-placeholder::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at center,rgba(59,130,246,.1) 0,transparent 50%);animation:chartPulse 3s ease-in-out infinite}@keyframes chartPulse{0%,100%{opacity:0}50%{opacity:1}}[data-theme=dark] .chart-placeholder{background:linear-gradient(135deg,#374151 0,#1f2937 100%)}.user-management{margin-top:2rem}.user-card{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1rem;box-shadow:var(--shadow);border:1px solid var(--border);transition:var(--transition);position:relative;overflow:hidden}.user-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--bg-gradient)}[data-theme=dark] .user-card{background:var(--dark);border-color:var(--border)}.user-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.user-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.user-info h4{color:var(--primary);margin-bottom:.5rem;font-size:1.1rem;font-weight:700}.user-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.user-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-start}.permission-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.permission-badge{background:var(--primary);color:#fff;padding:.25rem .75rem;border-radius:15px;font-size:.75rem;font-weight:600;letter-spacing:.5px;transition:var(--transition)}.permission-badge:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.role-badge{padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:2px solid transparent;transition:var(--transition)}.role-badge:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.role-badge.admin{background:linear-gradient(135deg,#fef3c7 0,#fbbf24 100%);color:#92400e;border-color:#2e6f6e}.role-badge.manager{background:linear-gradient(135deg,#ddd6fe 0,#8b5cf6 100%);color:#5b21b6;border-color:#8b5cf6}.role-badge.staff{background:linear-gradient(135deg,#e0f2fe 0,#06b6d4 100%);color:#0277bd;border-color:#06b6d4}.print-actions{position:fixed;bottom:30px;right:30px;z-index:1000;display:none;flex-direction:column;gap:1rem}.print-actions.show{display:flex;animation:bounceIn .5s ease-out}@keyframes bounceIn{0%{opacity:0;transform:scale(.3) translateY(100px)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}100%{opacity:1;transform:scale(1) translateY(0)}}.print-btn{background:var(--primary);color:#fff;border:none;padding:1rem 1.25rem;border-radius:50px;cursor:pointer;box-shadow:var(--shadow-lg);transition:var(--transition);font-weight:600;display:flex;align-items:center;gap:.75rem;font-size:.9rem;min-width:150px;justify-content:center}.print-btn:hover{background:var(--primary-light);transform:translateY(-3px) scale(1.05);box-shadow:var(--shadow-xl)}.print-btn:active{transform:translateY(-1px) scale(1.02)}.shortcuts-help{position:fixed;bottom:30px;left:30px;background:#fff;border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-xl);border:1px solid var(--border);max-width:350px;transform:translateY(150%);opacity:0;transition:var(--transition);z-index:1000}[data-theme=dark] .shortcuts-help{background:var(--dark);border-color:var(--border)}.shortcuts-help.show{transform:translateY(0);opacity:1}.shortcuts-help h4{color:var(--primary);margin-bottom:1rem;font-size:1.1rem;font-weight:700}.shortcut-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border);transition:var(--transition)}.shortcut-item:hover{background:rgba(59,130,246,.05);margin:0 -1rem;padding-left:1rem;padding-right:1rem;border-radius:var(--radius)}.shortcut-item:last-child{border-bottom:none}.shortcut-key{background:var(--light);border:1px solid var(--border);border-radius:6px;padding:.25rem .75rem;font-family:Consolas,Monaco,monospace;font-size:.8rem;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.1)}[data-theme=dark] .shortcut-key{background:#374151;border-color:var(--border)}@media (max-width:1024px){.container{padding:0 1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.hall-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width:768px){.header-content{flex-direction:column;gap:1rem;text-align:center}.brand{justify-content:center}.header-actions{width:100%;justify-content:center}.controls-bar{grid-template-columns:1fr;gap:1rem}.hall-grid{grid-template-columns:1fr}.time-slots{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.date-navigation{flex-direction:column;gap:1rem}.date-display{min-width:250px;padding:1rem 1.5rem}.booking-header{flex-direction:column;gap:1rem}.modal-footer{flex-direction:column}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.booking-actions{flex-direction:column;align-items:stretch}.booking-actions .btn{width:100%}.tabs{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tabs::-webkit-scrollbar{display:none}.tab{white-space:nowrap;min-width:120px}.print-actions{bottom:20px;right:20px;gap:.75rem}.print-btn{padding:.75rem 1rem;min-width:130px;font-size:.8rem}.shortcuts-help{bottom:20px;left:20px;max-width:300px;padding:1rem}.ticket{margin:1rem}.ticket-body{grid-template-columns:1fr;gap:1rem}.advanced-stats{grid-template-columns:1fr}}@media (max-width:480px){.container{margin:1rem auto}.card{padding:1rem;margin-bottom:1rem}.btn{padding:.75rem 1rem;font-size:.9rem}.modal{width:95vw;margin:1rem}.form-grid{grid-template-columns:1fr}.booking-meta{grid-template-columns:1fr}.user-meta{grid-template-columns:1fr}.search-input{font-size:1.1rem;letter-spacing:2px;padding:1rem}.ticket-id-display{font-size:1rem;padding:.5rem 1rem;letter-spacing:1px}}.loading{text-align:center;padding:3rem 2rem;color:var(--text-light)}.spinner{width:50px;height:50px;border:4px solid var(--border);border-top:4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@media print{@page{size:A4 portrait;margin:1cm}body *{visibility:hidden}.ticket,.ticket *{visibility:visible}.ticket{position:absolute;left:0;top:0;width:100%;max-width:18cm;margin:0;transform:scale(.9);transform-origin:top left;box-shadow:none!important;border:3px solid #333!important;page-break-inside:avoid;background:#fff!important}.no-print,.print-actions,.shortcuts-help{display:none!important}.ticket-header{background:#4f46e5!important;-webkit-print-color-adjust:exact;color-adjust:exact}.ticket-row{background:#f8fafc!important;-webkit-print-color-adjust:exact;color-adjust:exact}}@media (prefers-reduced-motion:reduce){*{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}}.btn:focus,.form-input:focus,.tab:focus,.time-slot:focus{outline:2px solid var(--primary);outline-offset:2px}@media (prefers-contrast:high){:root{--shadow:0 2px 8px rgba(0, 0, 0, 0.3);--shadow-lg:0 4px 16px rgba(0, 0, 0, 0.3);--shadow-xl:0 8px 32px rgba(0, 0, 0, 0.3)}.btn{border:2px solid currentColor}.card{border:2px solid var(--border)}}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.hidden{display:none!important}.muted{color:var(--text-light);opacity:.85;font-weight:800}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.w-full{width:100%}.h-full{height:100%}.fade-in{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .4s ease-out}@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.bounce-in{animation:bounceInAnimation .6s ease-out}@keyframes bounceInAnimation{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}100%{opacity:1;transform:scale(1)}}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--light)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--dark)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--border)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--text-light)}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.interactive{cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}.interactive:active{transform:scale(.98)}.status-indicator{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-indicator::before{content:'';width:8px;height:8px;border-radius:50%;animation:statusPulse 2s ease-in-out infinite}@keyframes statusPulse{0%,100%{opacity:1}50%{opacity:.5}}.status-indicator.online::before{background:var(--success)}.status-indicator.offline::before{background:var(--danger)}.status-indicator.away::before{background:var(--warning)}.tooltip{position:relative}.tooltip::after{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);color:#fff;padding:.5rem 1rem;border-radius:var(--radius);font-size:.8rem;white-space:nowrap;opacity:0;visibility:hidden;transition:var(--transition);z-index:1000}.tooltip:hover::after{opacity:1;visibility:visible}.auto-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--min-size,200px),1fr));gap:var(--gap,1rem)}.masonry-grid{columns:var(--columns,3);column-gap:var(--gap,1rem)}.masonry-grid>*{break-inside:avoid;margin-bottom:var(--gap,1rem)}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.text-info{color:var(--info)}.text-muted{color:var(--text-light)}.bg-primary{background:var(--primary)}.bg-secondary{background:var(--secondary)}.bg-success{background:var(--success)}.bg-danger{background:var(--danger)}.bg-warning{background:var(--warning)}.bg-info{background:var(--info)}.bg-light{background:var(--light)}.bg-dark{background:var(--dark)}.border{border:1px solid var(--border)}.border-2{border:2px solid var(--border)}.border-primary{border-color:var(--primary)}.border-success{border-color:var(--success)}.border-danger{border-color:var(--danger)}.border-warning{border-color:var(--warning)}.border-info{border-color:var(--info)}.rounded{border-radius:var(--radius)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:50%}.rounded-none{border-radius:0}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.px-1{padding-left:.5rem;padding-right:.5rem}.px-2{padding-left:1rem;padding-right:1rem}.px-3{padding-left:1.5rem;padding-right:1.5rem}.px-4{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.5rem;padding-bottom:.5rem}.py-2{padding-top:1rem;padding-bottom:1rem}.py-3{padding-top:1.5rem;padding-bottom:1.5rem}.py-4{padding-top:2rem;padding-bottom:2rem}.m-1{margin:.5rem}.m-2{margin:1rem}.m-3{margin:1.5rem}.m-4{margin:2rem}.mx-1{margin-left:.5rem;margin-right:.5rem}.mx-2{margin-left:1rem;margin-right:1rem}.mx-3{margin-left:1.5rem;margin-right:1.5rem}.mx-4{margin-left:2rem;margin-right:2rem}.my-1{margin-top:.5rem;margin-bottom:.5rem}.my-2{margin-top:1rem;margin-bottom:1rem}.my-3{margin-top:1.5rem;margin-bottom:1.5rem}.my-4{margin-top:2rem;margin-bottom:2rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.leading-tight{line-height:1.25}.leading-snug{line-height:1.375}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-loose{line-height:2}@supports (backdrop-filter:blur(10px)){.glass-effect{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .glass-effect{background:rgba(0,0,0,.1);border-color:rgba(255,255,255,.1)}}@supports (display:grid){.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--min-width,250px),1fr));gap:var(--gap,1rem)}}.clickable{cursor:pointer;transition:var(--transition)}.clickable:hover{transform:translateY(-1px)}.clickable:active{transform:translateY(0)}.selectable{user-select:text}.no-select{user-select:none}.glow{box-shadow:0 0 20px rgba(59,130,246,.3)}.glow-success{box-shadow:0 0 20px rgba(16,185,129,.3)}.glow-danger{box-shadow:0 0 20px rgba(239,68,68,.3)}.glow-warning{box-shadow:0 0 20px rgba(245,158,11,.3)}.contain-layout{contain:layout}.contain-paint{contain:paint}.contain-size{contain:size}.contain-style{contain:style}.grid-template-areas-mobile{grid-template-areas:"header" "nav" "main" "sidebar" "footer"}.grid-template-areas-desktop{grid-template-areas:"header header header" "nav main sidebar" "footer footer footer"}.dynamic-spacing{--spacing:clamp(1rem, 4vw, 2rem);padding:var(--spacing);gap:var(--spacing)}.dynamic-font{--font-size:clamp(1rem, 2.5vw, 1.5rem);font-size:var(--font-size)}.dynamic-width{--width:clamp(300px, 50vw, 600px);width:var(--width)}#notificationCenter{position:fixed;top:16px;inset-inline-end:16px;display:flex;flex-direction:column;gap:10px;max-width:clamp(260px,28vw,420px);z-index:2147483647;pointer-events:none}#notificationCenter .notification{pointer-events:auto;border-radius:14px;padding:12px 14px;box-shadow:0 10px 25px rgba(0,0,0,.12);border:1px solid rgba(0,0,0,.06);direction:rtl}#approvalList .approval-card{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 18px;background:var(--card-bg,#fff);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}[data-theme=dark] #approvalList .approval-card{background:var(--dark);border-color:var(--border)}#approvalList .approval-info{display:flex;flex-direction:column;gap:8px;min-width:0}#approvalList .approval-title{font-weight:800;color:var(--primary);font-size:1.05rem;display:flex;align-items:center;gap:.5rem}#approvalList .approval-title .ticket-id{letter-spacing:.5px}#approvalList .approval-title .dot{opacity:.4}#approvalList .approval-meta{display:flex;flex-wrap:wrap;gap:8px}#approvalList .chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--light);border:1px solid var(--border);color:var(--text);font-weight:600;font-size:.9rem}[data-theme=dark] #approvalList .chip{background:#1f2937;border-color:#374151;color:var(--text)}#approvalList .chip-date{border-color:var(--primary)}#approvalList .chip-time{border-color:var(--info)}#approvalList .chip-booker{border-color:var(--success)}#approvalList .chip-dept{border-color:var(--warning)}#approvalList .approval-actions{display:flex;gap:8px;align-self:center;flex-shrink:0}@media (max-width:768px){#approvalList .approval-card{flex-direction:column;align-items:stretch}#approvalList .approval-actions .btn{width:100%}}:root{--primary:#276463;--primary-light:#289b9a;--primary-dark:#3730a3;--secondary:#06b6d4;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--info:#22d3ee;--dark:#0f172a;--light:#f8fafc;--border:#e2e8f0;--text:#334155;--text-light:#64748b;--bg-gradient:linear-gradient(135deg, #276463 0%, #276463 100%);--bg-gradient-alt:linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%);--space-1:0.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:2.5rem;--space-6:3rem;--radius:14px;--radius-lg:20px;--shadow:0 10px 20px rgba(2, 6, 23, 0.06);--shadow-lg:0 18px 30px rgba(2, 6, 23, 0.10);--shadow-xl:0 24px 45px rgba(2, 6, 23, 0.14);--transition:all 420ms cubic-bezier(.22,.61,.36,1);--transition-fast:all 220ms ease-out}[data-theme=dark]{--primary:#818cf8;--primary-light:#a5b4fc;--primary-dark:#6366f1;--secondary:#06b6d4;--success:#34d399;--danger:#f87171;--warning:#fbbf24;--info:#22d3ee;--light:#0b1220;--border:#1f2a37;--text:#e5e7eb;--text-light:#cbd5e1;--bg-gradient:linear-gradient(135deg, #0b1220 0%, #111827 100%);--bg-gradient-alt:linear-gradient(135deg, #1f2937 0%, #312e81 100%)}html{scroll-behavior:smooth}body{font-family:Cairo,Tajawal,"Segoe UI",Tahoma,Arial,sans-serif;font-size:1.05rem;letter-spacing:0;line-height:1.75;color:var(--text)}.container{max-width:1400px;padding-left:var(--space-3);padding-right:var(--space-3)}@media (min-width:1536px){.container{max-width:1500px}}.booking-item,.card,.hall-card,.stat-card,.stat-chart,.user-card{border-radius:var(--radius-lg);padding:clamp(1.25rem,1.2rem + .8vw,2.25rem);box-shadow:var(--shadow);border:1px solid var(--border);backdrop-filter:saturate(110%)}.btn{min-height:46px;border-radius:999px;padding:.85rem 1.4rem;transition:var(--transition)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.btn:active{transform:translateY(0)}.header{box-shadow:var(--shadow);backdrop-filter:blur(8px) saturate(120%)}.logo{transition:var(--transition);will-change:transform}.tabs{border-radius:999px;padding:.35rem;gap:.25rem}.tab{border-radius:999px;padding:.75rem 1rem}.tab.active{background:linear-gradient(135deg,rgba(99,102,241,.12),rgba(99,102,241,.22));color:var(--primary);box-shadow:inset 0 0 0 2px rgba(99,102,241,.25)}.time-slot{min-height:66px;border-radius:14px}.time-slot.available{background:linear-gradient(135deg,#eefcf7 0,#d6f6e6 100%);color:#065f46}.time-slot.pending{background:linear-gradient(135deg,#fff3e0 0,#ffe0b2 100%);color:#8a4b11}.time-slot.ended{opacity:.85}.calendar-table td,.calendar-table th{padding:1.05rem .85rem}.soft-shadow{box-shadow:var(--shadow)!important}.soft-shadow-lg{box-shadow:var(--shadow-lg)!important}.soft-shadow-xl{box-shadow:var(--shadow-xl)!important}.round-xl{border-radius:var(--radius-lg)!important}.frost-glass{background:rgba(255,255,255,.12);backdrop-filter:blur(16px) saturate(140%);border:1px solid rgba(255,255,255,.25)}[data-theme=dark] .frost-glass{background:rgba(17,24,39,.35);border-color:rgba(148,163,184,.18)}:where(.btn,.form-input,.tab,.time-slot):focus-visible{outline:3px solid color-mix(in oklab,var(--primary) 65%,white 35%);outline-offset:2px;transition:outline-offset 120ms ease-out}:root{--rtl-gap:0.75rem}[dir=rtl] .actions{gap:var(--rtl-gap)}[dir=rtl] .notification{border-left:none;border-right-width:4px}[dir=rtl] .booking-item{border-left:none;border-right:4px solid var(--primary)}@keyframes v2FadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.v2-appear{animation:v2FadeUp 520ms cubic-bezier(.22,.61,.36,1)}@media print{.card,.ticket{border-color:#334155!important}}[data-theme=dark] .user-management,body[data-theme=dark] .user-management,html[data-theme=dark] .user-management{--um-bg:#0b1220;--um-panel:#0f172a;--um-panel-2:#111827;--um-header:#1f2937;--um-border:#1e293b;--um-text:#e5e7eb;--um-text-dim:#cbd5e1}[data-theme=dark] .user-management .card,body[data-theme=dark] .user-management .card,html[data-theme=dark] .user-management .card{background:var(--um-panel)!important;border-color:var(--um-border)!important;color:var(--um-text)!important;box-shadow:0 8px 24px rgba(2,6,23,.35)}[data-theme=dark] .user-management .table .row.head,body[data-theme=dark] .user-management .table .row.head,html[data-theme=dark] .user-management .table .row.head{background:var(--um-header)!important;color:var(--um-text)!important;border-bottom:1px solid var(--um-border)!important}[data-theme=dark] .user-management .table .row:not(.head),body[data-theme=dark] .user-management .table .row:not(.head),html[data-theme=dark] .user-management .table .row:not(.head){background:var(--um-panel)!important;color:var(--um-text)!important;border-bottom:1px solid var(--um-border)!important}[data-theme=dark] .user-management .table .row:not(.head):hover,body[data-theme=dark] .user-management .table .row:not(.head):hover,html[data-theme=dark] .user-management .table .row:not(.head):hover{background:var(--um-panel-2)!important}[data-theme=dark] .user-management .table .row>:is(:first-child,:nth-child(2),:nth-child(3),:nth-child(4),:nth-child(5),:nth-child(6)),body[data-theme=dark] .user-management .table .row>:is(:first-child,:nth-child(2),:nth-child(3),:nth-child(4),:nth-child(5),:nth-child(6)),html[data-theme=dark] .user-management .table .row>:is(:first-child,:nth-child(2),:nth-child(3),:nth-child(4),:nth-child(5),:nth-child(6)){color:var(--um-text)!important}[data-theme=dark] .user-management .table .row>:nth-child(6) .btn,body[data-theme=dark] .user-management .table .row>:nth-child(6) .btn,html[data-theme=dark] .user-management .table .row>:nth-child(6) .btn{color:#fff!important;box-shadow:none!important;border:1px solid rgba(255,255,255,.08)}[data-theme=dark] .user-management .form-input,body[data-theme=dark] .user-management .form-input,html[data-theme=dark] .user-management .form-input{background:#0f172a!important;border-color:var(--um-border)!important;color:var(--um-text)!important}[data-theme=dark] .user-management .form-input::placeholder,body[data-theme=dark] .user-management .form-input::placeholder,html[data-theme=dark] .user-management .form-input::placeholder{color:var(--um-text-dim)!important;opacity:1!important}[data-theme=dark] .user-management .table,body[data-theme=dark] .user-management .table,html[data-theme=dark] .user-management .table{background:0 0!important}.table.card.user-management{background:var(--light);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow)}[data-theme=dark] .table.card.user-management{background:var(--dark);border-color:var(--border)}.table.card.user-management .row.head{background:var(--bg-gradient);color:#fff;font-weight:700}.table.card.user-management .row{background:var(--light);color:var(--text);transition:var(--transition)}[data-theme=dark] .table.card.user-management .row{background:var(--dark);color:var(--text)}.chip{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1.05rem;border-radius:999px;border:1px solid var(--border);background:var(--light);color:var(--text);cursor:pointer;transition:var(--transition-fast);min-height:40px;font-weight:700;white-space:nowrap}.chip:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.chip.active{background:var(--primary);border-color:var(--primary)}[data-theme=dark] .chip{background:#0f172a;border-color:#243244;color:#e5e7eb}[data-theme=dark] .chip.active{background:var(--primary);border-color:var(--primary);color:#fff}[data-theme=dark] .chip:not(.active):hover{background:#111c33}.table.card.user-management .row:hover{transform:translateX(2px);box-shadow:var(--shadow-lg)}.role-badge,.status-badge{display:inline-block;padding:.35rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize}.role-badge.admin{background:linear-gradient(135deg,#fef3c7,#fbbf24);color:#92400e}.role-badge.manager{background:linear-gradient(135deg,#ddd6fe,#8b5cf6);color:#4c1d95}.role-badge.staff{background:linear-gradient(135deg,#e0f2fe,#06b6d4);color:#075985}.status-badge.active{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534}.status-badge.banned{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.rejected-table{display:grid;gap:12px}.rejected-card{display:grid;grid-template-columns:1fr auto;gap:10px;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px;box-shadow:var(--shadow);transition:var(--transition)}.rejected-card .title{font-weight:800;margin-bottom:4px;color:var(--text)}.rejected-card .actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}[data-theme=dark] .rejected-card{background:var(--dark);border-color:var(--border);color:var(--text)}.rejected-card{display:grid;grid-template-columns:1fr auto;gap:10px;background:var(--card-bg,var(--light));padding:12px 14px;border-radius:14px;box-shadow:0 6px 14px rgba(0,0,0,.06);transition:var(--transition)}[data-theme=dark] .rejected-card{background:var(--dark);border:1px solid var(--border)}.req-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.req-modern-card{background:#f9f9f9;border:2px solid transparent;border-radius:14px;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:.25s;cursor:pointer}.req-modern-card:hover{transform:translateY(-3px);box-shadow:0 4px 14px rgba(0,0,0,.08)}.req-modern-card.active{background:#00c6ff;border-color:#009ac7;box-shadow:0 6px 18px rgba(0,198,255,.4);color:#fff}.req-modern-label input[type=checkbox]{display:none}.req-modern-content{display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center;font-weight:600}.req-icon{font-size:28px;margin-bottom:.2rem;transition:transform .2s}.req-modern-card.active .req-icon{transform:scale(1.2)}.menu-qty{width:70px;padding:.4rem;border-radius:8px;border:1px solid #ccc;text-align:center;font-weight:700}.req-modern-card.active .menu-qty{border-color:#fff}.req-modern-card{background:var(--light);border:2px solid transparent;border-radius:14px;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:.25s;cursor:pointer;color:var(--text)}.req-modern-card:hover{transform:translateY(-3px);box-shadow:0 4px 14px rgba(0,0,0,.08);background:var(--card-bg,#f1f5f9)}.req-modern-card.active{background:var(--primary);border-color:var(--primary-dark);box-shadow:0 6px 18px rgba(0,198,255,.4);color:#fff}[data-theme=dark] .req-modern-card{background:var(--dark);border-color:var(--border);color:var(--text)}[data-theme=dark] .req-modern-card:hover{background:#2a2a2a}.menu-qty{width:70px;padding:.4rem;border-radius:8px;border:1px solid var(--border);text-align:center;font-weight:700;background:var(--light);color:var(--text)}[data-theme=dark] .menu-qty{background:#111827;color:var(--text);border-color:var(--border)}.login-logo{text-align:center;margin-bottom:1rem}.login-logo img{width:280px;height:280px;border-radius:50%;box-shadow:var(--shadow)}.live-users-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:14px;background:linear-gradient(135deg,rgba(72,118,255,.1),rgba(72,118,255,.03));border:1px solid rgba(72,118,255,.18);box-shadow:0 6px 20px rgba(0,0,0,.06);margin:1rem 0 1.25rem}.live-users-header:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(2,6,23,.08);border-color:#d1d5db}.live-users-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;font-size:1.25rem;border-radius:12px;background:rgba(72,118,255,.14);border:1px solid rgba(72,118,255,.22);text-shadow:0 1px 0 rgba(255,255,255,.4)}.live-users-text h2{margin:0 0 .25rem 0;font-size:1.1rem;font-weight:700;letter-spacing:.2px}.live-users-text p{margin:0;font-size:.95rem;color:var(--text-light,#666)}.live-users-text b{font-variant-numeric:tabular-nums}.live-users-bump{animation:bump .4s ease}@keyframes bump{0%{transform:scale(1)}35%{transform:scale(1.12)}100%{transform:scale(1)}}@media (max-width:640px){.live-users-header{padding:.85rem 1rem}.live-users-icon{width:42px;height:42px;font-size:1.1rem}.live-users-text h2{font-size:1rem}.live-users-text p{font-size:.9rem}}[data-theme=dark] .live-users-header{background:var(--dark);color:var(--text);border-color:var(--border)}[data-theme=dark] .live-users-icon{background:var(--dark);color:var(--text);border-color:var(--border)}#liveUsers{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:650;font-family:"Segoe UI",Arial,Tahoma,sans-serif}.hall-card .book-hall-btn{display:none!important}.quick-row{display:flex;gap:.5rem;flex-wrap:wrap}.quick-row .btn{flex:1 1 120px;min-height:40px}@media (max-width:480px){#openCalendar{flex:1 1 100%;width:100%;min-height:48px;font-size:1rem}}.date-navigation{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-block:.5rem}.date-navigation .date-center{flex:1 1 auto;display:flex;justify-content:center;min-width:180px}@media (max-width:640px){.date-navigation{display:grid;grid-template-columns:1fr 1fr}.date-navigation #nextDay,.date-navigation #nextWeek,.date-navigation #prevDay,.date-navigation #prevWeek{width:100%;min-height:44px}.date-navigation .date-center{grid-column:1/-1;order:-1;margin-bottom:.25rem}}.date-display{font-weight:800;font-size:1rem}.tabs2{display:flex;justify-content:center;align-items:center;gap:.25rem;margin:12px 0;padding:.35rem;border:1px solid var(--border);border-radius:18px;background:var(--light);box-shadow:inset 0 1px 3px rgba(0,0,0,.08)}:root[data-theme=dark] .tabs2{border-color:rgba(148,163,184,.18);background:rgba(255,255,255,.05);box-shadow:inset 0 1px 3px rgba(0,0,0,.35)}.tabs2 .tab2{appearance:none;border:0;background:0 0;padding:.75rem 1rem;border-radius:999px;font-weight:700;font-size:15px;color:var(--text);cursor:pointer;transition:all .2s ease}:root[data-theme=dark] .tabs2 .tab2{color:rgba(226,232,240,.92)}.tabs2 .tab2:hover{background:rgba(59,130,246,.1);color:var(--primary)}:root[data-theme=dark] .tabs2 .tab2:hover{background:rgba(59,130,246,.18);color:#fff}.tabs2 .tab2.active{background:#fff;color:var(--primary);box-shadow:var(--shadow);transform:translateY(-1px)}:root[data-theme=dark] .tabs2 .tab2.active{background:#818cf8;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.35)}.field-label{display:block;margin-bottom:.35rem;font-weight:700}.radio-group{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.radio{display:inline-flex!important;align-items:center;gap:8px;cursor:pointer;white-space:nowrap;user-select:none}.radio input{margin:0;accent-color:var(--primary)}.radio span{font-weight:600;line-height:1}.approval-extra{margin-top:8px;padding:8px 12px;border-radius:8px;border:1px solid #e5e7eb;display:grid;gap:6px;font-weight:700}.approval-extra.ext{background:#f9fafb}.approval-extra.int{background:#f0fdf4;border-color:#bbf7d0}:root[data-theme=dark] .approval-extra.ext{background:#0f172a;border-color:#1f2937}:root[data-theme=dark] .approval-extra.int{background:#052e1a;border-color:#14532d}.side-nav{position:fixed;top:92px;right:18px;width:320px;max-height:calc(100vh - 110px);z-index:40;transition:transform .22s ease,opacity .22s ease}@media (min-width:901px){body.sidebar-collapsed .side-nav{transform:translateX(120%);opacity:0;pointer-events:none}}.side-nav__backdrop{display:none}.side-nav__close{display:none}@media (max-width:900px){.side-nav{inset:0;top:0;right:0;width:100vw;height:100vh;z-index:200;pointer-events:none}body.sidebar-open .side-nav{pointer-events:auto}body.sidebar-open{overflow:hidden}.side-nav__backdrop{position:fixed;inset:0;background:rgba(2,6,23,.42);z-index:0;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;display:block}body.sidebar-open .side-nav__backdrop{opacity:1;visibility:visible}.side-nav__card{position:absolute;top:0;right:0;height:100dvh;max-height:100dvh;width:min(86vw,340px);z-index:1;transform:translateX(110%);transition:transform .22s ease;border-radius:0}body.sidebar-open .side-nav__card{transform:translateX(0)}.side-nav__close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;border:1px solid rgba(2,6,23,.14);background:rgba(2,6,23,.04);cursor:pointer;font-weight:900}:root[data-theme=dark] .side-nav__close{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06)}}.side-nav__card{border-radius:16px;background:#fff;border:1px solid var(--border-soft);box-shadow:0 10px 24px rgba(2,6,23,.08);overflow:hidden;display:flex;flex-direction:column;height:min(100%,calc(100vh - 110px));max-height:calc(100vh - 110px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}:root[data-theme=dark] .side-nav__card{background:#0b1220;border-color:rgba(255,255,255,.12);box-shadow:0 10px 26px rgba(0,0,0,.35)}[data-theme=dark] .toolbar .search{border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.06)!important}[data-theme=dark] .toolbar .search input{color:var(--text)!important;caret-color:var(--text)}[data-theme=dark] .toolbar .search input::placeholder{color:rgba(255,255,255,.55)!important}[data-theme=dark] .toolbar .search .kbd{border-color:rgba(255,255,255,.18)!important;background:rgba(255,255,255,.06);color:rgba(255,255,255,.75)}[data-theme=dark] .stats .stat{border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.04)!important;color:var(--text)}[data-theme=dark] .stats .stat small{color:rgba(255,255,255,.7)!important}[data-theme=dark] .filters-card{background:rgba(255,255,255,.03)!important;border-color:rgba(255,255,255,.12)!important}[data-theme=dark] .filters-card .filters-hint,[data-theme=dark] .filters-card .filters-title,[data-theme=dark] .filters-card label{color:rgba(255,255,255,.8)!important}[data-theme=dark] .filters-card :is(input,select,textarea){background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.16)!important;color:rgba(255,255,255,.92)!important;box-shadow:none!important}[data-theme=dark] .filters-card :is(input,select,textarea)::placeholder{color:rgba(255,255,255,.55)!important;opacity:1!important}[data-theme=dark] select{color-scheme:dark}[data-theme=dark] select optgroup,[data-theme=dark] select option{background-color:#0b1220;color:rgba(255,255,255,.92)}[data-theme=dark] .filters-card input[type=date],[data-theme=dark] .filters-card input[type=month],[data-theme=dark] .filters-card select{color-scheme:dark}[data-theme=dark] .filters-card input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] .filters-card input[type=month]::-webkit-calendar-picker-indicator{filter:invert(1) opacity(.85)}[data-theme=dark] .filters-card select{background-image:none}[data-theme=dark] .filters-card :is(input,select,textarea):focus{outline:0!important;border-color:rgba(167,139,250,.65)!important;box-shadow:0 0 0 3px rgba(167,139,250,.18)!important}[data-theme=dark] .filters-card input[type=date],[data-theme=dark] .filters-card input[type=month]{color-scheme:dark}[data-theme=dark] .filters-card input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] .filters-card input[type=month]::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.85}[data-theme=dark] .filters-card select{color-scheme:dark}.side-nav__brand{display:flex;align-items:center;gap:10px;padding:14px 14px 12px;border-bottom:1px solid var(--border-soft);background:linear-gradient(180deg,rgba(31,100,99,.1),rgba(31,100,99,.03))}.side-nav__brand-logo{width:40px;height:40px;border-radius:12px;object-fit:contain;padding:6px;background:var(--bg-soft);border:1px solid var(--border-soft)}.side-nav__brand-text{min-width:0}.side-nav__brand-name{font-weight:1000}.side-nav__brand-org{font-size:12px;font-weight:900;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-nav__title{padding:14px 16px;font-weight:1000;font-size:1.05rem;border-bottom:1px solid var(--border-soft);background:linear-gradient(180deg,rgba(31,100,99,.16),rgba(31,100,99,.06));display:flex;align-items:center;justify-content:space-between}.side-nav__brand,.side-nav__title{flex:0 0 auto}.side-nav__links{display:flex;flex-direction:column;padding:12px;gap:10px;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y;scrollbar-gutter:stable both-edges}.side-nav__link{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:16px;text-decoration:none;color:inherit;border:1px solid var(--border-soft);background:var(--bg-soft);font-weight:900;font-size:1.05rem}.side-nav__link--button{width:100%;cursor:pointer;text-align:right}.side-nav__link:hover{background:rgba(59,130,246,.1)}.side-nav__link.is-active{background:rgba(59,130,246,.18);border-color:rgba(59,130,246,.35)}.side-nav__icon{width:22px;text-align:center}.side-nav__text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:9999}.modal{width:min(720px,92vw);max-height:88vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.25);padding:16px}.modal .modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.modal .modal-title{font-weight:800;color:#0f172a}.modal .modal-close{width:38px;height:38px;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:rgba(255,255,255,.9);cursor:pointer}.modal .modal-footer{display:flex;gap:10px;justify-content:flex-start;margin-top:12px}[data-theme=dark] .modal-overlay{background:rgba(0,0,0,.62)}[data-theme=dark] .modal{background:rgba(15,23,42,.92)!important;border:1px solid rgba(255,255,255,.1)!important}[data-theme=dark] .modal .modal-title,[data-theme=dark] .modal h1,[data-theme=dark] .modal h2,[data-theme=dark] .modal h3{color:rgba(255,255,255,.92)!important}[data-theme=dark] .modal .modal-header{border-bottom-color:rgba(255,255,255,.1)!important;background:linear-gradient(180deg,rgba(59,130,246,.18),rgba(59,130,246,.06))!important}[data-theme=dark] .modal .modal-close{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.14)!important;color:rgba(255,255,255,.85)!important}[data-theme=dark] .modal .field-label,[data-theme=dark] .modal .form-label,[data-theme=dark] .modal label{color:rgba(255,255,255,.8)!important}[data-theme=dark] .modal input,[data-theme=dark] .modal select,[data-theme=dark] .modal textarea{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.14)!important;color:rgba(255,255,255,.92)!important}[data-theme=dark] .modal input::placeholder,[data-theme=dark] .modal textarea::placeholder{color:rgba(255,255,255,.45)!important}[data-theme=dark] .modal input[type=date],[data-theme=dark] .modal input[type=month],[data-theme=dark] .modal input[type=time]{color-scheme:dark}[data-theme=dark] .modal .modal-footer{border-top-color:rgba(255,255,255,.1)!important;background:rgba(255,255,255,.02)!important}table.interviews,table.requests{width:100%;border-collapse:separate;border-spacing:0}.overlap-row{cursor:pointer;user-select:none}.overlap-row:focus{outline:2px solid rgba(0,0,0,.2);outline-offset:2px}.ol-note{border:1px solid rgba(46,111,110,.25);background:rgba(46,111,110,.1);border-radius:12px;width:44px;height:44px;padding:0;cursor:pointer;line-height:1;display:inline-flex;align-items:center;justify-content:center;font-size:22px;color:var(--logout-accent);box-shadow:none;transition:var(--transition-fast)}.overlap-row:focus-within .ol-note,.overlap-row:hover .ol-note{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.35);color:#fff}.ol-note:hover{background:rgba(46,111,110,.18);border-color:rgba(46,111,110,.35)}.overlap-row:focus-within .ol-note:hover,.overlap-row:hover .ol-note:hover{background:rgba(255,255,255,.28);border-color:rgba(255,255,255,.45);color:#fff}table.interviews thead{display:table-header-group;width:auto;table-layout:fixed}table.interviews tbody{display:table-row-group;width:auto;max-height:none;overflow:visible}table.interviews tbody tr{display:table-row;width:auto;table-layout:fixed}table.interviews thead th,table.requests thead th{padding:16px 14px;text-align:right;font-weight:700;background:rgba(148,163,184,.12);color:var(--text);border-bottom:1px solid var(--border)}table.interviews tbody td.notes,table.interviews thead th.notes{text-align:center!important}[data-theme=dark] table.interviews thead th,[data-theme=dark] table.requests thead th{background:rgba(148,163,184,.1)}table.interviews tbody td,table.requests tbody td{padding:18px 14px;vertical-align:middle;color:var(--text)}table.interviews tbody tr,table.requests tbody tr{border-bottom:1px solid var(--border)}table.interviews tbody tr:not(:last-child) td,table.requests tbody tr:not(:last-child) td{border-bottom:1px solid var(--border)}table.interviews tbody tr:hover td,table.requests tbody tr:hover td{background:rgba(148,163,184,.08)}[data-theme=dark] table.interviews tbody tr:hover td,[data-theme=dark] table.requests tbody tr:hover td{background:rgba(148,163,184,.06)}table.interviews tbody td,table.interviews thead th,table.requests tbody td,table.requests thead th{text-align:center;vertical-align:middle}table.interviews tbody tr,table.requests tbody tr{height:auto;min-height:60px}table.interviews tbody td>*,table.requests tbody td>*{vertical-align:middle}table.interviews tbody td>a,table.interviews tbody td>button,table.interviews tbody td>span,table.requests tbody td>a,table.requests tbody td>button,table.requests tbody td>span{display:inline-flex;align-items:center;justify-content:center}table.interviews tbody td,table.requests tbody td{line-height:1.6}.cell-preview{display:inline-block;max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.btn-eye{border:1px solid rgba(0,0,0,.12);background:#fff;cursor:pointer;padding:8px 10px;margin:0;border-radius:10px;vertical-align:middle;color:rgba(0,0,0,.55);line-height:0;display:inline-flex;align-items:center;justify-content:center;pointer-events:auto;position:relative;z-index:20}.btn-eye:hover{background:rgba(65,94,171,.08);border-color:rgba(65,94,171,.25);color:rgba(65,94,171,.9)}.btn-eye:active{transform:translateY(1px)}.eye-icon{width:22px;height:22px;display:block;pointer-events:none}.btn-eye-inline{border:0!important;background:0 0!important;padding:0 4px!important;border-radius:8px;pointer-events:auto;position:relative;z-index:5;cursor:pointer;box-shadow:none!important}.btn-eye-inline:hover{background:rgba(65,94,171,.08)!important}.text-modal{position:fixed;inset:0;z-index:9999;display:none}.text-modal.is-open{display:block}.text-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}.text-modal__box{position:relative;width:min(720px,92vw);max-height:82vh;margin:8vh auto 0;background:var(--card,#fff);border-radius:14px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.25)}.text-modal__head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid rgba(0,0,0,.08)}.text-modal__title{font-weight:800;font-size:16px}.text-modal__close{border:0;background:0 0;cursor:pointer;padding:8px 10px;border-radius:10px}.text-modal__close:hover{background:rgba(0,0,0,.06)}.text-modal__body{padding:16px;line-height:1.8;max-height:55vh;overflow:auto;white-space:pre-wrap;word-break:break-word}.text-modal__foot{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid rgba(0,0,0,.08)}.text-modal__copy{border:0;padding:10px 12px;border-radius:10px;cursor:pointer;background:rgba(2,6,23,.06)}.text-modal__copy:hover{background:rgba(2,6,23,.1)}.cell-empty{display:block;width:100%;text-align:center;opacity:.65;font-weight:800;font-size:13px}table.external td.owner,table.external td.reply,table.interviews td.notes,table.requests td.notes,table.requests td.owner,table.requests td.reply{text-align:center}table.interviews tbody td.actions,table.interviews thead th.actions,table.requests tbody td.actions,table.requests thead th.actions{padding-left:18px!important;padding-right:18px!important}table.interviews tbody td.name,table.interviews thead th.name,table.requests tbody td.name,table.requests thead th.name{padding-left:28px!important;padding-right:28px!important}table.interviews tbody td:first-child,table.interviews tbody td:last-child,table.interviews thead th:first-child,table.interviews thead th:last-child,table.requests tbody td:first-child,table.requests tbody td:last-child,table.requests thead th:first-child,table.requests thead th:last-child{padding-left:18px!important;padding-right:18px!important}#opsTable .ops-row{display:grid;grid-template-columns:minmax(190px,1.35fr) minmax(120px,.8fr) minmax(140px,1fr) minmax(140px,.8fr) minmax(220px,1.25fr);column-gap:18px;align-items:center;padding:14px 16px;border-bottom:1px solid rgba(120,140,180,.22)}#opsTable .ops-row.head{font-weight:700;background:linear-gradient(180deg,rgba(125,135,255,.18),rgba(125,135,255,.1))}#opsTable .ops-row>div{min-width:0}#opsTable .ops-row>div:first-child{direction:ltr;text-align:right;white-space:nowrap}#opsTable .ops-row>div:nth-child(5){text-align:center;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}#opsTable .ops-note{text-align:center}#opsTable .ops-note-actions{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-wrap:nowrap;white-space:nowrap}#opsTable .ops-note-actions .btn-eye{flex:0 0 auto}@media (max-width:900px){#opsTable .ops-row{grid-template-columns:minmax(170px,1.3fr) minmax(110px,.8fr) minmax(130px,1fr) minmax(130px,.85fr) minmax(180px,1.1fr);column-gap:12px;padding:12px 12px}}@media (max-width:640px){#opsTable .ops-row{grid-template-columns:1.2fr .8fr 1fr .9fr 1.2fr;column-gap:10px;padding:10px 10px}#opsTable .ops-row>div:first-child{white-space:normal}}[data-theme=dark]{--border-soft:rgba(255,255,255,0.12);--border-soft-2:rgba(255,255,255,0.16);--bg-soft:rgba(255,255,255,0.06)}body{background:radial-gradient(900px 420px at 95% 0,rgba(99,102,241,.16),transparent 60%),radial-gradient(700px 380px at 5% 10%,rgba(34,211,238,.1),transparent 55%),var(--light)}[data-theme=dark] body{background:radial-gradient(900px 420px at 95% 0,rgba(129,140,248,.14),transparent 60%),radial-gradient(700px 380px at 5% 10%,rgba(34,211,238,.1),transparent 55%),var(--light)}[data-theme=dark] .booking-item,[data-theme=dark] .card,[data-theme=dark] .hall-card,[data-theme=dark] .live-users-header,[data-theme=dark] .stat-card,[data-theme=dark] .ticket{background:var(--card)}.tabs{background:var(--bg-soft);border:1px solid var(--border-soft)}[data-theme=dark] .tabs{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}.tab.active{background:var(--card)}[data-theme=dark] .tab.active{background:rgba(255,255,255,.06)}.table{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.table .row{border-bottom:1px solid var(--border-soft);color:var(--text)}.table .row.head{background:var(--bg-soft);color:var(--text);border-bottom:1px solid var(--border-soft)}[data-theme=dark] .table .row{border-bottom-color:rgba(255,255,255,.08)}[data-theme=dark] .table .row.head{background:rgba(255,255,255,.06);color:var(--text);border-bottom-color:rgba(255,255,255,.1)}.approver-label,.hosp-none{color:var(--text)!important}body.hb-home .container{max-width:1400px;margin:1.4rem auto 2.5rem}body.hb-home .home-hero{border-radius:22px;padding:clamp(16px,2.4vw,22px);border:1px solid var(--border-soft);background:radial-gradient(900px 420px at 85% 0,rgba(31,100,99,.16),transparent 60%),radial-gradient(680px 360px at 10% 15%,rgba(31,100,99,.1),transparent 55%),rgba(255,255,255,.7);box-shadow:0 18px 40px rgba(2,6,23,.08);backdrop-filter:blur(14px) saturate(130%);overflow:visible}[data-theme=dark] body.hb-home .home-hero{border-color:rgba(255,255,255,.12);background:radial-gradient(900px 420px at 85% 0,rgba(129,140,248,.16),transparent 60%),radial-gradient(680px 360px at 10% 15%,rgba(34,211,238,.1),transparent 55%),rgba(15,23,42,.55);box-shadow:0 22px 55px rgba(0,0,0,.35)}body.hb-home .home-hero-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}body.hb-home .home-hero-title h2{margin:0;font-size:clamp(1.25rem, 1.1rem + .7vw, 1.65rem);font-weight:900;color:var(--text);letter-spacing:0}body.hb-home .home-hero-title p{margin:8px 0 0;color:var(--text-light);font-weight:650;line-height:1.75}body.hb-home .home-live-pill{display:inline-flex;align-items:center;gap:10px;padding:10px 12px;border-radius:999px;border:1px solid var(--border-soft);background:rgba(255,255,255,.75);box-shadow:0 10px 25px rgba(2,6,23,.08);backdrop-filter:blur(12px);font-weight:900;white-space:nowrap}[data-theme=dark] body.hb-home .home-live-pill{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.06);box-shadow:0 14px 35px rgba(0,0,0,.35)}body.hb-home .home-live-ico{font-size:18px;line-height:1}body.hb-home .home-live-label{color:var(--text-light);font-weight:800}body.hb-home .home-live-pill b{color:var(--primary);font-weight:950}body.hb-home .stats-grid{gap:12px;margin-bottom:14px}body.hb-home .stat-card{background:rgba(255,255,255,.7);border:1px solid var(--border-soft);box-shadow:0 14px 28px rgba(2,6,23,.07);backdrop-filter:blur(10px)}[data-theme=dark] body.hb-home .stat-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}body.hb-home .stat-card::before{background:var(--primary)}body.hb-home .home-controls{margin-top:10px;padding:14px;border-radius:18px;border:1px solid var(--border-soft);background:rgba(255,255,255,.65);backdrop-filter:blur(12px) saturate(130%);box-shadow:0 14px 28px rgba(2,6,23,.06);display:grid;gap:12px}[data-theme=dark] body.hb-home .home-controls{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.05)}body.hb-home .home-controls .date-navigation{margin:0}body.hb-home .home-controls .date-display{background:rgba(255,255,255,.7);color:var(--text);border:1px solid var(--border-soft);box-shadow:none;min-width:220px}[data-theme=dark] body.hb-home .home-controls .date-display{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}body.hb-home .home-controls .home-quick{margin-top:0;justify-content:flex-start;gap:10px}body.hb-home .home-controls .home-quick .btn{min-height:44px;border-radius:999px}body.hb-home .tabs{margin-top:18px;margin-bottom:18px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;padding:10px;border-radius:18px;border:1px solid var(--border-soft);background:rgba(255,255,255,.65);backdrop-filter:blur(12px) saturate(130%);box-shadow:0 14px 28px rgba(2,6,23,.06)}[data-theme=dark] body.hb-home .tabs{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}body.hb-home .tabs .tab{flex:0 0 auto;padding:.75rem 1.25rem;min-height:44px;border-radius:999px;border:2px solid var(--primary);background:0 0;color:var(--primary);font-weight:900;cursor:pointer;transition:var(--transition);box-shadow:none;transform:none;white-space:nowrap}body.hb-home .tabs .tab::before{display:none!important}body.hb-home .tabs .tab:hover:not(.active){background:var(--primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow)}body.hb-home .tabs .tab.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:var(--shadow)}body.hb-home .tabs .tab.active:hover{background:var(--primary-light);border-color:var(--primary-light)}@media (max-width:640px){body.hb-home .tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}body.hb-home .tabs::-webkit-scrollbar{height:6px}body.hb-home .tabs::-webkit-scrollbar-thumb{background:rgba(99,102,241,.25);border-radius:999px}}body.hb-home .hall-grid{gap:14px}body.hb-home .hall-card{background:rgba(255,255,255,.72);border:1px solid var(--border-soft);backdrop-filter:blur(12px)}[data-theme=dark] body.hb-home .hall-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}body.hb-home .hall-card:hover{border-color:rgba(99,102,241,.45);transform:translateY(-4px);box-shadow:0 22px 55px rgba(2,6,23,.12)}body.hb-home .hall-card.selected{background:rgba(255,255,255,.86);border-color:rgba(99,102,241,.45)}[data-theme=dark] body.hb-home .hall-card.selected{background:rgba(255,255,255,.08)}body.hb-home .meta-item{background:rgba(255,255,255,.6);border:1px solid var(--border-soft)}[data-theme=dark] body.hb-home .meta-item{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}body.hb-home .time-slot{border:1px solid var(--border-soft)}[data-theme=dark] body.hb-home .time-slot{border-color:rgba(255,255,255,.12)}body.hb-home .login-overlay{background:radial-gradient(900px 420px at 85% 0,rgba(99,102,241,.2),transparent 60%),radial-gradient(720px 420px at 10% 15%,rgba(34,211,238,.14),transparent 55%),rgba(2,6,23,.65);backdrop-filter:blur(16px)}body.hb-home .login-card{border-radius:22px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.86);backdrop-filter:blur(18px) saturate(140%)}[data-theme=dark] body.hb-home .login-card{background:rgba(15,23,42,.72);border-color:rgba(255,255,255,.14)}body.hb-home .login-logo img{width:170px;height:170px;border-radius:22px;box-shadow:0 14px 34px rgba(2,6,23,.18);padding:10px;background:rgba(255,255,255,.8)}[data-theme=dark] body.hb-home .login-logo img{background:rgba(255,255,255,.06)}body.hb-home .login-header{margin-bottom:1.4rem}body.hb-home .login-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;font-weight:900;font-size:.85rem;color:var(--primary);background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.2);margin-bottom:10px}[data-theme=dark] body.hb-home .login-badge{color:#c7d2fe;background:rgba(129,140,248,.1);border-color:rgba(129,140,248,.2)}body.hb-home .login-header h2{margin:0 0 6px 0;font-size:1.4rem;font-weight:950}body.hb-home .login-header p{margin:0;color:var(--text-light);font-weight:650}body.hb-home .login-header p strong{color:var(--text);font-weight:900}body.hb-home .login-public-docs{margin-top:16px;padding-top:14px;border-top:1px solid rgba(148,163,184,.24);display:grid;gap:12px}body.hb-home .login-public-docs-text{text-align:center;display:grid;gap:4px}body.hb-home .login-public-docs-text strong{color:var(--text);font-size:.98rem;font-weight:900}body.hb-home .login-public-docs-text span{color:var(--text-light);font-size:.9rem;font-weight:700;line-height:1.8}body.hb-home .login-public-docs-btn{min-height:46px}[data-theme=dark] body.hb-home .login-public-docs{border-top-color:rgba(148,163,184,.18)}[data-theme=dark] body.hb-home .login-public-docs-text strong{color:#e5e7eb}[data-theme=dark] body.hb-home .login-public-docs-text span{color:#94a3b8}body{background-repeat:no-repeat!important}[data-theme=dark] body{background-repeat:no-repeat!important}body.hb-home .hall-card{position:relative;overflow:hidden;background:radial-gradient(700px 420px at 85% 0,rgba(31,100,99,.14),transparent 60%),radial-gradient(520px 320px at 10% 10%,rgba(31,100,99,.1),transparent 55%),rgba(255,255,255,.7);backdrop-filter:blur(16px) saturate(140%);border:1px solid rgba(2,6,23,.1);box-shadow:0 18px 45px rgba(2,6,23,.1)}[data-theme=dark] body.hb-home .hall-card{background:radial-gradient(700px 420px at 85% 0,rgba(129,140,248,.18),transparent 60%),radial-gradient(520px 320px at 10% 10%,rgba(34,211,238,.12),transparent 55%),rgba(15,23,42,.45);border-color:rgba(255,255,255,.12);box-shadow:0 18px 55px rgba(0,0,0,.45)}body.hb-home .hall-slots .slots-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:10px}@media (max-width:640px){body.hb-home .hall-slots .slots-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}body.hb-home .slot-btn{width:100%;position:relative;overflow:hidden;min-height:48px;border-radius:14px;padding:14px 0;font-weight:900;border:1px solid rgba(2,6,23,.12);background:rgba(255,255,255,.55);color:var(--text);box-shadow:0 10px 22px rgba(2,6,23,.08);backdrop-filter:blur(10px) saturate(130%);transform:translateY(0)}[data-theme=dark] body.hb-home .slot-btn{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:var(--text);box-shadow:0 10px 26px rgba(0,0,0,.4)}body.hb-home .slot-btn.has-status-badge{padding-top:24px;padding-bottom:10px}body.hb-home .slot-btn.has-status-badge::after{content:attr(data-status-label);position:absolute;top:6px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;min-width:54px;height:20px;padding:0 10px;border-radius:999px;border:1px solid rgba(2,6,23,.08);background:rgba(255,255,255,.72);color:var(--text-light);font-size:.66rem;font-weight:900;line-height:1;box-shadow:0 4px 12px rgba(2,6,23,.08);backdrop-filter:blur(8px);pointer-events:none;white-space:nowrap}body.hb-home .slot-btn.is-booked{opacity:.82}body.hb-home .slot-btn.is-ended{opacity:.68}[data-theme=dark] body.hb-home .slot-btn.has-status-badge::after{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.12);color:var(--text);box-shadow:0 6px 18px rgba(0,0,0,.28)}body.hb-home .slot-btn.is-available{border-color:rgba(99,102,241,.35)}[data-theme=dark] body.hb-home .slot-btn.is-available{border-color:rgba(129,140,248,.35)}body.hb-home .slot-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 32px rgba(2,6,23,.12);border-color:rgba(99,102,241,.55)}[data-theme=dark] body.hb-home .slot-btn:hover:not(:disabled){box-shadow:0 18px 36px rgba(0,0,0,.55);border-color:rgba(129,140,248,.55)}body.hb-home .slot-btn.is-disabled,body.hb-home .slot-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.cal-day.is-disabled-day,.cal-day:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}table.interviews tbody td.name,table.interviews thead th.name{white-space:nowrap}.cal-readonly{background:var(--card,#fff);border:1px solid var(--border,#dfe7ea);border-radius:10px;padding:10px 12px;min-height:42px;display:flex;align-items:center}.ev-mini.ev-mini-row{display:flex;align-items:center;gap:10px;flex-direction:row-reverse}.ev-mini.ev-mini-row .mn-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;flex:1}.ev-note.ol-note,.mn-note.ol-note{width:44px;height:44px;font-size:22px}@media (max-width:900px){.mn-note.ol-note{width:40px;height:40px;font-size:20px}}table.external tbody td.attachments,table.external thead th.attachments,table.interviews tbody td.attachments,table.interviews thead th.attachments,table.requests tbody td.attachments,table.requests thead th.attachments{width:110px;min-width:110px;text-align:center}.attachment-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:rgba(37,99,235,.12);color:#1d4ed8;font-size:11px;font-weight:900;margin-inline-start:6px}.attachments-grid{display:grid;grid-template-columns:1fr;gap:10px}.attachment-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid rgba(148,163,184,.24);background:#fff;border-radius:14px;padding:10px 12px;box-shadow:0 6px 14px rgba(15,23,42,.04);min-height:84px}.attachment-card__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(99,102,241,.12));font-size:22px;flex:0 0 44px}.attachment-card__content{min-width:0}.attachment-card__name{font-weight:900;color:#0f172a;line-height:1.35;word-break:break-word}.attachment-card__meta{margin-top:2px;color:#64748b;font-size:11px;line-height:1.35}.attachment-card__actions{display:flex;gap:8px;flex-wrap:nowrap;align-items:center}.attachments-empty{padding:22px;text-align:center;border:1px dashed rgba(148,163,184,.45);border-radius:18px;color:#64748b;font-weight:800;background:rgba(248,250,252,.85)}.attachment-edit-list{margin-top:12px}.attachment-edit-title{font-size:13px;font-weight:900;color:#334155;margin-bottom:8px}.attachment-edit-grid{display:grid;gap:8px}.attachment-edit-chip{display:flex;align-items:center;gap:10px;background:#f8fafc;border:1px solid rgba(148,163,184,.28);border-radius:14px;padding:10px 12px}.attachment-edit-chip .ico{font-size:18px}.attachment-edit-chip .meta{min-width:0;flex:1 1 auto}.attachment-edit-chip .name{font-weight:800;color:#0f172a;word-break:break-word}.attachment-edit-chip .size{color:#64748b;font-size:12px;margin-top:2px}.attachments-modal .text-modal__box{max-width:760px}.attachments-modal .text-modal__body{padding:10px 12px;white-space:normal;line-height:1.35}@media (max-width:720px){.attachments-grid{grid-template-columns:1fr}.attachment-card{grid-template-columns:1fr;align-items:flex-start}.attachment-card__actions{width:100%}}table.requests tbody td.owner,table.requests thead th.owner{text-align:center!important}table.requests td.owner .cell-empty{display:block;width:100%;text-align:center!important;margin:0 auto}.req-star{color:#d93025;font-weight:800;margin-inline-start:4px}label .req-star{vertical-align:middle}body.sidebar-scroll-lock{position:fixed;inset-inline:0;width:100%;overflow:hidden}@media (max-width:900px){.side-nav{overscroll-behavior:contain}.side-nav__card{height:100dvh;max-height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr)}.side-nav__links{--mobile-nav-item-height:96px;--mobile-nav-gap:10px;--mobile-nav-padding:24px;flex:0 0 auto;height:min(calc((var(--mobile-nav-item-height) * 4) + (var(--mobile-nav-gap) * 3) + var(--mobile-nav-padding)),calc(100dvh - 180px - max(18px,env(safe-area-inset-bottom))));max-height:min(calc((var(--mobile-nav-item-height) * 4) + (var(--mobile-nav-gap) * 3) + var(--mobile-nav-padding)),calc(100dvh - 180px - max(18px,env(safe-area-inset-bottom))));min-height:0;padding-bottom:max(18px,env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;scrollbar-gutter:stable both-edges}.side-nav__link{min-height:86px;flex:0 0 auto}}@media (min-width:901px){.side-nav__links{max-height:calc(100vh - 220px)}}@media (max-width:900px){.side-nav__card{height:100dvh!important;max-height:100dvh!important;min-height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr);padding-bottom:0}.side-nav__links{--mobile-nav-visible-items:4;--mobile-nav-item-height:96px;--mobile-nav-gap:10px;--mobile-nav-padding-top:12px;--mobile-nav-padding-bottom:max(18px, env(safe-area-inset-bottom));flex:0 0 auto;min-height:0;height:min(calc((var(--mobile-nav-item-height) * var(--mobile-nav-visible-items)) + (var(--mobile-nav-gap) * (var(--mobile-nav-visible-items) - 1)) + var(--mobile-nav-padding-top) + var(--mobile-nav-padding-bottom)),calc(100dvh - 172px))!important;max-height:min(calc((var(--mobile-nav-item-height) * var(--mobile-nav-visible-items)) + (var(--mobile-nav-gap) * (var(--mobile-nav-visible-items) - 1)) + var(--mobile-nav-padding-top) + var(--mobile-nav-padding-bottom)),calc(100dvh - 172px))!important;padding-top:var(--mobile-nav-padding-top);padding-bottom:var(--mobile-nav-padding-bottom);overflow-y:auto!important;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overscroll-behavior-y:contain;touch-action:pan-y}.side-nav__link{min-height:86px;flex:0 0 auto}}body,html{scroll-behavior:auto!important}*,::after,::before{transition-property:background-color,color,border-color,opacity,transform,box-shadow!important}@supports (backdrop-filter:blur(2px)){.admin-card,.admin-shell,.card,.dialog,.glass,.modal,.overlay,.panel,.popover,.sheet,.side-nav__card,.sidebar,.stat-card,.topbar{backdrop-filter:none!important}}@media (prefers-reduced-motion:no-preference){.booking-item,.btn,.card,.panel,.side-nav__card,.stat-card,.tab{transition-duration:.12s!important}}body.hb-home .login-overlay{padding:10px;align-items:center;justify-content:center;overflow:hidden}body.hb-home .login-card{width:min(420px,calc(100vw - 20px));max-height:none;overflow:hidden}@media (max-width:640px){body.hb-home .login-card{width:min(100%,410px);padding:1.15rem;border-radius:18px}body.hb-home .login-logo img{width:110px;height:110px;padding:7px;border-radius:18px}body.hb-home .login-header{margin-bottom:1rem}body.hb-home .login-header h2{font-size:1.2rem;margin-bottom:4px}body.hb-home .login-header p{font-size:.96rem;line-height:1.55}.form-group{margin-bottom:1rem}.form-group label{margin-bottom:.35rem;font-size:.95rem}.btn,.form-input,body.hb-home .login-public-docs-btn{min-height:44px;padding-top:.72rem;padding-bottom:.72rem}body.hb-home .login-public-docs{margin-top:12px;padding-top:12px;gap:8px}body.hb-home .login-public-docs-text strong{font-size:.95rem}body.hb-home .login-public-docs-text span{font-size:.84rem;line-height:1.6}}@media (max-height:820px){body.hb-home .login-card{padding:1rem}body.hb-home .login-logo img{width:96px;height:96px;padding:6px}body.hb-home .login-header{margin-bottom:.85rem}body.hb-home .login-badge{margin-bottom:8px;padding:5px 10px;font-size:.8rem}body.hb-home .login-header h2{font-size:1.12rem;margin-bottom:4px}body.hb-home .login-header p{font-size:.92rem;line-height:1.5}.form-group{margin-bottom:.82rem}.form-group label{margin-bottom:.3rem}.btn,.form-input,body.hb-home .login-public-docs-btn{min-height:42px}body.hb-home .login-public-docs{margin-top:10px;padding-top:10px;gap:8px}body.hb-home .login-public-docs-text span{font-size:.82rem;line-height:1.45}}@media (max-height:720px){body.hb-home .login-logo img{width:82px;height:82px;padding:5px}body.hb-home .login-badge{display:none}body.hb-home .login-header p{font-size:.88rem}body.hb-home .login-public-docs-text span{display:none}}@media (max-height:660px){body.hb-home .login-card{padding:.9rem}body.hb-home .login-logo img{width:72px;height:72px}body.hb-home .login-header{margin-bottom:.7rem}.form-group{margin-bottom:.7rem}body.hb-home .login-public-docs{margin-top:8px;padding-top:8px}}.page-header{align-items:flex-start!important;gap:18px!important}.page-title h2{margin-bottom:6px}.page-subtitle,.page-title p{color:var(--text-light)!important;opacity:1!important;font-size:.95rem;line-height:1.7;margin-top:6px!important}.toolbar{align-items:center!important;gap:10px!important}.toolbar .search{min-height:44px;flex:1 1 320px}.toolbar .search input{min-width:0;width:100%!important}.btn,.field input,.field select,.field textarea,.form-input,input,select,textarea{min-height:44px}.side-nav__section{margin:10px 8px 2px;padding:0 6px;color:var(--text-light);font-size:12px;font-weight:1000;letter-spacing:.01em}.side-nav__section:first-child{margin-top:0}.side-nav__link{min-height:48px}.export-menu{position:relative;display:inline-flex;z-index:15}.export-menu__trigger::after{content:'▾';font-size:.85em;margin-inline-start:4px}.export-menu__list{position:absolute;top:calc(100% + 8px);inset-inline-start:0;min-width:210px;padding:8px;border-radius:16px;border:1px solid var(--border-soft);background:var(--card);box-shadow:var(--shadow);display:none;flex-direction:column;gap:6px}.export-menu:focus-within .export-menu__list,.export-menu:hover .export-menu__list{display:flex}.export-menu__item{width:100%;min-height:40px;border:1px solid var(--border-soft);border-radius:12px;background:var(--bg-soft);color:inherit;font-weight:900;text-align:right;padding:8px 12px;cursor:pointer}.export-menu__item:hover{background:rgba(59,130,246,.1)}.filters-quick-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.filters-quick-row #clearFiltersBtn{margin-inline-start:auto}.inline-date-range{display:flex;gap:10px}.inline-date-range>input{flex:1 1 0}.filter-summary{margin-top:14px;padding:10px 12px;border-radius:14px;border:1px solid var(--border-soft);background:var(--bg-soft);color:var(--text-light);font-size:13px;font-weight:900}.section-spacer{height:14px}.table-wrap thead th,.table-x-head thead th{position:sticky;top:0;z-index:2}table.external tbody tr:hover,table.interviews tbody tr:hover,table.requests tbody tr:hover{background:var(--bg-soft)}@media (max-width:900px){.page-header{flex-direction:column}.export-menu,.export-menu__trigger,.toolbar,.toolbar .search{width:100%}.toolbar .btn{flex:1 1 auto}.export-menu__list{width:100%}.filters-grid{grid-template-columns:1fr!important}.filters-quick-row #clearFiltersBtn{margin-inline-start:0}.inline-date-range{flex-direction:column}.stats{gap:8px}.stats .stat{flex:1 1 150px;justify-content:center}}@media (max-width:640px){.container{padding-inline:12px}.side-nav__link{padding:12px 14px;font-size:1rem}.filters-card{padding:14px!important}.chips,.filters-quick-row{gap:6px}.chip{flex:1 1 calc(50% - 6px)}.toolbar .search .kbd{display:none}.table-body,.table-wrap,.table-y{max-height:none!important}.table-x,.table-x-body,.table-x-head{overflow-x:auto}}.stat-card{position:relative;overflow:hidden}.stat-card .stat-icon{font-size:1.35rem;margin-bottom:8px;opacity:.9}.stat-card .stat-note{font-size:.78rem;color:var(--text-light);font-weight:750;margin-top:6px}.booking-day-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:2px}.day-overview-card{border:1px solid var(--border-soft);border-radius:16px;background:rgba(255,255,255,.58);padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:64px}.day-overview-card span{color:var(--text-light);font-weight:850}.day-overview-card b{font-size:1.35rem;color:var(--primary);font-weight:950}[data-theme=dark] .day-overview-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}.hall-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.hall-toolbar h3{margin:0 0 4px}.hall-toolbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.segmented-control{display:flex;gap:8px;flex-wrap:wrap}.segmented-control .is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.hall-timeline{margin-bottom:14px}.timeline-strip{display:grid;grid-template-columns:repeat(8,minmax(70px,1fr));gap:8px}.timeline-slot{border:1px solid var(--border-soft);border-radius:14px;min-height:64px;padding:10px;background:var(--bg-soft);display:grid;gap:4px;align-content:center}.timeline-slot b{font-size:.92rem}.timeline-slot span{font-size:.78rem;color:var(--text-light);font-weight:800}.timeline-slot.is-busy{box-shadow:inset 0 0 0 2px rgba(245,158,11,.18)}.timeline-slot.is-free{box-shadow:inset 0 0 0 2px rgba(16,185,129,.14)}.hall-card .hall-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.hall-card .hall-title-group h3{margin-bottom:4px}.hall-card .hall-title-group p{margin-bottom:0}.status-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-soft);border-radius:999px;padding:6px 10px;font-size:.84rem;font-weight:900;background:var(--bg-soft);white-space:nowrap}.hall-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.hall-summary-item{border:1px solid var(--border-soft);border-radius:14px;padding:10px;background:rgba(255,255,255,.45);display:grid;gap:3px}.hall-summary-item span{font-size:.74rem;color:var(--text-light);font-weight:850}.hall-summary-item b{font-size:1rem;color:var(--text);font-weight:950}.hall-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:12px}.hall-actions .book-hall-btn{margin-top:0}.hall-grid.view-compact{grid-template-columns:1fr}.hall-grid.view-compact .hall-card{padding:16px}.hall-grid.view-compact .hall-info{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(300px,1.2fr) minmax(220px,.7fr);gap:14px;align-items:center}.hall-grid.view-compact .hall-slots{margin:0}.hall-grid.view-compact .hall-actions{margin:0}.hall-card.is-filtered-out{display:none!important}.hall-card.status-busy{opacity:.86}.hall-card.status-pending .status-badge{border-style:dashed}.hall-card .features-list{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}.hall-card .feature-chip{border:1px solid var(--border-soft);border-radius:999px;padding:4px 8px;font-size:.76rem;font-weight:800;color:var(--text-light);background:var(--bg-soft)}.booking-modal-sections .form-section{border:1px solid var(--border-soft);border-radius:18px;padding:14px;margin-bottom:12px;background:var(--bg-soft)}.booking-modal-sections .form-section-title{font-weight:950;color:var(--primary);margin-bottom:10px}.modal .modal-actions,.modal-actions{position:sticky;bottom:0;background:var(--card);padding-top:12px;border-top:1px solid var(--border-soft)}@media(max-width:1100px){.booking-day-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.hall-grid.view-compact .hall-info{grid-template-columns:1fr}.timeline-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.booking-day-overview{grid-template-columns:1fr}.hall-toolbar,.hall-toolbar-actions,.segmented-control{width:100%}.hall-toolbar-actions .form-input,.segmented-control .btn{flex:1;min-width:0}.timeline-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.hall-summary{grid-template-columns:1fr}.hall-actions{flex-direction:column}.hall-actions .btn{width:100%}.hall-card .hall-top{flex-direction:column}.home-controls .date-navigation{display:grid;grid-template-columns:1fr 1fr}.home-controls .date-center{grid-column:1/-1;order:-1}.home-controls .date-navigation .btn{width:100%}}body.hb-home .booking-command-center{margin-top:14px;padding:20px;border-radius:24px;border:1px solid var(--border-soft);background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.68));box-shadow:0 18px 40px rgba(15,23,42,.07);gap:16px}body.hb-home .booking-controls-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:4px}body.hb-home .booking-controls-head h3{margin:0 0 6px;font-size:1.2rem;color:var(--text)}body.hb-home .booking-controls-head p{margin:0;color:var(--text-light);font-size:.92rem;font-weight:700}body.hb-home .booking-controls-chip{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(46,108,105,.18);background:rgba(46,108,105,.08);color:var(--primary);font-weight:900;white-space:nowrap}body.hb-home .booking-nav-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,auto) minmax(0,1fr);align-items:center;gap:14px;padding:16px;border-radius:22px;border:1px solid var(--border-soft);background:rgba(255,255,255,.55)}body.hb-home .booking-nav-shell .nav-group{display:flex;gap:10px;flex-wrap:wrap;align-items:center}body.hb-home .booking-nav-shell .nav-group--prev{justify-content:flex-start}body.hb-home .booking-nav-shell .nav-group--next{justify-content:flex-end}body.hb-home .booking-nav-shell .btn{min-height:50px;border-radius:18px;font-weight:900;box-shadow:none;padding-inline:18px}body.hb-home .booking-date-focus{position:relative;display:grid;gap:8px;justify-items:center;padding:18px 20px;border-radius:22px;border:1px solid rgba(46,108,105,.14);background:linear-gradient(180deg,rgba(46,108,105,.08),rgba(255,255,255,.72))}body.hb-home .booking-date-focus .date-context{font-size:.82rem;font-weight:900;color:var(--text-light)}body.hb-home .booking-date-focus .date-display{min-width:0;width:100%;min-height:56px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:18px;background:rgba(255,255,255,.86);font-size:1.15rem;font-weight:950}body.hb-home .booking-range-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:20px;border:1px solid var(--border-soft);background:rgba(255,255,255,.5)}body.hb-home .booking-range-bar .range-bar-label{flex:0 0 auto;color:var(--text-light);font-size:.88rem;font-weight:900}body.hb-home .booking-range-bar .range-bar-actions{flex:1 1 auto;display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;position:relative}body.hb-home .booking-range-bar .btn{min-height:46px;border-radius:16px;padding-inline:16px;font-weight:900}body.hb-home .booking-day-overview--elevated{margin-top:0;gap:14px}body.hb-home .booking-day-overview--elevated .day-overview-card{position:relative;min-height:104px;padding:18px;border-radius:20px;background:rgba(255,255,255,.72);box-shadow:0 10px 24px rgba(15,23,42,.04);align-items:stretch}body.hb-home .booking-day-overview--elevated .day-overview-card::before{content:'';position:absolute;top:14px;inset-inline-start:14px;width:42px;height:4px;border-radius:999px;background:rgba(46,108,105,.22)}body.hb-home .booking-day-overview--elevated .day-overview-card.is-highlight{border-color:rgba(46,108,105,.22);background:linear-gradient(180deg,rgba(46,108,105,.1),rgba(255,255,255,.78))}body.hb-home .booking-day-overview--elevated .overview-copy{display:grid;gap:8px;align-content:center}body.hb-home .booking-day-overview--elevated .overview-copy small{color:var(--text-light);font-size:.78rem;font-weight:900}body.hb-home .booking-day-overview--elevated .overview-copy span{color:var(--text);font-size:1.03rem;font-weight:900}body.hb-home .booking-day-overview--elevated .day-overview-card b{display:inline-flex;align-items:center;justify-content:center;min-width:64px;height:64px;padding:0 12px;border-radius:18px;background:rgba(46,108,105,.1);color:var(--primary);font-size:1.9rem;line-height:1}body.hb-home .booking-tabs{display:inline-flex;margin-inline:auto;margin-top:14px;margin-bottom:18px;padding:10px;gap:10px;border-radius:22px;background:rgba(255,255,255,.74);box-shadow:0 12px 26px rgba(15,23,42,.06)}body.hb-home .booking-tabs .tab{min-height:50px;border-radius:18px;padding-inline:22px;font-weight:950}[data-theme=dark] body.hb-home .booking-command-center,[data-theme=dark] body.hb-home .booking-day-overview--elevated .day-overview-card,[data-theme=dark] body.hb-home .booking-nav-shell,[data-theme=dark] body.hb-home .booking-range-bar,[data-theme=dark] body.hb-home .booking-tabs{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}[data-theme=dark] body.hb-home .booking-date-focus{background:linear-gradient(180deg,rgba(46,108,105,.14),rgba(255,255,255,.04));border-color:rgba(255,255,255,.12)}[data-theme=dark] body.hb-home .booking-date-focus .date-display,[data-theme=dark] body.hb-home .booking-day-overview--elevated .day-overview-card b{background:rgba(255,255,255,.06)}@media (max-width:1120px){body.hb-home .booking-nav-shell{grid-template-columns:1fr}body.hb-home .booking-nav-shell .nav-group,body.hb-home .booking-nav-shell .nav-group--next,body.hb-home .booking-nav-shell .nav-group--prev{justify-content:center}body.hb-home .booking-range-bar{flex-direction:column;align-items:stretch}body.hb-home .booking-range-bar .range-bar-actions{justify-content:center}}@media (max-width:760px){body.hb-home .booking-command-center{padding:14px;border-radius:20px}body.hb-home .booking-controls-head{flex-direction:column;align-items:stretch}body.hb-home .booking-controls-chip{width:100%}body.hb-home .booking-nav-shell{padding:12px}body.hb-home .booking-nav-shell .nav-group{display:grid;grid-template-columns:1fr 1fr;width:100%}body.hb-home .booking-nav-shell .nav-group .btn,body.hb-home .booking-range-bar .btn{width:100%}body.hb-home .booking-range-bar .range-bar-actions{display:grid;grid-template-columns:1fr 1fr}body.hb-home .booking-day-overview--elevated .day-overview-card{min-height:96px;padding:16px}body.hb-home .booking-day-overview--elevated .day-overview-card b{min-width:56px;height:56px;font-size:1.6rem}body.hb-home .booking-tabs{width:100%;display:flex}body.hb-home .booking-tabs .tab{flex:1 1 0;min-width:0;padding-inline:12px}}.bookings-section .booking-item{padding:0;overflow:hidden;border:1px solid rgba(15,23,42,.08);border-inline-start:5px solid var(--primary);background:radial-gradient(circle at top right,rgba(15,118,110,.08),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.96));box-shadow:0 16px 40px rgba(15,23,42,.08)}.bookings-section .booking-item.pending{border-inline-start-color:var(--warning)}.bookings-section .booking-item.approved{border-inline-start-color:var(--success)}.bookings-section .booking-item.expired,.bookings-section .booking-item.rejected{border-inline-start-color:var(--danger)}.bookings-section .booking-item:hover{transform:translateY(-2px);box-shadow:0 22px 44px rgba(15,23,42,.1)}.booking-ticket-card{padding:clamp(1rem,.8rem + 1vw,1.65rem);display:grid;gap:1rem}.booking-ticket-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.95rem;border-bottom:1px solid rgba(148,163,184,.16)}.booking-ticket-head{display:grid;gap:.35rem;min-width:0}.booking-ticket-kicker{font-size:.83rem;font-weight:900;color:var(--primary);letter-spacing:.02em}.booking-ticket-title{margin:0;color:var(--text);font-size:clamp(1.15rem, 1rem + .5vw, 1.55rem);font-weight:950}.booking-ticket-slot{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.5rem;color:var(--text-light);font-weight:700}.booking-ticket-slot .slot-divider{opacity:.45}.booking-ticket-badges{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.42rem;max-width:42%}.booking-ticket-badges-main{display:flex;align-items:center;justify-content:center;gap:.55rem;flex-wrap:wrap;width:auto;max-width:100%}.booking-ticket-badges-sub{display:flex;align-items:center;justify-content:center;width:100%;margin-top:.78rem;padding-inline-start:0}.booking-importance-pill,.booking-inline-badge,.booking-kind-pill,.booking-status-pill{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:999px;padding:.46rem .9rem;font-size:.88rem;font-weight:900;line-height:1.2;white-space:nowrap}.booking-status-pill{background:rgba(14,165,233,.1);color:var(--info);border:1px solid rgba(14,165,233,.25)}.booking-status-pill.status-approved{background:rgba(16,185,129,.1);color:var(--success);border-color:rgba(16,185,129,.28)}.booking-status-pill.status-pending{background:rgba(245,158,11,.12);color:#92400e;border-color:rgba(245,158,11,.24)}.booking-status-pill.status-expired,.booking-status-pill.status-rejected{background:rgba(239,68,68,.1);color:var(--danger);border-color:rgba(239,68,68,.24)}.booking-kind-pill{border:1px solid rgba(15,118,110,.18);background:rgba(15,118,110,.08);color:var(--primary);max-width:100%}.booking-kind-pill.is-external{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.18);color:#1d4ed8}.booking-kind-icon{font-size:1rem;line-height:1}.booking-importance-pill{background:rgba(148,163,184,.1);border:1px solid rgba(148,163,184,.2);color:var(--text-light)}.booking-importance-pill.is-urgent{background:rgba(239,68,68,.08);color:#b91c1c;border-color:rgba(239,68,68,.18)}.booking-importance-pill.is-normal{background:rgba(14,165,233,.08);color:#0369a1;border-color:rgba(14,165,233,.18)}.booking-importance-pill.is-internal{background:rgba(16,185,129,.08);color:#047857;border-color:rgba(16,185,129,.18)}.booking-checkin-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .72rem;border-radius:16px;border:1px solid rgba(16,185,129,.24);background:linear-gradient(135deg,rgba(16,185,129,.1),rgba(16,185,129,.05));color:var(--success);box-shadow:0 6px 16px rgba(16,185,129,.1);max-width:100%}.booking-checkin-icon{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:rgba(16,185,129,.16);border:1px solid rgba(16,185,129,.18);font-size:.82rem;font-weight:900;flex:0 0 auto}.booking-checkin-copy{display:grid;gap:.08rem;min-width:0}.booking-checkin-copy strong{font-size:.84rem;line-height:1.2;color:var(--success)}.booking-checkin-copy small{font-size:.74rem;line-height:1.15;color:var(--text-light);font-weight:700}.booking-ticket-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:1rem;align-items:start}.booking-ticket-main{display:grid;gap:1rem}.booking-kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.booking-aside-card,.booking-kv-card,.booking-service-card{background:rgba(255,255,255,.78);border:1px solid rgba(148,163,184,.18);border-radius:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.booking-kv-card{padding:.95rem 1rem;display:grid;gap:.38rem}.booking-kv-label{color:var(--text-light);font-size:.86rem;font-weight:700}.booking-kv-value{color:var(--text);font-size:1rem;font-weight:900;overflow-wrap:anywhere}.booking-ticket-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.booking-service-card{padding:1rem;display:grid;gap:.75rem}.booking-service-card.is-empty{background:linear-gradient(180deg,rgba(241,245,249,.7),rgba(248,250,252,.9))}.booking-service-card.is-canceled{background:linear-gradient(180deg,rgba(254,242,242,.88),rgba(255,255,255,.96));border-color:rgba(239,68,68,.15)}.booking-service-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.booking-service-title{font-weight:900;color:var(--text)}.booking-inline-badge{font-size:.82rem}.booking-inline-badge.soft{background:rgba(15,118,110,.08);border:1px solid rgba(15,118,110,.16);color:var(--primary)}.booking-inline-badge.muted{background:rgba(148,163,184,.1);border:1px solid rgba(148,163,184,.18);color:var(--text-light)}.booking-inline-badge.danger{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.18);color:var(--danger)}.booking-service-body,.booking-summary-list{color:var(--text-light);font-size:.95rem;line-height:1.85}.booking-service-stack{display:grid;gap:.55rem}.booking-service-meta,.booking-service-note,.booking-service-summary{color:var(--text);font-weight:700;overflow-wrap:anywhere}.booking-service-meta,.booking-service-note{font-size:.92rem;color:var(--text-light);font-weight:700}.booking-aside-item,.booking-summary-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.booking-aside-item span,.booking-summary-row span{color:var(--text-light);font-weight:700}.booking-aside-item strong,.booking-summary-row strong{color:var(--text);font-weight:900;text-align:left;overflow-wrap:anywhere}.booking-ticket-side{min-width:0}.booking-aside-card{padding:1rem;display:grid;gap:.85rem;background:linear-gradient(180deg,rgba(15,118,110,.08),rgba(255,255,255,.92));border-color:rgba(15,118,110,.16);position:sticky;top:1rem}.booking-aside-title{font-size:.82rem;font-weight:900;color:var(--primary)}.booking-aside-code{font-size:1.45rem;font-weight:950;color:var(--text)}.booking-aside-divider{height:1px;background:rgba(148,163,184,.18)}.attendance-banner{display:inline-flex;align-items:center;gap:.8rem;padding:.9rem 1rem;border-radius:16px;background:linear-gradient(135deg,rgba(16,185,129,.1),rgba(16,185,129,.04));border:1px solid rgba(16,185,129,.28);box-shadow:0 8px 22px rgba(16,185,129,.1);width:fit-content}.attendance-banner-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.22)}.attendance-banner-text{display:grid;gap:.15rem;color:var(--success);font-weight:800}.attendance-banner-text span{color:var(--text-light);font-size:.93rem;font-weight:700}.booking-actions--ticket{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start;padding-top:.35rem;border-top:1px dashed rgba(148,163,184,.22)}.booking-action-btn{min-width:118px;min-height:44px;padding:.75rem 1.1rem;font-weight:900;border-width:1px;box-shadow:0 10px 22px rgba(15,23,42,.1),0 2px 0 rgba(255,255,255,.55) inset;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.booking-action-btn:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(15,23,42,.16),0 2px 0 rgba(255,255,255,.65) inset;filter:saturate(1.03)}.booking-action-btn:active{transform:translateY(0);box-shadow:0 8px 16px rgba(15,23,42,.12),0 1px 0 rgba(255,255,255,.45) inset}.booking-actions--ticket .btn-info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#93c5fd;color:#1d4ed8;box-shadow:0 12px 24px rgba(59,130,246,.18),0 2px 0 rgba(255,255,255,.55) inset}.booking-actions--ticket .btn-success{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#86efac;color:#047857;box-shadow:0 12px 24px rgba(16,185,129,.18),0 2px 0 rgba(255,255,255,.55) inset}.booking-actions--ticket .btn-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fcd34d;color:#92400e;box-shadow:0 12px 24px rgba(245,158,11,.18),0 2px 0 rgba(255,255,255,.55) inset}.booking-actions--ticket .btn-danger{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#fca5a5;color:#b91c1c;box-shadow:0 12px 24px rgba(239,68,68,.18),0 2px 0 rgba(255,255,255,.55) inset}.booking-service-card .btn-eye{align-self:flex-start;display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.55rem .85rem;border:1px solid rgba(239,68,68,.22);background:#fff;color:#b91c1c;font-weight:800}.booking-service-card .eye-icon{width:18px;height:18px}[data-theme=dark] .bookings-section .booking-item{background:radial-gradient(circle at top right,rgba(15,118,110,.12),transparent 32%),linear-gradient(180deg,rgba(15,23,42,.96),rgba(11,18,32,.98));border-color:rgba(148,163,184,.12);box-shadow:0 18px 40px rgba(0,0,0,.28)}[data-theme=dark] .booking-aside-code,[data-theme=dark] .booking-aside-item strong,[data-theme=dark] .booking-kv-value,[data-theme=dark] .booking-service-title,[data-theme=dark] .booking-summary-row strong,[data-theme=dark] .booking-ticket-title{color:#f8fafc}[data-theme=dark] .booking-aside-card,[data-theme=dark] .booking-kv-card,[data-theme=dark] .booking-service-card{background:rgba(15,23,42,.75);border-color:rgba(148,163,184,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}[data-theme=dark] .booking-service-card.is-empty{background:linear-gradient(180deg,rgba(30,41,59,.78),rgba(15,23,42,.88))}[data-theme=dark] .booking-service-card.is-canceled{background:linear-gradient(180deg,rgba(69,10,10,.35),rgba(15,23,42,.88))}[data-theme=dark] .attendance-banner-text span,[data-theme=dark] .booking-aside-item span,[data-theme=dark] .booking-kv-label,[data-theme=dark] .booking-service-body,[data-theme=dark] .booking-service-meta,[data-theme=dark] .booking-service-note,[data-theme=dark] .booking-summary-row span,[data-theme=dark] .booking-ticket-slot{color:#cbd5e1}[data-theme=dark] .booking-service-card .btn-eye{background:rgba(255,255,255,.04);color:#fecaca;border-color:rgba(239,68,68,.22)}@media (max-width:1100px){.booking-ticket-layout{grid-template-columns:1fr}.booking-ticket-side{order:-1}.booking-aside-card{position:static}}@media (max-width:820px){.booking-ticket-badges{max-width:100%}.booking-ticket-top{flex-direction:column}.booking-kv-grid,.booking-ticket-panels{grid-template-columns:1fr}}@media (max-width:560px){.booking-ticket-card{padding:.95rem}.booking-actions--ticket .booking-action-btn{width:100%}.attendance-banner{width:100%}.booking-aside-item,.booking-service-head,.booking-summary-row{flex-direction:column;align-items:flex-start}}.bookings-section .booking-item{box-shadow:0 12px 28px rgba(15,23,42,.07)}.booking-ticket-card{padding:.95rem 1rem;gap:.75rem}.booking-ticket-top{gap:.75rem;padding-bottom:.7rem}.booking-ticket-kicker{font-size:.76rem}.booking-ticket-title{font-size:clamp(1rem, .95rem + .35vw, 1.3rem)}.booking-ticket-slot{gap:.38rem;font-size:.92rem}.booking-ticket-badges{gap:.36rem;max-width:58%}.booking-ticket-badges-main{gap:.42rem;justify-content:center;width:auto}.booking-ticket-badges-sub{justify-content:center;margin-top:.62rem}.booking-importance-pill,.booking-inline-badge,.booking-kind-pill,.booking-status-pill{padding:.34rem .72rem;font-size:.8rem}.booking-checkin-pill{padding:.34rem .62rem;gap:.42rem}.booking-checkin-icon{width:22px;height:22px;font-size:.78rem}.booking-checkin-copy strong{font-size:.78rem}.booking-checkin-copy small{font-size:.7rem}.booking-ticket-layout{grid-template-columns:minmax(0,1fr) 190px;gap:.75rem}.booking-ticket-main{gap:.75rem}.booking-kv-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.booking-kv-card{padding:.72rem .8rem;gap:.22rem;border-radius:14px}.booking-kv-label{font-size:.78rem}.booking-kv-value{font-size:.95rem}.booking-ticket-panels{gap:.7rem}.booking-aside-card,.booking-service-card{padding:.8rem;border-radius:14px}.booking-service-card{gap:.55rem}.booking-service-title{font-size:.95rem}.booking-service-body,.booking-summary-list{font-size:.9rem;line-height:1.65}.booking-service-meta,.booking-service-note{font-size:.86rem}.booking-aside-card{gap:.65rem}.booking-aside-title{font-size:.76rem}.booking-aside-code{font-size:1.2rem}.attendance-banner{padding:.7rem .85rem;gap:.6rem;border-radius:14px}.attendance-banner-icon{width:28px;height:28px}.attendance-banner-text{gap:.08rem;font-size:.94rem}.attendance-banner-text span{font-size:.84rem}.booking-actions--ticket{gap:.55rem;padding-top:.2rem}.booking-action-btn{min-width:96px;min-height:38px;padding:.58rem .95rem;font-size:.92rem;box-shadow:0 10px 18px rgba(15,23,42,.1),0 1px 0 rgba(255,255,255,.5) inset}.booking-service-card .btn-eye{padding:.45rem .75rem;font-size:.84rem}.booking-service-card .eye-icon{width:16px;height:16px}@media (max-width:1360px){.booking-kv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1100px){.booking-ticket-layout{grid-template-columns:1fr}.booking-ticket-side{order:-1}}@media (max-width:820px){.booking-ticket-card{padding:.9rem}.booking-ticket-badges{max-width:100%}.booking-kv-grid,.booking-ticket-panels{grid-template-columns:1fr}}.bookings-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.bookings-head h3{margin:0}.bookings-head-note{margin-top:.28rem;color:var(--text-light);font-size:.9rem;font-weight:700}.bookings-search-wrap{display:grid;gap:.4rem;min-width:min(100%,390px)}.bookings-search{display:flex;align-items:center;gap:.55rem;min-height:48px;padding:.55rem .8rem;border-radius:16px;border:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,250,252,.98));box-shadow:0 10px 26px rgba(15,23,42,.05)}.bookings-search-icon{font-size:1rem;opacity:.7}.bookings-search input{flex:1;min-width:0;border:0;outline:0;background:0 0;color:var(--text);font:inherit;font-weight:800}.bookings-search input::placeholder{color:var(--text-light)}.bookings-search-clear{width:30px;height:30px;border-radius:999px;border:1px solid rgba(148,163,184,.2);background:rgba(148,163,184,.08);color:var(--text-light);cursor:pointer;font-weight:900;visibility:hidden}.bookings-search-meta{color:var(--text-light);font-size:.84rem;font-weight:700;padding-inline:.25rem}[data-theme=dark] .bookings-search{background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(15,23,42,.96));border-color:rgba(148,163,184,.14);box-shadow:0 12px 28px rgba(0,0,0,.22)}[data-theme=dark] .bookings-search-clear{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#cbd5e1}.bookings-section .booking-item{box-shadow:0 10px 24px rgba(15,23,42,.06)}.booking-ticket-card{padding:.82rem .88rem;gap:.62rem}.booking-ticket-top{gap:.62rem;padding-bottom:.58rem}.booking-ticket-kicker{font-size:.74rem}.booking-ticket-title{font-size:clamp(.98rem, .92rem + .32vw, 1.2rem)}.booking-ticket-slot{gap:.32rem;font-size:.88rem}.booking-ticket-badges{gap:.34rem;max-width:58%}.booking-ticket-badges-main{gap:.38rem;justify-content:center;width:auto}.booking-ticket-badges-sub{justify-content:center;margin-top:.5rem}.booking-importance-pill,.booking-inline-badge,.booking-kind-pill,.booking-status-pill{padding:.3rem .64rem;font-size:.76rem}.booking-checkin-pill{padding:.3rem .58rem;gap:.38rem}.booking-checkin-icon{width:20px;height:20px;font-size:.74rem}.booking-checkin-copy strong{font-size:.74rem}.booking-checkin-copy small{font-size:.68rem}.booking-ticket-layout{grid-template-columns:minmax(0,1fr) 220px;gap:.62rem}.booking-ticket-main{gap:.62rem}.booking-kv-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.58rem}.booking-aside-card,.booking-kv-card,.booking-service-card{border-radius:14px}.booking-kv-card{padding:.68rem .76rem;gap:.18rem;min-height:72px}.booking-kv-label{font-size:.76rem}.booking-kv-value{font-size:.92rem}.booking-ticket-panels{grid-template-columns:1fr .95fr;gap:.62rem}.booking-service-card{padding:.78rem;gap:.5rem}.booking-service-title{font-size:.92rem}.booking-service-body,.booking-summary-list{font-size:.88rem;line-height:1.58}.booking-service-meta,.booking-service-note{font-size:.84rem}.booking-aside-item,.booking-summary-row{gap:.55rem}.booking-aside-item span,.booking-summary-row span{font-size:.82rem}.booking-aside-item strong,.booking-summary-row strong{font-size:.9rem}.booking-aside-card{padding:.8rem;gap:.55rem}.booking-aside-title{font-size:.74rem}.booking-aside-code{font-size:1.1rem}.booking-aside-divider{margin:.08rem 0}.attendance-banner{padding:.62rem .78rem;gap:.55rem;border-radius:13px}.attendance-banner-icon{width:26px;height:26px}.attendance-banner-text{font-size:.9rem}.attendance-banner-text span{font-size:.8rem}.booking-actions--ticket{gap:.5rem;padding-top:.18rem;justify-content:flex-start}.booking-action-btn{min-width:88px;min-height:36px;padding:.5rem .82rem;font-size:.88rem;box-shadow:0 8px 14px rgba(15,23,42,.1),0 1px 0 rgba(255,255,255,.45) inset}@media (max-width:1360px){.booking-kv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1100px){.booking-ticket-layout{grid-template-columns:1fr}.booking-ticket-side{order:-1}}@media (max-width:900px){.bookings-search-wrap{min-width:100%}.booking-checkin-pill{width:auto;justify-content:flex-start;max-width:100%}}@media (max-width:820px){.bookings-head{align-items:stretch}.booking-ticket-card{padding:.84rem}.booking-ticket-badges{max-width:100%}.booking-kv-grid,.booking-ticket-panels{grid-template-columns:1fr}}@media (max-width:560px){.bookings-search{min-height:44px;padding:.5rem .7rem}}.loading-overlay{background:rgba(241,245,249,.72);backdrop-filter:blur(10px)}[data-theme=dark] .loading-overlay{background:rgba(2,6,23,.72)}.loading-shell{width:min(420px,92vw);background:rgba(255,255,255,.88);border:1px solid rgba(148,163,184,.22);border-radius:28px;box-shadow:0 30px 80px rgba(15,23,42,.16);padding:1.5rem 1.4rem 1.2rem;text-align:center}[data-theme=dark] .loading-shell{background:rgba(15,23,42,.88);border-color:rgba(148,163,184,.16);box-shadow:0 30px 90px rgba(0,0,0,.4)}.loading-shell h3{margin:0 0 .45rem;color:var(--text);font-size:1.2rem;font-weight:900}.loading-shell p{margin:0;color:var(--text-light);font-weight:700;line-height:1.8}.loading-spinner{position:relative;width:78px;height:78px;margin:0 auto 1rem;border:0;animation:none}.loading-spinner span{position:absolute;inset:0;border-radius:50%;border:3px solid transparent;border-top-color:var(--primary);border-right-color:rgba(39,100,99,.35);animation:loadingOrbit 1.2s linear infinite}.loading-spinner span:nth-child(2){inset:9px;border-top-color:var(--primary-light);border-right-color:rgba(39,100,99,.25);animation-duration:1s;animation-direction:reverse}.loading-spinner span:nth-child(3){inset:20px;border-top-color:rgba(39,100,99,.55);border-right-color:rgba(39,100,99,.14);animation-duration:.8s}.loading-progress{margin-top:1rem;height:8px;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden}.loading-progress span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,rgba(39,100,99,.1),rgba(39,100,99,.8),rgba(39,100,99,.1));animation:loadingBar 1.6s ease-in-out infinite}@keyframes loadingOrbit{to{transform:rotate(360deg)}}@keyframes loadingBar{0%{transform:translateX(-120%)}100%{transform:translateX(310%)}}.approval-board{padding:1.25rem}.approval-board__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.1rem;padding-bottom:1rem;border-bottom:1px solid rgba(148,163,184,.15)}.approval-board__eyebrow{display:inline-flex;align-items:center;padding:.38rem .75rem;border-radius:999px;background:rgba(39,100,99,.1);color:var(--primary);font-weight:900;font-size:.85rem;margin-bottom:.55rem}.approval-board__head h3{margin:0;font-size:clamp(1.25rem, 1.15rem + .45vw, 1.7rem);color:var(--text)}.approval-board__desc{margin:.35rem 0 0;color:var(--text-light);font-weight:700;line-height:1.8}.approval-board__badge{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 1rem;border-radius:18px;background:linear-gradient(135deg,rgba(39,100,99,.14),rgba(39,100,99,.06));border:1px solid rgba(39,100,99,.15);color:var(--primary);font-weight:900}#approvalList{display:grid;gap:1rem}.approval-skeleton-list,.approval-stack{display:grid;gap:1rem}#approvalList .approval-card.approval-card--v2{display:grid;grid-template-columns:minmax(0,1fr) 152px;gap:1rem;padding:1rem;border-radius:24px;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.98));box-shadow:0 14px 34px rgba(15,23,42,.06);position:relative;overflow:hidden}#approvalList .approval-card.approval-card--v2::before{content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--primary),rgba(39,100,99,.3))}[data-theme=dark] #approvalList .approval-card.approval-card--v2{background:linear-gradient(180deg,rgba(17,24,39,.96),rgba(15,23,42,.98));border-color:rgba(148,163,184,.12);box-shadow:0 20px 42px rgba(0,0,0,.28)}.approval-card__main{min-width:0;display:grid;gap:.95rem}.approval-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:.9rem;flex-wrap:wrap}.approval-card__title-wrap{min-width:0;display:grid;gap:.45rem}.approval-card__eyebrow{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.approval-state-pill,.approval-ticket-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.34rem .72rem;font-size:.78rem;font-weight:900;border:1px solid rgba(148,163,184,.16)}.approval-ticket-pill{background:rgba(39,100,99,.08);color:var(--primary)}.approval-state-pill{background:rgba(245,158,11,.1);color:#b45309}.approval-card__title{font-size:clamp(1.15rem, 1.08rem + .4vw, 1.55rem);font-weight:1000;color:var(--text);line-height:1.3}.approval-card__slot{display:inline-flex;align-items:center;gap:.55rem;flex-wrap:wrap;color:var(--text-light);font-weight:800}.approval-card__slot .dot{opacity:.45}.approval-card__kind{min-width:220px;max-width:290px;padding:.8rem .95rem;border-radius:18px;border:1px solid rgba(148,163,184,.16);background:rgba(248,250,252,.72);display:grid;gap:.3rem}.approval-card__kind strong{color:var(--text);font-size:.96rem}.approval-card__kind span{color:var(--text-light);font-weight:700;line-height:1.7}.approval-card__kind.is-external{background:linear-gradient(180deg,rgba(14,165,233,.1),rgba(14,165,233,.04))}.approval-card__kind.is-internal{background:linear-gradient(180deg,rgba(16,185,129,.1),rgba(16,185,129,.04))}.approval-card__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.approval-info-box{min-height:84px;padding:.85rem .95rem;border-radius:18px;border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.72);display:grid;align-content:start;gap:.38rem}[data-theme=dark] .approval-info-box{background:rgba(255,255,255,.03)}.approval-info-box--wide{grid-column:span 2}.approval-info-box__label{color:var(--text-light);font-size:.78rem;font-weight:800}.approval-info-box__value{color:var(--text);font-size:.97rem;font-weight:900;line-height:1.7;word-break:break-word}.approval-actions.approval-actions--v2{display:flex;flex-direction:column;justify-content:center;gap:.7rem;align-self:stretch}.approval-actions.approval-actions--v2 .btn{min-height:46px;border-radius:14px;font-size:.96rem;font-weight:900;width:100%}.approval-empty-state,.approval-empty-state.is-error{display:flex;align-items:center;gap:1rem;padding:1.15rem 1.25rem;border-radius:24px;border:1px dashed rgba(148,163,184,.28);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,250,252,.98))}.approval-empty-state__icon{width:64px;height:64px;border-radius:20px;display:inline-flex;align-items:center;justify-content:center;background:rgba(39,100,99,.12);color:var(--primary);font-size:1.55rem;font-weight:1000;flex-shrink:0}.approval-empty-state__content h4{margin:0 0 .25rem;color:var(--text);font-size:1.08rem}.approval-empty-state__content p{margin:0;color:var(--text-light);line-height:1.8;font-weight:700}.approval-empty-state.is-error .approval-empty-state__icon{background:rgba(239,68,68,.12);color:#dc2626}.approval-skeleton-card{padding:1rem;border-radius:24px;border:1px solid rgba(148,163,184,.14);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.98));display:grid;gap:.9rem;box-shadow:0 12px 28px rgba(15,23,42,.04)}[data-theme=dark] .approval-skeleton-card{background:linear-gradient(180deg,rgba(17,24,39,.96),rgba(15,23,42,.98))}.approval-skeleton-actions,.approval-skeleton-top{display:flex;gap:.65rem;flex-wrap:wrap}.approval-skeleton-actions span,.approval-skeleton-grid span,.approval-skeleton-pill,.approval-skeleton-subtitle,.approval-skeleton-title{background:linear-gradient(90deg,rgba(148,163,184,.12),rgba(148,163,184,.28),rgba(148,163,184,.12));background-size:220% 100%;animation:shimmer 1.35s infinite linear;border-radius:999px}.approval-skeleton-pill{width:108px;height:30px}.approval-skeleton-pill.short{width:86px}.approval-skeleton-title{width:42%;height:22px;border-radius:10px}.approval-skeleton-subtitle{width:58%;height:16px;border-radius:10px}.approval-skeleton-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.approval-skeleton-grid span{display:block;height:82px;border-radius:18px}.approval-skeleton-actions span{display:block;width:140px;height:46px}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (max-width:1100px){#approvalList .approval-card.approval-card--v2{grid-template-columns:1fr}.approval-actions.approval-actions--v2{flex-direction:row;justify-content:flex-start}.approval-actions.approval-actions--v2 .btn{width:auto;min-width:140px}.approval-card__grid,.approval-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.approval-info-box--wide{grid-column:span 2}}@media (max-width:700px){.approval-board{padding:.9rem}.approval-board__head{align-items:stretch}.approval-empty-state,.approval-empty-state.is-error{flex-direction:column;text-align:center}.approval-card__kind{min-width:100%;max-width:none}.approval-card__grid,.approval-skeleton-grid{grid-template-columns:1fr}.approval-info-box--wide{grid-column:span 1}.approval-actions.approval-actions--v2{flex-direction:column;align-items:stretch}.approval-actions.approval-actions--v2 .btn{width:100%;min-width:0}.loading-shell{padding:1.2rem 1rem 1rem;border-radius:24px}}.home-live-pill.home-live-card{display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:8px 10px 8px 12px;border-radius:18px;border:1px solid rgba(39,100,99,.16);background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,255,255,.64));box-shadow:0 12px 26px rgba(15,23,42,.07);backdrop-filter:blur(10px) saturate(120%);color:var(--text)}.home-live-card .home-live-ico{position:relative;width:34px;height:34px;border-radius:13px;display:grid;place-items:center;background:rgba(39,100,99,.1);border:1px solid rgba(39,100,99,.12);flex:0 0 auto}.home-live-card .home-live-ico::before{content:'';width:10px;height:10px;border-radius:999px;background:var(--success,#10b981);box-shadow:0 0 0 5px rgba(16,185,129,.12)}.home-live-card .home-live-ico::after{content:'';position:absolute;inset:7px;border-radius:inherit;border:1px solid rgba(39,100,99,.14)}.home-live-copy{display:grid;gap:1px;line-height:1.25}.home-live-label{color:var(--text);font-size:.92rem;font-weight:950;white-space:nowrap}.home-live-status{color:var(--text-light);font-size:.72rem;font-weight:800;white-space:nowrap}.home-live-count{min-width:38px;height:38px;padding:0 8px;display:grid;place-items:center;border-radius:14px;background:rgba(39,100,99,.1);color:var(--primary);font-size:1.12rem;font-weight:1000;line-height:1;font-variant-numeric:tabular-nums;border:1px solid rgba(39,100,99,.13);transition:transform .18s ease,background .18s ease}.home-live-count.is-bumping{animation:liveCountBump .32s ease}.home-live-card.is-updating .home-live-ico::before{animation:livePulse 1s ease-in-out infinite}.home-live-card.is-online .home-live-ico::before{background:var(--success,#10b981)}@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(16,185,129,.26)}70%{box-shadow:0 0 0 9px rgba(16,185,129,0)}100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}}@keyframes liveCountBump{0%{transform:scale(1)}45%{transform:scale(1.08)}100%{transform:scale(1)}}[data-theme=dark] .home-live-pill.home-live-card{background:linear-gradient(180deg,rgba(15,23,42,.72),rgba(15,23,42,.52));border-color:rgba(148,163,184,.14);box-shadow:0 14px 30px rgba(0,0,0,.24)}[data-theme=dark] .home-live-card .home-live-ico,[data-theme=dark] .home-live-count{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1)}@media (max-width:640px){.home-live-pill.home-live-card{width:100%;justify-content:space-between}}
/* === UI refresh v1.0.3: shared polish for cards, controls and admin-heavy tables === */
:root{
  --hb-radius-sm:10px;
  --hb-radius-md:14px;
  --hb-radius-lg:18px;
  --hb-focus-ring:0 0 0 4px color-mix(in srgb,var(--primary,#276463) 18%, transparent);
}

button,
.btn,
input,
select,
textarea{
  letter-spacing:0;
}

.btn,
button.btn{
  border-radius:var(--hb-radius-md);
  min-height:42px;
  font-weight:900;
  transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease, border-color .16s ease;
}

.btn:hover,
button.btn:hover{
  transform:translateY(-1px);
}

.btn:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
a:focus-visible{
  outline:none;
  box-shadow:var(--hb-focus-ring);
}

.card{
  border-radius:var(--hb-radius-lg);
}

.table.card,
.user-management,
.admin-users-card,
.admin-noshow-card{
  overflow:hidden;
}

.table .row{
  transition:background-color .16s ease, transform .16s ease;
}

.table .row:not(.head):hover{
  background:color-mix(in srgb,var(--primary,#276463) 5%, transparent);
}

.admin-search input,
input[type="search"],
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="number"],
select,
textarea{
  border-radius:var(--hb-radius-md);
}

.admin-search input{
  min-height:44px;
  padding-inline:14px;
  font-weight:800;
}

.pill,
.role-badge,
.status-badge{
  letter-spacing:0;
}

.modal-content,
.modal-card,
.dialog,
.login-card{
  border-radius:var(--hb-radius-lg);
}

[data-theme="dark"] .table .row:not(.head):hover{
  background:rgba(255,255,255,.045);
}

@media (max-width: 720px){
  .header-content,
  .header-actions{
    gap:10px;
  }

  .btn,
  button.btn{
    min-height:40px;
    padding-inline:12px;
  }

  .admin-search{
    width:100%;
  }

  .admin-search input{
    width:100%;
  }
}

/* ===== Global Notifications Center + Occasion Effects ===== */
.hb-global-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:16px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.14);color:#fff;cursor:pointer;backdrop-filter:blur(10px);box-shadow:0 10px 22px rgba(15,23,42,.14);transition:.18s ease;z-index:2147483600}.hb-global-bell:hover{transform:translateY(-1px);background:rgba(255,255,255,.22)}.hb-global-bell__icon{font-size:20px;line-height:1}.hb-global-bell__badge{position:absolute;top:-7px;left:-7px;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;border:3px solid #fff;display:grid;place-items:center;font-size:11px;font-weight:900}.hb-global-bell__badge.is-hidden{display:none}.hb-global-bell.hb-bounce{animation:hbBellBounce .65s ease}@keyframes hbBellBounce{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(8deg)}55%{transform:translateY(0) rotate(-8deg)}75%{transform:translateY(-2px) rotate(4deg)}}
.hb-notif-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.25);backdrop-filter:blur(2px);z-index:2147483590;display:none}.hb-notif-backdrop.show{display:block}.hb-notif-panel{position:fixed;top:0;left:0;width:min(450px,94vw);height:100vh;background:var(--card,#fff);color:var(--text,#101828);z-index:2147483599;box-shadow:0 30px 90px rgba(15,23,42,.25);transform:translateX(-105%);transition:.22s ease;display:flex;flex-direction:column;border-right:1px solid var(--border,#e5e7eb)}.hb-notif-panel.show{transform:translateX(0)}.hb-notif-head{padding:20px;border-bottom:1px solid var(--border,#e5e7eb);display:flex;align-items:center;justify-content:space-between;gap:12px}.hb-notif-head h2{margin:0;font-size:20px}.hb-notif-close{width:38px;height:38px;border-radius:12px;border:1px solid var(--border,#e5e7eb);background:var(--card,#fff);color:var(--text-light,#667085);font-size:22px;cursor:pointer}.hb-notif-body{padding:16px;overflow:auto}.hb-notif-note{background:#eff6ff;border:1px solid #dbeafe;color:#1d4ed8;border-radius:16px;padding:12px 14px;font-size:13px;font-weight:900;line-height:1.7;margin-bottom:14px}.hb-notif-section{margin:18px 2px 10px;color:var(--primary,#2563eb);font-weight:900}.hb-notif-old-note{background:rgba(148,163,184,.10);border:1px dashed rgba(148,163,184,.55);border-radius:14px;padding:11px 12px;color:var(--text-light,#667085);font-size:12px;line-height:1.7;margin-bottom:10px}.hb-notif-item{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:start;border:1px solid var(--border,#e5e7eb);border-radius:18px;padding:13px;margin-bottom:9px;background:var(--card,#fff);cursor:pointer}.hb-notif-item:hover{background:rgba(2,6,23,.03)}.hb-notif-item.is-unread{background:linear-gradient(90deg,#eff6ff,var(--card,#fff));border-color:#bfdbfe}.hb-notif-item.is-pinned{background:linear-gradient(90deg,#fff1f3,var(--card,#fff));border-color:#fecdd3}.hb-notif-item.is-old{opacity:.88}.hb-notif-icon{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-size:20px}.hb-notif-title{font-weight:900;font-size:14px;margin-bottom:5px}.hb-notif-text{color:var(--text-light,#667085);font-size:12.5px;line-height:1.65}.hb-notif-time{font-size:11px;color:#98a2b3;white-space:nowrap}.hb-notif-footer{border-top:1px solid var(--border,#e5e7eb);padding:14px;display:flex;gap:10px}.hb-notif-footer button,.hb-preview-actions button,.hb-global-modal__actions button{appearance:none;border:1px solid transparent;border-radius:16px;padding:12px 18px;min-height:48px;font-family:inherit;font-weight:900;font-size:14px;letter-spacing:0;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease;box-shadow:0 8px 18px rgba(15,23,42,.08)}.hb-notif-footer button:hover,.hb-preview-actions button:hover,.hb-global-modal__actions button:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(15,23,42,.14)}.hb-notif-footer button:active,.hb-preview-actions button:active,.hb-global-modal__actions button:active{transform:translateY(0) scale(.98);box-shadow:0 8px 16px rgba(15,23,42,.12)}.hb-notif-footer button:focus-visible,.hb-preview-actions button:focus-visible,.hb-global-modal__actions button:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(39,100,99,.16),0 14px 28px rgba(15,23,42,.14)}.hb-btn-primary{background:linear-gradient(135deg,var(--primary,#2563eb),color-mix(in srgb,var(--primary,#2563eb) 78%, #0f172a));border-color:color-mix(in srgb,var(--primary,#2563eb) 72%, #0f172a);color:#fff}.hb-btn-primary:hover{filter:saturate(1.05)}.hb-btn-light{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid var(--border,#e5e7eb)!important;color:var(--text,#101828)}.hb-btn-light:hover{border-color:color-mix(in srgb,var(--primary,#2563eb) 35%, var(--border,#e5e7eb))!important;color:var(--primary,#2563eb)}
.hb-global-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(4px);z-index:2147483640;display:none;align-items:center;justify-content:center;padding:18px}.hb-global-modal-backdrop.show{display:flex}.hb-global-modal{width:min(540px,94vw);background:var(--card,#fff);color:var(--text,#101828);border-radius:30px;padding:30px;box-shadow:0 30px 90px rgba(15,23,42,.28);position:relative;text-align:center;overflow:hidden;z-index:2}.hb-global-modal__close{position:absolute;top:18px;left:18px;width:38px;height:38px;border-radius:13px;border:1px solid var(--border,#e5e7eb);background:var(--card,#fff);color:#98a2b3;font-size:22px;cursor:pointer;z-index:4;transition:transform .18s ease,box-shadow .18s ease,color .18s ease,border-color .18s ease}.hb-global-modal__close:hover{transform:translateY(-1px);color:#475467;border-color:color-mix(in srgb,var(--primary,#2563eb) 28%, var(--border,#e5e7eb));box-shadow:0 8px 18px rgba(15,23,42,.10)}.hb-global-modal__icon{width:78px;height:78px;border-radius:50%;margin:0 auto 16px;display:grid;place-items:center;background:#fff1f3;color:#e11d48;font-size:36px;position:relative;z-index:2}.hb-global-modal h3{font-size:26px;margin:0 0 10px;position:relative;z-index:2}.hb-global-modal__pill{display:inline-flex;border-radius:999px;padding:7px 12px;background:#fff1f3;color:#e11d48;font-size:12px;font-weight:900;margin-bottom:15px;position:relative;z-index:2}.hb-global-modal p{margin:0 auto 18px;max-width:430px;line-height:1.9;color:var(--text-light,#667085);position:relative;z-index:2}.hb-global-modal__actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative;z-index:2;align-items:stretch}.hb-global-modal__actions button{width:100%}.hb-effect-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}.hb-effect-screen{position:fixed;inset:0;z-index:3;overflow:hidden;pointer-events:none}.hb-effect-piece{position:absolute;top:-40px;display:block;font-size:22px;opacity:.88;animation:hbEffectFall 2.4s linear forwards;will-change:transform,opacity;text-shadow:0 6px 14px rgba(15,23,42,.18)}
.hb-effect-piece.hb-effect-balloon{top:auto;bottom:-120px;width:34px;height:42px;border-radius:52% 52% 48% 48%;background:var(--balloon-color,#60a5fa);box-shadow:inset -8px -10px 0 rgba(255,255,255,.22),0 10px 24px rgba(15,23,42,.16);animation:hbBalloonRise 5.4s ease-in forwards;transform-origin:center bottom;text-shadow:none;opacity:.96}
.hb-effect-piece.hb-effect-balloon:before{content:"";position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);width:2px;height:20px;background:rgba(255,255,255,.75)}
.hb-effect-piece.hb-effect-balloon:after{content:"";position:absolute;left:50%;bottom:-7px;transform:translateX(-50%);width:10px;height:10px;background:var(--balloon-color,#60a5fa);clip-path:polygon(50% 100%,0 0,100% 0)}
.hb-effect-piece.hb-effect-bubble{top:auto;bottom:-80px;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.95),rgba(255,255,255,.45) 35%,rgba(125,211,252,.22) 62%,rgba(125,211,252,.12) 100%);border:1px solid rgba(255,255,255,.55);box-shadow:inset -2px -4px 8px rgba(125,211,252,.22),0 8px 20px rgba(15,23,42,.10);animation:hbBubbleRise 4.8s ease-in forwards;text-shadow:none}
.hb-effect-piece.hb-effect-bubble:after{content:"";position:absolute;top:3px;left:4px;width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.72)}
@keyframes hbEffectFall{to{transform:translate3d(var(--dx,0), var(--fall,620px),0) rotate(540deg);opacity:0}}
@keyframes hbBalloonRise{to{transform:translate3d(var(--dx,0),calc(-1 * var(--rise,840px)),0) rotate(10deg);opacity:0}}
@keyframes hbBubbleRise{to{transform:translate3d(var(--dx,0),calc(-1 * var(--rise,760px)),0) scale(1.12);opacity:0}}
.hb-modal-sparkle:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.8),transparent 12%),radial-gradient(circle at 70% 40%,rgba(96,165,250,.25),transparent 16%),radial-gradient(circle at 40% 70%,rgba(244,114,182,.24),transparent 18%);animation:hbGlow 1.8s ease-in-out infinite;z-index:0}@keyframes hbGlow{50%{transform:scale(1.05);opacity:.75}}
.hb-admin-broadcast{display:grid;grid-template-columns:minmax(320px,1fr) minmax(300px,.8fr);gap:18px}.hb-admin-form{display:grid;gap:12px;padding-bottom:0}.hb-admin-form label{display:grid;gap:7px;font-weight:900;color:var(--text)}.hb-admin-form input,.hb-admin-form textarea,.hb-admin-form select{width:100%;border:1px solid var(--border-soft,var(--border));border-radius:15px;background:var(--card);color:var(--text);padding:12px 14px;font-family:inherit;font-weight:700}.hb-admin-form textarea{min-height:120px;resize:vertical;line-height:1.7}.hb-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hb-admin-broadcast .modal-actions{position:relative;bottom:auto;z-index:1;display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-start;align-items:center;margin-top:12px;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;box-shadow:none}.hb-admin-broadcast .modal-actions .btn{min-height:48px;box-shadow:none}.hb-preview-phone{border:1px solid var(--border-soft,var(--border));border-radius:26px;padding:18px;min-height:420px;display:grid;place-items:center;position:relative;overflow:hidden}.hb-preview-card{width:min(100%,360px);background:#fff;border:1px solid #e5e7eb;border-radius:26px;box-shadow:0 18px 50px rgba(15,23,42,.15);padding:22px;text-align:center;position:relative;overflow:hidden}.hb-preview-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;background:#fff1f3;color:#e11d48;font-size:30px}.hb-preview-title{font-size:20px;font-weight:900;margin-bottom:8px;color:#101828}.hb-preview-message{color:#667085;line-height:1.8;font-size:13px;margin-bottom:14px}.hb-preview-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.hb-preview-actions button{min-width:128px}.hb-send-success{padding:12px 14px;border-radius:16px;background:#ecfdf3;color:#047857;border:1px solid #bbf7d0;font-weight:900;display:none}.hb-send-success.show{display:block}@media(max-width:900px){.hb-admin-broadcast{grid-template-columns:1fr}.hb-admin-grid{grid-template-columns:1fr}.hb-global-modal__actions{grid-template-columns:1fr}.hb-admin-broadcast .modal-actions{justify-content:center}}
@media (prefers-reduced-motion:reduce){.hb-effect-piece,.hb-modal-sparkle:before,.hb-global-bell.hb-bounce{animation:none!important}.hb-notif-panel{transition:none}}

/* Sender identity on global notifications */
.hb-global-modal__meta{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:0 auto 16px;color:#475467;font-size:12px;font-weight:900}
.hb-global-modal__meta span{display:inline-flex;align-items:center;gap:6px;border:1px solid #e5e7eb;background:#f8fafc;border-radius:999px;padding:7px 11px}
.hb-notif-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;color:#64748b;font-size:11px;font-weight:900}
.hb-notif-meta span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:4px 8px}
/* notification display mode fixes */
.hb-global-modal__pill{display:none!important}
.hb-global-banner{position:fixed;top:18px;left:50%;transform:translateX(-50%);width:min(560px,94vw);background:var(--card,#fff);color:var(--text,#101828);border:1px solid var(--border,#e5e7eb);border-radius:22px;box-shadow:0 24px 70px rgba(15,23,42,.24);z-index:2147483641;display:grid;grid-template-columns:36px 52px 1fr auto;gap:12px;align-items:center;padding:14px;direction:rtl;animation:hbBannerIn .22s ease-out}
@keyframes hbBannerIn{from{opacity:0;transform:translateX(-50%) translateY(-14px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
.hb-global-banner__close{width:34px;height:34px;border-radius:12px;border:1px solid var(--border,#e5e7eb);background:#fff;color:#98a2b3;font-size:20px;cursor:pointer}
.hb-global-banner__icon{width:48px;height:48px;border-radius:16px;background:#eff6ff;color:#2563eb;display:grid;place-items:center;font-size:22px}
.hb-global-banner__body strong{display:block;font-size:15px;margin-bottom:4px}.hb-global-banner__body p{margin:0;color:#475467;line-height:1.6;font-size:13px}.hb-global-banner__sender{margin-top:5px;color:#667085;font-size:12px;font-weight:800}.hb-global-banner__details{border:1px solid var(--border,#e5e7eb);background:#fff;border-radius:13px;padding:10px 12px;font-family:inherit;font-weight:900;color:#2563eb;cursor:pointer;white-space:nowrap}
.hb-preview-card.mode-banner{width:min(100%,520px);background:transparent;border:0;box-shadow:none;padding:0;overflow:visible}.hb-preview-banner{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 14px 34px rgba(15,23,42,.16);padding:13px;display:grid;grid-template-columns:34px 46px 1fr;gap:10px;align-items:center;text-align:right}.hb-preview-banner button{width:32px;height:32px;border-radius:11px;border:1px solid #e5e7eb;background:#fff;color:#98a2b3;font-size:18px}.hb-preview-banner-icon{width:44px;height:44px;border-radius:15px;background:#eff6ff;color:#2563eb;display:grid;place-items:center;font-size:21px}.hb-preview-banner b{display:block;font-size:14px;margin-bottom:4px}.hb-preview-banner p{margin:0;color:#475467;font-size:12px;line-height:1.6}.hb-preview-banner small{display:block;margin-top:5px;color:#667085;font-weight:800}
.hb-preview-card.mode-center{width:min(100%,390px);background:#fff;text-align:right}.hb-preview-center .hb-notif-section{margin-top:0}.hb-preview-center .hb-notif-item{cursor:default}
@media(max-width:620px){.hb-global-banner{grid-template-columns:34px 46px 1fr}.hb-global-banner__details{grid-column:1/-1}.hb-global-banner__body p{font-size:12px}}

/* Calendar/sidebar fix: keep the 1.1.5 side menu above calendar content and bind mobile open state. */
.nav-toggle{z-index:250!important}
.side-nav{z-index:1000!important}
@media (max-width:900px){body.sidebar-open .side-nav{pointer-events:auto!important}body.sidebar-open .side-nav__card{transform:translateX(0)!important}body.sidebar-open .side-nav__backdrop{opacity:1!important;visibility:visible!important}}

/* ===== Fix: calendar hamburger/sidebar overlay (v1.1.6) =====
   بعض صفحات التقويم تحتوي عناصر ثابتة وطبقات عالية؛ لذلك نرفع القائمة الجانبية وزر الثلاث شرطات فوق كل محتوى الصفحة. */
body::before,
[data-theme=dark] body::before{
  z-index:0!important;
}
.header{
  z-index:2147482000!important;
  overflow:visible!important;
  isolation:isolate;
}
.header::before{
  z-index:0!important;
  pointer-events:none!important;
}
.header-content{
  z-index:2147482001!important;
  overflow:visible!important;
}
#sideNavToggle.nav-toggle,
.nav-toggle#sideNavToggle{
  position:absolute!important;
  right:1rem!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:2147482100!important;
  pointer-events:auto!important;
  opacity:1!important;
  visibility:visible!important;
}
#sideNavToggle.nav-toggle:hover,
.nav-toggle#sideNavToggle:hover{
  transform:translateY(calc(-50% - 1px))!important;
}
.side-nav{
  position:fixed!important;
  z-index:2147483000!important;
  visibility:visible;
}
.side-nav__backdrop{
  z-index:2147483000!important;
}
.side-nav__card{
  position:relative;
  z-index:2147483001!important;
}
body.sidebar-open .side-nav,
.side-nav.open{
  opacity:1!important;
  visibility:visible!important;
  display:block!important;
}
@media (max-width:900px){
  .side-nav{
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
  }
  body.sidebar-open .side-nav,
  .side-nav.open{
    pointer-events:auto!important;
    transform:none!important;
  }
  body.sidebar-open .side-nav__backdrop,
  .side-nav.open .side-nav__backdrop{
    opacity:1!important;
    visibility:visible!important;
    display:block!important;
  }
  body.sidebar-open .side-nav__card,
  .side-nav.open .side-nav__card{
    transform:translateX(0)!important;
  }
}


/* ===== Fix: keep the top page bar above records/follow-up/fill pages ===== */
body.hb-fixed-header{
  padding-top:var(--hb-header-offset, 118px)!important;
}
body.hb-fixed-header > .header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  width:100%!important;
}
body.hb-fixed-header > .header + .side-nav{
  top:0!important;
}


/* ===== Fix: form fill overlay above top bar + full-page blur ===== */
body.hb-modal-active > *:not(.modal-overlay):not(.text-modal):not(.cal-modal-backdrop):not(.hb-notif-backdrop):not(.hb-notif-panel):not(.hb-global-modal-backdrop):not(.hb-global-banner):not(#notificationCenter){
  filter: blur(8px) saturate(.94);
  transition: filter .22s ease;
}
.modal-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:2147483605!important;
  display:flex;
  align-items:center;
  justify-content:center;
  padding: 24px 18px!important;
  overflow:auto!important;
  background: rgba(7, 15, 23, .22)!important;
  -webkit-backdrop-filter: blur(10px) saturate(115%);
  backdrop-filter: blur(10px) saturate(115%);
}
.modal-overlay.hidden{ display:none!important; }
.modal-overlay .modal{
  position:relative;
  z-index:1;
  margin:auto;
  max-height:calc(100dvh - 48px);
  overflow:auto;
  animation: hbModalFloatIn .22s cubic-bezier(.2,.7,.2,1);
  box-shadow: 0 28px 80px rgba(15,23,42,.28)!important;
}
@media (max-width: 900px){
  .modal-overlay{
    align-items:flex-start;
    padding: max(16px, env(safe-area-inset-top, 0px) + 12px) 12px 16px!important;
  }
  .modal-overlay .modal{
    margin:0 auto;
    max-height:calc(100dvh - 32px);
  }
}
.text-modal{ z-index:2147483610!important; }
.text-modal__backdrop{
  -webkit-backdrop-filter: blur(10px) saturate(115%);
  backdrop-filter: blur(10px) saturate(115%);
}
@keyframes hbModalFloatIn{
  from{ opacity:0; transform: translateY(10px) scale(.985); }
  to{ opacity:1; transform: translateY(0) scale(1); }
}


/* ===== Fix: merge the top bar back into the page flow =====
   يمنع الشريط العلوي من الانفصال والثبات خارج إطار الصفحة. */
body.hb-fixed-header{
  padding-top:0!important;
}
.header,
body.hb-fixed-header > .header{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  inset:auto!important;
  width:auto!important;
}
body.hb-fixed-header > .header + .side-nav{
  top:auto!important;
}


/* Fix: hide top header on login screen until the user is authenticated. */
body.hb-home:not(.hb-authenticated) > .header.app-auth-only{
  display:none !important;
}
body.hb-home:not(.hb-authenticated) .login-overlay{
  min-height:100vh;
}


/* قفل تعديل وقت البداية يدويًا: الاختيار يكون من أزرار الفترات فقط */
#startTime[readonly]{
  cursor:not-allowed;
  caret-color:transparent;
  user-select:none;
}
#startTime[readonly]::-webkit-calendar-picker-indicator{
  display:none;
  opacity:0;
  pointer-events:none;
}

/* === v1.3.1 dark mode polish: hall summaries + notification preview === */
[data-theme="dark"] body.hb-home .hall-summary-item{
  background:linear-gradient(180deg,rgba(15,23,42,.72),rgba(15,23,42,.54)) !important;
  border-color:rgba(148,163,184,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 22px rgba(0,0,0,.22) !important;
}
[data-theme="dark"] body.hb-home .hall-summary-item span{
  color:#cbd5e1 !important;
}
[data-theme="dark"] body.hb-home .hall-summary-item b{
  color:#eef2ff !important;
}
[data-theme="dark"] body.hb-home .hall-summary-item:first-child{
  background:linear-gradient(135deg,rgba(79,70,229,.18),rgba(15,23,42,.68)) !important;
  border-color:rgba(129,140,248,.28) !important;
}
[data-theme="dark"] body.hb-home .hall-summary-item:first-child b{
  color:#a5b4fc !important;
}
[data-theme="dark"] .hb-preview-phone{
  background:linear-gradient(180deg,rgba(15,23,42,.58),rgba(15,23,42,.34)) !important;
  border-color:rgba(148,163,184,.16) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
[data-theme="dark"] .hb-preview-card,
[data-theme="dark"] .hb-preview-card.mode-center{
  background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(30,41,59,.92)) !important;
  border-color:rgba(148,163,184,.16) !important;
  color:#e5e7eb !important;
  box-shadow:0 18px 50px rgba(0,0,0,.36) !important;
}
[data-theme="dark"] .hb-preview-title,
[data-theme="dark"] .hb-preview-banner b,
[data-theme="dark"] .hb-preview-center .hb-notif-title{
  color:#f8fafc !important;
}
[data-theme="dark"] .hb-preview-message,
[data-theme="dark"] .hb-preview-banner p,
[data-theme="dark"] .hb-preview-banner small,
[data-theme="dark"] .hb-preview-center .hb-notif-text{
  color:#cbd5e1 !important;
}
[data-theme="dark"] .hb-preview-icon,
[data-theme="dark"] .hb-preview-banner-icon{
  background:rgba(129,140,248,.16) !important;
  color:#c4b5fd !important;
  border:1px solid rgba(129,140,248,.18) !important;
}
[data-theme="dark"] .hb-preview-card.mode-banner{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
[data-theme="dark"] .hb-preview-banner{
  background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(30,41,59,.92)) !important;
  border-color:rgba(148,163,184,.16) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.36) !important;
}
[data-theme="dark"] .hb-preview-banner button{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(255,255,255,.12) !important;
  color:#cbd5e1 !important;
}
[data-theme="dark"] .hb-btn-light,
[data-theme="dark"] .hb-preview-actions button:not(.hb-btn-primary){
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(255,255,255,.14) !important;
  color:#e5e7eb !important;
}

/* === v1.3.2 unified dark broadcast modal/preview style === */
[data-theme="dark"] .hb-preview-card.mode-modal,
[data-theme="dark"] .hb-global-modal{
  background:
    radial-gradient(circle at 50% 7%, rgba(129,140,248,.18), transparent 26%),
    linear-gradient(180deg, rgba(15,23,42,.96), rgba(30,41,59,.92)) !important;
  border:1px solid rgba(148,163,184,.20) !important;
  color:#f8fafc !important;
  border-radius:30px !important;
  box-shadow:0 28px 70px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
/* Keep original modal/preview dimensions; dark mode changes colors only. */
[data-theme="dark"] .hb-preview-card.mode-modal .hb-effect-layer,
[data-theme="dark"] .hb-global-modal .hb-effect-layer{
  opacity:.95 !important;
}
[data-theme="dark"] .hb-preview-icon,
[data-theme="dark"] .hb-global-modal__icon{
  background:linear-gradient(180deg, rgba(99,102,241,.24), rgba(79,70,229,.16)) !important;
  border:1px solid rgba(129,140,248,.35) !important;
  color:#fef3c7 !important;
  box-shadow:0 14px 32px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
[data-theme="dark"] .hb-preview-title,
[data-theme="dark"] .hb-global-modal h3{
  color:#ffffff !important;
  text-shadow:0 2px 12px rgba(0,0,0,.28) !important;
}
[data-theme="dark"] .hb-preview-message,
[data-theme="dark"] .hb-global-modal p{
  color:#e2e8f0 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.22) !important;
}
[data-theme="dark"] .hb-global-modal__meta span{
  background:rgba(255,255,255,.92) !important;
  border-color:rgba(255,255,255,.94) !important;
  color:#475569 !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}
[data-theme="dark"] .hb-preview-actions,
[data-theme="dark"] .hb-global-modal__actions{
  gap:10px !important;
}
[data-theme="dark"] .hb-preview-actions .hb-btn-primary,
[data-theme="dark"] .hb-global-modal__actions .hb-btn-primary{
  background:linear-gradient(135deg,#818cf8,#6366f1) !important;
  border-color:rgba(129,140,248,.78) !important;
  color:#fff !important;
  box-shadow:0 14px 28px rgba(99,102,241,.28) !important;
}
[data-theme="dark"] .hb-preview-actions .hb-btn-light,
[data-theme="dark"] .hb-global-modal__actions .hb-btn-light{
  background:rgba(30,41,59,.78) !important;
  border-color:rgba(148,163,184,.28) !important;
  color:#f8fafc !important;
  box-shadow:0 12px 26px rgba(0,0,0,.24) !important;
}
[data-theme="dark"] .hb-global-modal__close{
  background:rgba(15,23,42,.70) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#cbd5e1 !important;
}
[data-theme="dark"] .hb-global-modal-backdrop{
  background:rgba(2,6,23,.62) !important;
  backdrop-filter:blur(5px) !important;
}

/* === v1.3.4 dark notification center + center-preview alignment fix === */
[data-theme="dark"] .hb-notif-backdrop{
  background:rgba(2,6,23,.62) !important;
  backdrop-filter:blur(4px) !important;
}
[data-theme="dark"] .hb-notif-panel{
  background:linear-gradient(180deg,rgba(9,17,34,.98),rgba(15,23,42,.98)) !important;
  border-right-color:rgba(148,163,184,.16) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.46) !important;
}
[data-theme="dark"] .hb-notif-head,
[data-theme="dark"] .hb-notif-footer{
  border-color:rgba(148,163,184,.14) !important;
}
[data-theme="dark"] .hb-notif-close{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(148,163,184,.14) !important;
  color:#cbd5e1 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
[data-theme="dark"] .hb-notif-close:hover{
  color:#ffffff !important;
  border-color:rgba(129,140,248,.28) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22) !important;
}
[data-theme="dark"] .hb-notif-note{
  background:linear-gradient(180deg,rgba(59,130,246,.14),rgba(30,41,59,.55)) !important;
  border-color:rgba(96,165,250,.24) !important;
  color:#dbeafe !important;
}
[data-theme="dark"] .hb-notif-old-note{
  background:rgba(148,163,184,.08) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#cbd5e1 !important;
}
[data-theme="dark"] .hb-notif-section,
[data-theme="dark"] .hb-preview-center .hb-notif-section{
  color:#a5b4fc !important;
}
[data-theme="dark"] .hb-notif-item,
[data-theme="dark"] .hb-preview-center .hb-notif-item{
  background:
    linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.02)),
    linear-gradient(180deg,rgba(15,23,42,.96),rgba(30,41,59,.92)) !important;
  border-color:rgba(148,163,184,.18) !important;
  box-shadow:0 14px 30px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
[data-theme="dark"] .hb-notif-item:hover,
[data-theme="dark"] .hb-preview-center .hb-notif-item:hover{
  background:
    linear-gradient(135deg,rgba(129,140,248,.09),rgba(255,255,255,.03)),
    linear-gradient(180deg,rgba(15,23,42,.98),rgba(30,41,59,.94)) !important;
  border-color:rgba(129,140,248,.24) !important;
}
[data-theme="dark"] .hb-notif-item.is-unread,
[data-theme="dark"] .hb-preview-center .hb-notif-item.is-unread{
  background:
    linear-gradient(90deg,rgba(99,102,241,.18),rgba(15,23,42,.96) 36%,rgba(30,41,59,.92)),
    linear-gradient(180deg,rgba(15,23,42,.96),rgba(30,41,59,.92)) !important;
  border-color:rgba(129,140,248,.26) !important;
}
[data-theme="dark"] .hb-notif-item.is-pinned,
[data-theme="dark"] .hb-preview-center .hb-notif-item.is-pinned{
  background:
    radial-gradient(circle at 12% 50%, rgba(244,114,182,.12), transparent 28%),
    linear-gradient(90deg,rgba(129,140,248,.14),rgba(15,23,42,.96) 42%,rgba(30,41,59,.92)),
    linear-gradient(180deg,rgba(15,23,42,.96),rgba(30,41,59,.92)) !important;
  border-color:rgba(244,114,182,.22) !important;
}
[data-theme="dark"] .hb-notif-icon,
[data-theme="dark"] .hb-preview-center .hb-notif-icon{
  background:linear-gradient(180deg,rgba(99,102,241,.22),rgba(79,70,229,.14)) !important;
  border:1px solid rgba(129,140,248,.28) !important;
  color:#fef3c7 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
[data-theme="dark"] .hb-notif-title,
[data-theme="dark"] .hb-preview-center .hb-notif-title{
  color:#ffffff !important;
}
[data-theme="dark"] .hb-notif-text,
[data-theme="dark"] .hb-preview-center .hb-notif-text{
  color:#dbe5f1 !important;
}
[data-theme="dark"] .hb-notif-time,
[data-theme="dark"] .hb-preview-center .hb-notif-time{
  color:#94a3b8 !important;
}
[data-theme="dark"] .hb-notif-meta,
[data-theme="dark"] .hb-preview-center .hb-notif-meta{
  color:#cbd5e1 !important;
}
[data-theme="dark"] .hb-notif-meta span,
[data-theme="dark"] .hb-preview-center .hb-notif-meta span{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  color:#e2e8f0 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
[data-theme="dark"] .hb-preview-card.mode-center{
  background:
    radial-gradient(circle at 50% 8%, rgba(129,140,248,.14), transparent 26%),
    linear-gradient(180deg,rgba(15,23,42,.97),rgba(30,41,59,.93)) !important;
  border-color:rgba(148,163,184,.18) !important;
  box-shadow:0 24px 54px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
[data-theme="dark"] .hb-preview-center{
  text-align:right;
}


/* Survey text modal centering and service readability */
.text-modal.is-open{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px 16px!important;
}
.text-modal__box{
  margin:0!important;
  width:min(640px,92vw)!important;
  max-height:calc(100dvh - 48px)!important;
}
.text-modal__body{
  text-align:right!important;
  direction:rtl!important;
  font-size:15px!important;
}
@media (max-width:640px){
  .text-modal.is-open{padding:16px 10px!important;}
  .text-modal__box{width:min(96vw,640px)!important;}
}

/* Survey service modal: clear separation between service type and message */
.service-detail-modal.is-open{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px 16px!important;
}
.service-detail-modal__box{
  width:min(680px,92vw)!important;
  max-height:calc(100dvh - 48px)!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 32px 90px rgba(15,23,42,.28)!important;
  border:1px solid color-mix(in srgb,var(--primary) 16%, var(--border-soft))!important;
}
.service-detail-modal__head{
  min-height:64px!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%, var(--card)),var(--card))!important;
  border-bottom:1px solid var(--border-soft)!important;
}
.service-detail-modal__head .text-modal__title{
  font-size:18px!important;
  font-weight:950!important;
  color:var(--primary)!important;
}
.service-detail-modal__body{
  display:grid!important;
  gap:14px!important;
  padding:18px!important;
  background:linear-gradient(180deg,var(--card),color-mix(in srgb,var(--bg-soft) 80%, var(--card)))!important;
  white-space:normal!important;
}
.service-detail-card{
  position:relative;
  display:grid;
  gap:8px;
  padding:16px 18px;
  border-radius:18px;
  border:1px solid var(--border-soft);
  background:var(--card);
  box-shadow:0 10px 24px rgba(15,23,42,.05);
  overflow:hidden;
}
.service-detail-card::before{
  content:"";
  position:absolute;
  inset:0 0 0 auto;
  width:5px;
  background:var(--primary);
  opacity:.85;
}
.service-detail-card--message::before{
  background:#f59e0b;
}
.service-detail-label{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:6px 11px;
  border-radius:999px;
  font-size:12px;
  font-weight:950;
  color:var(--primary);
  background:color-mix(in srgb,var(--primary) 10%, var(--card));
  border:1px solid color-mix(in srgb,var(--primary) 22%, var(--border-soft));
}
.service-detail-card--message .service-detail-label{
  color:#b45309;
  background:color-mix(in srgb,#f59e0b 13%, var(--card));
  border-color:color-mix(in srgb,#f59e0b 28%, var(--border-soft));
}
.service-detail-value{
  color:var(--text);
  font-size:16px;
  line-height:2;
  font-weight:850;
  word-break:break-word;
  overflow-wrap:anywhere;
  unicode-bidi:plaintext;
}
.service-detail-type{
  font-size:19px;
  color:var(--primary);
  font-weight:1000;
}
.service-detail-message{
  min-height:74px;
  padding:12px 14px;
  border-radius:14px;
  background:color-mix(in srgb,var(--bg-soft) 88%, var(--card));
  border:1px dashed color-mix(in srgb,#f59e0b 30%, var(--border-soft));
  white-space:pre-wrap;
}
.service-detail-message.is-empty{
  color:var(--text-light);
  font-weight:800;
}
.service-detail-modal__foot{
  padding:14px 18px!important;
  background:var(--card)!important;
  border-top:1px solid var(--border-soft)!important;
}
@media(max-width:640px){
  .service-detail-modal.is-open{padding:16px 10px!important;}
  .service-detail-modal__box{width:min(96vw,680px)!important;border-radius:20px!important;}
  .service-detail-modal__body{padding:14px!important;}
  .service-detail-value{font-size:15px;}
  .service-detail-type{font-size:17px;}
}
[data-theme="dark"] .service-detail-modal__box{
  box-shadow:0 32px 90px rgba(0,0,0,.45)!important;
}
[data-theme="dark"] .service-detail-card{
  background:color-mix(in srgb,var(--card) 86%, #111827);
}

/* HB patch: button-style start time picker */
.hb-time-picker-wrap{position:relative;width:100%}
.hb-start-time-native{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;inset-inline-start:0;top:0}
.hb-time-picker-btn{display:flex!important;align-items:center;justify-content:space-between;gap:.55rem;width:100%;cursor:pointer;background:#f8fafc;text-align:inherit;color:inherit}
.hb-time-picker-btn:focus{outline:2px solid rgba(18,184,169,.35);outline-offset:2px;border-color:#17a79b}
.hb-time-picker-text{flex:1;text-align:right;direction:rtl}
.hb-time-picker-icon,.hb-time-picker-caret{opacity:.75;line-height:1}
.hb-time-picker-panel{position:absolute;z-index:9999;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid rgba(31,41,55,.14);border-radius:16px;box-shadow:0 18px 45px rgba(15,23,42,.18);padding:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;overflow:auto;direction:rtl}
.hb-time-picker-panel.hidden{display:none!important}
.hb-time-slot{border:1px solid rgba(15,118,110,.16);background:#f8fafc;border-radius:12px;padding:10px 12px;cursor:pointer;text-align:center;color:#20324a;font-weight:800;display:flex;flex-direction:column;gap:2px;align-items:center}
.hb-time-slot small{font-size:11px;font-weight:700;color:#0f766e;opacity:.8}
.hb-time-slot:hover:not(:disabled),.hb-time-slot.is-current{border-color:#0f766e;background:#e8f5f3}
.hb-time-slot:disabled{cursor:not-allowed;opacity:.55;background:#f1f5f9;color:#64748b}
.hb-time-slot:disabled small{color:#b91c1c}
.hb-time-picker-loading,.hb-time-picker-empty{grid-column:1/-1;text-align:center;padding:14px;color:#64748b;font-weight:700}
@media (max-width:520px){.hb-time-picker-panel{grid-template-columns:1fr}}

/* ===== Mobile sidebar height fix (v1.4.9) =====
   اجعل صندوق القائمة على شاشة الجوال بطول المحتوى بدل ملء كامل الشاشة،
   مع بقاء التمرير الداخلي عند كثرة العناصر. */
@media (max-width:900px){
  body.sidebar-open .side-nav,
  .side-nav.open{
    display:block!important;
    pointer-events:auto!important;
  }

  body.sidebar-open .side-nav__card,
  .side-nav.open .side-nav__card{
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - max(12px, env(safe-area-inset-bottom)))!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    transform:translateX(0)!important;
  }

  body.sidebar-open .side-nav__links,
  .side-nav.open .side-nav__links{
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 126px - max(12px, env(safe-area-inset-bottom)))!important;
    flex:0 1 auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-top:10px!important;
    padding-bottom:max(10px, env(safe-area-inset-bottom))!important;
    scrollbar-gutter:auto!important;
  }

  body.sidebar-open .side-nav__link,
  .side-nav.open .side-nav__link{
    min-height:48px!important;
  }
}

/* Fix: keep calendar action menu above event list/modal */
#calCtxMenu,
.cal-ctxmenu{
  position:fixed!important;
  z-index:2147483600!important;
  isolation:isolate!important;
  pointer-events:auto!important;
}
#calOverlapBackdrop{
  z-index:10030!important;
}

/* Canvas Confetti - أخف من إنشاء عناصر HTML كثيرة */
.hb-confetti-canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:1;
  display:block;
}
.hb-effect-screen .hb-confetti-canvas{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
}
