@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column;transition:width var(--transition-slow);position:fixed;top:0;left:0;bottom:0;z-index:100;overflow:hidden}.collapsed .sidebar{width:var(--sidebar-collapsed)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--color-border);min-height:var(--header-height)}.sidebar-logo{display:flex;align-items:center;gap:var(--space-3)}.logo-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);border-radius:var(--radius-md);color:#fff;flex-shrink:0;box-shadow:0 2px 8px #04adef33}.logo-text{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text);white-space:nowrap}.sidebar-toggle{padding:var(--space-1);flex-shrink:0;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.sidebar-toggle:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.property-switcher{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);position:relative}.property-switcher-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.property-switcher-btn:hover{border-color:var(--color-border-hover);background:var(--color-bg-secondary)}.property-switcher-btn.add-first{justify-content:center;color:var(--color-primary);border-style:dashed;gap:var(--space-2)}.property-switcher-current{display:flex;align-items:center;gap:var(--space-2);min-width:0}.property-switcher-current span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.switcher-chevron{flex-shrink:0;transition:transform var(--transition-fast)}.switcher-chevron.open{transform:rotate(180deg)}.property-switcher-dropdown{position:absolute;left:var(--space-3);right:var(--space-3);top:100%;margin-top:var(--space-1);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:50;max-height:240px;overflow-y:auto;animation:slideUp var(--transition-fast)}.property-switcher-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;border:none;color:var(--color-text);font-family:var(--font-family);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast);text-align:left}.property-switcher-option:hover{background:var(--color-bg-tertiary)}.property-switcher-option.active{background:var(--color-brand-light);color:var(--color-primary);font-weight:var(--font-medium)}.property-switcher-code{font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-mono)}.property-switcher-add{border-top:1px solid var(--color-border);color:var(--color-primary);font-weight:var(--font-medium);gap:var(--space-2);justify-content:flex-start}.sidebar-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);position:relative}.sidebar-search-icon{color:var(--color-text-muted);flex-shrink:0}.sidebar-search-input{flex:1;border:none;background:transparent;font-size:var(--text-sm);color:var(--color-text);font-family:var(--font-family);outline:none;padding:4px 0;min-width:0}.sidebar-search-input::placeholder{color:var(--color-text-muted)}.sidebar-search-clear{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:2px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.sidebar-search-clear:hover{color:var(--color-text);background:var(--color-bg-tertiary)}.sidebar-nav{flex:1;padding:var(--space-3) var(--space-2);display:flex;flex-direction:column;gap:var(--space-1);overflow-y:auto}.nav-section-label{font-size:10px;font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;padding:var(--space-3) var(--space-3) var(--space-1)}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast);text-decoration:none;white-space:nowrap}.nav-item:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.nav-item.active{background:var(--color-brand-light);color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}.nav-icon{flex-shrink:0;width:24px;display:flex;align-items:center;justify-content:center;color:inherit}.nav-label{white-space:nowrap}.nav-group{display:flex;flex-direction:column}.nav-group-toggle{border:none;background:transparent;cursor:pointer;font-family:var(--font-family);width:100%;text-align:left;position:relative}.nav-group-toggle.group-active{color:var(--color-primary)}.nav-group-chevron{margin-left:auto;flex-shrink:0;color:var(--color-text-muted);transition:transform .2s ease}.nav-group-chevron.expanded{transform:rotate(180deg)}.nav-group-children{display:flex;flex-direction:column;gap:1px;padding-left:12px;margin-left:16px;border-left:1.5px solid var(--color-border);animation:groupExpand .2s ease}.nav-child{padding:6px var(--space-3)!important;font-size:12.5px!important}.nav-child .nav-icon{width:20px}@keyframes groupExpand{0%{opacity:0;max-height:0}to{opacity:1;max-height:400px}}.sidebar-footer{padding:var(--space-4);border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.user-info{display:flex;align-items:center;gap:var(--space-3);min-width:0}.user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-weight:var(--font-bold);font-size:var(--text-sm);color:#fff;flex-shrink:0}.user-details{min-width:0;overflow:hidden}.user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap}.main-content{flex:1;margin-left:var(--sidebar-width);transition:margin-left var(--transition-slow);min-height:100vh;overflow-x:hidden}.main-content.edit-booking-main{overflow-x:clip}.collapsed .main-content{margin-left:var(--sidebar-collapsed)}.mobile-topbar{position:fixed;top:0;left:0;right:0;height:56px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-3);z-index:90}.mobile-hamburger{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;color:var(--color-text);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast)}.mobile-hamburger:hover{background:var(--color-bg-tertiary)}.mobile-topbar-logo{display:flex;align-items:center;gap:var(--space-2)}.mobile-topbar-property{font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-primary);background:var(--color-brand-light);padding:4px 10px;border-radius:var(--radius-full);letter-spacing:.04em}.mobile-overlay{display:none}@media(max-width:768px){.sidebar{width:280px;transform:translate(-100%);transition:transform var(--transition-slow);z-index:200;box-shadow:none}.sidebar.sidebar-mobile-open{transform:translate(0);box-shadow:var(--shadow-xl)}.sidebar-toggle{display:none}.mobile-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:150;animation:fadeIn var(--transition-fast)}.main-content{margin-left:0!important;padding-top:56px}.collapsed .sidebar{width:280px}.collapsed .main-content{margin-left:0!important}}@media(max-width:480px){.sidebar{width:85vw;max-width:300px}.mobile-topbar{padding:0 var(--space-2)}.property-switcher-btn,.nav-item{padding:var(--space-2);font-size:var(--text-xs)}.sidebar-footer{padding:var(--space-3)}.user-avatar{width:30px;height:30px;font-size:var(--text-xs)}}.fnb-layout{display:flex;min-height:100vh}.fnb-sidebar{width:230px;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;overflow:hidden}.fnb-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--color-border);min-height:var(--header-height)}.fnb-sidebar-logo{display:flex;align-items:center;gap:var(--space-3)}.fnb-logo-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f97316,#ea580c);border-radius:var(--radius-md);color:#fff;flex-shrink:0;box-shadow:0 2px 8px #f9731640}.fnb-logo-text{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text);white-space:nowrap}.fnb-outlet-selector{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);position:relative}.fnb-outlet-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.fnb-outlet-btn:hover{border-color:var(--color-border-hover);background:var(--color-bg-secondary)}.fnb-outlet-current{display:flex;align-items:center;gap:var(--space-2);min-width:0}.fnb-outlet-current span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fnb-outlet-chevron{flex-shrink:0;transition:transform var(--transition-fast)}.fnb-outlet-chevron.open{transform:rotate(180deg)}.fnb-outlet-dropdown{position:absolute;left:var(--space-3);right:var(--space-3);top:100%;margin-top:var(--space-1);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:50;max-height:220px;overflow-y:auto;animation:slideUp var(--transition-fast)}.fnb-outlet-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;border:none;color:var(--color-text);font-family:var(--font-family);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast);text-align:left}.fnb-outlet-option:hover{background:var(--color-bg-tertiary)}.fnb-outlet-option.active{background:#f9731614;color:#ea580c;font-weight:var(--font-medium)}.fnb-outlet-code{font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-mono)}.fnb-outlet-empty{padding:var(--space-3);text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.fnb-sidebar-nav{flex:1;padding:var(--space-2);display:flex;flex-direction:column;gap:1px;overflow-y:auto}.fnb-nav-section-label{font-size:10px;font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;padding:var(--space-3) var(--space-3) var(--space-1)}.fnb-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:7px var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:13px;font-weight:var(--font-medium);transition:all var(--transition-fast);text-decoration:none;white-space:nowrap;position:relative}.fnb-nav-item:hover:not(.disabled){background:var(--color-bg-tertiary);color:var(--color-text)}.fnb-nav-item.active{background:#f9731614;color:#ea580c;box-shadow:inset 3px 0 #f97316}.fnb-nav-item.disabled{opacity:.4;cursor:not-allowed}.fnb-nav-icon{flex-shrink:0;width:22px;display:flex;align-items:center;justify-content:center;color:inherit}.fnb-nav-label{white-space:nowrap;flex:1}.fnb-nav-badge{font-size:9px;color:var(--color-text-muted);background:var(--color-bg-tertiary);padding:1px 6px;border-radius:8px;font-weight:500;white-space:nowrap}.fnb-sidebar-footer{padding:var(--space-3);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-2)}.fnb-back-btn{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.fnb-back-btn:hover{background:var(--color-bg-tertiary);color:var(--color-text);border-color:var(--color-border-hover)}.fnb-user-chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3)}.fnb-user-avatar{width:24px;height:24px;border-radius:var(--radius-full);background:linear-gradient(135deg,#f97316,#ea580c);display:flex;align-items:center;justify-content:center;font-weight:var(--font-bold);font-size:10px;color:#fff;flex-shrink:0}.fnb-user-name{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fnb-main{flex:1;margin-left:230px;min-height:100vh}.fnb-mobile-topbar{position:fixed;top:0;left:0;right:0;height:56px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-3);z-index:90}.fnb-mobile-topbar-title{display:flex;align-items:center;gap:var(--space-2)}.fnb-mobile-overlay{display:none}@media(max-width:768px){.fnb-sidebar{width:260px;transform:translate(-100%);transition:transform var(--transition-slow);z-index:200;box-shadow:none}.fnb-sidebar.fnb-sidebar-mobile-open{transform:translate(0);box-shadow:var(--shadow-xl)}.fnb-mobile-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:150;animation:fadeIn var(--transition-fast)}.fnb-main{margin-left:0;padding-top:56px}}@media(max-width:480px){.fnb-sidebar{width:85vw;max-width:280px}.fnb-nav-item{padding:8px var(--space-3);font-size:12px}.fnb-outlet-btn{padding:var(--space-2);font-size:var(--text-xs)}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#f0f9ff,#e8f7fe 30%,#f8fafb 70%,#f0fdf4)}.login-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}.login-orb{position:absolute;border-radius:50%;filter:blur(120px);opacity:.35}.login-orb-1{width:500px;height:500px;background:#04adef;top:-150px;right:-100px;animation:float 8s ease-in-out infinite}.login-orb-2{width:400px;height:400px;background:#a78bfa;bottom:-100px;left:-80px;animation:float 10s ease-in-out infinite reverse}.login-orb-3{width:300px;height:300px;background:#34d399;top:50%;left:50%;transform:translate(-50%,-50%);animation:float 12s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0)}25%{transform:translate(30px,-30px)}50%{transform:translate(-20px,20px)}75%{transform:translate(10px,-10px)}}.login-container{position:relative;z-index:1;display:flex;gap:var(--space-6);align-items:stretch;animation:slideUp var(--transition-slow);max-width:780px;width:95%}.login-card{background:#ffffffd9;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-12);flex:1;min-width:340px;box-shadow:var(--shadow-lg)}.login-header{text-align:center;margin-bottom:var(--space-8)}.login-logo{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);border-radius:var(--radius-lg);color:#fff;margin:0 auto var(--space-4);box-shadow:0 4px 12px #04adef40}.login-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text);margin-bottom:var(--space-2)}.login-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary)}.login-form{display:flex;flex-direction:column;gap:var(--space-5)}.login-error{padding:var(--space-3) var(--space-4);background:var(--color-danger-soft);border:1px solid #fecaca;border-radius:var(--radius-md);color:#dc2626;font-size:var(--text-sm);text-align:center}.quick-login-panel{background:#ffffffbf;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);width:300px;flex-shrink:0;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.quick-login-header{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.quick-login-grid{display:flex;flex-direction:column;gap:var(--space-2);flex:1;overflow-y:auto}.quick-login-btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-family);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;position:relative}.quick-login-btn:hover:not(:disabled){background:var(--color-brand-light);border-color:#04adef4d;transform:translate(4px)}.quick-login-btn:active:not(:disabled){transform:translate(2px)}.quick-login-btn.loading{background:var(--color-brand-light);border-color:#04adef4d}.quick-login-btn:disabled{opacity:.5;cursor:not-allowed}.quick-login-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-brand-light);border-radius:var(--radius-sm);color:var(--color-primary);flex-shrink:0}.quick-login-label{flex:1;font-weight:var(--font-medium)}.quick-login-spinner{width:14px;height:14px;flex-shrink:0}@media(max-width:768px){.login-container{flex-direction:column;max-width:420px}.login-card{min-width:unset}.quick-login-panel{width:100%}.quick-login-grid{display:grid;grid-template-columns:repeat(2,1fr)}}.kpi-section-label{font-size:.82rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2);margin-top:var(--space-4)}.kpi-section-label:first-of-type{margin-top:0}.dash-top-layout{display:grid;grid-template-columns:1fr 280px;gap:var(--space-4);align-items:stretch}.dash-top-left{min-width:0}.dash-top-right{display:flex;flex-direction:column}.dash-top-right>.dash-card{flex:1;display:flex;flex-direction:column}.dash-top-right .donut-container{flex-direction:column;flex:1;justify-content:center;padding:var(--space-3)}.dash-top-right .donut-svg{width:130px;height:130px}.kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-bottom:var(--space-2)}@media(max-width:1100px){.dash-top-layout{grid-template-columns:1fr}}@media(max-width:768px){.kpi-row{grid-template-columns:1fr}}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4);margin-bottom:var(--space-3)}.stat-card.dayuse{border-left:3px solid #6366f1}.stat-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;align-items:center;gap:var(--space-4);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.stat-card:hover{border-color:var(--color-border-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);flex-shrink:0}.stat-icon.arrivals{background:#e0f2fe;color:#0284c7}.stat-icon.in-house{background:#dcfce7;color:#16a34a}.stat-icon.departures{background:#fef3c7;color:#d97706}.stat-icon.occupancy{background:#ede9fe;color:#7c3aed}.stat-icon.inventory{background:#ccfbf1;color:#0d9488}.stat-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text);line-height:1.2}.stat-label{font-size:var(--text-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.stat-formula{font-size:.6rem;color:var(--color-text-secondary);opacity:.7;margin-top:2px;font-weight:400;letter-spacing:0;line-height:1.3}.formula-breakdown{background:var(--color-bg-secondary, #f8f9fb);border-radius:var(--radius, 8px);margin-top:var(--space-3);padding:8px 10px;display:flex;flex-direction:column;gap:2px;font-size:.62rem;color:var(--color-text-secondary)}.formula-breakdown .formula-line{display:flex;justify-content:space-between;align-items:center;padding:1px 0}.formula-breakdown .formula-line strong{color:var(--color-text);font-weight:600;font-variant-numeric:tabular-nums}.formula-breakdown .formula-eq{border-top:1px solid var(--color-border);padding-top:4px;margin-top:3px;font-weight:600;color:var(--color-primary)}.dashboard-row{display:grid;gap:var(--space-4);margin-top:var(--space-5)}.dashboard-row.two-col{grid-template-columns:1fr 1fr}.dashboard-row.three-col{grid-template-columns:1fr 1fr 1fr}@media(max-width:900px){.dashboard-row.two-col,.dashboard-row.three-col{grid-template-columns:1fr}}.dash-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.dash-card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.dash-card-title{font-size:var(--text-sm);font-weight:var(--font-semibold);display:flex;align-items:center;gap:var(--space-2)}.dash-card-count{font-size:var(--text-xs);padding:2px 10px;border-radius:var(--radius-full);font-weight:600}.dash-card-count.arrivals{background:#e0f2fe;color:#0284c7}.dash-card-count.in-house{background:#dcfce7;color:#16a34a}.dash-card-count.departures{background:#fef3c7;color:#d97706}.dash-card-count.tasks{background:#fee2e2;color:#dc2626}.dash-card-count.sr{background:#fce7f3;color:#db2777}.dash-card-body{padding:0}.dash-mini-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border);cursor:pointer;transition:background var(--transition-base);font-size:var(--text-sm)}.dash-mini-row:last-child{border-bottom:none}.dash-mini-row:hover{background:var(--color-surface-alt)}.dash-mini-name{font-weight:600;color:var(--color-text)}.dash-mini-meta{font-size:var(--text-xs);color:var(--color-text-secondary)}.dash-mini-badge{font-size:.65rem;padding:2px 8px;border-radius:var(--radius-full);font-weight:600;background:var(--color-brand-light);color:var(--color-primary)}.dash-empty{padding:var(--space-6) var(--space-5);text-align:center;color:var(--color-text-secondary);font-size:var(--text-sm)}.donut-container{display:flex;align-items:center;justify-content:center;padding:var(--space-5);gap:var(--space-6)}.donut-svg{width:140px;height:140px}.donut-legend{display:flex;flex-direction:column;gap:var(--space-2)}.donut-legend-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.donut-legend-dot{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.hk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--space-3);padding:var(--space-4) var(--space-5)}.hk-item{text-align:center;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-alt)}.hk-item .hk-count{font-size:var(--text-xl);font-weight:var(--font-bold)}.hk-item .hk-label{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:2px}.hk-item.clean{border-left:3px solid #16a34a}.hk-item.dirty{border-left:3px solid #dc2626}.hk-item.inspected{border-left:3px solid #0284c7}.hk-item.occupied{border-left:3px solid #d97706}.hk-item.dnr{border-left:3px solid #9333ea}.hk-grid-horizontal{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-2);padding:var(--space-4) var(--space-5)}.hk-stat{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-3) var(--space-2);border-radius:var(--radius-md);background:var(--color-surface-alt);text-align:center}.hk-stat-value{font-size:var(--text-xl);font-weight:var(--font-bold);line-height:1.2}.hk-stat-label{font-size:.65rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em}.hk-stat.clean{color:#16a34a}.hk-stat.dirty{color:#dc2626}.hk-stat.inspected{color:#0284c7}.hk-stat.occupied{color:#d97706}.hk-stat.dnr{color:#9333ea}.hk-stat .hk-stat-value{color:var(--color-text)}.dash-view-all-inline{font-size:var(--text-xs);font-weight:600;color:var(--color-primary);cursor:pointer;text-decoration:none;display:flex;align-items:center;gap:2px}.dash-view-all-inline:hover{text-decoration:underline}.revenue-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);padding:var(--space-4) var(--space-5)}.revenue-item{padding:var(--space-3);background:var(--color-surface-alt);border-radius:var(--radius-md);text-align:center}.revenue-item .rev-val{font-size:var(--text-lg);font-weight:var(--font-bold);font-family:var(--font-mono)}.revenue-item .rev-label{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:2px}.rev-val.positive{color:var(--color-success)}.rev-val.danger{color:var(--color-danger)}@media(max-width:768px){.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.stat-card{padding:var(--space-3) var(--space-4);gap:var(--space-3)}.stat-icon{width:42px;height:42px}.stat-value{font-size:var(--text-xl)}.dash-mini-row{padding:var(--space-3) var(--space-4)}.donut-container{flex-direction:column;padding:var(--space-4);gap:var(--space-4)}.donut-svg{width:120px;height:120px}.donut-legend{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:var(--space-3)}.hk-grid{grid-template-columns:repeat(3,1fr);gap:var(--space-2);padding:var(--space-3)}.hk-item .hk-count{font-size:var(--text-lg)}.revenue-grid{gap:var(--space-2);padding:var(--space-3)}.revenue-item .rev-val{font-size:var(--text-base)}}.branding-section{margin-bottom:var(--space-8)}.branding-section-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.branding-identity-row{display:flex;align-items:flex-end;gap:var(--space-6)}.branding-preview-badge{padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);color:#fff;font-weight:var(--font-bold);font-size:var(--text-sm);white-space:nowrap;height:fit-content;box-shadow:var(--shadow-sm)}.branding-color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-4)}.branding-color-card{display:flex;gap:var(--space-4);padding:var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);align-items:center;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.branding-color-card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-md)}.branding-color-preview-container{flex-shrink:0}.branding-color-preview{width:48px;height:48px;border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.branding-color-info{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.branding-color-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.branding-color-input-row{display:flex;align-items:center;gap:var(--space-2)}.branding-color-picker{width:32px;height:32px;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:0;background:transparent;flex-shrink:0}.branding-color-picker::-webkit-color-swatch-wrapper{padding:2px}.branding-color-picker::-webkit-color-swatch{border-radius:var(--radius-sm);border:1px solid var(--color-border)}.branding-hex-input{font-family:var(--font-mono);font-size:var(--text-xs)!important;max-width:120px;text-transform:uppercase}.branding-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4)}.branding-preview-card{padding:var(--space-5);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;box-shadow:var(--shadow-sm)}.branding-mini-sidebar{width:100%;border-radius:var(--radius-md);border:1px solid var(--color-border);padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-1)}.branding-mini-nav-item{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-secondary);transition:all var(--transition-fast)}.branding-toast{padding:var(--space-3) var(--space-4);background:var(--color-success-soft);border:1px solid #a7f3d0;border-radius:var(--radius-md);color:#059669;font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-6);animation:slideUp var(--transition-slow)}.jcc-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-5);gap:var(--space-4)}.jcc-header-left{display:flex;align-items:center;gap:var(--space-3)}.jcc-header-left .page-title{margin-bottom:0}.jcc-header-right{display:flex;gap:var(--space-2);flex-shrink:0}.jcc-stats{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.jcc-stat{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:140px}.jcc-stat.breached{border-color:#ef44444d;background:#ef44440a}.jcc-stat-value{font-size:var(--text-xl);font-weight:var(--font-bold);display:block;line-height:1}.jcc-stat-label{font-size:var(--text-xs);color:var(--color-text-muted);display:block;margin-top:2px}.jcc-filters{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.jcc-search{display:flex;align-items:center;gap:var(--space-2);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);flex:1;max-width:360px;color:var(--color-text-muted)}.jcc-search input{border:none;background:transparent;outline:none;font-size:var(--text-sm);color:var(--color-text);width:100%;font-family:var(--font-family)}.jcc-toggle{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.jcc-toggle input[type=checkbox]{accent-color:#6366f1}.jcc-board{display:flex;gap:var(--space-4);overflow-x:auto;padding-bottom:var(--space-4);-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;max-width:calc(100vw - var(--sidebar-width) - var(--space-8) - var(--space-8))}.collapsed .jcc-board{max-width:calc(100vw - var(--sidebar-collapsed) - var(--space-8) - var(--space-8))}.jcc-board::-webkit-scrollbar{height:6px}.jcc-board::-webkit-scrollbar-track{background:var(--color-bg-tertiary);border-radius:3px}.jcc-board::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.jcc-column{min-width:300px;max-width:340px;flex-shrink:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;scroll-snap-align:start;display:flex;flex-direction:column}.jcc-column-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-top:3px solid #6b7280;background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border)}.jcc-column .fd-column-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-muted)}.jcc-column .fd-column-search input{flex:1;border:none;outline:none;background:transparent;font-size:var(--text-xs);color:var(--color-text);font-family:var(--font-family);padding:var(--space-1) 0}.jcc-column .fd-column-search input::placeholder{color:var(--color-text-muted);opacity:.7}.jcc-column-title{font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.05em}.jcc-column-counts{display:flex;gap:var(--space-1)}.jcc-count{min-width:22px;height:22px;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:var(--font-bold);color:#fff}.jcc-count.done{background:#10b981}.jcc-column-body{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);max-height:65vh;overflow-y:auto;flex:1}.jcc-empty{font-size:var(--text-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-4)}.jcc-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);transition:all var(--transition-fast)}.jcc-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.jcc-card.completed{opacity:.6}.jcc-card.has-breach{border-color:#ef444466}.jcc-card-top{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);cursor:pointer;gap:var(--space-2)}.jcc-card-guest{display:flex;align-items:center;gap:var(--space-3);min-width:0}.jcc-card-room{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-2);border:2px solid;border-radius:var(--radius-sm);font-weight:var(--font-bold);font-size:var(--text-xs);flex-shrink:0;min-width:40px;text-align:center}.jcc-card-guest strong{font-size:var(--text-sm);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jcc-card-meta{display:flex;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-top:1px}.jcc-card-progress{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3) var(--space-2);cursor:pointer}.jcc-progress-bar{flex:1;height:4px;background:var(--color-bg-tertiary);border-radius:2px;overflow:hidden}.jcc-progress-fill{height:100%;border-radius:2px;transition:width .3s ease}.jcc-progress-label{font-size:.65rem;color:var(--color-text-muted);white-space:nowrap;display:flex;align-items:center;gap:var(--space-1)}.jcc-breach-badge{display:inline-flex;align-items:center;gap:2px;color:#ef4444;font-weight:var(--font-bold)}.jcc-card-tasks{border-top:1px solid var(--color-border);padding:var(--space-2) var(--space-3) var(--space-3);display:flex;flex-direction:column;gap:4px;background:var(--color-bg-tertiary);max-height:500px;overflow-y:auto;border-radius:0 0 var(--radius-md) var(--radius-md)}.jcc-task{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-bg-card);border:1px solid var(--color-border);transition:all var(--transition-fast)}.jcc-task:hover{border-color:var(--color-primary)}.jcc-task.breached{border-color:#ef444466;background:#ef444408}.jcc-task.done{opacity:.5}.jcc-task-indicator{width:3px;height:20px;border-radius:2px;flex-shrink:0}.jcc-task-info{flex:1;min-width:0}.jcc-task-title{font-size:var(--text-xs);font-weight:var(--font-medium);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jcc-task-meta{display:flex;gap:var(--space-2);align-items:center;margin-top:1px}.jcc-task-dept{font-size:.6rem;color:var(--color-primary);background:var(--color-brand-light);padding:0 4px;border-radius:3px;font-weight:var(--font-medium)}.jcc-task-sla{font-size:.6rem;color:var(--color-text-muted);display:flex;align-items:center;gap:2px}.jcc-task-sla.breached{color:#ef4444;font-weight:var(--font-bold)}.jcc-task.scheduled{opacity:.55;border-style:dashed}.jcc-task-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);cursor:pointer;color:var(--color-text-muted);transition:all var(--transition-fast);flex-shrink:0}.jcc-task-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-brand-light)}.jcc-task-btn.blocked,.jcc-task-btn:disabled{opacity:.35;cursor:not-allowed;border-color:var(--color-border);color:var(--color-text-muted);background:var(--color-bg-tertiary)}.jcc-empty-state{text-align:center;padding:var(--space-8) var(--space-4)}.jcc-empty-state h3{margin-top:var(--space-4);font-weight:var(--font-semibold);color:var(--color-text)}.jcc-empty-state p{color:var(--color-text-muted);font-size:var(--text-sm);max-width:400px;margin:var(--space-2) auto 0}.jcc-card.expanded{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.jcc-card-task-pip{font-size:.65rem;font-weight:var(--font-bold);white-space:nowrap}.jcc-task-wrapper{border-radius:var(--radius-sm);overflow:hidden}.jcc-task-wrapper.task-expanded{border:1px solid var(--color-primary);border-radius:var(--radius-sm);background:var(--color-bg)}.jcc-task-wrapper.task-expanded .jcc-task{border:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.jcc-task.has-checklist{cursor:pointer}.jcc-task.has-checklist:hover{background:#6366f10a}.jcc-checklist-pip{display:inline-flex;align-items:center;gap:2px;font-size:.6rem;color:var(--color-text-muted);background:#6366f114;padding:1px 5px;border-radius:8px;font-weight:var(--font-medium);white-space:nowrap}.jcc-checklist{padding:var(--space-1) var(--space-2) var(--space-2);display:flex;flex-direction:column;gap:2px;background:var(--color-bg);border-top:1px solid var(--color-border)}.jcc-checklist-item{display:flex;align-items:center;gap:var(--space-2);padding:4px 6px;border-radius:var(--radius-xs);cursor:pointer;transition:background var(--transition-fast);font-size:var(--text-xs);color:var(--color-text)}.jcc-checklist-item:hover{background:#6366f10a}.jcc-checklist-item.checked{color:var(--color-text-muted)}.jcc-checklist-item.checked .jcc-checklist-text{text-decoration:line-through;opacity:.6}.jcc-checklist-check{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;flex-shrink:0}.jcc-checklist-text{flex:1;line-height:1.3}.jcc-checklist-req{color:#ef4444;font-weight:var(--font-bold);font-size:.7rem;flex-shrink:0}.jcc-no-tasks{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);padding:var(--space-2) 0}.jcc-view-stay{display:flex;align-items:center;justify-content:center;gap:var(--space-1);width:100%;padding:var(--space-2);margin-top:var(--space-1);border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-family)}.jcc-view-stay:hover{background:var(--color-brand-light);border-color:var(--color-primary)}@media(max-width:768px){.jcc-stats,.jcc-board{flex-direction:column}.jcc-column{min-width:100%;max-width:100%}}.ttc-stages{display:flex;flex-direction:column;gap:var(--space-2)}.ttc-stage-section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);overflow:hidden}.ttc-stage-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.ttc-stage-header:hover{background:var(--color-bg-tertiary)}.ttc-stage-left{display:flex;align-items:center;gap:var(--space-2)}.ttc-stage-left h3{font-size:var(--text-sm);font-weight:var(--font-semibold);margin:0}.ttc-template-count{font-size:var(--text-xs);color:var(--color-text-muted);margin-left:var(--space-2)}.ttc-template-list{border-top:1px solid var(--color-border);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);background:var(--color-bg-tertiary)}.ttc-empty{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}.ttc-template{display:flex;align-items:center;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);overflow:hidden;transition:all var(--transition-fast)}.ttc-template:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.ttc-template.inactive{opacity:.5}.ttc-template-priority{width:4px;align-self:stretch;flex-shrink:0}.ttc-template-body{flex:1;padding:var(--space-3);min-width:0}.ttc-template-top{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.ttc-template-top strong{font-size:var(--text-sm)}.ttc-template-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:4px;flex-wrap:wrap}.ttc-meta-tag{font-size:.65rem;display:inline-flex;align-items:center;gap:3px;color:var(--color-text-muted)}.ttc-meta-tag.dept{color:var(--color-primary);background:var(--color-brand-light);padding:0 5px;border-radius:3px;font-weight:var(--font-medium)}.ttc-template-actions{display:flex;gap:var(--space-1);padding:var(--space-2);flex-shrink:0}.ttc-checklist-editor{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.ttc-checklist-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);font-size:var(--text-sm)}.ttc-checklist-num{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-bold);min-width:18px}.ttc-checklist-text{flex:1}.ttc-checklist-add{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary)}.ttc-checklist-add input{flex:1;border:none;background:transparent;font-size:var(--text-sm);font-family:var(--font-family);color:var(--color-text);outline:none}.ttc-checkbox-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.ttc-checkbox-label input[type=checkbox]{accent-color:#6366f1;width:16px;height:16px}.jcc-card.virtual-booking{border-left:3px solid var(--color-primary);border-style:dashed;border-left-style:solid}.jcc-booking-status{padding:1px 6px;border-radius:4px;font-size:.6rem;font-weight:600;white-space:nowrap}.jcc-card-room.booking-badge{letter-spacing:.3px}.jcc-view-toggle{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;margin-left:auto}.jcc-view-toggle button{padding:6px 14px;font-size:.78rem;font-weight:500;border:none;background:none;cursor:pointer;color:var(--color-text-muted);transition:all .15s}.jcc-view-toggle button:not(:last-child){border-right:1px solid var(--color-border)}.jcc-view-toggle button.active{background:var(--color-primary);color:#fff}.jcc-list-view{overflow-x:auto}.jcc-list-view table{width:100%;border-collapse:collapse;font-size:.82rem}.jcc-list-view thead th{text-align:left;padding:10px 12px;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);border-bottom:2px solid var(--color-border);font-weight:600;white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer}.jcc-list-view tbody tr{border-bottom:1px solid var(--color-border);transition:background .1s;cursor:pointer}.jcc-list-view tbody tr:hover{background:var(--color-bg-secondary)}.jcc-list-view td{padding:10px 12px;vertical-align:middle}.jcc-list-stage-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:.7rem;font-weight:600;white-space:nowrap}.jcc-list-vip{display:inline-flex;align-items:center;gap:2px;color:#f59e0b;font-size:.7rem;font-weight:600}.jcc-list-task-progress{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--color-text-muted)}.jcc-list-task-bar{width:48px;height:4px;background:var(--color-border);border-radius:2px;overflow:hidden}.jcc-list-task-bar-fill{height:100%;border-radius:2px;transition:width .3s}.property-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6)}.property-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);cursor:pointer;transition:all var(--transition-base);position:relative}.property-card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.property-card.property-active{border-color:var(--color-primary);box-shadow:0 0 0 3px #04adef1a}.property-active-badge{position:absolute;bottom:var(--space-3);right:var(--space-3);font-size:10px;font-weight:var(--font-bold);color:var(--color-primary);background:var(--color-brand-light);padding:2px 8px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.property-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.property-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-brand-light);border-radius:var(--radius-lg);color:var(--color-primary)}.card-action-btn{opacity:0;transition:opacity var(--transition-fast)}.property-card:hover .card-action-btn{opacity:1}.property-card-name{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-1)}.property-card-code{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-muted);letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-mono);margin-bottom:var(--space-3)}.property-card-location{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.property-card-stars{display:flex;gap:2px;margin-bottom:var(--space-3)}.property-card-stats{display:flex;gap:var(--space-4);font-size:var(--text-xs);color:var(--color-text-muted);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.modal-lg{max-width:640px}.room-filters{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap}.room-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:200px;color:var(--color-text-muted)}.room-search input{border:none;background:transparent;font-family:var(--font-family);font-size:var(--text-sm);color:var(--color-text);outline:none;width:100%}.view-toggle{display:flex;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.view-toggle-btn{padding:var(--space-2) var(--space-4);border:none;background:transparent;font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.view-toggle-btn.active{background:var(--color-primary);color:#fff}.view-toggle-btn:hover:not(.active){background:var(--color-bg-secondary)}.floor-section{margin-bottom:var(--space-6)}.floor-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.floor-count{font-weight:var(--font-normal);color:var(--color-text-muted);margin-left:auto;font-size:var(--text-xs)}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--space-3)}.room-cell{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);cursor:pointer;transition:all var(--transition-fast);position:relative}.room-cell:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.room-cell:hover .space-delete-icon{opacity:1!important;color:#ef4444!important}.room-cell.room-bulk-selected{border-color:#ef4444;background:#ef44440f;box-shadow:0 0 0 2px #ef444433}.room-cell.room-selected{border-color:var(--color-primary);box-shadow:0 0 0 3px #04adef26}.room-hk-dirty{border-left:4px solid #ef4444}.room-hk-cleaning{border-left:4px solid #f59e0b}.room-hk-clean{border-left:4px solid #04adef}.room-hk-inspected{border-left:4px solid #10b981}.room-unavailable{opacity:.5;background:var(--color-bg-tertiary)}.room-cell-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.room-cell-name{font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--color-text)}.room-cell-status{width:8px;height:8px;border-radius:50%;flex-shrink:0}.room-cell-type{font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.05em;margin-bottom:var(--space-1)}.room-cell-hk{display:flex;align-items:center;gap:3px;font-size:10px;color:var(--color-text-secondary)}.room-hourly-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#8b5cf61f;color:#7c3aed;flex-shrink:0;position:relative;cursor:default}.room-hourly-icon:after{content:"Hourly";position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);font-size:10px;font-weight:600;color:#fff;background:#1e1e2e;padding:2px 6px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .1s}.room-hourly-icon:hover:after{opacity:1}.hourly-toggle-section{padding:var(--space-4);border-radius:var(--radius-lg);border:1.5px solid var(--color-border);background:var(--color-bg-primary);transition:all .2s ease;cursor:default}.hourly-toggle-section.active{border-color:#04adef59;background:linear-gradient(135deg,#04adef0d,#04adef05);box-shadow:0 0 0 3px #04adef14}.hourly-toggle-row{display:flex;align-items:center;justify-content:space-between}.hourly-toggle-label{display:flex;align-items:center;gap:10px}.hourly-toggle-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#04adef1f;color:#04adef;flex-shrink:0}.hourly-toggle-section.active .hourly-toggle-icon{background:#04adef2e}.hourly-toggle-text{font-size:.875rem;font-weight:600;color:var(--color-text);letter-spacing:-.01em}.hourly-toggle-btn{position:relative;width:44px;height:24px;border-radius:999px;border:none;cursor:pointer;padding:0;transition:background .22s ease,box-shadow .22s ease;flex-shrink:0;outline:none}.hourly-toggle-btn.on{background:#04adef;box-shadow:0 2px 8px #04adef66}.hourly-toggle-btn.off{background:var(--color-border);box-shadow:none}.hourly-toggle-btn:after{content:"";position:absolute;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:left .22s ease}.hourly-toggle-btn.on:after{left:23px}.hourly-toggle-btn.off:after{left:3px}.hourly-toggle-btn:hover.on{background:#02a0e0}.hourly-toggle-btn:hover.off{background:#c8c8d0}.hourly-toggle-hint{font-size:.72rem;color:var(--color-text-muted);margin-top:8px;padding-left:42px;line-height:1.4}.room-detail-panel{position:fixed;right:0;top:0;bottom:0;width:340px;background:var(--color-bg-secondary);border-left:1px solid var(--color-border);box-shadow:var(--shadow-lg);z-index:90;display:flex;flex-direction:column;animation:slideInRight .2s ease}.room-detail-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.room-detail-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text)}.room-detail-body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto;flex:1}.room-detail-tabs{display:flex;border-bottom:1px solid var(--color-border)}.room-detail-tab{flex:1;padding:var(--space-3);border:none;background:transparent;font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:all var(--transition-fast);text-align:center}.room-detail-tab:hover{color:var(--color-text);background:var(--color-bg-tertiary)}.room-detail-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.room-detail-tab-count{display:inline-flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);color:var(--color-text-muted);font-size:10px;font-weight:var(--font-bold);min-width:18px;height:18px;border-radius:var(--radius-full);margin-left:var(--space-1);padding:0 4px}.room-detail-tab.active .room-detail-tab-count{background:var(--color-brand-light);color:var(--color-primary)}.asset-tab{display:flex;flex-direction:column;gap:var(--space-3)}.asset-tab-header{display:flex;align-items:center;justify-content:space-between}.asset-tab-title{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.asset-add-form{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.input-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.asset-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm)}.asset-list{display:flex;flex-direction:column;gap:var(--space-2)}.asset-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);transition:border-color var(--transition-fast)}.asset-card:hover{border-color:var(--color-primary)}.asset-card-top{display:flex;align-items:center;gap:var(--space-2)}.asset-card-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-brand-light);border-radius:var(--radius-sm);color:var(--color-primary);flex-shrink:0}.asset-card-info{flex:1;min-width:0}.asset-card-name{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-card-cat{display:block;font-size:10px;color:var(--color-text-muted)}.asset-delete-btn{opacity:0;transition:opacity var(--transition-fast);color:var(--color-danger)}.asset-card:hover .asset-delete-btn{opacity:1}.asset-card-bottom{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.asset-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.select-xs{padding:2px var(--space-2);font-size:var(--text-xs);min-width:0}.asset-tag-label{font-size:10px;font-family:var(--font-mono);color:var(--color-text-muted);background:var(--color-bg-tertiary);padding:1px 5px;border-radius:var(--radius-sm);margin-left:auto}.asset-card-notes{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--color-border);line-height:1.4}.space-tree-container{padding:var(--space-4)}.tree-branch{position:relative}.tree-node{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:background var(--transition-fast);margin-bottom:1px}.tree-node:hover{background:var(--color-bg-tertiary)}.tree-node.depth-1{padding-left:calc(var(--space-3) + 20px)}.tree-node.depth-2{padding-left:calc(var(--space-3) + 40px)}.tree-node.depth-3{padding-left:calc(var(--space-3) + 60px)}.tree-expand{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm)}.tree-expand:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.tree-type-icon{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-brand-light);border-radius:var(--radius-sm);color:var(--color-primary)}.tree-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.tree-code{font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-mono)}.tree-hk{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-xs);font-weight:var(--font-medium);padding:2px 6px;border-radius:var(--radius-full)}.tree-hk.room-hk-dirty{background:var(--color-danger-soft);color:#dc2626}.tree-hk.room-hk-cleaning{background:var(--color-warning-soft);color:#d97706}.tree-hk.room-hk-clean{background:var(--color-info-soft);color:#0284c7}.tree-hk.room-hk-inspected{background:var(--color-success-soft);color:#059669}.tree-add-btn{margin-left:auto;opacity:0;transition:opacity var(--transition-fast)}.tree-node:hover .tree-add-btn{opacity:1}.tree-children{position:relative}.tree-children:before{content:"";position:absolute;left:22px;top:0;bottom:8px;width:1px;background:var(--color-border)}.bulk-instructions{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);font-size:var(--text-sm);color:var(--color-text-secondary)}.bulk-instructions p{margin-bottom:var(--space-2)}.bulk-columns{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.bulk-columns code{background:var(--color-bg-card);border:1px solid var(--color-border);padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-primary)}.bulk-notes{margin:0;padding-left:var(--space-5);font-size:var(--text-xs);line-height:1.8}.bulk-preview-header{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary)}.bulk-preview-table-wrap{overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.bulk-preview-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.bulk-preview-table th{position:sticky;top:0;background:var(--color-bg-tertiary);padding:var(--space-2) var(--space-3);text-align:left;font-weight:var(--font-semibold);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border)}.bulk-preview-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text)}.bulk-preview-table tr:last-child td{border-bottom:none}.bulk-preview-table code{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-bg-tertiary);padding:1px 5px;border-radius:var(--radius-sm)}.bulk-result{display:flex;flex-direction:column;gap:var(--space-4)}.bulk-result-summary{display:flex;gap:var(--space-6)}.bulk-stat{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.bulk-stat-num{font-size:var(--text-xl);font-weight:var(--font-bold)}.bulk-stat-success{color:var(--color-success)}.bulk-stat-warning{color:var(--color-warning)}.bulk-result-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-danger-soft);color:var(--color-danger);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium)}.bulk-errors{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.bulk-errors h4{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.bulk-error-row{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);padding:var(--space-1) 0;border-bottom:1px solid var(--color-border)}.bulk-error-row:last-child{border-bottom:none}.bulk-error-row code{font-family:var(--font-mono);background:var(--color-bg-tertiary);padding:1px 5px;border-radius:var(--radius-sm)}.rt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-6)}.rt-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.rt-card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-md)}.rt-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.rt-card-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-brand-light);border-radius:var(--radius-lg);color:var(--color-primary)}.rt-card-name{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-1)}.rt-card-code{font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-mono);letter-spacing:.1em;margin-bottom:var(--space-2)}.rt-card-desc{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4);line-height:1.5}.rt-card-occupancy{display:flex;gap:var(--space-4);padding:var(--space-3);background:var(--color-bg-tertiary);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.rt-occ-item{display:flex;flex-direction:column;align-items:center;flex:1}.rt-occ-label{font-size:10px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.rt-occ-value{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text)}.rt-card-footer{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);padding-top:var(--space-3);padding-bottom:var(--space-3);border-top:1px solid var(--color-border)}.rt-card-badges{display:flex;flex-wrap:wrap;gap:6px}.image-uploader{display:flex;flex-direction:column;gap:var(--space-3)}.iu-dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-4);text-align:center;cursor:pointer;transition:border-color .2s,background .2s;position:relative;overflow:hidden}.iu-dropzone:hover,.iu-dropzone.dragging{border-color:var(--color-primary);background:var(--color-primary-bg, rgba(99, 102, 241, .04))}.iu-dropzone-label{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);pointer-events:none}.iu-dropzone-label svg{color:var(--color-primary);opacity:.6}.iu-hidden-input{display:none}.iu-progress-bar{height:4px;border-radius:2px;background:var(--color-border);overflow:hidden}.iu-progress-fill{height:100%;background:var(--color-primary);transition:width .3s ease;border-radius:2px}.iu-preview-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.iu-preview-item{position:relative;width:96px;height:96px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.iu-preview-item img{width:100%;height:100%;object-fit:cover}.iu-preview-remove{position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;background:#0000008c;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1;transition:background .15s}.iu-preview-remove:hover{background:var(--color-danger)}.iu-single-preview{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);max-width:360px}.iu-single-preview img{width:100%;height:180px;object-fit:cover;display:block}.iu-uploading-text{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px}.tagged-gallery-uploader{display:flex;flex-direction:column;gap:1rem;position:relative}.tgu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.tgu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.tgu-card{background:var(--bg-secondary, #fff);border:1px solid var(--border-color, #e2e8f0);border-radius:12px;transition:box-shadow .2s}.tgu-card:hover{box-shadow:0 4px 16px #00000014}.tgu-image-container{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;background:var(--bg-tertiary, #f1f5f9);border-radius:12px 12px 0 0}.tgu-image-container img{width:100%;height:100%;object-fit:cover;display:block}.tgu-delete-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;border:none;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s,background .2s}.tgu-card:hover .tgu-delete-btn{opacity:1}.tgu-delete-btn:hover{background:#dc2626d9}.tgu-tags-section{padding:12px 14px 14px;position:relative;z-index:45}.tgu-tags-label{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.tgu-tag-selector{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:4px 10px;border:1.5px solid var(--border-color, #e2e8f0);border-radius:8px;background:var(--bg-primary, #fff);cursor:pointer;transition:border-color .2s,box-shadow .2s}.tgu-tag-selector:hover{border-color:var(--primary, #0ea5e9)}.tgu-tag-selector.open{border-color:var(--primary, #0ea5e9);box-shadow:0 0 0 3px #0ea5e91f}.tgu-tag-selector svg{flex-shrink:0;color:var(--text-secondary, #94a3b8)}.tgu-selected-tags{display:flex;flex-wrap:wrap;gap:4px;flex:1;min-width:0}.tgu-placeholder{color:var(--text-tertiary, #94a3b8);font-size:.85rem;padding:2px 0}.tgu-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--primary-light, #e0f2fe);color:var(--primary-dark, #0369a1);border-radius:20px;font-size:.78rem;font-weight:500;white-space:nowrap}.tgu-pill button{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:inherit;cursor:pointer;padding:0;opacity:.6;transition:opacity .15s}.tgu-pill button:hover{opacity:1}.tgu-dropdown{position:absolute;top:100%;left:14px;right:14px;margin-top:4px;background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:50;overflow:hidden}.tgu-dropdown-list{max-height:200px;overflow-y:auto;padding:4px 0}.tgu-dropdown-item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;font-size:.88rem;color:var(--text-primary, #1e293b);transition:background .12s}.tgu-dropdown-item:hover{background:var(--bg-hover, #f1f5f9)}.tgu-dropdown-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary, #0ea5e9);cursor:pointer;flex-shrink:0}.tgu-dropdown-item span{flex:1;min-width:0}.tgu-dropdown-empty{padding:12px 14px;font-size:.85rem;color:var(--text-tertiary, #94a3b8);text-align:center}.tgu-dropdown-footer{border-top:1px solid var(--border-color, #e2e8f0);padding:8px 10px}.tgu-add-new-btn{display:flex;align-items:center;gap:6px;width:100%;padding:6px 4px;background:none;border:none;color:var(--primary, #0ea5e9);font-size:.85rem;font-weight:500;cursor:pointer;border-radius:6px;transition:background .12s}.tgu-add-new-btn:hover{background:var(--primary-light, #e0f2fe)}.tgu-new-tag-row{display:flex;gap:6px}.tgu-new-tag-row input{flex:1;padding:6px 10px;border:1.5px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.85rem;outline:none;transition:border-color .2s}.tgu-new-tag-row input:focus{border-color:var(--primary, #0ea5e9)}.tgu-create-btn{padding:6px 14px;background:var(--primary, #0ea5e9);color:#fff;border:none;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.tgu-create-btn:hover{background:var(--primary-dark, #0284c7)}.video-uploader{display:flex;flex-direction:column;gap:var(--space-3)}.vu-dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-4);text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.vu-dropzone:hover,.vu-dropzone.dragging{border-color:var(--color-primary);background:var(--color-primary-bg, rgba(99, 102, 241, .04))}.vu-dropzone-label{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);pointer-events:none}.vu-dropzone-label svg{color:var(--color-primary);opacity:.6}.vu-hidden-input{display:none}.vu-progress{display:flex;flex-direction:column;gap:var(--space-1)}.vu-progress-bar{height:6px;border-radius:3px;background:var(--color-border);overflow:hidden}.vu-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-success, #10b981));transition:width .3s ease;border-radius:3px}.vu-progress-text{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--color-text-muted)}.vu-preview{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);max-width:480px}.vu-preview video{width:100%;display:block;border-radius:var(--radius-lg)}.vu-preview-remove{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#0000008c;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;z-index:2}.vu-preview-remove:hover{background:var(--color-danger)}.amenity-picker{display:flex;flex-direction:column;gap:var(--space-3)}.ap-category{display:flex;flex-direction:column;gap:var(--space-2)}.ap-category-label{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.ap-pills{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ap-pill{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:1.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;font-size:var(--text-sm);color:var(--color-text);transition:all .15s ease;-webkit-user-select:none;user-select:none}.ap-pill:hover{border-color:var(--color-primary);background:var(--color-primary-bg, rgba(99, 102, 241, .04))}.ap-pill.selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.ap-pill-icon{width:18px;height:18px;border-radius:4px;object-fit:contain;flex-shrink:0}.ap-pill .ap-check{width:14px;height:14px;flex-shrink:0}.ap-add-row{display:flex;align-items:end;gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.ap-add-row .form-group{flex:1;margin:0}.ap-icon-upload{display:flex;flex-direction:column;align-items:center;gap:4px}.ap-icon-preview{width:36px;height:36px;border-radius:var(--radius-md);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;background:var(--color-bg);transition:border-color .15s}.ap-icon-preview:hover{border-color:var(--color-primary)}.ap-icon-preview img{width:100%;height:100%;object-fit:contain}.ap-no-amenities{font-size:var(--text-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-4)}.property-settings-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:0}.property-settings-page .page-header{padding:var(--space-6) var(--space-8) var(--space-4);margin-bottom:0;flex-shrink:0}.settings-tabs{display:flex;gap:var(--space-1);margin-bottom:0;border-bottom:2px solid var(--color-border);padding:0 var(--space-8);overflow-x:auto;scrollbar-width:none;flex-shrink:0;-ms-overflow-style:none}.settings-tabs::-webkit-scrollbar{display:none}.settings-tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;transition:all .2s ease}.settings-tab:hover{color:var(--color-text);background:var(--color-bg-tertiary);border-radius:var(--radius-md) var(--radius-md) 0 0}.settings-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-semibold)}.settings-tab.active svg{color:var(--color-primary)}.settings-tab-content{flex:1;overflow-y:auto;padding:var(--space-6) var(--space-8) var(--space-8);min-height:0}.settings-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.settings-section-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.settings-section-title svg{color:var(--color-primary)}.settings-subsection{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.settings-subsection-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:var(--space-2)}.settings-subsection-title svg{color:var(--color-text-muted)}.settings-hint{font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-3);line-height:1.5}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-4)}.form-hint{display:block;font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.input-with-suffix{display:flex;align-items:center;gap:0}.input-with-suffix .input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.input-suffix{display:flex;align-items:center;padding:0 var(--space-3);height:36px;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-left:none;border-radius:0 var(--radius-md) var(--radius-md) 0;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.sla-label{display:flex;align-items:center;gap:var(--space-2)}.sla-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.sla-dot.critical{background:#ef4444}.sla-dot.high{background:#f97316}.sla-dot.medium{background:#eab308}.sla-dot.low{background:#22c55e}.settings-saved-badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-success);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.gst-slab-table{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.gst-slab-header{display:grid;grid-template-columns:1fr 120px;gap:var(--space-4);padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.gst-slab-row{display:grid;grid-template-columns:1fr 120px;gap:var(--space-4);padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border);align-items:center}.gst-slab-range{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary)}.gst-slab-rate{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text)}.input-inline{width:80px;padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}@media(max-width:768px){.form-row-2,.form-row-3{grid-template-columns:1fr}.settings-tabs{gap:0}.settings-tab{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}}.pref-stats-bar{display:flex;gap:12px;margin-bottom:var(--space-4)}.pref-stat{display:flex;flex-direction:column;gap:2px;padding:12px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1}.pref-stat-value{font-size:1.25rem;font-weight:700;color:var(--color-text)}.pref-stat-label{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:500}.pref-tabs{display:flex;gap:0;margin-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.pref-tab{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;background:none;font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s ease}.pref-tab:hover{color:var(--color-primary)}.pref-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.pref-category-bar{display:flex;gap:8px;margin-bottom:var(--space-3)}.pref-category-chip{padding:6px 16px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all .2s ease;font-weight:500}.pref-category-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.pref-category-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pref-category-chip.preference.active{background:#6366f1;border-color:#6366f1}.pref-category-chip.behavioral.active{background:#0891b2;border-color:#0891b2}.pref-filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.pref-filter-chip{padding:5px 14px;border-radius:20px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all .2s ease;font-weight:500}.pref-filter-chip:hover{background:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.pref-filter-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pref-group{margin-bottom:var(--space-5)}.pref-group-header{display:flex;align-items:center;gap:8px;font-weight:600;font-size:var(--text-sm);color:var(--color-text);margin-bottom:var(--space-3);padding-bottom:6px;border-bottom:2px solid var(--color-border)}.badge-behavioral{background:#0891b215;color:#0891b2;border:1px solid #0891b240;font-size:.6rem;font-weight:600}.pref-rules-grid{display:flex;flex-direction:column;gap:10px}.pref-rule-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 16px;transition:all .2s ease}.pref-rule-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #6366f114}.pref-rule-card.inactive{opacity:.55;background:var(--color-bg)}.pref-rule-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.pref-rule-trigger{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pref-chip{display:inline-block;padding:3px 10px;border-radius:6px;background:linear-gradient(135deg,#fef9c3,#fef08a);color:#92400e;font-size:var(--text-xs);font-weight:600;border:1px solid #fbbf2440}.pref-chip.behavioral{background:linear-gradient(135deg,#cffafe,#a5f3fc);color:#155e75;border-color:#22d3ee40}.pref-arrow{color:var(--color-text-secondary);font-size:var(--text-sm)}.pref-task-title{font-weight:600;font-size:var(--text-sm);color:var(--color-text)}.pref-rule-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s ease}.pref-rule-card:hover .pref-rule-actions{opacity:1}.pref-rule-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}.pref-toggle{padding:2px 10px;border-radius:10px;font-size:.65rem;font-weight:600;cursor:pointer;border:1px solid;transition:all .2s ease;margin-left:auto}.pref-toggle.on{background:#dcfce7;color:#166534;border-color:#86efac}.pref-toggle.off{background:#fee2e2;color:#991b1b;border-color:#fca5a5}.pref-toggle:hover{filter:brightness(.95)}.pref-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f;z-index:100;max-height:200px;overflow-y:auto}.pref-suggestion-item{display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:none;font-size:var(--text-sm);cursor:pointer;color:var(--color-text);transition:background .1s}.pref-suggestion-item:hover{background:var(--color-bg-hover)}.pref-checklist-section{border-top:1px solid var(--color-border);padding-top:var(--space-3);margin-top:var(--space-3)}.pref-checklist-item{display:flex;align-items:center;gap:8px;margin-top:6px}.pref-checklist-item input[type=text],.pref-checklist-item input:not([type]){width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-input);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.pref-checklist-item input[type=text]:focus,.pref-checklist-item input:not([type]):focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-soft)}.pref-checklist-required{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;margin:0}.pref-checklist-required input[type=checkbox]{width:14px;height:14px}.pref-simulate-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.pref-simulate-header{margin-bottom:var(--space-4)}.pref-simulate-search{display:flex;gap:12px;align-items:flex-end;margin-bottom:var(--space-4)}.pref-guest-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f;z-index:100;max-height:240px;overflow-y:auto}.pref-guest-option{display:flex;align-items:center;gap:8px;padding:10px 12px;border:none;background:none;width:100%;text-align:left;font-size:var(--text-sm);cursor:pointer;color:var(--color-text);transition:background .1s}.pref-guest-option:hover{background:var(--color-bg-hover)}.pref-guest-option.selected{background:var(--color-primary-bg)}.pref-sim-results{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.pref-sim-context{background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.pref-sim-stats{display:flex;gap:16px;margin-top:var(--space-2);margin-bottom:var(--space-3)}.pref-sim-stat{display:flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:500}.pref-sim-context-tags{display:flex;gap:6px;flex-wrap:wrap}.pref-sim-section{margin-top:var(--space-3)}.pref-log-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.pref-log-table-wrap{overflow-x:auto}.modal .form-row{display:flex;gap:12px}.modal .form-row .form-group{flex:1}.modal input,.modal select,.modal textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-input);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-soft)}.modal input::placeholder,.modal textarea::placeholder{color:var(--color-text-muted)}.modal select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.modal input[type=checkbox]{width:auto;padding:0;cursor:pointer}.modal input[type=number]{-moz-appearance:textfield}.modal label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);margin-bottom:2px}.modal small{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px}.modal .form-group{margin-bottom:var(--space-3)}.wifi-stats{display:flex;gap:12px;margin-bottom:var(--space-5)}.wifi-stat-card{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1;transition:all .2s ease}.wifi-stat-card:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}.wifi-stat-card.active-filter{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary),var(--shadow-sm);background:var(--color-primary-soft, rgba(4, 173, 239, .04))}.wifi-stat-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);flex-shrink:0}.wifi-stat-value{font-size:1.25rem;font-weight:700;color:var(--color-text);line-height:1}.wifi-stat-label{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:500;margin-top:2px}.wifi-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.wifi-how-step{display:flex;gap:12px;padding:14px;border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--color-border);transition:all .2s ease}.wifi-how-step:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #04adef14}.wifi-how-num{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full, 50%);background:var(--color-primary);color:#fff;font-size:var(--text-xs);font-weight:700;flex-shrink:0}.wifi-collapse-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease,opacity .3s ease;opacity:0}.wifi-collapse-panel.expanded{grid-template-rows:1fr;opacity:1}.wifi-collapse-inner{overflow:hidden}.wifi-collapse-toggle svg:last-child{transition:transform .3s ease}.wifi-collapse-toggle.expanded svg:last-child{transform:rotate(90deg)}.server-data-table{min-width:0}.server-data-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--color-border)}.server-data-table-search{display:flex;align-items:center;gap:8px;min-width:min(320px,100%);padding:7px 10px;border:1px solid var(--color-border);border-radius:7px;background:var(--color-bg);color:var(--color-text-muted)}.server-data-table-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light, rgba(2, 132, 199, .12))}.server-data-table-search input,.server-data-table-edit input{min-width:0;flex:1;border:none;outline:none;background:transparent;color:var(--color-text);font:inherit}.server-data-table-clear,.server-data-table-edit button,.server-data-table-edit-trigger{display:inline-flex;align-items:center;justify-content:center;padding:3px;border:none;border-radius:4px;background:transparent;color:var(--color-text-muted);cursor:pointer}.server-data-table-clear:hover,.server-data-table-edit button:hover,.server-data-table-edit-trigger:hover{color:var(--color-primary);background:var(--color-primary-light, rgba(2, 132, 199, .1))}.server-data-table-actions{display:flex;align-items:center;gap:8px}.server-data-table-error{padding:10px 16px;border-bottom:1px solid rgba(239,68,68,.2);background:#ef444414;color:var(--color-text);font-size:.8rem}.server-data-table-scroll{overflow:auto}.server-data-table table{width:100%;min-width:1080px;border-collapse:collapse;font-size:.8rem}.server-data-table th{position:sticky;top:0;z-index:1;padding:10px 12px;border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary, var(--color-bg));color:var(--color-text-muted);font-size:.7rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.server-data-table td{padding:10px 12px;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);white-space:nowrap}.server-data-table tbody tr:hover td{background:var(--color-bg-hover, rgba(0, 0, 0, .02))}.server-data-table tbody tr:last-child td{border-bottom:none}.server-data-table-clickable-row{cursor:pointer}.server-data-table-clickable-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.server-data-table-expanded-row>td{padding:12px 14px 16px;background:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg));white-space:normal}.server-data-table-expanded-row:hover>td{background:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg))!important}.server-data-table-cell{display:inline-flex;align-items:center;gap:6px;min-width:0}.server-data-table-edit-trigger{opacity:0;transition:opacity .15s ease}.server-data-table td:hover .server-data-table-edit-trigger,.server-data-table-edit-trigger:focus-visible{opacity:1}.server-data-table-edit{position:relative;display:flex;align-items:center;gap:4px;min-width:230px}.server-data-table-edit input{min-width:150px;padding:5px 7px;border:1px solid var(--color-primary);border-radius:5px;background:var(--color-bg)}.server-data-table-edit-error{position:absolute;top:calc(100% + 4px);left:0;z-index:3;padding:4px 7px;border:1px solid rgba(239,68,68,.25);border-radius:4px;background:var(--color-bg-secondary);color:#dc2626;font-size:.7rem;box-shadow:0 4px 12px #0f172a1f}.server-data-table-state{height:120px;text-align:center;color:var(--color-text-muted)}.server-data-table-spinner{display:inline-block;margin-right:6px;animation:serverDataTableSpin .8s linear infinite;vertical-align:middle}@keyframes serverDataTableSpin{to{transform:rotate(360deg)}}.server-data-table-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 14px;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:.75rem}.server-data-table-count{margin-right:auto}.server-data-table-page-size{display:flex;align-items:center;gap:6px}.server-data-table-page-size select{padding:4px 6px;border:1px solid var(--color-border);border-radius:5px;background:var(--color-bg);color:var(--color-text);font:inherit}.server-data-table-page{min-width:80px;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:720px){.server-data-table-toolbar,.server-data-table-pagination{align-items:stretch;flex-wrap:wrap}.server-data-table-search{width:100%;min-width:0}.server-data-table-actions{margin-left:auto}.server-data-table-count{width:100%}}.reports-page{padding:24px 32px;max-width:1400px}.reports-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.reports-header h1{font-size:1.6rem;font-weight:700}.reports-header-main{display:flex;align-items:center;gap:24px;min-width:0;flex:1}.reports-header-actions{display:flex;gap:8px}.reports-search{position:relative;display:flex;align-items:center;gap:8px;width:min(420px,46vw);min-width:240px;padding:0 12px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-bg-secondary);color:var(--color-text-muted);transition:border-color .15s ease,box-shadow .15s ease}.reports-search.focused{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 13%,transparent)}.reports-search input{min-width:0;flex:1;height:38px;border:0;outline:0;background:transparent;color:var(--color-text);font:inherit;font-size:.82rem}.reports-search input::placeholder{color:var(--color-text-muted)}.reports-search-clear{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);cursor:pointer}.reports-search-clear:hover{background:var(--color-bg);color:var(--color-text)}.reports-search-results{position:absolute;z-index:40;top:calc(100% + 7px);left:0;right:0;max-height:360px;overflow-y:auto;padding:6px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-secondary);box-shadow:0 16px 40px #0f172a29}.reports-search-result{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:0;border-radius:7px;background:transparent;color:var(--color-text);text-align:left;cursor:pointer}.reports-search-result:hover,.reports-search-result:focus-visible{background:var(--color-bg);outline:none}.reports-search-result>span:first-child{display:flex;flex-direction:column;min-width:0}.reports-search-result strong{font-size:.82rem;font-weight:600}.reports-search-result small{margin-top:2px;color:var(--color-text-muted);font-size:.7rem}.reports-search-status{flex:0 0 auto;padding:3px 7px;border-radius:999px;font-size:.63rem;font-weight:700;white-space:nowrap}.reports-search-status.available{background:#10b9811f;color:#059669}.reports-search-status.partial{background:#f59e0b24;color:#b45309}.reports-search-status.setup-required{background:#ef44441f;color:#dc2626}.reports-search-empty{display:flex;flex-direction:column;gap:4px;padding:14px 12px}.reports-search-empty strong{font-size:.82rem}.reports-search-empty span{color:var(--color-text-muted);font-size:.72rem;line-height:1.45}.reports-category-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.reports-category-pill{display:flex;align-items:center;gap:6px;padding:7px 16px;border-radius:20px;border:1px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .18s ease}.reports-category-pill:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.08))}.reports-category-pill.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.reports-sub-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;flex-wrap:wrap}.reports-sub-pills{display:flex;gap:6px;flex-wrap:wrap}.reports-sub-pill{padding:5px 14px;border-radius:6px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s ease}.reports-sub-pill:hover{background:var(--color-bg-secondary)}.reports-sub-pill.active{background:var(--color-bg-secondary);border-color:var(--color-primary);color:var(--color-primary);font-weight:600}.reports-filter-bar{margin-bottom:20px}.report-guide{overflow:hidden;margin:-4px 0 20px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-secondary)}.report-guide-partial{border-color:#f59e0b6b}.report-guide-setup-required{border-color:#ef444461}.report-guide-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border:0;background:transparent;color:var(--color-text);text-align:left;cursor:pointer}.report-guide-toggle:hover{background:var(--color-bg)}.report-guide-toggle-main{display:flex;align-items:center;gap:9px}.report-guide-toggle-main>span:last-child{display:flex;align-items:baseline;gap:9px;min-width:0}.report-guide-toggle-main strong{font-size:.8rem;font-weight:650}.report-guide-toggle-main span span{color:var(--color-text-muted);font-size:.7rem}.report-guide-available .report-guide-toggle-main>svg{color:#059669}.report-guide-partial .report-guide-toggle-main>svg{color:#d97706}.report-guide-setup-required .report-guide-toggle-main>svg{color:#dc2626}.report-guide-body{padding:0 14px 14px;border-top:1px solid var(--color-border)}.report-guide-body>p{margin:12px 0 14px;max-width:1100px;color:var(--color-text-secondary);font-size:.78rem;line-height:1.55}.report-guide-groups{display:grid;gap:14px}.report-guide-group h3{margin:0 0 7px;color:var(--color-text);font-size:.77rem;font-weight:650}.report-guide-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.report-guide-table{width:100%;min-width:760px;border-collapse:collapse;font-size:.72rem;line-height:1.45}.report-guide-table th{padding:8px 10px;background:var(--color-bg);color:var(--color-text-muted);font-size:.64rem;font-weight:700;letter-spacing:.04em;text-align:left;text-transform:uppercase}.report-guide-table td{padding:9px 10px;border-top:1px solid var(--color-border);color:var(--color-text-secondary);vertical-align:top}.report-guide-table td:first-child{width:24%;color:var(--color-text);font-weight:600}.report-guide-table td:last-child{width:22%;color:var(--color-text-muted)}.report-guide-row-partial td{background:#f59e0b0e}.report-guide-row-setup-required td{background:#ef44440b}.report-guide-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px}.report-guide-actions>span{display:inline-flex;align-items:center;gap:6px;margin-right:2px;color:var(--color-text-secondary);font-size:.72rem;font-weight:600}.report-prerequisite-empty{display:flex;align-items:flex-start;gap:14px;padding:22px;border:1px dashed rgba(245,158,11,.58);border-radius:10px;background:#f59e0b0e}.report-prerequisite-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:42px;height:42px;border-radius:10px;background:#f59e0b24;color:#d97706}.report-prerequisite-empty h3{margin:0 0 6px;color:var(--color-text);font-size:.95rem}.report-prerequisite-empty p{max-width:720px;margin:0;color:var(--color-text-secondary);font-size:.78rem;line-height:1.55}.report-prerequisite-actions,.report-inline-empty{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.report-prerequisite-actions{margin-top:14px}.report-prerequisite-actions .btn,.report-inline-empty .btn{display:inline-flex;align-items:center;gap:6px}.report-inline-empty{justify-content:center;padding:26px 12px;color:var(--color-text-muted)}@media(max-width:840px){.reports-header{align-items:flex-start}.reports-header-main{align-items:flex-start;flex-direction:column;gap:10px}.reports-search{width:min(520px,calc(100vw - 96px));min-width:0}}.report-date-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.report-date-presets{display:flex;gap:4px}.report-date-preset{padding:4px 12px;border-radius:4px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);font-size:.72rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.report-date-preset:hover{background:var(--color-bg-secondary);border-color:var(--color-primary)}.report-date-preset.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.report-date-custom{display:flex;align-items:center;gap:6px}.report-date-range-label{font-size:.72rem;color:var(--color-text-muted);padding:4px 10px;background:var(--color-bg-secondary);border-radius:4px;border:1px solid var(--color-border)}.reports-date-controls{display:flex;align-items:center;gap:8px}.reports-date-input{padding:5px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);font-size:.78rem;font-family:inherit}.reports-date-sep{color:var(--color-text-muted);font-size:.8rem}.reports-content{animation:reportFadeIn .2s ease}@keyframes reportFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.report-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-bottom:24px}.report-kpi-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:4px}.report-kpi-label{font-size:.72rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.report-kpi-value{font-size:1.35rem;font-weight:700;color:var(--color-text)}.report-kpi-sub{font-size:.72rem;color:var(--color-text-secondary)}.report-table-wrap{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.report-table-header{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--color-border)}.report-table-header h3{font-size:.88rem;font-weight:600}.report-table{width:100%;border-collapse:collapse;font-size:.8rem}.report-table th{padding:10px 14px;text-align:left;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);background:var(--color-bg-tertiary, var(--color-bg));border-bottom:1px solid var(--color-border)}.report-table td{padding:10px 14px;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary)}.report-table tr:last-child td{border-bottom:none}.report-table tr:hover td{background:var(--color-bg-hover, rgba(0,0,0,.02))}.manager-flash-report{display:flex;flex-direction:column;gap:18px;color:var(--color-text)}.manager-flash-loading{min-height:220px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--color-text-secondary)}.manager-flash-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:20px 22px;overflow:hidden;border:1px solid #bae6fd;border-radius:16px;background:radial-gradient(circle at 90% 15%,rgba(56,189,248,.18),transparent 30%),linear-gradient(135deg,#f0f9ff,#fff 58%,#f8fafc)}.manager-flash-hero h2{margin:4px 0;font-size:1.4rem;letter-spacing:-.02em}.manager-flash-hero p{margin:0;max-width:620px;color:var(--color-text-secondary);font-size:.78rem}.manager-flash-eyebrow{color:#0284c7;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.manager-flash-asof{display:grid;grid-template-columns:auto auto;gap:1px 8px;min-width:150px;padding:10px 13px;border:1px solid #e0f2fe;border-radius:11px;background:#ffffffd9;color:#0369a1}.manager-flash-asof svg{grid-row:1 / span 2;align-self:center}.manager-flash-asof span{color:var(--color-text-muted);font-size:.64rem;text-transform:uppercase}.manager-flash-asof strong{font-size:.76rem}.manager-flash-highlights{display:grid;grid-template-columns:repeat(4,minmax(155px,1fr));gap:10px}.manager-flash-highlight{min-height:112px;padding:14px 16px;display:flex;flex-direction:column;justify-content:center;gap:4px;border:1px solid var(--color-border);border-radius:13px;background:var(--color-bg-secondary);box-shadow:0 1px 2px #0f172a08}.manager-flash-highlight.primary{grid-column:span 2;color:#f8fafc;border-color:#0284c7;background:radial-gradient(circle at 90% -10%,rgba(255,255,255,.24),transparent 38%),linear-gradient(135deg,#0284c7,#0369a1)}.manager-flash-highlight.movement{grid-column:span 2;display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:14px}.manager-flash-highlight>span,.manager-flash-highlight>div>span{color:var(--color-text-muted);font-size:.67rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.manager-flash-highlight.primary>span,.manager-flash-highlight.primary small{color:#ffffffc2}.manager-flash-highlight strong{font-size:1.28rem;letter-spacing:-.025em}.manager-flash-highlight.primary strong{font-size:1.7rem}.manager-flash-highlight small{color:var(--color-text-muted);font-size:.68rem;font-weight:500}.manager-flash-highlight-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#0284c7;background:#e0f2fe}.manager-flash-highlight.primary .manager-flash-highlight-icon{color:#fff;background:#ffffff2e}.manager-flash-change{width:fit-content;display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-size:.67rem;font-weight:700}.manager-flash-change.positive{color:#16a34a}.manager-flash-change.negative{color:#dc2626}.manager-flash-change.muted{color:var(--color-text-muted)}.manager-flash-highlight.primary .manager-flash-change{color:#ffffffdb}.manager-flash-options{display:grid;grid-template-columns:minmax(190px,.55fr) minmax(480px,2fr);gap:18px;padding:14px 16px;border:1px solid var(--color-border);border-radius:13px;background:var(--color-bg-secondary)}.manager-flash-options-heading{display:flex;align-items:flex-start;gap:9px;color:#0369a1}.manager-flash-options-heading div{display:flex;flex-direction:column;gap:2px}.manager-flash-options-heading strong{color:var(--color-text);font-size:.78rem}.manager-flash-options-heading span{color:var(--color-text-muted);font-size:.66rem}.manager-flash-option-grid{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.manager-flash-option{position:relative;display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg);color:var(--color-text-secondary);cursor:pointer;font-size:.67rem;font-weight:600;transition:border-color .12s ease,background .12s ease}.manager-flash-option:hover{border-color:#7dd3fc;background:#f0f9ff}.manager-flash-option input{position:absolute;width:1px;height:1px;opacity:0}.manager-flash-option-switch{width:24px;height:14px;padding:2px;display:inline-flex;align-items:center;border-radius:999px;background:#cbd5e1;transition:background .12s ease}.manager-flash-option-switch:after{content:"";width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0f172a3d;transition:transform .12s ease}.manager-flash-option input:checked+.manager-flash-option-switch{background:#0ea5e9}.manager-flash-option input:checked+.manager-flash-option-switch:after{transform:translate(10px)}.manager-flash-option:has(input:focus-visible){outline:2px solid #38bdf8;outline-offset:2px}.manager-flash-section-stack{display:flex;flex-direction:column;gap:14px}.manager-flash-matrix-card{overflow:hidden;border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg-secondary)}.manager-flash-matrix-title{min-height:52px;padding:11px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--color-border)}.manager-flash-matrix-title>div{display:flex;align-items:center;gap:9px}.manager-flash-matrix-title h3{margin:0;font-size:.85rem}.manager-flash-matrix-title>span{color:var(--color-text-muted);font-size:.68rem}.manager-flash-table-scroll,.manager-flash-inner-scroll{overflow-x:auto}.manager-flash-table{width:100%;min-width:1120px;border-collapse:collapse;table-layout:fixed}.manager-flash-table th,.manager-flash-table td{border-bottom:1px solid var(--color-border)}.manager-flash-table th{padding:9px 11px;color:var(--color-text-muted);background:var(--color-bg-tertiary, #f8fafc);font-size:.64rem;font-weight:700;letter-spacing:.035em;text-align:right;text-transform:uppercase}.manager-flash-table th:first-child{width:54px;text-align:center}.manager-flash-table th:nth-child(2){width:330px;text-align:left}.manager-flash-table th span,.manager-flash-table th small{display:block}.manager-flash-table th small{margin-top:2px;color:#94a3b8;font-size:.57rem;font-weight:500;letter-spacing:0;text-transform:none}.manager-flash-year-row th[colspan]{color:#fff;text-align:center;background:#0284c7}.manager-flash-year-row th[colspan]:last-child{background:#475569}.manager-flash-metric-row{cursor:pointer;transition:background .1s ease}.manager-flash-metric-row:hover,.manager-flash-metric-row:focus-visible{outline:none;background:#f0f9ff}.manager-flash-metric-row.expanded{background:#f0f9ff}.manager-flash-metric-row td{padding:9px 11px;color:var(--color-text-secondary);font-size:.73rem;text-align:right;font-variant-numeric:tabular-nums}.manager-flash-metric-row td:nth-child(2){text-align:left}.manager-flash-metric-row td:nth-child(2) strong,.manager-flash-metric-row td:nth-child(2) small{display:block}.manager-flash-metric-row td:nth-child(2) strong{color:var(--color-text);font-size:.73rem}.manager-flash-metric-row td:nth-child(2) small{margin-top:2px;color:#94a3b8;font-size:.6rem}.manager-flash-metric-row td.percentage{color:#0369a1;font-weight:700}.manager-flash-rank{padding:0!important;text-align:center!important}.manager-flash-rank button{width:100%;min-height:43px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:#0284c7;cursor:pointer;font:inherit}.manager-flash-rank button span{min-width:16px;color:var(--color-text-secondary)}.manager-flash-detail-row>td{padding:0;border-bottom:1px solid #bae6fd;background:#f8fcff}.manager-flash-drilldown{margin:12px 14px 14px 66px;overflow:hidden;border:1px solid #bae6fd;border-radius:12px;background:var(--color-bg-secondary);box-shadow:0 8px 24px #0e74900f}.manager-flash-drilldown-heading{min-height:53px;padding:9px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e0f2fe;background:linear-gradient(90deg,#f0f9ff,#fff)}.manager-flash-drilldown-heading>div:first-child{display:flex;align-items:center;gap:8px}.manager-flash-drilldown-heading>div:first-child>span:last-child{color:var(--color-text-muted);font-size:.65rem}.manager-flash-period-tabs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.manager-flash-period-tabs button{padding:5px 8px;border:1px solid var(--color-border);border-radius:7px;background:#fff;color:var(--color-text-secondary);cursor:pointer;font-size:.61rem;font-weight:650}.manager-flash-period-tabs button:hover{border-color:#7dd3fc}.manager-flash-period-tabs button.active{color:#fff;border-color:#0284c7;background:#0284c7}.manager-flash-lazy-state{min-height:82px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--color-text-muted);font-size:.72rem}.manager-flash-lazy-state.error{color:#dc2626}.manager-flash-inner-table{width:100%;min-width:860px;border-collapse:collapse}.manager-flash-inner-table th,.manager-flash-inner-table td{padding:8px 10px;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.68rem;text-align:left}.manager-flash-inner-table th{color:#64748b;background:#f8fafc;font-size:.59rem;letter-spacing:.035em;text-transform:uppercase}.manager-flash-inner-table th:first-child,.manager-flash-inner-table td:first-child{width:42px;color:#0284c7;text-align:center}.manager-flash-inner-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.manager-flash-inner-table tbody tr:last-child td{border-bottom:0}.report-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:2px solid var(--color-border)}.report-tab{padding:8px 18px;border:none;background:transparent;color:var(--color-text-secondary);font-size:.78rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s ease}.report-tab:hover{color:var(--color-text)}.report-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.contribution-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--color-border)}.contribution-bar-segment{transition:width .3s ease;min-width:2px}.company-contribution-sections{display:grid;gap:20px}.company-contribution-section-header{align-items:center;gap:16px}.company-contribution-section-header>div:first-child{display:flex;align-items:center;gap:9px}.company-contribution-section-header h3{margin:0}.company-contribution-level-label,.company-contribution-level-marker{display:inline-flex;align-items:center;width:max-content;border:1px solid color-mix(in srgb,var(--color-primary) 22%,transparent);border-radius:999px;padding:2px 7px;background:color-mix(in srgb,var(--color-primary) 7%,var(--color-bg-secondary));color:var(--color-primary);font-size:.58rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.company-contribution-period-total{display:flex;align-items:center;justify-content:flex-end;gap:14px;color:var(--color-text-muted);font-size:.72rem}.company-contribution-period-total strong{color:var(--color-text);font-size:.82rem}.company-contribution-table-scroll{overflow-x:auto}.company-contribution-table{min-width:900px;font-variant-numeric:tabular-nums}.company-contribution-table th.numeric,.company-contribution-table td.numeric{text-align:right;font-variant-numeric:tabular-nums}.company-contribution-clickable-row{cursor:pointer}.company-contribution-clickable-row:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.report-table tr.company-contribution-group-row td{background:linear-gradient(90deg,color-mix(in srgb,var(--color-primary) 6%,var(--color-bg-secondary)),var(--color-bg-secondary));color:var(--color-text);font-weight:600;border-top:1px solid var(--color-border)}.company-contribution-expand{display:inline-flex;align-items:center;gap:6px;border:0;padding:3px 5px;margin:-3px -5px;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font:inherit;font-weight:650;cursor:pointer}.company-contribution-expand:hover{background:color-mix(in srgb,var(--color-primary) 8%,transparent);color:var(--color-primary)}.company-contribution-expand svg{color:var(--color-primary);flex:0 0 auto}.company-contribution-expand.level-company{color:var(--color-text-secondary);font-weight:600}.company-contribution-expand.level-booking{display:inline-flex;color:var(--color-primary);font-family:var(--font-mono, monospace);font-size:.72rem;font-weight:700}.company-contribution-expand.expand-rank{gap:3px;margin-inline:-4px;padding-inline:4px;color:var(--color-text-muted);font-family:inherit;font-size:inherit;font-weight:700}.company-contribution-expand.expand-rank svg{width:14px;height:14px}.company-contribution-group-count{color:var(--color-text-muted)!important;font-weight:500!important}.company-contribution-rank{width:54px;color:var(--color-text-muted)!important;font-weight:700!important}.company-contribution-booking-reference{display:inline-block;color:var(--color-primary);font-family:var(--font-mono, monospace);font-size:.72rem;font-weight:700}.company-contribution-company-name{color:var(--color-text-secondary);font-weight:600}.company-contribution-company-row td{background:var(--color-bg-secondary)}.company-contribution-level-two-heading>td{padding:0!important;background:var(--color-bg-secondary)!important}.company-contribution-level-two-heading .company-contribution-nested-heading{min-height:42px;border-top:1px solid var(--color-border)}.company-contribution-level-two-columns td{padding:7px 12px!important;border-bottom:1px solid var(--color-border)!important;background:var(--color-bg-tertiary, var(--color-bg))!important;color:var(--color-text-muted)!important;font-size:.59rem!important;font-weight:750!important;letter-spacing:.035em;text-transform:uppercase}.company-contribution-company-row td:first-child{box-shadow:inset 3px 0 color-mix(in srgb,var(--color-primary) 35%,transparent)}.company-contribution-company-row .company-contribution-level-marker{margin-left:22px;border-color:var(--color-border);background:var(--color-bg);color:var(--color-text-muted)}.company-contribution-nested-row>td,.company-contribution-detail-row>td{padding:0!important;background:var(--color-bg)!important}.company-contribution-booking-panel{margin:10px 14px 14px 72px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-secondary);box-shadow:0 8px 24px color-mix(in srgb,var(--color-text) 5%,transparent)}.report-booking-drilldown{margin:0}.company-contribution-nested-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:46px;padding:9px 13px;border-bottom:1px solid var(--color-border-light);background:color-mix(in srgb,var(--color-primary) 4%,var(--color-bg-secondary));color:var(--color-text-muted);font-size:.69rem}.company-contribution-nested-heading>div{display:flex;align-items:center;gap:8px}.company-contribution-nested-heading strong{color:var(--color-text);font-size:.76rem}.company-contribution-nested-heading.compact{min-height:40px;border:0;border-radius:var(--radius-md) var(--radius-md) 0 0;padding:7px 10px}.company-contribution-inner-scroll{overflow-x:auto}.company-contribution-inner-table{width:100%;border-collapse:collapse;color:var(--color-text-secondary);font-size:.68rem;font-variant-numeric:tabular-nums}.company-contribution-inner-table th{padding:8px 10px;border-bottom:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);font-size:.59rem;font-weight:750;letter-spacing:.035em;text-align:left;text-transform:uppercase;white-space:nowrap}.company-contribution-inner-table td{padding:8px 10px;border-bottom:1px solid var(--color-border-light);background:var(--color-bg-secondary);white-space:nowrap}.company-contribution-inner-table td.numeric,.company-contribution-inner-table th.numeric{text-align:right}.company-contribution-inner-table tbody tr:last-child td{border-bottom:0}.company-contribution-booking-row:hover td{background:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg-secondary))}.company-contribution-detail-row>td{border-bottom:1px solid var(--color-border)!important}.company-contribution-booking-detail{margin:8px 12px 12px 44px;padding:8px;border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--color-border));border-radius:var(--radius-lg);background:var(--color-bg)}.company-contribution-detail-stack{display:grid;gap:8px}.company-contribution-folio{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary)}.company-contribution-folio-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-bottom:1px solid var(--color-border-light);color:var(--color-text-muted);font-size:.66rem}.company-contribution-folio-header>div,.company-contribution-folio-totals{display:flex;align-items:center;gap:8px}.company-contribution-folio-header strong{color:var(--color-text)}.company-contribution-level-number{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 12%,var(--color-bg));color:var(--color-primary);font-weight:750}.company-contribution-detail-hint{display:block;margin-top:3px;padding-left:21px;color:var(--color-text-muted);font-size:.58rem}.company-contribution-status{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--color-border);border-radius:999px;padding:2px 6px;background:var(--color-bg);color:var(--color-text-muted);font-size:.58rem;font-weight:650}.company-contribution-status.posted{border-color:color-mix(in srgb,var(--color-success) 35%,var(--color-border));color:var(--color-success)}.company-contribution-status.pending{color:var(--color-warning, #b7791f)}.company-contribution-estimate-note{border:1px solid color-mix(in srgb,var(--color-warning, #b7791f) 30%,var(--color-border));border-radius:var(--radius-md);padding:8px 10px;background:color-mix(in srgb,var(--color-warning, #b7791f) 7%,var(--color-bg));color:var(--color-text-secondary);font-size:.65rem}.company-contribution-lazy-row>td{padding:0!important;background:var(--color-bg-secondary)!important}.company-contribution-lazy-state{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:10px;color:var(--color-text-muted);font-size:.68rem}.company-contribution-lazy-state.error{color:var(--color-danger)}.company-contribution-spinner{width:14px;height:14px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:company-contribution-spin .7s linear infinite}.company-contribution-inner-table .credit{color:var(--color-success)}@keyframes company-contribution-spin{to{transform:rotate(360deg)}}.company-contribution-empty{height:110px;text-align:center;color:var(--color-text-muted)!important}.company-contribution-inline-error{margin-bottom:14px}.daily-sales-table{min-width:820px}.daily-sales-table .company-contribution-nested-row>td{padding:12px!important}.daily-sales-table .report-booking-drilldown{border-color:color-mix(in srgb,var(--color-primary) 18%,var(--color-border))}.revenue-ledger-table{min-width:900px}.revenue-ledger-category-cell{min-width:190px;padding-top:12px!important;padding-bottom:12px!important}.revenue-ledger-category-cell>strong{display:block;line-height:1.25}.revenue-ledger-category-note{display:block;margin-top:6px;color:var(--color-text-muted);font-size:.62rem;font-weight:450;line-height:1.35}.revenue-folio-table{min-width:1080px}.revenue-ledger-secondary{display:block;margin-top:2px;color:var(--color-text-muted);font-family:var(--font-mono, monospace);font-size:.58rem;font-weight:500}.revenue-ledger-detail{margin:9px 12px 12px 44px;overflow:hidden;border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--color-border));border-radius:var(--radius-lg);background:var(--color-bg)}.revenue-ledger-detail-heading{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.revenue-ledger-folio-meta{display:flex;flex-wrap:wrap;gap:8px 18px;padding:8px 12px;border-bottom:1px solid var(--color-border-light);color:var(--color-text-muted);font-size:.64rem}.revenue-ledger-selection-note{display:flex;align-items:center;gap:8px;padding:9px 14px;border-top:1px solid color-mix(in srgb,var(--color-primary) 14%,var(--color-border));border-bottom:1px solid color-mix(in srgb,var(--color-primary) 14%,var(--color-border));color:var(--color-text-secondary);background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg));font-size:12px}.revenue-ledger-selection-note>span{width:10px;height:10px;flex:0 0 auto;border-radius:3px;background:color-mix(in srgb,var(--color-primary) 34%,white);box-shadow:inset 3px 0 0 var(--color-primary)}.folio-lines tr.revenue-ledger-considered-line>td{background:color-mix(in srgb,var(--color-primary) 9%,var(--color-bg))}.folio-lines tr.revenue-ledger-considered-line>td:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.revenue-ledger-considered-badge{display:inline-flex;margin-left:8px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--color-primary) 30%,var(--color-border));border-radius:999px;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,white);font-size:10px;font-weight:700;line-height:1.4;text-transform:uppercase;letter-spacing:.035em}.revenue-ledger-empty{height:110px;text-align:center;color:var(--color-text-muted)!important}.history-forecast-table-scroll{overflow-x:auto}.history-forecast-table{min-width:1960px;font-variant-numeric:tabular-nums}.history-forecast-table th.numeric,.history-forecast-table td.numeric{text-align:right}.history-forecast-table th:first-child,.history-forecast-table td:first-child{width:52px;min-width:52px}.history-forecast-table th:nth-child(2),.history-forecast-table td:nth-child(2){min-width:190px;white-space:nowrap}.history-forecast-table th:nth-child(3){min-width:206px}.history-forecast-table th:nth-child(7),.history-forecast-table th:nth-child(10){min-width:140px}.history-forecast-date{color:var(--color-text)!important;font-weight:500}.report-table tr.history-forecast-section-row td{padding-top:9px;padding-bottom:9px;color:var(--color-text);font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.report-table tr.history-forecast-section-row.history td{background:color-mix(in srgb,var(--color-info, #0ea5e9) 10%,var(--color-bg-secondary));color:var(--color-info, #0369a1)}.report-table tr.history-forecast-section-row.forecast td{background:color-mix(in srgb,#8b5cf6 10%,var(--color-bg-secondary));color:#7c3aed}.report-table tr.history-forecast-subtotal-row td{background:var(--color-bg-tertiary, var(--color-bg));color:var(--color-text);font-weight:650;border-top:1px solid var(--color-border)}.history-forecast-bookings-row>td{padding:12px 14px 16px!important;background:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg))!important}.history-forecast-total-card{margin-top:2px}.report-table tr.history-forecast-total-row td{background:var(--color-bg-tertiary, var(--color-bg));color:var(--color-text);font-weight:750;border-top:2px solid var(--color-border)}.history-forecast-inclusion-note{padding:11px 18px;border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:.72rem;line-height:1.45}.report-booking-inclusions{min-width:180px}.report-booking-inclusions strong,.report-booking-inclusions span,.report-booking-inclusions small{display:block}.report-booking-inclusions span{margin-top:3px;color:var(--color-text);font-size:.72rem;font-weight:500}.report-booking-inclusions small{margin-top:2px;color:var(--color-text-muted);font-size:.64rem;line-height:1.35}.history-forecast-inline-error{margin-bottom:14px}@media(max-width:700px){.company-contribution-section-header{align-items:flex-start;flex-direction:column}.company-contribution-period-total{flex-wrap:wrap;justify-content:flex-start}}.report-status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.report-status-dot.success{background:#22c55e}.report-status-dot.warning{background:#f59e0b}.report-status-dot.danger{background:#ef4444}.report-status-dot.info{background:#6366f1}.report-table tr.report-summary-row td{background:var(--color-bg-tertiary, var(--color-bg));font-weight:700;border-top:2px solid var(--color-border)}.report-table tr.report-group-header td{background:var(--color-bg-tertiary, var(--color-bg));font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.salesperson-report-tables{display:grid;gap:18px}.salesperson-name-cell{display:inline-flex;align-items:center;gap:6px}.salesperson-expand-rank{display:inline-flex;align-items:center;gap:3px;color:var(--color-text-muted);font-weight:700}.salesperson-expand-rank svg{flex:0 0 auto;color:var(--color-primary)}.salesperson-name-cell>span{display:inline-flex;flex-direction:column;gap:1px}.salesperson-name-cell>svg{flex:0 0 auto;color:var(--color-primary)}.salesperson-name-cell small{color:var(--color-text-muted);font-size:.65rem}.salesperson-export-error{color:#dc2626;font-size:.72rem}.reports-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 20px;color:var(--color-text-muted);text-align:center}.reports-empty-state h2{font-size:1.1rem;font-weight:600;color:var(--color-text-secondary)}.reports-empty-state p{font-size:.85rem}.report-loading{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--color-text-muted);font-size:.85rem}.report-error{padding:20px;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:var(--color-text);font-size:.85rem}.report-data-rule{display:flex;align-items:center;gap:10px;margin:16px 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--color-primary) 22%,var(--color-border));border-radius:10px;background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg));color:var(--color-text-secondary);font-size:.75rem;line-height:1.5}.report-data-rule strong{flex:0 0 auto;color:var(--color-text)}.report-data-rule span{flex:1 1 auto}.report-data-rule-warning{border-color:color-mix(in srgb,#f59e0b 35%,var(--color-border));background:color-mix(in srgb,#f59e0b 7%,var(--color-bg))}.report-inline-actions{display:inline-flex;flex-wrap:wrap;gap:8px}.report-wide-table{min-width:1120px}.report-cell-subtitle{display:block;margin-top:2px;color:var(--color-text-muted);font-size:.64rem;font-weight:500;line-height:1.35}.report-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:3px 8px;border-radius:999px;font-size:.65rem;font-weight:700}.report-status-pill.is-positive{background:color-mix(in srgb,#16a34a 12%,var(--color-bg));color:#15803d}.report-status-pill.is-neutral{background:var(--color-bg-tertiary, var(--color-bg));color:var(--color-text-muted)}.report-not-configured{color:var(--color-text-muted)!important;background-image:repeating-linear-gradient(-45deg,transparent,transparent 5px,color-mix(in srgb,var(--color-border) 24%,transparent) 5px,color-mix(in srgb,var(--color-border) 24%,transparent) 6px)}.inclusion-section{margin-top:16px}@media(max-width:768px){.reports-page{padding:16px}.reports-sub-bar{flex-direction:column;align-items:flex-start}.report-kpi-grid{grid-template-columns:repeat(2,1fr)}.report-date-filter{flex-direction:column;align-items:flex-start}.report-date-presets{flex-wrap:wrap}.manager-flash-hero{align-items:flex-start;flex-direction:column}.manager-flash-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.manager-flash-highlight.primary,.manager-flash-highlight.movement{grid-column:span 2}.manager-flash-options{grid-template-columns:1fr}.manager-flash-drilldown{margin-left:12px}.manager-flash-drilldown-heading{align-items:flex-start;flex-direction:column}.manager-flash-period-tabs{justify-content:flex-start}.report-data-rule{align-items:flex-start;flex-direction:column}}.inv-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.inv-stat-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-1)}.inv-stat-warn{border-color:var(--color-warning);background:var(--color-warning-soft)}.inv-stat-danger{border-color:var(--color-danger);background:var(--color-danger-soft)}.inv-stat-num{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text)}.inv-stat-danger .inv-stat-num{color:var(--color-danger)}.inv-stat-warn .inv-stat-num{color:var(--color-warning)}.inv-stat-label{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.inv-filters{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.inv-filters .room-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:200px;color:var(--color-text-muted)}.inv-filters .room-search input{border:none;background:transparent;font-family:var(--font-family);font-size:var(--text-sm);color:var(--color-text);outline:none;width:100%}.inv-table-wrap{overflow-x:auto}.inv-table{width:100%;border-collapse:collapse}.inv-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary);white-space:nowrap}.inv-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text);white-space:nowrap}.inv-table tbody tr:hover{background:var(--color-bg-tertiary)}.inv-row-low{background:var(--color-warning-soft)}.inv-row-out{background:var(--color-danger-soft)}.inv-item-name{font-weight:var(--font-medium)}.inv-item-unit{font-size:var(--text-xs);color:var(--color-text-muted);margin-left:var(--space-2)}.inv-stock-cell{display:flex;align-items:center;gap:var(--space-2)}.inv-stock-num{font-weight:var(--font-bold);font-size:var(--text-base);display:flex;align-items:center;gap:var(--space-1);min-width:40px}.inv-stock-low{color:var(--color-warning)}.inv-stock-out{color:var(--color-danger)}.inv-adjust-btns{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity var(--transition-fast)}.inv-table tbody tr:hover .inv-adjust-btns{opacity:1}.inv-adjust-custom{font-size:var(--text-xs)!important;font-weight:var(--font-bold)!important}.inv-adjust-inline{display:flex;align-items:center;gap:var(--space-1)}.inv-adjust-inline input{width:60px}.btn-xs{padding:2px 6px;font-size:var(--text-xs)}.justify-end{justify-content:flex-end}.inv-actions{display:flex;gap:var(--space-2)}.inv-dirty-badge{display:inline-flex;align-items:center;gap:var(--space-1);margin-left:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background:#fef3c7;color:#92400e;font-size:var(--text-xs);font-weight:var(--font-semibold)}.inv-message{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-4);animation:fadeIn .3s ease}.inv-message-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.inv-message-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.inv-view-tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-4);border-bottom:2px solid var(--color-border)}.inv-view-tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all .2s ease}.inv-view-tab:hover{color:var(--color-text)}.inv-view-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-semibold)}.inv-date-nav{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.inv-date-range{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);min-width:160px;text-align:center}.inv-loading,.inv-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12);color:var(--color-text-muted);font-size:var(--text-sm)}.inv-grid-wrapper{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.inv-grid-scroll{overflow-x:auto;scrollbar-width:thin}.inv-grid-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-xs)}.inv-grid-th-sticky{position:sticky;left:0;z-index:2;background:var(--color-bg-card);padding:var(--space-2) var(--space-3);font-weight:var(--font-semibold);text-align:left;min-width:140px;border-bottom:2px solid var(--color-border);color:var(--color-text)}.inv-grid-th-date{padding:var(--space-2) var(--space-1);text-align:center;min-width:54px;border-bottom:2px solid var(--color-border);color:var(--color-text-muted);font-weight:var(--font-medium);vertical-align:bottom}.inv-grid-th-date.today{background:#eff6ff;border-bottom-color:var(--color-primary)}.inv-grid-th-date.weekend{background:#f8fafc}.inv-date-day{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.6}.inv-date-num{display:block;font-size:var(--text-base);font-weight:var(--font-bold);color:var(--color-text);line-height:1.2}.inv-date-mon{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.05em;opacity:.5}.inv-grid-td-name{position:sticky;left:0;z-index:1;background:var(--color-bg-card);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}.inv-rt-name{display:block;font-weight:var(--font-semibold);color:var(--color-text);font-size:var(--text-sm);white-space:nowrap}.inv-rt-code{display:block;font-size:10px;color:var(--color-text-muted);letter-spacing:.05em;text-transform:uppercase;margin-top:1px}.inv-grid-td-cell{padding:var(--space-2);text-align:center;border-bottom:1px solid var(--color-border);transition:all .15s ease;cursor:default;position:relative;min-width:54px}.inv-grid-td-cell:hover{box-shadow:inset 0 0 0 2px var(--color-primary);border-radius:2px}.inv-grid-td-cell.empty{color:var(--color-text-muted)}.inv-grid-td-cell.dirty:after{content:"";position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:#3b82f6;box-shadow:0 0 0 2px #bfdbfe}.inv-cell-avail{display:block;font-weight:var(--font-bold);font-size:var(--text-sm);line-height:1.2}.inv-cell-total{display:block;font-size:9px;color:var(--color-text-muted);opacity:.7}.inv-legend{display:flex;gap:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border);margin-top:var(--space-4)}.inv-legend-item{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.inv-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.inv-events-wrapper{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.inv-events-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.inv-filter-group{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted)}.inv-filter-select{min-width:180px;font-size:var(--text-sm)}.inv-events-list{display:flex;flex-direction:column;gap:var(--space-2)}.inv-event-card{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:background .15s ease}.inv-event-card:hover{background:var(--color-bg-tertiary)}.inv-event-icon{width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.inv-event-body{flex:1;min-width:0}.inv-event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.inv-event-type{font-weight:var(--font-semibold);font-size:var(--text-sm)}.inv-event-delta{font-size:var(--text-xs);font-weight:var(--font-bold);padding:2px 8px;border-radius:var(--radius-full)}.inv-event-delta.positive{background:#f0fdf4;color:#166534}.inv-event-delta.negative{background:#fef2f2;color:#991b1b}.inv-event-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);flex-wrap:wrap}.inv-event-source{font-family:monospace;background:var(--color-bg-tertiary);padding:1px 4px;border-radius:2px;font-size:11px}.inv-event-time{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.inv-event-time svg{opacity:.5}@media(max-width:768px){.inv-actions{flex-direction:column}.inv-legend{flex-wrap:wrap;gap:var(--space-2)}.inv-event-card{flex-direction:column}.inv-event-time{flex-direction:row;gap:var(--space-2)}}.ir-page{min-height:80vh;overflow-x:hidden;max-width:100%}.ir-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4)}.ir-filter-group{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary)}.ir-filter-chip{padding:4px 10px;border-radius:14px;border:1px solid var(--color-border);background:var(--color-bg);font-size:var(--text-xs);cursor:pointer;transition:all .15s}.ir-filter-chip:hover{border-color:var(--color-primary)}.ir-filter-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ir-grid-container{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);max-width:100%}.ir-grid{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-sm)}.ir-grid th,.ir-grid td{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:10px 12px;text-align:center;vertical-align:top}.ir-grid th:last-child,.ir-grid td:last-child{border-right:none}.ir-grid tbody tr:last-child td{border-bottom:none}.ir-grid-header-cell{background:var(--color-bg-secondary);font-weight:600;font-size:var(--text-xs);white-space:nowrap;position:sticky;top:0;z-index:2;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.ir-col-icon{margin-right:2px}.ir-grid-label-cell{text-align:left;min-width:180px;width:180px;position:sticky;left:0;background:var(--color-bg);z-index:3;box-shadow:2px 0 4px #0000000a}.ir-grid-cell{min-width:120px;vertical-align:middle}.ir-rp-label{display:flex;flex-direction:column;gap:1px}.ir-rp-name{font-weight:600;font-size:var(--text-sm)}.ir-rp-rt{font-size:.7rem;color:var(--color-text-muted)}.ir-restriction-entry{display:flex;align-items:center;gap:6px;justify-content:center;padding:3px 0;flex-wrap:wrap}.ir-restriction-entry+.ir-restriction-entry{border-top:1px dashed var(--color-border);margin-top:4px;padding-top:6px}.ir-restriction-value{font-weight:600;font-size:var(--text-sm);color:var(--color-text)}.ir-restriction-dates{font-size:.65rem;color:var(--color-text-muted);background:var(--color-bg-secondary);padding:1px 6px;border-radius:8px}.ir-channel-badge{font-size:.6rem;font-weight:600;padding:1px 5px;border-radius:6px;text-transform:uppercase}.ir-channel-ota{background:#3b82f61a;color:#3b82f6}.ir-channel-direct{background:#22c55e1a;color:#22c55e}.ir-empty{color:var(--color-text-muted);font-size:var(--text-sm)}.ir-del-btn{background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:2px;border-radius:4px;opacity:.5;transition:all .15s;display:flex;align-items:center}.ir-del-btn:hover{opacity:1;color:#ef4444;background:#ef444414}.ir-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}.ir-modal{background:var(--color-bg);border-radius:var(--radius-lg);padding:var(--space-5);width:520px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.ir-modal h2{font-size:var(--text-lg);margin-bottom:var(--space-4)}.ir-form-group{margin-bottom:var(--space-3)}.ir-form-group label{display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:4px;color:var(--color-text-secondary)}.ir-form-group select,.ir-form-group input[type=number],.ir-form-group input[type=date]{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);font-size:var(--text-sm);color:var(--color-text)}.ir-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.ir-rp-picker{max-height:200px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2)}.ir-rp-pick-item{display:flex;align-items:center;gap:var(--space-2);padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);transition:background .1s}.ir-rp-pick-item:hover{background:var(--color-bg-secondary)}.ir-rp-pick-item.selected{background:rgba(var(--color-primary-rgb, 59, 130, 246),.08)}.ir-rp-rt-small{font-size:.65rem;color:var(--color-text-muted);margin-left:auto}.ir-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4)}.guest-search-bar{display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.guest-table-wrap{overflow-x:auto}.guest-table{width:100%;border-collapse:collapse}.guest-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary);white-space:nowrap}.guest-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text);white-space:nowrap}.guest-row{cursor:pointer;transition:background var(--transition-fast)}.guest-row:hover{background:var(--color-bg-tertiary)}.guest-name{font-weight:var(--font-semibold);color:var(--color-text)}.guest-contact{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-secondary)}.guest-booking-count{font-weight:var(--font-bold);color:var(--color-primary)}.guest-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-top:var(--space-5)}.guest-pagination-info{font-size:var(--text-sm);color:var(--color-text-muted)}.duplicate-warning{border:1px solid var(--color-warning);border-radius:var(--radius-md);background:var(--color-warning-soft);overflow:hidden}.duplicate-warning-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-warning)}.duplicate-list{border-top:1px solid var(--color-warning)}.duplicate-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--transition-fast);font-size:var(--text-sm)}.duplicate-item:hover{background:#0000000d}.duplicate-item+.duplicate-item{border-top:1px solid var(--color-border)}.duplicate-name{font-weight:var(--font-medium);color:var(--color-text)}.guest-profile-grid{display:grid;grid-template-columns:280px 1fr;gap:var(--space-6);align-items:start}@media(max-width:900px){.guest-profile-grid{grid-template-columns:1fr}}.guest-sidebar{display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:var(--space-4)}.guest-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.guest-card-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.guest-avatar{width:56px;height:56px;border-radius:var(--radius-full);background:var(--color-brand-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);font-weight:var(--font-bold);flex-shrink:0}.guest-card-name{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text);line-height:1.2}.guest-card-sub{font-size:var(--text-sm);color:var(--color-text-muted)}.guest-info-list{display:flex;flex-direction:column;gap:var(--space-3)}.guest-info-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary)}.guest-info-item svg{color:var(--color-text-muted);flex-shrink:0}.dnr-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--color-danger-soft);border:1px solid var(--color-danger);border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--text-sm);font-weight:var(--font-semibold)}.guest-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-5)}.guest-tab{padding:var(--space-3) var(--space-5);border:none;background:transparent;font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast)}.booking-card-list{display:flex;flex-direction:column;gap:var(--space-3)}.booking-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);cursor:pointer;transition:all var(--transition-fast)}.booking-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.booking-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-2)}.booking-conf-num{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--color-primary)}.booking-card-dates{font-size:var(--text-sm);color:var(--color-text-secondary)}.booking-card-rooms{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}.avail-search-bar{display:flex;align-items:flex-end;gap:var(--space-5);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5);box-shadow:var(--shadow-sm)}.avail-search-field{display:flex;flex-direction:column;gap:4px}.avail-search-field label{font-size:.7rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.avail-search-field input[type=date]{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 12px;font-size:.82rem;font-family:var(--font-family);color:var(--color-text);background:var(--color-bg-secondary);outline:none;transition:border-color .15s}.avail-search-field input[type=date]:focus{border-color:var(--color-primary)}.avail-search-counter{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg-secondary)}.avail-search-counter button{width:32px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;font-size:1rem;font-weight:600;color:var(--color-primary);transition:background .12s}.avail-search-counter button:hover:not(:disabled){background:var(--color-brand-light)}.avail-search-counter button:disabled{opacity:.3;cursor:not-allowed}.avail-search-counter span{min-width:28px;text-align:center;font-size:.88rem;font-weight:600;color:var(--color-text)}.avail-search-btn{height:36px;white-space:nowrap;margin-left:auto}.avail-results-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-5);box-shadow:var(--shadow-sm)}.avail-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.avail-results-header h3{font-size:var(--text-base);font-weight:700;color:var(--color-text);display:flex;align-items:center;gap:var(--space-2);margin:0}.avail-results-dates{font-size:.75rem;font-weight:500;color:var(--color-text-muted);margin-left:var(--space-2)}.avail-results-empty{text-align:center;padding:var(--space-6) 0;color:var(--color-text-muted);font-size:var(--text-sm)}.avail-results-grid{display:flex;flex-direction:column;gap:var(--space-3)}.avail-result-card{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.avail-result-card:hover:not(.sold-out){border-color:var(--color-primary);box-shadow:0 0 0 2px #6366f114}.avail-result-card.sold-out{opacity:.55}.avail-result-info{min-width:180px}.avail-result-name{font-weight:600;font-size:var(--text-sm);color:var(--color-text);margin-bottom:2px}.avail-result-meta{display:flex;gap:var(--space-2);font-size:.72rem;color:var(--color-text-muted)}.avail-result-stats{display:flex;gap:var(--space-5);flex:1}.avail-result-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.avail-result-stat-val{font-size:var(--text-lg);font-weight:700}.avail-result-stat-label{font-size:10px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.avail-result-action{margin-left:auto}.avail-sold-out-badge{display:inline-block;padding:4px 12px;border-radius:var(--radius-full);font-size:.72rem;font-weight:600;color:var(--color-danger);background:var(--color-danger-soft)}.bookings-header-actions{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex-wrap:wrap}.bookings-search-wrap{position:relative;display:flex;align-items:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-3);width:240px;min-width:0;flex:0 1 240px;transition:border-color .15s,box-shadow .15s}.bookings-search-wrap:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #04adef1a}.bookings-search-icon{color:var(--color-text-muted);flex-shrink:0}.bookings-search-input{border:none;background:transparent;font-family:var(--font-family);font-size:var(--text-sm);color:var(--color-text);outline:none;width:100%;padding:7px 6px}.bookings-search-input::placeholder{color:var(--color-text-muted)}.bookings-search-clear{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:var(--radius-full);border:none;background:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:pointer;flex-shrink:0;transition:all .12s}.bookings-search-clear:hover{background:var(--color-danger-soft);color:var(--color-danger)}.bookings-more-filters-btn{display:flex;align-items:center;gap:5px;position:relative;white-space:nowrap}.bookings-more-filters-btn.active{color:var(--color-primary);background:var(--color-brand-light)}.filter-badge{width:6px;height:6px;border-radius:50%;background:var(--color-primary);position:absolute;top:4px;right:4px}.bookings-filters-bar{display:flex;align-items:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4);box-shadow:var(--shadow-sm);flex-wrap:wrap;animation:filterBarIn .2s ease both}@keyframes filterBarIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.bookings-filter-group{display:flex;flex-direction:column;gap:3px}.bookings-filter-group label{font-size:.68rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.bookings-filter-group .select-sm,.bookings-filter-group .input-sm{min-width:120px}.bookings-filter-group input[type=date]{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:6px 10px;font-size:.78rem;font-family:var(--font-family);color:var(--color-text);background:var(--color-bg-secondary);outline:none;transition:border-color .15s}.bookings-filter-group input[type=date]:focus{border-color:var(--color-primary)}.bookings-clear-filters{color:var(--color-danger)!important}.bookings-filter-actions{display:flex;align-items:flex-end;gap:var(--space-2);margin-left:auto}.bookings-header-actions .select-sm{min-width:0;width:120px;flex:0 0 auto}.bookings-header-actions .booking-view-toggle{flex:0 0 auto}.bookings-header-actions .btn-primary{flex:0 0 auto;white-space:nowrap}.select-sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);min-width:120px}.booking-source-badge,.booking-payment-pill{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);font-size:.7rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}.booking-pax{display:inline-flex;align-items:center;gap:3px;font-size:.75rem;font-weight:600;color:var(--color-text-secondary)}.booking-meal-badge{display:inline-block;padding:1px 6px;border-radius:var(--radius-sm);font-size:.68rem;font-weight:700;color:var(--color-primary);background:var(--color-brand-light);letter-spacing:.03em}.booking-room-num-badge{display:inline-block;padding:1px 7px;border-radius:var(--radius-sm);font-size:.72rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-soft, #e0f2fe)}.booking-type-tag{display:inline-block;margin-left:4px;padding:0 5px;border-radius:var(--radius-sm);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.booking-type-tag.hourly{color:var(--color-primary);background:var(--color-brand-light)}.booking-table-wrap{overflow-x:auto}.booking-table{width:100%;border-collapse:collapse}.booking-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary);white-space:nowrap}.booking-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s,background .15s}.booking-table th.sortable-th:hover{color:var(--color-text);background:var(--color-bg-secondary)}.sort-arrow{display:inline-block;margin-left:4px;font-size:.65rem;color:var(--color-primary);vertical-align:middle;line-height:1}.booking-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text);white-space:nowrap}.booking-row{cursor:pointer;transition:background var(--transition-fast)}.booking-row:hover{background:var(--color-bg-tertiary)}.booking-conf{font-family:var(--font-mono);font-weight:var(--font-bold);font-size:var(--text-sm);color:var(--color-primary)}.booking-guest-cell{display:flex;align-items:center;gap:var(--space-1)}.booking-guest-name{font-weight:var(--font-medium)}.booking-rooms-cell{display:flex;gap:var(--space-1);flex-wrap:wrap}.booking-status-pill{display:inline-block;padding:2px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.02em}.booking-amount{font-weight:var(--font-semibold);font-family:var(--font-mono);font-size:var(--text-sm)}.booking-wizard{max-width:1080px;margin:0 auto}.wizard-steps{display:flex;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6)}.wizard-step{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted);background:var(--color-bg-tertiary);border:1px solid transparent;transition:all var(--transition-fast)}.wizard-step.active{color:var(--color-primary);background:var(--color-brand-light);border-color:var(--color-primary)}.wizard-step.done{color:var(--color-success);background:var(--color-success-soft)}.wizard-step-num{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:var(--font-bold);background:var(--color-bg-card);border:1px solid var(--color-border)}.wizard-step.active .wizard-step-num{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.wizard-step.done .wizard-step-num{background:var(--color-success);color:#fff;border-color:var(--color-success)}.wizard-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.wizard-card h3{font-size:var(--text-lg);font-weight:var(--font-bold);margin-bottom:var(--space-5);color:var(--color-text)}.wizard-actions{display:flex;justify-content:space-between;margin-top:var(--space-6)}.guest-autocomplete{position:relative}.guest-autocomplete-list{position:absolute;top:100%;left:0;right:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:50;max-height:240px;overflow-y:auto;margin-top:var(--space-1)}.guest-autocomplete-item{padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--transition-fast);display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm)}.guest-autocomplete-item:hover{background:var(--color-bg-tertiary)}.guest-autocomplete-item+.guest-autocomplete-item{border-top:1px solid var(--color-border)}.avail-grid{display:flex;flex-direction:column;gap:var(--space-3)}.avail-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.avail-row:hover{border-color:var(--color-primary)}.avail-row.selected{border-color:#7dd3fc;background:#f8fcff;box-shadow:0 0 0 1px #0ea5e91a,0 10px 28px #0f172a0d}.avail-row.unavailable{opacity:.5;cursor:not-allowed}.avail-name{font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--color-text);min-width:160px}.avail-stats{display:flex;gap:var(--space-4);flex:1}.avail-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.avail-stat-val{font-size:var(--text-lg);font-weight:var(--font-bold)}.avail-stat-label{font-size:10px;color:var(--color-text-muted);text-transform:uppercase}.avail-qty-controls{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.avail-qty-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-bg-card);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-bold);transition:all var(--transition-fast)}.avail-qty-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.avail-qty-btn:disabled{opacity:.3;cursor:not-allowed}.avail-qty-val{font-size:var(--text-lg);font-weight:var(--font-bold);min-width:24px;text-align:center;color:var(--color-primary)}.booking-room-manager{overflow:hidden;border:1px solid #d6dee8;border-radius:6px;background:#fff}.booking-room-manager-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:9px 14px;border-bottom:1px solid #dbe3ec;background:#fff}.booking-room-manager-heading,.booking-room-manager-actions,.booking-room-manager-heading>div,.booking-room-copy-confirm,.booking-room-copy-confirm>div,.booking-room-manager-group-title,.booking-room-manager-group-title>div,.booking-room-manager-quantity,.booking-room-manager-status,.booking-room-editor-toolbar,.booking-room-editor-title>div,.booking-room-editor-actions{display:flex;align-items:center}.booking-room-manager-heading{gap:8px;min-width:0;color:var(--color-primary)}.booking-room-manager-heading>div{align-items:flex-start;flex-direction:column;gap:1px;min-width:0}.booking-room-manager-heading strong{color:#1e293b;font-size:13px}.booking-room-manager-heading span{color:#64748b;font-size:12px;font-weight:var(--font-medium)}.booking-room-manager-actions{justify-content:flex-end;gap:6px;flex-shrink:0}.booking-room-manager-arrow{width:30px;min-width:30px;height:30px;padding:0!important;justify-content:center}.booking-room-manager-groups{display:flex;flex-direction:column;max-height:min(430px,52vh);overflow-y:auto}.booking-room-manager-group{min-width:0;border-top:1px solid #e2e8f0}.booking-room-manager-group:first-child{border-top:0}.booking-room-manager-group-title{justify-content:space-between;gap:8px;min-height:38px;padding:5px 12px 5px 16px;background:#f8fafc;color:#334155;font-size:12px;font-weight:var(--font-semibold)}.booking-room-manager-group-title>div:first-child{gap:8px;min-width:0}.booking-room-manager-group-title strong{overflow:hidden;color:#1e293b;text-overflow:ellipsis;white-space:nowrap}.booking-room-manager-group-title span{color:#64748b;font-weight:var(--font-medium)}.booking-room-manager-quantity{gap:5px;flex-shrink:0}.booking-room-manager-quantity button{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid #cbd5e1;border-radius:50%;background:#fff;color:#475569;cursor:pointer}.booking-room-manager-quantity button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.booking-room-manager-quantity button:disabled{opacity:.35;cursor:not-allowed}.booking-room-manager-quantity>span{min-width:22px;color:#1e293b;text-align:center}.booking-room-manager-columns,.booking-room-manager-item{display:grid;grid-template-columns:minmax(84px,.65fr) minmax(170px,1.25fr) minmax(118px,.85fr) 64px minmax(86px,.7fr) minmax(142px,1fr) 30px;align-items:center;gap:10px}.booking-room-manager-columns{min-height:30px;padding:4px 12px 4px 16px;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:var(--font-semibold)}.booking-room-manager-list{min-width:0}.booking-room-manager-item{width:100%;min-width:0;min-height:44px;padding:6px 12px 6px 16px;border:0;border-top:1px solid #edf1f5;border-radius:0;background:#fff;color:#1e293b;font:inherit;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.booking-room-manager-item:first-child{border-top:0}.booking-room-manager-item:hover{background:#f8fafc}.booking-room-manager-item.active{background:color-mix(in srgb,var(--color-primary) 6%,#fff);box-shadow:inset 3px 0 0 var(--color-primary)}.booking-room-manager-item>span{min-width:0;overflow:hidden;color:#475569;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.booking-room-manager-room strong,.booking-room-manager-price{color:#1e293b!important;font-weight:var(--font-semibold)}.booking-room-manager-item.has-error{background:color-mix(in srgb,var(--color-danger) 4%,#fff)}.booking-room-manager-status{gap:5px;width:max-content;max-width:100%;font-size:11px!important;font-weight:var(--font-semibold)}.booking-room-manager-status.ready{color:#15803d!important}.booking-room-manager-status.warning{color:#9a6700!important}.booking-room-manager-status.danger{color:var(--color-danger)!important}.booking-room-manager-edit{display:inline-flex;align-items:center;justify-content:center;color:#64748b!important}.booking-room-copy-confirm{justify-content:space-between;gap:12px;margin:0 -18px;padding:9px 18px;border-bottom:1px solid color-mix(in srgb,var(--color-primary) 22%,#dbe3ec);background:color-mix(in srgb,var(--color-primary) 5%,#fff);color:#334155;font-size:12px}.booking-room-copy-confirm>span{line-height:1.45}.booking-room-copy-confirm>div{gap:6px;flex-shrink:0}.booking-room-inventory-heading{display:flex;align-items:baseline;gap:8px;padding:10px 2px 0;color:#1e293b;font-size:13px}.booking-room-inventory-heading span{color:#64748b;font-size:12px}.avail-row.booking-room-type-selected-hidden{display:none!important}.booking-room-editor-backdrop{position:fixed;z-index:1190;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;border:0;background:#0f172a57;cursor:default}.avail-row.booking-room-editor-drawer{position:fixed;z-index:1200;top:0;right:0;bottom:0;display:flex!important;width:min(920px,calc(100vw - 56px));height:100dvh;margin:0;padding:0 18px 28px!important;overflow-x:hidden;overflow-y:auto;border:0!important;border-left:1px solid #cbd5e1!important;border-radius:0!important;background:#fff!important;box-shadow:-16px 0 42px #0f172a2e!important;cursor:default}.booking-room-editor-drawer:hover{border-color:#cbd5e1!important}.booking-room-editor-toolbar{position:sticky;z-index:5;top:0;justify-content:space-between;gap:14px;min-height:62px;margin:0 -18px;padding:9px 18px;border-bottom:1px solid #dbe3ec;background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.booking-room-editor-title{min-width:0}.booking-room-editor-title>span{display:block;overflow:hidden;color:#64748b;font-size:11px;font-weight:var(--font-semibold);text-overflow:ellipsis;white-space:nowrap}.booking-room-editor-title>div{gap:8px;min-width:0}.booking-room-editor-title strong{color:#1e293b;font-size:16px}.booking-room-editor-actions{justify-content:flex-end;gap:5px;flex-shrink:0}.booking-room-editor-actions>span{margin-inline:5px 1px;color:#64748b;font-size:11px;font-weight:var(--font-medium)}.booking-room-editor-close{min-width:66px;height:32px;justify-content:center}.booking-room-editor-drawer>.booking-room-type-header{display:none!important}.booking-room-editor-drawer .booking-room-rate-row{margin-top:2px;padding:10px 0!important;border-top:0!important;border-bottom:1px solid #dbe3ec}.booking-room-rate-row-label{flex-shrink:0;color:#475569;font-size:11px;font-weight:var(--font-semibold)}.booking-room-editor-drawer .booking-room-config{margin-top:0;padding-inline:0;border:0;border-radius:0;box-shadow:none}.booking-room-editor-drawer .booking-room-config-header{margin-inline:0;border-radius:0;background:#f8fafc}.booking-room-settings-label{color:#475569;font-size:11px;font-weight:var(--font-semibold)}@media(max-width:900px){.booking-room-manager-group{overflow-x:auto}.booking-room-manager-columns,.booking-room-manager-list{min-width:800px}.avail-row.booking-room-editor-drawer{width:min(760px,calc(100vw - 24px))}}@media(max-width:620px){.booking-room-manager-header{align-items:flex-start;flex-wrap:wrap}.booking-room-manager-actions{width:auto}.booking-room-manager-actions .btn{padding-inline:9px}.booking-room-manager-heading span{max-width:54vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-room-manager-groups{max-height:58vh}.booking-room-manager-group{overflow:visible}.booking-room-manager-columns{display:none}.booking-room-manager-list{min-width:0}.booking-room-manager-item{grid-template-columns:minmax(0,1fr) auto 30px;grid-template-areas:"room price edit" "stay stay edit" "rate guests edit" "status status edit";gap:3px 8px;min-height:78px;padding-block:8px}.booking-room-manager-item>:nth-child(1){grid-area:room}.booking-room-manager-item>:nth-child(2){grid-area:stay}.booking-room-manager-item>:nth-child(3){grid-area:rate}.booking-room-manager-item>:nth-child(4){grid-area:guests;text-align:right}.booking-room-manager-item>:nth-child(5){grid-area:price}.booking-room-manager-item>:nth-child(6){grid-area:status}.booking-room-manager-item>:nth-child(7){grid-area:edit}.booking-room-editor-backdrop{display:none}.avail-row.booking-room-editor-drawer{left:0;width:100vw;padding-inline:12px!important;border-left:0!important}.booking-room-editor-toolbar{align-items:flex-start;margin-inline:-12px;padding-inline:12px}.booking-room-editor-actions>span,.booking-room-editor-actions .btn-secondary{display:none}.booking-room-copy-confirm{margin-inline:-12px;align-items:flex-start;flex-direction:column}.booking-room-copy-confirm>div{align-self:flex-end}}.booking-date-input{position:relative;flex:1;width:100%;min-width:0}.booking-date-input>input{width:100%;min-width:0;padding-left:47px!important;font-size:13px}.booking-date-weekday{position:absolute;z-index:1;top:50%;left:8px;min-width:30px;padding:2px 4px;transform:translateY(-50%);border-radius:4px;background:color-mix(in srgb,var(--color-primary) 10%,white);color:color-mix(in srgb,var(--color-primary) 68%,#1e293b);font-size:10px;font-weight:var(--font-bold);line-height:1.2;text-align:center;text-transform:uppercase;pointer-events:none}.booking-room-config{container-name:booking-room;container-type:inline-size;margin-top:var(--space-3);padding:0 12px 12px;overflow:visible;border:1px solid #cbd5e1;border-radius:8px;background:var(--color-bg-card);box-shadow:0 8px 24px #0f172a14}.booking-room-config-header{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:var(--space-3);margin:0 -12px;padding:9px 12px;border-bottom:1px solid #cbd5e1;border-radius:8px 8px 0 0;background:#f1f5f9}.booking-room-config-header.is-toggleable{cursor:pointer;transition:background-color .18s ease,border-color .18s ease}.booking-room-config-header.is-toggleable:hover{background:#f8fafc}.booking-room-config.is-collapsed{padding-bottom:0;box-shadow:none}.booking-room-config.is-collapsed .booking-room-config-header{border-bottom:0;border-radius:8px;background:#fff}.booking-room-toggle{display:inline-flex;align-items:center;gap:7px;min-width:max-content;padding:3px 2px;border:0;background:transparent;color:#1e293b;font:inherit;font-size:13px;cursor:pointer}.booking-room-toggle svg{color:#64748b;transition:transform .24s cubic-bezier(.22,1,.36,1)}.booking-room-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.booking-room-toggle:focus-visible{border-radius:4px;outline:2px solid color-mix(in srgb,var(--color-primary) 28%,transparent);outline-offset:2px}.booking-room-collapsed-summary{display:flex;align-items:center;min-width:0;gap:6px;margin-right:auto;color:#64748b;font-size:12px;white-space:nowrap;overflow:hidden}.booking-room-collapsed-summary>span{display:inline-flex;align-items:center;gap:4px}.booking-room-collapsed-summary>span+span:before{content:"·";margin-right:2px;color:#94a3b8}.booking-room-collapsed-summary .has-override{color:var(--color-primary);font-weight:600}.booking-room-collapsed-summary>strong{color:#1e293b;font-size:12px}.booking-room-header-actions,.booking-room-occupancy-controls{display:flex;align-items:center;gap:12px}.booking-room-actions-menu{position:relative;flex:0 0 auto}.booking-room-actions-menu>summary{display:grid;place-items:center;width:30px;height:30px;border:1px solid transparent;border-radius:5px;color:#64748b;cursor:pointer;list-style:none}.booking-room-actions-menu>summary::-webkit-details-marker{display:none}.booking-room-actions-menu>summary:hover,.booking-room-actions-menu[open]>summary{border-color:#cbd5e1;background:#fff;color:var(--color-primary)}.booking-room-actions-menu>div{position:absolute;top:calc(100% + 5px);right:0;z-index:120;display:flex;width:190px;flex-direction:column;padding:4px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;box-shadow:0 10px 28px #0f172a24}.booking-room-actions-menu button{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:6px 8px;border:0;border-radius:4px;background:transparent;color:#334155;font:inherit;font-size:12px;text-align:left;cursor:pointer}.booking-room-actions-menu button:hover:not(:disabled){background:#f8fafc;color:var(--color-primary)}.booking-room-actions-menu button:disabled{opacity:.42;cursor:not-allowed}.booking-setup-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#0f172a61}.booking-setup-modal{width:min(520px,100%);max-height:min(720px,calc(100vh - 40px));overflow-y:auto;padding:18px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 24px 64px #0f172a3d}.booking-setup-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.booking-setup-modal-header h4{margin:0;color:#1e293b;font-size:16px}.booking-setup-modal-header p{margin:4px 0 0;color:#64748b;font-size:13px}.booking-setup-modal-header>button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:5px;background:transparent;color:#64748b;cursor:pointer}.booking-setup-copy-summary{display:flex;flex-wrap:wrap;gap:6px 14px;margin:14px 0;padding:10px 12px;border-radius:6px;background:#f8fafc;color:#334155;font-size:12px;font-weight:600}.booking-setup-targets{display:grid;gap:6px;margin:0;padding:0;border:0}.booking-setup-targets legend{margin-bottom:7px;color:#475569;font-size:12px;font-weight:700}.booking-setup-targets label{display:grid;grid-template-columns:18px 1fr max-content;align-items:center;gap:8px;min-height:36px;padding:6px 8px;border:1px solid #e2e8f0;border-radius:5px;color:#334155;font-size:13px;cursor:pointer}.booking-setup-targets input,.booking-setup-warning input{width:15px;height:15px;accent-color:var(--color-primary)}.booking-setup-targets small{color:#64748b;font-size:11px}.booking-setup-preserves,.booking-setup-warning{margin-top:12px;font-size:12px;line-height:1.45}.booking-setup-preserves{color:#475569}.booking-setup-warning{display:flex;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid #fed7aa;border-radius:6px;background:#fff7ed;color:#9a3412;cursor:pointer}.booking-setup-warning>span{display:flex;align-items:flex-start;gap:6px}.booking-setup-warning svg{flex:0 0 auto;margin-top:1px}.booking-setup-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid #e2e8f0}.booking-room-config-header-details,.booking-room-occupancy-controls{display:flex;align-items:center;gap:var(--space-3);min-width:0}.booking-room-config-header-details{justify-content:flex-end;justify-self:end}.booking-room-config-identity,.booking-room-config-membership-actions,.booking-room-shared-config-badge{display:flex;align-items:center}.booking-room-config-identity{gap:8px;min-width:0}.booking-room-config-identity .booking-room-toggle{min-width:0}.booking-room-config-identity .booking-room-settings-label{color:#1e293b;font-size:12px;white-space:nowrap}.booking-room-shared-config-badge{gap:4px;min-height:22px;padding:2px 7px;border:1px solid color-mix(in srgb,var(--color-primary) 24%,#dbe3ec);border-radius:999px;background:color-mix(in srgb,var(--color-primary) 6%,#fff);color:color-mix(in srgb,var(--color-primary) 70%,#334155);font-size:10px;font-weight:var(--font-semibold);white-space:nowrap}.booking-room-guest-progress{color:#64748b;font-size:10px;font-weight:var(--font-medium);white-space:nowrap}.booking-room-guest-progress.is-complete{color:#047857}.booking-room-config-membership-actions{justify-content:flex-end;gap:6px;flex:0 0 auto;min-width:176px}.booking-room-config-membership-actions .btn{white-space:nowrap}.booking-room-config-membership-actions .booking-room-guest-toggle{min-width:88px}.booking-room-remove{gap:4px;flex:0 0 auto;color:#b42318;white-space:nowrap}.booking-room-remove:hover:not(:disabled){background:#fef3f2;color:#912018}.booking-room-price-summary{display:inline-flex;align-items:baseline;gap:6px;min-height:26px;padding:3px 8px;border:1px solid #d6dee8;border-radius:6px;background:#fff;color:inherit;font:inherit;white-space:nowrap;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}div.booking-room-price-summary{cursor:default}button.booking-room-price-summary:hover{border-color:color-mix(in srgb,var(--color-primary) 50%,#cbd5e1);background:color-mix(in srgb,var(--color-primary) 4%,#fff)}button.booking-room-price-summary:focus-visible{outline:0;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 18%,transparent)}.booking-room-price-summary svg{color:var(--color-primary)}.booking-room-price-summary span{color:#64748b;font-size:.62rem;font-weight:var(--font-medium)}.booking-room-price-summary strong{color:#1e293b;font-size:.72rem;font-weight:var(--font-semibold)}.booking-pricing-backdrop{position:fixed;z-index:1400;top:0;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;background:#0f172a57;animation:booking-pricing-backdrop-in .16s ease-out}.booking-pricing-drawer{display:flex;flex-direction:column;width:min(760px,calc(100vw - 48px));height:100dvh;overflow:hidden;border-left:1px solid #cbd5e1;background:#fff;box-shadow:-20px 0 48px #0f172a2e;animation:booking-pricing-drawer-in .22s cubic-bezier(.22,1,.36,1)}.booking-pricing-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px;border-bottom:1px solid #e2e8f0}.booking-pricing-drawer-header>div{min-width:0}.booking-pricing-drawer-header span,.booking-pricing-section-heading span,.booking-pricing-summary-band span{display:block;color:#64748b;font-size:12px;font-weight:var(--font-semibold)}.booking-pricing-drawer-header h2{margin:3px 0 2px;color:#172033;font-size:20px;line-height:1.25}.booking-pricing-drawer-header p,.booking-pricing-section-heading p{margin:0;color:#64748b;font-size:13px}.booking-pricing-close{flex:0 0 auto;width:36px;height:36px}.booking-pricing-summary-band{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border-bottom:1px solid #e2e8f0;background:#e2e8f0}.booking-pricing-summary-band>div{padding:14px 24px;background:#f8fafc}.booking-pricing-summary-band strong{display:block;margin-top:3px;color:#172033;font-size:18px}.booking-pricing-view-switch{display:flex;gap:4px;padding:14px 24px 0}.booking-pricing-view-switch button{min-height:34px;padding:6px 14px;border:1px solid transparent;border-radius:6px;background:transparent;color:#475569;font:inherit;font-size:13px;font-weight:var(--font-semibold);cursor:pointer}.booking-pricing-view-switch button:hover{background:#f1f5f9}.booking-pricing-view-switch button.is-active{border-color:color-mix(in srgb,var(--color-primary) 28%,#dbe3ec);background:color-mix(in srgb,var(--color-primary) 9%,#fff);color:var(--color-primary)}.booking-pricing-content{flex:1;min-height:0;padding:16px 24px 28px;overflow-y:auto}.booking-pricing-room-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-bottom:20px}.booking-pricing-room-selector button{display:grid;grid-template-columns:1fr auto;gap:2px 8px;min-width:0;padding:10px 12px;border:1px solid #d6dee8;border-radius:6px;background:#fff;color:#334155;font:inherit;text-align:left;cursor:pointer}.booking-pricing-room-selector button:hover{border-color:#94a3b8}.booking-pricing-room-selector button.is-active{border-color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}.booking-pricing-room-selector span{font-size:13px;font-weight:var(--font-semibold)}.booking-pricing-room-selector strong{color:#172033;font-size:13px}.booking-pricing-room-selector small{grid-column:1 / -1;color:#64748b;font-size:11px}.booking-pricing-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:12px}.booking-pricing-section-heading h3{margin:0 0 2px;color:#172033;font-size:16px}.booking-pricing-section-heading>div:last-child{flex:0 0 auto;text-align:right}.booking-pricing-section-heading>div:last-child strong{color:#172033;font-size:15px}.booking-pricing-table-wrap{overflow-x:auto;border:1px solid #dbe3ec;border-radius:6px}.booking-pricing-table{width:100%;min-width:650px;border-collapse:collapse;font-size:13px}.booking-pricing-table th,.booking-pricing-table td{padding:10px 12px;border-bottom:1px solid #e7edf3;color:#475569;text-align:left;vertical-align:middle}.booking-pricing-table th{background:#f8fafc;color:#64748b;font-size:11px;font-weight:var(--font-bold);text-transform:uppercase}.booking-pricing-table tbody tr:last-child td{border-bottom:0}.booking-pricing-table td strong{color:#1e293b}.booking-pricing-table .is-numeric{text-align:right;white-space:nowrap}.booking-pricing-override-label{display:block;margin-top:2px;color:#b45309;font-size:10px;font-weight:var(--font-semibold)}.booking-pricing-day-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:14px}.booking-pricing-day-toolbar label{color:#475569;font-size:13px;font-weight:var(--font-semibold)}.booking-pricing-day-toolbar select{min-width:230px;height:36px;padding:0 34px 0 10px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#1e293b;font:inherit;font-size:13px}.booking-pricing-empty{padding:44px 20px;border:1px dashed #cbd5e1;border-radius:6px;color:#64748b;font-size:13px;text-align:center}@keyframes booking-pricing-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes booking-pricing-drawer-in{0%{transform:translate(32px);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:620px){.booking-pricing-drawer{width:100vw}.booking-pricing-drawer-header,.booking-pricing-content{padding-inline:16px}.booking-pricing-summary-band>div{padding-inline:16px}.booking-pricing-view-switch{padding-inline:16px}.booking-pricing-summary-band,.booking-pricing-section-heading{grid-template-columns:1fr}.booking-pricing-section-heading{align-items:flex-start;flex-direction:column}.booking-pricing-section-heading>div:last-child{text-align:left}}.booking-room-config-content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"stay" "schedule" "guests";align-items:start;min-width:0}.booking-room-config-content-collapse{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .24s cubic-bezier(.22,1,.36,1),opacity .16s ease,visibility 0s linear .24s}.booking-room-config-content-collapse.is-expanded{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .24s cubic-bezier(.22,1,.36,1),opacity .2s ease 35ms,visibility 0s}.booking-room-config-content-collapse-inner{min-height:0;overflow:hidden}.booking-room-config-content-shared-member{grid-template-columns:minmax(0,1fr);grid-template-areas:"guests"}.booking-room-config-content-shared-member .booking-room-guests{padding-top:8px;border-bottom:0}.booking-room-config-shared-member{margin-top:8px;padding-bottom:8px;border-color:#dbe3ec;box-shadow:none}.booking-room-config-shared-member.is-collapsed{padding-bottom:0}.booking-room-config-shared-member.is-collapsed .booking-room-config-header{min-height:44px}.booking-room-config-shared-member .booking-room-config-header{background:#f8fafc}.booking-room-config-content-shared-member .booking-guest-row-grid-dates{grid-template-columns:minmax(280px,1fr) minmax(130px,170px) max-content}.booking-room-stay-row{grid-area:stay;display:grid;grid-template-columns:112px minmax(220px,360px) 12px minmax(220px,360px) max-content;align-items:center;gap:6px;padding:10px 0;border-bottom:1px solid #dbe3ec}.booking-room-stay-row>*,.booking-guest-date-controls>*{min-width:0}.booking-room-stay-row>:first-child{color:#475569!important;font-weight:var(--font-semibold);white-space:nowrap}.booking-room-stay-row .booking-date-input>input{height:34px;padding-left:48px!important;border-color:#cbd5e1!important;background:#fff!important;color:#1e293b;font-size:13px!important}.booking-room-stay-row .booking-date-weekday{left:8px;min-width:30px;font-size:.54rem}.booking-room-stay-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-width:0;white-space:nowrap}.booking-room-stay-actions .btn{min-height:28px;padding:3px 7px;font-size:.65rem}.booking-room-add-to-config{display:inline-flex;align-items:center;gap:4px}.booking-rate-schedule{grid-area:schedule;min-width:0;padding:10px 0;border-bottom:1px solid #dbe3ec}.booking-rate-schedule-single{padding-block:10px}.booking-rate-schedule-single .booking-rate-schedule-header{margin-bottom:0}.booking-rate-schedule-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.booking-rate-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;margin-left:auto}.booking-rate-schedule-title{display:flex;align-items:center;gap:6px;color:var(--color-text);font-size:.78rem;font-weight:var(--font-semibold)}.booking-rate-schedule-title>svg{width:14px;height:14px;color:var(--color-primary)}.booking-rate-schedule-status{padding:2px 6px;border-radius:4px;border:1px solid color-mix(in srgb,var(--color-primary) 32%,white);background:color-mix(in srgb,var(--color-primary) 7%,white);color:var(--color-primary);font-size:.56rem;font-weight:var(--font-semibold)}.booking-rate-schedule-summary{color:#64748b;font-size:12px;font-weight:var(--font-normal)}.booking-rate-reset,.booking-rate-add-segment,.booking-rate-split-trigger{display:inline-flex;align-items:center;gap:5px}.booking-rate-reset{min-height:30px;padding:4px 9px!important;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:var(--color-text-secondary);font-size:.72rem;font-weight:var(--font-medium)}.booking-rate-reset:hover{border-color:var(--color-primary);background:#f8fbff;color:var(--color-primary)}.booking-rate-split-trigger{min-height:30px;padding:4px 9px!important;border:1px solid color-mix(in srgb,var(--color-primary) 32%,white);border-radius:6px;background:color-mix(in srgb,var(--color-primary) 7%,white);color:var(--color-primary)}.booking-rate-add-segment{align-self:flex-start;width:auto;min-height:26px;justify-content:center!important;margin:0;padding:3px 8px!important;border:1px solid var(--color-primary)!important;border-radius:6px;background:var(--color-primary)!important;color:#fff!important;font-size:.66rem;font-weight:var(--font-medium)}.booking-rate-add-segment:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 86%,#0f172a)!important;background:color-mix(in srgb,var(--color-primary) 86%,#0f172a)!important;color:#fff!important}.booking-rate-add-segment svg{color:currentColor;stroke-width:2.25}.booking-rate-segment-footer{display:flex;align-items:center;min-height:34px;padding:4px 7px;border-top:1px solid #e2e8f0;background:#fff}.booking-room-guests{grid-area:guests;min-width:0;padding-top:9px}.booking-room-guests .input{height:32px;border-color:#cbd5e1;color:#1e293b;font-size:13px!important}.booking-room-guests .input::placeholder{color:#8291a5;opacity:1}.booking-room-section-title{display:flex;align-items:center;gap:5px;margin-bottom:4px;color:var(--color-text);font-size:.78rem;font-weight:var(--font-semibold)}.booking-room-section-title>svg{width:14px;height:14px;color:var(--color-primary)}.booking-room-section-summary{color:#64748b;font-size:12px;font-weight:var(--font-normal)}.booking-room-guest-editor{border:0;border-radius:0;overflow:visible;background:#fff}.booking-room-guest-list{position:relative;z-index:10;display:flex;flex-direction:column;gap:0;counter-reset:booking-guest}.booking-guest-entry{--guest-accent: var(--color-primary);--segment-accent: var(--guest-accent);position:relative;min-width:0;padding:6px 7px 6px 38px;border-top:0;box-shadow:inset 3px 0 var(--guest-accent);counter-increment:booking-guest}.booking-guest-entry:first-child{border-top:0}.booking-guest-entry+.booking-guest-entry{border-top:1px solid #eef2f6}.booking-guest-entry:before{content:counter(booking-guest,decimal-leading-zero);position:absolute;top:50%;left:7px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;transform:translateY(-50%);border:1px solid color-mix(in srgb,var(--guest-accent) 45%,white);border-radius:50%;background:color-mix(in srgb,var(--guest-accent) 9%,white);color:color-mix(in srgb,var(--guest-accent) 75%,#334155);font-size:.58rem;font-weight:var(--font-bold)}.booking-guest-entry:nth-child(6n+2){--guest-accent: var(--color-primary)}.booking-guest-entry:nth-child(6n+3){--guest-accent: var(--color-primary)}.booking-guest-entry:nth-child(6n+4){--guest-accent: var(--color-primary)}.booking-guest-entry:nth-child(6n+5){--guest-accent: var(--color-primary)}.booking-guest-entry:nth-child(6n+6){--guest-accent: var(--color-primary)}.booking-primary-guest{display:flex;align-items:center;gap:var(--space-2);margin-top:0;min-height:32px;padding:5px 9px;border-top:1px solid #e2e8f0;border-radius:0 0 6px 6px;background:#f8fafc;color:#64748b;font-size:.7rem}.booking-guest-coverage-error{display:flex;align-items:center;gap:6px;padding:6px 9px;border-top:1px solid #fecaca;background:#fef2f2;color:#b91c1c;font-size:.68rem;font-weight:var(--font-medium)}.booking-guest-coverage-error svg{flex:0 0 auto}.booking-rate-segment-editor{display:flex;flex-direction:column;gap:0}.booking-rate-quick-splits{display:flex;align-items:center;gap:6px;min-width:0;margin:0}.booking-rate-quick-splits-label{color:#64748b;font-size:.62rem;font-weight:var(--font-semibold);white-space:nowrap}.booking-rate-quick-options{display:inline-flex;align-items:center;flex:0 1 auto;width:auto;min-height:26px;gap:5px}.booking-rate-quick-options button{flex:0 0 auto;height:26px;min-width:0;padding:3px 8px;border:1px solid #cbd5e1;border-radius:5px;outline:0;background:#fff;color:#475569;font:inherit;font-size:.62rem;font-weight:var(--font-medium);white-space:nowrap;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease,box-shadow .14s ease}.booking-rate-quick-options button:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 55%,#cbd5e1);background:color-mix(in srgb,var(--color-primary) 5%,white);color:var(--color-primary)}.booking-rate-quick-options button[aria-pressed=true]{background:var(--color-primary);color:#fff;font-weight:var(--font-semibold);box-shadow:none}.booking-rate-quick-options button:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 25%,transparent)}.booking-rate-quick-options button:disabled{opacity:.38;cursor:not-allowed}.booking-rate-segment-table{overflow:hidden;border:1px solid #d6dee8;border-radius:6px;background:#fff;counter-reset:rate-plan-segment}.booking-rate-segment-grid{display:grid;grid-template-columns:28px minmax(132px,150px) 12px minmax(132px,150px) minmax(220px,1fr) minmax(100px,120px) 26px;align-items:center;gap:6px;min-width:0;padding:4px 8px 4px 7px;border-top:0;background:#fff;box-shadow:inset 3px 0 var(--segment-accent, #94a3b8);transition:background-color .14s ease}.booking-rate-segment-grid:not(.booking-rate-segment-grid-header):hover{background:#f8fafc}.booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before{counter-increment:rate-plan-segment;content:counter(rate-plan-segment,decimal-leading-zero);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid color-mix(in srgb,var(--segment-accent, #94a3b8) 45%,white);border-radius:50%;background:color-mix(in srgb,var(--segment-accent, #94a3b8) 9%,white);color:color-mix(in srgb,var(--segment-accent, #64748b) 75%,#334155);font-size:.58rem;font-weight:var(--font-bold)}.booking-rate-segment-tone-0,.booking-rate-segment-tone-1,.booking-rate-segment-tone-2,.booking-rate-segment-tone-3,.booking-rate-segment-tone-4,.booking-rate-segment-tone-5{--segment-accent: var(--color-primary)}.booking-rate-segment-grid>*{min-width:0}.booking-rate-segment-grid .booking-calendar-card{height:32px}.booking-rate-segment-grid .booking-calendar-card-day strong{font-size:.8rem}.booking-rate-segment-grid .booking-calendar-card-day small,.booking-rate-segment-grid .booking-calendar-card-month strong,.booking-rate-segment-grid .booking-calendar-card-month small{font-size:.46rem}.booking-rate-segment-plan{background:#fff!important;font-weight:var(--font-medium)!important}.booking-rate-segment-grid input,.booking-rate-segment-grid select,.booking-rate-segment-boundary,.booking-rate-override-trigger{width:100%;height:32px;min-width:0;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:var(--color-text);font:inherit;font-size:.76rem;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.booking-rate-segment-grid input,.booking-rate-segment-grid select{padding:5px 9px}.booking-rate-segment-grid input:hover,.booking-rate-segment-grid select:hover,.booking-rate-override-trigger:hover{border-color:var(--color-text-muted)}.booking-rate-segment-grid input:focus,.booking-rate-segment-grid select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 12%,transparent);outline:none}.booking-rate-segment-boundary{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:3px 7px;background:var(--color-bg-secondary);color:var(--color-text-secondary)}.booking-rate-segment-boundary svg{flex-shrink:0;color:var(--color-text-muted)}.booking-rate-override-trigger{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:3px 7px;cursor:pointer;background:#fff;color:var(--color-text-muted)}.booking-rate-override-trigger:hover{border-color:var(--color-primary);color:var(--color-primary)}.booking-rate-override-trigger.has-calculated{color:#334155;font-weight:var(--font-semibold)}.booking-rate-override-trigger.has-value{border-color:#f59e0b80;background:#fffbeb;color:#92400e;font-weight:var(--font-semibold)}.booking-rate-segment-override{min-width:0}.booking-rate-segment-override input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.booking-rate-segment-override input[type=number]::-webkit-inner-spin-button,.booking-rate-segment-override input[type=number]::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.booking-rate-segment-override.has-override{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:4px}.booking-rate-segment-override.has-override .booking-rate-override-trigger{min-width:0}.booking-rate-segment-override.has-override .booking-rate-override-trigger svg{display:none}.booking-rate-override-reset{display:grid;place-items:center;width:24px;height:28px;padding:0;border:1px solid #f59e0b66;border-radius:5px;background:#fff;color:#92400e;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,color .14s ease}.booking-rate-override-reset:hover,.booking-rate-override-reset:focus-visible{border-color:#f59e0b;background:#fffbeb;color:#78350f;outline:none}input.booking-rate-segment-override.has-calculated{color:#334155;font-weight:var(--font-semibold)}input.booking-rate-segment-override.has-value{border-color:#f59e0b80;background:#fffbeb;color:#92400e;font-weight:var(--font-semibold)}.booking-calendar-card{position:relative;width:100%;height:32px;min-width:0}.booking-calendar-card-display{display:grid;grid-template-columns:max-content max-content max-content;align-items:center;justify-content:center;gap:7px;width:100%;height:100%;padding:0 7px;overflow:hidden;border:1px solid #cbd5e1;border-left:3px solid var(--segment-accent, var(--color-primary));border-radius:6px;background:#fff;color:var(--color-text);font:inherit;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.booking-calendar-card-day,.booking-calendar-card-month{display:flex;align-items:center;justify-content:center;line-height:1.05;white-space:nowrap}.booking-calendar-card-day{min-width:0;text-align:center}.booking-calendar-card-day strong{color:#1e293b;font-size:.84rem;font-weight:var(--font-bold)}.booking-calendar-card-weekday{padding:2px 4px;border-radius:4px;background:color-mix(in srgb,var(--segment-accent, var(--color-primary)) 10%,white);color:color-mix(in srgb,var(--segment-accent, var(--color-primary)) 72%,#1e293b);font-size:10px;font-weight:var(--font-bold);text-transform:uppercase}.booking-calendar-card-month{gap:3px}.booking-calendar-card-month strong{color:color-mix(in srgb,var(--segment-accent, var(--color-primary)) 62%,#1e293b);font-size:10px;font-weight:var(--font-bold);text-transform:uppercase}.booking-calendar-card-month small{color:#475569;font-size:10px;font-weight:var(--font-semibold)}.booking-rate-segment-arrow{color:#64748b!important;font-size:.75rem!important;font-weight:var(--font-semibold)}.booking-calendar-card>input{position:absolute;left:50%;bottom:0;width:1px!important;height:1px!important;padding:0!important;border:0;opacity:0;pointer-events:none}.booking-calendar-card:hover .booking-calendar-card-display{border-color:var(--color-text-muted);background:#fbfdff}.booking-calendar-card:focus-within .booking-calendar-card-display{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 12%,transparent)}.booking-calendar-card:has(input:disabled){opacity:.55}.booking-calendar-card-display:disabled{cursor:not-allowed}.booking-resolved-guest-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,160px) 368px max-content;align-items:center;gap:var(--space-2);width:100%;max-width:100%;min-width:0;padding:6px 8px;box-sizing:border-box;border-radius:var(--radius-md);font-size:var(--text-xs);transition:var(--transition-fast)}.booking-resolved-guest-row>*{min-width:0}.booking-resolved-guest-identity{display:flex;align-items:center;gap:var(--space-2);min-width:0}.booking-resolved-guest-name{min-width:0}.booking-resolved-guest-name-line{display:flex;align-items:center;gap:4px;min-width:0;font-weight:var(--font-semibold);white-space:nowrap}.booking-resolved-guest-name-line>span:first-child{overflow:hidden;text-overflow:ellipsis}.booking-resolved-guest-status{flex:0 0 auto;padding:1px 6px;border:1px solid #94a3b830;border-radius:8px;background:#f8fafc;color:#64748b;font-size:.55rem;font-weight:var(--font-bold)}.booking-resolved-guest-contact{overflow:hidden;color:#64748b;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.booking-resolved-guest-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px;min-width:0}.booking-guest-row-grid{display:grid;grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:var(--space-2);min-width:0}.booking-guest-row-grid-dates{grid-template-columns:minmax(260px,1fr) 160px max-content}.booking-guest-date-controls{display:grid;grid-template-columns:68px minmax(112px,124px) 10px minmax(112px,124px) 22px;align-items:center;align-self:center;gap:5px;width:100%;max-width:100%;min-width:0;flex-shrink:0}.booking-guest-date-status{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:20px;padding:1px 5px;border:1px solid var(--color-border-light);border-radius:var(--radius-full);color:#64748b;font-size:11px;font-weight:var(--font-semibold);white-space:nowrap}.booking-guest-date-status.inherited{border-color:transparent;background:transparent;color:var(--color-text-muted)}.booking-guest-date-status.custom{border-color:color-mix(in srgb,var(--color-primary) 36%,white);background:color-mix(in srgb,var(--color-primary) 8%,white);color:var(--color-primary)}.booking-guest-entry:has(.booking-guest-date-status.inherited) .booking-date-input>input,.booking-guest-entry:has(.booking-guest-date-status.inherited) .booking-calendar-card-display,.booking-edit-guest-dates:has(.booking-guest-date-status.inherited) .booking-date-input>input{border-color:#e2e8f0;background:#f8fafc;color:#64748b}.booking-guest-entry:has(.booking-guest-date-status.custom) .booking-date-input>input,.booking-guest-entry:has(.booking-guest-date-status.custom) .booking-calendar-card-display,.booking-edit-guest-dates:has(.booking-guest-date-status.custom) .booking-date-input>input{border-color:color-mix(in srgb,var(--color-primary) 42%,#cbd5e1)}.booking-edit-guest-row{display:grid;grid-template-columns:minmax(180px,1fr) 120px;align-items:center;gap:8px}.booking-edit-guest-row .input{height:32px;font-size:13px!important}.booking-edit-guest-dates{grid-column:1 / -1;grid-template-columns:70px minmax(135px,1fr) 14px minmax(135px,1fr) 28px;width:100%;margin-top:4px}.booking-edit-guest-dates .booking-date-input>input{height:32px;font-size:13px}.booking-edit-guest-dates>svg{color:#94a3b8}.booking-guest-date-reset{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:5px;background:transparent;color:#64748b;cursor:pointer}.booking-guest-date-reset:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 8%,white);color:var(--color-primary)}.booking-edit-room .booking-resolved-guest-row,.booking-edit-room [style*="border-radius: 20px"]{flex-wrap:wrap}.booking-edit-room .booking-edit-guest-dates{order:20;flex-basis:100%}.booking-edit-room-list{gap:12px!important}.booking-edit-room-card{overflow:visible;padding:0!important;border:1px solid var(--color-border)!important;border-radius:8px!important;background:#fff!important}.booking-edit-room-card.is-dirty{border-color:var(--color-primary)!important;box-shadow:inset 3px 0 0 var(--color-primary)}.booking-edit-room-header{min-height:52px;margin:0!important;padding:9px 12px;border-bottom:1px solid var(--color-border-light);border-radius:7px 7px 0 0;background:var(--color-bg-secondary)}.booking-edit-room-title{min-width:0}.booking-edit-room-price{flex:0 0 auto}.booking-edit-room-basics{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(400px,1.25fr) minmax(260px,1fr);gap:10px 12px;align-items:end;padding:12px;border-bottom:1px solid var(--color-border-light)}.booking-edit-room-basics .form-group{min-width:0;margin:0!important}.booking-edit-room-basics .form-label{min-height:16px;margin-bottom:5px;font-size:12px!important}.booking-edit-room-basics .input,.booking-edit-room-basics .select{min-height:36px;font-size:13px}.booking-edit-date-range{display:grid!important;grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr);gap:6px!important;align-items:center}.booking-edit-room-card .booking-rate-schedule-edit{margin:0!important;padding:12px;border-bottom:1px solid var(--color-border-light)}.booking-edit-room-card .booking-rate-segment-editor{margin-top:8px}.booking-edit-occupancy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0!important;padding:10px 12px;border-bottom:1px solid var(--color-border-light)}.booking-edit-meal-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 12px 0;padding:7px 10px;border-radius:6px;background:var(--color-bg-tertiary);font-size:12px}.booking-edit-guests{margin:0!important;padding:12px}.booking-edit-guests-title{margin-bottom:7px;color:var(--color-text-primary);font-size:13px;font-weight:var(--font-semibold)}.booking-edit-guest-list{display:flex;flex-direction:column;gap:0;overflow:visible;border:1px solid var(--color-border-light);border-radius:7px}.booking-edit-room-card .booking-edit-guest-entry{position:relative;display:grid;grid-template-columns:minmax(300px,1fr) minmax(350px,.9fr);gap:7px 12px;align-items:center;min-height:58px;padding:7px 8px 7px 38px;box-shadow:inset 3px 0 0 var(--color-primary)}.booking-edit-room-card .booking-edit-guest-entry+.booking-edit-guest-entry{border-top:1px solid var(--color-border-light)}.booking-edit-guest-label{position:absolute;top:5px;left:8px;color:var(--color-text-muted);font-size:10px;line-height:1}.booking-edit-guest-identity,.booking-edit-resolved-guest{min-width:0}.booking-edit-guest-identity{display:flex;gap:8px}.booking-edit-guest-identity>:first-child{min-width:0;flex:1}.booking-edit-room-card .booking-edit-resolved-guest{flex-wrap:nowrap;min-height:34px;border-radius:6px!important}.booking-edit-room-card .booking-guest-date-controls{grid-template-columns:70px minmax(116px,1fr) 12px minmax(116px,1fr) 24px;margin:0}.booking-edit-primary-guest{display:flex;align-items:center;gap:8px;min-height:34px;margin:0;padding:7px 10px;border-top:1px solid var(--color-border-light);background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:12px}@media(max-width:1100px){.booking-edit-room-basics{grid-template-columns:minmax(180px,.7fr) minmax(360px,1.3fr)}.booking-edit-room-plan{grid-column:1 / -1}.booking-edit-room-card .booking-edit-guest-entry{grid-template-columns:1fr}}@media(max-width:760px){.booking-edit-room-header{align-items:flex-start!important;flex-direction:column;gap:8px}.booking-edit-room-price{width:100%;text-align:left!important}.booking-edit-room-basics{grid-template-columns:1fr;padding:10px}.booking-edit-room-plan{grid-column:auto}.booking-edit-date-range{grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr)}.booking-edit-room-card .booking-rate-schedule-edit,.booking-edit-guests{padding:10px}.booking-edit-room-card .booking-edit-guest-entry{padding:8px 8px 8px 36px}.booking-edit-guest-identity{display:grid;grid-template-columns:minmax(0,1fr) 110px}.booking-edit-room-card .booking-guest-date-controls{grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 24px}.booking-edit-room-card .booking-guest-date-status{grid-column:1 / -1;justify-self:start}}@media(max-width:500px){.booking-edit-date-range,.booking-edit-room-card .booking-guest-date-controls{grid-template-columns:1fr}.booking-edit-date-range>svg,.booking-edit-room-card .booking-guest-date-controls>svg{display:none}.booking-edit-room-card .booking-guest-date-controls .btn{justify-self:end}.booking-edit-guest-identity{grid-template-columns:1fr}.booking-edit-meal-summary{align-items:flex-start;flex-direction:column}}.booking-form-grid-2,.booking-form-grid-3{display:grid;min-width:0}.booking-form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@container booking-room (min-width: 900px){.booking-room-config-content{grid-template-columns:minmax(0,1fr);grid-template-areas:"stay" "schedule" "guests";column-gap:0}.booking-rate-schedule{padding-right:0;border-right:0;border-bottom:1px solid #dbe3ec}.booking-rate-schedule .booking-rate-segment-grid{grid-template-columns:28px 112px 10px 112px minmax(240px,1fr) minmax(105px,130px) 24px;grid-template-rows:auto;gap:6px}.booking-rate-schedule .booking-rate-segment-grid-header{display:grid}.booking-rate-schedule .booking-rate-segment-grid-header:before,.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(1),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(2),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(3),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(4),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(5),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(6),.booking-rate-schedule .booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before,.booking-rate-schedule .booking-rate-segment-start-control,.booking-rate-schedule .booking-rate-segment-arrow,.booking-rate-schedule .booking-rate-segment-end-control,.booking-rate-schedule .booking-rate-segment-plan,.booking-rate-schedule .booking-rate-segment-override,.booking-rate-schedule .booking-rate-segment-remove{grid-column:auto;grid-row:auto}.booking-room-guests{padding-top:9px}.booking-room-guests .booking-guest-row-grid-dates{grid-template-columns:minmax(260px,440px) 140px max-content}.booking-room-guests .booking-guest-row-grid-dates .booking-guest-date-controls{grid-column:auto;grid-template-columns:68px 124px 10px 124px 22px;gap:4px}.booking-room-guests .booking-guest-date-status{grid-column:auto;justify-self:stretch;min-height:20px;padding:1px 5px;border:1px solid var(--color-border-light);background:var(--color-bg-secondary)}.booking-room-guests .booking-date-input>input{padding-left:40px!important}.booking-room-guests .booking-date-weekday{left:4px;min-width:27px;padding-inline:3px;font-size:10px}.booking-room-guests .booking-calendar-card{height:32px}.booking-room-guests .booking-resolved-guest-row .booking-guest-date-controls{width:auto;margin-left:0}.booking-room-config-content-single-plan{grid-template-columns:minmax(0,1fr);grid-template-areas:"stay" "schedule" "guests";column-gap:0}.booking-room-config-content-single-plan .booking-rate-schedule{padding-right:0;border-right:0;border-bottom:1px solid #dbe3ec}.booking-room-config-content-single-plan .booking-room-guests{padding-top:9px}.booking-room-config-content-single-plan .booking-room-guests .booking-guest-row-grid-dates{grid-template-columns:minmax(260px,440px) 140px max-content}.booking-room-config-content-single-plan .booking-room-guests .booking-guest-row-grid-dates .booking-guest-date-controls{grid-column:auto;grid-template-columns:68px 124px 10px 124px 22px;gap:4px}.booking-room-config-content-single-plan .booking-room-guests .booking-guest-date-status{grid-column:auto;justify-self:stretch}.booking-room-config-content-single-plan .booking-room-guests .booking-date-input>input{padding-left:40px!important}.booking-room-config-content-single-plan .booking-room-guests .booking-date-weekday{left:4px;min-width:27px;padding-inline:3px;font-size:10px}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-room-guests .booking-resolved-guest-actions{grid-column:4;grid-row:1}}@container booking-room (min-width: 960px){.booking-room-config-content{grid-template-columns:minmax(0,1fr);column-gap:0}.booking-room-config-content-single-plan{grid-template-columns:minmax(0,1fr)}.booking-rate-schedule{padding-right:0}.booking-rate-schedule .booking-rate-segment-grid{grid-template-columns:28px 112px 10px 112px minmax(260px,1fr) minmax(105px,130px) 26px;grid-template-rows:auto;gap:var(--space-2)}.booking-rate-schedule .booking-rate-segment-grid-header{display:grid}.booking-rate-schedule .booking-rate-segment-grid-header:before,.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(1),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(2),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(3),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(4),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(5),.booking-rate-schedule .booking-rate-segment-grid-header>:nth-child(6){grid-column:auto;grid-row:auto}.booking-rate-schedule .booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before,.booking-rate-schedule .booking-rate-segment-start-control,.booking-rate-schedule .booking-rate-segment-arrow,.booking-rate-schedule .booking-rate-segment-end-control,.booking-rate-schedule .booking-rate-segment-plan,.booking-rate-schedule .booking-rate-segment-override,.booking-rate-schedule .booking-rate-segment-remove{grid-column:auto;grid-row:auto}.booking-room-guests .booking-guest-row-grid-dates .booking-guest-date-controls{grid-template-columns:68px 124px 10px 124px 22px;gap:4px}.booking-room-guests .booking-calendar-card{height:32px}}@container booking-room (max-width: 819px){.booking-rate-schedule-header{display:grid;grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"schedule-title schedule-reset" "schedule-presets schedule-presets";align-items:center;gap:8px 12px}.booking-rate-schedule-title{grid-area:schedule-title;min-width:0;flex-wrap:wrap}.booking-rate-header-tools{display:contents}.booking-rate-quick-splits{grid-area:schedule-presets;width:100%}.booking-rate-quick-options{min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.booking-rate-reset{grid-area:schedule-reset;white-space:nowrap}}@container booking-room (max-width: 899px){.booking-guest-grid-header{display:none}.booking-guest-row-grid-dates{grid-template-columns:minmax(0,1fr) 120px}.booking-guest-row-grid-dates .booking-guest-date-controls{grid-column:1 / -1;grid-template-columns:72px minmax(0,1fr) 12px minmax(0,1fr) 24px}.booking-resolved-guest-row{grid-template-columns:minmax(0,1fr) 120px auto}.booking-resolved-guest-identity{grid-column:1;grid-row:1}.booking-resolved-guest-contact{grid-column:2;grid-row:1}.booking-resolved-guest-row .booking-guest-date-controls{grid-column:1 / -1;grid-row:2;width:100%}.booking-resolved-guest-actions{grid-column:3;grid-row:1}.booking-rate-segment-grid-header{display:none}.booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before{display:none}.booking-rate-segment-grid{grid-template-columns:minmax(120px,1fr) 16px minmax(120px,1fr) minmax(100px,.45fr) 28px;row-gap:8px;padding:10px;border-top:0}.booking-rate-segment-plan{grid-column:1 / 4;grid-row:2}.booking-rate-segment-override{grid-column:4;grid-row:2}.booking-rate-segment-remove{grid-column:5;grid-row:1 / 3}.booking-form-grid-2,.booking-form-grid-3{grid-template-columns:minmax(0,1fr)}}@container booking-room (min-width: 720px) and (max-width: 899px){.booking-rate-segment-grid{grid-template-columns:28px minmax(104px,120px) 10px minmax(104px,120px) minmax(180px,1fr) minmax(88px,104px) 22px;grid-template-rows:auto;column-gap:5px;row-gap:0;padding:4px 7px}.booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before{display:inline-flex}.booking-rate-segment-plan,.booking-rate-segment-override,.booking-rate-segment-remove{grid-column:auto;grid-row:auto}}@media(max-width:900px){.booking-form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@container booking-room (max-width: 640px){.booking-room-config-header,.booking-rate-schedule-header{flex-wrap:wrap}.booking-rate-header-tools{width:100%;justify-content:flex-start;margin-left:0}.booking-rate-quick-splits{flex:1 1 auto;align-items:stretch;flex-direction:column;gap:6px;overflow:visible}.booking-room-config-header-details{width:100%;justify-content:space-between;justify-self:stretch;flex-wrap:wrap;margin-left:0!important}.booking-room-occupancy-controls{margin-left:auto}.booking-rate-schedule-summary{display:none}.booking-rate-quick-splits-label{flex:0 0 auto}.booking-rate-quick-options{display:grid;flex:1 1 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;width:auto;overflow:visible;padding-bottom:0}.booking-rate-quick-options button{width:100%;min-width:0}.booking-room-stay-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.booking-room-stay-row>:first-child{grid-column:1 / -1}.booking-rate-segment-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 28px}.booking-rate-segment-plan{grid-column:1 / 4;grid-row:2}.booking-rate-segment-override{grid-column:1 / 4;grid-row:3}.booking-rate-segment-remove{grid-column:4;grid-row:1 / 4}.booking-guest-row-grid,.booking-guest-row-grid-dates{grid-template-columns:minmax(0,1fr)}.booking-guest-row-grid-dates .booking-guest-date-controls{grid-column:1}.booking-resolved-guest-row{grid-template-columns:minmax(0,1fr) auto}.booking-resolved-guest-identity{grid-column:1;grid-row:1}.booking-resolved-guest-actions{grid-column:2;grid-row:1}.booking-resolved-guest-contact{grid-column:1 / -1;grid-row:2}.booking-resolved-guest-row .booking-guest-date-controls{grid-column:1 / -1;grid-row:3}.booking-primary-guest{flex-wrap:wrap}}@container booking-room (max-width: 480px){.booking-rate-segment-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 24px;column-gap:4px}.booking-guest-date-controls{grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr) 22px;gap:4px}.booking-guest-date-status{grid-column:1 / -1;justify-self:start}}@media(max-width:640px){.booking-wizard .wizard-card,.booking-wizard .avail-row{padding:var(--space-3)}.booking-room-type-header,.booking-room-rate-row,.booking-room-config-header{flex-wrap:wrap}.booking-room-type-header .avail-name{flex:1 0 100%!important;min-width:0}.booking-room-type-header .avail-stats{justify-content:flex-start;gap:var(--space-3)}.booking-room-type-header .avail-qty-controls{margin-left:auto}.booking-room-rate-row>.select{flex-basis:calc(100% - 32px);min-width:0}.booking-room-rate-row>:last-child:not(.select){margin-left:auto}.booking-room-config-header>:last-child{margin-left:auto}.booking-rate-schedule-summary{display:none}.booking-room-config{padding:0 var(--space-3) var(--space-3)}.booking-room-config-header{margin:0 calc(var(--space-3) * -1);padding:11px var(--space-3)}.booking-primary-guest{flex-wrap:wrap}.booking-room-stay-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.booking-room-stay-row>:first-child{grid-column:1 / -1}.booking-rate-segment-grid{grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr) 28px}.booking-rate-segment-plan{grid-column:1 / 4;grid-row:2}.booking-rate-segment-override{grid-column:1 / 4;grid-row:3}.booking-rate-segment-remove{grid-column:4;grid-row:1 / 4}.booking-guest-row-grid,.booking-guest-row-grid-dates{grid-template-columns:minmax(0,1fr)}.booking-guest-row-grid-dates .booking-guest-date-controls{grid-column:1}.booking-guest-date-controls{grid-template-columns:72px minmax(112px,1fr) 12px minmax(112px,1fr) 24px}}@media(max-width:560px){.booking-room-rate-row>svg:first-child{display:none}.booking-room-rate-row>.select{flex:1 0 100%!important;width:100%}.booking-room-rate-row>:last-child:not(.select){flex:1 0 100%!important;width:100%;min-width:0;margin-left:0;justify-content:flex-end}.booking-room-config-header>:last-child{flex:1 0 100%!important;width:100%;margin-left:0;justify-content:flex-start;flex-wrap:wrap}.booking-rate-segment-grid{grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr) 24px;column-gap:4px}.booking-guest-date-controls{grid-template-columns:minmax(90px,1fr) 10px minmax(90px,1fr) 22px;gap:4px}.booking-guest-date-status{grid-column:1 / -1;justify-self:start}.booking-rate-schedule-header{align-items:flex-start!important;flex-wrap:wrap}}@media(min-width:760px)and (max-width:1099px){.booking-room-guests .booking-guest-row-grid-dates{grid-template-columns:minmax(0,1fr) 140px}.booking-room-guests .booking-guest-row-grid-dates .booking-guest-date-controls{grid-column:1 / -1;grid-template-columns:72px minmax(150px,1fr) 14px minmax(150px,1fr) 28px;width:100%}.booking-room-guests .booking-resolved-guest-row{flex-wrap:wrap}.booking-room-guests .booking-resolved-guest-row .booking-guest-date-controls{order:20;width:100%;margin-left:34px}}@media(max-width:759px){.booking-room-config-header{align-items:flex-start;flex-wrap:wrap}.booking-room-collapsed-summary{order:3;width:100%;flex-wrap:wrap;white-space:normal}.booking-room-header-actions{margin-left:auto}.booking-room-occupancy-controls{display:none}.booking-room-actions-menu>summary{width:40px;height:40px}.booking-setup-modal-backdrop{align-items:end;padding:0}.booking-setup-modal{width:100%;max-height:88vh;border-radius:8px 8px 0 0}.booking-setup-targets label{grid-template-columns:18px 1fr;min-height:44px}.booking-setup-targets small{grid-column:2}.booking-edit-guest-row{grid-template-columns:1fr}.booking-edit-guest-row>.input{width:100%!important;min-height:40px}.booking-edit-guest-dates{grid-template-columns:72px minmax(0,1fr) 32px;row-gap:6px}.booking-edit-guest-dates>:nth-child(2){grid-column:2;grid-row:1}.booking-edit-guest-dates>:nth-child(3){display:none}.booking-edit-guest-dates>:nth-child(4){grid-column:2;grid-row:2}.booking-edit-guest-dates>:nth-child(5){grid-column:3;grid-row:1 / 3;align-self:center}}@container booking-room (min-width: 980px){.booking-room-config-content:not(.booking-room-config-content-single-plan){grid-template-columns:minmax(500px,1.12fr) minmax(440px,1fr);grid-template-areas:"stay stay" "schedule guests";column-gap:12px}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-schedule{align-self:stretch;min-width:0;padding-right:12px;border-right:1px solid #dbe3ec;border-bottom:0}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-room-guests{align-self:stretch;min-width:0;padding-top:8px}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-schedule-header{display:grid;grid-template-columns:1fr;align-items:start;gap:8px}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-schedule-title{min-width:0;font-size:.76rem}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-schedule-summary{display:inline}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-header-tools{display:flex;width:100%;justify-content:space-between}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-quick-splits,.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-quick-options{min-width:0;gap:5px}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-quick-splits{grid-area:auto;width:auto}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-quick-splits-label{display:inline;white-space:nowrap}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-quick-options button{min-width:0;height:27px;padding:3px 8px;font-size:.63rem;white-space:nowrap}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-reset{grid-area:auto;min-height:27px;padding:3px 6px!important;font-size:.62rem!important;white-space:nowrap}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-grid{grid-template-columns:24px 100px 8px 100px minmax(120px,1fr) 78px 26px;grid-template-rows:auto;gap:4px;padding-block:5px}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before,.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-start-control,.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-arrow,.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-end-control,.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-plan,.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-override,.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-remove{grid-column:auto;grid-row:auto}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-schedule .booking-calendar-card-display{grid-template-columns:max-content max-content max-content;gap:7px;padding-inline:5px}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-remove{display:grid;place-items:center;width:26px;height:28px;padding:0!important;border-radius:5px;color:#64748b;opacity:1}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-remove:hover{background:#f1f5f9;color:#334155}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-segment-remove svg{width:14px;height:14px;stroke-width:2}.booking-room-config-content:not(.booking-room-config-content-single-plan) .booking-rate-schedule .booking-calendar-card-month small{display:none}}@container booking-room (max-width: 760px){.booking-room-config-header{grid-template-columns:minmax(0,1fr);align-items:flex-start}.booking-room-config-header-details{grid-column:1;width:100%;justify-self:stretch;flex-wrap:wrap}.booking-room-config-membership-actions{margin-left:auto}.booking-room-config-content-shared-member .booking-guest-row-grid-dates{grid-template-columns:minmax(0,1fr) 112px}}.review-section{margin-bottom:var(--space-5)}.review-section h4{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-3)}.review-row{display:flex;justify-content:space-between;padding:var(--space-2) 0;font-size:var(--text-sm);border-bottom:1px solid var(--color-border)}.review-row:last-child{border-bottom:none}.review-label{color:var(--color-text-muted)}.review-value{font-weight:var(--font-medium);color:var(--color-text)}.review-segment-summary{border-bottom:1px solid var(--color-border)}.review-segment-summary-heading{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--text-xs)}.review-segment-summary-toggle{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;padding:5px 0;color:var(--color-primary);font:inherit;font-weight:var(--font-medium);cursor:pointer}.review-segment-summary-toggle svg{transition:transform .16s ease}.review-segment-summary-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.review-segment-summary-toggle:hover{text-decoration:underline}.review-segment-summary-list{margin:0 0 var(--space-2);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-bg-primary);overflow:hidden}.review-segment-summary-item{display:grid;grid-template-columns:24px minmax(170px,.8fr) minmax(180px,1fr) minmax(100px,auto);align-items:center;gap:var(--space-2);min-height:42px;padding:6px 10px;border-bottom:1px solid var(--color-border-light);color:var(--color-text);font-size:var(--text-xs)}.review-segment-summary-item:last-child{border-bottom:0}.review-segment-summary-index{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--color-brand-light);color:var(--color-primary);font-size:10px;font-weight:var(--font-semibold)}.review-segment-summary-dates,.review-segment-summary-amount{display:flex;flex-direction:column;gap:1px;font-weight:var(--font-medium)}.review-segment-summary-dates small,.review-segment-summary-amount small{color:var(--color-text-muted);font-size:10px;font-weight:var(--font-normal)}.review-segment-summary-plan{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-segment-summary-amount{align-items:flex-end;text-align:right;font-weight:var(--font-semibold)}@media(max-width:760px){.review-segment-summary-heading{align-items:flex-start;flex-direction:column;gap:0;padding:6px 0}.review-segment-summary-item{grid-template-columns:24px minmax(0,1fr) auto}.review-segment-summary-plan{grid-column:2 / -1;grid-row:2}.review-segment-summary-amount{grid-column:3;grid-row:1}}.review-total{display:flex;justify-content:space-between;padding:var(--space-3) 0;font-size:var(--text-lg);font-weight:var(--font-bold);border-top:2px solid var(--color-border);margin-top:var(--space-3)}.booking-detail-grid{display:grid;grid-template-columns:1fr 320px;gap:var(--space-6)}.booking-detail-grid>*{min-width:0}@media(max-width:900px){.booking-detail-grid{grid-template-columns:1fr}}.booking-detail-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);overflow:visible}.folio-picker-wrap{position:relative;width:100%}.folio-picker-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:200;background:var(--color-bg-card);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000001f,0 1px 4px #00000014;overflow:hidden;animation:folioMenuIn .18s cubic-bezier(.16,1,.3,1) both}@keyframes folioMenuIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.folio-picker-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:none;border:none;border-bottom:1px solid var(--color-border);cursor:pointer;text-align:left;font-size:var(--text-sm);color:var(--color-text);transition:background .12s}.folio-picker-item:last-child{border-bottom:none}.folio-picker-item:hover{background:var(--color-brand-light)}.folio-picker-item-name{font-weight:600;font-size:var(--text-xs)}.folio-picker-item-meta{font-size:11px;color:var(--color-text-muted);margin-top:1px}.folio-picker-item span:hover{opacity:1!important;color:var(--color-primary)!important;background:var(--color-brand-light)}.booking-detail-card-title{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-4)}.booking-detail-conf{font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-primary);margin-bottom:var(--space-1)}.booking-room-navigator{display:flex;gap:7px;margin-bottom:8px;overflow-x:auto;scrollbar-width:thin}.booking-room-nav-item{display:grid;grid-template-columns:30px minmax(120px,1fr) auto;align-items:center;gap:8px;flex:1 0 220px;min-width:0;padding:7px 9px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.booking-room-nav-item:hover{border-color:color-mix(in srgb,var(--color-primary) 38%,var(--color-border))}.booking-room-nav-item.is-selected{border-color:color-mix(in srgb,var(--color-primary) 48%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card));box-shadow:inset 3px 0 0 var(--color-primary)}.booking-room-nav-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--color-bg-tertiary);color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:var(--font-bold)}.booking-room-nav-item.is-selected .booking-room-nav-index{background:var(--color-primary);color:#fff}.booking-room-nav-copy,.booking-room-nav-state{display:flex;flex-direction:column;min-width:0}.booking-room-nav-copy strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.booking-room-nav-copy small,.booking-room-nav-state small{display:flex;align-items:center;gap:5px;color:var(--color-text-muted);font-size:8px;white-space:nowrap}.booking-room-nav-copy i{width:3px;height:3px;border-radius:50%;background:var(--color-border)}.booking-room-nav-state{align-items:flex-end}.booking-room-nav-state strong{font-family:var(--font-mono);font-size:11px}.booking-room-nav-item.is-selected .booking-room-nav-state small{color:var(--color-primary)}.booking-room-card{container-type:inline-size;padding:9px 10px 10px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.booking-room-card-titlebar,.booking-room-card-identity,.booking-room-card-actions,.booking-room-card-facts,.booking-room-card-facts>span{display:flex;align-items:center}.booking-room-card-titlebar{justify-content:space-between;gap:var(--space-3)}.booking-room-card-identity,.booking-room-card-actions{gap:var(--space-2);min-width:0}.booking-room-card-name{font-weight:var(--font-semibold);font-size:var(--text-sm)}.booking-room-card-identity .badge{padding:1px 7px;font-size:9px}.booking-room-card-total{display:flex;flex-direction:column;align-items:flex-end;padding-right:var(--space-2);border-right:1px solid var(--color-border-light);line-height:1.15}.booking-room-card-total strong{color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-sm)}.booking-room-card-total span{color:var(--color-text-secondary);font-size:9px}.booking-room-card-facts{gap:5px 12px;min-width:0;margin-top:3px;color:var(--color-text-secondary);font-size:10px;flex-wrap:wrap}.booking-room-card-facts>span{gap:4px;white-space:nowrap}.booking-room-card-facts>span+span:before{width:3px;height:3px;margin-right:6px;border-radius:50%;background:var(--color-border);content:""}.booking-room-card-facts svg{color:var(--color-text-secondary)}.booking-room-card-facts .booking-room-custom-date{padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--color-primary) 9%,transparent);color:var(--color-primary);font-weight:var(--font-semibold)}.booking-room-card-facts .booking-room-custom-date:before{display:none}.booking-room-card-meta{font-size:var(--text-xs);color:var(--color-text-muted);display:flex;gap:var(--space-3)}.booking-room-workspace{display:flex;flex-direction:column;gap:8px;margin-top:8px}.booking-room-sharers{min-width:0;margin-top:0;overflow:hidden;border:1px solid var(--color-border-light);border-radius:var(--radius-md)}.booking-room-sharers-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:29px;padding:4px 8px;background:var(--color-bg-secondary)}.booking-room-sharers-title,.booking-room-sharers-composition,.booking-room-sharer-name-line,.booking-room-sharer-contact,.booking-room-sharer-stay,.booking-room-sharer-actions,.booking-room-primary-guest,.booking-room-primary-guest>div,.booking-room-nightly-breakdown summary{display:flex;align-items:center}.booking-room-sharers-title{gap:var(--space-2);min-width:0;color:var(--color-text);font-size:11px;font-weight:var(--font-semibold)}.booking-room-sharers-title svg{flex:0 0 auto;color:var(--color-primary)}.booking-room-sharers-count{color:var(--color-text-secondary);font-size:10px;font-weight:var(--font-normal)}.booking-room-sharers-composition{gap:var(--space-3);color:var(--color-text-secondary);font-size:10px;white-space:nowrap}.booking-room-sharer-list{border-top:1px solid var(--color-border)}.booking-room-sharer-row{display:grid;grid-template-columns:28px minmax(170px,1.1fr) minmax(120px,.75fr) minmax(240px,1.5fr) auto;grid-template-rows:auto;align-items:center;gap:10px;min-height:48px;padding:6px 10px;border-bottom:1px solid var(--color-border-light)}.booking-room-sharer-row:last-child{border-bottom:0}.booking-room-sharer-avatar{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--color-border);border-radius:50%;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-bold)}.booking-room-sharer-avatar.is-primary{border-color:var(--color-primary);background:var(--color-brand-light);color:var(--color-primary)}.booking-room-sharer-identity,.booking-room-sharer-contact,.booking-room-sharer-stay{min-width:0}.booking-room-sharer-identity{grid-column:2}.booking-room-sharer-name-line{align-items:center;gap:5px;min-width:0;row-gap:3px;flex-wrap:wrap}.booking-room-sharer-name{flex:0 1 auto;overflow:hidden;color:var(--color-text);font-size:11px;font-weight:var(--font-semibold);text-overflow:ellipsis;white-space:nowrap}.booking-room-sharer-badge{flex:0 0 auto;padding:1px 5px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-card);color:var(--color-text-secondary);font-size:8px;font-weight:var(--font-semibold);line-height:1.4}.booking-room-sharer-badge.is-primary{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.booking-room-sharer-badge.is-in-house{border-color:var(--color-success);color:var(--color-success)}.booking-room-sharer-badge.is-checked-out,.booking-room-sharer-badge.is-no-show{color:var(--color-text-muted)}.booking-room-sharer-contact,.booking-room-sharer-stay{gap:4px;color:var(--color-text-secondary);font-size:9px}.booking-room-sharer-contact{grid-column:3;grid-row:1}.booking-room-sharer-stay{display:block;grid-column:4;grid-row:1}.booking-room-sharer-contact.is-empty{color:var(--color-text-secondary)}.booking-room-sharer-contact span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-room-sharer-stay{white-space:nowrap}.booking-room-sharer-stay svg,.booking-room-sharer-contact svg{flex:0 0 auto;color:var(--color-text-secondary)}.booking-room-stay-track{position:relative;width:100%;height:6px;overflow:hidden;border-radius:999px;background:var(--color-bg-tertiary)}.booking-room-stay-track>span{position:absolute;top:0;bottom:0;border-radius:inherit;background:var(--color-primary)}.booking-room-sharer-row.is-primary .booking-room-stay-track>span{background:linear-gradient(90deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 55%,var(--color-success)))}.booking-room-stay-dates{display:flex;align-items:center;gap:4px;margin-top:4px;color:var(--color-text-muted);font-size:8px}.booking-room-stay-dates strong{margin-left:auto;color:var(--color-text-secondary);font-size:8px}.booking-room-sharer-actions{grid-column:5;grid-row:1;justify-content:flex-end;gap:var(--space-2)}.booking-room-sharer-action{min-height:28px;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text-secondary);font-size:11px;font-weight:var(--font-semibold);cursor:pointer}.booking-room-sharer-action.is-check-in{border-color:var(--color-success);color:var(--color-success)}.booking-room-sharer-action.is-check-out{border-color:var(--color-warning);color:var(--color-warning)}.booking-room-sharer-action:disabled{opacity:.5;cursor:not-allowed}.booking-room-primary-guest{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-light);color:var(--color-text-secondary);font-size:var(--text-xs)}.booking-room-primary-guest>div{gap:var(--space-2);min-width:0}.booking-room-primary-guest-label{color:var(--color-text-muted)}.booking-room-primary-guest-name{overflow:hidden;color:var(--color-text);font-weight:var(--font-semibold);text-overflow:ellipsis;white-space:nowrap}.booking-room-primary-guest-vip{color:var(--color-warning);font-weight:var(--font-semibold)}.booking-room-nightly-breakdown{min-width:0;overflow:hidden;border:1px solid var(--color-border-light);border-radius:var(--radius-md)}.booking-room-rate-header{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:29px;padding:4px 8px;background:var(--color-bg-secondary)}.booking-room-rate-header>div{display:flex;align-items:center;gap:5px;flex:0 0 auto;color:var(--color-primary);font-size:11px}.booking-room-insight-ribbon{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:7px;overflow:hidden;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);border-radius:0;background:var(--color-bg-secondary)}.booking-room-insight-ribbon>div{position:relative;display:grid;grid-template-columns:16px minmax(0,1fr);gap:0 var(--space-2);min-height:36px;padding:4px 8px;color:var(--color-text-secondary)}.booking-room-insight-ribbon>div+div:before{position:absolute;top:6px;bottom:6px;left:0;width:1px;background:var(--color-border-light);content:""}.booking-room-insight-ribbon svg{grid-row:1 / span 2;align-self:center;color:var(--color-text-secondary)}.booking-room-insight-ribbon span{min-width:0;overflow:hidden;color:var(--color-text);font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.booking-room-insight-ribbon strong{font-weight:var(--font-bold)}.booking-room-insight-ribbon small{color:var(--color-text-secondary);font-size:8px;line-height:1.2}.booking-room-insight-ribbon .is-positive svg,.booking-room-insight-ribbon .is-positive strong{color:var(--color-success)}.booking-room-insight-ribbon .is-warning svg,.booking-room-insight-ribbon .is-warning strong{color:var(--color-warning)}.booking-room-insight-ribbon .is-insight{background:color-mix(in srgb,var(--color-primary) 5%,transparent)}.booking-room-insight-ribbon .is-insight svg,.booking-room-insight-ribbon .is-insight strong{color:var(--color-primary)}.booking-room-nightly-summary{display:inline-flex;align-items:center;gap:5px;min-width:0;overflow:hidden;color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-normal);text-overflow:ellipsis;white-space:nowrap}.booking-room-nightly-summary i{width:3px;height:3px;border-radius:50%;background:var(--color-border)}.booking-room-segment-tabs{display:flex;gap:4px;min-width:0;padding:7px 7px 5px;overflow-x:auto;border-top:1px solid var(--color-border-light);background:var(--color-bg-secondary);scrollbar-width:thin}.booking-room-segment-tabs>button{position:relative;display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-items:center;column-gap:10px;flex:1 0 145px;min-height:52px;padding:7px 10px;border:1px solid var(--color-border);border-radius:7px;background:var(--color-bg-card);color:var(--color-text-secondary);text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.booking-room-segment-tabs>button:focus{outline:none}.booking-room-segment-tabs>button:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 22%,transparent)}.booking-room-segment-tabs>button:after{position:absolute;right:7px;bottom:-1px;left:7px;height:2px;border-radius:2px 2px 0 0;background:transparent;content:""}.booking-room-segment-tabs>button:hover{border-color:color-mix(in srgb,var(--color-primary) 30%,var(--color-border-light))}.booking-room-segment-tabs>button.is-active{border-color:color-mix(in srgb,var(--color-primary) 40%,var(--color-border-light));background:color-mix(in srgb,var(--color-primary) 8%,var(--color-bg-card));box-shadow:0 1px 3px color-mix(in srgb,var(--color-primary) 8%,transparent)}.booking-room-segment-tabs>button.is-active:after{background:var(--color-primary)}.booking-room-segment-tabs small{grid-column:1;color:var(--color-text-muted);font-size:9px;font-weight:var(--font-medium);letter-spacing:.01em}.booking-room-segment-tabs strong{grid-column:1;overflow:hidden;color:var(--color-text);font-family:var(--font-mono);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-tabs strong em{margin-left:2px;color:var(--color-text-muted);font-family:var(--font-sans);font-size:9px;font-style:normal;font-weight:var(--font-normal)}.booking-room-segment-tabs span{grid-row:1 / span 2;grid-column:2;justify-self:end;color:var(--color-text-muted);font-size:10px;white-space:nowrap}.booking-room-segment-detail{display:grid;grid-template-columns:minmax(210px,1fr) minmax(420px,2.1fr) minmax(170px,.75fr);gap:0;min-width:0;margin:0 7px 7px;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-secondary);box-shadow:inset 3px 0 0 var(--color-primary),0 1px 2px color-mix(in srgb,var(--color-text) 5%,transparent)}.booking-room-segment-detail>div{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0;min-height:72px;padding:9px 13px;border-right:1px solid var(--color-border);background:var(--color-bg-card)}.booking-room-segment-detail>div:last-child{border-right:0}.booking-room-segment-detail small{color:var(--color-text-muted);font-size:9px;font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.04em}.booking-room-segment-context{background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card))}.booking-room-segment-context>strong{overflow:hidden;color:var(--color-text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-context>span,.booking-room-segment-detail-total>span{color:var(--color-text-muted);font-size:9px}.booking-room-segment-context>div{display:flex;align-items:center;gap:3px;min-width:0;margin-top:2px;overflow:hidden}.booking-room-segment-context>div span{flex:0 0 auto;padding:1px 5px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:8px;white-space:nowrap}.booking-room-segment-calculation{flex-direction:row!important;align-items:center;justify-content:flex-start!important;gap:11px!important;overflow:hidden}.booking-room-segment-calc-step{display:flex;flex-direction:column;gap:2px;flex:0 0 auto}.booking-room-segment-calculation>svg{flex:0 0 auto;color:var(--color-text-muted)}.booking-room-segment-calc-step strong{color:var(--color-text);font-family:var(--font-mono);font-size:13px;white-space:nowrap}.booking-room-segment-calc-step.is-applied strong{color:var(--color-primary)}.booking-room-segment-calc-operator{flex:0 0 auto;color:var(--color-text-muted);font-size:13px}.booking-room-segment-rate-delta{flex:0 0 auto;margin-left:auto;padding:3px 7px;border-radius:999px;font-size:8px;font-weight:var(--font-semibold);white-space:nowrap}.booking-room-segment-rate-delta.is-saving{background:color-mix(in srgb,var(--color-success) 10%,transparent);color:var(--color-success)}.booking-room-segment-rate-delta.is-increase{background:color-mix(in srgb,var(--color-warning) 10%,transparent);color:var(--color-warning)}.booking-room-segment-detail-total{align-items:flex-end;padding-right:16px!important;background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card))!important;text-align:right}.booking-room-segment-detail-total strong{color:var(--color-text);font-family:var(--font-mono);font-size:16px;white-space:nowrap}.booking-room-segment-detail-total>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-detail-total:before{display:none}.booking-room-segment-detail-total small{white-space:nowrap}.booking-room-segment-detail-total>strong,.booking-room-segment-detail-total>small,.booking-room-segment-detail-total>span{flex:0 0 auto}.booking-room-segment-detail-total>small{padding:0;border-radius:999px}.booking-room-segment-detail+.booking-room-rate-footer{border-bottom:1px solid var(--color-border-light)}@container (max-width: 800px){.booking-room-segment-tabs>button{flex-basis:145px}.booking-room-segment-detail{grid-template-columns:minmax(0,1fr) minmax(165px,.55fr)}.booking-room-segment-context{border-bottom:1px solid var(--color-border)}.booking-room-segment-calculation{grid-row:2;grid-column:1 / -1;border-top:0;border-right:0}.booking-room-segment-detail-total{grid-row:1;grid-column:2;border-bottom:1px solid var(--color-border-light)}}@container (max-width: 520px){.booking-room-segment-detail{grid-template-columns:minmax(0,1fr)}.booking-room-segment-context,.booking-room-segment-detail-total{grid-row:auto;grid-column:1;align-items:flex-start;border-right:0;border-bottom:1px solid var(--color-border);text-align:left}.booking-room-segment-calculation{grid-row:auto;grid-column:1;flex-wrap:wrap}.booking-room-segment-rate-delta{margin-left:0}.booking-room-segment-detail-total{align-items:flex-start;text-align:left}}.booking-room-segment-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;margin:0 7px 7px;overflow:hidden;border:1px solid var(--color-border);border-radius:7px;background:var(--color-bg-card)}.booking-room-segment-overview{min-width:0;margin:6px 7px;overflow:hidden;border:1px solid var(--color-border);border-radius:7px;background:var(--color-bg-secondary)}.booking-room-segment-insights{display:grid;grid-template-columns:1fr 1.35fr .8fr .95fr;min-width:0}.booking-room-segment-insights>div{position:relative;display:flex;min-width:0;min-height:51px;flex-direction:column;justify-content:center;padding:5px 7px}.booking-room-segment-insights>div+div{border-left:1px solid var(--color-border-light)}.booking-room-segment-insights small{overflow:hidden;color:var(--color-text-secondary);font-size:7px;font-weight:var(--font-semibold);letter-spacing:.045em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.booking-room-segment-insights strong{overflow:hidden;margin-top:2px;color:var(--color-text);font-family:var(--font-mono);font-size:11px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-insights span{overflow:hidden;margin-top:1px;color:var(--color-text-secondary);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-insights .has-attention strong{color:var(--color-warning)}.booking-room-segment-insights .has-pending strong{color:var(--color-primary)}.booking-room-segment-card{display:grid;grid-template-columns:28px minmax(112px,.9fr) minmax(150px,1.25fr) minmax(94px,.75fr) minmax(112px,.85fr) 58px;align-items:center;gap:7px;min-width:0;min-height:55px;padding:5px 8px;border:0;border-bottom:1px solid color-mix(in srgb,var(--color-border) 86%,var(--color-primary) 14%);background:var(--color-bg-card);transition:background-color .14s ease}.booking-room-segment-card:nth-of-type(2n){background:color-mix(in srgb,var(--color-primary) 1.5%,var(--color-bg-card))}.booking-room-segment-card:last-child{border-bottom:0}.booking-room-segment-card:hover{background:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg-card))}.booking-room-segment-card-index{display:grid;width:28px;height:28px;place-items:center;border-radius:6px;background:color-mix(in srgb,var(--color-primary) 12%,var(--color-bg-card));color:var(--color-primary);font-family:var(--font-mono);font-size:10px;font-weight:var(--font-bold)}.booking-room-segment-card-stay{min-width:0}.booking-room-segment-card-stay small,.booking-room-segment-card-total small,.booking-room-segment-card-plan small,.booking-room-segment-card-rate small,.booking-room-segment-card-posting small{display:block;color:var(--color-text-secondary);font-size:8px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.booking-room-segment-card-stay strong{display:flex;min-width:0;align-items:center;gap:4px;margin-top:2px;color:var(--color-text);font-size:11px;white-space:nowrap}.booking-room-segment-card-stay strong svg{flex:0 0 auto;color:var(--color-primary)}.booking-room-segment-card-plan{min-width:0}.booking-room-segment-card-plan strong{display:block;overflow:hidden;margin-top:2px;color:var(--color-text);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-card-tags{display:flex;align-items:center;gap:3px;min-width:0;margin-top:3px;overflow:hidden}.booking-room-segment-card-tags span{padding:1px 4px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:7px;font-weight:var(--font-semibold);white-space:nowrap}.booking-room-segment-card-tags span.is-override{background:var(--color-warning-soft);color:var(--color-warning)}.booking-room-segment-card-rate,.booking-room-segment-card-total,.booking-room-segment-card-posting{min-width:0}.booking-room-segment-card-rate strong,.booking-room-segment-card-total strong,.booking-room-segment-card-posting strong{display:block;overflow:hidden;margin-top:2px;color:var(--color-text);font-family:var(--font-mono);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-card-total{text-align:right}.booking-room-segment-card-rate span,.booking-room-segment-card-total span,.booking-room-segment-card-posting span{display:block;overflow:hidden;margin-top:1px;color:var(--color-text-secondary);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.booking-room-segment-card-posting{padding-left:7px;border-left:1px solid var(--color-border-light)}.booking-room-segment-cards+.booking-room-rate-footer{border-top:1px solid var(--color-border-light)}.booking-room-segment-disclosure{display:flex;width:calc(100% - 14px);min-height:29px;align-items:center;gap:5px;margin:-2px 7px 6px;padding:4px 8px;border:1px solid var(--color-border);border-radius:7px;background:var(--color-bg-secondary);color:var(--color-primary);cursor:pointer;font:inherit;font-size:9px;font-weight:var(--font-semibold);text-align:left;transition:border-color .14s ease,background-color .14s ease}.booking-room-segment-disclosure:hover{border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card))}.booking-room-segment-disclosure svg{flex:0 0 auto;transition:transform .18s cubic-bezier(.22,1,.36,1)}.booking-room-segment-disclosure svg.is-up{transform:rotate(180deg)}.booking-room-segment-disclosure em{padding:1px 5px;border-radius:999px;background:var(--color-warning-soft);color:var(--color-warning);font-size:7px;font-style:normal;white-space:nowrap}.booking-room-segment-disclosure small{margin-left:auto;color:var(--color-text-secondary);font-size:8px;font-weight:var(--font-normal);white-space:nowrap}.booking-room-segment-disclosure+.booking-room-rate-footer{border-top:1px solid var(--color-border-light)}@container (max-width: 620px){.booking-room-segment-card{grid-template-areas:"index stay stay total" "index plan rate posting";grid-template-columns:28px minmax(0,1fr) minmax(82px,auto) 86px;gap:5px 7px;min-height:72px}.booking-room-segment-card-index{grid-area:index}.booking-room-segment-card-stay{grid-area:stay}.booking-room-segment-card-plan{grid-area:plan}.booking-room-segment-card-rate{grid-area:rate}.booking-room-segment-card-total{grid-area:total}.booking-room-segment-card-posting{grid-area:posting}}@container (max-width: 410px){.booking-room-segment-insights{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-room-segment-insights>div:nth-child(3){border-top:1px solid var(--color-border-light);border-left:0}.booking-room-segment-insights>div:nth-child(4){border-top:1px solid var(--color-border-light)}.booking-room-segment-card{grid-template-areas:"index stay total" "plan plan plan" "rate posting posting";grid-template-columns:28px minmax(0,1fr) auto;min-height:112px}.booking-room-segment-card-plan{padding-top:5px;border-top:1px solid var(--color-border-light)}.booking-room-segment-card-posting{justify-self:end}}.booking-room-night-strip{display:grid;gap:4px;min-width:0;padding:7px;overflow-x:auto;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);background:var(--color-bg-secondary);scrollbar-width:thin}.booking-room-night-cell{display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:62px;padding:5px 6px;border:1px solid var(--color-border-light);border-radius:7px;background:var(--color-bg-card)}.booking-room-night-cell.is-adjusted{border-color:color-mix(in srgb,var(--color-primary) 28%,var(--color-border-light));background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card))}.booking-room-night-cell.is-posted{box-shadow:inset 0 -2px 0 var(--color-success)}.booking-room-night-cell>div{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0}.booking-room-night-cell span,.booking-room-night-cell small,.booking-room-night-cell em{color:var(--color-text-muted);font-size:8px;font-style:normal;white-space:nowrap}.booking-room-night-cell span{color:var(--color-text-secondary);font-weight:var(--font-semibold)}.booking-room-night-cell strong{overflow:hidden;color:var(--color-text);font-family:var(--font-mono);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.booking-room-night-cell.is-adjusted strong,.booking-room-night-cell.is-adjusted em{color:var(--color-primary)}.booking-room-night-cell s{color:var(--color-text-muted)}.booking-room-rate-footer{display:flex;align-items:center;gap:7px;min-height:31px;padding:4px 7px;background:var(--color-bg-secondary)}.booking-room-rate-signature,.booking-room-rate-totals{display:flex;align-items:center;gap:4px;min-width:0}.booking-room-rate-signature{flex:0 1 auto}.booking-room-rate-signature>span{padding:2px 5px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:8px;white-space:nowrap}.booking-room-rate-signature strong,.booking-room-rate-totals strong{color:var(--color-text);font-family:var(--font-mono)}.booking-room-rate-totals{flex:0 0 auto;gap:9px;margin-left:auto;color:var(--color-text-secondary);font-size:8px;white-space:nowrap}.booking-room-rate-footer .booking-room-rate-ledger-trigger{flex:0 0 auto;width:auto;padding:3px 6px;border:1px solid color-mix(in srgb,var(--color-primary) 24%,var(--color-border-light));border-radius:6px;background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card))}.booking-room-rate-footer .booking-room-rate-ledger-trigger svg:last-child{margin-left:1px}.booking-room-rate-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:0;overflow:hidden;border-top:1px solid var(--color-border-light);border-right:0;border-bottom:1px solid var(--color-border-light);border-left:0;border-radius:0;background:var(--color-border-light)}.booking-room-rate-kpis>div{display:flex;align-items:baseline;justify-content:space-between;gap:6px;padding:5px 9px;background:var(--color-bg-card)}.booking-room-rate-kpis span{color:var(--color-text-muted);font-size:8px;text-transform:uppercase;letter-spacing:.04em}.booking-room-rate-kpis strong{color:var(--color-text);font-family:var(--font-mono);font-size:11px}.booking-room-rate-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:0;padding:7px;border:0;border-radius:0}.booking-room-rate-group{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;align-items:stretch;gap:5px;min-height:104px;padding:7px 8px;border:1px solid var(--color-border-light);border-radius:8px;background:var(--color-bg-card)}.booking-room-rate-group+.booking-room-rate-group{border-top:1px solid var(--color-border-light)}.booking-room-rate-more{grid-column:1 / -1;padding:4px 7px;border-top:1px solid var(--color-border-light);background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:8px}.booking-room-rate-group-value,.booking-room-rate-group-story,.booking-room-rate-group-total{display:flex}.booking-room-rate-group-value{flex-direction:row;align-items:baseline;justify-content:space-between;gap:6px}.booking-room-rate-group-value strong{color:var(--color-text);font-family:var(--font-mono);font-size:12px}.booking-room-rate-group-value span,.booking-room-rate-group-story span,.booking-room-rate-group-total span{color:var(--color-text-muted);font-size:8px}.booking-room-rate-group-story strong{color:var(--color-text);font-size:9px;white-space:nowrap}.booking-room-rate-group-story{flex-direction:column;min-width:0}.booking-room-rate-band{display:block;width:100%;overflow:hidden;border-radius:999px;background:var(--color-bg-tertiary)}.booking-room-rate-band strong{display:none}.booking-room-rate-band{align-items:center}.booking-room-rate-band>span{display:block;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 45%,white))}.booking-room-rate-group-story>small{display:block;overflow:hidden;margin-top:2px;color:var(--color-text-muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.booking-room-rate-group-config{display:flex;align-items:center;gap:3px;min-width:0;margin-top:2px;overflow:hidden;white-space:nowrap}.booking-room-rate-group-config span{flex:0 0 auto;padding:1px 4px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:8px}.booking-room-rate-group-config .is-adjusted{background:color-mix(in srgb,var(--color-primary) 9%,transparent);color:var(--color-primary)}.booking-room-rate-group-total{flex-direction:row;align-items:baseline;justify-content:space-between;gap:6px;padding-top:5px;border-top:1px solid var(--color-border-light);text-align:left}.booking-room-rate-group-total strong{color:var(--color-text);font-family:var(--font-mono);font-size:11px}.booking-room-rate-ledger-trigger{display:flex;align-items:center;gap:5px;width:100%;padding:5px 7px;border:0;border-top:1px solid var(--color-border-light);background:var(--color-bg-secondary);color:var(--color-primary);font-size:9px;font-weight:var(--font-semibold);text-align:left;cursor:pointer}.booking-room-rate-ledger-trigger svg:last-child{margin-left:auto}.booking-room-rate-ledger-trigger:hover{background:color-mix(in srgb,var(--color-primary) 7%,var(--color-bg-card))}.booking-room-rate-ledger-scroll{overflow-x:auto}.booking-room-rate-ledger table{width:100%;border-collapse:separate;border-spacing:0;font-size:11px}.booking-room-rate-ledger th,.booking-room-rate-ledger td{height:42px;padding:7px 10px;border-bottom:1px solid var(--color-border-light);text-align:left;white-space:nowrap}.booking-room-rate-ledger th{background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:8px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.06em}.modal-overlay.booking-rate-ledger-overlay{align-items:center;justify-content:center;padding:24px;z-index:1100;background:color-mix(in srgb,var(--color-text) 38%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal.booking-rate-ledger-modal{display:flex;flex-direction:column;width:min(620px,calc(100vw - 80px));max-width:620px;height:min(500px,calc(100dvh - 64px));max-height:76dvh;padding:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--color-border) 84%,transparent);border-radius:16px;background:var(--color-bg-card);box-shadow:0 24px 70px #0f172a3d;animation:bookingLedgerPopIn .16s ease-out}.booking-rate-ledger-modal .modal-header{display:block;flex:0 0 auto;margin:0;padding:10px 12px 8px;border-bottom:1px solid var(--color-border-light);background:var(--color-bg-card)}.booking-rate-ledger-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.booking-rate-ledger-heading{display:flex;align-items:center;gap:7px;min-width:0}.booking-rate-ledger-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;border-radius:8px;background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.booking-rate-ledger-eyebrow{margin-bottom:0;color:var(--color-primary);font-size:9px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.08em}.booking-rate-ledger-modal .modal-title{font-size:16px;line-height:1.2}.booking-rate-ledger-subtitle{display:flex;align-items:center;gap:5px;margin-top:2px;color:var(--color-text-muted);font-size:10px}.booking-rate-ledger-subtitle i{width:3px;height:3px;border-radius:50%;background:var(--color-border)}.booking-rate-ledger-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:26px;height:26px;border:0;border-radius:10px;background:var(--color-bg-card);color:var(--color-text-muted);cursor:pointer}.booking-rate-ledger-close:hover{border-color:var(--color-border);background:var(--color-bg-secondary);color:var(--color-text)}.booking-rate-ledger-totals{display:flex;align-items:center;flex-wrap:wrap;gap:5px;padding:8px 0 0;border:0;background:transparent}.booking-rate-ledger-totals>div{display:inline-flex;flex-direction:row;align-items:baseline;gap:5px;min-width:auto;padding:4px 7px;border:1px solid var(--color-border-light);border-radius:7px;background:var(--color-bg-secondary)}.booking-rate-ledger-totals>div:first-child{border-color:color-mix(in srgb,var(--color-primary) 20%,var(--color-border-light));background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card))}.booking-rate-ledger-totals span{color:var(--color-text-muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.booking-rate-ledger-totals strong{margin-top:0;color:var(--color-text);font-family:var(--font-mono);font-size:12px}.booking-rate-ledger-totals .is-positive strong{color:var(--color-success)}.booking-rate-ledger-section-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 10px 6px;background:var(--color-bg-card)}.booking-rate-ledger-section-head strong{color:var(--color-text);font-size:12px}.booking-rate-ledger-section-head span{color:var(--color-text-muted);font-size:10px}.booking-rate-ledger-modal .booking-room-rate-ledger-scroll{flex:1 1 auto;min-height:0;height:auto;max-height:none;overflow:auto;margin:0 8px 8px;padding:0;border:1px solid var(--color-border-light);border-radius:7px}.booking-rate-ledger-modal .booking-room-rate-ledger table{width:100%;min-width:540px;table-layout:fixed}.booking-rate-ledger-modal .booking-room-rate-ledger th:nth-child(1){width:14%}.booking-rate-ledger-modal .booking-room-rate-ledger th:nth-child(2){width:31%}.booking-rate-ledger-modal .booking-room-rate-ledger th:nth-child(3){width:25%}.booking-rate-ledger-modal .booking-room-rate-ledger th:nth-child(4){width:30%}.booking-rate-ledger-modal .booking-room-rate-ledger th{position:sticky;top:0;z-index:2;height:28px;padding:4px 9px;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);font-size:9px}.booking-rate-ledger-modal .booking-room-rate-ledger tbody tr{background:var(--color-bg-card)}.booking-rate-ledger-modal .booking-room-rate-ledger td{height:36px;padding:5px 9px;font-size:12px}.booking-rate-ledger-modal .booking-room-rate-ledger td:first-child strong,.booking-rate-ledger-modal .booking-room-rate-ledger .booking-rate-final,.booking-rate-ledger-modal .booking-rate-movement strong{font-size:12px}.booking-rate-ledger-modal .booking-room-rate-ledger tbody tr:hover{background:var(--color-bg-secondary)}.booking-rate-ledger-modal .booking-room-rate-ledger tbody tr.is-adjusted{background:color-mix(in srgb,var(--color-primary) 2.5%,var(--color-bg-card))}.booking-rate-movement{display:flex;align-items:center;gap:6px}.booking-rate-movement .is-base{color:var(--color-text-muted);text-decoration:line-through}.booking-rate-movement strong,.booking-rate-final{color:var(--color-text);font-family:var(--font-mono)}.booking-rate-plan-tags{display:flex;align-items:center;gap:4px}.booking-rate-config-cell{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}.booking-rate-tax{display:inline;margin:0;color:var(--color-text-muted);font-size:10px;line-height:normal;white-space:nowrap}.booking-rate-final-cell{display:flex;align-items:baseline;gap:5px;white-space:nowrap}.booking-rate-plan-tags span{padding:2px 6px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:10px}.booking-rate-plan-tags .is-season{background:color-mix(in srgb,var(--color-primary) 9%,transparent);color:var(--color-primary)}.booking-rate-posting{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-muted);font-size:9px;font-weight:var(--font-semibold)}.booking-rate-posting.is-posted{background:color-mix(in srgb,var(--color-success) 10%,transparent);color:var(--color-success)}@keyframes bookingLedgerPopIn{0%{transform:translateY(8px) scale(.985);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@container (max-width: 900px){.booking-room-sharer-row{grid-template-columns:28px minmax(150px,1fr) minmax(200px,1.25fr) auto;grid-template-rows:auto auto;gap:3px 9px}.booking-room-sharer-contact{grid-column:2;grid-row:2}.booking-room-sharer-stay{grid-column:3;grid-row:1 / span 2}.booking-room-sharer-actions{grid-column:4;grid-row:1 / span 2}.booking-room-rate-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (max-width: 520px){.booking-room-workspace{grid-template-columns:minmax(0,1fr)}.booking-room-insight-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-room-insight-ribbon>div:nth-child(3):before{display:none}.booking-room-insight-ribbon>div:nth-child(n+3){border-top:1px solid var(--color-border-light)}.booking-room-sharer-row{grid-template-columns:28px minmax(0,1fr) auto;grid-template-rows:auto auto auto;gap:3px 8px}.booking-room-sharer-contact{grid-column:2;grid-row:2}.booking-room-sharer-stay{grid-column:2 / -1;grid-row:3}.booking-room-sharer-actions{grid-column:3;grid-row:1 / span 2}.booking-room-rate-groups{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.modal-overlay.booking-rate-ledger-overlay{align-items:center;padding:12px}.modal.booking-rate-ledger-modal{width:calc(100vw - 24px);max-width:620px;height:min(520px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);border-radius:12px}.booking-rate-ledger-totals{display:flex;gap:4px}.booking-rate-ledger-modal .booking-room-rate-ledger-scroll{height:auto;margin-right:8px;margin-left:8px}.booking-rate-ledger-modal .booking-room-rate-ledger table{min-width:540px}.booking-rate-ledger-modal .booking-room-rate-ledger th:first-child,.booking-rate-ledger-modal .booking-room-rate-ledger td:first-child{position:sticky;left:0;z-index:2;background:var(--color-bg-card);box-shadow:1px 0 0 var(--color-border-light)}.booking-rate-ledger-modal .booking-room-rate-ledger th:first-child{z-index:3;background:var(--color-bg-secondary)}.booking-rate-ledger-modal .booking-room-rate-ledger tr.is-adjusted td:first-child{background:color-mix(in srgb,var(--color-primary) 2.5%,var(--color-bg-card))}.booking-room-card-titlebar{align-items:flex-start;flex-wrap:wrap}.booking-room-card-identity{flex:1 0 100%;width:100%}.booking-room-card-actions{width:100%;padding-top:6px;border-top:1px solid var(--color-border-light)}.booking-room-card-total{align-items:flex-start;margin-right:auto;padding-right:0;border-right:0}.booking-room-card-actions .btn{min-height:26px;padding-right:7px;padding-left:7px;font-size:10px}.booking-room-rate-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-room-rate-group{grid-template-columns:76px minmax(0,1fr) auto;gap:var(--space-2)}.booking-room-rate-group-config{grid-column:2 / -1}.booking-room-nightly-summary{display:none}.booking-room-sharers-header{align-items:flex-start}.booking-room-sharers-composition{gap:var(--space-2)}.booking-room-sharer-row{grid-template-columns:32px minmax(0,1fr) auto;gap:var(--space-2);padding:var(--space-3) 0}.booking-room-sharer-identity,.booking-room-sharer-contact{grid-column:2}.booking-room-sharer-stay{grid-column:2 / -1;grid-row:auto;flex-wrap:wrap}.booking-room-sharer-actions{grid-column:3;grid-row:1}.booking-room-sharer-nights{margin-left:0}}.audit-log-list{display:flex;flex-direction:column;gap:var(--space-2)}.audit-log-item{font-size:var(--text-xs);color:var(--color-text-secondary);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);line-height:1.5}.audit-log-item:last-child{border-bottom:none}.audit-field{font-weight:var(--font-semibold);color:var(--color-text)}.booking-view-toggle{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.booking-view-toggle button{display:flex;align-items:center;gap:6px;padding:6px 14px;border:none;background:var(--color-bg-card);cursor:pointer;font-size:.78rem;font-weight:600;color:var(--color-text-muted);transition:all .15s}.booking-view-toggle button+button{border-left:1px solid var(--color-border)}.booking-view-toggle button.active{background:var(--color-primary);color:#fff}.booking-view-toggle button:hover:not(.active){background:var(--color-bg-tertiary)}.timeline-container{width:100%}.timeline-controls{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap}.timeline-nav{display:flex;align-items:center;gap:var(--space-2)}.timeline-nav-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);cursor:pointer;transition:all .12s}.timeline-nav-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.timeline-date-input{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:5px 10px;font-size:.82rem;font-family:var(--font-family);background:var(--color-bg-card);color:var(--color-text)}.timeline-today-btn{font-weight:600!important;color:var(--color-primary)!important}.timeline-zoom{display:flex;align-items:center;gap:6px;margin-left:auto}.timeline-zoom-btn{padding:4px 10px;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-card);font-size:.72rem;font-weight:600;cursor:pointer;color:var(--color-text-muted);transition:all .12s}.timeline-zoom-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.timeline-zoom-btn:hover:not(.active){border-color:var(--color-primary);color:var(--color-primary)}.timeline-filter-checkbox{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 12px;border:1px solid var(--color-border);border-radius:var(--radius-full);transition:all .15s}.timeline-filter-checkbox:hover{border-color:var(--color-primary);color:var(--color-primary)}.timeline-filter-checkbox input[type=checkbox]{accent-color:var(--color-primary);width:14px;height:14px;cursor:pointer}.timeline-room-count{font-size:.78rem;color:var(--color-text-muted);font-weight:600}.timeline-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-8) 0;color:var(--color-primary)}.timeline-grid-wrapper{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}.timeline-grid{display:grid;min-width:100%}.timeline-header-cell{padding:6px 4px;text-align:center;font-size:.68rem;font-weight:600;text-transform:uppercase;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary);position:sticky;top:0;z-index:10}.timeline-room-header{display:flex;align-items:center;gap:6px;justify-content:flex-start;padding-left:12px;font-size:.72rem;font-weight:700;color:var(--color-text);position:sticky;left:0;background:var(--color-bg-tertiary);z-index:11}.timeline-date-header{display:flex;flex-direction:column;align-items:center;gap:2px;border-left:1px solid var(--color-border)}.timeline-date-header.sunday{background:#00000005}.timeline-date-header.today{background:var(--color-brand-light)}.timeline-date-day{font-size:.6rem;letter-spacing:.03em}.timeline-date-num{font-size:.82rem;font-weight:700;color:var(--color-text)}.timeline-date-num.today-num{background:var(--color-primary);color:#fff;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem}.timeline-month-label{padding:3px 12px;font-size:.65rem;font-weight:700;color:var(--color-text-muted);letter-spacing:.05em;text-align:center;background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border)}.timeline-type-header{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-border);position:sticky;left:0}.timeline-type-dot{width:8px;height:8px;border-radius:50%;background:var(--color-primary)}.timeline-type-name{font-size:.75rem;font-weight:700;text-transform:uppercase;color:var(--color-text);letter-spacing:.03em}.timeline-type-count{font-size:.72rem;color:var(--color-text-muted);font-weight:500}.timeline-room-label{padding:8px 12px;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);background:var(--color-bg-card);position:sticky;left:0;z-index:5;display:flex;flex-direction:column;justify-content:center}.timeline-room-label.ooo{background:repeating-linear-gradient(-45deg,var(--color-bg-card),var(--color-bg-card) 5px,rgba(239,68,68,.05) 5px,rgba(239,68,68,.05) 10px)}.timeline-room-name{font-weight:700;font-size:.82rem;color:var(--color-text)}.timeline-room-meta{font-size:.65rem;color:var(--color-text-muted);margin-top:1px}.timeline-room-cells{border-bottom:1px solid var(--color-border);min-height:44px}.timeline-cell-grid{display:grid;height:100%}.timeline-cell{border-left:1px solid var(--color-border);cursor:pointer;transition:background .1s;min-height:44px}.timeline-cell:hover:not(.ooo){background:#3b82f60f}.timeline-cell.today{background:#3b82f60a;border-left:2px solid var(--color-primary)}.timeline-cell.sunday{background:#00000004}.timeline-cell.ooo{cursor:not-allowed;background:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(239,68,68,.06) 4px,rgba(239,68,68,.06) 8px)}.timeline-booking-block{position:absolute;top:4px;bottom:4px;border-radius:5px;border:1.5px solid;display:flex;align-items:center;padding:0 8px;font-size:.72rem;font-weight:600;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;z-index:3;transition:transform .1s,box-shadow .1s}.timeline-booking-block:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001f;z-index:4}.timeline-booking-name{overflow:hidden;text-overflow:ellipsis}.timeline-ooo-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(239,68,68,.08) 4px,rgba(239,68,68,.08) 8px);z-index:2;pointer-events:none}.timeline-legend{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;margin-top:var(--space-3);flex-wrap:wrap}.timeline-legend-item{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:500;color:var(--color-text-muted)}.timeline-legend-swatch{width:16px;height:10px;border-radius:2px;border:1.5px solid}.timeline-legend-ooo{background:repeating-linear-gradient(-45deg,transparent,transparent 2px,rgba(239,68,68,.15) 2px,rgba(239,68,68,.15) 4px);border-color:#ef44444d}.timeline-legend-today{background:var(--color-brand-light);border-color:var(--color-primary)}.timeline-legend-hint{margin-left:auto;font-size:.7rem;font-style:italic;color:var(--color-text-muted);opacity:.7}.booking-rate-overview{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid var(--color-border-light)}.booking-rate-overview-copy{min-width:0;display:flex;align-items:center;gap:10px}.booking-rate-overview-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--color-primary);background:var(--color-primary-soft);border-radius:6px}.booking-rate-overview-copy>span:last-child{min-width:0;display:grid;gap:2px}.booking-rate-overview-copy strong{color:var(--color-text-primary);font-size:13px}.booking-rate-overview-copy small{color:var(--color-text-muted);font-size:12px}.booking-rate-split-action{min-height:32px;flex:0 0 auto}.booking-guest-date-status.inherited{color:var(--color-text-muted);background:transparent;border-color:transparent}.booking-guest-date-status.inherited~.booking-date-input{opacity:.72}.booking-guest-date-status.inherited~.booking-date-input:focus-within{opacity:1}@media(max-width:759px){.booking-rate-overview{align-items:flex-start;flex-direction:column;gap:10px}.booking-rate-split-action{width:100%}}.booking-detail-grid>.booking-edit-rooms-panel{grid-column:1 / -1;width:100%;min-width:0;padding:14px}.booking-edit-rooms-panel .booking-detail-card-title{margin-bottom:10px}.booking-edit-rooms-panel .booking-edit-room-list,.booking-edit-rooms-panel .booking-edit-room-card{width:100%;min-width:0}.booking-edit-rooms-panel .booking-edit-room-card{overflow:hidden!important}.booking-edit-rooms-panel .booking-edit-room-header{min-height:46px;padding:8px 12px}.booking-edit-rooms-panel .booking-edit-room-basics{grid-template-columns:minmax(170px,.68fr) minmax(360px,1.3fr) minmax(240px,1fr);gap:8px 12px;padding:10px 12px}.booking-edit-rooms-panel .booking-edit-room-basics .input,.booking-edit-rooms-panel .booking-edit-room-basics .select,.booking-edit-rooms-panel .booking-edit-date-range{width:100%;max-width:100%;min-width:0}.booking-edit-rooms-panel .booking-edit-room-basics .input,.booking-edit-rooms-panel .booking-edit-room-basics .select{min-height:34px}.booking-edit-rooms-panel .booking-rate-schedule-edit{padding:10px 12px}.booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-editor{overflow-x:auto;scrollbar-width:thin}.booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-table{min-width:780px}.booking-edit-rooms-panel .booking-rate-segment-grid-header>span{white-space:nowrap;line-height:1.2}.booking-edit-rooms-panel .booking-rate-segment-grid input,.booking-edit-rooms-panel .booking-rate-segment-grid select{min-height:34px;font-size:13px!important}.booking-edit-rooms-panel .booking-edit-occupancy{display:flex;align-items:center;gap:32px;padding:8px 12px}.booking-edit-rooms-panel .booking-edit-occupancy>div{display:flex;flex:0 0 auto;align-items:center;gap:10px}.booking-edit-rooms-panel .booking-edit-occupancy .form-label{min-width:auto;margin:0!important}.booking-edit-rooms-panel .booking-edit-meal-summary{margin:8px 12px 0}.booking-edit-rooms-panel .booking-edit-guests{padding:10px 12px}@media(min-width:761px){.booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-grid{grid-template-columns:32px minmax(145px,176px) 18px minmax(145px,176px) minmax(250px,1fr) minmax(110px,140px) 28px!important;column-gap:8px;min-width:780px;padding:5px 8px}}@media(min-width:761px)and (max-width:1100px){.booking-edit-rooms-panel .booking-edit-room-basics{grid-template-columns:minmax(180px,.75fr) minmax(0,1.4fr)}.booking-edit-rooms-panel .booking-edit-room-plan{grid-column:1 / -1}}@media(max-width:760px){.booking-detail-grid>.booking-edit-rooms-panel{padding:10px}.booking-edit-rooms-panel .booking-edit-room-basics{grid-template-columns:1fr}.booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-table{min-width:0}.booking-edit-rooms-panel .booking-edit-occupancy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.booking-edit-rooms-panel .booking-edit-occupancy>div{display:block}}.edit-booking-page .booking-detail-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;width:100%}.edit-booking-page .booking-edit-main-column{display:flex;min-width:0;flex-direction:column;gap:16px}.edit-booking-page .booking-edit-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.edit-booking-page .booking-detail-grid>.booking-edit-rooms-panel{grid-column:auto;padding:14px}.edit-booking-page .booking-edit-rooms-panel .booking-edit-room-card{overflow:hidden}.edit-booking-page .booking-edit-rooms-panel .booking-edit-room-basics{grid-template-columns:minmax(170px,.62fr) minmax(360px,1.28fr) minmax(250px,.9fr);gap:8px 12px;padding:10px 12px}.edit-booking-page .booking-edit-rooms-panel .booking-rate-schedule-edit{padding:10px 12px}.edit-booking-page .booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-editor{overflow:visible}.edit-booking-page .booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-table{min-width:0}@media(min-width:901px){.edit-booking-page .booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-grid{grid-template-columns:30px minmax(134px,156px) 14px minmax(134px,156px) minmax(210px,1fr) minmax(108px,128px) 30px!important;min-width:0;column-gap:7px;padding:5px 8px}.edit-booking-page .booking-edit-room-card .booking-edit-guest-entry{grid-template-columns:minmax(260px,1fr) minmax(330px,.95fr);gap:7px 12px}}@media(max-width:1100px){.edit-booking-page .booking-edit-rooms-panel .booking-edit-room-basics{grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr)}.edit-booking-page .booking-edit-rooms-panel .booking-edit-room-plan{grid-column:1 / -1}.edit-booking-page .booking-edit-sidebar{grid-template-columns:1fr}}@media(min-width:761px)and (max-width:900px){.edit-booking-page .booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-editor{overflow-x:auto;scrollbar-width:thin}.edit-booking-page .booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-table{min-width:720px}.edit-booking-page .booking-edit-rooms-panel .booking-rate-schedule-edit .booking-rate-segment-grid{grid-template-columns:30px 132px 14px 132px minmax(210px,1fr) 108px 28px!important;min-width:720px;column-gap:7px}}@media(max-width:760px){.edit-booking-page .booking-edit-sidebar{grid-template-columns:1fr}.edit-booking-page .booking-detail-grid>.booking-edit-rooms-panel{padding:10px}}.edit-booking-page{--edit-control-height: 36px;overflow-x:clip}.edit-booking-page *,.edit-booking-page *:before,.edit-booking-page *:after{box-sizing:border-box}.edit-booking-page .booking-detail-grid,.edit-booking-page .booking-edit-main-column,.edit-booking-page .booking-edit-rooms-panel,.edit-booking-page .booking-edit-room-list,.edit-booking-page .booking-edit-room-card,.edit-booking-page .booking-edit-room-basics,.edit-booking-page .booking-rate-schedule-edit,.edit-booking-page .booking-rate-segment-editor,.edit-booking-page .booking-rate-segment-table,.edit-booking-page .booking-edit-guests,.edit-booking-page .booking-edit-guest-list,.edit-booking-page .booking-edit-guest-entry{width:100%;min-width:0;max-width:100%}.edit-booking-page .booking-detail-grid>.booking-edit-rooms-panel{padding:12px}.edit-booking-page .booking-edit-room-list{gap:10px!important}.edit-booking-page .booking-edit-room-card{border-radius:6px;box-shadow:none}.edit-booking-page .booking-edit-room-header{min-height:44px;padding:7px 12px}.edit-booking-page .booking-edit-room-header h5,.edit-booking-page .booking-edit-room-header .booking-edit-room-title{margin:0;font-size:14px;line-height:1.25}.edit-booking-page .booking-edit-room-basics{align-items:end;grid-template-columns:minmax(170px,.62fr) minmax(390px,1.35fr) minmax(250px,.9fr)!important;gap:8px 12px!important;padding:9px 12px!important}.edit-booking-page .booking-edit-room-basics>*,.edit-booking-page .booking-edit-date-range>*,.edit-booking-page .booking-rate-segment-grid>*,.edit-booking-page .booking-edit-guest-entry>*{min-width:0}.edit-booking-page .booking-edit-room-basics .form-label,.edit-booking-page .booking-rate-segment-grid-header,.edit-booking-page .booking-edit-guest-label{font-size:12px;line-height:1.2}.edit-booking-page .booking-edit-room-basics .input,.edit-booking-page .booking-edit-room-basics .select,.edit-booking-page .booking-edit-room-basics input,.edit-booking-page .booking-edit-room-basics select{height:var(--edit-control-height);min-height:var(--edit-control-height);font-size:13px}.edit-booking-page .booking-edit-room-plan select,.edit-booking-page .booking-rate-segment-plan select{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-date-range{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)!important;gap:7px}.edit-booking-page .booking-rate-schedule-edit{padding:9px 12px!important}.edit-booking-page .booking-rate-schedule-header{min-height:34px;margin-bottom:6px}.edit-booking-page .booking-rate-schedule-title{gap:7px}.edit-booking-page .booking-rate-segment-editor{overflow:hidden!important;border-radius:6px}.edit-booking-page .booking-rate-segment-table{min-width:0!important}.edit-booking-page .booking-rate-segment-grid{align-items:center;min-height:44px;padding:4px 7px!important}.edit-booking-page .booking-rate-segment-grid-header{min-height:28px;padding-top:5px!important;padding-bottom:5px!important}.edit-booking-page .booking-rate-segment-grid input,.edit-booking-page .booking-rate-segment-grid select,.edit-booking-page .booking-rate-segment-grid .input,.edit-booking-page .booking-rate-segment-grid .select{height:34px;min-height:34px;min-width:0;font-size:13px!important}.edit-booking-page .booking-rate-segment-remove{width:28px;height:28px;opacity:.72}.edit-booking-page .booking-rate-add-segment{width:fit-content;min-height:32px;margin:6px 7px 7px;padding:5px 10px}.edit-booking-page .booking-edit-occupancy{min-height:42px;gap:28px!important;padding:7px 12px!important}.edit-booking-page .booking-edit-meal-summary{min-height:36px;margin:7px 12px 0!important;padding:7px 10px}.edit-booking-page .booking-edit-guests{padding:9px 12px!important}.edit-booking-page .booking-edit-guests-title{min-height:30px;margin-bottom:5px}.edit-booking-page .booking-edit-guest-list{overflow:hidden;border-radius:6px}.edit-booking-page .booking-edit-room-card .booking-edit-guest-entry{align-items:center;grid-template-columns:minmax(280px,1.15fr) minmax(330px,.85fr)!important;gap:7px 12px!important;min-height:52px!important;padding:6px 8px 6px 38px!important}.edit-booking-page .booking-edit-guest-label{top:50%;transform:translateY(-50%)}.edit-booking-page .booking-edit-guest-identity,.edit-booking-page .booking-edit-resolved-guest{align-items:center!important;min-width:0;gap:8px!important}.edit-booking-page .booking-edit-guest-identity>*,.edit-booking-page .booking-edit-resolved-guest>*{min-width:0}.edit-booking-page .booking-edit-guest-identity input,.edit-booking-page .booking-edit-guest-identity .input{height:var(--edit-control-height);min-height:var(--edit-control-height);font-size:13px}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls{align-items:center;grid-template-columns:68px minmax(112px,1fr) 14px minmax(112px,1fr) 28px!important;gap:6px!important;width:100%;min-width:0}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls>*{min-width:0}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls input,.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .input{height:var(--edit-control-height);min-height:var(--edit-control-height);font-size:13px}.edit-booking-page .booking-edit-primary-guest{min-height:36px;padding:7px 10px;font-size:13px}@media(min-width:1180px){.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-grid{grid-template-columns:30px minmax(138px,154px) 14px minmax(138px,154px) minmax(220px,1fr) minmax(106px,126px) 28px!important;column-gap:7px;min-width:0!important}}@media(min-width:901px)and (max-width:1179px){.edit-booking-page .booking-edit-room-basics{grid-template-columns:minmax(170px,.65fr) minmax(0,1.35fr)!important}.edit-booking-page .booking-edit-room-plan{grid-column:1 / -1}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-editor{overflow-x:auto!important;scrollbar-width:thin}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-table{min-width:760px!important}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-grid{grid-template-columns:30px 136px 14px 136px minmax(220px,1fr) 110px 28px!important;min-width:760px!important;column-gap:7px}.edit-booking-page .booking-edit-room-card .booking-edit-guest-entry{grid-template-columns:minmax(240px,1fr) minmax(310px,1fr)!important}}@media(min-width:761px)and (max-width:900px){.edit-booking-page .booking-edit-room-basics{grid-template-columns:1fr 1.45fr!important}.edit-booking-page .booking-edit-room-plan{grid-column:1 / -1}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-editor{overflow-x:auto!important;scrollbar-width:thin}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-table{min-width:720px!important}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-grid{grid-template-columns:30px 132px 14px 132px minmax(205px,1fr) 105px 28px!important;min-width:720px!important}.edit-booking-page .booking-edit-room-card .booking-edit-guest-entry{grid-template-columns:minmax(0,1fr)!important;gap:6px!important;padding-top:7px!important;padding-bottom:7px!important}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls{max-width:540px}}@media(max-width:760px){.edit-booking-page{--edit-control-height: 40px;overflow-x:hidden}.edit-booking-page .booking-detail-grid>.booking-edit-rooms-panel{padding:8px}.edit-booking-page .booking-edit-room-header{align-items:flex-start;flex-wrap:wrap;gap:6px}.edit-booking-page .booking-edit-room-basics{grid-template-columns:minmax(0,1fr)!important;padding:9px!important}.edit-booking-page .booking-edit-room-plan{grid-column:auto}.edit-booking-page .booking-rate-schedule-edit{padding:9px!important}.edit-booking-page .booking-rate-schedule-header{align-items:flex-start;flex-direction:column;gap:7px}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-table{min-width:0!important}.edit-booking-page .booking-rate-schedule-edit .booking-rate-segment-grid{grid-template-columns:30px minmax(0,1fr) 14px minmax(0,1fr) 28px!important;gap:6px;min-width:0!important;padding:7px!important}.edit-booking-page .booking-rate-segment-grid-header{display:none}.edit-booking-page .booking-rate-segment-plan,.edit-booking-page .booking-rate-segment-override{grid-column:2 / 5}.edit-booking-page .booking-rate-segment-remove{grid-column:5;grid-row:1}.edit-booking-page .booking-edit-occupancy{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}.edit-booking-page .booking-edit-room-card .booking-edit-guest-entry{grid-template-columns:minmax(0,1fr)!important;gap:7px!important;padding:9px 8px 9px 38px!important}.edit-booking-page .booking-edit-guest-label{top:18px;transform:none}.edit-booking-page .booking-edit-guest-identity{flex-wrap:wrap}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr) 28px!important}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls>:first-child{grid-column:1 / -1}}.edit-booking-page{--edit-accent: var(--color-primary);--edit-accent-soft: color-mix(in srgb, var(--color-primary) 8%, white);--edit-line: #dce4ee}.edit-booking-page .booking-edit-page-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;margin:-4px -4px 14px;padding:10px 4px;background:color-mix(in srgb,var(--color-bg-primary) 94%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-border) 76%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.edit-booking-page .booking-edit-page-heading{display:flex;align-items:center;gap:10px;min-width:0}.edit-booking-page .booking-edit-back{display:inline-grid;place-items:center;width:34px;min-width:34px;height:34px;padding:0;border:1px solid var(--edit-line);border-radius:8px;background:#fff}.edit-booking-page .booking-edit-page-heading>div{min-width:0}.edit-booking-page .booking-edit-page-heading h2{margin:1px 0 0;color:var(--color-text-primary);font-size:clamp(20px,2vw,25px);line-height:1.1}.edit-booking-page .booking-edit-page-heading p{overflow:hidden;margin:3px 0 0;color:var(--color-text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-eyebrow{display:flex;align-items:center;gap:7px;color:var(--color-text-muted);font-size:10px;font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase}.edit-booking-page .booking-edit-status{padding:3px 6px;border-radius:999px;background:#eef2f7;color:#475569;font-size:9px;letter-spacing:.04em}.edit-booking-page .booking-edit-status-confirmed,.edit-booking-page .booking-edit-status-checkedin,.edit-booking-page .booking-edit-status-partiallycheckedin{background:#e8f7ef;color:#087443}.edit-booking-page .booking-edit-save-primary{min-width:132px;min-height:38px;box-shadow:0 8px 20px color-mix(in srgb,var(--color-primary) 22%,transparent)}.edit-booking-page .booking-edit-booking-card,.edit-booking-page .booking-edit-rooms-panel{border-color:var(--edit-line);border-radius:9px;box-shadow:0 4px 18px #0f172a0a}.edit-booking-page .booking-edit-booking-card{padding:14px}.edit-booking-page .booking-edit-section-heading,.edit-booking-page .booking-edit-rooms-heading{display:flex;align-items:center;min-width:0}.edit-booking-page .booking-edit-section-heading{gap:9px;margin-bottom:12px}.edit-booking-page .booking-edit-section-heading>div{min-width:0}.edit-booking-page .booking-edit-section-heading h4{margin:0;color:var(--color-text-primary);font-size:14px;line-height:1.2}.edit-booking-page .booking-edit-section-heading p{margin:2px 0 0;color:var(--color-text-muted);font-size:11px;line-height:1.35}.edit-booking-page .booking-edit-section-icon{display:inline-grid;place-items:center;width:30px;min-width:30px;height:30px;border-radius:8px;background:var(--edit-accent-soft);color:var(--edit-accent)}.edit-booking-page .booking-edit-level-badge{margin-left:auto;padding:4px 7px;border:1px solid #d7e0ea;border-radius:999px;background:#f8fafc;color:#64748b;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.edit-booking-page .booking-edit-rooms-heading{justify-content:space-between;gap:16px;margin-bottom:10px;padding:1px 1px 10px;border-bottom:1px solid var(--edit-line)}.edit-booking-page .booking-edit-rooms-heading .booking-edit-section-heading{margin:0}.edit-booking-page .booking-edit-level-flow{display:flex;align-items:center;gap:5px;flex-shrink:0;color:#94a3b8;font-size:9px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.edit-booking-page .booking-edit-level-flow span{padding:4px 6px;border-radius:5px;background:#f3f6f9}.edit-booking-page .booking-edit-room-card{border-color:var(--edit-line)!important}.edit-booking-page .booking-edit-room-card.is-dirty{border-color:var(--edit-accent)!important}.edit-booking-page .booking-edit-room-header{gap:12px;min-height:62px;padding:8px 11px;background:#fbfcfe}.edit-booking-page .booking-edit-room-title{display:flex;align-items:center;gap:9px;min-width:0}.edit-booking-page .booking-edit-room-title>div{display:flex;min-width:0;flex-direction:column;gap:2px}.edit-booking-page .booking-edit-room-title strong{overflow:hidden;color:#172033;font-size:13px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-room-number{display:inline-grid;place-items:center;width:28px;min-width:28px;height:28px;border-radius:8px;background:var(--edit-accent);color:#fff;font-size:12px;font-weight:800}.edit-booking-page .booking-edit-room-summary{display:flex;align-items:center;gap:6px;overflow:hidden;color:#64748b;font-size:10px;font-weight:500;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-room-summary i{width:3px;min-width:3px;height:3px;border-radius:50%;background:#c3cfdb}.edit-booking-page .booking-edit-modified{flex-shrink:0;padding:3px 6px;border-radius:999px;background:var(--edit-accent-soft);color:var(--edit-accent);font-size:9px;font-weight:700}.edit-booking-page .booking-edit-room-price input{width:94px!important;min-height:34px;font-size:15px!important}.edit-booking-page .booking-edit-room-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:5px;border-bottom:1px solid var(--edit-line);background:#f3f6f9}.edit-booking-page .booking-edit-room-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:34px;padding:5px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:#64748b;font:inherit;font-size:11px;font-weight:650;cursor:pointer}.edit-booking-page .booking-edit-room-tabs button:hover{color:var(--color-text-primary)}.edit-booking-page .booking-edit-room-tabs button:focus-visible,.edit-booking-page .booking-edit-back:focus-visible{outline:2px solid var(--edit-accent);outline-offset:2px}.edit-booking-page .booking-edit-room-tabs button.is-active{border-color:#d8e1eb;background:#fff;color:var(--edit-accent);box-shadow:0 1px 4px #0f172a12}.edit-booking-page .booking-edit-room-tabs em{overflow:hidden;max-width:96px;padding:2px 5px;border-radius:999px;background:#e8edf3;color:#64748b;font-size:9px;font-style:normal;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-room-tabs button.is-active em{background:var(--edit-accent-soft);color:var(--edit-accent)}.edit-booking-page .booking-edit-room-panel{min-width:0;background:#fff}.edit-booking-page .booking-edit-guest-panel .booking-edit-occupancy{background:#fbfcfe}@media(max-width:760px){.edit-booking-page .booking-edit-page-header{align-items:flex-start;min-height:66px;margin-bottom:10px;padding:8px 2px}.edit-booking-page .booking-edit-page-heading{gap:7px}.edit-booking-page .booking-edit-page-heading p{max-width:54vw}.edit-booking-page .booking-edit-save-primary{min-width:42px;width:42px;padding:0;font-size:0}.edit-booking-page .booking-edit-save-primary svg{width:16px;height:16px}.edit-booking-page .booking-edit-level-badge,.edit-booking-page .booking-edit-level-flow{display:none}.edit-booking-page .booking-edit-rooms-heading{align-items:flex-start}.edit-booking-page .booking-edit-room-header{align-items:center;flex-wrap:nowrap}.edit-booking-page .booking-edit-room-summary{max-width:51vw}.edit-booking-page .booking-edit-modified{display:none}.edit-booking-page .booking-edit-room-price{max-width:104px}.edit-booking-page .booking-edit-room-price input{width:76px!important}.edit-booking-page .booking-edit-room-price>div:not(:first-child){display:none}.edit-booking-page .booking-edit-room-tabs button{padding-inline:6px}}.booking-rooms-card{padding:11px}.booking-rooms-commandbar,.booking-rooms-commandbar-title,.booking-rooms-commandbar-actions,.booking-rooms-tool{display:flex;align-items:center}.booking-rooms-commandbar{justify-content:space-between;gap:10px;min-height:36px;margin-bottom:7px;padding:3px 4px 7px;border-bottom:1px solid var(--color-border-light)}.booking-rooms-commandbar-title{gap:7px;min-width:0}.booking-rooms-commandbar-title>span{color:var(--color-text);font-size:13px;font-weight:var(--font-bold)}.booking-rooms-commandbar-title>strong{display:inline-grid;min-width:20px;height:20px;padding:0 5px;place-items:center;border-radius:6px;background:var(--color-primary);color:#fff;font-family:var(--font-mono);font-size:10px}.booking-rooms-commandbar-title>small{overflow:hidden;color:var(--color-text-secondary);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.booking-rooms-commandbar-actions{gap:5px;flex:0 0 auto}.booking-rooms-tool{gap:5px;min-height:28px;padding:0 8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-semibold);cursor:pointer;transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}.booking-rooms-tool:hover,.booking-rooms-tool.is-active{border-color:color-mix(in srgb,var(--color-primary) 40%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 6%,var(--color-bg-card));color:var(--color-primary)}.booking-rooms-tool:active{transform:scale(.98)}.booking-rooms-tool svg,.booking-room-accordion-trigger>svg{transition:transform .24s cubic-bezier(.22,1,.36,1)}.booking-rooms-tool svg.is-up,.booking-room-accordion-trigger>svg.is-up{transform:rotate(180deg)}.booking-room-accordion-trigger>svg.is-open{transform:rotate(90deg)}.booking-rooms-quick-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:7px;overflow:hidden;border:1px solid var(--color-border);border-radius:8px;background:var(--color-border-light)}.booking-rooms-summary-collapse{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .26s cubic-bezier(.22,1,.36,1),opacity .16s ease,visibility 0s linear .26s}.booking-rooms-summary-collapse.is-expanded{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .26s cubic-bezier(.22,1,.36,1),opacity .18s ease 40ms,visibility 0s linear}.booking-rooms-summary-collapse-inner{min-height:0;overflow:hidden}.booking-rooms-quick-summary>div{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:1px 7px;min-width:0;min-height:49px;padding:6px 9px;background:var(--color-bg-secondary)}.booking-rooms-quick-summary small{align-self:end;color:var(--color-text-secondary);font-size:8px;font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.04em}.booking-rooms-quick-summary strong{grid-row:1 / span 2;grid-column:2;align-self:center;color:var(--color-text);font-family:var(--font-mono);font-size:13px}.booking-rooms-quick-summary span{overflow:hidden;color:var(--color-text-secondary);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.booking-room-list-filters{display:flex;align-items:center;gap:4px;min-height:32px;margin-bottom:7px;padding:3px 5px;overflow-x:auto;border:1px solid var(--color-border-light);border-radius:7px;background:var(--color-bg-secondary);scrollbar-width:none}.booking-room-list-filters::-webkit-scrollbar{display:none}.booking-room-list-filters-label{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;margin-right:2px;color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-semibold)}.booking-room-list-filters>button{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;min-height:24px;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-semibold);cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.booking-room-list-filters>button:not(:disabled):hover{border-color:var(--color-border);background:var(--color-bg-card);color:var(--color-text)}.booking-room-list-filters>button.is-active{border-color:color-mix(in srgb,var(--color-primary) 28%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 9%,var(--color-bg-card));color:var(--color-primary)}.booking-room-list-filters>button:disabled{opacity:.46;cursor:default}.booking-room-list-filters>button>span{display:inline-grid;min-width:16px;height:16px;padding:0 4px;place-items:center;border-radius:999px;background:color-mix(in srgb,currentColor 9%,transparent);font-family:var(--font-mono);font-size:8px}.booking-room-list-filter-divider{flex:0 0 auto;width:1px;height:17px;margin:0 2px;background:var(--color-border)}.booking-room-list-filters>.booking-room-assignment-filter.is-active{border-color:color-mix(in srgb,var(--color-warning) 38%,var(--color-border));background:var(--color-warning-soft);color:color-mix(in srgb,var(--color-warning) 72%,var(--color-text))}.booking-room-list-filters>small{flex:0 0 auto;margin-left:auto;padding:0 4px;color:var(--color-text-secondary);font-size:8px;font-weight:var(--font-medium);white-space:nowrap}.booking-room-accordion-list{display:flex;flex-direction:column;gap:5px}.booking-rooms-card .booking-room-card{margin:0;padding:0;overflow:hidden;border-radius:9px;transition:border-color .22s ease,box-shadow .22s ease}.booking-rooms-card .booking-room-card.is-expanded{border-color:color-mix(in srgb,var(--color-primary) 30%,var(--color-border));box-shadow:inset 3px 0 0 var(--color-primary)}.booking-rooms-card .booking-room-card.is-collapsed:hover{border-color:color-mix(in srgb,var(--color-primary) 30%,var(--color-border))}.booking-rooms-card .booking-room-card-titlebar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;min-height:49px;padding:5px 7px;background:var(--color-bg-card);transition:background-color .22s ease}.booking-rooms-card .booking-room-card.is-expanded .booking-room-card-titlebar{background:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg-card))}.booking-room-accordion-trigger{display:grid;grid-template-columns:32px 14px minmax(0,1fr);align-items:center;gap:6px;min-width:0;padding:0;border:0;background:transparent;color:var(--color-text);text-align:left;cursor:pointer}.booking-room-accordion-trigger>svg{justify-self:center;color:var(--color-text-secondary)}.booking-room-accordion-index{display:inline-grid;width:30px;height:30px;place-items:center;border-radius:8px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;font-weight:var(--font-bold);transition:background-color .22s ease,color .22s ease,transform .22s cubic-bezier(.22,1,.36,1)}.booking-room-card.is-expanded .booking-room-accordion-index{background:var(--color-primary);color:#fff;transform:scale(1.04)}.booking-room-accordion-copy,.booking-room-accordion-copy>span,.booking-room-accordion-copy>small{display:flex;align-items:center;min-width:0}.booking-room-accordion-copy{flex-direction:column;align-items:flex-start;gap:2px}.booking-room-accordion-copy>span{gap:6px;width:100%}.booking-room-accordion-copy strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.booking-room-accordion-copy em{flex:0 0 auto;padding:1px 5px;border-radius:999px;font-size:8.5px;font-style:normal;font-weight:var(--font-semibold)}.booking-room-accordion-copy>small{gap:5px;overflow:hidden;color:color-mix(in srgb,var(--color-text) 18%,var(--color-text-secondary));font-size:9px;font-weight:var(--font-medium);text-overflow:ellipsis;white-space:nowrap}.booking-room-accordion-copy small i{flex:0 0 auto;width:3px;height:3px;border-radius:50%;background:var(--color-border)}.booking-room-guest-note{display:inline-flex;min-width:0;align-items:center;overflow:hidden;color:var(--color-text);font-size:10px;font-weight:var(--font-semibold);line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.booking-room-guest-note>span{overflow:hidden;color:var(--color-text);font-weight:var(--font-bold);text-overflow:ellipsis;white-space:nowrap}.booking-rooms-card .booking-room-card-actions{gap:5px}.booking-rooms-card .booking-room-card-total{min-width:88px;padding-right:7px}.booking-rooms-card .booking-room-card-total strong{font-size:12px}.booking-rooms-card .booking-room-card-total span{color:color-mix(in srgb,var(--color-text) 18%,var(--color-text-secondary));font-size:9px;font-weight:var(--font-medium)}.booking-rooms-card .booking-room-card-actions .btn{min-height:27px;padding:2px 7px!important;font-size:9px!important}.booking-rooms-card .booking-room-card-facts{gap:4px 10px;margin:0;padding:5px 10px;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);background:var(--color-bg-secondary);font-size:9px}.booking-rooms-card .booking-room-insight-ribbon{margin-top:0;border-top:0}.booking-room-assignment-modal{max-width:480px}.booking-room-assignment-modal .modal-header{align-items:flex-start}.booking-room-assignment-modal .modal-header h3{display:flex;align-items:center;gap:7px;margin:0;font-size:15px}.booking-room-assignment-modal .modal-header h3 svg{color:var(--color-primary)}.booking-room-assignment-modal .modal-header p{margin:3px 0 0;color:var(--color-text-secondary);font-size:10px}.upgrade-rate-schedule{display:grid;gap:var(--space-2)}.upgrade-rate-schedule-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.upgrade-rate-schedule-heading>div{display:flex;align-items:baseline;gap:var(--space-2)}.upgrade-rate-schedule-heading strong{font-size:var(--text-sm)}.upgrade-rate-schedule-heading span{color:var(--color-text-secondary);font-size:var(--text-xs)}.upgrade-locked-nights{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.upgrade-rate-guidance{display:flex;align-items:center;gap:var(--space-2);padding:8px 10px;border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-text-secondary);background:var(--color-warning-soft);font-size:var(--text-xs)}.upgrade-room-modal{width:min(960px,calc(100vw - 32px));max-width:960px!important}.upgrade-room-modal .booking-plan-timeline{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2)}.booking-room-assignment-modal-body{padding:10px 12px}.booking-room-assignment-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-semibold);letter-spacing:.045em;text-transform:uppercase}.booking-room-assignment-status strong{padding:2px 6px;border-radius:999px;font-size:9px;letter-spacing:0}.booking-room-assignment-status strong.is-available{background:var(--color-success-soft);color:var(--color-success)}.booking-room-assignment-status strong.is-unavailable{background:var(--color-error-soft);color:var(--color-error)}.booking-room-assignment-empty{display:flex;min-height:76px;align-items:center;justify-content:center;gap:7px;border:1px dashed var(--color-border);border-radius:8px;background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:10px;text-align:center}.booking-room-assignment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:300px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--color-border) transparent;scrollbar-width:thin}.booking-room-assignment-options>button{display:grid;grid-template-columns:18px minmax(0,1fr) auto 16px;align-items:center;gap:6px;min-height:44px;padding:6px 8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-card);color:var(--color-text);cursor:pointer;font:inherit;text-align:left;transition:border-color .14s ease,background-color .14s ease}.booking-room-assignment-options>button:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 4%,var(--color-bg-card))}.booking-room-assignment-options>button.is-current{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 7%,var(--color-bg-card))}.booking-room-assignment-options>button:disabled{cursor:wait;opacity:.62}.booking-room-assignment-options>button>svg{color:var(--color-text-secondary)}.booking-room-assignment-options>button.is-current>svg{color:var(--color-primary)}.booking-room-assignment-options>button>span{display:grid;min-width:0}.booking-room-assignment-options>button strong{font-size:11px}.booking-room-assignment-options>button small{overflow:hidden;color:var(--color-text-secondary);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.booking-room-assignment-options>button em{color:var(--color-text-secondary);font-size:8px;font-style:normal;white-space:nowrap}@media(max-width:520px){.booking-room-assignment-options{grid-template-columns:minmax(0,1fr)}}.booking-room-detail-switcher{display:flex;align-items:center;gap:4px;min-height:35px;padding:5px 8px 0}.booking-room-detail-switcher>button{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 8px;border:1px solid transparent;border-radius:6px 6px 0 0;background:transparent;color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-semibold);cursor:pointer;transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .16s ease}.booking-room-detail-switcher>button:hover{color:var(--color-text)}.booking-room-detail-switcher>button.is-active{border-color:var(--color-border);border-bottom-color:var(--color-bg-card);background:var(--color-bg-card);color:var(--color-primary);box-shadow:inset 0 2px 0 var(--color-primary)}.booking-room-detail-switcher>button:active{transform:translateY(1px)}.booking-room-detail-switcher button>span{min-width:18px;padding:1px 4px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:8px;text-align:center}.booking-room-detail-switcher>small{margin-left:auto;color:var(--color-text-secondary);font-size:8px}.booking-rooms-card .booking-room-workspace{gap:0;margin:-1px 7px 7px}.booking-room-accordion-panel{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .28s cubic-bezier(.22,1,.36,1),opacity .15s ease,visibility 0s linear .28s}.booking-room-accordion-panel.is-expanded{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .28s cubic-bezier(.22,1,.36,1),opacity .19s ease 35ms,visibility 0s linear}.booking-room-accordion-panel-inner{min-height:0;overflow:hidden;transform:translateY(-4px);transform-origin:top;transition:transform .24s cubic-bezier(.22,1,.36,1)}.booking-room-accordion-panel.is-expanded .booking-room-accordion-panel-inner{transform:translateY(0)}.booking-room-workspace-view{animation:bookingRoomWorkspaceIn .19s cubic-bezier(.22,1,.36,1) both}@keyframes bookingRoomWorkspaceIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.booking-rooms-card .booking-room-sharers,.booking-rooms-card .booking-room-nightly-breakdown{border-radius:0 7px 7px}@media(prefers-reduced-motion:reduce){.booking-rooms-summary-collapse,.booking-room-accordion-panel,.booking-room-accordion-panel-inner,.booking-rooms-tool,.booking-room-accordion-trigger>svg,.booking-room-accordion-index,.booking-room-card-titlebar,.booking-room-detail-switcher>button{transition:none}.booking-room-workspace-view{animation:none}}.edit-booking-page .wizard-steps{margin:4px 0 18px}.edit-booking-page .wizard-step{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font-family:inherit}.edit-booking-page .wizard-step:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.edit-booking-page .booking-detail-grid,.edit-booking-page .booking-edit-main-column{display:block}.edit-booking-page .wizard-card{padding:20px;border-color:var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.edit-booking-page .booking-edit-section-heading{min-height:38px;margin-bottom:18px}.edit-booking-page .booking-edit-section-heading h4{font-size:var(--text-lg)}.edit-booking-page .booking-edit-defaults-body{padding:0;border-top:0}.edit-booking-page .wizard-actions{align-items:center;padding-top:16px;border-top:1px solid var(--color-border-light)}.edit-booking-page .booking-edit-rooms-panel{padding:16px}.edit-booking-page .booking-edit-room-navigator{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:8px;overflow:visible;padding:8px}.edit-booking-page .booking-edit-room-navigator>button{width:auto;min-width:0;min-height:68px}.edit-booking-page .booking-edit-review-step{display:grid;gap:16px}.edit-booking-page .booking-edit-review-step .booking-edit-section-heading{margin-bottom:0}.edit-booking-page .booking-edit-review-state{margin-left:auto;padding:5px 10px;border-radius:var(--radius-full);background:var(--color-success-soft);color:var(--color-success);font-size:var(--text-xs);font-weight:var(--font-semibold)}.edit-booking-page .booking-edit-review-state.has-changes{background:var(--color-warning-soft);color:#a45d00}.edit-booking-page .booking-edit-review-state.is-blocked{background:var(--color-danger-soft);color:var(--color-danger)}.edit-booking-page .booking-edit-review-summary{display:grid;grid-template-columns:1.15fr 1fr 1fr;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary)}.edit-booking-page .booking-edit-review-booking,.edit-booking-page .booking-edit-review-stat{display:flex;align-items:center;min-width:0;gap:10px;padding:14px;border-left:1px solid var(--color-border-light)}.edit-booking-page .booking-edit-review-booking{border-left:0}.edit-booking-page .booking-edit-review-booking>div,.edit-booking-page .booking-edit-review-stat{display:grid;gap:2px}.edit-booking-page .booking-edit-review-avatar{display:inline-grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border-radius:var(--radius-full);background:var(--color-brand-light);color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--font-bold)}.edit-booking-page .booking-edit-review-summary small,.edit-booking-page .booking-edit-review-total small{color:var(--color-text-muted);font-size:10px;font-weight:var(--font-semibold);letter-spacing:.04em;text-transform:uppercase}.edit-booking-page .booking-edit-review-summary strong{overflow:hidden;color:var(--color-text-primary);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-review-summary span:not(.booking-edit-review-avatar){color:var(--color-text-secondary);font-size:var(--text-xs)}.edit-booking-page .booking-edit-review-rooms{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md)}.edit-booking-page .booking-edit-review-rooms>button{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto auto;align-items:center;width:100%;min-height:64px;gap:10px;padding:10px 12px;border:0;border-top:1px solid var(--color-border-light);background:var(--color-bg-card);color:var(--color-text-primary);cursor:pointer;text-align:left}.edit-booking-page .booking-edit-review-rooms>button:first-child{border-top:0}.edit-booking-page .booking-edit-review-rooms>button:hover{background:var(--color-bg-secondary)}.edit-booking-page .booking-edit-review-rooms>button>span:first-child{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-brand-light);color:var(--color-primary);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-bold)}.edit-booking-page .booking-edit-review-rooms>button>div{display:grid;min-width:0;gap:2px}.edit-booking-page .booking-edit-review-rooms strong{overflow:hidden;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-review-rooms small{color:var(--color-text-secondary);font-size:var(--text-xs)}.edit-booking-page .booking-edit-review-rooms b{font-family:var(--font-mono);font-size:var(--text-base)}.edit-booking-page .booking-edit-review-rooms em{padding:3px 7px;border-radius:var(--radius-full);background:var(--color-warning-soft);color:#a45d00;font-size:10px;font-style:normal;font-weight:var(--font-semibold)}.edit-booking-page .booking-edit-review-total{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:var(--radius-md);background:var(--color-brand-light)}.edit-booking-page .booking-edit-review-total>div{display:grid;gap:2px}.edit-booking-page .booking-edit-review-total strong{color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--text-2xl)}.edit-booking-page .booking-edit-review-total span{color:var(--color-text-secondary);font-size:var(--text-xs)}.edit-booking-page .booking-edit-review-total.is-blocked{background:var(--color-danger-soft)}.edit-booking-page .booking-edit-no-change{display:inline-flex;align-items:center;gap:6px;color:var(--color-success)!important;font-weight:var(--font-semibold)}@media(max-width:760px){.edit-booking-page{padding-bottom:var(--space-6)}.edit-booking-page .wizard-steps{justify-content:flex-start;overflow-x:auto;padding-bottom:4px}.edit-booking-page .wizard-step{flex:0 0 auto;padding-inline:10px}.edit-booking-page .wizard-card{padding:14px}.edit-booking-page .booking-edit-room-navigator{grid-template-columns:minmax(0,1fr)}.edit-booking-page .booking-edit-room-navigator>button{width:auto;min-width:0}.edit-booking-page .booking-edit-review-summary{grid-template-columns:minmax(0,1fr)}.edit-booking-page .booking-edit-review-booking,.edit-booking-page .booking-edit-review-stat{border-top:1px solid var(--color-border-light);border-left:0}.edit-booking-page .booking-edit-review-booking{border-top:0}.edit-booking-page .booking-edit-review-rooms>button{grid-template-columns:36px minmax(0,1fr) auto}.edit-booking-page .booking-edit-review-rooms>button>em,.edit-booking-page .booking-edit-review-rooms>button>small{display:none}.edit-booking-page .booking-edit-review-total{align-items:flex-start;flex-direction:column}}.edit-booking-page .booking-edit-room-card .booking-edit-room-title{padding-left:2px}.edit-booking-page .booking-edit-commandbar{position:sticky;bottom:10px;z-index:35;display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:16px;min-height:62px;margin-top:12px;padding:9px 10px 9px 12px;border:1px solid #cfe0eb;border-radius:12px;background:color-mix(in srgb,#fff 96%,transparent);box-shadow:0 12px 32px #0f172a24;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.edit-booking-page .booking-edit-command-status{display:flex;align-items:center;gap:9px;min-width:0}.edit-booking-page .booking-edit-command-status>span{display:grid;place-items:center;width:32px;min-width:32px;height:32px;border-radius:9px;background:#e9f8f1;color:#128055}.edit-booking-page .booking-edit-commandbar.has-changes .booking-edit-command-status>span{background:#fff5df;color:#a85f00}.edit-booking-page .booking-edit-commandbar.is-blocked .booking-edit-command-status>span{background:#fff0eb;color:#bf4e2d}.edit-booking-page .booking-edit-command-status>div{display:grid;min-width:0;gap:2px}.edit-booking-page .booking-edit-command-status strong{overflow:hidden;color:var(--edit-ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-command-status small{overflow:hidden;color:var(--edit-copy);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-command-total{display:grid;min-width:150px;padding-right:16px;border-right:1px solid #dfe7ee;text-align:right}.edit-booking-page .booking-edit-command-total small{color:var(--edit-muted);font-size:8px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.edit-booking-page .booking-edit-command-total strong{color:var(--edit-ink);font-family:var(--font-mono);font-size:18px}.edit-booking-page .booking-edit-command-total em{color:var(--edit-muted);font-size:8px;font-style:normal}.edit-booking-page .booking-edit-command-actions{display:flex;align-items:center;gap:7px}.edit-booking-page .booking-edit-command-actions .btn{min-height:38px;padding-inline:15px;border-radius:8px;font-size:11px}@media(max-width:760px){.edit-booking-page{padding-bottom:114px}.edit-booking-page .booking-edit-commandbar{grid-template-columns:minmax(0,1fr) auto;gap:8px;bottom:6px;padding:8px}.edit-booking-page .booking-edit-command-total{display:none}.edit-booking-page .booking-edit-command-status small{max-width:42vw}.edit-booking-page .booking-edit-command-actions .btn-secondary{display:none}}@media(max-width:760px){.booking-rooms-commandbar{align-items:flex-start;flex-direction:column}.booking-rooms-commandbar-actions{width:100%}.booking-rooms-tool{flex:1;justify-content:center}.booking-rooms-quick-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-rooms-card .booking-room-card-titlebar{grid-template-columns:minmax(0,1fr)}.booking-rooms-card .booking-room-card-actions{width:100%;padding-top:4px;border-top:1px solid var(--color-border-light)}.booking-rooms-card .booking-room-card-total{margin-right:auto}.booking-room-detail-switcher>small{display:none}.booking-room-detail-switcher{flex-wrap:wrap}.booking-room-list-filters>small{display:none}}@media(max-width:480px){.booking-rooms-card{padding:7px}.booking-rooms-commandbar-title>small{display:none}.booking-rooms-quick-summary{grid-template-columns:minmax(0,1fr)}.booking-room-detail-switcher>button{flex:1;justify-content:center}.booking-room-list-filters-label{position:sticky;left:0;z-index:1;padding-right:4px;background:var(--color-bg-secondary)}}.edit-booking-page{--edit-ink: #172033;--edit-copy: #50627a;--edit-muted: #71839c;--edit-border: #d9e3ed;--edit-surface: #ffffff;--edit-subtle: #f6f9fc;--edit-blue-soft: #eef9fd;width:100%;max-width:1680px;margin-inline:auto;padding-top:0}.edit-booking-page .booking-edit-page-header{min-height:64px;margin:0 0 10px;padding:8px 0}.edit-booking-page .booking-edit-page-heading h2{font-size:24px}.edit-booking-page .booking-edit-page-heading p,.edit-booking-page .booking-edit-section-heading p{color:var(--edit-copy);font-size:12px}.edit-booking-page .booking-edit-overview{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.05fr;min-height:64px;margin-bottom:12px;overflow:hidden;border:1px solid var(--edit-border);border-radius:12px;background:var(--edit-surface);box-shadow:0 4px 16px #0f172a0a}.edit-booking-page .booking-edit-overview-item{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 14px;border-left:1px solid #e8eef4;color:var(--edit-muted)}.edit-booking-page .booking-edit-overview-item:first-child{border-left:0}.edit-booking-page .booking-edit-overview-item>svg{flex:0 0 auto;color:var(--color-primary)}.edit-booking-page .booking-edit-overview-item>span{display:grid;min-width:0;gap:1px}.edit-booking-page .booking-edit-overview-item small{color:var(--edit-muted);font-size:9px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}.edit-booking-page .booking-edit-overview-item strong{overflow:hidden;color:var(--edit-ink);font-size:13px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-overview-item em{margin-left:auto;color:var(--edit-muted);font-size:10px;font-style:normal;white-space:nowrap}.edit-booking-page .booking-edit-overview-item.is-changes{background:#f8fbfd}.edit-booking-page .booking-edit-overview-item.is-changes>svg{color:#12a36d}.edit-booking-page .booking-edit-overview-item.is-changes.has-changes{background:#fff9eb}.edit-booking-page .booking-edit-overview-item.is-changes.has-changes>svg{color:#b66b05}.edit-booking-page .booking-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:12px}.edit-booking-page .booking-edit-main-column{gap:12px}.edit-booking-page .booking-edit-booking-card,.edit-booking-page .booking-edit-rooms-panel,.edit-booking-page .booking-edit-review-card{border:1px solid var(--edit-border);border-radius:12px;background:var(--edit-surface);box-shadow:0 4px 18px #0f172a0a}.edit-booking-page .booking-edit-booking-card{padding:10px 12px}.edit-booking-page .booking-edit-booking-card .booking-edit-section-heading{margin:0}.edit-booking-page .booking-edit-level-badge{display:none}.edit-booking-page .booking-edit-defaults-preview{display:flex;align-items:center;gap:7px;margin-left:auto;color:var(--edit-copy);font-size:11px;white-space:nowrap}.edit-booking-page .booking-edit-defaults-preview i{width:3px;height:3px;border-radius:50%;background:#b7c5d4}.edit-booking-page .booking-edit-section-toggle{display:inline-flex;align-items:center;gap:5px;min-height:30px;margin-left:12px;padding:0 10px;border:1px solid #ccd8e4;border-radius:7px;background:#fff;color:var(--edit-copy);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.edit-booking-page .booking-edit-section-toggle svg{transition:transform .18s ease}.edit-booking-page .booking-edit-section-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.edit-booking-page .booking-edit-defaults-body{display:grid;grid-template-columns:minmax(0,1fr);margin-top:10px;padding:12px;border-top:1px solid #e5ebf1;border-radius:0 0 8px 8px;background:#fbfdff;animation:editBookingReveal .18s cubic-bezier(.22,1,.36,1) both}@keyframes editBookingReveal{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.edit-booking-page .booking-edit-defaults-body .form-label,.edit-booking-page .booking-edit-room-card .form-label{margin-bottom:5px;color:#5e7088;font-size:10px!important;font-weight:750;letter-spacing:.04em}.edit-booking-page .booking-edit-defaults-body .input,.edit-booking-page .booking-edit-defaults-body .select,.edit-booking-page .booking-edit-room-card .input,.edit-booking-page .booking-edit-room-card .select{min-height:36px;border-color:#d5e0ea;border-radius:7px;color:var(--edit-ink);font-size:13px}.edit-booking-page .booking-edit-defaults-body textarea.input{min-height:64px}.edit-booking-page .booking-edit-rooms-panel{min-width:0;padding:10px!important}.edit-booking-page .booking-edit-rooms-heading{margin-bottom:8px;padding:0 2px 9px}.edit-booking-page .booking-edit-workspace-progress{display:flex;align-items:center;gap:12px;color:var(--edit-copy);font-size:10px;font-weight:650}.edit-booking-page .booking-edit-workspace-progress span{display:inline-flex;align-items:center;gap:5px}.edit-booking-page .booking-edit-room-navigator{display:flex;gap:6px;margin-bottom:8px;padding:6px;overflow-x:auto;border:1px solid #dfe7ef;border-radius:10px;background:var(--edit-subtle);scrollbar-width:thin;scroll-snap-type:x proximity}.edit-booking-page .booking-edit-room-navigator>button{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto 14px;align-items:center;gap:8px;min-width:0;width:min(300px,78vw);flex:1 0 250px;min-height:52px;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--edit-muted);font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease;scroll-snap-align:start}.edit-booking-page .booking-edit-room-navigator>button:hover{background:#fff}.edit-booking-page .booking-edit-room-navigator>button.is-active{border-color:color-mix(in srgb,var(--color-primary) 45%,#d9e3ed);background:#fff;box-shadow:inset 3px 0 0 var(--color-primary),0 2px 8px #0f172a0d}.edit-booking-page .booking-edit-room-nav-index{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#e9f0f6;color:#58708c;font-family:var(--font-mono);font-size:11px;font-weight:800}.edit-booking-page .booking-edit-room-navigator>button.is-active .booking-edit-room-nav-index{background:var(--color-primary);color:#fff}.edit-booking-page .booking-edit-room-nav-copy,.edit-booking-page .booking-edit-room-nav-value{display:grid;min-width:0;gap:2px}.edit-booking-page .booking-edit-room-nav-copy strong,.edit-booking-page .booking-edit-room-nav-value strong{overflow:hidden;color:var(--edit-ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-room-nav-copy small,.edit-booking-page .booking-edit-room-nav-value small{overflow:hidden;color:var(--edit-muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-room-nav-value{text-align:right}.edit-booking-page .booking-edit-room-navigator em{position:absolute;top:3px;right:5px;color:#a86005;font-size:8px;font-style:normal;font-weight:700}.edit-booking-page .booking-edit-room-nav-error{color:#c35e17}.edit-booking-page .booking-edit-active-room-caption{display:flex;align-items:center;gap:8px;min-height:28px;padding:0 3px;color:var(--edit-copy);font-size:10px}.edit-booking-page .booking-edit-active-room-caption>span{color:var(--color-primary);font-weight:750;text-transform:uppercase}.edit-booking-page .booking-edit-active-room-caption>strong{color:var(--edit-ink);font-size:11px}.edit-booking-page .booking-edit-active-room-caption>small{margin-left:auto;color:var(--edit-muted);font-size:9px}.edit-booking-page .booking-edit-room-list{gap:0!important}.edit-booking-page .booking-edit-room-card{padding:0!important;border:1px solid var(--edit-border)!important;border-radius:10px!important;background:#fff!important;overflow:hidden}.edit-booking-page .booking-edit-room-card.is-dirty{border-color:color-mix(in srgb,var(--color-primary) 65%,var(--edit-border))!important;box-shadow:inset 3px 0 0 var(--color-primary)}.edit-booking-page .booking-edit-room-header{min-height:54px;padding:7px 10px;border-bottom:1px solid #e4ebf2;background:#fbfdff}.edit-booking-page .booking-edit-room-title strong{font-size:13px}.edit-booking-page .booking-edit-room-summary{font-size:10px}.edit-booking-page .booking-edit-room-tabs{display:flex;width:100%;gap:0;padding:0 8px;background:#f4f7fa}.edit-booking-page .booking-edit-room-tabs button{justify-content:flex-start;width:auto;min-height:35px;padding:4px 12px;border-radius:0;border-width:0 0 2px}.edit-booking-page .booking-edit-room-tabs button.is-active{border-color:var(--color-primary);background:transparent;box-shadow:none}.edit-booking-page .booking-edit-room-basics{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(330px,1.35fr) minmax(220px,1fr)!important;gap:8px!important;padding:9px 10px 3px!important}.edit-booking-page .booking-rate-schedule-edit{padding:7px 10px 9px!important}.edit-booking-page .booking-rate-schedule-header{margin-bottom:6px}.edit-booking-page .booking-rate-segment-editor{border-color:#dce5ee;border-radius:8px}.edit-booking-page .booking-rate-segment-grid{border-top-color:#e8eef4}.edit-booking-page .booking-rate-segment-grid:nth-child(2n){background:#f9fbfd}.edit-booking-page .booking-rate-segment-grid:hover{background:var(--edit-blue-soft)}.edit-booking-page .booking-edit-guest-panel .booking-edit-occupancy,.edit-booking-page .booking-edit-guests{padding:8px 10px}.edit-booking-page .booking-edit-sidebar{position:sticky;top:76px;display:block;min-width:0}.edit-booking-page .booking-edit-review-card{padding:12px}.edit-booking-page .booking-edit-review-heading{display:flex;align-items:center;gap:9px;padding-bottom:10px;border-bottom:1px solid #e5ebf1}.edit-booking-page .booking-edit-review-heading>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--edit-blue-soft);color:var(--color-primary)}.edit-booking-page .booking-edit-review-heading h4{margin:0;color:var(--edit-ink);font-size:13px}.edit-booking-page .booking-edit-review-heading p{margin:2px 0 0;color:var(--edit-muted);font-size:9px;line-height:1.35}.edit-booking-page .booking-edit-booker{display:grid;grid-template-columns:34px minmax(0,1fr) 15px;align-items:center;gap:8px;width:100%;margin:9px 0;padding:7px;border:1px solid #e0e8f0;border-radius:8px;background:#fbfdff;color:var(--edit-muted);font:inherit;text-align:left;cursor:pointer}.edit-booking-page .booking-edit-booker .guest-avatar{width:32px;height:32px;font-size:10px}.edit-booking-page .booking-edit-booker>span:nth-child(2){display:grid;min-width:0}.edit-booking-page .booking-edit-booker small,.edit-booking-page .booking-edit-booker em{overflow:hidden;color:var(--edit-muted);font-size:8px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-booker strong{overflow:hidden;color:var(--edit-ink);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-review-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid #e1e9f1;border-radius:8px}.edit-booking-page .booking-edit-review-metrics>div{display:grid;gap:1px;padding:7px;border-left:1px solid #e8eef4;text-align:center}.edit-booking-page .booking-edit-review-metrics>div:first-child{border-left:0}.edit-booking-page .booking-edit-review-metrics small{color:var(--edit-muted);font-size:8px;text-transform:uppercase}.edit-booking-page .booking-edit-review-metrics strong{color:var(--edit-ink);font-size:12px}.edit-booking-page .booking-edit-price-lines{display:grid;gap:6px;margin:10px 1px}.edit-booking-page .booking-edit-price-lines>div{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--edit-copy);font-size:10px}.edit-booking-page .booking-edit-price-lines span{display:flex;align-items:center;min-width:0;gap:6px}.edit-booking-page .booking-edit-price-lines b{color:var(--color-primary);font-family:var(--font-mono);font-size:8px}.edit-booking-page .booking-edit-price-lines strong{color:var(--edit-ink);font-size:10px}.edit-booking-page .booking-edit-grand-total{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:9px 0;border-block:1px solid #dce5ee}.edit-booking-page .booking-edit-grand-total>span{display:grid}.edit-booking-page .booking-edit-grand-total small{color:var(--edit-muted);font-size:8px;text-transform:uppercase}.edit-booking-page .booking-edit-grand-total strong{color:var(--edit-ink);font-family:var(--font-mono);font-size:19px}.edit-booking-page .booking-edit-grand-total em{color:var(--edit-muted);font-size:8px;font-style:normal;text-align:right}.edit-booking-page .booking-edit-save-state{display:flex;align-items:center;gap:8px;margin:9px 0;padding:7px 8px;border-radius:7px;background:#eff9f4;color:#128055}.edit-booking-page .booking-edit-save-state.has-changes{background:#fff8e9;color:#a45d00}.edit-booking-page .booking-edit-save-state.is-blocked{background:#fff2ee;color:#bc4d2d}.edit-booking-page .booking-edit-save-state>span{display:grid;gap:1px}.edit-booking-page .booking-edit-save-state strong{font-size:10px}.edit-booking-page .booking-edit-save-state small{color:currentColor;font-size:8px;opacity:.8}.edit-booking-page .booking-edit-review-context{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px;color:var(--edit-muted);font-size:8px}.edit-booking-page .booking-edit-review-save{width:100%;min-height:36px;border-radius:8px;font-size:11px}@media(max-width:1180px){.edit-booking-page .booking-detail-grid{grid-template-columns:minmax(0,1fr)}.edit-booking-page .booking-edit-sidebar{position:static}.edit-booking-page .booking-edit-review-card{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr) minmax(210px,.8fr);gap:10px;align-items:center}.edit-booking-page .booking-edit-review-heading,.edit-booking-page .booking-edit-price-lines,.edit-booking-page .booking-edit-review-context{display:none}.edit-booking-page .booking-edit-booker,.edit-booking-page .booking-edit-review-metrics,.edit-booking-page .booking-edit-save-state{margin:0}.edit-booking-page .booking-edit-grand-total{border:0;padding:0}}@media(max-width:900px){.edit-booking-page .booking-edit-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.edit-booking-page .booking-edit-overview-item:nth-child(3){border-left:0;border-top:1px solid #e8eef4}.edit-booking-page .booking-edit-overview-item:nth-child(4){border-top:1px solid #e8eef4}.edit-booking-page .booking-edit-room-basics{grid-template-columns:minmax(0,1fr)!important}.edit-booking-page .booking-edit-review-card{grid-template-columns:minmax(0,1fr) minmax(180px,.8fr)}.edit-booking-page .booking-edit-booker,.edit-booking-page .booking-edit-review-metrics{display:none}}@media(max-width:680px){.edit-booking-page .booking-edit-overview{grid-template-columns:minmax(0,1fr)}.edit-booking-page .booking-edit-overview-item{min-height:50px;border-top:1px solid #e8eef4;border-left:0}.edit-booking-page .booking-edit-overview-item:first-child{border-top:0}.edit-booking-page .booking-edit-defaults-preview,.edit-booking-page .booking-edit-workspace-progress,.edit-booking-page .booking-edit-active-room-caption>small{display:none}.edit-booking-page .booking-edit-defaults-body>div{grid-template-columns:minmax(0,1fr)!important}.edit-booking-page .booking-edit-section-toggle{margin-left:auto}.edit-booking-page .booking-edit-room-navigator>button{width:min(86vw,300px);min-width:min(86vw,300px)}.edit-booking-page .booking-edit-room-header{align-items:flex-start}.edit-booking-page .booking-edit-room-price input{width:82px!important}.edit-booking-page .booking-edit-room-tabs button{flex:1;justify-content:center}.edit-booking-page .booking-edit-review-card{grid-template-columns:minmax(0,1fr)}.edit-booking-page .booking-edit-grand-total{padding:0 0 7px;border-bottom:1px solid #dce5ee}}@media(prefers-reduced-motion:reduce){.edit-booking-page .booking-edit-defaults-body{animation:none}.edit-booking-page .booking-edit-section-toggle svg,.edit-booking-page .booking-edit-room-navigator>button{transition:none}}.edit-booking-page{max-width:1500px;padding-bottom:84px}.edit-booking-page .booking-detail-grid{grid-template-columns:minmax(0,1fr)}.edit-booking-page .booking-edit-room-card .booking-edit-room-number,.edit-booking-page .booking-edit-room-card .booking-edit-room-summary{display:none}.edit-booking-page .booking-edit-room-card .booking-edit-room-header{min-height:48px}@media(max-width:760px){.edit-booking-page{padding-bottom:114px}}.edit-booking-page{max-width:1260px;padding-bottom:var(--space-8)}.edit-booking-page .edit-booking-wizard{max-width:1180px}.edit-booking-page .booking-edit-room-navigator{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.edit-booking-page .booking-edit-room-navigator>button{width:auto;min-width:0;min-height:68px;flex:initial}.edit-booking-page .booking-edit-room-card{margin-top:12px;background:var(--color-bg-card)!important;border-color:var(--color-border)!important}.edit-booking-page .booking-edit-room-card.is-dirty{border-color:var(--color-primary)!important}@media(max-width:760px){.edit-booking-page{padding-bottom:var(--space-6)}.edit-booking-page .booking-edit-room-navigator{display:grid;grid-template-columns:minmax(0,1fr)}.edit-booking-page .booking-edit-room-navigator>button{width:auto;min-width:0}}.edit-booking-page .booking-edit-room-card .booking-room-occupancy-controls>div{display:flex!important;align-items:center!important;gap:8px!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.edit-booking-page .booking-edit-room-card .booking-room-occupancy-controls .btn{min-width:0!important;min-height:0!important;padding:0!important;border-radius:0!important}.edit-booking-page{width:100%;max-width:1600px;margin-inline:auto;padding-bottom:var(--space-8)}.edit-booking-page .booking-detail-grid{display:block}.edit-booking-page .booking-detail-grid>*{min-width:0}.edit-booking-page .booking-detail-grid>div:first-child{gap:var(--space-3)!important}.edit-booking-page .booking-edit-sidebar{display:none}.edit-booking-page .booking-edit-summary-bar{position:sticky;top:8px;z-index:40;display:grid;grid-template-columns:minmax(190px,1fr) max-content max-content max-content max-content;align-items:center;gap:var(--space-4);min-height:54px;margin-bottom:12px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:8px;background:color-mix(in srgb,var(--color-bg-card) 96%,transparent);box-shadow:0 8px 24px #0f172a1a;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.edit-booking-page .booking-edit-summary-guest{display:flex;align-items:center;gap:8px;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.edit-booking-page .booking-edit-summary-guest .guest-avatar{width:32px;height:32px;flex:0 0 auto;font-size:10px}.edit-booking-page .booking-edit-summary-guest>span:last-child,.edit-booking-page .booking-edit-summary-stat,.edit-booking-page .booking-edit-summary-total{display:grid;gap:1px;min-width:0}.edit-booking-page .booking-edit-summary-bar small{color:var(--color-text-muted);font-size:9px;font-weight:var(--font-semibold);letter-spacing:.035em;text-transform:uppercase}.edit-booking-page .booking-edit-summary-bar strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.edit-booking-page .booking-edit-summary-stat,.edit-booking-page .booking-edit-summary-total{min-height:32px;padding-left:var(--space-4);border-left:1px solid var(--color-border)}.edit-booking-page .booking-edit-summary-total strong{color:var(--color-primary);font-size:var(--text-base)}.edit-booking-page .booking-edit-summary-bar>.btn{min-height:36px}.edit-booking-page .booking-detail-card,.edit-booking-page .wizard-card{padding:12px}.edit-booking-page .booking-edit-rooms-card{position:relative;padding:0 12px 12px;overflow:visible}.edit-booking-page .booking-edit-rooms-heading{position:relative;top:auto;z-index:28;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;margin:0 -12px 8px;padding:7px 12px;border-bottom:1px solid #dbe3ec;border-radius:8px 8px 0 0;background:color-mix(in srgb,#fff 97%,transparent);box-shadow:0 8px 18px #0f172a12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.edit-booking-page .booking-edit-rooms-heading>div:first-child{display:grid;gap:1px;min-width:0}.edit-booking-page .booking-edit-rooms-heading h3{margin:0;color:#172033;font-size:.96rem;line-height:1.2}.edit-booking-page .booking-edit-rooms-heading>div:first-child>span{color:#64748b;font-size:10px;font-weight:var(--font-medium)}.edit-booking-page .booking-edit-rooms-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}.edit-booking-page .booking-edit-rooms-total{display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:5px;min-width:112px;padding-left:12px;border-left:1px solid #dbe3ec;text-align:right}.edit-booking-page .booking-edit-rooms-total small{grid-column:1 / -1;color:#64748b;font-size:8px;font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase}.edit-booking-page .booking-edit-rooms-total strong{color:#0f172a;font-size:.92rem}.edit-booking-page .booking-edit-rooms-total span{color:#64748b;font-size:8px}.edit-booking-page .booking-edit-rooms-save{min-width:72px;min-height:32px;padding:5px 12px;border-radius:6px;font-size:11px}.edit-booking-page .wizard-card>h3{margin-bottom:var(--space-3);font-size:var(--text-base)}.edit-booking-page .booking-edit-workspace-progress{display:flex;align-items:center;gap:9px;color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold)}.edit-booking-page .booking-edit-workspace-progress span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.edit-booking-page .booking-edit-workspace-progress svg{color:var(--color-primary)}.edit-booking-page .booking-edit-room-list{display:grid!important;gap:10px!important}.edit-booking-page .booking-edit-room-type-group{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:10px;overflow:visible;border:1px solid color-mix(in srgb,var(--color-primary) 58%,#d7e0ea)!important;border-radius:10px;background:#fbfdff!important;box-shadow:0 8px 26px #0f172a0f!important}.edit-booking-page .booking-edit-room-type-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:42px;padding:0 4px 2px}.edit-booking-page .booking-edit-room-type-header .avail-name,.edit-booking-page .booking-edit-room-type-total{display:grid;gap:1px}.edit-booking-page .booking-edit-room-type-header .avail-name small,.edit-booking-page .booking-edit-room-type-total small{color:var(--color-text-secondary);font-size:11px;font-weight:var(--font-normal)}.edit-booking-page .booking-edit-room-type-header .avail-name strong{color:#172033;font-size:.9rem}.edit-booking-page .booking-edit-room-type-total{text-align:right}.edit-booking-page .booking-edit-room-type-total strong{color:#172033;font-size:.9rem}.edit-booking-page .booking-edit-room-type-configs{display:grid;gap:var(--space-3)}.edit-booking-page .booking-edit-default-rate-row{display:flex;align-items:center;gap:var(--space-3);min-width:0;padding:8px 4px;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light)}.edit-booking-page .booking-edit-default-rate-row>svg{flex:0 0 auto;color:var(--color-primary)}.edit-booking-page .booking-edit-default-rate-row .select{flex:1 1 auto;width:auto;min-width:220px;height:36px;font-size:var(--text-xs)}.edit-booking-page .booking-edit-default-meal-code{flex:0 0 auto;font-size:.65rem}.edit-booking-page .booking-edit-default-rate-total{display:grid;grid-template-columns:max-content minmax(72px,auto) max-content;align-items:center;gap:4px;flex:0 0 auto;color:var(--color-text-muted)}.edit-booking-page .booking-edit-default-rate-total strong{min-height:30px;padding:4px 9px;border:1px solid color-mix(in srgb,var(--color-primary) 35%,#cbd5e1);border-radius:6px;background:color-mix(in srgb,var(--color-primary) 4%,#fff);color:var(--color-primary);font-size:var(--text-xs);text-align:right}.edit-booking-page .booking-edit-default-rate-total small{grid-column:1 / -1;color:var(--color-text-muted);font-size:.55rem;text-align:right}.edit-booking-page .booking-edit-room-card{margin-top:0;padding:0 12px 12px!important;overflow:visible;border-color:#d7e0ea!important;border-radius:9px;background:#fff;box-shadow:0 2px 8px #0f172a0a;transition:border-color .16s ease,box-shadow .16s ease}.edit-booking-page .booking-edit-room-card.is-dirty{border-color:#d7e0ea!important;box-shadow:0 2px 8px #0f172a0a}.edit-booking-page .booking-edit-room-card:not(.is-collapsed){border-color:#d7e0ea!important;box-shadow:0 2px 8px #0f172a0a}.edit-booking-page .booking-edit-room-card.is-collapsed:hover{border-color:#b8c7d8!important;box-shadow:0 4px 14px #0f172a0f}.edit-booking-page .booking-edit-room-toggle>svg,.edit-booking-page .booking-edit-room-summary,.edit-booking-page .booking-edit-modified{display:none!important}.edit-booking-page .booking-edit-room-toggle{min-width:0;padding:0;pointer-events:none;cursor:default}.edit-booking-page .booking-edit-room-toggle>span{display:block}.edit-booking-page .booking-edit-room-header{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;align-items:center!important;min-height:0;margin:0 -12px;padding:9px 12px;border-bottom:1px solid #cbd5e1;border-radius:8px 8px 0 0;background:#f1f5f9}.edit-booking-page .booking-edit-room-card:not(.is-collapsed) .booking-edit-room-header{border-bottom-color:#cbd5e1;background:#f1f5f9}.edit-booking-page .booking-edit-room-title>div{display:grid;gap:1px}.edit-booking-page .booking-edit-room-toggle{min-width:0}.edit-booking-page .booking-edit-room-toggle>span{display:grid;min-width:0;gap:1px;text-align:left}.edit-booking-page .booking-edit-room-toggle .booking-room-settings-label{color:#172033;font-size:.8rem}.edit-booking-page .booking-edit-room-card .booking-edit-room-summary{display:inline;color:var(--color-text-secondary);font-size:9px;line-height:1.25}.edit-booking-page .booking-edit-room-summary i{display:inline-block;width:3px;height:3px;margin:0 5px 2px;border-radius:50%;background:var(--color-border-strong)}.edit-booking-page .booking-edit-modified{padding:2px 6px;border-radius:var(--radius-full);background:var(--color-warning-soft);color:#a45d00;font-size:9px;font-weight:var(--font-semibold)}.edit-booking-page .booking-edit-room-header .booking-room-config-header-details{display:flex!important;flex-wrap:nowrap!important;gap:12px;margin-left:auto}.edit-booking-page .booking-edit-room-price{min-height:30px;padding:3px 8px;border-color:#d7e0ea;border-radius:6px;background:#fff}.edit-booking-page .booking-edit-room-price>span{font-size:9px}.edit-booking-page .booking-edit-room-price label{min-width:78px}.edit-booking-page .booking-edit-room-price input{width:64px;font-size:12px}.edit-booking-page .booking-edit-room-header .booking-room-occupancy-controls{gap:6px}.edit-booking-page .booking-edit-room-header .booking-room-occupancy-controls>div{gap:1px;min-height:30px;padding:2px 4px 2px 7px;border:1px solid #dbe3ec;border-radius:6px;background:#fff;color:#475569;font-size:10px}.edit-booking-page .booking-edit-room-header .booking-room-occupancy-controls .btn{min-width:20px;min-height:20px;padding:0;border-radius:4px;font-size:11px}.edit-booking-page .booking-room-config-content{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"stay" "schedule" "guests"!important}.edit-booking-page .booking-edit-room-panel:not(.booking-edit-guest-panel){display:contents}.edit-booking-page .booking-edit-room-basics{grid-area:stay;display:block!important;padding:0!important;background:#fff}.edit-booking-page .booking-edit-room-basics .booking-room-stay-row{display:grid!important;grid-template-columns:112px minmax(220px,360px) 12px minmax(220px,360px) max-content!important;align-items:center;gap:6px;width:100%;min-height:0;padding:10px 0;border-bottom:1px solid #dbe3ec}.edit-booking-page .booking-edit-room-basics .booking-room-stay-row>span:first-child{color:#475569;font-size:inherit;font-weight:var(--font-semibold)}.edit-booking-page .booking-edit-room-basics .booking-date-input{height:auto}.edit-booking-page .booking-edit-room-basics .booking-date-input>input{height:34px;padding-left:48px!important;border-color:#cbd5e1!important;border-radius:6px;background:#fff!important;color:#1e293b;font-size:13px!important}.edit-booking-page .booking-edit-custom-stay{padding:2px 6px;border-radius:var(--radius-full);background:#eef8ff;color:#087eaf;font-size:10px;font-weight:var(--font-semibold);white-space:nowrap}.edit-booking-page .booking-edit-room-card .booking-rate-schedule{grid-area:schedule;min-width:0;padding:10px 0;border-right:0;border-bottom:1px solid #dbe3ec;background:transparent}.edit-booking-page .booking-edit-room-card .booking-rate-schedule-header{display:flex!important;align-items:center!important;justify-content:space-between;gap:10px;min-height:0;margin-bottom:6px}.edit-booking-page .booking-edit-room-card .booking-rate-schedule-title{flex:0 0 auto;gap:6px;color:var(--color-text);font-size:.78rem;white-space:normal}.edit-booking-page .booking-edit-room-card .booking-rate-schedule-summary{margin-left:0;color:#64748b;font-size:12px;font-weight:var(--font-normal)}.edit-booking-page .booking-edit-room-card .booking-rate-header-tools{flex:0 1 auto;flex-wrap:nowrap;justify-content:flex-end;gap:8px}.edit-booking-page .booking-edit-room-card .booking-rate-quick-splits,.edit-booking-page .booking-edit-room-card .booking-rate-quick-options{gap:6px}.edit-booking-page .booking-edit-room-card .booking-rate-quick-splits-label{color:#64748b;font-size:.62rem}.edit-booking-page .booking-edit-room-card .booking-rate-quick-options button{height:26px;min-height:26px;padding:3px 8px;border-color:#cbd5e1;border-radius:5px;background:#fff;color:#475569;font-size:.62rem}.edit-booking-page .booking-edit-room-card .booking-rate-quick-options button[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.edit-booking-page .booking-edit-room-card .booking-rate-segment-editor{margin-top:0;overflow:visible!important;border:0;border-radius:0}.edit-booking-page .booking-edit-room-card .booking-rate-segment-table{min-width:0!important;overflow:hidden;border:1px solid #d6dee8;border-radius:6px;background:#fff}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid{grid-template-columns:28px minmax(132px,150px) 12px minmax(132px,150px) minmax(220px,1fr) minmax(100px,120px) 26px!important;gap:6px!important;min-height:0;padding:4px 8px 4px 7px!important;border:0;border-radius:0;background:#fff;box-shadow:inset 3px 0 var(--segment-accent, #94a3b8)}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid:nth-child(2n){background:#fff}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid:not(.booking-rate-segment-grid-header):hover{background:#f8fafc}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid input,.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid select,.edit-booking-page .booking-edit-room-card .booking-rate-segment-boundary,.edit-booking-page .booking-edit-room-card .booking-rate-override-trigger{width:100%;height:32px!important;min-height:32px!important;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:var(--color-text);font-size:.76rem!important}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid .booking-calendar-card{height:32px!important}.edit-booking-page .booking-edit-room-card .booking-calendar-card-display{border-color:#cbd5e1;border-left-width:3px;border-radius:6px;background:#fff}.edit-booking-page .booking-edit-room-card .booking-rate-segment-plan{border-color:#cbd5e1;background:#fff!important}.edit-booking-page .booking-edit-room-card .booking-rate-segment-remove{width:26px;height:26px;opacity:1}.edit-booking-page .booking-edit-room-card .booking-rate-segment-footer{min-height:34px;padding:4px 7px;border-top:1px solid #e2e8f0;background:#fff}.edit-booking-page .booking-edit-room-card .booking-rate-add-segment{width:auto;min-height:26px;margin:0;padding:3px 8px!important;border:1px solid var(--color-primary)!important;border-radius:6px;background:var(--color-primary)!important;color:#fff!important;font-size:.66rem}.edit-booking-page .booking-edit-guest-panel{grid-area:guests;min-width:0;padding:9px 0 0;border-top:0;background:#fff}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls{grid-template-columns:68px minmax(112px,124px) 10px minmax(112px,124px) 22px!important;gap:5px!important;width:100%;max-width:100%;margin:0}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls input,.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .input{height:32px;min-height:32px;font-size:inherit}@container booking-room (min-width: 900px){.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid{grid-template-columns:28px 112px 10px 112px minmax(240px,1fr) minmax(105px,130px) 24px!important;gap:6px!important}.edit-booking-page .booking-edit-room-card .booking-guest-row-grid-dates{grid-template-columns:minmax(260px,440px) 140px max-content}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls{grid-template-columns:68px 124px 10px 124px 22px!important;gap:4px!important}}.edit-booking-page .booking-edit-details-card{padding:10px}.edit-booking-page .booking-edit-details-card .booking-detail-card-title{margin-bottom:8px;font-size:.68rem}.edit-booking-page .booking-edit-details-card>div[style*="display: grid"]{gap:10px!important;margin-bottom:10px!important}.edit-booking-page .booking-edit-details-card>p.text-muted{margin-bottom:8px!important;font-size:.68rem!important}.edit-booking-page .booking-edit-details-card .form-group{gap:2px}.edit-booking-page .booking-edit-details-card .form-label{margin-bottom:0;font-size:.64rem;letter-spacing:.04em}.edit-booking-page .booking-edit-details-card .input,.edit-booking-page .booking-edit-details-card .select{height:32px;min-height:32px;padding:5px 9px;border-radius:6px;font-size:.75rem}.edit-booking-page .booking-edit-details-card textarea.input{height:58px;min-height:58px;padding:7px 9px;line-height:1.35}@media(min-width:1100px){.edit-booking-page .booking-edit-details-card>div[style*="display: grid"]:has(>.form-group:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))!important}}.edit-booking-page .booking-edit-room-card .booking-rate-segment-override.has-override{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;gap:4px}.edit-booking-page .booking-edit-room-card .booking-rate-override-trigger.has-value{border-color:#f59e0b80!important;background:#fffbeb!important;color:#92400e!important;font-weight:var(--font-semibold)}.edit-booking-page .booking-edit-room-card .booking-rate-override-trigger.has-value:hover,.edit-booking-page .booking-edit-room-card .booking-rate-override-trigger.has-value:focus-visible{border-color:#f59e0b!important;background:#fff7d6!important;color:#78350f!important;outline:none}.edit-booking-page .booking-edit-room-card .booking-rate-segment-override.has-override .booking-rate-override-trigger svg{display:none}.edit-booking-page .booking-edit-room-card .booking-rate-override-reset{width:24px;height:28px;padding:0;border:1px solid #f59e0b66;border-radius:5px;background:#fff;color:#92400e}.edit-booking-page .booking-edit-room-card .booking-rate-override-reset:hover,.edit-booking-page .booking-edit-room-card .booking-rate-override-reset:focus-visible{border-color:#f59e0b;background:#fffbeb;color:#78350f;outline:none}@container booking-room (min-width: 960px){.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid{grid-template-columns:28px 112px 10px 112px minmax(260px,1fr) minmax(105px,130px) 26px!important;gap:var(--space-2)!important}}@container booking-room (max-width: 819px){.edit-booking-page .booking-edit-room-card .booking-rate-schedule-header{display:grid!important;grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"schedule-title schedule-reset" "schedule-presets schedule-presets";align-items:center!important;gap:8px 12px}.edit-booking-page .booking-edit-room-card .booking-rate-schedule-title{grid-area:schedule-title;min-width:0;flex-wrap:wrap}.edit-booking-page .booking-edit-room-card .booking-rate-header-tools{display:contents}.edit-booking-page .booking-edit-room-card .booking-rate-quick-splits{grid-area:schedule-presets;width:100%}.edit-booking-page .booking-edit-room-card .booking-rate-reset{grid-area:schedule-reset;white-space:nowrap}}@container booking-room (max-width: 899px){.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid{grid-template-columns:minmax(120px,1fr) 16px minmax(120px,1fr) minmax(100px,.45fr) 28px!important;row-gap:8px!important;padding:10px!important}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before{display:none}.edit-booking-page .booking-edit-room-card .booking-rate-segment-plan{grid-column:1 / 4;grid-row:2}.edit-booking-page .booking-edit-room-card .booking-rate-segment-override{grid-column:4;grid-row:2}.edit-booking-page .booking-edit-room-card .booking-rate-segment-remove{grid-column:5;grid-row:1 / 3}.edit-booking-page .booking-edit-room-card .booking-guest-row-grid-dates{grid-template-columns:minmax(0,1fr) 120px}.edit-booking-page .booking-edit-room-card .booking-guest-row-grid-dates .booking-guest-date-controls,.edit-booking-page .booking-edit-room-card .booking-resolved-guest-row .booking-guest-date-controls{grid-column:1 / -1;grid-template-columns:72px minmax(0,1fr) 12px minmax(0,1fr) 24px!important}}@container booking-room (min-width: 720px) and (max-width: 899px){.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid{grid-template-columns:28px minmax(104px,120px) 10px minmax(104px,120px) minmax(180px,1fr) minmax(88px,104px) 22px!important;grid-template-rows:auto;column-gap:5px!important;row-gap:0!important;padding:4px 7px!important}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before{display:inline-flex}.edit-booking-page .booking-edit-room-card .booking-rate-segment-plan,.edit-booking-page .booking-edit-room-card .booking-rate-segment-override,.edit-booking-page .booking-edit-room-card .booking-rate-segment-remove{grid-column:auto;grid-row:auto}}@container booking-room (max-width: 640px){.edit-booking-page .booking-edit-room-basics .booking-room-stay-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important}.edit-booking-page .booking-edit-room-basics .booking-room-stay-row>:first-child{grid-column:1 / -1}.edit-booking-page .booking-edit-room-card .booking-rate-segment-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 28px!important}.edit-booking-page .booking-edit-room-card .booking-rate-segment-plan{grid-column:1 / 4;grid-row:2}.edit-booking-page .booking-edit-room-card .booking-rate-segment-override{grid-column:1 / 4;grid-row:3}.edit-booking-page .booking-edit-room-card .booking-rate-segment-remove{grid-column:4;grid-row:1 / 4}}.edit-booking-page .booking-edit-room-price label,.edit-booking-page .booking-edit-room-price input{outline:0!important;box-shadow:none!important}.edit-booking-page .booking-edit-room-price input{border:0!important;background:transparent!important}@media(max-width:1180px){.edit-booking-page .booking-edit-summary-bar{grid-template-columns:minmax(170px,1fr) max-content max-content max-content}.edit-booking-page .booking-edit-summary-stat:nth-of-type(2){display:none}.edit-booking-page .booking-edit-rooms-heading-actions{gap:8px}.edit-booking-page .booking-edit-workspace-progress span:last-child{display:none}}@media(max-width:980px){.edit-booking-page .booking-edit-summary-bar{position:sticky;top:8px;grid-template-columns:minmax(0,1fr) max-content max-content;gap:var(--space-3)}.edit-booking-page .booking-edit-summary-stat{display:none}.edit-booking-page .booking-edit-rooms-heading{position:static}.edit-booking-page .booking-edit-workspace-progress{display:none}.edit-booking-page .booking-edit-default-rate-row{flex-wrap:wrap}.edit-booking-page .booking-edit-default-rate-row .select{order:3;flex-basis:100%}.edit-booking-page .booking-edit-default-rate-total{margin-left:auto}}@media(max-width:760px){.edit-booking-page{padding-bottom:var(--space-6)}.edit-booking-page .booking-edit-summary-bar{top:calc(var(--header-height) + 8px);grid-template-columns:minmax(0,1fr) max-content}.edit-booking-page .booking-edit-summary-guest{display:none}.edit-booking-page .booking-edit-workspace-progress{flex-wrap:wrap}.edit-booking-page .booking-edit-room-header{grid-template-columns:minmax(0,1fr)!important;align-items:flex-start!important}.edit-booking-page .booking-edit-room-header .booking-room-config-header-details{width:100%;margin-left:0;justify-content:space-between}.edit-booking-page .booking-edit-rooms-heading{align-items:flex-start;flex-wrap:wrap}.edit-booking-page .booking-edit-rooms-heading-actions{width:100%;justify-content:space-between}}.edit-booking-page .booking-edit-room-card,.edit-booking-page .booking-edit-room-card.is-dirty,.edit-booking-page .booking-edit-room-card:not(.is-collapsed){padding:0 12px 12px!important;overflow:visible!important;border:1px solid #cbd5e1!important;border-radius:8px!important;background:var(--color-bg-card)!important;box-shadow:0 8px 24px #0f172a14!important}.edit-booking-page .booking-edit-room-card>.booking-room-config-header,.edit-booking-page .booking-edit-room-card>.booking-edit-room-header{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;align-items:center!important;gap:var(--space-3)!important;min-height:0!important;margin:0 -12px!important;padding:9px 12px!important;border-bottom:1px solid #cbd5e1!important;border-radius:8px 8px 0 0!important;background:#f1f5f9!important}.edit-booking-page .booking-edit-room-card .booking-room-config-identity{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important}.edit-booking-page .booking-edit-room-card .booking-room-settings-label{color:#1e293b!important;font-size:12px!important;line-height:1.25!important;white-space:nowrap!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-toggle>svg,.edit-booking-page .booking-edit-room-card .booking-edit-room-title>svg,.edit-booking-page .booking-edit-room-card .booking-edit-room-title button>svg,.edit-booking-page .booking-edit-room-card .booking-edit-room-summary,.edit-booking-page .booking-edit-room-card .booking-edit-modified,.edit-booking-page .booking-edit-room-card .booking-edit-custom-stay{display:none!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-title>div>:not(strong):not(.booking-room-settings-label),.edit-booking-page .booking-edit-room-card .booking-edit-room-toggle>span>:not(strong):not(.booking-room-settings-label){display:none!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-toggle{min-width:0!important;padding:0!important;pointer-events:none!important;cursor:default!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-toggle>span{display:block!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-title{display:flex!important;align-items:center!important;min-width:0!important;padding:0!important;pointer-events:none!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-title>div{display:block!important}.edit-booking-page .booking-edit-room-card .booking-room-config-header-details{display:flex!important;align-items:center!important;justify-content:flex-end!important;justify-self:end!important;flex-wrap:nowrap!important;gap:var(--space-3)!important;min-width:0!important;margin-left:0!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-price{display:inline-flex!important;align-items:baseline!important;gap:6px!important;min-height:26px!important;padding:3px 8px!important;border:1px solid #d6dee8!important;border-radius:6px!important;background:#fff!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-price>span{color:#64748b!important;font-size:.62rem!important;font-weight:var(--font-medium)!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-price strong{color:#1e293b!important;font-size:.72rem!important;font-weight:var(--font-semibold)!important}.edit-booking-page .booking-edit-room-card .booking-room-occupancy-controls{display:flex!important;align-items:center!important;gap:12px!important}.edit-booking-page .booking-edit-room-card .booking-room-occupancy-controls>div{display:flex!important;align-items:center!important;gap:8px!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:inherit!important;font-size:var(--text-xs)!important}.edit-booking-page .booking-edit-room-card .booking-room-occupancy-controls .btn{min-width:0!important;min-height:0!important;padding:0!important;border-radius:0!important;font-size:var(--text-xs)!important}.edit-booking-page .booking-edit-room-card .booking-room-config-content-collapse{grid-template-rows:1fr!important;opacity:1!important;visibility:visible!important}.edit-booking-page .booking-edit-room-card .booking-edit-room-basics .booking-room-stay-row{grid-template-columns:112px minmax(220px,360px) 12px minmax(220px,360px) max-content!important;gap:6px!important;padding:10px 0!important}.edit-booking-page .booking-edit-room-card .booking-room-stay-actions{gap:5px!important}.edit-booking-page .booking-edit-room-card .booking-room-stay-actions .btn{min-height:28px!important;padding:3px 7px!important;font-size:.65rem!important}@media(max-width:760px){.edit-booking-page .booking-edit-room-card>.booking-room-config-header,.edit-booking-page .booking-edit-room-card>.booking-edit-room-header{grid-template-columns:minmax(0,1fr)!important;align-items:flex-start!important}.edit-booking-page .booking-edit-room-card .booking-room-config-header-details{width:100%;justify-self:stretch!important;justify-content:space-between!important;flex-wrap:wrap!important}}.edit-booking-page .booking-edit-room-card .booking-room-config-header.is-toggleable{cursor:pointer;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.edit-booking-page .booking-edit-room-card .booking-room-config-header.is-toggleable:hover{background:#eef3f8!important}.edit-booking-page .booking-edit-room-card .booking-room-toggle{min-width:0}.edit-booking-page .booking-edit-room-card .booking-room-toggle svg{flex:0 0 auto;display:block!important;color:#64748b;transition:transform .3s cubic-bezier(.22,1,.36,1),color .18s ease!important}.edit-booking-page .booking-edit-room-card .booking-room-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.edit-booking-page .booking-edit-room-card .booking-room-config-content-collapse{grid-template-rows:0fr!important;opacity:0!important;visibility:hidden!important;transition:grid-template-rows .32s cubic-bezier(.22,1,.36,1),opacity .18s ease,visibility 0s linear .32s!important}.edit-booking-page .booking-edit-room-card .booking-room-config-content-collapse.is-expanded{grid-template-rows:1fr!important;opacity:1!important;visibility:visible!important;transition:grid-template-rows .32s cubic-bezier(.22,1,.36,1),opacity .22s ease 45ms,visibility 0s!important}.edit-booking-page .booking-edit-room-card .booking-room-config-content-collapse-inner{transform:translateY(-5px);transition:transform .28s cubic-bezier(.22,1,.36,1)}.edit-booking-page .booking-edit-room-card .booking-room-config-content-collapse.is-expanded>.booking-room-config-content-collapse-inner{transform:translateY(0)}.edit-booking-page .booking-edit-room-card.is-collapsed,.edit-booking-page .booking-edit-room-card.is-dirty.is-collapsed{padding-bottom:0!important;box-shadow:none!important}.edit-booking-page .booking-edit-room-card.is-collapsed>.booking-room-config-header{border-bottom-color:transparent!important;border-radius:8px!important;background:#fff!important}.edit-booking-page .booking-edit-room-card.is-collapsed>.booking-room-config-header.is-toggleable:hover{background:#f8fafc!important}@media(prefers-reduced-motion:reduce){.edit-booking-page .booking-edit-room-card .booking-room-config-header.is-toggleable,.edit-booking-page .booking-edit-room-card .booking-room-toggle svg,.edit-booking-page .booking-edit-room-card .booking-room-config-content-collapse,.edit-booking-page .booking-edit-room-card .booking-room-config-content-collapse-inner{transition:none!important}}.edit-booking-page .booking-edit-room-card .booking-edit-guest-panel{padding-top:6px}.edit-booking-page .booking-edit-room-card .booking-edit-guest-panel .booking-room-section-title{margin-bottom:2px;font-size:.72rem}.edit-booking-page .booking-edit-room-card .booking-edit-guest-panel .booking-room-section-summary{font-size:.68rem}.edit-booking-page .booking-edit-room-card .booking-guest-entry{min-height:0;padding:4px 6px 4px 32px}.edit-booking-page .booking-edit-room-card .booking-guest-entry:before{left:5px;width:19px;height:19px;font-size:.52rem}.edit-booking-page .booking-edit-room-card .booking-guest-row-grid{gap:6px}.edit-booking-page .booking-edit-room-card .booking-guest-row-grid .input{height:28px!important;min-height:28px!important;padding-top:3px!important;padding-bottom:3px!important;border-radius:5px;font-size:.7rem!important}.edit-booking-page .booking-edit-room-card .booking-guest-row-grid>input.input{width:100%!important}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls{gap:4px!important}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .booking-calendar-card{height:28px}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .booking-calendar-card-display{gap:6px;padding-inline:6px;border-radius:5px}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .booking-calendar-card-day strong{font-size:.72rem}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .booking-calendar-card-weekday,.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .booking-calendar-card-month strong,.edit-booking-page .booking-edit-room-card .booking-guest-date-controls .booking-calendar-card-month small{font-size:9px}.edit-booking-page .booking-edit-room-card .booking-primary-guest{min-height:28px;padding:4px 7px;font-size:.68rem}.edit-booking-page .booking-edit-room-card .booking-resolved-guest-row{gap:6px;padding:4px 6px}@container booking-room (min-width: 900px){.edit-booking-page .booking-edit-room-card .booking-guest-row-grid-dates{grid-template-columns:minmax(260px,1fr) 120px 364px!important}.edit-booking-page .booking-edit-room-card .booking-guest-date-controls{grid-template-columns:64px 124px 10px 124px 22px!important;width:364px}.edit-booking-page .booking-edit-room-card .booking-resolved-guest-row{grid-template-columns:minmax(260px,1fr) minmax(108px,140px) 364px max-content}}.room-assignment-picker{display:grid;gap:10px;padding:12px;border:1px solid color-mix(in srgb,var(--color-primary) 18%,var(--color-border));border-radius:12px;background:color-mix(in srgb,var(--color-primary) 2%,var(--color-bg-card))}.room-assignment-picker-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.room-assignment-picker-heading .form-label{margin:0}.room-assignment-picker-heading p{margin:3px 0 0;color:var(--color-text-secondary);font-size:var(--text-xs)}.room-assignment-picker-heading>span{flex:0 0 auto;padding:4px 9px;border-radius:999px;font-size:var(--text-xs);font-weight:var(--font-semibold)}.room-assignment-picker-heading .has-ready-rooms{background:var(--color-success-soft);color:var(--color-success)}.room-assignment-picker-heading .has-no-ready-rooms{background:var(--color-warning-soft);color:var(--color-warning)}.room-assignment-picker-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:224px;padding:1px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--color-border) transparent;scrollbar-width:thin}.room-assignment-picker-option{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:58px;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-card);color:var(--color-text);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.room-assignment-picker-option:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 4%,var(--color-bg-card));transform:translateY(-1px)}.room-assignment-picker-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.room-assignment-picker-option.selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-bg-card));box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 12%,transparent)}.room-assignment-picker-option.not-ready{cursor:not-allowed;background:var(--color-bg-secondary);opacity:.78}.room-assignment-picker-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:var(--color-bg-secondary);color:var(--color-text-secondary)}.room-assignment-picker-option.selected .room-assignment-picker-icon{background:color-mix(in srgb,var(--color-primary) 14%,var(--color-bg-card));color:var(--color-primary)}.room-assignment-picker-copy{display:grid;min-width:0;gap:2px}.room-assignment-picker-copy strong,.room-assignment-picker-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-assignment-picker-copy strong{font-size:var(--text-sm);font-weight:var(--font-semibold)}.room-assignment-picker-copy small{color:var(--color-text-secondary);font-size:var(--text-xs)}.room-assignment-picker-status{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border-radius:999px;background:var(--color-success-soft);color:var(--color-success);font-size:10px;font-weight:var(--font-semibold);white-space:nowrap}.room-assignment-picker-option.not-ready .room-assignment-picker-status{background:var(--color-warning-soft);color:var(--color-warning)}.room-assignment-picker-loading,.room-assignment-picker-empty{display:flex;min-height:74px;align-items:center;justify-content:center;gap:10px;border:1px dashed var(--color-border);border-radius:10px;color:var(--color-text-secondary);background:var(--color-bg-secondary);font-size:var(--text-sm)}.room-assignment-picker-empty{justify-content:flex-start;padding:12px}.room-assignment-picker-empty>svg{flex:0 0 auto;color:var(--color-warning)}.room-assignment-picker-empty>div{display:grid;gap:2px}.room-assignment-picker-empty strong{color:var(--color-text);font-size:var(--text-sm)}.room-assignment-picker-empty span{font-size:var(--text-xs)}.room-assignment-picker-notice{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:9px;background:var(--color-warning-soft);color:var(--color-text-secondary);font-size:var(--text-xs)}.room-assignment-picker-notice>svg{flex:0 0 auto;color:var(--color-warning)}.room-assignment-picker-notice>span{min-width:0}.room-assignment-picker-notice button{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px;margin-left:auto;padding:3px 0;border:0;background:transparent;color:var(--color-primary);font:inherit;font-weight:var(--font-semibold);cursor:pointer;white-space:nowrap}.room-assignment-picker-notice button:hover{text-decoration:underline}@media(max-width:700px){.room-assignment-picker-options{grid-template-columns:1fr}.room-assignment-picker-heading{align-items:center}.room-assignment-picker-notice{align-items:flex-start;flex-wrap:wrap}.room-assignment-picker-notice button{margin-left:23px}}.booking-plan-timeline{container-name:booking-room;container-type:inline-size;display:grid;min-width:0;gap:8px;margin:0;padding:10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card)}.booking-plan-creation-toolbar{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px}.booking-plan-creation-toolbar .booking-rate-quick-splits{min-width:0}.booking-plan-creation-toolbar .booking-rate-quick-options{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.booking-plan-timeline .booking-rate-segment-grid{grid-template-columns:28px minmax(112px,132px) 10px minmax(112px,132px) minmax(190px,1fr) minmax(108px,126px) 24px}.booking-plan-timeline .booking-rate-segment-grid:has(.booking-rate-segment-remove){min-height:44px}.booking-plan-timeline .booking-rate-segment-grid:not(:has(.booking-rate-segment-remove)){grid-template-columns:28px minmax(112px,132px) 10px minmax(112px,132px) minmax(190px,1fr) minmax(108px,126px)}.booking-plan-timeline .booking-rate-segment-plan:invalid{color:var(--color-text-muted)}.booking-plan-timeline .booking-rate-override-trigger:disabled{cursor:not-allowed;opacity:.55}.booking-plan-timeline .booking-rate-segment-footer{justify-content:space-between;gap:10px}.booking-plan-segment-summary{color:var(--color-text-secondary);font-size:10px;font-weight:var(--font-medium)}@container booking-room (max-width: 760px){.booking-plan-creation-toolbar{align-items:stretch;flex-direction:column}.booking-plan-creation-toolbar .booking-rate-quick-splits{width:100%}.booking-plan-creation-toolbar .booking-rate-reset{align-self:flex-start}.booking-plan-timeline .booking-rate-segment-grid,.booking-plan-timeline .booking-rate-segment-grid:not(:has(.booking-rate-segment-remove)){grid-template-columns:minmax(108px,1fr) 12px minmax(108px,1fr) 28px;row-gap:8px;padding:10px}.booking-plan-timeline .booking-rate-segment-grid:not(.booking-rate-segment-grid-header):before{display:none}.booking-plan-timeline .booking-rate-segment-start-control{grid-column:1;grid-row:1}.booking-plan-timeline .booking-rate-segment-arrow{grid-column:2;grid-row:1}.booking-plan-timeline .booking-rate-segment-end-control{grid-column:3;grid-row:1}.booking-plan-timeline .booking-rate-segment-plan{grid-column:1 / 4;grid-row:2}.booking-plan-timeline .booking-rate-segment-override{grid-column:1 / 4;grid-row:3}.booking-plan-timeline .booking-rate-segment-remove{grid-column:4;grid-row:1 / 4}}@container booking-room (max-width: 520px){.booking-plan-creation-toolbar .booking-rate-quick-splits{align-items:stretch;flex-direction:column}.booking-plan-creation-toolbar .booking-rate-quick-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;overflow:visible}.booking-plan-creation-toolbar .booking-rate-quick-options button{width:100%}.booking-plan-timeline .booking-rate-segment-grid,.booking-plan-timeline .booking-rate-segment-grid:not(:has(.booking-rate-segment-remove)){grid-template-columns:minmax(92px,1fr) 10px minmax(92px,1fr) 24px;column-gap:4px}}@media(prefers-reduced-motion:reduce){.booking-plan-timeline *,.booking-plan-timeline *:before,.booking-plan-timeline *:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.fd-board{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}@media(max-width:1100px){.fd-board{grid-template-columns:1fr}}.fd-column{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.fd-column-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary)}.fd-column-search{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-muted)}.fd-column-search input{flex:1;border:none;outline:none;background:transparent;font-size:var(--text-xs);color:var(--color-text);font-family:var(--font-family);padding:var(--space-1) 0}.fd-column-search input::placeholder{color:var(--color-text-muted);opacity:.7}.fd-column-title{font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:var(--space-2)}.fd-column-count{width:24px;height:24px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:var(--font-bold);color:#fff}.fd-column-count.arrivals{background:var(--color-primary)}.fd-column-count.in-house{background:var(--color-success)}.fd-column-count.departures{background:var(--color-warning)}.fd-card-list{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);max-height:70vh;overflow-y:auto}.fd-card{padding:var(--space-3) var(--space-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.fd-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.fd-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-1)}.fd-card-guest{font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--color-text)}.fd-card-conf{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-primary);font-weight:var(--font-bold)}.fd-card-meta{font-size:var(--text-xs);color:var(--color-text-muted);display:flex;gap:var(--space-3);flex-wrap:wrap}.fd-card-rooms{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-top:var(--space-2)}.fd-card-balance{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--font-bold)}.fd-card-balance.positive{color:var(--color-danger)}.fd-card-balance.zero{color:var(--color-success)}.checkin-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4)}.checkin-section-title{font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-4)}.room-picker{display:flex;flex-direction:column;gap:var(--space-3)}.room-picker-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.room-picker-type{font-weight:var(--font-semibold);font-size:var(--text-sm);min-width:140px}.room-picker-select{flex:1}.checkin-wizard{width:min(100%,1120px);max-width:1120px}.checkin-command-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.checkin-command-title{min-width:0}.checkin-command-title h1{margin:5px 0 4px;color:var(--color-text);font-size:clamp(25px,2.4vw,34px);font-weight:750;letter-spacing:-.035em;line-height:1.08}.checkin-command-title p{margin:0;color:var(--color-text-secondary);font-size:13px}.checkin-page-eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--color-primary);font-size:10px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.075em}.checkin-booking-reference{display:flex;align-items:center;gap:10px;flex:0 0 auto;min-width:185px;padding:9px 11px;border:1px solid var(--color-border);border-radius:13px;background:var(--color-bg-card);box-shadow:0 6px 20px #192a460d}.checkin-booking-avatar{display:grid!important;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:10px;background:linear-gradient(145deg,var(--color-brand-light),#eff8ff);color:var(--color-primary)!important;font-family:var(--font-mono);font-size:11px!important;font-weight:var(--font-bold)}.checkin-booking-reference>span:last-child{display:grid;gap:2px}.checkin-booking-reference strong{display:inline-flex;align-items:center;gap:4px;color:var(--color-primary);font-family:var(--font-mono);font-size:12px;letter-spacing:.01em}.checkin-booking-reference small{font-size:10px;color:var(--color-text-secondary);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.06em}.checkin-insight-rail{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:16px;overflow:hidden;border:1px solid #243653;border-radius:16px;background:radial-gradient(circle at 8% 20%,rgba(10,172,235,.2),transparent 24%),linear-gradient(135deg,#152238,#1b2b46);box-shadow:0 14px 34px #1120381f}.checkin-insight-rail>div{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;column-gap:9px;min-width:0;padding:13px 16px;border-right:1px solid rgba(255,255,255,.11)}.checkin-insight-rail>div:last-child{border-right:0}.checkin-insight-rail>div>span{display:grid;grid-row:1 / span 2;width:30px;height:30px;place-items:center;border-radius:9px;background:#ffffff17;color:#85d9fb}.checkin-insight-rail p,.checkin-insight-rail small{margin:0}.checkin-insight-rail p{color:#fff;font-size:13px;font-weight:var(--font-semibold)}.checkin-insight-rail p strong{margin-right:2px;font-family:var(--font-mono);font-size:15px}.checkin-insight-rail small{overflow:hidden;color:#aebdd0;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.checkin-insight-rail .is-ready>span{background:#24c38c24;color:#63e6b6}.checkin-insight-rail .needs-attention>span{background:#f59e0b26;color:#fbbf24}.checkin-workspace{display:grid;grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:16px}.checkin-workspace-main{min-width:0}.checkin-experience-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:9px}.checkin-experience-header>div:first-child{min-width:0}.checkin-experience-header h1{margin:2px 0 4px;color:var(--color-text);font-size:clamp(21px,1.8vw,25px);font-weight:750;letter-spacing:-.03em;line-height:1.12}.checkin-experience-header p{display:flex;align-items:center;gap:7px;margin:0;color:var(--color-text-secondary);font-size:11px}.checkin-experience-header p>span:first-child{color:var(--color-primary);font-family:var(--font-mono);font-weight:var(--font-semibold)}.checkin-experience-header p>i{width:3px;height:3px;border-radius:50%;background:var(--color-border)}.checkin-arrival-count{display:flex;align-items:center;gap:9px;flex:0 0 auto;padding:8px 11px;border:1px solid var(--color-border);border-radius:11px;background:var(--color-bg-card)}.checkin-arrival-count>span{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:var(--color-brand-light);color:var(--color-primary)}.checkin-arrival-count>div{display:grid;gap:1px}.checkin-arrival-count small{color:var(--color-text-muted);font-size:8px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.06em}.checkin-arrival-count strong{color:var(--color-text);font-size:11px}.checkin-stepper{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr) 24px minmax(0,1fr);align-items:center;margin-bottom:13px;padding:8px 12px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-card);box-shadow:0 5px 16px #192a4609}.checkin-stepper>div{display:flex;align-items:center;gap:8px;min-width:0}.checkin-stepper>div>span{display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:var(--font-bold)}.checkin-stepper>div.complete>span{border-color:color-mix(in srgb,var(--color-success) 22%,var(--color-border));background:var(--color-success-soft);color:var(--color-success)}.checkin-stepper>div.current>span{border-color:color-mix(in srgb,var(--color-warning) 30%,var(--color-border));background:var(--color-warning-soft);color:#b45309}.checkin-stepper>div.current:last-child>span{border-color:color-mix(in srgb,var(--color-primary) 28%,var(--color-border));background:var(--color-brand-light);color:var(--color-primary)}.checkin-stepper p{display:grid;min-width:0;gap:1px;margin:0}.checkin-stepper strong{color:var(--color-text);font-size:10px}.checkin-stepper small{overflow:hidden;color:var(--color-text-secondary);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.checkin-stepper>i{height:1px;margin:0 8px;background:var(--color-border)}.checkin-stepper>div.complete+i{background:color-mix(in srgb,var(--color-success) 38%,var(--color-border))}.checkin-console-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:13px}.checkin-console-header>div:first-child{min-width:0}.checkin-console-header h1{margin:4px 0 5px;color:var(--color-text);font-size:25px;font-weight:750;letter-spacing:-.025em;line-height:1.15}.checkin-console-header p{display:flex;align-items:center;gap:6px;margin:0;color:var(--color-text-secondary);font-size:12px}.checkin-console-header p>strong{color:var(--color-primary);font-family:var(--font-mono);font-size:11px}.checkin-vip{display:inline-flex;align-items:center;gap:3px;color:#b45309;font-size:10px;font-weight:var(--font-semibold)}.checkin-console-state{display:flex;align-items:center;gap:8px;flex:0 0 auto;min-width:116px;padding:6px 8px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-bg-card)}.checkin-console-state>span{display:grid;gap:1px}.checkin-console-state small{color:var(--color-text-muted);font-size:7px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.06em}.checkin-console-state strong{color:var(--color-text);font-size:10px}.checkin-console-state.ready{color:var(--color-success)}.checkin-console-state.attention{border-color:color-mix(in srgb,var(--color-warning) 25%,var(--color-border));color:#b45309;background:color-mix(in srgb,var(--color-warning) 4%,var(--color-bg-card))}.checkin-context-bar{display:flex;align-items:center;gap:14px;margin-bottom:13px;padding:9px 12px;border:1px solid var(--color-border);border-radius:11px;background:var(--color-bg-card)}.checkin-context-bar>span{display:inline-flex;align-items:baseline;gap:5px;min-width:0}.checkin-context-bar strong{color:var(--color-text);font-family:var(--font-mono);font-size:13px}.checkin-context-bar small{color:var(--color-text-secondary);font-size:10px;white-space:nowrap}.checkin-context-bar>span.attention strong,.checkin-context-bar>span.attention small{color:#b45309}.checkin-context-bar>i{width:1px;height:16px;flex:0 0 auto;background:var(--color-border)}.checkin-workspace{grid-template-columns:minmax(0,1fr)}.checkin-special-request{display:flex;gap:8px;margin-bottom:var(--space-4);padding:8px 11px;border:1px solid var(--color-warning);border-radius:var(--radius-md);background:var(--color-warning-soft);font-size:var(--text-xs)}.checkin-special-request strong{flex:0 0 auto;color:var(--color-warning)}.checkin-special-request span{color:var(--color-text)}.checkin-room-section{padding:0;overflow:visible;border-radius:16px;box-shadow:0 10px 28px #192a4611}.checkin-room-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:15px 16px 13px;border-bottom:1px solid var(--color-border)}.checkin-room-heading-eyebrow{display:block;margin-bottom:2px;color:var(--color-primary);font-size:9px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.08em}.checkin-room-heading .checkin-section-title{margin-bottom:2px;color:var(--color-text);font-size:15px;text-transform:none;letter-spacing:0}.checkin-room-heading p{margin:0;color:var(--color-text-secondary);font-size:12px}.checkin-protected-summary{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-semibold);white-space:nowrap}.checkin-partial-note{padding:var(--space-3) var(--space-5);color:var(--color-text-muted);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);font-size:var(--text-sm)}.checkin-room-list{display:flex;flex-direction:column;gap:10px;padding:12px;background:#f7f9fc}.checkin-room-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,.58fr);align-items:start;gap:14px;min-height:144px;padding:13px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-bg-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.checkin-room-row.selected{border-color:color-mix(in srgb,var(--color-primary) 42%,var(--color-border));box-shadow:0 6px 18px color-mix(in srgb,var(--color-primary) 8%,transparent)}.checkin-room-row:not(.selected){opacity:.68;background:var(--color-bg-card)}.checkin-room-row.has-error{border-color:var(--color-error, #ef4444);box-shadow:0 4px 16px color-mix(in srgb,var(--color-error, #ef4444) 8%,transparent)}.checkin-room-choice{display:grid;grid-template-columns:18px 38px minmax(0,1fr);align-items:start;gap:10px;min-width:0;cursor:pointer}.checkin-room-choice input{width:16px;height:16px;margin-top:4px;accent-color:var(--color-primary)}.checkin-room-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:30px;border-radius:8px;background:var(--color-brand-light);color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--font-bold)}.checkin-room-summary{display:flex;flex-direction:column;min-width:0;gap:4px}.checkin-room-summary-title{display:flex;align-items:center;gap:7px;min-width:0}.checkin-room-summary-title>em{flex:0 0 auto;padding:1px 5px;border-radius:999px;background:color-mix(in srgb,var(--color-success) 10%,var(--color-bg-card));color:var(--color-success);font-size:10px;font-style:normal;font-weight:var(--font-semibold)}.checkin-room-summary strong{color:var(--color-text);font-size:12px}.checkin-room-summary small{overflow:hidden;color:var(--color-text-secondary);font-size:11px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.checkin-due-guest-list{display:grid;gap:5px;margin-top:7px}.checkin-due-guest{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:8px 9px;border:1px solid color-mix(in srgb,var(--color-primary) 9%,var(--color-border));border-radius:10px;background:linear-gradient(105deg,#f7fbfe,color-mix(in srgb,var(--color-primary) 3%,var(--color-bg-card)))}.checkin-due-guest>b{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:var(--color-brand-light);color:var(--color-primary);font-family:var(--font-mono);font-size:10px}.checkin-due-guest>span{display:grid;min-width:0}.checkin-due-guest strong{display:flex;align-items:center;gap:5px;font-size:12px}.checkin-due-guest strong>em{padding:1px 4px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:8px;font-style:normal;font-weight:var(--font-medium)}.checkin-due-guest small{display:flex;align-items:center;gap:4px;color:var(--color-text-secondary);font-size:11px;white-space:normal}.checkin-due-guest small>i{width:3px;height:3px;border-radius:50%;background:var(--color-border)}.checkin-due-guest small svg{flex:0 0 auto}.checkin-later-guest-note{display:inline-flex;width:fit-content;margin-top:5px;padding:3px 7px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-medium)}.checkin-room-assignment{min-width:0;padding:12px;border:1px solid color-mix(in srgb,var(--color-primary) 10%,var(--color-border));border-radius:12px;background:linear-gradient(145deg,#f8fbfe,var(--color-bg-card))}.checkin-room-assignment>label{display:block;margin-bottom:5px;color:var(--color-text-secondary);font-size:11px;font-weight:var(--font-medium)}.checkin-assignment-heading{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:2px}.checkin-assignment-heading>span{display:inline-flex;align-items:center;gap:5px;color:var(--color-text);font-size:12px;font-weight:var(--font-semibold)}.checkin-assignment-heading svg{color:var(--color-primary)}.checkin-assignment-heading>em{padding:2px 5px;border-radius:999px;background:var(--color-success-soft);color:var(--color-success);font-size:9px;font-style:normal;font-weight:var(--font-semibold)}.checkin-assignment-heading.unavailable>em{background:var(--color-warning-soft);color:#b45309}.checkin-room-select-line{display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:var(--space-2)}.checkin-room-select-line .select{min-height:34px;border-radius:8px;font-size:10px}.checkin-room-select-line svg{color:var(--color-success)}.checkin-row-error,.checkin-row-warning{margin:5px 26px 0 0;color:var(--color-error, #dc2626);font-size:var(--text-xs)}.checkin-row-warning{color:var(--color-warning, #b45309)}.checkin-no-arrivals{display:flex;align-items:center;gap:9px;padding:var(--space-5);color:var(--color-success)}.checkin-no-arrivals>div{display:grid}.checkin-no-arrivals strong{color:var(--color-text);font-size:var(--text-sm)}.checkin-no-arrivals span{color:var(--color-text-secondary);font-size:var(--text-xs)}.checkin-room-section{border-radius:13px;box-shadow:0 7px 22px #192a460e}.checkin-room-heading{min-height:42px;padding:8px 12px;border-radius:13px 13px 0 0}.checkin-room-heading-eyebrow{margin-bottom:1px}.checkin-room-heading .checkin-section-title{display:flex;align-items:center;gap:7px;margin:0;font-size:12px}.checkin-room-heading .checkin-section-title>em{padding:2px 6px;border-radius:999px;background:var(--color-success-soft);color:var(--color-success);font-size:8px;font-style:normal;font-weight:var(--font-semibold)}.checkin-room-list{gap:0;padding:0;background:var(--color-bg-card)}.checkin-room-row{grid-template-columns:minmax(225px,.8fr) minmax(270px,1fr) minmax(270px,.9fr);gap:0;min-height:0;padding:10px 12px;border:0;border-bottom:1px solid var(--color-border);border-radius:0}.checkin-room-row:last-child{border-bottom:0;border-radius:0 0 13px 13px}.checkin-room-row.selected{border-left:3px solid var(--color-primary);box-shadow:none}.checkin-room-row.has-error{border-left-color:var(--color-error, #ef4444);box-shadow:none}.checkin-room-row.needs-room{border-left-color:var(--color-warning, #f59e0b);background:color-mix(in srgb,var(--color-warning) 2.5%,var(--color-bg-card))}.checkin-due-guest{padding:4px 0;border:0;border-radius:0;background:transparent}.checkin-arrival-guest{min-width:0;margin:0 12px;padding:0 12px;border-right:1px solid var(--color-border);border-left:1px solid var(--color-border)}.checkin-guest-roster-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:18px}.checkin-guest-roster-head>em{flex:0 0 auto;color:var(--color-success);font-size:9px;font-style:normal;font-weight:var(--font-semibold)}.checkin-column-label{display:block;margin:0;color:var(--color-text-muted);font-size:8px;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.065em}.checkin-due-guest-list{gap:0;margin-top:1px}.checkin-due-guest-list.is-scrollable{max-height:126px;padding-right:3px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--color-border) transparent;scrollbar-width:thin}.checkin-later-guest-note{align-items:center;gap:4px;max-width:100%;margin-top:3px;padding:2px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkin-due-guest{grid-template-columns:18px 24px minmax(0,1fr) auto;gap:7px;min-height:40px;padding:4px 2px;border-bottom:1px solid color-mix(in srgb,var(--color-border) 72%,transparent);cursor:pointer;transition:background-color .14s ease,border-color .14s ease}.checkin-due-guest.is-present{border-color:color-mix(in srgb,var(--color-primary) 24%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 6%,var(--color-bg-card))}.checkin-due-guest>input{width:15px;height:15px;margin:0;accent-color:var(--color-primary)}.checkin-due-guest>input:disabled{cursor:not-allowed;opacity:.45}.checkin-due-guest:last-child{border-bottom:0}.checkin-due-guest>b{width:23px;height:23px}.checkin-due-guest>.checkin-due-guest-details{display:grid;min-width:0}.checkin-due-guest-details strong{min-width:0;overflow:hidden;font-size:11px;line-height:1.25}.checkin-due-guest-details strong>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkin-due-guest-details small{min-width:0;overflow:hidden;font-size:9px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.checkin-due-guest>.checkin-guest-nights{display:block;align-self:center;padding:2px 5px;border-radius:999px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:8px;font-weight:var(--font-semibold)}.checkin-room-assignment{padding:8px 9px;border-radius:9px;background:var(--color-bg-secondary)}.checkin-room-picker{position:relative;min-width:0}.checkin-room-picker-trigger{display:flex;width:100%;min-height:42px;align-items:center;justify-content:space-between;gap:10px;padding:6px 9px 6px 11px;border:1px solid var(--color-border);border-radius:9px;background:var(--color-bg-card);color:var(--color-text);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.checkin-room-picker-trigger:hover:not(:disabled),.checkin-room-picker-trigger[aria-expanded=true]{border-color:color-mix(in srgb,var(--color-primary) 55%,var(--color-border));box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 9%,transparent)}.checkin-room-picker-trigger.invalid{border-color:color-mix(in srgb,var(--color-warning) 60%,var(--color-border));background:color-mix(in srgb,var(--color-warning) 5%,var(--color-bg-card))}.checkin-room-picker-trigger:disabled{cursor:not-allowed;opacity:.58}.checkin-room-picker-trigger>span{display:grid;min-width:0;gap:1px}.checkin-room-picker-trigger strong,.checkin-room-picker-trigger small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkin-room-picker-trigger strong{color:var(--color-text);font-size:10px;font-weight:var(--font-semibold)}.checkin-room-picker-trigger small{color:var(--color-text-secondary);font-size:8px}.checkin-room-picker-trigger>svg{flex:0 0 auto;color:var(--color-text-muted);transition:transform var(--transition-fast)}.checkin-room-picker-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.checkin-room-picker-backdrop{position:fixed;z-index:39;top:0;right:0;bottom:0;left:0;padding:0;border:0;background:transparent;cursor:default}.checkin-room-picker-menu{position:absolute;z-index:40;top:calc(100% + 6px);right:0;width:max(100%,330px);max-height:min(360px,55vh);overflow:hidden;border:1px solid color-mix(in srgb,var(--color-primary) 18%,var(--color-border));border-radius:12px;background:var(--color-bg-card);box-shadow:0 18px 45px #192a462e,0 3px 10px #192a4614;animation:checkin-picker-enter .15s ease-out}@keyframes checkin-picker-enter{0%{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.checkin-room-picker-menu-head{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.checkin-room-picker-menu-head>span{color:var(--color-text);font-size:10px;font-weight:var(--font-semibold)}.checkin-room-picker-menu-head>em{padding:2px 6px;border-radius:999px;background:var(--color-success-soft);color:var(--color-success);font-size:8px;font-style:normal;font-weight:var(--font-semibold)}.checkin-room-picker-options{max-height:265px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--color-border) transparent;scrollbar-width:thin}.checkin-room-picker-option{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:10px;padding:7px 11px;border:0;border-bottom:1px solid color-mix(in srgb,var(--color-border) 72%,transparent);background:var(--color-bg-card);color:var(--color-text);text-align:left}button.checkin-room-picker-option{cursor:pointer}button.checkin-room-picker-option:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 5%,var(--color-bg-card))}.checkin-room-picker-option.auto{background:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg-card))}.checkin-room-picker-option.selected{background:color-mix(in srgb,var(--color-primary) 7%,var(--color-bg-card))}.checkin-room-picker-option.blocked{background:var(--color-bg-secondary)}button.checkin-room-picker-option.blocked{cursor:not-allowed;opacity:.72}.checkin-room-picker-option>span{display:grid;min-width:0;gap:2px}.checkin-room-picker-option strong,.checkin-room-picker-option small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checkin-room-picker-option strong{color:var(--color-text);font-size:10px;font-weight:var(--font-semibold)}.checkin-room-picker-option small{color:var(--color-text-secondary);font-size:8px}.checkin-room-picker-option>svg{flex:0 0 auto;color:var(--color-success)}.checkin-room-picker-option>em{flex:0 0 auto;padding:2px 6px;border-radius:999px;background:var(--color-warning-soft);color:#b45309;font-size:7px;font-style:normal;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.04em}.checkin-room-picker-option>em.ready{background:var(--color-success-soft);color:var(--color-success)}.checkin-room-picker-empty{padding:18px 12px;color:var(--color-text-secondary);font-size:9px;text-align:center}.checkin-room-recovery{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding-top:5px;border-top:1px solid var(--color-border)}.checkin-room-recovery>span{color:#b45309;font-size:9px;line-height:1.35}.checkin-room-recovery>button{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;padding:0;border:0;background:transparent;color:var(--color-primary);font-size:9px;font-weight:var(--font-semibold);cursor:pointer}.checkin-room-recovery>button:hover{text-decoration:underline}.checkin-console-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding:7px 9px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg-card);box-shadow:0 7px 20px #192a460d;position:sticky;bottom:10px;z-index:5}.checkin-console-footer.attention{border-color:color-mix(in srgb,var(--color-warning) 25%,var(--color-border))}.checkin-footer-status{display:flex;align-items:center;gap:9px;min-width:0}.checkin-footer-status>span{display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;border-radius:9px;background:var(--color-success-soft);color:var(--color-success)}.checkin-console-footer.attention .checkin-footer-status>span{background:var(--color-warning-soft);color:#b45309}.checkin-footer-status>div{display:grid;min-width:0;gap:2px}.checkin-footer-status strong{color:var(--color-text);font-size:11px}.checkin-footer-status small{overflow:hidden;color:var(--color-text-secondary);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.checkin-footer-actions{display:flex;flex:0 0 auto;gap:7px}.checkin-footer-actions .btn{min-height:34px;padding-top:6px;padding-bottom:6px}.checkin-footer-actions .btn-primary:disabled{border-color:#d8e0e9;background:#e8edf3;box-shadow:none;color:#7b8798;opacity:1}.checkin-readiness-panel{position:sticky;top:18px;overflow:hidden;padding:12px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-bg-card);box-shadow:0 12px 30px #192a4614}.checkin-readiness-state{display:flex;align-items:center;gap:9px;padding:10px;border-radius:11px}.checkin-readiness-state.ready{background:color-mix(in srgb,var(--color-success) 8%,var(--color-bg-card));color:var(--color-success)}.checkin-readiness-state.blocked{background:var(--color-warning-soft);color:#b45309}.checkin-readiness-state>span{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:9px;background:#ffffffb8}.checkin-readiness-state>div{display:grid;gap:1px}.checkin-readiness-state small{color:var(--color-text-secondary);font-size:9px;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em}.checkin-readiness-state strong{color:var(--color-text);font-size:12px}.checkin-readiness-guest{display:flex;align-items:center;gap:9px;margin:12px 2px 0;padding:0 0 12px;border-bottom:1px solid var(--color-border)}.checkin-readiness-guest>div{display:grid;min-width:0;gap:1px}.checkin-readiness-guest small{color:var(--color-text-muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.checkin-readiness-guest strong{overflow:hidden;color:var(--color-text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.checkin-readiness-guest>div>span{color:var(--color-primary);font-family:var(--font-mono);font-size:9px}.checkin-impact-list{display:grid;gap:4px;padding:9px 0}.checkin-impact-list>div{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:start;gap:8px;padding:7px 3px}.checkin-impact-list>div>span{display:grid;width:25px;height:25px;place-items:center;border-radius:8px;background:var(--color-brand-light);color:var(--color-primary)}.checkin-impact-list>div.warning>span{background:var(--color-warning-soft);color:#b45309}.checkin-impact-list p{display:grid;gap:2px;margin:0}.checkin-impact-list strong{color:var(--color-text);font-size:11px}.checkin-impact-list small{color:var(--color-text-secondary);font-size:10px;line-height:1.35}.checkin-readiness-total{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;padding:9px 10px;border-radius:10px;background:var(--color-bg-secondary)}.checkin-readiness-total span{color:var(--color-text-secondary);font-size:9px}.checkin-readiness-total strong{color:var(--color-text);font-family:var(--font-mono);font-size:10px}.checkin-readiness-help{margin:-2px 2px 9px;color:#b45309;font-size:9px;line-height:1.4}.checkin-confirm-button{width:100%;min-height:42px;justify-content:center;border-radius:10px;box-shadow:0 8px 18px color-mix(in srgb,var(--color-primary) 20%,transparent)}.checkin-cancel-button{width:100%;margin-top:5px;justify-content:center;color:var(--color-text-secondary)}.stay-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,292px);width:100%;min-width:0;gap:var(--space-4)}.stay-main-column,.stay-sidebar{min-width:0}.stay-main-column{container-type:inline-size}.stay-sidebar .stay-card{overflow:hidden}.stay-checkout-alert{padding:10px;border:1px solid #fecaca;border-radius:var(--radius-md);background:#fef2f2;color:#991b1b}.stay-checkout-alert-heading{display:flex;align-items:center;gap:6px;font-size:var(--text-xs)}.stay-checkout-alert-heading>svg{flex:0 0 auto}.stay-checkout-alert-dismiss{display:inline-flex;margin-left:auto;padding:2px;border:0;background:transparent;color:inherit;cursor:pointer}.stay-checkout-alert p{margin:6px 0 9px;color:#b91c1c;font-size:var(--text-xs);line-height:1.45}.modal.stay-checkout-modal{display:flex;width:min(500px,calc(100vw - 32px));max-width:500px;max-height:min(90vh,860px);padding:0;overflow:hidden;flex-direction:column}.modal.stay-date-change-modal{display:flex;width:min(90%,920px);max-height:90vh;padding:0;overflow:hidden;flex-direction:column}.stay-date-change-modal>.modal-header{margin-bottom:0;padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border-light)}.stay-date-change-modal-body{display:flex;min-height:0;padding:var(--space-4);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;gap:var(--space-3)}.stay-checkout-modal-body{min-height:0;padding:12px 20px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.stay-sidebar .btn{max-width:100%;min-width:0}.stay-room-sharers{padding:0}.stay-room-sharers-header{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:8px 12px;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.stay-room-sharers-title{display:flex;align-items:center;min-width:0;gap:8px;color:var(--color-text);font-size:.78rem;font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.035em}.stay-room-sharers-title svg{flex:0 0 auto;color:var(--color-primary)}.stay-room-sharers-count{flex:0 0 auto;color:var(--color-text-secondary);font-size:.7rem}.stay-room-sharers-list{padding:2px 12px 4px}.stay-guest-action-error{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px;margin:0 0 10px;padding:9px 10px;border:1px solid color-mix(in srgb,var(--color-danger) 32%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-danger) 7%,var(--color-bg-card));color:var(--color-danger);font-size:.7rem;line-height:1.4}.stay-room-sharers>.stay-guest-action-error{margin:10px 12px 2px}.stay-guest-action-error>svg{margin-top:1px}.stay-guest-action-error strong,.stay-guest-action-error span{display:block}.stay-guest-action-error strong{margin-bottom:1px;font-size:.72rem}.stay-guest-action-error button{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin:-3px -4px 0 0;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:currentColor;cursor:pointer}.stay-guest-action-error button:hover{background:color-mix(in srgb,var(--color-danger) 10%,transparent)}.stay-room-sharer-row{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) 78px;align-items:center;gap:8px;min-height:58px;padding:7px 0;border-bottom:1px solid var(--color-border-light)}.stay-room-sharer-row:last-child{border-bottom:0}.stay-room-sharer-row:before{position:absolute;left:-12px;width:3px;height:24px;border-radius:0 3px 3px 0;background:var(--color-text-muted);content:""}.stay-room-sharer-row.is-in-house:before{background:var(--color-success)}.stay-room-sharer-row.is-checked-out:before{background:var(--color-danger)}.stay-room-sharer-avatar{width:28px;height:28px;flex:0 0 auto;font-size:.6rem}.stay-room-sharer-identity{min-width:0}.stay-room-sharer-name-line,.stay-room-sharer-meta{display:flex;align-items:center;min-width:0}.stay-room-sharer-name-line{gap:5px}.stay-room-sharer-name{overflow:hidden;color:var(--color-text);font-size:.78rem;font-weight:var(--font-semibold);text-overflow:ellipsis;white-space:nowrap}.stay-room-sharer-primary{flex:0 0 auto;padding:1px 5px;border-radius:999px;background:var(--color-brand-light);color:var(--color-primary);font-size:.5rem;font-weight:var(--font-bold);line-height:1.5;text-transform:uppercase}.stay-room-sharer-meta{gap:4px;margin-top:2px;font-size:.65rem;line-height:1.35}.stay-room-sharer-status{flex:0 0 auto;color:var(--color-text-secondary);font-weight:var(--font-semibold)}.stay-room-sharer-status.is-in-house{color:var(--color-success)}.stay-room-sharer-status.is-checked-out{color:var(--color-danger)}.stay-room-sharer-meta-divider{color:var(--color-text-muted)}.stay-room-sharer-phone{min-width:0;overflow:hidden;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap}.stay-room-sharer-action{display:flex;justify-content:flex-end}.stay-room-sharer-button{display:inline-flex;align-items:center;justify-content:center;width:78px;max-width:100%;min-height:30px;overflow:hidden;padding:0 8px;border:1px solid currentColor;border-radius:var(--radius-sm);background:var(--color-bg-card);font:inherit;font-size:.68rem;font-weight:var(--font-semibold);line-height:1;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:background-color .14s ease,color .14s ease,border-color .14s ease}.stay-room-sharer-button.is-check-in{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.stay-room-sharer-button.is-check-in:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.stay-room-sharer-button.is-check-out{border-color:var(--color-danger);background:var(--color-danger);color:#fff}.stay-room-sharer-button.is-check-out:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-danger) 84%,#000);background:color-mix(in srgb,var(--color-danger) 84%,#000);color:#fff}.stay-room-sharer-button:disabled{opacity:.55;cursor:wait}.stay-room-sharer-complete{color:var(--color-text-muted);font-size:.68rem;font-weight:var(--font-semibold)}.stay-hero-card{padding:14px 16px}.stay-hero-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.stay-hero-identity{display:flex;align-items:center;gap:12px;min-width:0}.stay-hero-name{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--color-text);font-size:1.1rem;font-weight:var(--font-bold)}.stay-hero-reference{margin-top:2px;overflow:hidden;color:var(--color-text-secondary);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.stay-hero-actions{display:flex;flex:0 0 auto;gap:6px}.stay-hero-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid var(--color-border-light)}.stay-hero-metrics>div{min-width:0}.stay-hero-metrics small{display:block;margin-top:2px;color:var(--color-text-muted);font-size:.68rem}@media(max-width:1180px){.stay-layout{grid-template-columns:1fr}.stay-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--space-4)}.stay-sidebar .stay-card+.stay-card{margin-top:0}}.stay-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm)}.stay-card+.stay-card{margin-top:var(--space-4)}.stay-card-title{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:var(--space-4)}.stay-room-badge{display:inline-flex;align-items:center;gap:var(--space-2);min-width:54px;min-height:50px;justify-content:center;padding:var(--space-2) var(--space-3);background:var(--color-brand-light);color:var(--color-primary);border-radius:var(--radius-md);font-weight:var(--font-bold);font-size:var(--text-lg)}.folio-table{width:100%;border-collapse:collapse}.folio-table th{padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);background:var(--color-bg-tertiary)}.folio-table td{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border-bottom:1px solid var(--color-border)}.folio-table tr.voided td{text-decoration:line-through;opacity:.5}.folio-table tr.voided td:last-child{text-decoration:none;opacity:1}.void-info-trigger{position:relative;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);background:#0000000d;color:#111;font-size:var(--text-xs);font-weight:500;letter-spacing:.03em;transition:background .15s}.void-info-trigger:hover{background:#0000001a}.void-info-text{display:inline-block;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.void-info-trigger .void-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);right:0;min-width:220px;max-width:300px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f,0 2px 6px #0000000f;padding:var(--space-3);z-index:100;animation:void-tooltip-in .15s ease-out}.void-info-trigger:hover .void-tooltip{display:block}@keyframes void-tooltip-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.void-tooltip:after{content:"";position:absolute;top:100%;right:16px;border:6px solid transparent;border-top-color:#fff}.void-tooltip:before{content:"";position:absolute;top:100%;right:15px;border:7px solid transparent;border-top-color:var(--color-border)}.void-tooltip-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:4px}.void-tooltip-reason{font-size:var(--text-sm);color:#111;font-weight:500;line-height:1.4;word-break:break-word}.void-tooltip-user{font-size:var(--text-xs);color:#04adef;font-weight:600;margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border);display:flex;align-items:center;gap:4px}.folio-amount{font-family:var(--font-mono);font-weight:var(--font-medium)}.folio-amount.debit{color:var(--color-text)}.folio-amount.credit{color:var(--color-success)}.folio-summary{display:flex;justify-content:flex-end;gap:var(--space-6);padding:var(--space-4);background:var(--color-bg-tertiary);border-radius:var(--radius-md);margin-top:var(--space-4)}.folio-summary-item{text-align:right}.folio-summary-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase}.folio-summary-value{font-size:var(--text-lg);font-weight:var(--font-bold);font-family:var(--font-mono)}.folio-summary-value.balance-positive{color:var(--color-danger)}.folio-summary-value.balance-zero{color:var(--color-success)}.payment-methods{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.payment-method-btn{flex:1;padding:var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);cursor:pointer;text-align:center;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast);font-family:var(--font-family);color:var(--color-text)}.payment-method-btn:hover{border-color:var(--color-primary)}.payment-method-btn.active{border-color:var(--color-primary);background:var(--color-brand-light);color:var(--color-primary)}.room-history-list{display:flex;flex-direction:column;gap:var(--space-2)}.room-history-item{font-size:var(--text-xs);color:var(--color-text-secondary);padding:var(--space-2);background:var(--color-bg-tertiary);border-radius:var(--radius-md);line-height:1.5}.journey-timeline{display:flex;flex-direction:column;gap:0;position:relative;padding-left:20px}.journey-timeline:before{content:"";position:absolute;left:8px;top:12px;bottom:12px;width:2px;background:var(--color-border)}.journey-stage{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-2);background:var(--color-bg-card);transition:all var(--transition-fast)}.journey-stage.active{border-color:#6366f1;box-shadow:0 0 0 1px #6366f133}.journey-stage.completed{border-color:var(--color-success);opacity:.85}.journey-stage.pending{opacity:.6}.journey-stage-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast)}.journey-stage-header:hover{background:var(--color-bg-tertiary)}.journey-stage-indicator{display:flex;align-items:center;justify-content:center;flex-shrink:0}.journey-stage.completed .journey-stage-indicator{color:var(--color-success)}.journey-stage.active .journey-stage-indicator{color:#6366f1}.journey-stage.pending .journey-stage-indicator{color:var(--color-text-muted)}.journey-stage-info{flex:1;min-width:0}.journey-stage-info h4{font-size:var(--text-sm);font-weight:var(--font-semibold);margin:0 0 2px}.journey-stage-meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.journey-status-badge{font-size:.65rem;font-weight:var(--font-semibold);padding:1px 6px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em}.journey-status-badge.active{background:#6366f11f;color:#6366f1}.journey-status-badge.completed{background:#10b9811f;color:#10b981}.journey-status-badge.pending{background:var(--color-bg-tertiary);color:var(--color-text-muted)}.journey-task-count{font-size:var(--text-xs);color:var(--color-text-muted)}.journey-time{font-size:var(--text-xs);color:var(--color-text-muted);display:flex;align-items:center;gap:3px}.journey-stage-actions{display:flex;gap:var(--space-2);flex-shrink:0}.journey-stage-tasks{border-top:1px solid var(--color-border);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);background:var(--color-bg-tertiary)}.journey-task{display:flex;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-card);overflow:hidden;transition:all var(--transition-fast)}.journey-task:hover{box-shadow:var(--shadow-sm)}.journey-task.sla-breached{border-color:#ef4444;background:#ef44440a}.journey-task-priority{width:3px;flex-shrink:0}.journey-task-body{flex:1;padding:var(--space-2) var(--space-3);min-width:0}.journey-task-top{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.journey-task-top strong{font-size:var(--text-sm)}.journey-checklist{margin-top:var(--space-2);display:flex;flex-direction:column;gap:2px}.journey-checklist-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);cursor:pointer;padding:2px 0}.journey-checklist-item.done span{text-decoration:line-through;color:var(--color-text-muted)}.journey-checklist-item input[type=checkbox]{width:14px;height:14px;accent-color:#6366f1}.journey-task-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2);gap:var(--space-2)}.journey-sla{font-size:.65rem;display:flex;align-items:center;gap:3px;color:var(--color-text-muted)}.journey-sla.breached{color:#ef4444;font-weight:var(--font-bold)}@media(max-width:768px){.fd-card{padding:var(--space-3);min-height:52px}.fd-card-guest{font-size:var(--text-sm)}.fd-card-list{max-height:60vh;padding:var(--space-2)}.folio-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.folio-table th,.folio-table td{white-space:nowrap;padding:var(--space-2);font-size:var(--text-xs)}.folio-summary{flex-direction:column;gap:var(--space-3);align-items:stretch}.folio-summary-item{text-align:left;display:flex;justify-content:space-between;align-items:center}.payment-methods{flex-direction:column}.payment-method-btn{padding:var(--space-3);min-height:44px}.checkin-experience-header{align-items:flex-start;flex-direction:column;gap:10px}.checkin-command-header{align-items:flex-start;flex-direction:column;gap:12px}.checkin-booking-reference{min-width:min(100%,220px)}.checkin-workspace{grid-template-columns:1fr}.checkin-readiness-panel{position:static}.checkin-section{padding:var(--space-4)}.checkin-room-section{padding:0}.checkin-room-heading{align-items:flex-start;padding:var(--space-4)}.checkin-room-row{grid-template-columns:1fr;gap:var(--space-3);padding:var(--space-4)}.checkin-room-assignment{margin-left:66px}.checkin-room-picker-menu{right:auto;left:0;width:100%;min-width:min(330px,calc(100vw - 48px))}.checkin-arrival-guest{margin:0 0 0 66px;padding:12px 0;border-top:1px solid var(--color-border);border-right:0;border-bottom:1px solid var(--color-border);border-left:0}.checkin-partial-note{padding-right:var(--space-4);padding-left:var(--space-4)}.room-picker-row{flex-direction:column;gap:var(--space-2);align-items:stretch}.room-picker-type{min-width:auto}.journey-stage-header{padding:var(--space-3)}.journey-stage-actions{flex-wrap:wrap}.journey-stage-tasks{padding:var(--space-2) var(--space-3)}.journey-task-body{padding:var(--space-2)}.journey-checklist-item{padding:4px 0;min-height:36px}.journey-checklist-item input[type=checkbox]{width:18px;height:18px}}@media(max-width:600px){.checkin-arrival-count{width:100%}.checkin-stepper{grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 12px minmax(0,1fr);padding:8px}.checkin-stepper>i{margin:0 3px}.checkin-stepper>div{gap:5px}.checkin-console-header{align-items:flex-start;flex-direction:column;gap:10px}.checkin-console-state{min-width:0}.checkin-context-bar{flex-wrap:wrap;gap:8px 11px}.checkin-context-bar>i{display:none}.checkin-booking-reference{width:100%}.checkin-insight-rail{grid-template-columns:1fr}.checkin-insight-rail>div{padding:10px 12px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.checkin-insight-rail>div:last-child{border-bottom:0}.checkin-room-assignment,.checkin-arrival-guest{margin-left:0}.checkin-console-footer{align-items:stretch;flex-direction:column}.checkin-footer-actions{display:grid;grid-template-columns:auto minmax(0,1fr)}}@media(max-width:480px){.checkin-command-title h1{font-size:24px}.checkin-room-heading{flex-direction:column}.checkin-room-choice{grid-template-columns:18px 32px minmax(0,1fr);gap:var(--space-2)}.checkin-room-assignment{margin-left:0}.checkin-room-summary small{white-space:normal}.fd-column-header{padding:var(--space-3)}.fd-column-title{font-size:var(--text-xs)}.fd-card{padding:var(--space-2)}.fd-card-guest{font-size:var(--text-xs)}.fd-card-conf{font-size:.65rem}.fd-card-meta{gap:var(--space-2)}.stay-card{padding:var(--space-4)}.stay-room-badge{font-size:var(--text-base);padding:var(--space-2) var(--space-3)}.folio-summary-value{font-size:var(--text-base)}}.surcharge-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:surcharge-fade-in .2s ease-out}@keyframes surcharge-fade-in{0%{opacity:0}to{opacity:1}}@keyframes surcharge-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.surcharge-modal{background:var(--color-surface, var(--color-bg-card));border-radius:var(--radius-xl, 16px);padding:0;max-width:560px;width:92%;box-shadow:0 24px 48px -12px #00000040,0 0 0 1px #0000000d;animation:surcharge-slide-up .25s ease-out;overflow:hidden}.surcharge-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.surcharge-header h3{margin:0;display:flex;align-items:center;gap:10px;font-size:var(--text-lg);font-weight:var(--font-bold)}.surcharge-header-icon{width:36px;height:36px;border-radius:var(--radius-md);background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);display:flex;align-items:center;justify-content:center;color:var(--color-warning, #f59e0b)}.surcharge-body{padding:var(--space-5) var(--space-6);max-height:50vh;overflow-y:auto}.surcharge-info-banner{background:linear-gradient(135deg,#f59e0b14,#f59e0b08);border:1px solid rgba(245,158,11,.15);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-5);font-size:var(--text-sm);line-height:1.5;color:var(--color-text)}.surcharge-info-banner strong{color:var(--color-warning, #f59e0b)}.surcharge-room-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.surcharge-room-table thead th{font-size:.65rem;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--color-border)}.surcharge-room-table th:nth-child(1),.surcharge-room-table td:nth-child(1){width:28%}.surcharge-room-table th:nth-child(2),.surcharge-room-table td:nth-child(2){width:25%}.surcharge-room-table th:nth-child(3),.surcharge-room-table td:nth-child(3){width:30%}.surcharge-room-table th:nth-child(4),.surcharge-room-table td:nth-child(4){width:17%;text-align:center}.surcharge-room-row{transition:background var(--transition-fast)}.surcharge-room-row:hover{background:var(--color-bg-tertiary)}.surcharge-room-row td{padding:var(--space-3);vertical-align:middle;border-bottom:1px solid var(--color-border);font-size:var(--text-sm)}.surcharge-room-row:last-child td{border-bottom:none}.surcharge-room-name{font-weight:var(--font-semibold);color:var(--color-text);margin-bottom:2px}.surcharge-room-meta{font-size:var(--text-xs);color:var(--color-text-muted)}.surcharge-rate-cell{font-family:var(--font-mono);font-weight:var(--font-medium);font-size:var(--text-sm);color:var(--color-text-secondary)}.surcharge-amount-input{position:relative;display:flex;align-items:center}.surcharge-amount-input .currency-prefix{position:absolute;left:10px;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-muted);pointer-events:none}.surcharge-amount-input input{width:85px;padding:var(--space-2) var(--space-2) var(--space-2) 24px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);background:var(--color-bg);transition:all var(--transition-fast);text-align:right;-moz-appearance:textfield}.surcharge-amount-input input::-webkit-outer-spin-button,.surcharge-amount-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.surcharge-amount-input input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.surcharge-amount-input input:disabled{background:var(--color-bg-tertiary);color:var(--color-text-muted);border-color:transparent}.surcharge-waive-toggle{display:flex;align-items:center;justify-content:center}.surcharge-waive-toggle label{position:relative;display:inline-block;width:40px;height:22px;cursor:pointer}.surcharge-waive-toggle input{opacity:0;width:0;height:0}.surcharge-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-text-muted, #94a3b8);border-radius:11px;transition:all .2s ease}.surcharge-toggle-slider:before{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #00000026}.surcharge-waive-toggle input:checked+.surcharge-toggle-slider{background:var(--color-success, #10b981)}.surcharge-waive-toggle input:checked+.surcharge-toggle-slider:before{transform:translate(18px)}.surcharge-waive-reason{margin-top:var(--space-3);animation:surcharge-fade-in .2s ease-out}.surcharge-waive-reason input{width:100%;padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg);transition:border-color var(--transition-fast)}.surcharge-waive-reason input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.surcharge-waive-reason input::placeholder{color:var(--color-text-muted)}.surcharge-room-row.waived{opacity:.55}.surcharge-room-row.waived .surcharge-room-name{text-decoration:line-through}.surcharge-summary{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-6);background:var(--color-bg-tertiary);border-top:1px solid var(--color-border)}.surcharge-summary-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:var(--font-semibold)}.surcharge-summary-total{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-text)}.surcharge-summary-gst{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px;text-align:right}.surcharge-footer{display:flex;gap:var(--space-2);justify-content:flex-end;padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border)}.surcharge-footer .btn{min-width:120px}.surcharge-bulk-actions{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.surcharge-bulk-btn{font-size:var(--text-xs);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full, 99px);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-secondary);cursor:pointer;font-weight:var(--font-medium);transition:all var(--transition-fast);font-family:var(--font-family)}.surcharge-bulk-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-brand-light, rgba(99, 102, 241, .06))}@media(max-width:600px){.surcharge-modal{width:96%;max-height:90vh;overflow-y:auto}.surcharge-header,.surcharge-body,.surcharge-footer,.surcharge-summary{padding-left:var(--space-4);padding-right:var(--space-4)}.surcharge-room-table thead{display:none}.surcharge-room-table,.surcharge-room-table tbody,.surcharge-room-row,.surcharge-room-row td{display:block;width:100%}.surcharge-room-row{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.surcharge-room-row td{padding:var(--space-1) 0;border-bottom:none}.surcharge-amount-input input{width:100%}}.guest-tabs{display:flex;gap:0;overflow-x:auto;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-5);scrollbar-width:none}.guest-tabs::-webkit-scrollbar{display:none}.guest-tab{flex:0 0 auto;padding:var(--space-3) var(--space-5);border:none;background:transparent;font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast)}.guest-tab:hover{color:var(--color-text)}.guest-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.settings-fields{display:flex;flex-direction:column;gap:var(--space-4)}.room-detail-row{display:flex;flex-direction:column;gap:var(--space-1)}.room-detail-label{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.room-detail-value{font-size:var(--text-sm);color:var(--color-text);font-weight:var(--font-medium)}.folio-audit-trail{display:flex;flex-direction:column;gap:0;position:relative;padding-left:16px}.folio-audit-trail:before{content:"";position:absolute;left:4px;top:8px;bottom:8px;width:2px;background:linear-gradient(to bottom,var(--color-border),var(--color-border-light));border-radius:1px}.audit-entry{display:flex;gap:12px;padding:8px 0;position:relative;transition:background .15s;border-radius:var(--radius-sm)}.audit-entry:hover{background:var(--color-bg-tertiary)}.audit-entry-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;margin-top:4px;margin-left:-12px;border:2px solid var(--color-bg-card);box-shadow:0 0 0 1px var(--color-border-light);z-index:1}.audit-entry-content{flex:1;min-width:0}.audit-action-badge{display:inline-flex;align-items:center;font-size:.65rem;font-weight:700;padding:1px 7px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.folio-audit-trail-details summary::marker,.folio-audit-trail-details summary::-webkit-details-marker{display:none}.folio-audit-trail-details summary:before{content:"▸";margin-right:4px;transition:transform .15s;display:inline-block}.folio-audit-trail-details[open] summary:before{transform:rotate(90deg)}.stay-overview-card{padding:0;overflow:hidden}.stay-overview-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle)}.stay-overview-summary>div{display:grid;grid-template-columns:max-content auto;align-items:center;gap:3px 9px;min-width:0;padding:10px 12px 9px;border-right:1px solid var(--color-border-light)}.stay-overview-summary>div:last-child{border-right:0}.stay-overview-summary span,.stay-overview-summary small,.stay-guest-dates span,.stay-guest-dates small,.stay-crm-context span,.stay-crm-context small,.stay-daily-plan-table small{display:block}.stay-overview-summary span,.stay-guest-dates span,.stay-crm-context span{margin-bottom:0;color:var(--color-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}.stay-overview-summary span{grid-column:1 / -1;white-space:nowrap}.stay-overview-summary strong{justify-self:start;color:var(--color-text);font-family:var(--font-mono);font-size:1rem;line-height:1.15;white-space:nowrap}.stay-overview-summary strong.is-due{color:var(--color-danger)}.stay-overview-summary strong.is-credit{color:var(--color-success)}.stay-overview-summary small,.stay-guest-dates small,.stay-crm-context small{margin-top:0;color:var(--color-text-secondary);font-size:.69rem;line-height:1.35}.stay-overview-summary small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stay-overview-section{padding:10px 12px 0}.stay-overview-section+.stay-overview-section{margin-top:10px;border-top:1px solid var(--color-border-light)}.stay-overview-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.stay-overview-section-head>div{display:flex;align-items:center;gap:7px;min-width:0}.stay-overview-section-head svg{color:var(--color-primary);flex:0 0 auto}.stay-overview-section-head strong,.stay-overview-section-head span{display:block}.stay-overview-section-head strong{color:var(--color-text);font-size:.86rem}.stay-overview-section-head div span,.stay-overview-section-head>span{color:var(--color-text-secondary);font-size:.69rem}.stay-guest-section-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}.stay-guest-section-actions .btn{min-height:28px;padding:4px 8px;font-size:.68rem}.stay-guest-roster{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.stay-guest-grid-head,.stay-guest-row{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(245px,.9fr) minmax(285px,.88fr)}.stay-guest-grid-head{align-items:center;min-height:26px;padding:0 10px;background:var(--color-bg-subtle);border-bottom:1px solid var(--color-border-light)}.stay-guest-grid-head span{min-width:0;color:var(--color-text-muted);font-size:.61rem;font-weight:750;letter-spacing:.055em;text-transform:uppercase}.stay-guest-grid-head span:nth-child(n+2){padding-left:10px;border-left:1px solid var(--color-border-light)}.stay-guest-row{align-items:center;min-height:60px;padding:5px 10px;background:var(--color-bg-card);border-bottom:1px solid var(--color-border-light)}.stay-guest-row:nth-child(2n){background:color-mix(in srgb,var(--color-bg-subtle) 54%,var(--color-bg-card))}.stay-guest-row:last-child{border-bottom:0}.stay-guest-main{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;padding-right:10px}.stay-guest-identity{display:flex;align-items:center;gap:7px;min-width:0}.stay-guest-identity .guest-avatar{width:26px;height:26px;flex:0 0 26px;font-size:.63rem}.stay-guest-name{display:flex;align-items:center;flex-wrap:nowrap;gap:5px;min-width:0;overflow:hidden;color:var(--color-text);font-size:.78rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.stay-guest-primary,.stay-guest-vip,.stay-guest-dnr{padding:2px 6px;border-radius:999px;background:var(--color-primary-light);color:var(--color-primary-dark);font-size:.62rem;font-weight:700}.stay-guest-vip{background:#fff7ed;color:#b45309}.stay-guest-dnr{background:#fef2f2;color:#b91c1c}.stay-guest-contact{min-width:0;margin-left:33px;color:var(--color-text-secondary);font-size:.66rem}.stay-guest-detail-label{display:none}.stay-guest-contact>div{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;overflow:hidden}.stay-guest-contact>div span{display:inline-flex;align-items:center;gap:4px;min-width:0;overflow:hidden;white-space:nowrap}.stay-contact-value{display:block;min-width:0;max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stay-guest-contact .is-missing{color:#b45309}.stay-guest-phone-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:5px;min-width:0;min-height:25px;padding:2px 6px 2px 2px;color:var(--color-text-secondary);font:inherit;border:0;border-radius:6px;background:transparent;cursor:pointer}.stay-guest-phone-button:hover{color:var(--color-primary-dark);background:var(--color-primary-light)}.stay-guest-phone-button.is-missing{color:#b45309;font-weight:650}.stay-contact-edit-icon{flex:0 0 auto;opacity:.58}.stay-guest-dates strong{display:inline-flex;align-items:center;color:var(--color-text);font-size:.7rem;line-height:1.2;flex-wrap:nowrap;white-space:nowrap}.stay-guest-dates{align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:0 10px;border-left:1px solid var(--color-border-light)}.stay-guest-date-line{display:flex;align-items:center;gap:6px;min-width:0}.stay-guest-dates small{margin-top:1px}.stay-guest-state{align-self:stretch;display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;column-gap:7px;min-width:0;padding-left:10px;border-left:1px solid var(--color-border-light)}.stay-guest-state>.stay-guest-status{justify-self:start}.stay-guest-state>div{display:grid;grid-template-columns:30px max-content 30px;align-items:center;justify-content:start;gap:4px;min-width:0}.stay-guest-profile-button{grid-column:1}.stay-guest-check-in-button,.stay-guest-check-out-button{grid-column:2}.stay-guest-remove-button{grid-column:3}.stay-guest-state .btn{flex:0 0 auto;min-height:30px;padding:4px 8px;font-size:.69rem;white-space:nowrap}.stay-guest-state .stay-guest-check-in-button{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 3px 8px color-mix(in srgb,var(--color-primary) 18%,transparent)}.stay-guest-state .stay-guest-check-in-button:hover:not(:disabled){border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.stay-guest-state .stay-guest-check-out-button{border-color:var(--color-danger);background:var(--color-danger);color:#fff;box-shadow:0 3px 8px color-mix(in srgb,var(--color-danger) 16%,transparent)}.stay-guest-state .stay-guest-check-out-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-danger) 84%,#000);background:color-mix(in srgb,var(--color-danger) 84%,#000);color:#fff}.stay-guest-state .stay-guest-check-in-button:disabled,.stay-guest-state .stay-guest-check-out-button:disabled{opacity:.55;cursor:wait}.stay-guest-date-button{flex:0 0 auto;width:28px;height:28px;min-height:28px;padding:0!important;justify-content:center;color:var(--color-primary-dark);border-radius:7px}.stay-guest-profile-button,.stay-guest-remove-button{width:30px;height:30px;padding:0!important;justify-content:center}.stay-guest-profile-button{color:var(--color-text-secondary)}.stay-guest-profile-button span{display:none}.stay-guest-remove-button{color:#b91c1c}.stay-guest-remove-button:disabled{color:var(--color-text-muted)}.guest-date-modal{width:min(540px,calc(100vw - 28px));max-width:540px}.guest-phone-modal{width:min(410px,calc(100vw - 24px));max-width:410px;padding:0;overflow:hidden}.guest-phone-modal .guest-date-modal-head{margin-bottom:0;padding:15px 17px 8px}.guest-phone-modal .guest-date-modal-head .modal-title{font-size:1.12rem;line-height:1.25}.guest-phone-modal .guest-date-modal-head .btn{width:30px;height:30px;min-height:30px;padding:0;justify-content:center}.guest-phone-modal .guest-date-modal-body{gap:9px;padding:7px 17px 10px}.guest-phone-modal .form-group{gap:3px;margin:0}.guest-phone-modal .form-label{margin:0;font-size:.68rem}.guest-phone-modal .guest-phone-input .input{height:42px;min-height:42px;padding-left:38px;font-size:.9rem}.guest-phone-modal .form-group>small{color:var(--color-text-muted);font-size:.66rem;line-height:1.35}.guest-phone-modal .guest-date-modal-actions{gap:8px;margin-top:0;padding:9px 17px 14px}.guest-phone-modal .guest-date-modal-actions .btn{min-height:36px;padding:7px 13px;font-size:.76rem}.guest-phone-person{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.guest-phone-person .guest-avatar{width:32px;height:32px;flex:0 0 32px}.guest-phone-person>div:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}.guest-phone-person span{color:var(--color-text-secondary);font-size:.69rem;line-height:1.3}.guest-phone-input{position:relative}.guest-phone-input>svg{position:absolute;top:50%;left:12px;z-index:1;color:var(--color-text-muted);transform:translateY(-50%)}.guest-phone-input .input{padding-left:40px}.guest-date-modal-head{align-items:flex-start;padding:16px 18px 13px}.guest-date-modal-head>div{display:grid;gap:2px}.guest-date-modal-kicker{color:var(--color-primary);font-size:.67rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.guest-date-modal-body{display:grid;gap:13px;padding:14px 18px 16px}.guest-date-policy,.guest-date-error{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border:1px solid #bae6fd;border-radius:var(--radius-md);background:#f0f9ff;color:#075985}.guest-date-policy svg,.guest-date-error svg{flex:0 0 auto;margin-top:1px}.guest-date-policy>div{display:grid;gap:2px}.guest-date-policy strong{font-size:.77rem}.guest-date-policy span,.guest-date-error span{font-size:.7rem;line-height:1.4}.guest-date-error{border-color:#fed7aa;background:#fff7ed;color:#9a3412}.guest-date-current{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 12px;padding:9px 11px;border-radius:var(--radius-md);background:var(--color-bg-subtle)}.guest-date-current>span{grid-row:1 / span 2;color:var(--color-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.guest-date-current strong{display:inline-flex;align-items:center;gap:6px;color:var(--color-text);font-size:.8rem}.guest-date-current small{color:var(--color-text-secondary);font-size:.67rem}.guest-date-fields{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:9px}.guest-date-fields .form-group{min-width:0;margin:0}.guest-date-fields .input{width:100%}.guest-date-fields small{display:block;min-height:16px;margin-top:4px;color:var(--color-text-muted);font-size:.63rem}.guest-date-fields-arrow{margin-top:2px;color:var(--color-text-muted)}.guest-date-reason{margin:0}.guest-date-reason .form-label span{color:var(--color-text-muted);font-weight:500;text-transform:none}.guest-date-impact{display:flex;align-items:baseline;justify-content:flex-end;gap:5px;color:var(--color-text-secondary);font-size:.68rem}.guest-date-impact span{color:var(--color-primary-dark);font-size:.86rem;font-weight:800}.guest-date-modal-actions{padding:12px 18px 14px;border-top:1px solid var(--color-border-light)}.guest-mutation-modal{width:min(480px,calc(100vw - 24px));max-width:480px}.guest-mutation-modal .guest-date-modal-head{padding:11px 14px 9px}.guest-mutation-modal .modal-title{font-size:1.08rem}.guest-mutation-modal .guest-date-modal-body{gap:9px;padding:10px 14px 11px}.guest-mutation-modal .guest-date-modal-actions{padding:9px 14px 11px}.guest-mutation-modal .guest-date-modal-actions .btn{min-height:34px;padding:6px 12px;font-size:.74rem}.guest-mutation-modal .input{min-height:38px;height:38px;padding:7px 10px;font-size:.8rem}.guest-mutation-note{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid #bae6fd;border-radius:var(--radius-md);background:#f0f9ff;color:#075985;font-size:.69rem;line-height:1.35}.guest-mutation-note svg{flex:0 0 auto}.guest-source-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border-radius:var(--radius-md);background:var(--color-bg-subtle)}.guest-source-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:6px 10px;border:0;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--color-text-secondary);font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.guest-source-tabs button.active{background:var(--color-bg);color:var(--color-primary-dark);box-shadow:0 0 0 1px var(--color-border),0 1px 2px #0f172a0f}.guest-existing-picker{min-width:0}.guest-existing-search{display:flex;align-items:center;gap:8px;height:38px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-muted)}.guest-existing-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #0ea5e91a}.guest-existing-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--color-text);font:inherit;font-size:.8rem}.guest-existing-hint{display:block;padding:6px 2px 0;color:var(--color-text-muted);font-size:.67rem}.guest-existing-results{display:grid;max-height:150px;margin-top:5px;overflow-y:auto;border:1px solid var(--color-border-light);border-radius:var(--radius-md)}.guest-existing-results>button{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:42px;padding:6px 9px;border:0;border-bottom:1px solid var(--color-border-light);background:var(--color-bg);color:var(--color-text);text-align:left;cursor:pointer}.guest-existing-results>button:last-child{border-bottom:0}.guest-existing-results>button:hover{background:var(--color-primary-light)}.guest-existing-results .guest-avatar,.guest-existing-selected .guest-avatar{width:30px;height:30px;flex:0 0 30px;font-size:.62rem}.guest-existing-results>button>span:nth-child(2),.guest-existing-selected>div{display:grid;gap:1px;min-width:0}.guest-existing-results strong,.guest-existing-selected strong{overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.guest-existing-results small,.guest-existing-selected span{overflow:hidden;color:var(--color-text-secondary);font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.guest-existing-selected{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:44px;padding:6px 8px;border:1px solid #86efac;border-radius:var(--radius-md);background:#f0fdf4}.guest-existing-selected .btn{min-height:28px;padding:4px 8px;color:var(--color-primary-dark);font-size:.68rem}.guest-mutation-stay{display:grid;grid-template-columns:106px minmax(0,1fr) minmax(0,1fr);gap:8px}.guest-mutation-stay .form-group{min-width:0;margin:0}.guest-remove-modal{width:min(470px,calc(100vw - 28px));max-width:470px}.guest-mutation-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr) minmax(0,1.1fr);gap:8px}.guest-mutation-grid .form-group{min-width:0;margin:0}.guest-mutation-name{grid-column:1}.guest-remove-summary{display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.guest-remove-summary .guest-avatar{width:34px;height:34px;flex:0 0 34px;font-size:.7rem}.guest-remove-summary>div:last-child{display:grid;gap:2px}.guest-remove-summary strong{color:var(--color-text);font-size:.82rem}.guest-remove-summary span{color:var(--color-text-secondary);font-size:.7rem}.stay-guest-status,.stay-posting-status{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:.64rem;font-weight:700;white-space:nowrap}.stay-guest-status.is-in-house,.stay-posting-status.is-posted{border-color:#a7f3d0;background:#ecfdf5;color:#047857}.stay-guest-status.is-checked-out{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.stay-guest-status.is-expected{border-color:#bae6fd;background:#f0f9ff;color:#0369a1}.stay-overview-empty{display:flex;align-items:center;gap:8px;padding:12px;border:1px dashed #f59e0b;border-radius:var(--radius-md);background:#fffbeb;color:#92400e;font-size:.8rem}.stay-daily-plan-wrap{max-height:380px;width:100%;min-width:0;overflow-x:hidden;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);scrollbar-gutter:stable}.stay-daily-plan-table{width:100%;min-width:0;max-width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:.74rem}.stay-daily-plan-table thead{position:sticky;top:0;z-index:5;background:#f7f9fc;box-shadow:0 1px 0 var(--color-border)}.stay-daily-plan-table th{height:34px;padding:0 7px;overflow:hidden;background:#f7f9fc;color:var(--color-text-secondary);font-size:.66rem;font-weight:700;line-height:1;letter-spacing:.04em;text-align:left;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.stay-daily-plan-table td{height:48px;min-width:0;padding:5px 7px;overflow:hidden;border-bottom:1px solid var(--color-border-light);color:var(--color-text);text-overflow:ellipsis;vertical-align:middle}.stay-daily-plan-table tbody tr:nth-child(2n) td{background:var(--color-bg-subtle)}.stay-daily-plan-table tbody tr:last-child td{border-bottom:0}.stay-daily-plan-table td>strong{display:block;max-width:100%;overflow:hidden;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}.stay-daily-plan-table small{max-width:100%;margin-top:2px;overflow:hidden;color:var(--color-text-secondary);font-size:.67rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.stay-daily-plan-table td:nth-child(2)>strong,.stay-daily-plan-table td:nth-child(3)>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stay-plan-col-date{width:10%}.stay-plan-col-rate{width:36%}.stay-plan-col-guests{width:12%}.stay-plan-col-charges{width:16%}.stay-plan-col-total{width:14%}.stay-plan-col-posting{width:12%}.stay-plan-room-type{display:flex;min-width:0;align-items:center;gap:5px;color:var(--color-text)}.stay-plan-room-type>svg{flex:0 0 auto;color:var(--color-primary)}.stay-plan-room-type>strong{min-width:0;overflow:hidden;font-size:.74rem;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.stay-plan-room-type>em{flex:0 0 auto;padding:1px 5px;border-radius:999px;background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:.58rem;font-style:normal;font-weight:700;letter-spacing:.03em}.stay-plan-meta{display:flex;min-width:0;align-items:center;gap:7px;margin-top:2px;overflow:hidden}.stay-plan-meta small{min-width:0;margin-top:0}.stay-plan-rate-name{min-width:0;overflow:hidden;color:var(--color-text-secondary);font-size:.67rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.stay-plan-meal{flex:0 0 auto;max-width:52%;display:inline-flex;align-items:center;gap:4px;color:var(--color-primary);font-size:.68rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stay-plan-code{display:inline-flex;align-items:center;min-height:19px;padding:1px 6px;border:1px solid color-mix(in srgb,var(--color-primary) 24%,transparent);border-radius:999px;background:var(--color-primary-light);color:var(--color-primary-dark);font-weight:750}.stay-plan-inclusion{min-width:0;overflow:hidden;color:var(--color-text-secondary);font-weight:550;text-overflow:ellipsis;white-space:nowrap}.stay-daily-plan-table .stay-posting-status{max-width:100%;overflow:hidden;text-overflow:ellipsis}.stay-crm-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:14px 16px 16px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle)}.stay-crm-context>div{min-width:0;padding:10px 12px;border-right:1px solid var(--color-border-light)}.stay-crm-context>div:last-child{border-right:0}.stay-crm-context strong{display:block;overflow:hidden;color:var(--color-text);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1100px){.stay-overview-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.stay-overview-summary>div:nth-child(2){border-right:0}.stay-overview-summary>div:nth-child(-n+2){border-bottom:1px solid var(--color-border-light)}.stay-guest-grid-head{display:none}.stay-guest-row{grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);grid-template-rows:auto auto;row-gap:5px}.stay-guest-main{grid-column:1;grid-row:1;padding-right:12px}.stay-guest-dates{grid-column:1;grid-row:2;padding:5px 12px 0 35px;border-top:1px solid var(--color-border-light);border-left:0}.stay-guest-state{grid-column:2;grid-row:1 / span 2}}@media(max-width:700px){.stay-hero-top,.stay-hero-identity{align-items:flex-start}.stay-hero-top{flex-direction:column}.stay-hero-actions{width:100%}.stay-hero-actions .btn{flex:1;justify-content:center}.stay-hero-metrics,.stay-sidebar{grid-template-columns:1fr}}@media(max-width:700px){.stay-overview-summary,.stay-crm-context{grid-template-columns:1fr}.stay-overview-summary>div,.stay-crm-context>div{border-right:0;border-bottom:1px solid var(--color-border-light)}.stay-overview-summary>div:last-child,.stay-crm-context>div:last-child{border-bottom:0}.stay-guest-row{grid-template-columns:1fr;grid-template-rows:auto;row-gap:6px;padding:10px 12px}.stay-guest-main,.stay-guest-dates,.stay-guest-state{grid-column:1;grid-row:auto}.stay-guest-main{padding-right:0}.stay-guest-contact{margin-left:35px}.stay-guest-dates{padding:6px 0 0 35px;border-top:1px solid var(--color-border-light);border-left:0}.stay-guest-state{width:100%;padding:6px 0 0;border-top:1px solid var(--color-border-light);border-left:0}.stay-guest-state,.stay-guest-state>div{align-items:center;justify-content:flex-start}.stay-guest-state .btn{justify-content:center}}@media(max-width:560px){.guest-mutation-grid{grid-template-columns:1fr}.guest-mutation-name{grid-column:auto}.guest-mutation-stay{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.guest-mutation-stay .form-group:first-child{grid-column:1 / -1}.guest-date-fields{grid-template-columns:1fr}.guest-date-fields-arrow{display:none}.guest-date-current{grid-template-columns:1fr}.guest-date-current>span{grid-row:auto}}.invoice-detail-modal{width:min(860px,calc(100vw - 32px));max-width:860px;max-height:92vh;overflow:auto}.invoice-detail-title{margin-bottom:4px}.invoice-detail-body{padding:var(--space-5)}.invoice-detail-loading,.invoice-detail-error{min-height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--space-3);padding:var(--space-8);color:var(--color-text-muted);text-align:center}.invoice-detail-loading{color:var(--color-primary)}.invoice-detail-error>div{display:flex;gap:var(--space-2)}.invoice-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:12px;font-size:.68rem;font-weight:600;letter-spacing:.02em}.invoice-status-badge.draft{background:var(--color-bg-tertiary);color:var(--color-text-muted)}.invoice-status-badge.issued{background:var(--color-brand-light);color:var(--color-primary)}.invoice-status-badge.paid{background:var(--color-success-soft);color:var(--color-success)}.invoice-status-badge.partiallypaid{background:var(--color-warning-soft);color:var(--color-warning)}.invoice-status-badge.void,.invoice-status-badge.overdue{background:var(--color-danger-soft);color:var(--color-danger)}.invoice-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-bottom:var(--space-5)}.invoice-detail-block h5{margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase}.invoice-detail-block p{margin:0;color:var(--color-text-primary);font-size:var(--text-sm);line-height:1.5}.payer-info{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);margin-bottom:var(--space-4);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-bg-tertiary);font-size:var(--text-sm)}.invoice-detail-due{margin-left:auto;color:var(--color-text-muted);font-size:var(--text-xs);white-space:nowrap}.invoice-booking-ref{margin-bottom:var(--space-4);color:var(--color-text-muted);font-size:var(--text-xs)}.invoice-items-scroll{overflow-x:auto}.invoice-items-table{width:100%;min-width:680px;margin-bottom:var(--space-4);border-collapse:collapse;font-size:var(--text-sm)}.invoice-items-table th{padding:var(--space-2) var(--space-3);border-bottom:2px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);text-align:left}.invoice-items-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-light)}.invoice-items-table .text-right{text-align:right}.invoice-sac-code{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs)}.invoice-item-amount{font-family:var(--font-mono);white-space:nowrap}.invoice-item-total{font-weight:600}.invoice-totals{display:flex;align-items:flex-end;flex-direction:column;gap:var(--space-2);padding-top:var(--space-3);margin-top:var(--space-3);border-top:2px solid var(--color-border)}.invoice-total-row{display:flex;gap:var(--space-6);font-size:var(--text-sm)}.invoice-total-row .label{min-width:100px;color:var(--color-text-muted);text-align:right}.invoice-total-row .value{min-width:100px;font-family:var(--font-mono);font-weight:var(--font-semibold);text-align:right}.invoice-total-row.grand{font-size:var(--text-base);font-weight:var(--font-bold)}.invoice-total-row.grand .label,.invoice-total-row.grand .value{color:var(--color-text-primary)}.invoice-paid-row{color:var(--color-success)}.payment-form{display:flex;align-items:flex-end;gap:var(--space-3);padding:var(--space-3);margin-top:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-tertiary)}.payment-form .form-group{flex:1;margin-bottom:0}.payment-form .form-label{font-size:var(--text-xs)}.invoice-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);margin-top:var(--space-4);border-top:1px solid var(--color-border)}.invoice-action-status{display:flex;align-items:center;gap:4px;font-size:var(--text-sm)}.invoice-action-status.is-paid{color:var(--color-success)}.invoice-action-status.is-void{color:var(--color-danger)}@media(max-width:640px){.invoice-detail-modal{width:calc(100vw - 16px);max-height:96vh}.invoice-detail-body{padding:var(--space-3)}.invoice-detail-grid{grid-template-columns:1fr;gap:var(--space-4)}.payer-info,.payment-form,.invoice-actions{align-items:stretch;flex-direction:column}.invoice-detail-due{margin-left:0}.invoice-actions .btn{justify-content:center}}.laundry-kanban{display:flex;gap:var(--space-3);overflow-x:auto;padding-bottom:var(--space-4);min-height:400px}.laundry-column{flex:1;min-width:220px;max-width:280px;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.laundry-column-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-weight:700;font-size:var(--text-sm);border-bottom:2px solid;background:var(--color-surface-2, #f9fafb)}.laundry-column-body{flex:1;padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto}.laundry-empty{text-align:center;color:var(--color-text-muted);font-size:var(--text-xs);padding:var(--space-4)}.laundry-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);transition:box-shadow .15s}.laundry-card:hover{box-shadow:var(--shadow-md)}.laundry-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.laundry-order-num{font-weight:700;font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-primary)}.laundry-card-guest{font-size:var(--text-sm);font-weight:500;display:flex;align-items:center;gap:var(--space-2)}.laundry-room{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface-2, #f9fafb);padding:1px 6px;border-radius:var(--radius-sm)}.laundry-card-items{display:flex;flex-wrap:wrap;gap:3px;margin:var(--space-1) 0}.laundry-item-tag{font-size:.6rem;background:var(--color-surface-2, #f0f0f0);padding:1px 6px;border-radius:var(--radius-sm);color:var(--color-text-muted)}.laundry-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--color-border-light, rgba(0, 0, 0, .06))}.laundry-amount{font-weight:700;font-size:var(--text-sm);color:var(--color-text)}.laundry-catalog{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}@media(max-width:768px){.laundry-kanban{flex-direction:column;gap:var(--space-3);min-height:auto;overflow-x:visible}.laundry-column{max-width:100%;min-width:100%}.laundry-column-body{max-height:300px}.laundry-card{padding:var(--space-3)}.laundry-card-header{margin-bottom:var(--space-2)}.laundry-card-guest{font-size:var(--text-sm)}.laundry-catalog{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width:480px){.laundry-column-header{padding:var(--space-2);font-size:var(--text-xs)}.laundry-card{padding:var(--space-2)}.laundry-order-num{font-size:.65rem}}.linen-stock-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.linen-stock-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);transition:box-shadow .2s,transform .15s}.linen-stock-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.linen-stock-card.alert-critical{border-left:4px solid var(--color-danger)}.linen-stock-card.alert-low{border-left:4px solid var(--color-warning)}.linen-stock-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3)}.linen-stock-name{font-weight:700;font-size:var(--text-base);color:var(--color-text)}.linen-stock-sku{font-size:var(--text-xs);color:var(--color-text-muted);font-family:SF Mono,monospace}.linen-bar-container{margin:var(--space-3) 0}.linen-bar{display:flex;height:10px;border-radius:6px;overflow:hidden;background:var(--color-surface-2, #f1f5f9)}.linen-bar-segment{transition:width .4s ease;min-width:2px}.linen-bar-segment.clean{background:#22c55e}.linen-bar-segment.circulation{background:var(--color-primary, #04adef)}.linen-bar-segment.wash{background:#f59e0b}.linen-bar-segment.condemned{background:#ef4444}.linen-bar-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.linen-legend-item{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--color-text-secondary)}.linen-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.linen-legend-count{font-weight:700;color:var(--color-text)}.linen-stock-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.linen-stock-total{font-size:var(--text-xs);color:var(--color-text-muted)}.linen-stock-total strong{color:var(--color-text);font-size:var(--text-sm)}.linen-stock-actions{display:flex;gap:4px}.linen-alerts{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-2);margin-bottom:var(--space-4)}.linen-alert{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:500;white-space:nowrap;flex-shrink:0}.linen-alert.critical{background:#ef444414;color:#dc2626;border:1px solid rgba(239,68,68,.15)}.linen-alert.warning{background:#f59e0b14;color:#d97706;border:1px solid rgba(245,158,11,.15)}.linen-alert.info{background:#3b82f614;color:#2563eb;border:1px solid rgba(59,130,246,.15)}.linen-tx-table{width:100%;border-collapse:collapse}.linen-tx-table th{background:var(--color-surface-2, #f8fafc);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);text-align:left}.linen-tx-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);font-size:var(--text-sm)}.linen-tx-type{padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.linen-tx-type.ISSUE{background:#04adef1a;color:var(--color-primary, #04adef)}.linen-tx-type.RETURN{background:#22c55e1a;color:#16a34a}.linen-tx-type.SEND_TO_WASH{background:#f59e0b1a;color:#d97706}.linen-tx-type.RECEIVE_FROM_WASH{background:#22c55e1a;color:#059669}.linen-tx-type.CONDEMN{background:#ef44441a;color:#dc2626}.linen-tx-type.PURCHASE{background:#8b5cf61a;color:#7c3aed}.linen-tx-type.ADJUST{background:#6b72801a;color:#4b5563}.linen-batch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:var(--space-4)}.linen-batch-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.linen-batch-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface-2, #f8fafc)}.linen-batch-num{font-weight:700;font-size:var(--text-sm);font-family:SF Mono,monospace}.linen-batch-status{padding:2px 10px;border-radius:var(--radius-full, 999px);font-size:11px;font-weight:600}.linen-batch-status.Sent{background:#f59e0b1a;color:#d97706}.linen-batch-status.PartiallyReceived{background:#3b82f61a;color:#2563eb}.linen-batch-status.Received{background:#22c55e1a;color:#16a34a}.linen-batch-status.Closed{background:#6b72801a;color:#6b7280}.linen-batch-body{padding:var(--space-3) var(--space-4)}.linen-batch-meta{display:flex;gap:var(--space-4);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-3)}.linen-batch-meta strong{color:var(--color-text)}.linen-batch-items{display:flex;flex-direction:column;gap:4px}.linen-batch-item{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm);padding:4px 0}.linen-batch-item-name{font-weight:500}.linen-batch-item-counts{display:flex;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.linen-batch-item-counts .sent{color:#d97706}.linen-batch-item-counts .received{color:#16a34a}.linen-batch-item-counts .damaged{color:#dc2626}.linen-batch-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface-2, #f8fafc)}.linen-batch-totals{display:flex;gap:var(--space-3);font-size:var(--text-xs)}.linen-batch-totals .shortfall{color:#dc2626;font-weight:600}.linen-quick-action{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-sm);font-size:11px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s}.linen-quick-action.issue{background:#04adef14;color:var(--color-primary, #04adef);border-color:#04adef26}.linen-quick-action.issue:hover{background:#04adef26}.linen-quick-action.wash{background:#f59e0b14;color:#d97706;border-color:#f59e0b26}.linen-quick-action.wash:hover{background:#f59e0b26}.linen-quick-action.condemn{background:#ef444414;color:#dc2626;border-color:#ef444426}.linen-quick-action.condemn:hover{background:#ef444426}.linen-filters{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center}.linen-filters .select,.linen-filters .input{max-width:200px;font-size:var(--text-sm)}.banquet-events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-3)}.banquet-event-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);cursor:pointer;transition:box-shadow .15s,transform .1s}.banquet-event-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.banquet-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.banquet-event-type{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-primary)}.banquet-event-name{margin:0 0 var(--space-2);font-size:var(--text-base);font-weight:700}.banquet-card-details{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-2)}.banquet-card-details span{display:flex;align-items:center;gap:3px}.banquet-card-contact{font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-2)}.banquet-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-2);border-top:1px solid var(--color-border-light, rgba(0, 0, 0, .06))}.banquet-amount{font-weight:700;font-size:var(--text-sm)}.banquet-halls{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.banquet-timeline{display:flex;flex-direction:column;gap:var(--space-1)}.banquet-timeline-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-2);background:var(--color-surface-2, #f9fafb);border-radius:var(--radius-sm);font-size:var(--text-sm)}.banquet-tl-time{font-weight:700;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-primary);min-width:100px}.banquet-tl-activity{font-weight:500;flex:1}.banquet-tl-loc{font-size:var(--text-xs);color:var(--color-text-muted)}.tasks-page{padding:24px 32px;max-width:1600px;margin:0 auto}.tasks-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:16px;color:var(--color-text-muted)}.spinner{width:40px;height:40px;border:3px solid rgba(99,102,241,.2);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.tasks-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.tasks-header-left{display:flex;align-items:center;gap:12px}.tasks-header-left svg{color:var(--color-primary)}.tasks-header-left h1{font-size:1.35rem;font-weight:700;color:#1e293b;margin:0}.tasks-count{background:#f1f5f9;color:#64748b;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:12px}.btn-new-task{display:flex;align-items:center;gap:6px;padding:9px 18px;background:var(--color-primary);color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-new-task:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-primary-soft)}.tasks-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat-card{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px}.stat-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center}.stat-icon.pending{background:#6b72801a;color:#6b7280}.stat-icon.progress{background:#3b82f61a;color:#3b82f6}.stat-icon.completed{background:#10b9811a;color:#10b981}.stat-icon.breached{background:#ef44441a;color:#ef4444}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:1.4rem;font-weight:700;color:var(--color-text)}.stat-label{font-size:.75rem;color:var(--color-text-muted)}.tasks-filters{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;flex:1;min-width:200px}.search-box svg{color:var(--color-text-muted)}.search-box input{background:none;border:none;color:var(--color-text);outline:none;width:100%;font-size:.875rem}.tasks-filters select{padding:8px 12px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.875rem;cursor:pointer}.view-toggle{display:flex;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.view-toggle button{padding:8px 16px;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s}.view-toggle button.active{background:var(--color-primary-soft);color:var(--color-primary)}.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;min-height:500px}.kanban-column{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.kanban-column-header{display:flex;align-items:center;gap:8px;padding:14px 16px;border-top:3px solid #6b7280;font-weight:600;font-size:.85rem;color:var(--color-text)}.column-count{margin-left:auto;background:var(--color-bg-tertiary);padding:2px 8px;border-radius:10px;font-size:.75rem;color:var(--color-text-muted)}.kanban-column-body{flex:1;padding:8px 12px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;max-height:calc(100vh - 350px)}.kanban-empty{text-align:center;padding:24px;color:var(--color-text-muted);font-size:.85rem}.task-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;transition:all .2s;cursor:pointer}.task-card:hover{border-color:var(--color-primary-soft);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.task-card.sla-breached{border-color:#ef444466;background:#ef44440a}.task-card.sla-warning{border-color:#f59e0b66;background:#f59e0b0a}.task-card-header{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;cursor:pointer}.task-card-priority{width:4px;min-height:24px;border-radius:2px;flex-shrink:0;margin-top:2px}.task-card-info{flex:1;min-width:0}.task-card-info h4{margin:0 0 4px;font-size:.85rem;font-weight:600;color:var(--color-text);line-height:1.3}.task-card-meta{display:flex;flex-wrap:wrap;gap:4px}.meta-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:4px;font-size:.65rem;font-weight:500}.meta-tag.dept{background:var(--color-primary-soft);color:var(--color-primary)}.meta-tag.stage{background:#10b9811a;color:#10b981}.task-card-compact{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 8px}.compact-info{display:inline-flex;align-items:center;gap:4px;font-size:.73rem;color:var(--color-text-muted)}.compact-info.sla{font-weight:600}.compact-info.sla.sla-ok{color:#10b981}.compact-info.sla.sla-warning{color:#f59e0b}.compact-info.sla.sla-breached{color:#ef4444}.task-card-checklist-progress{display:flex;align-items:center;gap:8px;padding:0 14px 8px;font-size:.7rem;color:var(--color-text-muted)}.progress-bar{flex:1;height:4px;background:var(--color-bg-tertiary);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--color-primary);border-radius:2px;transition:width .3s ease}.task-card-action{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px;background:var(--color-primary-soft);border:none;border-top:1px solid var(--color-border);color:var(--color-primary);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s}.task-card-action:hover{background:#6366f11a}.task-card-expanded{padding:12px 14px;border-top:1px solid var(--color-border);animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.task-description{font-size:.8rem;color:var(--color-text-secondary);margin:0 0 10px;line-height:1.5}.task-checklist h5{margin:0 0 8px;font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.checklist-item{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:.8rem;color:var(--color-text);cursor:pointer}.checklist-item.completed span{text-decoration:line-through;color:var(--color-text-muted)}.checklist-item input[type=checkbox]{accent-color:var(--color-primary);width:16px;height:16px}.task-status-controls{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.status-btn{padding:5px 12px;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.72rem;cursor:pointer;transition:all .2s}.status-btn:hover{background:#6366f114;border-color:var(--color-primary-soft)}.tasks-list{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.tasks-list table{width:100%;border-collapse:collapse}.tasks-list th{padding:12px 16px;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border)}.tasks-list td{padding:12px 16px;font-size:.85rem;color:var(--color-text);border-bottom:1px solid var(--color-border)}.tasks-list tr:hover td{background:var(--color-primary-soft)}.sla-breached-row td{background:#ef44440a!important}.selected-row td{background:#6366f114!important}.task-title-cell{display:flex;align-items:center;gap:8px}.task-title-cell strong{font-weight:600}.task-type-badge{padding:2px 6px;background:var(--color-primary-soft);color:var(--color-primary);border-radius:4px;font-size:.65rem;font-weight:500;white-space:nowrap}.priority-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:.75rem;font-weight:600}.sla-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:.73rem;font-weight:600}.sla-badge.sla-ok{color:#10b981;background:#10b9811a}.sla-badge.sla-warning{color:#f59e0b;background:#f59e0b1a}.sla-badge.sla-breached{color:#ef4444;background:#ef44441a}.status-select{padding:4px 8px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);font-size:.8rem;cursor:pointer}.btn-icon{padding:6px;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:6px}.btn-icon:hover{background:var(--color-bg-tertiary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:28px 32px;width:90%;max-width:500px;animation:modalIn .2s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content h2{display:flex;align-items:center;gap:8px;margin:0 0 20px;font-size:1.2rem;color:var(--color-text)}.modal-content h2 svg{color:var(--color-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 14px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.875rem;box-sizing:border-box}.form-group textarea{resize:vertical}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.btn-cancel{padding:10px 20px;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);cursor:pointer;font-weight:500}.btn-primary{padding:10px 24px;background:var(--color-primary);border:none;border-radius:10px;color:#fff;font-weight:600;cursor:pointer;transition:all .15s}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:0 4px 12px var(--color-primary-soft)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}@media(max-width:1200px){.kanban-board,.tasks-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.tasks-page{padding:16px}.kanban-board{grid-template-columns:1fr}.tasks-stats{grid-template-columns:1fr 1fr}.tasks-filters{flex-direction:column}}.td-page{padding:24px 32px;max-width:1200px;margin:0 auto}.td-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:12px;color:#94a3b8}.td-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:20px}.td-btn-back{display:flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.td-btn-back:hover{background:#f1f5f9;color:#1e293b}.td-breadcrumb-sep{color:#cbd5e1}.td-breadcrumb-current{color:#94a3b8;font-size:.85rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:400px}.td-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}@media(max-width:900px){.td-layout{grid-template-columns:1fr}}.td-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px;margin-bottom:16px}.td-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.td-card-header h3{font-size:.9rem;font-weight:600;color:#1e293b;margin:0;display:flex;align-items:center;gap:8px}.td-card-header h3 svg{color:#6366f1}.td-header-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px;margin-bottom:16px}.td-header-top{display:flex;gap:16px;margin-bottom:16px}.td-priority-bar{width:4px;border-radius:4px;flex-shrink:0;min-height:48px}.td-header-content{flex:1}.td-title{font-size:1.35rem;font-weight:700;color:#0f172a;margin:0 0 10px;line-height:1.3}.td-meta-tags{display:flex;flex-wrap:wrap;gap:6px}.td-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:600;white-space:nowrap}.td-type-tag{color:#7c3aed;background:#7c3aed14}.td-dept-tag{color:#0891b2;background:#0891b214}.td-description{padding:14px 16px;background:#f8fafc;border-radius:10px;color:#475569;font-size:.875rem;line-height:1.6;margin-bottom:16px}.td-sla-banner{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;font-size:.82rem;font-weight:600;margin-bottom:16px}.td-sla-banner.ok{background:#10b98114;color:#059669}.td-sla-banner.warning{background:#f59e0b1a;color:#d97706}.td-sla-banner.breached{background:#ef444414;color:#dc2626;animation:slaPulse 2s ease-in-out infinite}@keyframes slaPulse{0%,to{opacity:1}50%{opacity:.75}}.td-sla-deadline{margin-left:auto;font-weight:500;font-size:.75rem;opacity:.8}.td-actions{display:flex;gap:8px;flex-wrap:wrap}.td-action-primary{display:flex;align-items:center;gap:6px;padding:9px 20px;border:none;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.td-action-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.td-action-primary:disabled{opacity:.6;cursor:not-allowed}.td-action-secondary{display:flex;align-items:center;gap:6px;padding:9px 18px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#475569;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.td-action-secondary:hover:not(:disabled){border-color:#f59e0b;color:#d97706;background:#f59e0b0d}.td-action-danger{display:flex;align-items:center;gap:6px;padding:9px 18px;border:1px solid #fecaca;border-radius:10px;background:#ef44440a;color:#dc2626;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.td-action-danger:hover:not(:disabled){background:#ef44441a;border-color:#ef4444}.td-checklist-progress{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;color:#64748b}.td-progress-bar{width:80px;height:6px;background:#e2e8f0;border-radius:6px;overflow:hidden}.td-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#10b981);border-radius:6px;transition:width .3s}.td-checklist{display:flex;flex-direction:column;gap:2px}.td-checklist-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .1s}.td-checklist-item:hover{background:#f8fafc}.td-checkbox{width:20px;height:20px;border:2px solid #cbd5e1;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;margin-top:1px;transition:all .15s}.td-checkbox.checked{background:#6366f1;border-color:#6366f1;color:#fff}.td-checklist-text{display:flex;flex-direction:column;gap:2px;flex:1}.td-checklist-text span:first-child{font-size:.85rem;color:#1e293b;line-height:1.4}.td-checklist-item.completed .td-checklist-text span:first-child{text-decoration:line-through;color:#94a3b8}.td-required-badge{font-size:.65rem;font-weight:600;color:#ef4444;text-transform:uppercase;letter-spacing:.5px}.td-completed-info{font-size:.7rem;color:#94a3b8}.td-notes-input{width:100%;padding:12px 14px;border:1px solid #e2e8f0;border-radius:10px;font-size:.85rem;color:#1e293b;font-family:inherit;resize:vertical;min-height:80px;outline:none;transition:border-color .15s;background:#fff}.td-notes-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f114}.td-save-notes{display:flex;align-items:center;gap:6px;margin-top:10px;padding:7px 16px;border:none;border-radius:8px;background:#6366f1;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s}.td-save-notes:hover:not(:disabled){background:#4f46e5}.td-save-notes:disabled{opacity:.6;cursor:not-allowed}.td-sidebar-title{font-size:.85rem;font-weight:600;color:#1e293b;margin:0 0 14px;display:flex;align-items:center;gap:6px}.td-sidebar-title svg{color:#6366f1}.td-info-grid{display:flex;flex-direction:column;gap:14px}.td-info-item{display:flex;flex-direction:column;gap:3px}.td-info-label{display:flex;align-items:center;gap:5px;font-size:.72rem;font-weight:500;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.td-info-label svg{color:#94a3b8}.td-info-value{font-size:.85rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:6px}.td-info-link{font-size:.85rem;font-weight:600;color:#6366f1;text-decoration:none;display:flex;align-items:center;gap:6px;transition:color .15s}.td-info-link:hover{color:#4f46e5;text-decoration:underline}.td-vip-badge{font-size:.6rem;font-weight:700;padding:1px 6px;border-radius:4px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;text-transform:uppercase;letter-spacing:.5px}.td-room-code{font-size:.72rem;color:#94a3b8;font-weight:400}.td-stage-value{color:#7c3aed}.td-sr-card{border-color:#fed7aa;background:#ffedd54d}.td-sr-link{display:block;text-decoration:none;padding:12px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;transition:all .15s}.td-sr-link:hover{border-color:#6366f1;box-shadow:0 2px 8px #6366f11a}.td-sr-number{font-size:.78rem;font-weight:700;color:#6366f1;font-family:SF Mono,JetBrains Mono,monospace;margin-bottom:4px}.td-sr-subject{font-size:.85rem;font-weight:600;color:#1e293b;margin-bottom:8px}.td-sr-meta{display:flex;align-items:center;gap:8px}.td-sr-status{font-size:.68rem;font-weight:600;padding:2px 8px;border-radius:10px}.td-sr-status.open{color:#3b82f6;background:#3b82f61a}.td-sr-status.inprogress{color:#f59e0b;background:#f59e0b1a}.td-sr-status.resolved{color:#10b981;background:#10b9811a}.td-sr-status.closed{color:#6b7280;background:#6b72801a}.td-timeline{display:flex;flex-direction:column;gap:0;position:relative;padding-left:16px}.td-timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:#e2e8f0;border-radius:2px}.td-timeline-item{display:flex;align-items:flex-start;gap:12px;padding:8px 0;position:relative}.td-timeline-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:3px;position:relative;left:-16px;z-index:1}.td-timeline-dot.created{background:#6b7280}.td-timeline-dot.started{background:#3b82f6}.td-timeline-dot.breached{background:#ef4444}.td-timeline-dot.completed{background:#10b981}.td-timeline-content{display:flex;flex-direction:column;gap:1px;margin-left:-12px}.td-timeline-label{font-size:.8rem;font-weight:600;color:#1e293b}.td-timeline-time{font-size:.72rem;color:#94a3b8}@media(max-width:768px){.td-page{padding:12px}.td-breadcrumb-current{max-width:200px}.td-header-card{padding:16px}.td-title{font-size:1.1rem}.td-card{padding:14px;border-radius:12px}.td-actions{flex-direction:column}.td-action-primary,.td-action-secondary,.td-action-danger{width:100%;justify-content:center;padding:12px 20px;min-height:44px}.td-checklist-item{padding:12px;min-height:48px}.td-checkbox{width:24px;height:24px}.td-checklist-text span:first-child{font-size:.88rem}.td-notes-input{font-size:16px;min-height:100px}.td-save-notes{width:100%;justify-content:center;padding:10px 16px;min-height:44px}.td-info-grid{gap:12px}.td-sr-card{margin-bottom:12px}}@media(max-width:480px){.td-page{padding:8px}.td-breadcrumb{margin-bottom:12px}.td-btn-back{padding:8px 10px;font-size:.8rem}.td-title{font-size:1rem}.td-meta-tags{gap:4px}.td-tag{font-size:.68rem;padding:2px 8px}.td-sla-banner{font-size:.78rem;padding:8px 12px;flex-wrap:wrap}}.mt-page{padding:24px 32px;max-width:1100px;margin:0 auto}.mt-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:12px;color:#94a3b8}.mt-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.mt-header-left{display:flex;align-items:center;gap:12px}.mt-header-left svg{color:#6366f1}.mt-header-left h1{font-size:1.4rem;font-weight:700;color:#0f172a;margin:0}.mt-subtitle{font-size:.82rem;color:#94a3b8;margin:2px 0 0}.mt-subtitle strong{color:#6366f1}.mt-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.mt-summary-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;transition:all .15s}.mt-summary-card svg{color:#94a3b8;flex-shrink:0}.mt-summary-card.alert{border-color:#fecaca;background:#ef444408}.mt-summary-card.alert svg{color:#ef4444}.mt-summary-count{display:block;font-size:1.3rem;font-weight:700;color:#0f172a;line-height:1}.mt-summary-card.alert .mt-summary-count{color:#ef4444}.mt-summary-label{display:block;font-size:.72rem;color:#94a3b8;font-weight:500;margin-top:2px}.mt-filters{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.mt-search-wrap{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;min-width:200px;max-width:340px;transition:border-color .15s}.mt-search-wrap:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f10f}.mt-search-wrap svg{color:#94a3b8;flex-shrink:0}.mt-search-wrap input{border:none;outline:none;font-size:.85rem;color:#1e293b;width:100%;background:transparent}.mt-filter-group{display:flex;align-items:center;gap:8px}.mt-select-wrap{display:flex;align-items:center;gap:6px;padding:7px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;position:relative}.mt-select-wrap svg{color:#94a3b8;flex-shrink:0}.mt-select-wrap select{border:none;outline:none;font-size:.82rem;color:#475569;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:4px}.mt-show-completed{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#64748b;cursor:pointer;padding:7px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;white-space:nowrap}.mt-show-completed input{accent-color:#6366f1}.mt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;gap:10px;color:#94a3b8}.mt-empty h3{font-size:1.1rem;color:#64748b;margin:0}.mt-empty p{font-size:.85rem;margin:0}.mt-empty svg{color:#10b981;margin-bottom:4px}.mt-list{display:flex;flex-direction:column;gap:4px}.mt-section-divider{padding:14px 0 6px;display:flex;align-items:center;gap:12px}.mt-section-divider span{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.mt-section-divider:after{content:"";flex:1;height:1px;background:#e2e8f0}.mt-task-row{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .15s}.mt-task-row:hover{border-color:#c7d2fe;box-shadow:0 2px 8px #6366f10f}.mt-task-row.sla-breached{border-left:3px solid #ef4444}.mt-task-row.sla-warning{border-left:3px solid #f59e0b}.mt-task-row.completed{opacity:.65}.mt-task-main{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer}.mt-task-priority{width:4px;height:36px;border-radius:4px;flex-shrink:0}.mt-task-status-icon{flex-shrink:0}.mt-task-content{flex:1;min-width:0}.mt-task-title-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.mt-task-title{font-size:.9rem;font-weight:600;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-task-row.completed .mt-task-title{text-decoration:line-through;color:#94a3b8}.mt-task-badges{display:flex;gap:4px;flex-shrink:0}.mt-badge{font-size:.65rem;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap;display:inline-flex;align-items:center;gap:3px}.mt-badge.dept{color:#0891b2;background:#0891b214}.mt-badge.stage{color:#7c3aed;background:#7c3aed14}.mt-task-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mt-meta-item{display:flex;align-items:center;gap:4px;font-size:.75rem;color:#94a3b8}.mt-meta-item svg{color:#94a3b8}.mt-sla-breached{color:#ef4444!important;font-weight:600}.mt-sla-breached svg{color:#ef4444!important}.mt-sla-warning{color:#d97706!important;font-weight:600}.mt-sla-warning svg{color:#d97706!important}.mt-sla-ok{color:#059669!important}.mt-task-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.mt-quick-action{display:flex;align-items:center;gap:5px;padding:6px 14px;border:none;border-radius:8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.mt-quick-action:hover{transform:translateY(-1px);box-shadow:0 3px 10px #6366f14d}.mt-open-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;color:#94a3b8;text-decoration:none;transition:all .15s}.mt-open-btn:hover{border-color:#6366f1;color:#6366f1;background:#6366f10a}.mt-task-expanded{padding:0 16px 14px 44px;border-top:1px solid #f1f5f9}.mt-expanded-progress{display:flex;align-items:center;gap:10px;padding:10px 0 8px;font-size:.75rem;color:#64748b;font-weight:500}.mt-progress-bar{flex:1;height:5px;background:#e2e8f0;border-radius:5px;overflow:hidden;max-width:200px}.mt-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#10b981);border-radius:5px;transition:width .3s}.mt-checklist{display:flex;flex-direction:column;gap:2px}.mt-checklist-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:.82rem;color:#1e293b;transition:background .1s}.mt-checklist-item:hover{background:#f8fafc}.mt-checklist-item.done span:first-of-type{text-decoration:line-through;color:#94a3b8}.mt-checklist-item input[type=checkbox]{accent-color:#6366f1;width:16px;height:16px}.mt-required{font-size:.6rem;font-weight:700;color:#ef4444;text-transform:uppercase;letter-spacing:.5px;margin-left:auto}@media(max-width:768px){.mt-page{padding:12px}.mt-header{flex-direction:column;align-items:flex-start;gap:8px}.mt-header-left h1{font-size:1.2rem}.mt-summary{grid-template-columns:repeat(2,1fr);gap:8px}.mt-summary-card{padding:10px 14px}.mt-summary-count{font-size:1.1rem}.mt-filters{flex-direction:column;align-items:stretch}.mt-search-wrap{max-width:none}.mt-filter-group{flex-wrap:wrap}.mt-task-main{padding:14px 12px;min-height:52px}.mt-task-title{font-size:.88rem}.mt-task-badges{display:flex;flex-wrap:wrap;gap:3px}.mt-badge{font-size:.6rem;padding:1px 6px}.mt-quick-action{padding:8px 16px;min-height:40px;font-size:.8rem}.mt-open-btn{width:36px;height:36px}.mt-checklist-item{padding:8px;min-height:40px}.mt-checklist-item input[type=checkbox]{width:20px;height:20px}.mt-task-expanded{padding:0 12px 14px 32px}}@media(max-width:480px){.mt-page{padding:8px}.mt-summary{grid-template-columns:1fr}.mt-task-actions{flex-direction:column;gap:4px;width:100%}.mt-quick-action{width:100%;justify-content:center}.mt-open-btn{width:100%;justify-content:center;height:36px}}.hk-page{padding:24px 32px;max-width:1600px;margin:0 auto}.hk-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:16px;color:var(--color-text-muted)}.hk-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.hk-header-left{display:flex;align-items:center;gap:12px}.hk-header-left svg{color:#10b981}.hk-header-left h1{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0}.hk-header-right{display:flex;align-items:center;gap:10px}.btn-refresh{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.85rem;cursor:pointer;transition:all .2s}.btn-refresh:hover{background:var(--color-bg-card-hover)}.hk-view-toggle{display:flex;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.hk-view-toggle button{display:flex;align-items:center;gap:5px;padding:7px 14px;border:none;background:none;font-size:.8rem;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.hk-view-toggle button.active{background:var(--color-bg-card);color:var(--color-primary);font-weight:600;box-shadow:0 1px 4px #0000000f}.hk-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:20px}.hk-summary-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:all .2s;color:var(--accent)}.hk-summary-card:hover{border-color:var(--accent);transform:translateY(-1px)}.hk-summary-card.active{border-color:var(--accent);background:var(--accent-bg);box-shadow:0 0 20px var(--accent-bg)}.summary-info{display:flex;flex-direction:column}.summary-count{font-size:1.4rem;font-weight:700}.summary-label{font-size:.75rem;opacity:.8}.hk-filters{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.hk-filters .search-box{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;min-width:200px}.hk-filters .search-box svg{color:var(--color-text-muted)}.hk-filters .search-box input{background:none;border:none;color:var(--color-text);outline:none;width:100%;font-size:.875rem}.hk-filters select{padding:8px 12px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.875rem;cursor:pointer}.bulk-actions{display:flex;align-items:center;gap:8px;margin-left:auto;padding:6px 12px;background:#6366f10f;border:1px solid rgba(99,102,241,.2);border-radius:10px}.bulk-count{font-size:.8rem;font-weight:600;color:#6366f1;margin-right:4px}.bulk-btn{padding:4px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:.72rem;font-weight:600;cursor:pointer;background:var(--color-bg-tertiary);transition:all .2s}.bulk-btn.dirty{color:#ef4444;border-color:#ef44444d}.bulk-btn.dirty:hover{background:#ef444414}.bulk-btn.cleaning{color:#f59e0b;border-color:#f59e0b4d}.bulk-btn.cleaning:hover{background:#f59e0b14}.bulk-btn.clean{color:#10b981;border-color:#10b9814d}.bulk-btn.clean:hover{background:#10b98114}.bulk-btn.inspected{color:#6366f1;border-color:#6366f14d}.bulk-btn.inspected:hover{background:#6366f114}.bulk-btn.cancel{color:var(--color-text-muted)}.hk-floor-groups{display:flex;flex-direction:column;gap:16px}.hk-floor-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px}.hk-floor-header{display:flex;align-items:center;gap:10px;width:100%;padding:12px 18px;border:none;background:var(--color-bg-tertiary);cursor:pointer;transition:all .15s;color:var(--color-text);font-size:.9rem}.hk-floor-header:hover{background:var(--color-bg-card-hover)}.floor-title{font-weight:700}.floor-count{font-size:.75rem;color:var(--color-text-muted);margin-left:auto}.floor-dirty-count{font-size:.7rem;font-weight:600;color:#ef4444;background:#ef44441a;padding:2px 8px;border-radius:6px}.floor-clean-count{font-size:.7rem;font-weight:600;color:#10b981;background:#10b9811a;padding:2px 8px;border-radius:6px}.hk-floor-section .hk-grid{padding:16px}.hk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:12px}.hk-room-card{position:relative;padding:14px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:all .2s;border-left:3px solid var(--room-accent, #6b7280);z-index:1}.hk-room-card:has(.assign-dropdown){z-index:60}.hk-room-card:hover{border-color:var(--room-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.hk-room-card.selected{border-color:#6366f1;background:#6366f10d}.hk-room-card.occupied{cursor:not-allowed;opacity:.82;pointer-events:none}.hk-room-card.occupied .room-actions{pointer-events:auto}.hk-room-card.occupied:hover{transform:none;box-shadow:none;border-color:var(--color-border)}.hk-room-card.departure{box-shadow:inset 0 0 0 1px #f59e0b33}.room-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.room-code{font-size:1.1rem;font-weight:700;color:var(--color-text)}.room-hk-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:.65rem;font-weight:600}.room-type{font-size:.73rem;color:var(--color-text-muted);margin-bottom:4px}.hk-priority-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:.62rem;font-weight:700;letter-spacing:.3px;margin-bottom:4px;text-transform:uppercase}.hk-priority-tag.departure{color:#f59e0b;background:#f59e0b1a}.hk-priority-tag.stayover{color:#3b82f6;background:#3b82f61a}.hk-priority-tag.vacant-dirty{color:#ef4444;background:#ef444414}.room-guest{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--color-text);margin-bottom:3px}.room-guest svg{color:#3b82f6}.departure-badge{padding:1px 5px;background:#f59e0b1a;color:#f59e0b;border-radius:4px;font-size:.6rem;font-weight:700;letter-spacing:.5px}.room-assigned{display:flex;align-items:center;gap:4px;font-size:.68rem;color:#8b5cf6;margin-bottom:3px}.hk-timer-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:.68rem;font-weight:600;color:#f59e0b;background:#f59e0b14;margin-bottom:4px;animation:pulse-timer 2s ease-in-out infinite}@keyframes pulse-timer{0%,to{opacity:1}50%{opacity:.7}}.room-actions{margin-top:6px;position:relative}.room-action-row{display:flex;gap:6px}.room-action-row .action-btn{flex:1}.action-btn{display:flex;align-items:center;gap:4px;width:100%;padding:6px 0;background:none;border:1px solid var(--color-border);border-radius:6px;font-size:.72rem;font-weight:600;cursor:pointer;justify-content:center;transition:all .2s}.action-btn.cleaning{color:#f59e0b;border-color:#f59e0b33}.action-btn.cleaning:hover{background:#f59e0b14}.action-btn.clean{color:#10b981;border-color:#10b98133}.action-btn.clean:hover{background:#10b98114}.action-btn.inspected{color:#6366f1;border-color:#6366f133}.action-btn.inspected:hover{background:#6366f114}.action-btn.assign-btn{flex:0 0 32px;padding:6px;color:#8b5cf6;border-color:#8b5cf633}.action-btn.assign-btn:hover{background:#8b5cf614}.action-ready{display:flex;align-items:center;justify-content:center;gap:4px;font-size:.72rem;color:#10b981;font-weight:600;padding:4px 0}.assign-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;box-shadow:var(--shadow-lg, 0 8px 32px rgba(0, 0, 0, .12));z-index:50;max-height:200px;overflow-y:auto;padding:4px;margin-top:4px}.assign-dropdown-title{padding:6px 10px 4px;font-size:.68rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.assign-option{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;border:none;background:none;font-size:.78rem;color:var(--color-text);cursor:pointer;border-radius:6px;transition:background .15s}.assign-option:hover{background:var(--color-bg-tertiary)}.assign-option.active{font-weight:600;color:var(--color-primary)}.assign-option.unassign{color:#ef4444}.selected-overlay{position:absolute;top:8px;right:8px;color:#6366f1}.hk-priority-list{display:flex;flex-direction:column;gap:4px}.hk-priority-row{display:flex;align-items:center;gap:14px;padding:10px 18px;background:var(--color-bg-card);border:1px solid var(--color-border);border-left:3px solid var(--room-accent, #6b7280);border-radius:10px;transition:all .15s}.hk-priority-row:hover{border-color:var(--room-accent);box-shadow:var(--shadow-sm)}.hk-priority-row.departure{background:#f59e0b08}.priority-rank{font-size:.72rem;font-weight:700;color:var(--color-text-muted);min-width:28px}.priority-room-code{font-size:1rem;font-weight:700;color:var(--color-text);min-width:60px}.priority-info{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.priority-room-type{font-size:.78rem;color:var(--color-text-muted)}.priority-guest{display:flex;align-items:center;gap:4px;font-size:.78rem;color:var(--color-text)}.priority-assigned{display:flex;align-items:center;gap:4px;font-size:.75rem;color:#8b5cf6}.priority-actions{flex-shrink:0;min-width:90px;display:flex;justify-content:flex-end}.priority-actions .action-btn{width:auto;padding:5px 12px}.hk-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s}@keyframes fadeIn{0%{opacity:0}}.hk-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;box-shadow:0 20px 60px #00000026;width:460px;max-height:80vh;display:flex;flex-direction:column;animation:slideUp .25s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}}.hk-modal-header{display:flex;align-items:center;gap:10px;padding:18px 24px 14px;border-bottom:1px solid var(--color-border);color:var(--color-primary)}.hk-modal-header h2{flex:1;font-size:1rem;font-weight:600;margin:0;color:var(--color-text)}.hk-modal-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px;border-radius:6px;transition:all .15s}.hk-modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.hk-checklist{padding:16px 24px;overflow-y:auto;flex:1}.hk-checklist-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:all .15s;font-size:.88rem;color:var(--color-text)}.hk-checklist-item:hover{background:var(--color-bg-tertiary)}.hk-checklist-item.checked{color:var(--color-text-muted);text-decoration:line-through}.hk-checklist-item.checked .check-icon{color:#10b981}.hk-checklist-item input[type=checkbox]{width:16px;height:16px;accent-color:#10b981;cursor:pointer}.hk-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-top:1px solid var(--color-border)}.checklist-progress{font-size:.78rem;font-weight:600;color:var(--color-text-muted)}.hk-modal-btns{display:flex;gap:8px}.btn-cancel{padding:8px 16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-tertiary);color:var(--color-text);font-size:.82rem;cursor:pointer;transition:all .15s}.btn-cancel:hover{background:var(--color-bg-card-hover)}.btn-approve{display:flex;align-items:center;gap:6px;padding:8px 18px;border:none;border-radius:8px;background:#10b981;color:#fff;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-approve:hover{background:#059669}.btn-approve:disabled{opacity:.5;cursor:not-allowed}.hk-empty{text-align:center;padding:40px;color:var(--color-text-muted)}.hk-last-refresh{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;color:var(--color-text-muted);padding:2px 8px;background:var(--color-bg-tertiary);border-radius:10px;font-weight:500}.btn-refresh.spinning svg{animation:spin-refresh .6s linear infinite}@keyframes spin-refresh{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hk-mobile-fab{display:none;position:fixed;bottom:20px;right:16px;padding:10px 18px;background:#ef4444;color:#fff;border-radius:24px;font-size:.82rem;font-weight:700;gap:6px;align-items:center;box-shadow:0 4px 20px #ef444466;cursor:pointer;z-index:80;transition:transform .2s;animation:pulse-fab 2s ease infinite}.hk-mobile-fab:hover{transform:scale(1.05)}@keyframes pulse-fab{0%,to{box-shadow:0 4px 20px #ef444466}50%{box-shadow:0 4px 30px #ef444499}}@media(max-width:768px){.hk-mobile-fab{display:flex}}@media(max-width:1200px){.hk-summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.hk-page{padding:12px}.hk-header{flex-direction:column;gap:12px;align-items:stretch;margin-bottom:14px}.hk-header-left h1{font-size:1.2rem}.hk-header-right{justify-content:space-between;width:100%}.hk-view-toggle button{padding:6px 10px;font-size:.72rem}.btn-refresh{padding:6px 12px;font-size:.78rem}.hk-summary{grid-template-columns:repeat(5,1fr);gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;scroll-snap-type:x mandatory}.hk-summary-card{padding:10px 12px;min-width:100px;scroll-snap-align:start;flex-shrink:0}.hk-summary-card svg{width:16px;height:16px}.summary-count{font-size:1.1rem}.summary-label{font-size:.65rem}.hk-filters{gap:8px;margin-bottom:14px}.hk-filters .search-box{flex:1;min-width:140px;padding:6px 10px}.hk-filters select{padding:6px 10px;font-size:.8rem}.bulk-actions{width:100%;flex-wrap:wrap;padding:8px;margin-left:0}.bulk-btn{padding:6px 12px;font-size:.75rem}.hk-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.hk-room-card{padding:12px;border-radius:10px;border-left-width:3px;min-height:120px}.room-code{font-size:1rem}.room-hk-badge{padding:3px 8px;font-size:.6rem}.room-type{font-size:.68rem}.room-guest{font-size:.72rem}.room-assigned{font-size:.65rem}.action-btn{padding:8px 0;font-size:.74rem;min-height:36px}.action-btn.assign-btn{flex:0 0 36px;min-height:36px}.action-ready{font-size:.74rem;padding:6px 0}.hk-floor-header{padding:10px 14px;font-size:.82rem}.hk-floor-section .hk-grid{padding:10px}.floor-count{font-size:.68rem}.floor-dirty-count,.floor-clean-count{font-size:.65rem;padding:2px 6px}.hk-priority-row{flex-wrap:wrap;gap:6px;padding:10px 14px;border-radius:8px}.priority-rank{font-size:.68rem;min-width:24px}.priority-room-code{font-size:.9rem;min-width:48px}.priority-info{flex-wrap:wrap;gap:6px;width:100%;margin-top:4px}.priority-actions{width:100%;justify-content:stretch;margin-top:6px}.priority-actions .action-btn{width:100%;padding:8px 12px}.assign-dropdown{max-height:240px;border-radius:8px}.assign-option{padding:10px 12px;font-size:.82rem}.hk-modal{width:95vw;max-height:90vh;border-radius:12px}.hk-modal-header{padding:14px 18px 10px}.hk-modal-header h2{font-size:.92rem}.hk-checklist{padding:12px 18px}.hk-checklist-item{padding:12px 10px;font-size:.84rem}.hk-checklist-item input[type=checkbox]{width:20px;height:20px}.hk-modal-footer{padding:12px 18px;flex-direction:column;gap:10px}.hk-modal-btns{width:100%;display:flex;gap:8px}.hk-modal-btns button{flex:1}.btn-cancel,.btn-approve{padding:10px 14px;font-size:.84rem}}@media(max-width:480px){.hk-page{padding:8px}.hk-header-left h1{font-size:1.05rem}.hk-summary{display:flex;gap:6px;flex-wrap:nowrap}.hk-summary-card{padding:8px 10px;min-width:88px;gap:8px}.summary-count{font-size:1rem}.hk-grid{grid-template-columns:1fr}.hk-room-card{padding:14px 12px;min-height:auto}.room-card-top{margin-bottom:4px}.hk-priority-row{padding:12px}.priority-room-code{font-size:1rem}.hk-modal-overlay{align-items:flex-end}.hk-modal{width:100vw;max-height:85vh;border-radius:16px 16px 0 0;animation:slideUp .3s ease}.hk-checklist-item{padding:14px 10px}}.hk-room-card.dnr-blocked{border-left:3px solid #dc2626!important;background:repeating-linear-gradient(135deg,transparent,transparent 8px,rgba(220,38,38,.025) 8px,rgba(220,38,38,.025) 16px)}.hk-room-card.dnr-blocked:hover{border-color:#dc2626}.hk-priority-row.dnr-blocked{background:repeating-linear-gradient(135deg,transparent,transparent 8px,rgba(220,38,38,.025) 8px,rgba(220,38,38,.025) 16px)}.hk-dnr-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;font-size:.62rem;font-weight:700;color:#dc2626;background:#dc262614;margin-bottom:3px;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.hk-dnr-badge svg{flex-shrink:0}.hk-dnr-reason{overflow:hidden;text-overflow:ellipsis}.hk-dnr-dates{color:#b91c1c;opacity:.75;font-weight:600;flex-shrink:0}.hk-dnr-notes{font-size:.65rem;color:#9ca3af;font-style:italic;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.priority-dnr-notes{font-size:.72rem;color:#9ca3af;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.hk-library{display:flex;flex-direction:column;gap:16px}.hk-lib-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.hk-lib-count{font-size:.85rem;font-weight:600;color:var(--color-text-muted)}.hk-lib-filters{display:flex;gap:6px;flex-wrap:wrap}.hk-lib-cat-btn{padding:6px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-tertiary);color:var(--color-text-muted);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.hk-lib-cat-btn:hover{border-color:var(--color-primary);color:var(--color-text)}.hk-lib-cat-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);font-weight:600}.hk-lib-add-btn{display:flex;align-items:center;gap:6px;padding:8px 18px;border:none;border-radius:8px;background:#10b981;color:#fff;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s}.hk-lib-add-btn:hover{background:#059669;transform:translateY(-1px)}.hk-lib-add-form{background:var(--color-bg-card);border:1px solid var(--color-primary);border-radius:12px;padding:16px 20px;box-shadow:0 0 20px #6366f114}.hk-lib-form-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hk-lib-input{flex:1;min-width:180px;padding:8px 12px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.85rem;outline:none;transition:border-color .15s}.hk-lib-input:focus{border-color:var(--color-primary)}.hk-lib-input-sm{flex:0 0 70px;min-width:70px;text-align:center}.hk-lib-select{padding:8px 12px;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);font-size:.85rem;cursor:pointer;outline:none}.hk-lib-select:focus{border-color:var(--color-primary)}.hk-lib-save-btn{display:flex;align-items:center;gap:4px;padding:8px 14px;border:none;border-radius:8px;background:#10b981;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s}.hk-lib-save-btn:hover{background:#059669}.hk-lib-save-btn:disabled{opacity:.5;cursor:not-allowed}.hk-lib-cancel-btn{display:flex;align-items:center;padding:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:pointer;transition:all .15s}.hk-lib-cancel-btn:hover{background:var(--color-bg-card-hover);color:var(--color-text)}.hk-lib-groups{display:flex;flex-direction:column;gap:16px}.hk-lib-category{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.hk-lib-cat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border)}.hk-lib-cat-title{font-size:.9rem;font-weight:700;color:var(--color-text)}.hk-lib-cat-count{font-size:.75rem;color:var(--color-text-muted)}.hk-lib-items{display:flex;flex-direction:column}.hk-lib-item{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--color-border);transition:background .15s}.hk-lib-item:last-child{border-bottom:none}.hk-lib-item:hover{background:var(--color-bg-tertiary)}.hk-lib-item.inactive{opacity:.5}.hk-lib-item-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.hk-lib-grip{color:var(--color-text-muted);opacity:.4;cursor:grab}.hk-lib-check-icon{color:#10b981;flex-shrink:0}.hk-lib-item-name{font-size:.88rem;color:var(--color-text);font-weight:500}.hk-lib-item-order{font-size:.7rem;color:var(--color-text-muted);background:var(--color-bg-tertiary);padding:2px 6px;border-radius:4px;margin-left:4px}.hk-lib-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.hk-lib-item:hover .hk-lib-item-actions{opacity:1}.hk-lib-icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-muted);cursor:pointer;transition:all .15s}.hk-lib-icon-btn:hover{background:var(--color-bg-tertiary);color:var(--color-text);border-color:var(--color-text-muted)}.hk-lib-icon-btn.danger:hover{color:#ef4444;border-color:#ef44444d;background:#ef44440f}@media(max-width:640px){.hk-lib-toolbar{flex-direction:column;align-items:stretch}.hk-lib-form-row{flex-direction:column}.hk-lib-input,.hk-lib-input-sm{min-width:100%;flex:unset}.hk-lib-item-actions{opacity:1}}.sr-page{padding:24px 32px;max-width:1440px;margin:0 auto}.sr-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.sr-header-left{display:flex;align-items:center;gap:12px}.sr-header-left svg{color:#e11d48}.sr-header-left h1{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0}.sr-count{background:#e11d481a;color:#e11d48;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600}.btn-new-sr{display:flex;align-items:center;gap:6px;padding:10px 20px;background:linear-gradient(135deg,#e11d48,#be123c);color:#fff;border:none;border-radius:10px;font-weight:600;cursor:pointer;font-size:.875rem;transition:all .2s;box-shadow:0 2px 8px #e11d4840}.btn-new-sr:hover{transform:translateY(-1px);box-shadow:0 4px 12px #e11d4859}.sr-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:16px;color:#94a3b8}.sr-pill-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f1f5f9;border-radius:12px;margin-bottom:20px;overflow-x:auto}.sr-pill{display:inline-flex;align-items:center;gap:4px;padding:7px 16px;font-size:.82rem;font-weight:500;border-radius:20px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;white-space:nowrap;transition:all .15s ease}.sr-pill:hover{border-color:#6366f1;color:#6366f1}.sr-pill.active{background:#6366f1;color:#fff;border-color:#6366f1;font-weight:600;box-shadow:0 2px 6px #6366f140}.sr-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.sr-search-box{position:relative;flex:1;min-width:200px}.sr-search-box svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8}.sr-search-box input{width:100%;padding:10px 12px 10px 38px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#1e293b;font-size:.875rem}.sr-search-box input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.sr-filter-select{padding:10px 14px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#1e293b;font-size:.875rem;cursor:pointer;min-width:130px}.sr-filter-select:focus{outline:none;border-color:#6366f1}.sr-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden}.sr-table{width:100%;border-collapse:collapse}.sr-table th{text-align:left;padding:12px 16px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;background:#f8fafc;border-bottom:1px solid #e2e8f0}.sr-table td{padding:14px 16px;font-size:.875rem;color:#1e293b;border-bottom:1px solid #f1f5f9;vertical-align:middle}.sr-table tr:last-child td{border-bottom:none}.sr-table tr{cursor:pointer;transition:background .15s}.sr-table tbody tr:hover{background:#6366f10a}.sr-number{font-family:SF Mono,Fira Code,monospace;font-size:.8rem;color:#6366f1;font-weight:600}.sr-guest-info{display:flex;flex-direction:column;gap:2px}.sr-guest-name{font-weight:600;color:#1e293b}.sr-guest-room{font-size:.75rem;color:#94a3b8}.sr-subject{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.sr-status-badge.open{background:#3b82f61f;color:#2563eb}.sr-status-badge.in-progress{background:#f59e0b1f;color:#d97706}.sr-status-badge.pending-guest{background:#8b5cf61f;color:#7c3aed}.sr-status-badge.resolved{background:#10b9811f;color:#059669}.sr-status-badge.closed{background:#6b72801f;color:#6b7280}.sr-priority-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase}.sr-priority-badge.critical{background:#ef44441f;color:#dc2626}.sr-priority-badge.high{background:#f973161f;color:#ea580c}.sr-priority-badge.medium{background:#3b82f61f;color:#2563eb}.sr-priority-badge.low{background:#6b72801f;color:#6b7280}.sr-category-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-size:.75rem;font-weight:500;background:#6366f114;color:#475569}.sr-time-ago{font-size:.8rem;color:#94a3b8;white-space:nowrap}.sr-sla-indicator{display:flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600}.sr-sla-indicator.ok{color:#10b981}.sr-sla-indicator.warning{color:#f59e0b}.sr-sla-indicator.breached{color:#ef4444}.sr-empty{text-align:center;padding:60px 20px;color:#94a3b8}.sr-empty svg{color:#cbd5e1;margin-bottom:12px}.sr-empty h3{margin:0 0 6px;font-size:1.1rem;color:#475569}.sr-empty p{font-size:.875rem;margin:0}.sr-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.sr-modal{background:#fff;border-radius:16px;width:100%;max-width:640px;max-height:85vh;overflow-y:auto;box-shadow:0 25px 60px #0000004d;animation:srModalIn .2s ease-out}@keyframes srModalIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sr-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid #e2e8f0}.sr-modal-header-left{display:flex;flex-direction:column;gap:8px}.sr-modal-sr-number{font-family:SF Mono,Fira Code,monospace;font-size:.85rem;color:#6366f1;font-weight:600}.sr-modal-header h2{margin:0;font-size:1.2rem;font-weight:700;color:#1e293b}.sr-modal-badges{display:flex;gap:8px;flex-wrap:wrap}.sr-modal-close{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:8px;transition:all .15s}.sr-modal-close:hover{background:#f1f5f9;color:#1e293b}.sr-modal-body{padding:20px 24px}.sr-modal-section{margin-bottom:20px}.sr-modal-section h4{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8;margin:0 0 10px}.sr-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sr-detail-item{display:flex;flex-direction:column;gap:3px}.sr-detail-item.full-width{grid-column:1 / -1}.sr-detail-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8}.sr-detail-value{font-size:.875rem;color:#1e293b;font-weight:500}.sr-description-block{background:#f8fafc;border-radius:10px;padding:14px 16px;font-size:.875rem;color:#475569;line-height:1.5;white-space:pre-wrap}.sr-task-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px}.sr-task-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.sr-task-title{font-weight:600;font-size:.875rem;color:#1e293b}.sr-task-status{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-size:.7rem;font-weight:600}.sr-task-status.pending{background:#6b72801f;color:#6b7280}.sr-task-status.inprogress{background:#3b82f61f;color:#2563eb}.sr-task-status.completed{background:#10b9811f;color:#059669}.sr-task-status.cancelled{background:#ef44441f;color:#dc2626}.sr-task-meta{display:flex;gap:16px;font-size:.8rem;color:#94a3b8}.sr-task-meta span{display:flex;align-items:center;gap:4px}.sr-modal-actions{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sr-action-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#1e293b;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s}.sr-action-btn:hover{border-color:#6366f1;background:#6366f10a}.sr-action-btn.primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:transparent}.sr-action-btn.primary:hover{box-shadow:0 2px 8px #10b9814d}.sr-action-btn.danger{color:#ef4444;border-color:#ef44444d}.sr-action-btn.danger:hover{background:#ef44440f}.sr-rating{display:flex;align-items:center;gap:2px}.sr-rating-star{color:#d1d5db;transition:color .15s}.sr-rating-star.filled{color:#f59e0b}.sr-guest-search-wrapper{position:relative}.sr-guest-search-input{position:relative;display:flex;align-items:center}.sr-guest-search-input svg{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.sr-guest-search-input input{width:100%;padding:10px 14px 10px 38px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#1e293b;font-size:.875rem;outline:none;transition:border-color .15s}.sr-guest-search-input input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.sr-guest-results{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;max-height:220px;overflow-y:auto;z-index:10}.sr-guest-result-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;cursor:pointer;transition:background .1s;border-bottom:1px solid #f1f5f9}.sr-guest-result-item:last-child{border-bottom:none}.sr-guest-result-item:hover{background:#f0f0ff}.sr-guest-result-name{font-size:.875rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:6px}.sr-guest-result-room{font-size:.75rem;color:#64748b;font-weight:500;background:#f1f5f9;padding:2px 8px;border-radius:6px;white-space:nowrap}.sr-guest-result-empty{padding:16px;text-align:center;font-size:.85rem;color:#94a3b8}.sr-vip-tag{font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:4px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;text-transform:uppercase;letter-spacing:.5px}.sr-guest-selected{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f0f0ff;border:1px solid #c7d2fe;border-radius:10px}.sr-guest-selected-info{display:flex;flex-direction:column;gap:2px}.sr-guest-selected-name{font-weight:600;font-size:.9rem;color:#1e293b;display:flex;align-items:center;gap:6px}.sr-guest-selected-room{font-size:.8rem;color:#6366f1;font-weight:500}.sr-guest-clear{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;transition:all .15s}.sr-guest-clear:hover{background:#e2e8f0;color:#1e293b}.sr-common-subjects{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;max-height:140px;overflow-y:auto;padding:2px 0}.sr-common-subject-chip{padding:5px 12px;border:1px solid #e2e8f0;border-radius:20px;background:#f8fafc;color:#475569;font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.sr-common-subject-chip:hover{border-color:#6366f1;background:#f0f0ff;color:#4338ca}.sr-common-subject-chip.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent;box-shadow:0 1px 4px #6366f140}.sr-mobile-cards{display:none}.sr-mobile-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;cursor:pointer;transition:all .15s;border-left:3px solid transparent}.sr-mobile-card:hover{border-color:#c7d2fe;box-shadow:0 2px 8px #6366f114}.sr-mobile-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sr-mobile-card-title{font-weight:600;font-size:.9rem;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:8px}.sr-mobile-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px}.sr-mobile-card-guest{display:flex;align-items:center;gap:4px;font-size:.8rem;color:#475569}.sr-mobile-card-room{font-size:.75rem;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:6px}.sr-mobile-card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px solid #f1f5f9}@media(max-width:768px){.sr-page{padding:12px}.sr-header{flex-direction:column;gap:12px;align-items:stretch;margin-bottom:16px}.sr-header-left h1{font-size:1.2rem}.btn-new-sr{width:100%;justify-content:center;padding:12px 20px}.sr-pill-bar{padding:8px 10px;gap:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sr-pill-bar::-webkit-scrollbar{display:none}.sr-pill{padding:6px 12px;font-size:.78rem}.sr-toolbar{flex-direction:column;gap:8px}.sr-search-box{min-width:100%}.sr-filter-select{width:100%;min-width:100%}.sr-table-wrapper{display:none}.sr-mobile-cards{display:flex;flex-direction:column;gap:8px}.sr-modal-backdrop{padding:0;align-items:flex-end}.sr-modal{max-width:100%;max-height:90vh;border-radius:16px 16px 0 0;animation:srModalSlideUp .25s ease-out}@keyframes srModalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sr-modal-header{padding:18px 16px 14px}.sr-modal-header h2{font-size:1.05rem}.sr-modal-body{padding:16px}.sr-detail-grid{grid-template-columns:1fr}.sr-modal-actions{padding:14px 16px;flex-direction:column}.sr-action-btn{width:100%;justify-content:center;padding:12px 16px;min-height:44px}.sr-guest-search-input input,.sr-filter-select{font-size:16px}.sr-common-subjects{max-height:100px}}@media(max-width:480px){.sr-page{padding:8px}.sr-mobile-card{padding:12px;border-radius:10px}.sr-modal{max-height:92vh}}.rp-page{padding:28px 32px;max-width:1400px;margin:0 auto}.rp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.rp-header-left{display:flex;align-items:center;gap:12px}.rp-header-left svg{color:var(--color-primary);background:#6366f11a;padding:8px;border-radius:10px;width:38px;height:38px}.rp-header h1{font-size:1.35rem;font-weight:700;color:var(--color-text);margin:0}.rp-subtitle{font-size:.82rem;color:var(--color-text-secondary);margin:0}.rp-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.rp-btn-primary:hover{background:var(--color-primary-hover)}.rp-btn-primary:disabled{opacity:.5;cursor:default}.rp-btn-secondary{padding:9px 18px;background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer}.rp-btn-secondary:hover{background:var(--color-bg-card-hover)}.rp-filters{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap}.rp-search-wrap{display:flex;align-items:center;gap:8px;padding:7px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;flex:1;min-width:200px}.rp-search-wrap svg{color:var(--color-text-muted);flex-shrink:0}.rp-search-wrap input{border:none;outline:none;width:100%;font-size:.85rem;background:transparent;color:var(--color-text)}.rp-filters .view-toggle{display:flex;background:var(--color-bg-tertiary, #f1f5f9);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.rp-filters .view-toggle-btn{padding:7px 12px;border:none;background:transparent;font-size:.82rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.rp-filters .view-toggle-btn.active{background:var(--color-primary);color:#fff}.rp-filters .view-toggle-btn:hover:not(.active){background:var(--color-bg-secondary, #e2e8f0)}.rp-dropdown{position:relative}.rp-dropdown-trigger{display:flex;align-items:center;gap:6px;padding:7px 10px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;white-space:nowrap;font-size:.82rem;color:var(--color-text);transition:border-color .15s}.rp-dropdown-trigger:hover,.rp-dropdown.open .rp-dropdown-trigger{border-color:var(--color-primary)}.rp-dropdown-trigger svg:first-child{color:var(--color-text-muted);flex-shrink:0}.rp-dropdown-trigger svg:last-child{color:var(--color-text-muted);flex-shrink:0;margin-left:4px;transition:transform .2s}.rp-dropdown.open .rp-dropdown-trigger svg:last-child{transform:rotate(180deg)}.rp-dropdown-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99}.rp-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #0000001a;padding:4px;z-index:100;animation:rp-dropdown-in .12s ease-out}@keyframes rp-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.rp-dropdown-item{display:block;width:100%;padding:7px 12px;font-size:.82rem;color:var(--color-text);background:none;border:none;border-radius:6px;cursor:pointer;text-align:left;white-space:nowrap;transition:background .1s}.rp-dropdown-item:hover{background:var(--color-bg-tertiary)}.rp-dropdown-item.active{background:#6366f114;color:var(--color-primary);font-weight:600}.rp-loading,.rp-empty{text-align:center;padding:60px 20px;color:var(--color-text-secondary)}.rp-loading p,.rp-empty p{margin:8px 0;font-size:.9rem}.rp-empty h3{font-size:1.1rem;color:var(--color-text);margin:12px 0 4px}.rp-empty svg{color:var(--color-text-muted)}.rp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(370px,1fr));gap:16px}.rp-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:18px 20px;transition:box-shadow .15s,border-color .15s}.rp-card:hover{border-color:var(--color-primary);box-shadow:0 2px 12px #6366f114}.rp-card.inactive{opacity:.55}.rp-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:8px;min-width:0}.rp-card-title-row{display:flex;align-items:center;gap:8px;min-width:0;overflow:visible;position:relative}.rp-card-title-row[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:0;background:var(--color-text, #1e293b);color:#fff;padding:6px 12px;border-radius:6px;font-size:.78rem;font-weight:500;white-space:nowrap;max-width:320px;overflow:hidden;text-overflow:ellipsis;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s;z-index:10;box-shadow:0 4px 12px #00000026}.rp-card-title-row[data-tooltip]:hover:after{opacity:1;transform:translateY(0)}.rp-card h3{font-size:.95rem;font-weight:600;color:var(--color-text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.rp-card-code{font-size:.7rem;font-weight:700;background:#6366f11a;color:var(--color-primary);padding:2px 8px;border-radius:4px;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px;flex-shrink:0}.rp-card-actions{display:flex;gap:2px;flex-shrink:0}.rp-icon-btn{background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:6px;color:var(--color-text-secondary);transition:all .15s}.rp-icon-btn:hover{background:var(--color-bg-tertiary);color:var(--color-primary)}.rp-icon-btn.danger:hover{background:#fef2f2;color:#ef4444}.rp-card-rate{display:flex;align-items:baseline;gap:2px;margin-bottom:14px}.rp-card-currency{font-size:1rem;font-weight:600;color:var(--color-text-secondary)}.rp-card-amount{font-size:1.6rem;font-weight:800;color:var(--color-text);letter-spacing:-.5px}.rp-card-per{font-size:.78rem;color:var(--color-text-muted);margin-left:2px}.rp-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.rp-card-tag{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:500;padding:3px 8px;border-radius:5px;background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.rp-card-tag.room{background:#3b82f614;color:#3b82f6}.rp-card-tag.meal{background:#f59e0b14;color:#d97706}.rp-card-tag.cancel{background:#10b98114;color:#059669}.rp-card-tag.private{background:#ef444414;color:#ef4444}.rp-card-supplements{display:flex;flex-wrap:wrap;gap:10px;font-size:.75rem;color:var(--color-text-secondary);padding-top:8px;border-top:1px solid var(--color-border-hover);margin-top:8px}.rp-card-dow,.rp-card-seasons,.rp-card-los{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:.72rem;color:var(--color-text-secondary);padding-top:8px;border-top:1px solid var(--color-border-hover);margin-top:8px}.rp-card-dow svg,.rp-card-seasons svg,.rp-card-los svg{color:var(--color-text-muted);flex-shrink:0}.rp-dow-chip{background:#6366f10f;padding:2px 7px;border-radius:4px;font-weight:500}.rp-season-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:4px;border:1px solid;font-weight:500;background:#6366f10a}.rp-season-dot-sm{width:6px;height:6px;border-radius:50%;flex-shrink:0}.rp-los-chip{background:#10b9810f;padding:2px 7px;border-radius:4px;font-weight:500;color:#059669}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center}.modal-content{background:var(--color-bg-card);border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:90vh;overflow-y:auto}.rp-modal{width:600px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column}.rp-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.rp-modal-header h2{font-size:1.15rem;font-weight:700;margin:0;color:var(--color-text)}.rp-modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:var(--color-text-secondary)}.rp-modal-close:hover{background:var(--color-bg-tertiary)}.rp-modal-tabs{display:flex;gap:2px;padding:14px 24px 0;border-bottom:1px solid var(--color-border)}.rp-tab{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;font-size:.82rem;font-weight:500;border:none;background:none;cursor:pointer;color:var(--color-text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}.rp-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.rp-tab:hover{color:var(--color-text)}.rp-modal-body{padding:20px 24px;overflow-y:auto;flex:1}.rp-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--color-border)}.rp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rp-field{display:flex;flex-direction:column;gap:4px}.rp-field.full{grid-column:1/-1}.rp-field label{font-size:.78rem;font-weight:600;color:var(--color-text-secondary)}.rp-field input,.rp-field select{padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);background:var(--color-bg);transition:border-color .15s}.rp-field input:focus,.rp-field select:focus{border-color:var(--color-primary);outline:none}.rp-toggle-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.85rem!important;font-weight:500!important;color:var(--color-text)!important;margin-top:18px}.rp-section{margin-bottom:24px}.rp-section h4{display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:600;color:var(--color-text);margin:0 0 4px}.rp-help{font-size:.76rem;color:var(--color-text-muted);margin:0 0 12px}.rp-dow-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.rp-dow-item{display:flex;flex-direction:column;gap:3px}.rp-dow-item label{font-size:.72rem;font-weight:600;color:var(--color-text-secondary);text-align:center}.rp-dow-item input{padding:6px 4px;border:1px solid var(--color-border);border-radius:6px;font-size:.8rem;text-align:center;width:100%;background:var(--color-bg);color:var(--color-text)}.rp-dow-item input:focus{border-color:var(--color-primary);outline:none}.rp-los-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:.82rem;color:var(--color-text-secondary)}.rp-los-row input{width:60px;padding:5px 8px;border:1px solid var(--color-border);border-radius:6px;font-size:.82rem;text-align:center;color:var(--color-text);background:var(--color-bg)}.rp-los-row input:focus{border-color:var(--color-primary);outline:none}.rp-los-remove{background:none;border:none;cursor:pointer;color:#ef4444;padding:2px}.rp-add-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;font-size:.78rem;font-weight:500;border:1px dashed var(--border, #cbd5e1);border-radius:6px;background:none;color:var(--color-text-secondary);cursor:pointer}.rp-add-btn:hover{background:var(--color-bg-card-hover);color:var(--color-primary);border-color:var(--color-primary)}.rp-no-seasons{text-align:center;padding:30px 20px;color:var(--color-text-muted)}.rp-no-seasons svg{margin-bottom:8px}.rp-season-list{display:flex;flex-direction:column;gap:10px}.rp-season-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--color-bg-card-hover);border-radius:8px}.rp-season-info{display:flex;align-items:center;gap:8px}.rp-season-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.rp-season-info strong{font-size:.85rem;color:var(--color-text);display:block}.rp-season-dates{font-size:.72rem;color:var(--color-text-muted)}.rp-season-rate-input{display:flex;align-items:center;gap:4px;font-size:.85rem;color:var(--color-text-secondary)}.rp-season-rate-input input{width:100px;padding:5px 8px;border:1px solid var(--color-border);border-radius:6px;font-size:.85rem;text-align:right;color:var(--color-text);background:var(--color-bg)}.rp-season-rate-input input:focus{border-color:var(--color-primary);outline:none}.rp-season-rate-input input::placeholder{color:var(--color-text-muted);font-style:italic}@media(max-width:768px){.rp-page{padding:16px}.rp-grid,.rp-form-grid{grid-template-columns:1fr}.rp-dow-grid{grid-template-columns:repeat(4,1fr)}.rp-modal{width:95vw}}.rp-page-tabs{display:flex;gap:2px;margin-bottom:24px;border-bottom:2px solid var(--color-border);padding-bottom:0}.rp-page-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;font-size:.88rem;font-weight:500;border:none;background:none;cursor:pointer;color:var(--color-text-secondary);border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s}.rp-page-tab:hover{color:var(--color-text)}.rp-page-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.dp-rules-list{display:flex;flex-direction:column;gap:10px}.dp-rule-card{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;transition:border-color .15s,box-shadow .15s}.dp-rule-card:hover{border-color:var(--color-primary);box-shadow:0 2px 10px #6366f10f}.dp-rule-left{display:flex;flex-direction:column;gap:4px}.dp-rule-type-badge{font-size:.72rem;font-weight:600;padding:2px 8px;background:#6366f114;color:var(--color-primary);border-radius:4px;display:inline-block;width:fit-content}.dp-rule-name{font-size:.95rem;font-weight:600;color:var(--color-text)}.dp-rule-desc{font-size:.8rem;color:var(--color-text-secondary)}.dp-rule-rt{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;color:var(--color-text-muted);margin-top:2px}.dp-rule-right{display:flex;align-items:center;gap:6px}.dp-priority{font-size:.72rem;font-weight:700;padding:2px 8px;background:var(--color-bg-tertiary);border-radius:4px;color:var(--color-text-secondary)}.yield-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:24px}.yield-kpi{display:flex;align-items:center;gap:14px;padding:18px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px}.yield-kpi-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.yield-kpi-info{display:flex;flex-direction:column}.yield-kpi-value{font-size:1.4rem;font-weight:800;color:var(--color-text);letter-spacing:-.5px}.yield-kpi-label{font-size:.78rem;color:var(--color-text-secondary)}.yield-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:20px;margin-bottom:16px}.yield-section h3{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:600;color:var(--color-text);margin:0 0 16px}.yield-heatmap{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:4px}.yield-hm-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 4px;border-radius:8px;min-height:52px;transition:transform .1s}.yield-hm-cell:hover{transform:scale(1.08);z-index:2}.hm-day{font-size:.82rem;font-weight:700;color:var(--color-text)}.hm-pct{font-size:.65rem;font-weight:500;color:var(--color-text-secondary)}.yield-hm-legend{display:flex;gap:16px;margin-top:12px;font-size:.75rem;color:var(--color-text-secondary)}.yield-hm-legend span{display:flex;align-items:center;gap:4px}.hm-dot{width:10px;height:10px;border-radius:3px;display:inline-block}.yield-sources{display:flex;flex-direction:column;gap:12px}.yield-src-row{display:flex;align-items:center;gap:12px}.yield-src-label{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:500;color:var(--color-text);min-width:120px}.yield-src-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.yield-src-bar-wrap{flex:1;height:8px;background:var(--color-bg-tertiary);border-radius:4px;overflow:hidden}.yield-src-bar{height:100%;border-radius:4px;transition:width .4s ease}.yield-src-val{font-size:.78rem;font-weight:600;color:var(--color-text-secondary);min-width:140px;text-align:right}.rpd-page{padding:32px;max-width:1100px;margin:0 auto}.rpd-back{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--color-text-secondary);text-decoration:none;margin-bottom:16px;cursor:pointer;transition:color .15s}.rpd-back:hover{color:var(--color-brand, #04adef)}.rpd-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:28px}.rpd-header h1{font-size:1.5rem;font-weight:700;color:var(--color-text);display:flex;align-items:center;gap:10px}.rpd-header .rpd-code{font-size:.78rem;font-weight:600;background:var(--color-bg-tertiary, #f1f5f9);color:var(--color-text-secondary);padding:3px 10px;border-radius:6px;letter-spacing:.5px}.rpd-header-meta{display:flex;gap:8px;flex-wrap:wrap}.rpd-meta-badge{display:flex;align-items:center;gap:4px;padding:5px 12px;border-radius:8px;font-size:.78rem;font-weight:500;background:var(--color-bg-tertiary, #f1f5f9);color:var(--color-text-secondary)}.rpd-meta-badge.active{background:var(--color-success-soft, #ecfdf5);color:var(--color-success, #10b981)}.rpd-meta-badge.inactive{background:var(--color-danger-soft, #fef2f2);color:var(--color-danger, #ef4444)}.rpd-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border, #e2e8f0);margin-bottom:24px}.rpd-tab{padding:10px 20px;font-size:.84rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;border:none;background:none;position:relative;transition:all .15s}.rpd-tab:hover{color:var(--color-text)}.rpd-tab.active{color:var(--color-brand, #04adef)}.rpd-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--color-brand, #04adef);border-radius:2px 2px 0 0}.rpd-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.rpd-stat-card{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:12px;padding:16px 20px;box-shadow:0 1px 3px #0000000a}.rpd-stat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted, #94a3b8);margin-bottom:6px}.rpd-stat-value{font-size:1.3rem;font-weight:700;color:var(--color-text)}.rpd-section-title{font-size:1rem;font-weight:700;color:var(--color-text);margin-bottom:16px;display:flex;align-items:center;gap:8px}.rpd-tiers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:28px}.rpd-tier-card{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:12px;padding:16px;transition:all .15s;box-shadow:0 1px 3px #0000000a}.rpd-tier-card:hover{border-color:var(--color-brand, #04adef)}.rpd-tier-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.rpd-tier-season{font-weight:600;font-size:.88rem;color:var(--color-text);display:flex;align-items:center;gap:6px}.rpd-tier-dot{width:8px;height:8px;border-radius:50%}.rpd-tier-rate{font-size:1.1rem;font-weight:700;color:var(--color-brand, #04adef)}.rpd-tier-details{display:flex;flex-direction:column;gap:4px}.rpd-tier-detail{display:flex;justify-content:space-between;font-size:.78rem;color:var(--color-text-secondary)}.rpd-tier-detail .val{font-weight:600;color:var(--color-text)}.rpd-tier-dates{font-size:.72rem;color:var(--color-text-muted);margin-top:6px}.rpd-restrictions-table{width:100%;border-collapse:collapse;margin-bottom:24px}.rpd-restrictions-table th{background:var(--color-bg-tertiary, #f1f5f9);padding:8px 14px;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);text-align:left;border-bottom:1px solid var(--color-border, #e2e8f0)}.rpd-restrictions-table td{padding:10px 14px;font-size:.82rem;border-bottom:1px solid var(--color-border, #e2e8f0);color:var(--color-text)}.rpd-restriction-type{font-weight:600;display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:.72rem;text-transform:uppercase;letter-spacing:.3px}.rpd-restriction-type.stopSell{background:#fef2f2;color:#ef4444}.rpd-restriction-type.CTA,.rpd-restriction-type.CTD{background:#fffbeb;color:#f59e0b}.rpd-restriction-type.minLOS,.rpd-restriction-type.maxLOS{background:#e8f7fe;color:#04adef}.rpd-restriction-type.bookingWindow{background:#f0fdf4;color:#22c55e}.rpd-restriction-val{font-weight:600;font-variant-numeric:tabular-nums}.rpd-restriction-dates{font-size:.78rem;color:var(--color-text-secondary)}.rpd-actions-bar{display:flex;gap:8px;justify-content:flex-end;margin-bottom:16px}.rpd-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-overlay, rgba(15, 23, 42, .5));z-index:1000;display:flex;align-items:center;justify-content:center}.rpd-modal{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:16px;padding:28px;width:480px;max-width:90vw;box-shadow:0 20px 60px #00000026;max-height:80vh;overflow-y:auto}.rpd-modal h2{font-size:1.1rem;font-weight:700;color:var(--color-text);margin-bottom:20px}.rpd-form-group{margin-bottom:16px}.rpd-form-group label{display:block;font-size:.78rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.rpd-form-group input,.rpd-form-group select{width:100%;padding:8px 12px;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;font-size:.84rem;background:var(--color-bg-card, #fff);color:var(--color-text);transition:border-color .15s}.rpd-form-group input:focus,.rpd-form-group select:focus{outline:none;border-color:var(--color-brand, #04adef)}.rpd-form-row{display:flex;gap:12px}.rpd-form-row .rpd-form-group{flex:1}.rpd-modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.rpd-btn{padding:8px 18px;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;border:1px solid var(--color-border, #e2e8f0);background:var(--color-bg-card, #fff);color:var(--color-text);display:inline-flex;align-items:center;gap:6px;transition:all .15s}.rpd-btn:hover{border-color:var(--color-brand, #04adef)}.rpd-btn.primary{background:var(--color-brand-gradient, linear-gradient(135deg, #04adef, #0295d6));color:#fff;border:none}.rpd-btn.primary:hover{opacity:.9}.rpd-btn.danger{color:var(--color-danger, #ef4444)}.rpd-btn.danger:hover{background:var(--color-danger-soft, #fef2f2);border-color:var(--color-danger, #ef4444)}.rpd-empty{text-align:center;padding:32px;color:var(--color-text-secondary);font-size:.88rem}.rpd-loading{text-align:center;padding:48px;color:var(--color-text-secondary)}.rpd-dow-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:24px}.rpd-dow-cell{text-align:center;padding:8px 4px;border-radius:8px;background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0)}.rpd-dow-cell .day{font-size:.68rem;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.3px}.rpd-dow-cell .rate{font-size:.88rem;font-weight:700;color:var(--color-text);margin-top:2px}.rpd-dow-cell .rate.override{color:var(--color-brand, #04adef)}.rpd-los-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.rpd-los-badge{padding:6px 14px;background:var(--color-bg-tertiary, #f1f5f9);border-radius:20px;font-size:.78rem;font-weight:600;color:var(--color-text)}.rpd-los-badge .pct{color:var(--color-success, #10b981)}.rs-page{padding:28px 32px;max-width:1200px;margin:0 auto}.rs-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.rs-header-left{display:flex;align-items:center;gap:12px}.rs-header-left>svg{color:#f59e0b;background:#f59e0b1a;padding:8px;border-radius:10px;width:38px;height:38px}.rs-header h1{font-size:1.35rem;font-weight:700;color:var(--text, #1e293b);margin:0}.rs-subtitle{font-size:.82rem;color:var(--text-secondary, #64748b);margin:0}.rs-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;background:var(--primary, #6366f1);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.rs-btn-primary:hover{background:#4f46e5}.rs-btn-primary:disabled{opacity:.5;cursor:default}.rs-btn-secondary{padding:9px 18px;background:transparent;color:var(--text-secondary, #64748b);border:1px solid var(--border, #e2e8f0);border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer}.rs-btn-secondary:hover{background:var(--bg-hover, #f8fafc)}.rs-loading,.rs-empty{text-align:center;padding:60px 20px;color:var(--text-secondary, #64748b)}.rs-loading p,.rs-empty p{margin:8px 0;font-size:.9rem}.rs-empty h3{font-size:1.1rem;color:var(--text, #1e293b);margin:12px 0 4px}.rs-empty svg{color:var(--text-secondary, #94a3b8)}.rs-timeline-card{background:var(--bg-card, #fff);border:1px solid var(--border, #e2e8f0);border-radius:12px;padding:20px 24px;margin-bottom:24px}.rs-timeline-card h3{display:flex;align-items:center;gap:6px;font-size:.9rem;font-weight:600;color:var(--text, #1e293b);margin:0 0 16px}.rs-timeline{position:relative;min-height:80px;padding-top:28px;padding-bottom:12px}.rs-timeline-months{position:absolute;top:0;left:0;right:0;height:20px;font-size:.68rem;font-weight:600;color:var(--text-secondary, #94a3b8)}.rs-timeline-months span{position:absolute;transform:translate(-50%)}.rs-timeline-today{position:absolute;top:20px;bottom:0;width:2px;background:var(--primary, #6366f1);z-index:2}.rs-timeline-today span{position:absolute;top:-18px;left:50%;transform:translate(-50%);font-size:.62rem;font-weight:700;color:var(--primary, #6366f1);background:#6366f11a;padding:1px 6px;border-radius:3px;white-space:nowrap}.rs-timeline-bars{position:relative;display:flex;flex-direction:column;gap:4px}.rs-timeline-bar{position:relative;height:22px;border-radius:4px;opacity:.85;transition:opacity .15s;overflow:hidden}.rs-timeline-bar:hover{opacity:1}.rs-timeline-bar-label{position:absolute;left:6px;top:50%;transform:translateY(-50%);font-size:.68rem;font-weight:600;color:#fff;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.3)}.rs-section{margin-bottom:24px}.rs-section-title{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--text-secondary, #64748b);margin:0 0 10px;text-transform:uppercase;letter-spacing:.5px}.rs-section-title.active{color:#10b981}.rs-section-title.upcoming{color:#3b82f6}.rs-dot-active{width:8px;height:8px;border-radius:50%;background:#10b981;animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.rs-cards{display:flex;flex-direction:column;gap:8px}.rs-card{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card, #fff);border:1px solid var(--border, #e2e8f0);border-radius:10px;padding:14px 18px;transition:border-color .15s,box-shadow .15s}.rs-card:hover{border-color:var(--primary, #6366f1);box-shadow:0 2px 10px #6366f10f}.rs-card.active{border-left:3px solid #10b981}.rs-card.past{opacity:.55}.rs-card-left{display:flex;align-items:center;gap:14px;flex:1}.rs-card-color{width:8px;height:44px;border-radius:4px;flex-shrink:0}.rs-card-info{flex:1}.rs-card-name-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.rs-card-name-row h4{font-size:.92rem;font-weight:600;color:var(--text, #1e293b);margin:0}.rs-badge{font-size:.65rem;font-weight:700;padding:2px 7px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.rs-badge.active{background:#10b9811a;color:#059669}.rs-badge.upcoming{background:#3b82f61a;color:#2563eb}.rs-badge.past{background:var(--bg-hover, #f1f5f9);color:var(--text-secondary, #94a3b8)}.rs-card-dates{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-secondary, #64748b);margin-bottom:4px}.rs-card-dates svg{color:var(--text-secondary, #94a3b8)}.rs-card-days{background:var(--bg-hover, #f1f5f9);padding:1px 6px;border-radius:3px;font-size:.72rem;font-weight:500}.rs-card-rates{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.rs-rate-chip{font-size:.7rem;font-weight:500;padding:2px 7px;border-radius:4px;background:#6366f10f;color:var(--primary, #6366f1)}.rs-rate-more{font-size:.7rem;color:var(--text-secondary, #94a3b8);padding:2px 4px}.rs-priority-badge{display:inline-block;font-size:.68rem;font-weight:600;color:var(--text-secondary, #94a3b8);margin-top:4px}.rs-card-actions{display:flex;gap:2px;flex-shrink:0}.rs-icon-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:6px;color:var(--text-secondary, #64748b);transition:all .15s}.rs-icon-btn:hover{background:var(--bg-hover, #f1f5f9);color:var(--primary, #6366f1)}.rs-icon-btn.danger:hover{background:#fef2f2;color:#ef4444}.rs-modal{width:520px;max-width:95vw}.rs-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.rs-modal-header h2{font-size:1.15rem;font-weight:700;margin:0;color:var(--text, #1e293b)}.rs-modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:var(--text-secondary, #64748b)}.rs-modal-close:hover{background:var(--bg-hover, #f1f5f9)}.rs-modal-body{padding:20px 24px}.rs-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border, #e2e8f0)}.rs-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rs-field{display:flex;flex-direction:column;gap:4px}.rs-field label{font-size:.78rem;font-weight:600;color:var(--text-secondary, #64748b);display:flex;align-items:center;gap:4px}.rs-field input{padding:8px 10px;border:1px solid var(--border, #e2e8f0);border-radius:8px;font-size:.85rem;color:var(--text, #1e293b);background:var(--bg, #fff);transition:border-color .15s}.rs-field input:focus{border-color:var(--primary, #6366f1);outline:none}.rs-field-hint{font-size:.7rem;color:var(--text-secondary, #94a3b8)}.rs-color-picker{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.rs-color-swatch{width:28px;height:28px;border-radius:6px;border:2px solid transparent;cursor:pointer;transition:all .15s}.rs-color-swatch:hover{transform:scale(1.15)}.rs-color-swatch.selected{border-color:var(--text, #1e293b);box-shadow:0 0 0 2px #0000001a;transform:scale(1.1)}.rs-preview{margin-top:20px;padding:14px;background:var(--bg-hover, #f8fafc);border-radius:8px}.rs-preview-bar{height:26px;border-radius:5px;display:flex;align-items:center;padding:0 10px;margin-bottom:8px}.rs-preview-bar span{font-size:.76rem;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.rs-preview-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-secondary, #64748b)}@media(max-width:768px){.rs-page{padding:16px}.rs-form-grid{grid-template-columns:1fr}.rs-modal{width:95vw}.rs-card{flex-direction:column;align-items:flex-start;gap:10px}.rs-card-actions{align-self:flex-end}}.pkg-page{padding:28px 32px;max-width:1400px;margin:0 auto}.pkg-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.pkg-header-left{display:flex;align-items:center;gap:12px}.pkg-header-left>svg{color:var(--color-primary, #04adef);background:var(--color-primary-soft, rgba(4, 173, 239, .08));padding:8px;border-radius:10px;width:38px;height:38px}.pkg-header h1{font-size:1.35rem;font-weight:700;color:var(--text, #1e293b);margin:0}.pkg-subtitle{font-size:.82rem;color:var(--text-secondary, #64748b);margin:0}.pkg-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;background:var(--color-primary, #04adef);color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.pkg-btn-primary:hover{background:var(--color-primary-hover, #039ad6)}.pkg-btn-primary:disabled{opacity:.5;cursor:default}.pkg-btn-secondary{padding:9px 18px;background:transparent;color:var(--text-secondary, #64748b);border:1px solid var(--border, #e2e8f0);border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer}.pkg-btn-secondary:hover{background:var(--bg-hover, #f8fafc)}.pkg-filters{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap}.pkg-search-wrap{display:flex;align-items:center;gap:8px;padding:7px 12px;background:var(--bg-card, #fff);border:1px solid var(--border, #e2e8f0);border-radius:8px;flex:1;min-width:200px}.pkg-search-wrap svg{color:var(--text-secondary, #94a3b8);flex-shrink:0}.pkg-search-wrap input{border:none;outline:none;width:100%;font-size:.85rem;background:transparent;color:var(--text, #1e293b)}.pkg-select-wrap{display:flex;align-items:center;gap:6px;padding:7px 10px;background:var(--bg-card, #fff);border:1px solid var(--border, #e2e8f0);border-radius:8px}.pkg-select-wrap svg{color:var(--text-secondary, #94a3b8)}.pkg-select-wrap select{border:none;outline:none;background:transparent;font-size:.82rem;color:var(--text, #1e293b);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:16px}.pkg-loading,.pkg-empty{text-align:center;padding:60px 20px;color:var(--text-secondary, #64748b)}.pkg-loading p,.pkg-empty p{margin:8px 0;font-size:.9rem}.pkg-empty h3{font-size:1.1rem;color:var(--text, #1e293b);margin:12px 0 4px}.pkg-empty svg{color:var(--text-secondary, #94a3b8)}.pkg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px}.pkg-card{background:var(--bg-card, #fff);border:1px solid var(--border, #e2e8f0);border-radius:12px;padding:18px 20px;transition:box-shadow .15s,border-color .15s}.pkg-card:hover{border-color:var(--color-primary, #04adef);box-shadow:0 2px 12px var(--color-primary-soft, rgba(4, 173, 239, .08))}.pkg-card.inactive{opacity:.55}.pkg-card.expired{border-color:#fecaca}.pkg-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.pkg-card-title-row{display:flex;align-items:center;gap:8px}.pkg-card-code{font-size:.7rem;font-weight:700;background:var(--color-primary-soft, rgba(4, 173, 239, .08));color:var(--color-primary, #04adef);padding:2px 8px;border-radius:4px;letter-spacing:.5px}.pkg-card h3{font-size:.95rem;font-weight:600;color:var(--text, #1e293b);margin:0}.pkg-card-actions{display:flex;gap:2px}.pkg-icon-btn{background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:6px;color:var(--text-secondary, #64748b);transition:all .15s}.pkg-icon-btn:hover{background:var(--bg-hover, #f1f5f9);color:var(--color-primary, #04adef)}.pkg-icon-btn.danger:hover{background:#fef2f2;color:#ef4444}.pkg-card-desc{font-size:.78rem;color:var(--text-secondary, #64748b);margin:0 0 10px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pkg-card-pricing{display:flex;align-items:center;gap:10px;margin-bottom:12px}.pkg-card-price{display:flex;align-items:baseline;gap:2px}.pkg-card-currency{font-size:1rem;font-weight:600;color:var(--text-secondary, #64748b)}.pkg-card-amount{font-size:1.5rem;font-weight:800;color:var(--text, #1e293b);letter-spacing:-.5px}.pkg-card-per{font-size:.78rem;color:var(--text-secondary, #94a3b8);margin-left:2px}.pkg-savings-badge{font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:4px;background:#10b9811a;color:#059669}.pkg-card-rp{display:flex;align-items:center;gap:6px;font-size:.76rem;color:var(--text-secondary, #64748b);padding:6px 10px;background:var(--bg-hover, #f8fafc);border-radius:6px;margin-bottom:10px}.pkg-card-rp strong{color:var(--text, #1e293b)}.pkg-card-services{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}.pkg-svc-chip{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:500;padding:3px 8px;border-radius:5px;background:var(--color-primary-soft, rgba(4, 173, 239, .08));color:var(--color-primary, #04adef)}.pkg-svc-qty{font-size:.65rem;font-weight:700;color:#d97706}.pkg-svc-sched{display:inline-flex;align-items:center;gap:2px;font-size:.65rem;color:var(--text-secondary, #94a3b8);margin-left:2px}.pkg-card-footer{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;border-top:1px solid var(--border, #f1f5f9)}.pkg-card-tag{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;font-weight:500;padding:2px 7px;border-radius:4px;background:var(--bg-hover, #f1f5f9);color:var(--text-secondary, #64748b)}.pkg-card-tag.validity{color:#3b82f6;background:#3b82f60f}.pkg-card-tag.private{color:#ef4444;background:#ef44440f}.pkg-card-tag.expired{color:#ef4444;background:#fef2f2}.pkg-modal{width:660px;max-width:95vw}.pkg-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.pkg-modal-header h2{font-size:1.15rem;font-weight:700;margin:0;color:var(--text, #1e293b)}.pkg-modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:var(--text-secondary, #64748b)}.pkg-modal-close:hover{background:var(--bg-hover, #f1f5f9)}.pkg-modal-tabs{display:flex;gap:2px;padding:14px 24px 0;border-bottom:1px solid var(--border, #e2e8f0)}.pkg-tab{display:inline-flex;align-items:center;gap:5px;padding:8px 14px;font-size:.82rem;font-weight:500;border:none;background:none;cursor:pointer;color:var(--text-secondary, #64748b);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s}.pkg-tab.active{color:var(--color-primary, #04adef);border-bottom-color:var(--color-primary, #04adef)}.pkg-tab:hover{color:var(--text, #1e293b)}.pkg-tab-badge{font-size:.65rem;font-weight:700;background:var(--color-primary, #04adef);color:#fff;padding:1px 5px;border-radius:8px;min-width:16px;text-align:center}.pkg-modal-body{padding:20px 24px;max-height:55vh;overflow-y:auto}.pkg-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border, #e2e8f0)}.pkg-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pkg-field{display:flex;flex-direction:column;gap:4px}.pkg-field.full{grid-column:1/-1}.pkg-field label{font-size:.78rem;font-weight:600;color:var(--text-secondary, #64748b)}.pkg-field input,.pkg-field select,.pkg-field textarea{padding:8px 10px;border:1px solid var(--border, #e2e8f0);border-radius:8px;font-size:.85rem;color:var(--text, #1e293b);background:var(--bg, #fff);transition:border-color .15s;font-family:inherit}.pkg-field input:focus,.pkg-field select:focus,.pkg-field textarea:focus{border-color:var(--color-primary, #04adef);outline:none}.pkg-field textarea{resize:vertical}.pkg-toggle-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.85rem!important;font-weight:500!important;color:var(--text, #1e293b)!important;margin-top:12px}.pkg-help{font-size:.76rem;color:var(--text-secondary, #94a3b8);margin:0 0 14px}.pkg-no-services{text-align:center;padding:24px;color:var(--text-secondary, #94a3b8)}.pkg-no-services svg{margin-bottom:6px}.pkg-service-list{display:flex;flex-direction:column;gap:10px}.pkg-service-card{background:var(--bg-hover, #f8fafc);border:1px solid var(--border, #e2e8f0);border-radius:10px;padding:12px 14px}.pkg-svc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pkg-svc-num{font-size:.72rem;font-weight:700;color:var(--text-secondary, #94a3b8)}.pkg-svc-remove{background:none;border:none;cursor:pointer;padding:2px;color:#ef4444;border-radius:4px}.pkg-svc-remove:hover{background:#fef2f2}.pkg-svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pkg-add-svc-btn{display:inline-flex;align-items:center;gap:5px;padding:8px 16px;font-size:.82rem;font-weight:500;border:1px dashed var(--border, #cbd5e1);border-radius:8px;background:none;color:var(--text-secondary, #64748b);cursor:pointer;margin-top:12px;transition:all .15s}.pkg-add-svc-btn:hover{background:var(--bg-hover, #f8fafc);color:var(--color-primary, #04adef);border-color:var(--color-primary, #04adef)}.pkg-value-summary{margin-top:16px;padding:12px 14px;background:var(--bg-card, #fff);border:1px solid var(--border, #e2e8f0);border-radius:8px}.pkg-value-row{display:flex;justify-content:space-between;font-size:.82rem;color:var(--text-secondary, #64748b);padding:3px 0}.pkg-value-row.savings{color:#059669;font-weight:700;border-top:1px solid var(--border, #e2e8f0);padding-top:6px;margin-top:4px}@media(max-width:768px){.pkg-page{padding:16px}.pkg-grid,.pkg-form-grid,.pkg-svc-grid{grid-template-columns:1fr}.pkg-modal{width:95vw}}.night-audit-page{padding:32px;max-width:1200px;margin:0 auto}.night-audit-page h1{font-size:1.7rem;font-weight:700;color:var(--color-text);margin-bottom:4px;display:flex;align-items:center;gap:10px}.night-audit-page .subtitle{color:var(--color-text-secondary);font-size:.88rem;margin-bottom:28px}.na-run-panel{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:16px;padding:28px 32px;margin-bottom:28px;display:flex;justify-content:space-between;align-items:center;gap:24px}.na-run-info h2{font-size:1.15rem;font-weight:600;color:var(--color-text);margin:0 0 6px}.na-run-info p{color:var(--color-text-secondary);font-size:.85rem;margin:0}.na-run-status{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--color-text-secondary);margin-top:10px}.na-run-status .status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.na-run-status .status-dot.completed{background:#22c55e}.na-run-status .status-dot.pending{background:#f59e0b}.na-run-btn{padding:14px 32px;background:var(--color-brand-gradient, linear-gradient(135deg, #04adef, #0295d6));color:#fff;border:none;border-radius:12px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;white-space:nowrap}.na-run-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #04adef4d}.na-run-btn:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:none;background:var(--color-text-muted, #94a3b8)}.na-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:36px}.na-stat-card{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:20px 22px;box-shadow:0 1px 3px #0000000a;transition:all .2s}.na-stat-card:hover{border-color:var(--color-brand, #04adef);box-shadow:0 2px 8px #0000000f}.na-stat-card .stat-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.6px;color:var(--color-text-secondary);margin-bottom:8px;font-weight:600}.na-stat-card .stat-value{font-size:1.5rem;font-weight:700;color:var(--color-text)}.na-stat-card .stat-value.green{color:var(--color-success, #10b981)}.na-stat-card .stat-value.amber{color:var(--color-warning, #f59e0b)}.na-stat-card .stat-value.red{color:var(--color-danger, #ef4444)}.na-stat-card .stat-value.muted{color:var(--color-text-muted, #94a3b8)}.na-section-divider{border:none;border-top:1px solid var(--color-border, #e2e8f0);margin:0 0 24px}.na-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.na-history-header h2{font-size:1.05rem;font-weight:600;color:var(--color-text);margin:0}.na-history-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.na-history-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-bg-tertiary, #f1f5f9);padding:12px 16px;text-align:left;border-bottom:1px solid var(--color-border, #e2e8f0);font-weight:600}.na-history-table td{padding:14px 16px;font-size:.86rem;color:var(--color-text);border-bottom:1px solid var(--color-border, #e2e8f0)}.na-history-table tr:last-child td{border-bottom:none}.na-history-table tr:hover td{background:var(--color-bg-card-hover, #fafbfc)}.na-status-badge{font-size:.74rem;font-weight:600;padding:4px 10px;border-radius:8px;display:inline-flex;align-items:center;gap:4px}.na-status-badge.completed{background:var(--color-success-soft, #ecfdf5);color:var(--color-success, #10b981)}.na-status-badge.failed{background:var(--color-danger-soft, #fef2f2);color:var(--color-danger, #ef4444)}.na-status-badge.running{background:var(--color-info-soft, #e8f7fe);color:var(--color-info, #04adef)}.na-result-panel{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:16px;padding:28px;margin-bottom:32px;box-shadow:0 1px 3px #0000000a}.na-result-panel h3{font-size:1rem;font-weight:600;margin:0 0 16px;color:var(--color-text);display:flex;align-items:center;gap:8px}.na-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.na-result-item{padding:14px;background:var(--color-bg-tertiary, #f1f5f9);border-radius:10px}.na-result-item .rl{font-size:.72rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.na-result-item .rv{font-size:1.3rem;font-weight:700;color:var(--color-text);margin-top:4px}.na-empty{text-align:center;padding:48px;color:var(--color-text-secondary);font-size:.9rem}.na-error{color:var(--color-danger, #ef4444);font-size:.85rem;margin-bottom:16px;padding:10px 14px;background:var(--color-danger-soft, #fef2f2);border-radius:10px;border:1px solid rgba(239,68,68,.15)}.cancel-pol-page{padding:32px;max-width:1100px;margin:0 auto}.cancel-pol-page h1{font-size:1.7rem;font-weight:700;color:var(--color-text);margin-bottom:4px;display:flex;align-items:center;gap:10px}.cancel-pol-page .subtitle{color:var(--color-text-secondary);font-size:.88rem;margin-bottom:28px}.cp-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.cp-add-btn{padding:10px 20px;background:var(--color-brand-gradient, linear-gradient(135deg, #04adef, #0295d6));color:#fff;border:none;border-radius:10px;font-weight:600;font-size:.85rem;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.cp-add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #04adef4d}.cp-grid{display:flex;flex-direction:column;gap:16px}.cp-card{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:24px;transition:all .2s;box-shadow:0 1px 3px #0000000a}.cp-card:hover{border-color:var(--color-brand, #04adef)}.cp-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.cp-card-title{display:flex;align-items:center;gap:10px}.cp-card-title h3{font-size:1.05rem;font-weight:600;color:var(--color-text);margin:0}.cp-default-badge{font-size:.7rem;padding:2px 8px;border-radius:6px;background:var(--color-primary-soft, rgba(4, 173, 239, .08));color:var(--color-brand, #04adef);font-weight:600;text-transform:uppercase;letter-spacing:.4px}.cp-category-badge{font-size:.7rem;padding:2px 8px;border-radius:6px;background:#fef3c7;color:#92400e;font-weight:600;letter-spacing:.3px}.cp-card-actions{display:flex;gap:6px}.cp-card-actions button{background:none;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;padding:6px 8px;cursor:pointer;color:var(--color-text-secondary);transition:all .15s}.cp-card-actions button:hover{border-color:var(--color-brand, #04adef);color:var(--color-text)}.cp-card-actions button.delete:hover{border-color:var(--color-danger, #ef4444);color:var(--color-danger, #ef4444)}.cp-desc{color:var(--color-text-secondary);font-size:.85rem;margin-bottom:14px}.cp-no-show{font-size:.82rem;color:var(--color-text-secondary);margin-bottom:12px}.cp-no-show strong{color:var(--color-text)}.cp-rules{display:flex;flex-direction:column;gap:6px}.cp-rule{display:flex;align-items:center;gap:8px;font-size:.84rem;color:var(--color-text);padding:8px 12px;background:var(--color-bg-tertiary, #f1f5f9);border-radius:8px}.cp-rule-icon{color:var(--color-warning, #f59e0b);flex-shrink:0}.cp-rule-text span{color:var(--color-text-secondary)}.cp-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-overlay, rgba(15, 23, 42, .3));z-index:1000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cp-modal{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:18px;padding:32px;width:90%;max-width:580px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000026}.cp-modal h2{font-size:1.2rem;font-weight:700;margin:0 0 24px;color:var(--color-text)}.cp-form-group{margin-bottom:16px}.cp-form-group label{display:block;font-size:.82rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.cp-form-group input,.cp-form-group textarea,.cp-form-group select{width:100%;padding:10px 14px;background:var(--color-bg-input, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:10px;font-size:.88rem;color:var(--color-text);outline:none;box-sizing:border-box}.cp-form-group input:focus,.cp-form-group textarea:focus{border-color:var(--color-border-focus, rgba(4, 173, 239, .45));box-shadow:0 0 0 3px var(--color-primary-soft, rgba(4, 173, 239, .08))}label.cp-checkbox{display:inline-flex;align-items:center;gap:10px;font-size:.82rem;font-weight:500;color:var(--color-text-secondary, #64748b);cursor:pointer;text-transform:none;letter-spacing:normal;white-space:nowrap;margin-bottom:0;-webkit-user-select:none;user-select:none;transition:color .2s ease}label.cp-checkbox:hover{color:var(--color-text, #1e293b)}label.cp-checkbox input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:36px;height:20px;padding:0;margin:0;border:none;border-radius:999px;background:var(--color-border, #cbd5e1);box-shadow:inset 0 1px 2px #00000014;cursor:pointer;flex-shrink:0;position:relative;transition:background .2s ease}label.cp-checkbox input[type=checkbox]:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000026;transition:transform .2s ease}label.cp-checkbox input[type=checkbox]:checked{background:var(--color-brand, #04adef)}label.cp-checkbox input[type=checkbox]:checked:before{transform:translate(16px)}.cp-hint{display:block;font-size:.75rem;color:var(--color-text-secondary, #94a3b8);margin-bottom:6px}.cp-btn-group{display:flex;gap:8px}.cp-btn-option{padding:8px 18px;font-size:.85rem;font-weight:500;border:1.5px solid var(--color-border, #e2e8f0);border-radius:8px;background:var(--color-bg-input, #fff);color:var(--color-text-secondary, #64748b);cursor:pointer;transition:all .15s ease}.cp-btn-option:hover{border-color:var(--color-brand, #04adef);color:var(--color-brand, #04adef)}.cp-btn-option.active{background:var(--color-brand, #04adef);border-color:var(--color-brand, #04adef);color:#fff}.cp-rules-builder{margin-bottom:16px}.cp-rules-builder h4{font-size:.88rem;font-weight:600;color:var(--color-text);margin:0 0 10px}.cp-rule-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.cp-rule-row input[type=text]{width:100px}.cp-rule-row select{width:140px}.cp-rule-row input,.cp-rule-row select{padding:8px 10px;background:var(--color-bg-input, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;font-size:.82rem;color:var(--color-text)}.cp-rule-remove{padding:8px 14px;background:#fff;border:1px solid var(--color-danger, #ef4444);border-radius:8px;color:var(--color-danger, #ef4444);cursor:pointer;font-size:.82rem;font-weight:500;white-space:nowrap;transition:all .15s ease}.cp-rule-remove:hover{background:var(--color-danger, #ef4444);color:#fff}.cp-add-rule-btn{padding:6px 14px;background:var(--color-bg-tertiary, #f1f5f9);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;font-size:.82rem;cursor:pointer;color:var(--color-text)}.cp-add-rule-btn:hover{border-color:var(--color-brand, #04adef)}.cp-modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.cp-save-btn{padding:10px 24px;background:var(--color-brand-gradient, linear-gradient(135deg, #04adef, #0295d6));color:#fff;border:none;border-radius:10px;font-weight:600;font-size:.88rem;cursor:pointer}.cp-save-btn:disabled{opacity:.5;cursor:not-allowed}.cp-cancel-btn{padding:10px 24px;background:var(--color-bg-tertiary, #f1f5f9);color:var(--color-text);border:1px solid var(--color-border, #e2e8f0);border-radius:10px;font-size:.88rem;cursor:pointer}.cp-empty{text-align:center;padding:48px;color:var(--color-text-secondary);font-size:.9rem}.cp-btn-option:focus-visible,.cp-add-btn:focus-visible,.cp-save-btn:focus-visible,.cp-cancel-btn:focus-visible,.cp-add-rule-btn:focus-visible{outline:2px solid var(--color-brand, #04adef);outline-offset:2px}.cp-rule-remove:focus-visible{outline:2px solid var(--color-danger, #ef4444);outline-offset:2px}.rc-page{padding:24px 32px;max-width:1600px;margin:0 auto}.rc-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.rc-top-bar h1{font-size:1.5rem;font-weight:700;color:var(--color-text);display:flex;align-items:center;gap:10px;margin:0}.rc-top-actions{display:flex;gap:8px}.rc-nav-bar{display:flex;align-items:center;gap:10px;margin-bottom:16px}.rc-nav-btn{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text);border-radius:8px;padding:7px 10px;cursor:pointer;display:flex;align-items:center;transition:all .15s}.rc-nav-btn:hover{border-color:var(--color-brand, #04adef)}.rc-today-btn{background:var(--color-brand, #04adef);color:#fff;border:none;border-radius:6px;padding:6px 14px;font-size:.78rem;font-weight:600;cursor:pointer;transition:opacity .15s}.rc-today-btn:hover{opacity:.88}.rc-date-range{font-size:.9rem;font-weight:600;color:var(--color-text);min-width:240px;text-align:center}.rc-bulk-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:16px 20px;margin-bottom:16px;animation:rcSlideDown .2s ease}@keyframes rcSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.rc-bulk-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.rc-bulk-row .form-group{flex:1;min-width:120px}.rc-bulk-row .form-label{font-size:.72rem;font-weight:600;color:var(--color-text-muted);margin-bottom:4px;display:block}.rc-bulk-row .input,.rc-bulk-row .select{width:100%;padding:7px 10px;font-size:.82rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text)}.rc-bulk-apply{white-space:nowrap;height:36px}.rc-scroll{overflow-x:auto;border-radius:12px;border:1px solid var(--color-border);background:var(--color-bg-card)}.rc-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:900px}.rc-table thead th{background:var(--color-bg-tertiary, #f8fafc);border-bottom:2px solid var(--color-border);padding:6px 2px;text-align:center;position:sticky;top:0;z-index:3}.rc-label-col{min-width:180px;width:180px;max-width:200px;text-align:left!important;padding-left:14px!important}.rc-sticky{position:sticky;left:0;z-index:4;background:inherit}.rc-day-col{min-width:54px;width:54px}.rc-day-col.weekend{background:#f59e0b0a}.rc-day-col.today{background:#04adef12}.rc-month{font-size:.55rem;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.5px;font-weight:700}.rc-day-name{font-size:.6rem;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.3px}.rc-day-num{font-size:.82rem;font-weight:700;color:var(--color-text);line-height:1.2}.rc-day-col.weekend .rc-day-num{color:#f59e0b}.rc-day-col.today .rc-day-num{color:var(--color-brand, #04adef)}.rc-rt-header{cursor:pointer;background:var(--color-bg-tertiary, #f1f5f9);transition:background .12s}.rc-rt-header:hover{background:#04adef0a}.rc-rt-header td{border-bottom:1px solid var(--color-border)}.rc-rt-name{display:flex;align-items:center;gap:6px;font-size:.82rem;background:var(--color-bg-tertiary, #f1f5f9)!important;padding:8px 14px!important;white-space:nowrap}.rc-rt-header:hover .rc-rt-name{background:#04adef0a!important}.rc-toggle{color:var(--color-text-muted);display:flex}.rc-rt-code{font-size:.65rem;color:var(--color-text-muted);background:var(--color-bg);padding:1px 6px;border-radius:4px;margin-left:4px;font-weight:500}.rc-inv-cell{text-align:center;padding:6px 2px;font-size:.78rem;font-weight:600;border-bottom:1px solid var(--color-border)}.rc-inv-cell.weekend{background:#f59e0b08}.rc-inv-cell.today{background:#04adef0d}.rc-inv-num{font-weight:700}.rc-inv-total{color:var(--color-text-muted);font-weight:400;font-size:.68rem}.rc-rp-row td{border-bottom:1px solid var(--color-border-light, #f1f5f9)}.rc-rp-label{font-size:.72rem;padding:4px 14px 4px 28px!important;background:var(--color-bg-card)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rc-rp-name{font-weight:600;color:var(--color-text);margin-right:6px}.rc-rp-field{color:var(--color-text-muted);font-weight:500;font-size:.65rem;text-transform:uppercase;letter-spacing:.3px}.rc-sub-row .rc-rp-label{padding-left:36px!important}.rc-sub-field{font-size:.62rem;color:var(--color-text-muted)}.rc-rate-cell{text-align:center;padding:4px 2px;font-size:.72rem;cursor:pointer;position:relative;transition:background .1s;background:var(--color-bg-card)}.rc-rate-cell:hover{background:#04adef0f}.rc-rate-cell.today{background:#04adef0a}.rc-rate-cell.override{background:#3b82f60f}.rc-sub-cell{font-size:.66rem}.rc-rate-val{font-family:var(--font-mono, "SF Mono", monospace);font-weight:600;font-size:.72rem;color:var(--color-text);display:block;line-height:1.4}.rc-sub-val{font-size:.66rem;font-weight:500;color:var(--color-text-secondary)}.rc-source-tag{font-size:.5rem;font-weight:600;color:var(--color-text-muted);letter-spacing:.3px;text-transform:uppercase;display:block;line-height:1;margin-top:1px}.rc-edit-input{width:52px;padding:2px 4px;font-size:.72rem;font-family:var(--font-mono, "SF Mono", monospace);font-weight:600;text-align:center;border:2px solid var(--color-brand, #04adef);border-radius:4px;outline:none;background:#fff;color:var(--color-text)}.rc-edit-input:focus{box-shadow:0 0 0 3px #04adef26}.rc-legend{display:flex;gap:18px;margin-top:14px;flex-wrap:wrap;padding-left:4px}.rc-legend-item{display:flex;align-items:center;gap:6px;font-size:.72rem;color:var(--color-text-secondary);font-weight:500}.rc-legend-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.rc-override-dot{background:#3b82f64d;border:2px solid #3b82f6}.rc-empty{text-align:center;padding:48px;color:var(--color-text-secondary);font-size:.9rem}.rc-dyn-row td{border-bottom:2px solid var(--color-border)!important}.rc-dyn-label{color:#6366f1!important;font-weight:600!important}.rc-dyn-cell{padding:2px 1px!important}.rc-dyn-tags{display:flex;flex-direction:column;gap:1px;align-items:center}.rc-dyn-tag{font-size:.5rem;font-weight:700;letter-spacing:.2px;padding:0 3px;border-radius:3px;border:1px solid;white-space:nowrap;line-height:1.3}.refund-page{padding:32px;max-width:1200px;margin:0 auto}.refund-page h1{font-size:1.7rem;font-weight:700;color:var(--color-text);margin-bottom:4px;display:flex;align-items:center;gap:10px}.refund-page .subtitle{color:var(--color-text-secondary);font-size:.88rem;margin-bottom:28px}.ref-filters{display:flex;gap:8px;margin-bottom:20px}.ref-filter-pill{padding:8px 18px;border-radius:20px;border:1px solid var(--color-border, #e2e8f0);background:var(--color-bg-card, #fff);color:var(--color-text-secondary);font-size:.82rem;cursor:pointer;font-weight:500;transition:all .2s}.ref-filter-pill:hover{border-color:var(--color-brand, #04adef)}.ref-filter-pill.active{background:var(--color-brand-gradient, linear-gradient(135deg, #04adef, #0295d6));color:#fff;border-color:transparent}.ref-filter-pill .count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:9px;background:#ffffff40;font-size:.72rem;margin-left:6px;padding:0 5px}.ref-list{display:flex;flex-direction:column;gap:12px}.ref-card{background:var(--color-bg-card, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:20px 24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;transition:all .2s;box-shadow:0 1px 3px #0000000a}.ref-card:hover{border-color:var(--color-brand, #04adef)}.ref-card-left{display:flex;flex-direction:column;gap:6px;flex:1;min-width:200px}.ref-card-guest{font-size:1rem;font-weight:600;color:var(--color-text)}.ref-card-booking{font-size:.82rem;color:var(--color-text-secondary)}.ref-card-reason{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--color-bg-tertiary, #f1f5f9);border-radius:8px;font-size:.78rem;color:var(--color-text);width:fit-content}.ref-card-desc{font-size:.84rem;color:var(--color-text-secondary)}.ref-card-date{font-size:.78rem;color:var(--color-text-muted)}.ref-card-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.ref-card-amount{font-size:1.3rem;font-weight:700;color:var(--color-text)}.ref-status-badge{font-size:.72rem;font-weight:600;padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px}.ref-status-badge.pendingapproval{background:var(--color-warning-soft, #fffbeb);color:var(--color-warning, #f59e0b)}.ref-status-badge.approved{background:var(--color-success-soft, #ecfdf5);color:var(--color-success, #10b981)}.ref-status-badge.rejected{background:var(--color-danger-soft, #fef2f2);color:var(--color-danger, #ef4444)}.ref-status-badge.processed{background:var(--color-info-soft, #e8f7fe);color:var(--color-info, #04adef)}.ref-card-actions{display:flex;gap:6px}.ref-action-btn{padding:6px 14px;border-radius:8px;border:1px solid var(--color-border, #e2e8f0);background:var(--color-bg-card, #fff);font-size:.78rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s}.ref-action-btn.approve{color:var(--color-success, #10b981)}.ref-action-btn.approve:hover{background:var(--color-success-soft, #ecfdf5);border-color:var(--color-success, #10b981)}.ref-action-btn.reject{color:var(--color-danger, #ef4444)}.ref-action-btn.reject:hover{background:var(--color-danger-soft, #fef2f2);border-color:var(--color-danger, #ef4444)}.ref-action-btn.process{color:var(--color-brand, #04adef)}.ref-action-btn.process:hover{background:var(--color-info-soft, #e8f7fe);border-color:var(--color-brand, #04adef)}.ref-empty{text-align:center;padding:48px;color:var(--color-text-secondary);font-size:.9rem}.ref-toast{position:fixed;top:20px;right:20px;padding:12px 20px;border-radius:8px;font-size:.85rem;font-weight:500;z-index:1000;animation:slideIn .3s ease}.ref-toast-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.ref-toast-success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.ref-allocations{width:100%;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-subtle, #e5e7eb)}.ref-alloc-header{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280);margin-bottom:6px}.ref-alloc-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:.8rem;flex-wrap:wrap}.ref-alloc-amount{font-weight:600}.ref-alloc-mode{color:var(--text-secondary, #6b7280);font-size:.75rem}.ref-alloc-status{padding:1px 6px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.ref-alloc-status.completed{background:#dcfce7;color:#16a34a}.ref-alloc-status.failed{background:#fef2f2;color:#dc2626}.ref-alloc-status.pending{background:#fef9c3;color:#ca8a04}.ref-alloc-status.processing{background:#dbeafe;color:#2563eb}.ref-alloc-gw{color:var(--text-secondary, #6b7280);font-size:.72rem}.ref-alloc-error{color:#ef4444;font-size:.72rem;font-style:italic}.ref-action-btn.retry{background:#fef2f2;color:#dc2626;font-size:.72rem;padding:2px 8px}.ref-process-summary{background:var(--bg-subtle, #f9fafb);padding:12px 16px;border-radius:8px;font-size:.85rem;display:flex;flex-direction:column;gap:4px}.ref-bank-details{margin-top:var(--space-4, 16px);border:1px solid var(--border-subtle, #e5e7eb);border-radius:8px;padding:8px 12px}.ref-bank-details summary{cursor:pointer;font-size:.83rem;font-weight:500;color:var(--text-secondary, #6b7280)}.ref-bank-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.ref-status-badge.processing{background:#dbeafe;color:#2563eb}.ref-status-badge.partiallyprocessed{background:#fef3c7;color:#d97706}.ref-status-badge.failed{background:#fef2f2;color:#dc2626}.ref-card-refunded{font-size:.78rem;color:#16a34a;font-weight:500}.ref-card{flex-wrap:wrap}.dp-page{padding:28px 32px;max-width:1400px;margin:0 auto}.dp-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:16px}.dp-header-left{display:flex;align-items:center;gap:12px}.dp-header-left>svg{color:var(--color-primary);background:#6366f11a;padding:8px;border-radius:10px;width:38px;height:38px;flex-shrink:0}.dp-header h1{font-size:1.35rem;font-weight:700;color:var(--color-text);margin:0}.dp-subtitle{font-size:.82rem;color:var(--color-text-secondary);margin:2px 0 0}.dp-header-actions{display:flex;gap:8px;flex-shrink:0}.dp-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:var(--font-family)}.dp-btn-primary{background:var(--color-primary);color:#fff}.dp-btn-primary:hover{background:var(--color-primary-hover)}.dp-btn-primary:disabled{opacity:.5;cursor:default}.dp-btn-secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.dp-btn-secondary:hover{background:var(--color-bg-card-hover);border-color:var(--color-primary);color:var(--color-primary)}.dp-btn-sm{padding:6px 14px;font-size:.82rem}.dp-loading,.dp-empty{text-align:center;padding:60px 20px;color:var(--color-text-secondary)}.dp-loading{display:flex;align-items:center;justify-content:center;gap:10px}.dp-empty h3{font-size:1.1rem;color:var(--color-text);margin:12px 0 4px}.dp-empty p{font-size:.88rem;margin:0 0 16px;max-width:440px;margin-inline:auto}.dp-empty>svg{color:var(--color-text-muted)}.dp-preview-bar{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:16px 20px;margin-bottom:24px;animation:dp-slide-in .2s ease-out}@keyframes dp-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dp-preview-title{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.dp-preview-controls{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.dp-preview-field{display:flex;flex-direction:column;gap:4px}.dp-preview-field label{font-size:.72rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px}.dp-preview-field input,.dp-preview-field select{padding:7px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);background:var(--color-bg);min-width:130px}.dp-preview-field input:focus,.dp-preview-field select:focus{border-color:var(--color-primary);outline:none}.dp-preview-result{margin-top:14px;padding-top:14px;border-top:1px solid var(--color-border)}.dp-preview-rates{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.dp-preview-base,.dp-preview-final{display:flex;flex-direction:column;gap:2px}.dp-preview-label{font-size:.7rem;font-weight:600;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.3px}.dp-preview-base .dp-preview-amount{font-size:1.2rem;font-weight:700;color:var(--color-text-secondary)}.dp-preview-final .dp-preview-amount{font-size:1.4rem;font-weight:800;color:var(--color-text)}.dp-preview-arrow{color:var(--color-text-muted);font-size:1.2rem;margin-top:14px}.dp-preview-diff{font-size:1rem;font-weight:700;margin-top:14px;padding:4px 10px;border-radius:6px;background:#22c55e14}.dp-preview-no-rules{font-size:.82rem;color:var(--color-text-muted);margin-top:8px}.dp-preview-rules-applied{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.dp-preview-rule-chip{display:flex;align-items:center;gap:8px;padding:5px 12px;background:var(--color-bg-tertiary);border-radius:6px;font-size:.78rem}.dp-preview-rule-name{font-weight:500;color:var(--color-text)}.dp-preview-rule-adj{font-weight:700}.dp-rules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.dp-rule-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:18px 20px;transition:box-shadow .15s,border-color .15s;overflow:hidden;display:flex;flex-direction:column}.dp-rule-card:hover{border-color:var(--color-primary);box-shadow:0 2px 12px #6366f114}.dp-rule-card.inactive{opacity:.5}.dp-rule-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.dp-rule-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;flex-shrink:0}.dp-rule-info{flex:1;min-width:0}.dp-rule-info h3{font-size:.95rem;font-weight:600;color:var(--color-text);margin:0}.dp-rule-type-tag{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:4px;display:inline-block;margin-top:4px}.dp-rule-actions{display:flex;gap:2px;flex-shrink:0}.dp-icon-btn{background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:6px;color:var(--color-text-secondary);transition:all .15s}.dp-icon-btn:hover{background:var(--color-bg-tertiary);color:var(--color-primary)}.dp-icon-btn.danger:hover{background:#fef2f2;color:#ef4444}.dp-rule-body{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.dp-rule-condition,.dp-rule-adjustment{display:flex;align-items:center;gap:8px;font-size:.82rem}.dp-rule-condition-label,.dp-rule-adjustment-label{font-weight:500;color:var(--color-text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.3px;min-width:50px;flex-shrink:0}.dp-rule-condition-value{padding:3px 10px;background:var(--color-bg-tertiary);border-radius:6px;font-weight:500;color:var(--color-text);word-break:break-word}.dp-rule-adjustment-value{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-weight:700}.dp-rule-adjustment-value.up{background:#22c55e14;color:#22c55e}.dp-rule-adjustment-value.down{background:#ef444414;color:#ef4444}.dp-rule-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--color-border-hover);font-size:.72rem;color:var(--color-text-muted)}.dp-rule-scope,.dp-rule-priority{display:flex;align-items:center;gap:4px}.dp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center}.dp-modal{background:var(--color-bg-card);border-radius:16px;box-shadow:0 20px 60px #00000026;width:640px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;animation:dp-slide-in .2s ease-out;overflow:hidden}.dp-modal form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.dp-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.dp-modal-header h2{font-size:1.15rem;font-weight:700;margin:0;color:var(--color-text)}.dp-modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:var(--color-text-secondary)}.dp-modal-close:hover{background:var(--color-bg-tertiary)}.dp-modal-body{padding:20px 24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:18px}.dp-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--color-border)}.dp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dp-form-group{display:flex;flex-direction:column;gap:4px}.dp-form-group label{font-size:.78rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.2px}.dp-form-group input,.dp-form-group select{padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);background:var(--color-bg);transition:border-color .15s}.dp-form-group input:focus,.dp-form-group select:focus{border-color:var(--color-primary);outline:none}.dp-form-hint{font-size:.72rem;color:var(--color-text-muted)}.dp-toggle-label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:500;color:var(--color-text);cursor:pointer}.dp-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.dp-type-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;border:1.5px solid var(--color-border);border-radius:10px;background:var(--color-bg);cursor:pointer;transition:all .15s;text-align:left}.dp-type-option:hover{border-color:var(--dp-type-color, var(--color-primary));background:var(--color-bg-card-hover)}.dp-type-option.active{border-color:var(--dp-type-color, var(--color-primary));background:color-mix(in srgb,var(--dp-type-color, var(--color-primary)) 6%,transparent);box-shadow:0 0 0 1px var(--dp-type-color, var(--color-primary))}.dp-type-option strong{font-size:.82rem;color:var(--color-text)}.dp-type-option span{font-size:.72rem;color:var(--color-text-muted);line-height:1.3}.dp-condition-builder{background:var(--color-bg-tertiary);border-radius:10px;padding:14px 16px}.dp-condition-builder>label{display:flex;align-items:center;gap:5px;font-size:.78rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:10px}.dp-condition-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dp-condition-col{display:flex;flex-direction:column;gap:8px}.dp-condition-text{font-size:.82rem;color:var(--color-text-secondary);font-weight:500;white-space:nowrap}.dp-condition-row select{padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:.82rem;color:var(--color-text);background:var(--color-bg-card)}.dp-condition-input-group{display:flex;align-items:center;border:1px solid var(--color-border);border-radius:6px;overflow:hidden;background:var(--color-bg-card)}.dp-condition-input-group input{padding:6px 8px;border:none;outline:none;font-size:.85rem;color:var(--color-text);background:transparent;width:70px;text-align:right}.dp-condition-suffix{padding:6px 8px 6px 0;font-size:.78rem;color:var(--color-text-muted);font-weight:600}.dp-day-picker{display:flex;flex-direction:column;gap:8px}.dp-day-chips{display:flex;gap:6px;flex-wrap:wrap}.dp-day-chip{padding:6px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-full, 999px);font-size:.82rem;font-weight:600;cursor:pointer;background:var(--color-bg-card);color:var(--color-text-secondary);transition:all .15s}.dp-day-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.dp-day-chip.active{background:#6366f11f;border-color:var(--color-primary);color:var(--color-primary)}.dp-adjustment-section{display:flex;flex-direction:column;gap:8px}.dp-adjustment-section>label{font-size:.78rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.2px}.dp-adjustment-row{display:flex;gap:10px;align-items:center}.dp-adjustment-row select{padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);background:var(--color-bg)}.dp-adjustment-hint{display:flex;align-items:center;gap:5px;font-size:.78rem;color:var(--color-text-muted);margin:0}.dp-scope-section{margin-top:0;padding:14px 16px;background:var(--color-bg-tertiary);border-radius:10px}.dp-scope-section>label{display:flex;align-items:center;gap:5px;font-size:.78rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:10px}.dp-optional{font-weight:400;color:var(--color-text-muted, #94a3b8);text-transform:none;letter-spacing:0}.dp-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:20px;font-size:10px;font-weight:600;white-space:nowrap}.dp-badge-channel{background:#06b6d41f;color:#06b6d4}.dp-badge-lead{background:#8b5cf61f;color:#8b5cf6}.dp-badge-date{background:#6366f11a;color:#6366f1}.cp-page{padding:28px 32px;max-width:1400px;margin:0 auto}.cp-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:16px}.cp-header-left{display:flex;align-items:center;gap:12px}.cp-header-left>svg{color:var(--color-primary);background:#6366f11a;padding:8px;border-radius:10px;width:38px;height:38px;flex-shrink:0}.cp-header h1{font-size:1.35rem;font-weight:700;color:var(--color-text);margin:0}.cp-subtitle{font-size:.82rem;color:var(--color-text-secondary);margin:2px 0 0}.cp-header-actions{display:flex;gap:8px;flex-shrink:0}.cp-filters{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.cp-filter-chip{padding:6px 14px;border:1.5px solid var(--color-border);border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer;background:var(--color-bg-card);color:var(--color-text-secondary);transition:all .15s}.cp-filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.cp-filter-chip.active{background:#6366f11f;border-color:var(--color-primary);color:var(--color-primary)}.cp-search{padding:7px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);background:var(--color-bg);min-width:200px;margin-left:auto}.cp-search:focus{border-color:var(--color-primary);outline:none}.cp-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:var(--font-family)}.cp-btn-primary{background:var(--color-primary);color:#fff}.cp-btn-primary:hover{background:var(--color-primary-hover)}.cp-btn-primary:disabled{opacity:.5;cursor:default}.cp-btn-secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.cp-btn-secondary:hover{background:var(--color-bg-card-hover);border-color:var(--color-primary);color:var(--color-primary)}.cp-btn-sm{padding:6px 14px;font-size:.82rem}.cp-btn-danger{background:#ef4444;color:#fff}.cp-btn-danger:hover{background:#dc2626}.cp-loading,.cp-empty{text-align:center;padding:60px 20px;color:var(--color-text-secondary)}.cp-loading{display:flex;align-items:center;justify-content:center;gap:10px}.cp-empty h3{font-size:1.1rem;color:var(--color-text);margin:12px 0 4px}.cp-empty p{font-size:.88rem;margin:0 0 16px;max-width:440px;margin-inline:auto}.cp-empty>svg{color:var(--color-text-muted)}.cp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px}.cp-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:18px 20px;transition:box-shadow .15s,border-color .15s}.cp-card:hover{border-color:var(--color-primary);box-shadow:0 2px 12px #6366f114}.cp-card.inactive{opacity:.5}.cp-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.cp-card-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;flex-shrink:0}.cp-card-info{flex:1;min-width:0}.cp-card-info h3{font-size:.95rem;font-weight:600;color:var(--color-text);margin:0}.cp-card-code{font-family:SF Mono,Fira Code,monospace;font-size:.82rem;font-weight:700;padding:2px 10px;border-radius:6px;background:var(--color-bg-tertiary);color:var(--color-primary);display:inline-block;margin-top:4px;letter-spacing:.5px;cursor:pointer;transition:all .15s}.cp-card-code:hover{background:#6366f126}.cp-card-actions{display:flex;gap:2px;flex-shrink:0}.cp-icon-btn{background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:6px;color:var(--color-text-secondary);transition:all .15s}.cp-icon-btn:hover{background:var(--color-bg-tertiary);color:var(--color-primary)}.cp-icon-btn.danger:hover{background:#fef2f2;color:#ef4444}.cp-card-body{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.cp-card-row{display:flex;align-items:center;gap:8px;font-size:.82rem}.cp-card-label{font-weight:500;color:var(--color-text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.3px;min-width:70px}.cp-card-value{font-weight:500;color:var(--color-text)}.cp-discount-badge{padding:3px 10px;border-radius:6px;font-weight:700;background:#22c55e14;color:#22c55e;display:inline-flex;align-items:center;gap:4px}.cp-tags{display:flex;gap:6px;flex-wrap:wrap}.cp-tag{padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;display:inline-block}.cp-tag-type{color:#6366f1;background:#6366f11a}.cp-tag-visibility{color:#f59e0b;background:#f59e0b1a}.cp-tag-visibility.public{color:#22c55e;background:#22c55e1a}.cp-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--color-border-hover);font-size:.72rem;color:var(--color-text-muted)}.cp-card-stat{display:flex;align-items:center;gap:4px}.cp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center}.cp-modal{background:var(--color-bg-card);border-radius:16px;box-shadow:0 20px 60px #00000026;width:680px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;animation:cp-slide-in .2s ease-out}@keyframes cp-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.cp-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.cp-modal-header h2{font-size:1.15rem;font-weight:700;margin:0;color:var(--color-text)}.cp-modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:var(--color-text-secondary)}.cp-modal-close:hover{background:var(--color-bg-tertiary)}.cp-modal-body{padding:20px 24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.cp-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--color-border)}.cp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cp-form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.cp-form-group{display:flex;flex-direction:column;gap:4px}.cp-form-group label{font-size:.78rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.2px}.cp-form-group input,.cp-form-group select,.cp-form-group textarea{padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);background:var(--color-bg);transition:border-color .15s;font-family:var(--font-family)}.cp-form-group input:focus,.cp-form-group select:focus,.cp-form-group textarea:focus{border-color:var(--color-primary);outline:none}.cp-form-group textarea{resize:vertical;min-height:60px}.cp-form-hint{font-size:.72rem;color:var(--color-text-muted)}.cp-form-section{padding:14px 16px;background:var(--color-bg-tertiary);border-radius:10px;display:flex;flex-direction:column;gap:12px}.cp-form-section-title{font-size:.78rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px}.cp-toggle-label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:500;color:var(--color-text);cursor:pointer}.cp-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--color-text);color:var(--color-bg);padding:10px 20px;border-radius:8px;font-size:.85rem;font-weight:500;z-index:2000;animation:cp-slide-in .2s ease-out}.acc-page{padding:28px 32px;max-width:1400px;margin:0 auto}.acc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.acc-header-left{display:flex;align-items:center;gap:12px}.acc-header-left h1{font-size:1.35rem;font-weight:700;color:#1e293b;margin:0}.acc-header-left svg{color:var(--color-primary)}.acc-count{background:#f1f5f9;color:#64748b;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:12px}.acc-btn-new{display:flex;align-items:center;gap:6px;padding:9px 18px;background:var(--color-primary);color:#fff;border:none;border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.acc-btn-new:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-primary-soft)}.acc-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 0;color:#94a3b8}.acc-pill-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#f1f5f9;border-radius:12px;margin-bottom:20px;overflow-x:auto}.acc-pill{display:inline-flex;align-items:center;gap:4px;padding:7px 16px;font-size:.82rem;font-weight:500;border-radius:20px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;white-space:nowrap;transition:all .15s ease}.acc-pill:hover{border-color:var(--color-primary);color:var(--color-primary)}.acc-pill.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);font-weight:600;box-shadow:0 2px 6px var(--color-primary-soft)}.acc-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:24px}.acc-search-box{flex:1;display:flex;align-items:center;gap:8px;padding:9px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;transition:border-color .15s}.acc-search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.acc-search-box svg{color:#94a3b8;flex-shrink:0}.acc-search-box input{border:none;outline:none;background:transparent;font-size:.85rem;color:#1e293b;width:100%}.acc-filter-select{padding:9px 28px 9px 14px;font-size:.82rem;color:#1e293b;border:1px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;outline:none;transition:border-color .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.acc-filter-select:focus{border-color:var(--color-primary)}.acc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 0;color:#94a3b8}.acc-empty h3{color:#475569;margin:0;font-size:1.1rem}.acc-empty p{margin:0;font-size:.85rem}.acc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.acc-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:14px}.acc-card:hover{border-color:var(--color-primary);box-shadow:0 4px 16px #0000000f;transform:translateY(-2px)}.acc-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.acc-card-title-row{display:flex;align-items:flex-start;gap:10px}.acc-type-emoji{font-size:1.5rem;line-height:1}.acc-type-emoji.lg{font-size:2rem}.acc-card-titles{display:flex;flex-direction:column;gap:2px}.acc-card-name{font-size:.95rem;font-weight:700;color:#1e293b;margin:0;line-height:1.3}.acc-card-code{font-size:.72rem;color:#94a3b8;font-weight:500;font-family:SF Mono,monospace}.acc-status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.acc-status-badge.sm{padding:2px 8px;font-size:.65rem}.acc-status-badge.prospect{background:var(--color-primary-soft);color:var(--color-primary)}.acc-status-badge.active{background:#10b9811a;color:#059669}.acc-status-badge.suspended{background:#f59e0b1a;color:#d97706}.acc-status-badge.inactive{background:#6b72801a;color:#6b7280}.acc-card-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:.78rem;color:#64748b}.acc-card-meta span{display:flex;align-items:center;gap:4px}.acc-card-type{font-weight:600}.acc-credit-section{display:flex;flex-direction:column;gap:6px}.acc-credit-section.modal{margin-top:12px}.acc-credit-header{display:flex;align-items:center;justify-content:space-between}.acc-credit-label{font-size:.72rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.4px}.acc-credit-values{font-size:.78rem;font-weight:600;color:#475569}.acc-credit-bar{width:100%;height:6px;background:#f1f5f9;border-radius:4px;overflow:hidden}.acc-credit-bar.lg{height:8px;border-radius:6px}.acc-credit-fill{height:100%;border-radius:4px;transition:width .4s ease;min-width:2px}.acc-credit-fill.ok{background:linear-gradient(90deg,#10b981,#34d399)}.acc-credit-fill.warning{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.acc-credit-fill.danger{background:linear-gradient(90deg,#ef4444,#f87171)}.acc-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid #f1f5f9}.acc-card-stat{display:flex;align-items:center;gap:4px;font-size:.75rem;color:#94a3b8}.acc-card-terms{font-size:.72rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-soft);padding:2px 8px;border-radius:6px}.acc-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:accFadeIn .15s ease}@keyframes accFadeIn{0%{opacity:0}to{opacity:1}}.acc-modal{background:#fff;border-radius:16px;width:100%;max-width:640px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 48px #00000026;animation:accSlideUp .2s ease}.acc-modal.form{max-width:720px}.acc-modal form{display:flex;flex-direction:column;overflow:hidden;flex:1;min-height:0}@keyframes accSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.acc-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid #f1f5f9}.acc-modal-header-left{display:flex;align-items:flex-start;gap:14px;flex:1}.acc-modal-header h2{font-size:1.15rem;font-weight:700;color:#1e293b;margin:0}.acc-modal-badges{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:wrap}.acc-modal-code{font-size:.72rem;font-weight:600;color:#94a3b8;font-family:SF Mono,monospace;background:#f8fafc;padding:2px 8px;border-radius:6px;border:1px solid #e2e8f0}.acc-type-badge{font-size:.7rem;font-weight:600;color:#475569;background:#f1f5f9;padding:2px 8px;border-radius:6px}.acc-modal-actions-top{display:flex;align-items:center;gap:8px}.acc-modal-edit-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid #e2e8f0;background:#fff;border-radius:8px;font-size:.78rem;font-weight:500;color:#475569;cursor:pointer;transition:all .15s}.acc-modal-edit-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.acc-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#f1f5f9;border-radius:8px;cursor:pointer;color:#64748b;transition:all .15s}.acc-modal-close:hover{background:#e2e8f0;color:#1e293b}.acc-modal-body{padding:20px 24px;overflow-y:auto;flex:1}.acc-modal-section{margin-bottom:20px}.acc-modal-section h4{font-size:.78rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.acc-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.acc-detail-item{display:flex;flex-direction:column;gap:3px}.acc-detail-label{display:flex;align-items:center;gap:4px;font-size:.72rem;font-weight:500;color:#94a3b8}.acc-detail-value{font-size:.85rem;color:#1e293b;font-weight:500}.acc-detail-value.danger{color:#ef4444;font-weight:600}.acc-sub-list{display:flex;flex-direction:column;gap:8px}.acc-sub-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f8fafc;border-radius:8px;border:1px solid #f1f5f9}.acc-sub-name{font-size:.85rem;font-weight:600;color:#1e293b;flex:1}.acc-sub-code{font-size:.72rem;color:#94a3b8;font-family:SF Mono,monospace}.acc-notes-block{padding:12px 14px;background:#f8fafc;border-radius:8px;font-size:.85rem;color:#475569;line-height:1.6;border:1px solid #f1f5f9}.acc-rateplan-list{display:flex;flex-direction:column;gap:8px}.acc-rateplan-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#f8fafc;border-radius:8px;border:1px solid #f1f5f9;transition:border-color .15s}.acc-rateplan-item:hover{border-color:#e2e8f0}.acc-rateplan-info{display:flex;flex-direction:column;gap:2px}.acc-rateplan-name{font-size:.85rem;font-weight:600;color:#1e293b}.acc-rateplan-room{font-size:.72rem;color:#94a3b8}.acc-rateplan-details{display:flex;align-items:center;gap:8px}.acc-rateplan-rate{font-size:.82rem;font-weight:700;color:var(--color-primary)}.acc-rateplan-meal{font-size:.68rem;font-weight:600;background:var(--color-success-soft);color:var(--color-success);padding:2px 8px;border-radius:6px}.acc-contracted-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px;margin-bottom:12px}.acc-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #f1f5f9;background:#fafbfc}.acc-action-btn{display:flex;align-items:center;gap:6px;padding:9px 18px;border:1px solid #e2e8f0;background:#fff;border-radius:10px;font-size:.82rem;font-weight:600;color:#475569;cursor:pointer;transition:all .15s}.acc-action-btn:hover{border-color:#94a3b8}.acc-action-btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.acc-action-btn.primary:hover{background:var(--color-primary-hover)}.acc-action-btn.primary:disabled{opacity:.6;cursor:not-allowed}.acc-action-btn.warning{background:#f59e0b;border-color:#f59e0b;color:#fff}.acc-action-btn.warning:hover{background:#d97706}.acc-action-btn.danger{background:#ef4444;border-color:#ef4444;color:#fff}.acc-action-btn.danger:hover{background:#dc2626}.acc-form-error{background:#ef444414;color:#dc2626;padding:10px 14px;border-radius:8px;margin-bottom:16px;font-size:.85rem;border:1px solid rgba(239,68,68,.15)}.acc-form-section{margin-bottom:20px;padding:16px;background:#fafbfc;border-radius:10px;border:1px solid #f1f5f9}.acc-form-section h4{font-size:.72rem;font-weight:700;color:var(--color-primary, #6366f1);text-transform:uppercase;letter-spacing:.6px;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.acc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.acc-form-field{display:flex;flex-direction:column;gap:5px;min-width:0}.acc-form-field.full{grid-column:1 / -1}.acc-form-field label{font-size:.75rem;font-weight:600;color:#64748b}.acc-form-field input,.acc-form-field select{padding:9px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);outline:none;transition:border-color .15s;background:#fff;width:100%;min-width:0;box-sizing:border-box}.acc-form-field select option{color:#1e293b;background:#fff}.acc-custom-select{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:#1e293b;background:#fff;cursor:pointer;transition:border-color .15s;min-height:20px}.acc-custom-select:hover{border-color:#94a3b8}.acc-custom-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px #0000001f;z-index:1100;max-height:200px;overflow-y:auto}.acc-custom-option{padding:8px 12px;font-size:.85rem;color:#1e293b;cursor:pointer;transition:background .1s}.acc-custom-option:hover{background:#f1f5f9}.acc-custom-option.selected{background:var(--color-primary-soft, #eef2ff);color:var(--color-primary, #6366f1);font-weight:600}.acc-form-field input:focus,.acc-form-field select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.acc-form-textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:.85rem;color:#1e293b;outline:none;transition:border-color .15s;resize:vertical;font-family:inherit;box-sizing:border-box}.acc-form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.spin{animation:spin 1s linear infinite}.pipeline-totals{display:flex;gap:20px;margin-bottom:16px;padding:14px 20px;background:linear-gradient(135deg,#f0f4ff,#faf5ff);border-radius:14px;border:1px solid #e8e0f0}.pipeline-total-item{display:flex;flex-direction:column;gap:2px}.total-label{font-size:.7rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px}.total-value{font-size:1rem;font-weight:700;color:#334155}.pipeline-summary{display:flex;flex-wrap:wrap;gap:6px;padding:4px 2px 16px}.pipeline-stage-chip{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .15s;white-space:nowrap;min-width:56px;flex-shrink:0;position:relative}.pipeline-stage-chip:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #6366f11a}.pipeline-stage-chip.active{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 2px 8px var(--color-primary-soft)}.pipeline-stage-chip.active .stage-label,.pipeline-stage-chip.active .stage-count,.pipeline-stage-chip.active .stage-value,.pipeline-stage-chip.active .stage-chip-order{color:#fff;opacity:.9}.stage-chip-order{font-size:.58rem;font-weight:700;color:#94a3b8;background:#f1f5f9;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.pipeline-stage-chip.active .stage-chip-order{background:#fff3;color:#fff}.stage-label{font-size:.68rem;font-weight:600;color:#64748b;text-align:center}.stage-count{font-size:1.05rem;font-weight:700;color:#1e293b}.stage-value{font-size:.65rem;font-weight:500;color:#94a3b8}.stage-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.stage-badge.sm{padding:2px 8px;font-size:.65rem}.stage-badge.prospect{background:#eef2ff;color:#6366f1}.stage-badge.contact{background:#f0f9ff;color:#0284c7}.stage-badge.qualified{background:#ecfdf5;color:#059669}.stage-badge.proposal{background:#fefce8;color:#ca8a04}.stage-badge.negotiation{background:#fff7ed;color:#ea580c}.stage-badge.verbal{background:#fdf2f8;color:#db2777}.stage-badge.signed{background:#f5f3ff;color:#7c3aed}.stage-badge.activated{background:#ecfdf5;color:#10b981}.stage-badge.live{background:#d1fae5;color:#047857}.stage-badge.lost{background:#fef2f2;color:#dc2626}.stage-badge.dormant{background:#f3f4f6;color:#6b7280}.ageing-badge{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:6px;font-size:.65rem;font-weight:600}.ageing-badge.danger{background:#fef2f2;color:#dc2626}.ageing-badge.warning{background:#fffbeb;color:#d97706}.deals-view-toggle{display:flex;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.deals-view-toggle button{display:flex;align-items:center;gap:4px;padding:8px 14px;border:none;background:#fff;font-size:.78rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s}.deals-view-toggle button+button{border-left:1px solid #e2e8f0}.deals-view-toggle button.active{background:var(--color-primary);color:#fff}.deals-view-toggle button:hover:not(.active){background:#f8fafc}.board-container{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;min-height:400px}.board-column{min-width:180px;max-width:220px;flex:1 0 auto;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden}.board-column-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 4px}.board-column-title{font-size:.78rem;font-weight:700;color:#334155}.board-column-count{font-size:.7rem;font-weight:600;background:#fff;padding:2px 8px;border-radius:10px;color:#64748b;border:1px solid #e2e8f0}.board-column-rev{padding:0 14px 8px;font-size:.68rem;font-weight:600;color:#94a3b8}.board-column-cards{flex:1;padding:6px 8px;display:flex;flex-direction:column;gap:6px;overflow-y:auto}.board-empty{font-size:.75rem;color:#94a3b8;text-align:center;padding:16px 0}.board-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:6px}.board-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0000000f;transform:translateY(-1px)}.board-card-title{font-size:.82rem;font-weight:650;color:#1e293b}.board-card-account{font-size:.68rem;color:#94a3b8;display:flex;align-items:center;gap:4px}.board-card-meta{display:flex;gap:8px;font-size:.72rem;color:#475569;font-weight:500}.board-card-footer{display:flex;align-items:center;justify-content:space-between;gap:4px}.board-card-owner{font-size:.68rem;color:#94a3b8;display:flex;align-items:center;gap:3px}.pipeline-progress{display:flex;align-items:flex-start;gap:0;width:100%;margin-bottom:14px;overflow-x:auto}.progress-step{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;position:relative}.progress-step:after{content:"";position:absolute;top:6px;left:50%;width:100%;height:2px;background:#e2e8f0;z-index:0}.progress-step:last-child:after{display:none}.step-dot{width:13px;height:13px;border-radius:50%;background:#e2e8f0;border:2px solid #fff;box-shadow:0 0 0 1px #e2e8f0;z-index:1;transition:all .2s}.progress-step.done .step-dot{background:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.progress-step.done:after{background:var(--color-primary)}.progress-step.current .step-dot{background:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.step-label{font-size:.6rem;font-weight:500;color:#94a3b8;text-align:center;white-space:nowrap}.progress-step.done .step-label,.progress-step.current .step-label{color:var(--color-primary);font-weight:600}.pipeline-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.acc-action-btn.ghost{background:transparent;border-color:#e2e8f0;color:#64748b}.acc-action-btn.ghost:hover{background:#f8fafc}.downgrade-form{display:flex;align-items:center;gap:8px}.downgrade-form input{padding:7px 12px;border:1px solid #fca5a5;border-radius:8px;font-size:.82rem;outline:none;width:200px}.downgrade-form input:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.acc-modal:not(.form) .acc-modal-footer{flex-direction:column;gap:12px;padding:16px 24px}.ad-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:12px;color:var(--color-text-muted)}.ad-page{padding:20px 32px 60px;max-width:1300px;margin:0 auto}.ad-topbar{margin-bottom:16px}.ad-back-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:6px 10px;border-radius:8px;transition:all .15s}.ad-back-btn:hover{background:var(--color-bg-secondary);color:var(--color-text)}.ad-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.ad-header-left{display:flex;align-items:center;gap:14px}.ad-type-icon{width:44px;height:44px;border-radius:12px;background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ad-header h1{font-size:1.4rem;font-weight:700;margin:0 0 4px}.ad-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ad-code{font-family:var(--font-mono, monospace);font-size:11px;padding:2px 8px;border-radius:6px;background:var(--color-bg-secondary);color:var(--color-text-muted);border:1px solid var(--color-border)}.ad-type-badge{font-size:11px;padding:2px 8px;border-radius:6px;background:var(--color-bg-secondary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.ad-edit-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);cursor:pointer;transition:all .15s}.ad-edit-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.ad-stage-badge{font-size:11px;padding:2px 10px;border-radius:6px;font-weight:600}.ad-stage-badge.sm{font-size:10px;padding:1px 7px}.ad-stage-badge.prospect{background:#ede9fe;color:#7c3aed}.ad-stage-badge.contact{background:#dbeafe;color:#2563eb}.ad-stage-badge.qualified{background:#d1fae5;color:#059669}.ad-stage-badge.proposal{background:#fef3c7;color:#b45309}.ad-stage-badge.negotiation{background:#fce7f3;color:#db2777}.ad-stage-badge.verbal{background:#e0e7ff;color:#4338ca}.ad-stage-badge.signed{background:#ccfbf1;color:#0d9488}.ad-stage-badge.activated{background:#dcfce7;color:#16a34a}.ad-stage-badge.live{background:#d1fae5;color:#047857}.ad-stage-badge.lost{background:#fee2e2;color:#dc2626}.ad-stage-badge.dormant{background:#f3f4f6;color:#6b7280}.ad-pipeline{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:20px 24px;margin-bottom:24px}.ad-pipeline-track{display:flex;align-items:flex-start;justify-content:space-between;gap:4px;position:relative;margin-bottom:16px}.ad-pipeline-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative}.ad-pipeline-step:after{content:"";position:absolute;top:13px;left:50%;width:100%;height:2px;background:var(--color-border);z-index:0}.ad-pipeline-step:last-child:after{display:none}.ad-pipeline-step.done:after{background:var(--color-primary)}.ad-step-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;z-index:1;border:2px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);transition:all .2s}.ad-pipeline-step.done .ad-step-dot{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.ad-pipeline-step.current .ad-step-dot{border-color:var(--color-primary);color:var(--color-primary);box-shadow:0 0 0 3px #04adef26;background:#fff;font-weight:800}.ad-step-label{font-size:10px;font-weight:500;color:var(--color-text-muted);text-align:center;white-space:nowrap}.ad-pipeline-step.current .ad-step-label{color:var(--color-primary);font-weight:700}.ad-pipeline-step.done .ad-step-label{color:var(--color-text)}.ad-stage-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ad-terminal-info{display:flex;align-items:center;gap:10px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 16px;font-size:13px;color:#991b1b;flex:1}.ad-live-badge{font-size:13px;font-weight:600;color:#047857;background:#d1fae5;padding:8px 16px;border-radius:8px}.ad-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:12px;font-weight:600;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);cursor:pointer;transition:all .15s;text-decoration:none}.ad-action-btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.ad-action-btn.primary:hover{opacity:.9}.ad-action-btn.danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.ad-action-btn.danger-outline{border-color:var(--color-danger);color:var(--color-danger);background:transparent}.ad-action-btn.danger-outline:hover{background:#fef2f2}.ad-action-btn.ghost{border-color:transparent;color:var(--color-text-muted)}.ad-action-btn.ghost:hover{background:var(--color-bg-secondary);color:var(--color-text)}.ad-action-btn.warning-outline{border-color:#f59e0b;color:#b45309;background:transparent}.ad-action-btn.warning-outline:hover{background:#fffbeb}.ad-action-btn:disabled{opacity:.5;cursor:not-allowed}.ad-contract-warning{display:flex;align-items:center;gap:10px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px 16px;margin-top:12px;font-size:13px;color:#92400e}.ad-skip-live-form{background:#fffbeb!important;border-color:#fde68a!important;flex-direction:column;align-items:stretch!important}.ad-skip-live-form span{color:#92400e!important;white-space:normal!important}.ad-skip-live-form input{border-color:#fde68a!important}.ad-pending-badge{font-size:12px;font-weight:600;color:#b45309;background:#fef3c7;padding:6px 14px;border-radius:8px;display:inline-flex;align-items:center;gap:6px}.ad-approval-banner{margin-top:12px;padding:16px 20px;background:linear-gradient(135deg,#fef9c3,#fef3c7);border:1px solid #fde68a;border-radius:10px;display:flex;flex-direction:column;gap:10px}.ad-approval-header{display:flex;align-items:center;gap:8px;font-size:13px;color:#92400e}.ad-approval-reason{font-size:12px;color:#78350f;margin:0;padding:8px 12px;background:#ffffff80;border-radius:6px}.ad-approval-note{padding:6px 10px;border:1px solid #fde68a;border-radius:6px;font-size:12px;background:#fff;width:100%}.ad-gate-errors{display:flex;align-items:flex-start;gap:10px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px 16px;margin-top:12px;font-size:12px;color:#92400e}.ad-gate-errors ul{margin:4px 0 0;padding-left:16px}.ad-gate-errors button{background:none;border:none;cursor:pointer;color:#92400e;flex-shrink:0}.ad-gate-panel{margin-top:14px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg);overflow:hidden;box-shadow:0 4px 16px #0000000f}.ad-gate-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);font-size:14px;color:var(--color-text)}.ad-gate-list{padding:12px 18px;display:flex;flex-direction:column;gap:6px}.ad-gate-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-radius:8px;border:1px solid transparent;transition:all .15s}.ad-gate-item.passed{background:#f0fdf4;border-color:#bbf7d0}.ad-gate-item.failed{background:#fef2f2;border-color:#fecaca}.ad-gate-item>div{display:flex;flex-direction:column;gap:2px}.ad-gate-name{font-size:13px;font-weight:600;color:var(--color-text)}.ad-gate-msg{font-size:11px;color:#dc2626;font-weight:500}.ad-gate-panel-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-top:1px solid var(--color-border);background:var(--color-bg-secondary);gap:10px}.ad-gate-fail-msg{display:flex;align-items:center;gap:6px;font-size:12px;color:#b45309;margin:0;font-weight:500}.ad-gate-inline-edit{margin-top:6px}.ad-gate-inline-input{width:100%;padding:7px 10px;font-size:12px;font-weight:500;border:1.5px solid #fca5a5;border-radius:6px;background:#fff;color:var(--color-text);transition:all .15s;outline:none}.ad-gate-inline-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #04adef1f}.ad-gate-inline-input::placeholder{color:#9ca3af;font-weight:400}.ad-gate-activity-form{margin-top:6px;display:flex;flex-direction:column;gap:6px;padding:8px 10px;background:#fff8f0;border:1px dashed #f59e0b;border-radius:8px}.ad-gate-activity-label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#b45309;text-transform:uppercase;letter-spacing:.3px}.ad-gate-activity-form textarea.ad-gate-inline-input{resize:vertical;min-height:40px;font-family:inherit}.ad-gate-activity-row{display:flex;gap:8px;align-items:stretch}.ad-gate-activity-row>*{flex:1}select.ad-gate-inline-input.ad-gate-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.ad-gate-inline-select{width:100%;padding:7px 10px;border-radius:6px;border:1.5px solid #fca5a5;font-size:13px;background:#fff;color:#1e293b;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ad-gate-inline-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #0ea5e926}.ad-cities-multi{position:relative}.ad-cities-trigger{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;cursor:pointer;border:1.5px solid #fca5a5;border-radius:6px;background:#fff;min-height:34px;gap:6px;transition:border-color .15s}.ad-cities-trigger:hover{border-color:var(--color-primary)}.ad-cities-placeholder{color:#9ca3af;font-size:12px}.ad-cities-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1}.ad-city-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:12px;background:var(--color-primary);color:#fff;font-size:11px;font-weight:500;white-space:nowrap}.ad-city-chip svg{cursor:pointer;opacity:.7}.ad-city-chip svg:hover{opacity:1}.ad-cities-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;z-index:100;background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px #0000001f;overflow:hidden}.ad-cities-list{max-height:180px;overflow-y:auto;padding:6px 0;display:grid;grid-template-columns:1fr 1fr}.ad-city-option{display:flex;align-items:center;gap:6px;padding:5px 12px;font-size:12px;cursor:pointer;transition:background .1s;white-space:nowrap}.ad-city-option:hover{background:#f0f9ff}.ad-city-option input[type=checkbox]{accent-color:var(--color-primary);width:14px;height:14px;cursor:pointer}.ad-cities-custom-row{display:flex;gap:6px;padding:8px 10px;border-top:1px solid var(--color-border);background:#fafafa}.ad-cities-add-btn{padding:4px 12px;border-radius:5px;background:var(--color-primary);color:#fff;font-size:11px;font-weight:600;border:none;cursor:pointer;white-space:nowrap}.ad-cities-add-btn:hover{opacity:.85}.ad-gate-file-upload{display:flex;align-items:center;gap:8px}.ad-gate-file-label{cursor:pointer}.ad-gate-file-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:6px;border:1.5px dashed var(--color-primary);color:var(--color-primary);font-size:12px;font-weight:500;background:#f0f9ff;transition:all .15s;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}.ad-gate-file-btn:hover{background:var(--color-primary);color:#fff}.ad-gate-file-info{font-size:11px;color:#6b7280}.ad-prob-row{display:flex;align-items:center;gap:8px;margin-top:2px}.ad-prob-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600;letter-spacing:.3px}.ad-prob-badge.none{background:#f1f5f9;color:#94a3b8}.ad-prob-badge.low{background:#fef3c7;color:#b45309}.ad-prob-badge.med{background:#dbeafe;color:#1d4ed8}.ad-prob-badge.high{background:#dcfce7;color:#15803d}.ad-prob-select{padding:3px 8px;border-radius:6px;font-size:12px;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;transition:border-color .15s}.ad-prob-select:focus{outline:none;border-color:var(--color-primary)}.ad-prob-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;border-radius:3px;background:#e2e8f0;outline:none;cursor:pointer;transition:accent-color .2s}.ad-prob-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:currentColor;border:2px solid #fff;box-shadow:0 1px 4px #0003;cursor:grab}.ad-prob-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:currentColor;border:2px solid #fff;box-shadow:0 1px 4px #0003;cursor:grab}.ad-prob-slider:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.15)}.ad-prob-slider:active::-moz-range-thumb{cursor:grabbing;transform:scale(1.15)}.ad-error-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000059;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .15s ease-out}.ad-error-dialog{background:#fff;border-radius:12px;max-width:420px;width:90%;box-shadow:0 12px 40px #0000002e;display:flex;flex-direction:column;animation:slideUp .2s ease-out;overflow:hidden}.ad-error-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #fecaca;background:#fef2f2}.ad-error-dialog-header strong{font-size:15px;color:#dc2626}.ad-error-close-x{background:none;border:none;cursor:pointer;color:#9ca3af;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.ad-error-close-x:hover{background:#fee2e2;color:#dc2626}.ad-error-dialog-msg{margin:0;font-size:13px;color:#475569;line-height:1.6;word-break:break-word;white-space:pre-line;padding:16px 20px}.ad-error-dialog-footer{display:flex;justify-content:flex-end;padding:12px 20px;border-top:1px solid #f1f5f9}.ad-error-dismiss-btn{padding:7px 20px;border-radius:8px;font-size:13px;font-weight:500;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;transition:all .15s}.ad-error-dismiss-btn:hover{background:#f8fafc;border-color:#cbd5e1}.ad-downgrade-form{display:flex;align-items:center;gap:8px;margin-top:12px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.ad-downgrade-form span{font-size:12px;color:#991b1b;white-space:nowrap}.ad-downgrade-form input{flex:1;padding:6px 10px;border:1px solid #fca5a5;border-radius:6px;font-size:12px;background:#fff}.ad-columns{display:grid;grid-template-columns:1fr 360px;gap:24px}@media(max-width:960px){.ad-columns{grid-template-columns:1fr}}.ad-section{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;padding:20px;margin-bottom:16px}.ad-section h3{font-size:14px;font-weight:700;margin:0 0 14px;display:flex;align-items:center;gap:8px;color:var(--color-text)}.ad-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ad-detail-grid.ad-detail-grid-3{grid-template-columns:1fr 1fr 1fr}.ad-detail-item{display:flex;flex-direction:column;gap:2px}.ad-detail-label{font-size:11px;font-weight:500;color:var(--color-text-muted);display:flex;align-items:center;gap:4px}.ad-detail-value{font-size:13px;font-weight:600;color:var(--color-text)}.ad-detail-value.danger{color:var(--color-danger)}.ad-credit-bar{height:6px;background:var(--color-bg-secondary);border-radius:3px;margin-top:12px;overflow:hidden}.ad-credit-fill{height:100%;border-radius:3px;transition:width .3s}.ad-credit-fill.ok{background:var(--color-success)}.ad-credit-fill.warning{background:var(--color-warning)}.ad-credit-fill.danger{background:var(--color-danger)}.ad-contract-file{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-bg-secondary);border-radius:8px;border:1px solid var(--color-border)}.ad-contract-info{display:flex;align-items:center;gap:12px}.ad-contract-name{font-size:13px;font-weight:600;display:block}.ad-contract-hint{font-size:11px;color:var(--color-text-muted);display:block}.ad-contract-actions{display:flex;gap:6px}.ad-upload-dropzone{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px;border:2px dashed var(--color-border);border-radius:10px;cursor:pointer;text-align:center;color:var(--color-text-muted);transition:all .15s}.ad-upload-dropzone:hover{border-color:var(--color-primary);color:var(--color-primary)}.ad-upload-dropzone span{font-size:13px;font-weight:500}.ad-upload-hint{font-size:11px!important;color:var(--color-text-muted)!important}.ad-notes{font-size:13px;line-height:1.6;color:var(--color-text-secondary);white-space:pre-wrap;background:var(--color-bg-secondary);border-radius:8px;padding:12px 16px}.ad-sidebar .ad-section{background:var(--color-bg)}.ad-timeline{display:flex;flex-direction:column;gap:0}.ad-timeline-item{display:flex;gap:12px;padding:10px 0;position:relative}.ad-timeline-item:before{content:"";position:absolute;left:7px;top:28px;width:2px;height:calc(100% - 16px);background:var(--color-border)}.ad-timeline-item:last-child:before{display:none}.ad-timeline-dot{width:16px;height:16px;border-radius:50%;background:var(--color-primary);flex-shrink:0;margin-top:2px;border:3px solid var(--color-bg);box-shadow:0 0 0 1px var(--color-primary)}.ad-timeline-content{flex:1;min-width:0}.ad-timeline-header{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ad-timeline-reason{font-size:12px;color:var(--color-text-secondary);margin:4px 0 0}.ad-timeline-date{font-size:11px;color:var(--color-text-muted)}.ad-muted{font-size:12px;color:var(--color-text-muted)}.ad-rate-plans{display:flex;flex-direction:column;gap:8px}.ad-rateplan-card{padding:10px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-secondary)}.ad-rateplan-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.ad-rateplan-name{font-size:13px;font-weight:600}.ad-rateplan-status{font-size:10px;padding:2px 8px;border-radius:6px;font-weight:600}.ad-rateplan-status.active{background:#d1fae5;color:#047857}.ad-rateplan-status.pending{background:#fff3cd;color:#856404}.ad-rateplan-status.inactive{background:#f3f4f6;color:#6b7280}.ad-rateplan-meta{display:flex;gap:12px;font-size:11px;color:var(--color-text-muted)}.ad-properties{display:flex;flex-direction:column;gap:6px}.ad-property-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--color-bg-secondary);border-radius:6px;font-size:12px;font-weight:500;gap:10px}.ad-property-item>div:first-child{min-width:0;flex:1;word-break:break-word}.ad-property-item>div:last-child{flex-shrink:0}.ad-recv-summary{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.ad-recv-card{flex:1;min-width:100px;padding:10px 14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-secondary);display:flex;flex-direction:column;gap:2px}.ad-recv-card-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);font-weight:600}.ad-recv-card-value{font-size:16px;font-weight:700;font-family:var(--font-mono, monospace)}.ad-recv-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:10px}.ad-recv-table{width:100%;border-collapse:collapse;font-size:12px}.ad-recv-table thead th{padding:8px 10px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);text-align:left;font-weight:600;white-space:nowrap}.ad-recv-table tbody td{padding:8px 10px;border-bottom:1px solid var(--color-border-light);vertical-align:middle}.ad-recv-row{transition:background .15s}.ad-recv-row:hover{background:var(--color-bg-secondary)}.ad-recv-row.overdue{background:#ef44440a}.ad-recv-row.overdue:hover{background:#ef444414}.ad-recv-mono{font-family:var(--font-mono, monospace);font-size:11px;font-weight:600;letter-spacing:-.3px}.ad-recv-num{font-family:var(--font-mono, monospace);font-size:12px;text-align:right;white-space:nowrap}.ad-recv-status{display:inline-block;font-size:10px;font-weight:600;padding:2px 8px;border-radius:6px;white-space:nowrap}.ad-recv-status.issued{background:#dbeafe;color:#1d4ed8}.ad-recv-status.paid{background:#d1fae5;color:#047857}.ad-recv-status.partiallypaid{background:#fef3c7;color:#b45309}.ad-recv-status.overdue{background:#fee2e2;color:#dc2626}.ad-recv-status.void{background:#f3f4f6;color:#6b7280;text-decoration:line-through}.ad-recv-status.draft{background:#f3f4f6;color:#6b7280}.ad-recv-overdue-badge{display:inline-block;font-size:9px;font-weight:700;padding:1px 5px;border-radius:4px;margin-left:4px;background:#dc2626;color:#fff}.ad-recv-pay-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 10px;border:1px solid var(--color-primary);color:var(--color-primary);background:transparent;border-radius:6px;cursor:pointer;transition:all .15s;white-space:nowrap}.ad-recv-pay-btn:hover{background:var(--color-primary);color:#fff}.ad-recv-pay-btn:disabled{opacity:.5;cursor:not-allowed}.ad-recv-detail-cell{padding:0!important;background:var(--color-bg-secondary)}.ad-recv-detail{padding:12px 16px;border-left:3px solid var(--color-primary)}.ad-recv-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;color:var(--color-text-secondary)}.ad-recv-items-table{width:100%;border-collapse:collapse;font-size:11px;margin-bottom:10px}.ad-recv-items-table th{padding:4px 8px;font-size:10px;text-transform:uppercase;color:var(--color-text-muted);text-align:left;font-weight:600;border-bottom:1px solid var(--color-border)}.ad-recv-items-table td{padding:5px 8px;border-bottom:1px solid var(--color-border-light)}.ad-recv-totals{width:220px;margin-left:auto}.ad-recv-totals>div{display:flex;justify-content:space-between;font-size:12px;padding:3px 0}.ad-recv-totals>div.grand{border-top:2px solid var(--color-text);font-weight:700;font-size:14px;padding-top:6px;margin-top:4px}.ad-pay-modal{background:var(--color-bg);border-radius:14px;max-width:440px;width:90vw;box-shadow:0 24px 48px #0000004d;overflow:hidden}.ad-pay-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary)}.ad-pay-modal-body{padding:20px;display:flex;flex-direction:column;gap:14px}.ad-pay-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--color-border);background:var(--color-bg-secondary)}.ad-stmt-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-secondary);margin-bottom:12px}.ad-section-header{font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px;color:var(--color-text);margin-bottom:14px}.ad-inline-save-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 14px;border-radius:8px;font-size:12px;font-weight:600;background:var(--color-primary);color:#fff;border:none;cursor:pointer;transition:all .15s;animation:fadeIn .2s ease-out}.ad-inline-save-btn:hover{opacity:.9}.ad-inline-save-btn:disabled{opacity:.6;cursor:not-allowed}.ad-cf-section{margin-bottom:14px}.ad-cf-section:last-child{margin-bottom:0}.ad-cf-section-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--color-primary);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--color-border-light, #f1f5f9)}.ad-cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:640px){.ad-cf-grid{grid-template-columns:1fr}}.ad-cf-field{display:flex;flex-direction:column;gap:4px;min-width:0}.ad-cf-field.checkbox-field{flex-direction:row;align-items:center;gap:10px}.ad-cf-label{font-size:11px;font-weight:600;color:var(--color-text-muted);display:flex;align-items:center;gap:3px}.ad-cf-required{color:#ef4444;font-size:13px;font-weight:700;line-height:1}.ad-cf-input{width:100%;padding:7px 10px;border:1px solid var(--color-border);border-radius:8px;font-size:13px;color:var(--color-text);background:var(--color-bg);outline:none;transition:border-color .15s;box-sizing:border-box}.ad-cf-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #04adef1a}.ad-cf-input::placeholder{color:#b0b8c9;font-weight:400}select.ad-cf-input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.ad-cf-checkbox{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--color-text);cursor:pointer}.ad-cf-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.ad-cf-multiselect{display:flex;flex-wrap:wrap;gap:6px}.ad-cf-ms-option{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:8px;font-size:12px;font-weight:500;border:1px solid var(--color-border);background:var(--color-bg);cursor:pointer;transition:all .15s;color:var(--color-text-secondary)}.ad-cf-ms-option:hover{border-color:var(--color-primary);background:#04adef0a}.ad-cf-ms-option.selected{background:var(--color-primary-soft, #e0f2fe);border-color:var(--color-primary);color:var(--color-primary);font-weight:600}.ad-cf-ms-option input[type=checkbox]{width:13px;height:13px;accent-color:var(--color-primary);cursor:pointer}.ad-cf-url-wrap{display:flex;align-items:center;gap:6px}.ad-cf-url-wrap .ad-cf-input{flex:1}.ad-cf-url-link{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:6px;border:1px solid var(--color-border);color:var(--color-primary);background:var(--color-bg);transition:all .15s}.ad-cf-url-link:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ad-cf-upload-wrap{width:100%}.ad-cf-upload-dropzone{display:flex;align-items:center;gap:8px;padding:10px 14px;border:2px dashed var(--color-border);border-radius:8px;cursor:pointer;color:var(--color-text-muted);font-size:12px;font-weight:500;transition:all .15s;background:var(--color-bg-secondary)}.ad-cf-upload-dropzone:hover{border-color:var(--color-primary);color:var(--color-primary);background:#04adef0a}.ad-cf-file-preview{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ad-cf-file-link{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:7px;font-size:12px;font-weight:600;background:var(--color-primary-soft, #e0f2fe);color:var(--color-primary);border:1px solid var(--color-primary);text-decoration:none;transition:all .15s}.ad-cf-file-link:hover{background:var(--color-primary);color:#fff}.ad-cf-upload-replace{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:7px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);transition:all .15s}.ad-cf-upload-replace:hover{border-color:var(--color-primary);color:var(--color-primary)}.act-page{padding:24px;max-width:1400px;margin:0 auto}.act-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.act-header h1{font-size:22px;font-weight:700;margin:0;display:flex;align-items:center;gap:10px}.act-header h1 svg{color:var(--color-primary)}.act-stats{display:flex;gap:16px;margin-bottom:20px}.act-stat-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:10px;padding:14px 18px;flex:1;min-width:140px}.act-stat-card .act-stat-val{font-size:22px;font-weight:700;color:var(--color-text)}.act-stat-card .act-stat-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.act-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;align-items:center;background:var(--color-bg-secondary);padding:12px 16px;border-radius:10px;border:1px solid var(--color-border)}.act-filters select,.act-filters input{font-size:13px;padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);min-width:140px}.act-filters input[type=text]{min-width:180px}.act-filters input[type=date]{min-width:130px}.act-clear-btn{font-size:12px;color:var(--color-text-muted);background:none;border:none;cursor:pointer;text-decoration:underline}.act-clear-btn:hover{color:var(--color-text)}.act-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg)}.act-table{width:100%;border-collapse:collapse;font-size:13px}.act-table th{background:var(--color-bg-secondary);text-align:left;padding:10px 14px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);white-space:nowrap}.act-table td{padding:10px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.act-table tr:last-child td{border-bottom:none}.act-table tr:hover{background:var(--color-bg-hover, rgba(0,0,0,.02))}.act-type-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:5px;white-space:nowrap}.act-type-badge.client{background:#3498db1f;color:#2980b9}.act-type-badge.internal{background:#95a5a626;color:#7f8c8d}.act-account-link{color:var(--color-primary);text-decoration:none;font-weight:500}.act-account-link:hover{text-decoration:underline}.act-contact{color:var(--color-text-muted);font-size:12px}.act-followup{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:2px 8px;border-radius:4px;background:#f39c121f;color:#e67e22;font-weight:500}.act-followup.overdue{background:#e74c3c1f;color:#e74c3c}.act-notes{color:var(--color-text-muted);font-size:12px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.act-user{font-size:12px;color:var(--color-text-muted)}.act-empty{text-align:center;padding:60px 20px;color:var(--color-text-muted)}.act-empty svg{margin-bottom:12px;opacity:.4}.act-empty p{margin:4px 0}.act-pagination{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;font-size:12px;color:var(--color-text-muted)}.act-pagination button{font-size:12px;padding:5px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);cursor:pointer}.act-pagination button:disabled{opacity:.4;cursor:not-allowed}.act-pagination button:hover:not(:disabled){background:var(--color-bg-secondary)}.act-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:100}.act-modal{background:var(--color-bg);border-radius:14px;width:520px;max-width:95vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.act-modal-header{padding:18px 22px 14px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.act-modal-header h3{font-size:16px;font-weight:700;margin:0}.act-modal-close{background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:4px}.act-modal-body{padding:18px 22px;display:flex;flex-direction:column;gap:14px}.act-modal-body label{font-size:12px;font-weight:600;color:var(--color-text-muted);display:block;margin-bottom:4px}.act-modal-body input,.act-modal-body select,.act-modal-body textarea{width:100%;font-size:13px;padding:8px 10px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-secondary);color:var(--color-text);box-sizing:border-box}.act-modal-body textarea{resize:vertical;min-height:70px}.act-modal-row{display:flex;gap:12px}.act-modal-row>div{flex:1}.act-modal-footer{padding:14px 22px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:10px}.act-modal-footer button{padding:8px 18px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--color-border)}.act-save-btn{background:var(--color-primary);color:#fff;border-color:var(--color-primary)!important}.act-save-btn:hover{opacity:.9}.act-save-btn:disabled{opacity:.5;cursor:not-allowed}.act-cancel-btn{background:var(--color-bg);color:var(--color-text)}.act-cancel-btn:hover{background:var(--color-bg-secondary)}.act-primary-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;border:none;cursor:pointer;background:var(--color-primary);color:#fff}.act-primary-btn:hover{opacity:.9}.ad-activity-item{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border)}.ad-activity-item:last-child{border-bottom:none}.ad-activity-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0}.ad-activity-dot.client{background:#3498db}.ad-activity-dot.internal{background:#95a5a6}.ad-activity-body{flex:1;min-width:0}.ad-activity-subject{font-size:13px;font-weight:600;color:var(--color-text)}.ad-activity-meta{font-size:11px;color:var(--color-text-muted);display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.ad-activity-notes{font-size:12px;color:var(--color-text-muted);margin-top:4px}.act-edit-btn{background:none;border:1px solid transparent;cursor:pointer;color:var(--color-text-muted);padding:4px 6px;border-radius:5px;display:inline-flex;align-items:center;transition:all .15s}.act-edit-btn:hover{color:var(--color-primary);background:#04adef14;border-color:#04adef33}.apc-tabs{display:flex;gap:2px;background:var(--color-bg-secondary);border-radius:var(--radius);padding:3px;margin-bottom:var(--space-5);width:fit-content}.apc-tab{display:flex;align-items:center;gap:6px;padding:8px 18px;border:none;background:transparent;color:var(--color-text-muted);font-size:.82rem;font-weight:500;border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:all .15s}.apc-tab:hover{color:var(--color-text);background:var(--color-bg-tertiary)}.apc-tab.active{background:var(--color-bg);color:var(--color-text);font-weight:600;box-shadow:0 1px 3px #00000014}.apc-stage-list{display:flex;flex-direction:column;gap:6px}.apc-stage-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);transition:all .15s;cursor:default}.apc-stage-card:hover{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary-soft)}.apc-stage-order{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-bg-secondary);color:var(--color-text-muted);font-size:.75rem;font-weight:700;flex-shrink:0}.apc-stage-color{width:14px;height:14px;border-radius:4px;flex-shrink:0;border:1px solid var(--color-border)}.apc-stage-info{flex:1;min-width:0}.apc-stage-slug{font-size:.7rem;color:var(--color-text-muted);font-family:SF Mono,Fira Code,monospace}.apc-stage-label{font-weight:600;font-size:.88rem}.apc-stage-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.apc-stage-meta .badge{font-size:.65rem;padding:2px 8px;border-radius:99px}.apc-stage-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.apc-stage-card:hover .apc-stage-actions{opacity:1}.apc-btn-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .12s}.apc-btn-icon:hover{background:var(--color-bg-secondary);color:var(--color-text)}.apc-btn-icon.danger:hover{background:#ef44441a;color:#ef4444}.badge-terminal{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.badge-won{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.badge-ageing{background:#f59e0b1a;color:#f59e0b;border:1px solid rgba(245,158,11,.2)}.badge-prob{background:#6366f114;color:#6366f1;border:1px solid rgba(99,102,241,.15)}.apc-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s}.apc-modal{background:var(--color-bg);border-radius:var(--radius-lg);width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000040;animation:slideUp .2s}.apc-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid var(--color-border)}.apc-modal-header h3{font-size:1rem;font-weight:700;display:flex;align-items:center;gap:8px}.apc-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .12s}.apc-modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text)}.apc-modal-body{padding:18px 22px;display:flex;flex-direction:column;gap:16px}.apc-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--color-border)}.apc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.apc-form-field label{display:block;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.apc-form-field input,.apc-form-field select,.apc-form-field textarea{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font-size:.85rem;transition:border-color .15s}.apc-form-field input:focus,.apc-form-field select:focus,.apc-form-field textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px var(--color-primary-soft)}.apc-form-field input[type=color]{height:36px;cursor:pointer;padding:2px 6px}.apc-form-hint{font-size:.7rem;color:var(--color-text-muted);margin-top:2px}.apc-form-checkbox{display:flex;align-items:center;gap:8px;padding:6px 0}.apc-form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.apc-form-checkbox label{font-size:.82rem;font-weight:500;color:var(--color-text);text-transform:none;letter-spacing:0;margin-bottom:0}.apc-gate-list{display:flex;flex-direction:column;gap:8px}.apc-gate-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);transition:all .15s}.apc-gate-card:hover{border-color:var(--color-primary)}.apc-gate-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary);flex-shrink:0}.apc-gate-info{flex:1;min-width:0}.apc-gate-label{font-weight:600;font-size:.85rem}.apc-gate-desc{font-size:.72rem;color:var(--color-text-muted);margin-top:2px;display:flex;align-items:center;gap:6px}.apc-gate-desc code{background:var(--color-bg-secondary);padding:1px 6px;border-radius:3px;font-size:.68rem;font-family:SF Mono,Fira Code,monospace}.apc-field-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}.apc-field-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);transition:all .15s}.apc-field-card:hover{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary-soft)}.apc-field-type-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-bg-secondary);color:var(--color-text-muted);flex-shrink:0;font-size:.75rem;font-weight:700;text-transform:uppercase}.apc-field-info{flex:1;min-width:0}.apc-field-key{font-size:.68rem;color:var(--color-text-muted);font-family:SF Mono,Fira Code,monospace}.apc-field-label{font-weight:600;font-size:.85rem}.apc-field-section-tag{font-size:.65rem;color:var(--color-text-muted);background:var(--color-bg-secondary);padding:2px 8px;border-radius:99px}.apc-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-text-muted)}.apc-empty svg{margin-bottom:var(--space-3);opacity:.3}.apc-empty h4{font-size:.95rem;margin-bottom:4px;color:var(--color-text-secondary)}.apc-empty p{font-size:.8rem}.apc-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.apc-section-header h3{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:700}.apc-section-header .apc-count{font-size:.7rem;font-weight:500;color:var(--color-text-muted);background:var(--color-bg-secondary);padding:2px 8px;border-radius:99px}.apc-stage-selector{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:var(--space-4)}.apc-stage-chip{padding:6px 14px;border:1px solid var(--color-border);border-radius:99px;background:var(--color-bg);font-size:.78rem;font-weight:500;cursor:pointer;transition:all .12s;color:var(--color-text-secondary)}.apc-stage-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.apc-stage-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.apc-alert{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius);font-size:.82rem;margin-bottom:var(--space-3)}.apc-alert.error{background:#ef444414;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.apc-alert.success{background:#10b98114;color:#10b981;border:1px solid rgba(16,185,129,.2)}@keyframes slideUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.cl-page{padding:28px 32px;max-width:1400px;margin:0 auto}.cl-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.cl-header-left{display:flex;align-items:center;gap:12px}.cl-header-left h1{font-size:1.35rem;font-weight:700;color:var(--color-text);margin:0}.cl-header-left svg{color:var(--color-primary)}.cl-property-badge{background:var(--color-primary-soft, #eef2ff);color:var(--color-primary);font-size:.75rem;font-weight:600;padding:4px 12px;border-radius:12px}.cl-period-picker{display:flex;align-items:center;gap:8px}.cl-period-picker button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--color-border);border-radius:8px;background:#fff;cursor:pointer;color:var(--color-text-muted);transition:all .15s}.cl-period-picker button:hover{background:#f8fafc;border-color:var(--color-primary);color:var(--color-primary)}.cl-period-label{font-size:.9rem;font-weight:600;color:var(--color-text);min-width:110px;text-align:center}.cl-header-actions{display:flex;gap:8px;align-items:center}.cl-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.cl-summary-card{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:18px 20px;transition:all .2s}.cl-summary-card:hover{box-shadow:0 4px 12px #0000000f}.cl-summary-card.highlight{border-color:var(--color-primary);background:linear-gradient(135deg,#f0f0ff,#fff)}.cl-summary-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:6px}.cl-summary-value{font-size:1.4rem;font-weight:700;color:var(--color-text)}.cl-summary-value.debit{color:var(--color-danger, #dc2626)}.cl-summary-value.credit{color:var(--color-success, #16a34a)}.cl-table-wrap{background:#fff;border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.cl-table-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.cl-table-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--color-text)}.cl-search-box{display:flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--color-border);border-radius:8px;background:#f8fafc;min-width:220px}.cl-search-box input{border:none;background:none;outline:none;font-size:.82rem;color:var(--color-text);width:100%}.cl-search-box svg{color:var(--color-text-muted);flex-shrink:0}.cl-filter-bar{padding:12px 16px;background:#f8fafc;border-bottom:1px solid var(--color-border)}.cl-filter-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.cl-filter-group{display:flex;flex-direction:column;gap:4px}.cl-filter-group label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted)}.cl-filter-group select,.cl-filter-group input{padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:.82rem;color:var(--color-text);background:#fff;outline:none;min-width:120px}.cl-filter-group select:focus,.cl-filter-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb, 59, 130, 246),.15)}.cl-filter-group input[type=date]{min-width:140px}.cl-filter-group input[type=text]{min-width:110px}.cl-filter-actions{display:flex;gap:6px;align-items:flex-end;padding-bottom:1px}.cl-table{width:100%;border-collapse:collapse}.cl-table thead{background:#f8fafc}.cl-table th{padding:10px 16px;text-align:left;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);white-space:nowrap;-webkit-user-select:none;user-select:none}.cl-table th[style*="cursor: pointer"]:hover{color:var(--color-text);background:#f1f5f9}.cl-table th.num{text-align:right}.cl-table td{padding:12px 16px;font-size:.84rem;color:var(--color-text);border-bottom:1px solid #f1f5f9;vertical-align:middle}.cl-table td.num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono, "SF Mono", "Monaco", monospace)}.cl-table tbody tr{cursor:pointer;transition:background .1s}.cl-table tbody tr:hover{background:#f8fafc}.cl-table tbody tr:last-child td{border-bottom:none}.cl-account-cell{display:flex;flex-direction:column;gap:2px}.cl-account-name{font-weight:600;color:var(--color-text)}.cl-account-code{font-size:.72rem;color:var(--color-text-muted);font-family:var(--font-mono, monospace)}.cl-type-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:600;white-space:nowrap}.cl-type-badge.corporate{background:#eff6ff;color:#2563eb}.cl-type-badge.travelagent{background:#faf5ff;color:#9333ea}.cl-type-badge.ota{background:#f0fdf4;color:#16a34a}.cl-type-badge.government{background:#fffbeb;color:#d97706}.cl-type-badge.other{background:#f8fafc;color:#64748b}.cl-credit-bar{width:80px;height:5px;background:#e2e8f0;border-radius:3px;overflow:hidden}.cl-credit-fill{height:100%;border-radius:3px;transition:width .3s ease}.cl-credit-fill.ok{background:#22c55e}.cl-credit-fill.warning{background:#f59e0b}.cl-credit-fill.danger{background:#ef4444}.cl-credit-text{font-size:.7rem;color:var(--color-text-muted);margin-top:2px}.cl-status-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:600}.cl-status-badge.active{background:#f0fdf4;color:#16a34a}.cl-status-badge.overdue{background:#fef2f2;color:#dc2626}.cl-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 0;color:#94a3b8;text-align:center}.cl-empty h3{font-size:1rem;color:#64748b;margin:0}.cl-empty p{font-size:.85rem;margin:0}.cl-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 0;color:#94a3b8}.cl-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px}.cl-breadcrumb{display:flex;align-items:center;gap:8px}.cl-breadcrumb a,.cl-breadcrumb button{display:flex;align-items:center;gap:4px;color:var(--color-text-muted);text-decoration:none;font-size:.88rem;background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.cl-breadcrumb a:hover,.cl-breadcrumb button:hover{color:var(--color-primary)}.cl-breadcrumb-sep{color:var(--color-text-muted);font-size:.8rem}.cl-breadcrumb-current{font-weight:700;font-size:1.1rem;color:var(--color-text)}.cl-account-switcher{position:relative;margin-left:4px}.cl-account-switcher-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid transparent;border-radius:8px;padding:4px 10px;cursor:pointer;font-weight:700;font-size:1.1rem;color:var(--color-text);transition:all .15s}.cl-account-switcher-btn:hover{background:#f1f5f9;border-color:var(--color-border)}.cl-account-switcher-btn svg{color:var(--color-text-muted);flex-shrink:0}.cl-account-dropdown{position:absolute;top:calc(100% + 4px);left:0;width:360px;background:#fff;border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #0000001f;z-index:50;overflow:hidden}.cl-account-dropdown-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--color-border)}.cl-account-dropdown-search svg{color:var(--color-text-muted);flex-shrink:0}.cl-account-dropdown-search input{border:none;outline:none;font-size:.85rem;color:var(--color-text);width:100%;background:transparent}.cl-account-dropdown-list{max-height:280px;overflow-y:auto;padding:4px}.cl-account-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px;border:none;border-radius:6px;background:none;cursor:pointer;text-align:left;transition:background .1s}.cl-account-dropdown-item:hover{background:#f1f5f9}.cl-account-dropdown-item.active{background:#eff6ff;font-weight:600}.cl-account-dropdown-name{font-size:.84rem;color:var(--color-text)}.cl-account-dropdown-code{font-size:.72rem;color:var(--color-text-muted);font-family:monospace}.cl-account-dropdown-empty{padding:16px;text-align:center;color:var(--color-text-muted);font-size:.82rem}.cl-detail-actions{display:flex;gap:8px}.cl-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;border:1px solid transparent}.cl-btn.primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.cl-btn.primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-primary-soft)}.cl-btn.outline{background:#fff;color:var(--color-text);border-color:var(--color-border)}.cl-btn.outline:hover{border-color:var(--color-primary);color:var(--color-primary);background:#fafafe}.cl-btn.success{background:var(--color-success, #16a34a);color:#fff;border-color:var(--color-success, #16a34a)}.cl-btn.success:hover{opacity:.9;transform:translateY(-1px)}.cl-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.cl-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:24px}.cl-tab{padding:12px 20px;font-size:.85rem;font-weight:600;color:var(--color-text-muted);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;transition:all .15s;white-space:nowrap}.cl-tab:hover{color:var(--color-primary)}.cl-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.cl-ledger-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:20px}.cl-ledger-metric{background:#fff;border:1px solid var(--color-border);border-radius:10px;padding:14px 16px}.cl-ledger-metric-label{display:block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-muted);margin-bottom:4px}.cl-ledger-metric-value{font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums}.cl-entry-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:600;white-space:nowrap}.cl-entry-pill.btc-transfer{background:#eff6ff;color:#2563eb}.cl-entry-pill.payment{background:#f0fdf4;color:#16a34a}.cl-entry-pill.adhoc-payment{background:#fffbeb;color:#d97706;border:1px dashed #f59e0b}.cl-adhoc-allocate-btn{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 10px;font-size:.68rem;font-weight:600;letter-spacing:.02em;color:#d97706;background:transparent;border:1px solid #f59e0b;border-radius:4px;cursor:pointer;transition:all .15s ease;vertical-align:middle}.cl-adhoc-allocate-btn:hover{background:#f59e0b;color:#fff;box-shadow:0 1px 4px #f59e0b4d}.cl-entry-pill.credit-note{background:#fffbeb;color:#d97706}.cl-entry-pill.debit-note{background:#fef2f2;color:#dc2626}.cl-entry-pill.opening-balance,.cl-entry-pill.adjustment{background:#f8fafc;color:#64748b}.cl-table tr.balance-row{background:#f8fafc}.cl-table tr.balance-row td{font-weight:700;border-bottom:1px solid var(--color-border)}.cl-table tr.closing-row{background:#f1f5f9}.cl-table tr.totals-row td{font-weight:700;border-top:2px solid var(--color-border);border-bottom:none}.cl-ref-link{color:var(--color-primary);font-family:var(--font-mono, monospace);font-size:.78rem;font-weight:600;cursor:pointer;text-decoration:none}.cl-ref-link:hover{text-decoration:underline}.cl-folio-group{background:#fff;border:1px solid var(--color-border);border-radius:12px;margin-bottom:16px;overflow:hidden}.cl-folio-group-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#f8fafc;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background .15s}.cl-folio-group-header:hover{background:#f1f5f9}.cl-folio-group-info{display:flex;align-items:center;gap:12px;font-size:.84rem}.cl-folio-group-info strong{font-weight:600}.cl-folio-badge{background:var(--color-primary-soft, #eef2ff);color:var(--color-primary);padding:2px 10px;border-radius:12px;font-size:.7rem;font-weight:600}.cl-folio-group-total{font-size:1rem;font-weight:700;color:var(--color-text);display:flex;align-items:center;gap:8px}.cl-folio-group-body{padding:0}.cl-folio-subtotal{display:flex;justify-content:flex-end;padding:10px 20px;font-size:.82rem;font-weight:600;color:var(--color-text-muted);background:#fafafa;border-top:1px solid #f1f5f9}.cl-grand-total{display:flex;justify-content:flex-end;padding:16px 20px;font-size:1.05rem;font-weight:700;color:var(--color-text)}.cl-booking-status{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.7rem;font-weight:600}.cl-booking-status.checked-out{background:#f1f5f9;color:#64748b}.cl-booking-status.checked-in{background:#f0fdf4;color:#16a34a}.cl-booking-status.confirmed{background:#eff6ff;color:#2563eb}.cl-booking-status.cancelled{background:#fef2f2;color:#dc2626;text-decoration:line-through}.cl-booking-status.no-show{background:#fef2f2;color:#dc2626}.cl-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:cl-fade-in .2s ease}@keyframes cl-fade-in{0%{opacity:0}to{opacity:1}}.cl-modal{background:#fff;border-radius:16px;width:95%;max-width:580px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 48px #00000026;animation:cl-slide-up .25s ease}@keyframes cl-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.cl-modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--color-border)}.cl-modal-header-left{display:flex;align-items:center;gap:12px}.cl-modal-header-icon{width:40px;height:40px;border-radius:10px;background:#f0fdf4;display:flex;align-items:center;justify-content:center;color:#16a34a}.cl-modal-title{font-size:1.05rem;font-weight:700;color:var(--color-text);margin:0}.cl-modal-subtitle{font-size:.78rem;color:var(--color-text-muted);margin-top:2px}.cl-modal-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px;border-radius:6px;transition:all .15s}.cl-modal-close:hover{background:#f1f5f9;color:var(--color-text)}.cl-modal-body{padding:20px 24px;overflow-y:auto;flex:1}.cl-modal-section{margin-bottom:20px}.cl-modal-section-title{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:12px}.cl-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cl-form-field{display:flex;flex-direction:column;gap:4px}.cl-form-field.full{grid-column:1 / -1}.cl-form-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted)}.cl-form-input{padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:.85rem;color:var(--color-text);transition:border-color .15s;background:#fff}.cl-form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft, rgba(99, 102, 241, .1))}.cl-form-input.cl-input-error{border-color:var(--color-danger, #ef4444);box-shadow:0 0 0 2px #ef444426}.cl-form-input.cl-input-error:focus{border-color:var(--color-danger, #ef4444);box-shadow:0 0 0 3px #ef444426}.cl-form-input.large{font-size:1.5rem;font-weight:700;padding:12px 16px}.cl-form-input.large:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a1a}.cl-form-textarea{padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;font-size:.82rem;color:var(--color-text);resize:vertical;min-height:60px;font-family:inherit;transition:border-color .15s}.cl-form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft, rgba(99, 102, 241, .1))}.cl-payment-sources{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cl-payment-source{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;font-size:.78rem;font-weight:500;color:var(--color-text);transition:all .15s;background:#fff}.cl-payment-source:hover{border-color:var(--color-primary)}.cl-payment-source.selected{border-color:var(--color-primary);background:var(--color-primary-soft, #eef2ff);color:var(--color-primary);font-weight:600}.cl-alloc-table{width:100%;border-collapse:collapse;font-size:.82rem}.cl-alloc-table th{padding:8px 10px;text-align:left;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);background:#f8fafc}.cl-alloc-table td{padding:8px 10px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.cl-alloc-table td.num{text-align:right;font-variant-numeric:tabular-nums}.cl-alloc-input{width:80px;padding:4px 8px;border:1px solid var(--color-border);border-radius:6px;font-size:.82rem;text-align:right;font-variant-numeric:tabular-nums}.cl-alloc-summary{display:flex;align-items:center;justify-content:space-between;padding:10px 0;font-size:.82rem;border-top:1px solid var(--color-border);margin-top:8px}.cl-alloc-warning{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#d97706}.cl-alloc-error{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#dc2626}.cl-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid var(--color-border)}.cl-modal-footer .cl-btn-cancel{background:none;border:none;color:var(--color-text-muted);font-size:.85rem;cursor:pointer;padding:8px 16px;border-radius:8px;transition:all .15s}.cl-modal-footer .cl-btn-cancel:hover{background:#f1f5f9;color:var(--color-text)}@media(max-width:768px){.cl-page{padding:16px}.cl-summary{grid-template-columns:repeat(2,1fr)}.cl-ledger-summary{grid-template-columns:repeat(3,1fr)}.cl-header{flex-direction:column;align-items:flex-start;gap:12px}.cl-form-grid{grid-template-columns:1fr}.cl-payment-sources{grid-template-columns:repeat(2,1fr)}.cl-detail-header{flex-direction:column;align-items:flex-start}.cl-inline-pay{flex-wrap:wrap}}.cl-invoice-footer{display:flex;flex-direction:column;align-items:flex-end;padding:16px 24px;border-top:1px solid var(--color-border);gap:4px}.cl-invoice-footer-row{display:flex;justify-content:space-between;gap:40px;padding:4px 0;font-size:.85rem;min-width:260px}.cl-invoice-footer-row span{color:var(--color-text-muted);font-weight:500}.cl-invoice-footer-row strong{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}.cl-invoice-footer-row.highlight{padding:6px 0;border-top:1px solid var(--color-border)}.cl-invoice-footer-row.highlight strong{color:var(--color-text);font-weight:800}.cl-inline-pay{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.cl-inline-pay-field{display:flex;flex-direction:column;gap:4px;min-width:100px;flex:1}.cl-inline-pay-field label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-muted)}.cl-inline-pay-field select.cl-form-input{height:36px}.cl-inline-pay-field input.cl-form-input{height:36px;padding:6px 10px;font-size:.82rem}.cl-inline-pay-field .cl-btn{height:36px;white-space:nowrap}.cl-pay-type-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border, #e2e8f0);padding:0 20px}.cl-pay-type-tab{display:flex;align-items:center;gap:6px;padding:10px 20px;font-size:.82rem;font-weight:600;color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all .2s}.cl-pay-type-tab:hover{color:var(--color-text);background:var(--color-bg-hover, #f8fafc)}.cl-pay-type-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.cl-pay-type-tab svg{opacity:.7}.cl-pay-type-tab.active svg{opacity:1}.cl-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}.cl-back-btn:hover{background:var(--color-bg-subtle);color:var(--color-text-primary)}.report-filter-group{display:flex;align-items:center;gap:6px}.report-filter-label{font-size:.78rem;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em}.report-card{overflow:auto}.report-sticky-col{position:sticky;left:0;background:var(--color-bg-card);z-index:2}.report-account-row{cursor:pointer}.report-account-row td{border-bottom:1px solid var(--color-border)}.report-account-row:hover td{background:var(--color-bg-subtle)!important}.report-acct-cell{display:flex;align-items:center;gap:8px}.report-chevron{color:var(--color-text-muted);transition:transform .2s ease;flex-shrink:0}.report-chevron.open{transform:rotate(180deg)}.report-acct-name{font-weight:600;color:var(--color-text-primary)}.report-acct-code{font-size:.72rem;color:var(--color-text-muted);background:var(--color-bg-subtle);padding:1px 6px;border-radius:4px}.report-detail-row td{border-bottom:1px dotted var(--color-border);padding-top:4px;padding-bottom:4px}.report-detail-label{padding-left:30px;font-size:.78rem;color:var(--color-text-muted)}.report-detail-val{font-size:.78rem}.report-detail-val.debit{color:var(--color-danger)}.report-detail-val.credit{color:var(--color-success)}.report-totals-row td{border-top:2px solid var(--color-border);padding-top:10px;padding-bottom:10px}.report-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--color-text-muted);text-align:center}.report-empty svg{opacity:.15;margin-bottom:16px}.report-empty h3{font-size:1rem;font-weight:600;color:var(--color-text-secondary);margin:0 0 6px}.report-empty p{font-size:.85rem;margin:0;max-width:340px}.cl-detail-group{display:flex;flex-direction:column;gap:4px}.cl-detail-label{font-size:.72rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px;font-weight:500}.cl-detail-value{font-size:.88rem;color:var(--color-text);font-weight:500}.dnr-page{padding:24px;max-width:1400px;margin:0 auto}.dnr-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;flex-wrap:wrap;gap:12px}.dnr-header-left h1{font-size:24px;font-weight:800;margin:0;display:flex;align-items:center;gap:10px;letter-spacing:-.02em}.dnr-header-left h1 svg{color:#ef4444}.dnr-header-left p{font-size:13px;color:var(--color-text-muted);margin:4px 0 0}.dnr-primary-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:10px;font-size:13px;font-weight:700;border:none;cursor:pointer;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #ef444440;transition:all .2s ease}.dnr-primary-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #ef444459}.dnr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.dnr-stat-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:14px;padding:18px 20px;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.dnr-stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000000f}.dnr-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:14px 14px 0 0}.dnr-stat-card:nth-child(1):before{background:linear-gradient(90deg,#ef4444,#f97316)}.dnr-stat-card:nth-child(2):before{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.dnr-stat-card:nth-child(3):before{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.dnr-stat-card:nth-child(4):before{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.dnr-stat-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.dnr-stat-card:nth-child(1) .dnr-stat-icon{background:#ef44441a;color:#ef4444}.dnr-stat-card:nth-child(2) .dnr-stat-icon{background:#8b5cf61a;color:#8b5cf6}.dnr-stat-card:nth-child(3) .dnr-stat-icon{background:#3b82f61a;color:#3b82f6}.dnr-stat-card:nth-child(4) .dnr-stat-icon{background:#f59e0b1a;color:#f59e0b}.dnr-stat-val{font-size:26px;font-weight:800;color:var(--color-text);letter-spacing:-.02em}.dnr-stat-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.6px;margin-top:2px;font-weight:600}.dnr-stat-sub{font-size:11px;color:var(--color-text-muted);margin-top:6px;line-height:1.4}.dnr-stat-has-tip{cursor:pointer}.dnr-stat-tooltip{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #0000001f;padding:8px 0;animation:dnrFadeIn .1s ease}.dnr-stat-tooltip-row{display:flex;justify-content:space-between;align-items:center;padding:6px 14px;font-size:12px;color:var(--color-text)}.dnr-stat-tooltip-row:hover{background:var(--color-bg-secondary)}.dnr-stat-tooltip-count{font-weight:700;color:var(--color-text);min-width:20px;text-align:right}.dnr-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;align-items:center;background:var(--color-bg-secondary);padding:12px 16px;border-radius:12px;border:1px solid var(--color-border)}.dnr-filters select,.dnr-filters input[type=text]{font-size:13px;padding:7px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);min-width:150px;transition:border-color .2s}.dnr-filters select:focus,.dnr-filters input[type=text]:focus{border-color:var(--color-primary);outline:none}.dnr-filters input[type=text]{min-width:200px}.dnr-clear-btn{font-size:12px;color:var(--color-text-muted);background:none;border:none;cursor:pointer;text-decoration:underline;font-weight:500}.dnr-clear-btn:hover{color:var(--color-text)}.dnr-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:12px;background:var(--color-bg)}.dnr-table{width:100%;border-collapse:collapse;font-size:13px}.dnr-table th{background:var(--color-bg-secondary);text-align:left;padding:11px 14px;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);white-space:nowrap}.dnr-table td{padding:12px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.dnr-table tr:last-child td{border-bottom:none}.dnr-table tr:hover{background:var(--color-bg-hover, rgba(0,0,0,.015))}.dnr-space-name{font-weight:600;font-size:13px;color:var(--color-text)}.dnr-space-code{font-size:11px;color:var(--color-text-muted);font-family:SF Mono,Fira Code,monospace}.dnr-room-type{font-size:12px;color:var(--color-text-muted);display:flex;align-items:center;gap:4px}.dnr-action-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;white-space:nowrap;letter-spacing:.3px}.dnr-action-badge.set{background:#ef44441a;color:#dc2626}.dnr-action-badge.removed{background:#22c55e1a;color:#16a34a}.dnr-reason{font-size:12px;color:var(--color-text);font-weight:500}.dnr-notes{color:var(--color-text-muted);font-size:12px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dnr-user{font-size:12px;color:var(--color-text-muted)}.dnr-date{white-space:nowrap;font-size:12px;color:var(--color-text-muted)}.dnr-period{font-size:12px;color:var(--color-text-muted);white-space:nowrap;font-weight:500}.dnr-date-range-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.dnr-nights-badge{padding:6px 12px;border-radius:8px;font-size:12px;font-weight:700;background:#3b82f61a;color:#3b82f6;white-space:nowrap;margin-bottom:4px}.dnr-modal-body input[type=date]{width:100%;font-size:13px;padding:9px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-secondary);color:var(--color-text);box-sizing:border-box;transition:border-color .2s;font-family:inherit}.dnr-modal-body input[type=date]:focus{border-color:var(--color-primary);outline:none}.dnr-confirm-period{font-size:13px;color:var(--color-text-muted);font-weight:600}.dnr-remove-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;border:1px solid rgba(34,197,94,.3);background:#22c55e0f;color:#16a34a;cursor:pointer;transition:all .2s;white-space:nowrap}.dnr-remove-btn:hover{background:#22c55e26;border-color:#22c55e80}.dnr-edit-btn{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;border:1px solid rgba(59,130,246,.3);background:#3b82f60f;color:#2563eb;cursor:pointer;transition:all .2s;white-space:nowrap}.dnr-edit-btn:hover{background:#3b82f624;border-color:#3b82f680}.dnr-empty{text-align:center;padding:72px 20px;color:var(--color-text-muted)}.dnr-empty svg{margin-bottom:16px;opacity:.25}.dnr-empty p{margin:4px 0}.dnr-empty p:first-of-type{font-weight:600;font-size:15px;color:var(--color-text)}.dnr-pagination{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-size:12px;color:var(--color-text-muted)}.dnr-pagination button{font-size:12px;padding:6px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);cursor:pointer;display:inline-flex;align-items:center;gap:4px;font-weight:600;transition:all .15s}.dnr-pagination button:disabled{opacity:.4;cursor:not-allowed}.dnr-pagination button:hover:not(:disabled){background:var(--color-bg-secondary)}.dnr-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;animation:dnrFadeIn .15s ease}.dnr-modal{background:var(--color-bg);border-radius:16px;width:520px;max-width:95vw;max-height:85vh;overflow-y:auto;box-shadow:0 24px 60px #00000040;animation:dnrSlideUp .2s ease}.dnr-modal-header{padding:20px 24px 16px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.dnr-modal-header h3{font-size:17px;font-weight:800;margin:0;display:flex;align-items:center;gap:10px}.dnr-modal-header h3 svg{color:#ef4444}.dnr-modal-close{background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:4px;border-radius:6px;display:flex;transition:color .15s}.dnr-modal-close:hover{color:var(--color-text)}.dnr-modal-body{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.dnr-modal-body label{font-size:12px;font-weight:700;color:var(--color-text-muted);display:block;margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px}.dnr-modal-body select,.dnr-modal-body textarea{width:100%;font-size:13px;padding:9px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-secondary);color:var(--color-text);box-sizing:border-box;transition:border-color .2s}.dnr-modal-body select:focus,.dnr-modal-body textarea:focus{border-color:var(--color-primary);outline:none}.dnr-modal-body textarea{resize:vertical;min-height:80px;font-family:inherit}.dnr-modal-footer{padding:16px 24px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:10px}.dnr-modal-footer button{padding:9px 20px;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;border:1px solid var(--color-border);transition:all .15s}.dnr-save-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#ef4444!important;box-shadow:0 2px 8px #ef444433}.dnr-save-btn:hover{opacity:.9;transform:translateY(-1px)}.dnr-save-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.dnr-cancel-btn{background:var(--color-bg);color:var(--color-text)}.dnr-cancel-btn:hover{background:var(--color-bg-secondary)}.dnr-error-alert{padding:14px 16px;border-radius:10px;background:#ef44440f;border:1px solid rgba(239,68,68,.2)}.dnr-error-alert-header{display:flex;align-items:center;gap:8px;color:#dc2626;font-weight:700;font-size:13px;margin-bottom:6px}.dnr-error-alert-msg{color:#dc2626;font-size:13px;line-height:1.5}.dnr-error-alert-dates{margin-top:8px;padding:8px 12px;background:#ef44440a;border-radius:6px}.dnr-error-alert-dates ul{margin:4px 0 0;padding-left:18px;list-style:disc}.dnr-error-alert-dates li{font-size:12px;color:#dc2626;line-height:1.6}.dnr-confirm-body{padding:20px 24px;text-align:center}.dnr-confirm-body svg{color:#f59e0b;margin-bottom:12px}.dnr-confirm-body p{margin:0 0 4px;font-size:14px}.dnr-confirm-body p:first-of-type{font-weight:700;font-size:15px}.dnr-confirm-body p:last-of-type{color:var(--color-text-muted);font-size:13px}.dnr-confirm-footer{padding:16px 24px;border-top:1px solid var(--color-border);display:flex;justify-content:center;gap:10px}.dnr-confirm-footer button{padding:9px 24px;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;border:1px solid var(--color-border);transition:all .15s}.dnr-confirm-remove-btn{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:#22c55e!important}@keyframes dnrFadeIn{0%{opacity:0}to{opacity:1}}@keyframes dnrSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.dnr-space-search-wrap{position:relative}.dnr-space-search-input-row{display:flex;align-items:center;gap:8px;border:1px solid var(--color-border);border-radius:8px;padding:0 12px;background:var(--color-bg-secondary);transition:border-color .2s;cursor:text}.dnr-space-search-input-row:focus-within{border-color:var(--color-primary)}.dnr-space-search-input-row input{flex:1;border:none;background:transparent;font-size:13px;padding:9px 0;color:var(--color-text);outline:none;font-family:inherit;min-width:0}.dnr-space-search-input-row input.has-selection{color:var(--color-text);font-weight:500}.dnr-space-search-input-row input::placeholder{color:var(--color-text-muted);font-weight:400}.dnr-space-search-clear{background:none;border:none;cursor:pointer;padding:2px;color:var(--color-text-muted);display:flex;border-radius:4px;transition:color .15s}.dnr-space-search-clear:hover{color:var(--color-text)}.dnr-space-dropdown{position:absolute;left:0;right:0;top:calc(100% + 4px);background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;max-height:240px;overflow-y:auto;box-shadow:0 12px 40px #00000026;z-index:20;animation:dnrSlideUp .12s ease}.dnr-space-dropdown-item{padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--color-border);transition:background .1s}.dnr-space-dropdown-item:last-child{border-bottom:none}.dnr-space-dropdown-item:hover{background:var(--color-bg-secondary)}.dnr-space-dropdown-item.selected{background:#3b82f614}.dnr-space-dropdown-name{font-size:13px;font-weight:600;color:var(--color-text)}.dnr-space-dropdown-code{font-size:12px;color:var(--color-text-muted);font-weight:400;font-family:SF Mono,Fira Code,monospace;margin-left:4px}.dnr-space-dropdown-rt{font-size:11px;color:var(--color-text-muted);margin-top:2px}.dnr-space-dropdown-empty{padding:16px 14px;font-size:13px;color:var(--color-text-muted);text-align:center}.dnr-loading{display:flex;align-items:center;justify-content:center;min-height:400px}@media(max-width:900px){.dnr-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.dnr-stats{grid-template-columns:1fr}.dnr-header{flex-direction:column;align-items:stretch}.dnr-filters{flex-direction:column}.dnr-filters select,.dnr-filters input[type=text]{min-width:100%}}.crm-dash{display:grid;gap:var(--space-4)}.crm-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3)}.crm-kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);transition:box-shadow .2s}.crm-kpi-card:hover{box-shadow:0 2px 8px #0000000f}.crm-kpi-label{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.4px;font-weight:500}.crm-kpi-value{font-size:22px;font-weight:700;color:var(--color-text);font-family:var(--font-mono)}.crm-kpi-sub{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px}.crm-funnel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.crm-funnel h3{margin-bottom:var(--space-3);font-size:var(--text-base)}.crm-funnel-stages{display:flex;gap:2px;height:48px}.crm-funnel-stage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--radius);color:#fff;font-size:10px;font-weight:600;cursor:default;transition:transform .15s;min-width:0;overflow:hidden}.crm-funnel-stage:hover{transform:scaleY(1.08)}.crm-funnel-stage .count{font-size:16px;font-weight:700;line-height:1}.crm-funnel-stage .label{opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;padding:0 2px}.crm-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media(max-width:800px){.crm-panels{grid-template-columns:1fr}}.crm-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.crm-panel h3{font-size:var(--text-sm);margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2)}.crm-panel-count{font-size:10px;background:var(--color-bg-secondary);padding:1px 6px;border-radius:8px;color:var(--color-text-muted);font-weight:600}.crm-list-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);border-radius:var(--radius);cursor:pointer;transition:background .15s;font-size:var(--text-sm)}.crm-list-item:hover{background:var(--color-bg-secondary)}.crm-list-item-main{flex:1;min-width:0}.crm-list-item-title{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.crm-list-item-sub{font-size:10px;color:var(--color-text-muted)}.crm-activity-item{display:flex;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-light);font-size:12px}.crm-activity-item:last-child{border-bottom:none}.crm-activity-dot{width:6px;height:6px;border-radius:50%;margin-top:5px;flex-shrink:0}.crm-three-forecast{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.crm-three-forecast h3{font-size:var(--text-base);margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2)}.crm-forecast-layers{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-3);margin-bottom:var(--space-3)}.crm-forecast-layer{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius);background:var(--color-bg-secondary);transition:transform .15s,box-shadow .15s}.crm-forecast-layer:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.crm-forecast-layer-icon{width:36px;height:36px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0}.crm-forecast-layer-info{flex:1;min-width:0}.crm-forecast-layer-label{font-size:12px;font-weight:600;color:var(--color-text)}.crm-forecast-layer-desc{font-size:10px;color:var(--color-text-muted);margin-top:1px}.crm-forecast-layer-value{font-size:16px;font-weight:700;font-family:var(--font-mono);white-space:nowrap}.crm-forecast-summary{display:flex;gap:var(--space-4);padding:var(--space-3);border-radius:var(--radius);background:var(--color-bg-tertiary);border:1px solid var(--color-border);flex-wrap:wrap}.crm-forecast-summary-item{display:flex;flex-direction:column;gap:2px;font-size:11px;color:var(--color-text-muted);min-width:100px}.crm-forecast-summary-value{font-size:16px;font-weight:700;color:var(--color-text);font-family:var(--font-mono)}.crm-forecast-churn-alert{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:#ef44440f;border:1px solid rgba(239,68,68,.15);color:#ef4444;font-size:12px;font-weight:500}.sms-wrapper{position:relative}.sms-label{display:block;font-size:12px;font-weight:600;color:var(--color-text-secondary, #64748b);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.sms-trigger{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:6px 10px;border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius, 8px);background:var(--color-bg, #fff);cursor:pointer;transition:border-color .15s,box-shadow .15s;gap:6px}.sms-trigger:hover{border-color:var(--color-primary, #6366f1)}.sms-trigger.open{border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 2px #6366f11f}.sms-trigger.has-error{border-color:#ef4444}.sms-placeholder{color:var(--color-text-muted, #94a3b8);font-size:13px}.sms-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1;min-width:0}.sms-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-primary, #6366f1);color:#fff;border-radius:12px;font-size:11px;font-weight:500;line-height:1.4;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sms-chip-remove{display:flex;align-items:center;cursor:pointer;opacity:.7;transition:opacity .15s;flex-shrink:0}.sms-chip-remove:hover{opacity:1}.sms-chevron{flex-shrink:0;color:var(--color-text-muted, #94a3b8);transition:transform .2s}.sms-chevron.open{transform:rotate(180deg)}.sms-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:100;background:var(--color-bg, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius, 8px);box-shadow:0 8px 24px #0000001f;overflow:hidden;animation:smsSlideDown .15s ease-out}@keyframes smsSlideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sms-search-wrap{padding:8px;border-bottom:1px solid var(--color-border, #e2e8f0)}.sms-search-input{width:100%;padding:7px 10px;border:1px solid var(--color-border, #e2e8f0);border-radius:6px;font-size:13px;outline:none;background:var(--color-surface, #f8fafc);color:var(--color-text, #1e293b);transition:border-color .15s;box-sizing:border-box}.sms-search-input:focus{border-color:var(--color-primary, #6366f1)}.sms-search-input::placeholder{color:var(--color-text-muted, #94a3b8)}.sms-options{max-height:220px;overflow-y:auto;padding:4px 0}.sms-option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;font-size:13px;transition:background .1s;border-bottom:1px solid rgba(0,0,0,.04)}.sms-option:last-child{border-bottom:none}.sms-option:hover{background:var(--color-surface, #f1f5f9)}.sms-checkbox{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--color-border, #cbd5e1);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.sms-checkbox.checked{background:var(--color-primary, #6366f1);border-color:var(--color-primary, #6366f1)}.sms-option-text{flex:1;min-width:0}.sms-option-label{font-weight:500;color:var(--color-text, #1e293b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sms-option-subtitle{font-size:10px;color:var(--color-text-muted, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sms-empty{padding:16px;text-align:center;color:var(--color-text-muted, #94a3b8);font-size:12px}.sms-loading{padding:16px;text-align:center;color:var(--color-text-muted, #94a3b8);font-size:12px;display:flex;align-items:center;justify-content:center;gap:6px}.sms-error-hint{font-size:11px;color:#ef4444;margin-top:4px}.rich-editor-wrapper{border:1px solid var(--color-border, #e2e8f0);border-radius:8px;overflow:hidden;background:var(--color-bg, #fff)}.rich-editor-toolbar{display:flex;align-items:center;gap:2px;padding:6px 8px;background:var(--color-surface, #f8fafc);border-bottom:1px solid var(--color-border, #e2e8f0);flex-wrap:wrap}.rich-editor-toolbar button{background:none;border:none;padding:4px 7px;cursor:pointer;border-radius:4px;font-size:13px;color:var(--color-text-muted, #64748b);line-height:1;transition:all .15s;display:inline-flex;align-items:center;justify-content:center}.rich-editor-toolbar button:hover{background:var(--color-border, #e2e8f0);color:var(--color-text, #1e293b)}.rich-editor-toolbar .toolbar-divider{width:1px;height:18px;background:var(--color-border, #e2e8f0);margin:0 3px}.rich-editor-content{min-height:280px;max-height:350px;overflow-y:auto;padding:12px 14px;font-size:13px;line-height:1.6;outline:none;color:var(--color-text, #1e293b)}.rich-editor-content:empty:before{content:attr(data-placeholder);color:var(--color-text-muted, #94a3b8);pointer-events:none}.rich-editor-content h3,.rich-editor-content h4{margin:8px 0 4px}.rich-editor-content ul,.rich-editor-content ol{padding-left:22px;margin:4px 0}.rich-editor-content blockquote{border-left:3px solid var(--color-primary, #6366f1);padding-left:12px;margin:8px 0;color:var(--color-text-muted, #64748b)}.rich-editor-content a{color:var(--color-primary, #6366f1);text-decoration:underline}.cockpit-page{display:grid;gap:var(--space-6);padding:var(--space-6) var(--space-8);max-width:1440px;margin:0 auto;animation:cockpitFadeIn .4s ease}@keyframes cockpitFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cockpit-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--space-2)}.cockpit-header-left{display:flex;align-items:center;gap:var(--space-3)}.cockpit-header h2{font-size:var(--text-xl);font-weight:800;margin:0;display:flex;align-items:center;gap:var(--space-2);letter-spacing:-.02em}.cockpit-header-right{display:flex;align-items:center;gap:var(--space-3)}.cockpit-level-badge{padding:4px 14px;border-radius:var(--radius-full);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.cockpit-refresh-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-muted);transition:all .2s}.cockpit-refresh-btn:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft);transform:rotate(45deg)}.cockpit-month-picker{display:flex;align-items:center;gap:2px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:3px 6px;box-shadow:var(--shadow-sm)}.cockpit-month-arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s}.cockpit-month-arrow:hover:not(:disabled){background:var(--color-bg-tertiary);color:var(--color-text)}.cockpit-month-arrow:disabled{opacity:.25;cursor:not-allowed}.cockpit-month-input{border:none;background:transparent;font-family:var(--font-family);font-size:12px;font-weight:600;color:var(--color-text);cursor:pointer;padding:4px 2px;min-width:0;width:110px;text-align:center}.cockpit-month-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.4;filter:grayscale(1)}.cockpit-month-today{border:none;background:var(--color-primary);color:#fff;font-size:10px;font-weight:700;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:all .15s;letter-spacing:.04em;text-transform:uppercase}.cockpit-month-today:hover{background:var(--color-primary-hover);transform:scale(1.03)}.cockpit-tabs{display:flex;gap:4px;background:var(--color-bg-tertiary);border-radius:var(--radius-lg);padding:4px;overflow-x:auto;scrollbar-width:none;border:1px solid var(--color-border)}.cockpit-tabs::-webkit-scrollbar{display:none}.cockpit-tab{padding:9px 18px;border-radius:var(--radius-md);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;background:transparent;border:none;color:var(--color-text-muted);transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;position:relative}.cockpit-tab:hover{color:var(--color-text);background:#ffffffb3}.cockpit-tab.active{background:var(--color-bg-card);color:var(--color-primary);box-shadow:0 1px 4px #00000014,0 0 0 1px #04adef14;font-weight:700}.cockpit-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4)}.cockpit-metric-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-5);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.cockpit-metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),transparent);opacity:0;transition:opacity .3s}.cockpit-metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--color-border-hover)}.cockpit-metric-card:hover:before{opacity:1}.cockpit-metric-card.status-on-track{border-left:4px solid #10b981}.cockpit-metric-card.status-on-track:before{background:linear-gradient(90deg,#10b981,transparent);opacity:.6}.cockpit-metric-card.status-warning{border-left:4px solid #f59e0b}.cockpit-metric-card.status-warning:before{background:linear-gradient(90deg,#f59e0b,transparent);opacity:.6}.cockpit-metric-card.status-behind{border-left:4px solid #ef4444}.cockpit-metric-card.status-behind:before{background:linear-gradient(90deg,#ef4444,transparent);opacity:.6}.cockpit-metric-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:5px}.cockpit-metric-value{font-size:26px;font-weight:800;font-family:var(--font-mono);color:var(--color-text);letter-spacing:-.02em;line-height:1.1}.cockpit-metric-sub{font-size:11px;color:var(--color-text-secondary);margin-top:6px;line-height:1.4}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-full);font-size:10px;font-weight:700;letter-spacing:.02em}.status-badge.green{background:#10b9811f;color:#059669}.status-badge.yellow{background:#f59e0b1f;color:#d97706}.status-badge.red{background:#ef44441f;color:#dc2626}.priority-badge{padding:3px 10px;border-radius:var(--radius-full);font-size:10px;font-weight:700;letter-spacing:.02em}.priority-badge.Critical{background:#ef44441f;color:#dc2626}.priority-badge.High{background:#f59e0b1f;color:#d97706}.priority-badge.Medium{background:#3b82f61f;color:#2563eb}.cockpit-action-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-4)}.cockpit-action-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;box-shadow:var(--shadow-sm);position:relative}.cockpit-action-card:hover{box-shadow:var(--shadow-md),0 0 24px #04adef14;transform:translateY(-3px);border-color:var(--color-primary)}.cockpit-action-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3)}.cockpit-action-card-title{font-size:14px;font-weight:700;color:var(--color-text)}.cockpit-action-card-stage{font-size:10px;padding:3px 10px;border-radius:var(--radius-full);font-weight:700;color:#fff;letter-spacing:.02em}.cockpit-action-card-row{display:flex;gap:var(--space-3);font-size:12px;color:var(--color-text-secondary);margin-bottom:6px;flex-wrap:wrap}.cockpit-action-card-row span{display:flex;align-items:center;gap:4px}.cockpit-action-suggest{display:inline-flex;align-items:center;gap:5px;margin-top:var(--space-3);padding:6px 14px;border-radius:var(--radius-md);font-size:11px;font-weight:600;background:linear-gradient(135deg,#04adef0f,#04adef1f);color:var(--color-primary);border:1px solid rgba(4,173,239,.15)}.cockpit-queue{display:grid;gap:2px}.cockpit-queue-item{display:grid;grid-template-columns:auto 1fr auto auto;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;font-size:var(--text-sm);border:1px solid transparent}.cockpit-queue-item:hover{background:var(--color-bg-tertiary);border-color:var(--color-border);transform:translate(2px)}.cockpit-queue-item-main{min-width:0}.cockpit-queue-item-title{font-weight:700;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text)}.cockpit-queue-item-sub{font-size:11px;color:var(--color-text-muted);margin-top:2px}.cockpit-queue-item-value{font-family:var(--font-mono);font-weight:700;font-size:13px;white-space:nowrap;color:var(--color-text)}.cockpit-progress{height:8px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.cockpit-progress-fill{height:100%;border-radius:var(--radius-full);transition:width .8s cubic-bezier(.4,0,.2,1);position:relative}.cockpit-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShimmer 2s infinite}@keyframes progressShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.cockpit-progress-fill.green{background:linear-gradient(90deg,#10b981,#34d399)}.cockpit-progress-fill.yellow{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.cockpit-progress-fill.red{background:linear-gradient(90deg,#ef4444,#f87171)}.cockpit-activity-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4)}.cockpit-activity-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);transition:all .2s}.cockpit-activity-card:hover{box-shadow:var(--shadow-md)}.cockpit-activity-card h4{font-size:12px;font-weight:700;margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.cockpit-activity-big{font-size:32px;font-weight:800;font-family:var(--font-mono);letter-spacing:-.02em;line-height:1}.cockpit-activity-target{font-size:16px;font-weight:400;color:var(--color-text-muted)}.cockpit-funnel{display:grid;gap:var(--space-3)}.cockpit-funnel-row{display:grid;grid-template-columns:160px 1fr 60px;gap:var(--space-3);align-items:center;font-size:12px}.cockpit-funnel-bar{height:28px;background:var(--color-bg-tertiary);border-radius:var(--radius-md);overflow:hidden}.cockpit-funnel-bar-fill{height:100%;border-radius:var(--radius-md);transition:width .8s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:flex-end;padding-right:8px;font-size:10px;font-weight:700;color:#fff;min-width:32px}.cockpit-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}@media(max-width:900px){.cockpit-panels{grid-template-columns:1fr}}.cockpit-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all .2s}.cockpit-panel:hover{box-shadow:var(--shadow-md)}.cockpit-panel h3{font-size:14px;font-weight:700;margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2);color:var(--color-text)}.cockpit-panel-count{font-size:10px;background:var(--color-primary-soft);padding:2px 8px;border-radius:var(--radius-full);color:var(--color-primary);font-weight:700}.cockpit-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.cockpit-table th{text-align:left;padding:10px 14px;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);border-bottom:2px solid var(--color-border);font-weight:700;background:var(--color-bg-tertiary);position:sticky;top:0;z-index:1}.cockpit-table th:first-child{border-radius:var(--radius-md) 0 0 0}.cockpit-table th:last-child{border-radius:0 var(--radius-md) 0 0}.cockpit-table td{padding:12px 14px;border-bottom:1px solid var(--color-border);transition:background .15s}.cockpit-table tr:hover td{background:var(--color-bg-tertiary)}.cockpit-table tr:last-child td{border-bottom:none}.cockpit-table tr.top-tier td{background:#10b9810a}.cockpit-table tr.bottom-tier td{background:#ef44440a}.cockpit-tier-badge{padding:3px 10px;border-radius:var(--radius-full);font-size:10px;font-weight:700;letter-spacing:.02em}.cockpit-tier-badge.Top20\%{background:#10b9811f;color:#059669}.cockpit-tier-badge.Bottom20\%{background:#ef44441f;color:#dc2626}.cockpit-tier-badge.Middle{background:#3b82f614;color:#2563eb}.cockpit-empty{text-align:center;padding:var(--space-10) var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm)}.cockpit-empty svg{margin-bottom:var(--space-3);opacity:.3}.cockpit-section-title{font-size:15px;font-weight:700;margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2);color:var(--color-text)}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4)}.config-field{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:all .2s;box-shadow:var(--shadow-sm)}.config-field:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.config-label{font-size:13px;font-weight:700;color:var(--color-text);margin-bottom:4px;display:block}.config-desc{font-size:11px;color:var(--color-text-muted);margin-bottom:var(--space-3);line-height:1.5}.config-input{width:100%;max-width:160px;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;font-family:var(--font-mono);font-weight:700;background:var(--color-bg-tertiary);color:var(--color-text);transition:all .2s}.config-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #04adef1f}.config-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--radius-md);font-size:13px;font-weight:700;background:var(--color-primary);color:#fff;border:none;cursor:pointer;transition:all .2s;box-shadow:var(--shadow-sm)}.config-btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.config-btn-primary:disabled{opacity:.5;cursor:not-allowed}.config-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--radius-md);font-size:13px;font-weight:500;background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;transition:all .2s}.config-btn-secondary:hover{color:var(--color-text);border-color:var(--color-text-muted)}.chat-analytics-container{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);overflow:hidden;min-height:520px;max-height:72vh;box-shadow:var(--shadow-sm)}.chat-messages-area{flex:1;overflow-y:auto;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 28px;text-align:center;flex:1}.chat-empty-icon{width:60px;height:60px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#04adef1f,#6366f11f);display:flex;align-items:center;justify-content:center;color:var(--color-primary);margin-bottom:20px}.chat-empty-state h3{font-size:20px;font-weight:800;margin:0 0 8px;color:var(--color-text)}.chat-empty-state p{font-size:13px;color:var(--color-text-muted);margin:0 0 28px;max-width:420px;line-height:1.5}.chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:560px}.chat-suggestion-chip{padding:8px 16px;border-radius:var(--radius-full);font-size:12px;background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all .2s;white-space:nowrap;font-weight:500}.chat-suggestion-chip:hover{background:var(--color-primary-soft);border-color:#04adef4d;color:var(--color-primary);transform:translateY(-1px)}.chat-suggestion-chip.small{padding:5px 12px;font-size:11px}.chat-message{display:flex;gap:12px;align-items:flex-start;animation:chatFadeIn .3s ease}.chat-message-user{flex-direction:row-reverse}.chat-message-avatar{width:30px;height:30px;border-radius:var(--radius-md);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12px}.chat-message-user .chat-message-avatar{background:#04adef1a;color:var(--color-primary)}.chat-message-assistant .chat-message-avatar{background:linear-gradient(135deg,#6366f11f,#a855f71f);color:#6366f1}.chat-message-body{max-width:85%;display:flex;flex-direction:column;gap:10px}.chat-message-user .chat-message-body{align-items:flex-end}.chat-message-text{padding:12px 16px;border-radius:var(--radius-lg);font-size:13px;line-height:1.6}.chat-message-user .chat-message-text{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.chat-message-assistant .chat-message-text{background:var(--color-bg-card);color:var(--color-text);border-bottom-left-radius:4px;border:1px solid var(--color-border)}.chat-typing{display:flex;gap:5px;padding:14px 18px;background:var(--color-bg-card);border-radius:var(--radius-lg);border-bottom-left-radius:4px;border:1px solid var(--color-border)}.chat-typing span{width:7px;height:7px;border-radius:50%;background:var(--color-text-muted);animation:typingBounce 1.4s infinite}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.3}30%{transform:translateY(-5px);opacity:1}}@keyframes chatFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-data-table-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg-card)}.chat-data-meta{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:11px;color:var(--color-text-muted);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);font-weight:600}.chat-data-table-scroll{overflow-x:auto;max-height:320px;overflow-y:auto}.chat-data-table{width:100%;border-collapse:collapse;font-size:12px}.chat-data-table th{padding:10px 14px;text-align:left;font-weight:700;background:var(--color-bg-tertiary);color:var(--color-text-muted);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:1;white-space:nowrap;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.chat-data-table td{padding:8px 14px;border-bottom:1px solid rgba(0,0,0,.04);white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis}.chat-data-table tbody tr:hover{background:var(--color-bg-tertiary)}.chat-sql-toggle{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:var(--radius-md);font-size:11px;background:transparent;border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;transition:all .2s;font-weight:500}.chat-sql-toggle:hover{color:var(--color-primary);border-color:#04adef4d}.chat-sql-block{background:#0f172a;color:#e2e8f0;padding:14px 18px;border-radius:var(--radius-md);font-size:11px;font-family:var(--font-mono);overflow-x:auto;white-space:pre-wrap;word-break:break-all;line-height:1.7;margin:0}.chat-input-bar{display:flex;gap:10px;padding:14px 18px;border-top:1px solid var(--color-border);background:var(--color-bg-card)}.chat-input{flex:1;padding:11px 16px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);font-size:13px;color:var(--color-text);outline:none;transition:border-color .2s;font-family:var(--font-family)}.chat-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #04adef1a}.chat-input:disabled{opacity:.5}.chat-send-btn{width:42px;height:42px;border-radius:var(--radius-md);border:none;background:linear-gradient(135deg,var(--color-primary),#0295d6);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:var(--shadow-sm)}.chat-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:var(--shadow-md),var(--shadow-glow)}.chat-send-btn:disabled{opacity:.35;cursor:not-allowed}.chat-followup-chips{display:flex;gap:8px;padding:10px 18px;overflow-x:auto;border-top:1px solid var(--color-border);background:var(--color-bg-card);scrollbar-width:none}.chat-followup-chips::-webkit-scrollbar{display:none}.cockpit-account-filter{position:relative;min-width:220px}.cockpit-account-search-input{width:100%;padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-size:12px;font-family:inherit;outline:none;transition:border-color .2s}.cockpit-account-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #6366f11f}.cockpit-account-search-input::placeholder{color:var(--color-text-muted)}.cockpit-account-selected{display:flex;align-items:center;gap:6px;padding:5px 8px 5px 12px;border:1px solid var(--color-primary);border-radius:var(--radius);background:#6366f10f;font-size:12px;white-space:nowrap}.cockpit-account-selected-name{font-weight:600;color:var(--color-text);max-width:180px;overflow:hidden;text-overflow:ellipsis}.cockpit-account-selected-code{color:var(--color-text-muted);font-size:10px;font-family:var(--font-mono)}.cockpit-account-clear{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:16px;line-height:1;padding:0 2px;margin-left:2px;border-radius:4px;transition:color .15s,background .15s}.cockpit-account-clear:hover{color:#ef4444;background:#ef444414}.cockpit-account-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 8px 24px #0000001f;max-height:240px;overflow-y:auto;z-index:100}.cockpit-account-option{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;cursor:pointer;transition:background .12s;gap:8px}.cockpit-account-option:hover{background:#6366f10f}.cockpit-account-option-name{font-size:12px;font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cockpit-account-option-code{font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);flex-shrink:0}.invoices-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);gap:var(--space-3)}.invoices-header h1{margin:0;font-size:var(--text-xl);font-weight:var(--font-bold);display:flex;align-items:center;gap:var(--space-2)}.invoices-title{display:flex;align-items:baseline;gap:var(--space-3)}.invoices-title>span{color:var(--color-text-muted);font-size:var(--text-sm)}.invoice-filter-panel{padding:var(--space-3);margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-primary);box-shadow:var(--shadow-sm)}.invoice-search{min-height:42px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-muted);transition:border-color .15s,box-shadow .15s}.invoice-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-brand-light)}.invoice-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--color-text-primary);font:inherit;font-size:var(--text-sm)}.invoice-search-clear{width:26px;height:26px;padding:0;display:grid;place-items:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer}.invoice-search-clear:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.invoices-filters{display:flex;gap:var(--space-2);align-items:flex-end;flex-wrap:wrap;margin-top:var(--space-3)}.invoices-filters .select{width:auto;min-width:140px;height:36px;font-size:var(--text-xs)}.invoice-date-filter{display:flex;align-items:center;gap:var(--space-2);height:36px;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-muted);font-size:var(--text-xs)}.invoice-date-filter input{min-width:116px;padding:0;border:0;outline:0;background:transparent;color:var(--color-text-primary);font:inherit}.invoice-clear-filters{min-height:36px}.invoice-list-loading{min-height:240px;display:flex;align-items:center;justify-content:center}.invoice-register{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-primary);box-shadow:var(--shadow-sm)}.invoice-table-scroll{overflow-x:auto}.invoices-table{width:100%;min-width:1120px;border-collapse:separate;border-spacing:0;font-size:var(--text-sm)}.invoices-table th{text-align:left;padding:var(--space-3);font-weight:var(--font-semibold);color:var(--color-text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);position:sticky;top:0;z-index:1}.invoices-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border-light);vertical-align:middle}.invoices-table tr:hover td{background:var(--color-bg-secondary)}.invoices-table tr{cursor:pointer;transition:background .15s}.invoice-mono{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-primary);font-weight:600;white-space:nowrap}.invoice-primary-text{font-size:var(--text-xs);white-space:nowrap}.invoice-secondary-text{max-width:210px;margin-top:2px;overflow:hidden;color:var(--color-text-muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.invoice-person{max-width:220px;display:flex;align-items:center;gap:5px;font-size:var(--text-xs)}.invoice-person span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-muted,.invoice-source,.invoice-issued{color:var(--color-text-muted);font-size:var(--text-xs);white-space:nowrap}.invoice-amount{color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap}.invoice-amount-total{font-weight:600}.invoice-amount.is-paid{color:var(--color-success)}.invoice-pagination{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs)}.invoice-pagination-actions{display:flex;align-items:center;gap:var(--space-3)}@media(max-width:900px){.invoice-filter-panel{padding:var(--space-2)}.invoices-filters .select,.invoice-date-filter{flex:1 1 145px}.invoice-pagination{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.invoices-title{align-items:flex-start;flex-direction:column;gap:2px}.invoice-search input::placeholder{color:transparent}.invoice-date-filter span{display:none}.invoice-pagination-actions{width:100%;justify-content:space-between}}:root{--portal-primary: #6366f1;--portal-primary-dark: #4f46e5;--portal-primary-light: #818cf8;--portal-bg: #0f1117;--portal-surface: #1a1d27;--portal-surface-2: #22252f;--portal-border: rgba(255, 255, 255, .08);--portal-text: #e2e8f0;--portal-text-muted: #94a3b8;--portal-success: #10b981;--portal-warning: #f59e0b;--portal-danger: #ef4444;--portal-radius: 12px;--portal-radius-sm: 8px}.portal-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--portal-bg);background-image:radial-gradient(at 20% 50%,rgba(99,102,241,.12) 0%,transparent 50%),radial-gradient(at 80% 20%,rgba(139,92,246,.08) 0%,transparent 50%);padding:20px}.portal-login-card{width:100%;max-width:420px;background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:20px;padding:40px;box-shadow:0 20px 60px #0006}.portal-login-card .portal-logo{text-align:center;margin-bottom:32px}.portal-login-card .portal-logo h1{font-size:24px;color:#fff;margin:0;font-weight:700;letter-spacing:-.5px}.portal-login-card .portal-logo p{font-size:13px;color:var(--portal-text-muted);margin:6px 0 0}.portal-login-card .portal-logo .logo-icon{display:inline-flex;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--portal-primary),#8b5cf6);align-items:center;justify-content:center;margin-bottom:16px;color:#fff}.portal-field{margin-bottom:20px}.portal-field label{display:block;font-size:12px;font-weight:600;color:var(--portal-text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.portal-field input{width:100%;padding:12px 16px;background:var(--portal-surface-2);border:1px solid var(--portal-border);border-radius:var(--portal-radius-sm);color:var(--portal-text);font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box}.portal-field input:focus{border-color:var(--portal-primary);box-shadow:0 0 0 3px #6366f126}.portal-login-btn{width:100%;padding:13px;background:linear-gradient(135deg,var(--portal-primary),var(--portal-primary-dark));color:#fff;border:none;border-radius:var(--portal-radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.portal-login-btn:hover{opacity:.92;transform:translateY(-1px)}.portal-login-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.portal-login-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:var(--portal-radius-sm);padding:10px 14px;color:var(--portal-danger);font-size:13px;margin-bottom:16px}.portal-shell{min-height:100vh;background:var(--portal-bg);color:var(--portal-text)}.portal-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:64px;background:var(--portal-surface);border-bottom:1px solid var(--portal-border);position:sticky;top:0;z-index:100}.portal-topbar-left{display:flex;align-items:center;gap:12px}.portal-topbar-left .topbar-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--portal-primary),#8b5cf6);display:flex;align-items:center;justify-content:center;color:#fff}.portal-topbar-left h2{font-size:16px;margin:0;color:#fff;font-weight:600}.portal-topbar-left span{font-size:11px;color:var(--portal-text-muted)}.portal-nav{display:flex;gap:4px}.portal-nav a{padding:8px 16px;font-size:13px;font-weight:500;color:var(--portal-text-muted);text-decoration:none;border-radius:var(--portal-radius-sm);transition:all .2s;display:flex;align-items:center;gap:6px}.portal-nav a:hover{color:#fff;background:var(--portal-surface-2)}.portal-nav a.active{color:#fff;background:#6366f126}.portal-topbar-right{display:flex;align-items:center;gap:12px}.portal-user-badge{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--portal-text-muted)}.portal-user-badge .avatar{width:32px;height:32px;border-radius:50%;background:var(--portal-surface-2);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--portal-primary-light)}.portal-logout-btn{padding:6px 12px;background:transparent;border:1px solid var(--portal-border);border-radius:6px;color:var(--portal-text-muted);font-size:12px;cursor:pointer;transition:all .2s}.portal-logout-btn:hover{color:var(--portal-danger);border-color:var(--portal-danger)}.portal-content{padding:32px;max-width:1200px;margin:0 auto}.portal-property-selector{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--portal-surface-2);border:1px solid var(--portal-border);border-radius:var(--portal-radius-sm);position:relative;transition:border-color .2s}.portal-property-selector:hover,.portal-property-selector:focus-within{border-color:var(--portal-primary)}.portal-property-dropdown{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:none;color:var(--portal-text);font-size:13px;font-weight:500;outline:none;cursor:pointer;padding-right:16px;max-width:220px}.portal-property-dropdown option{background:var(--portal-surface);color:var(--portal-text)}.portal-property-indicator{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--portal-surface-2);border:1px solid var(--portal-border);border-radius:var(--portal-radius-sm);font-size:13px;color:var(--portal-text-muted)}.portal-dash-welcome{margin-bottom:32px}.portal-dash-welcome h1{font-size:28px;margin:0;color:#fff;font-weight:700}.portal-dash-welcome p{font-size:14px;color:var(--portal-text-muted);margin:6px 0 0}.portal-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:32px}.portal-stat-card{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);padding:20px;transition:border-color .2s}.portal-stat-card:hover{border-color:var(--portal-primary)}.portal-stat-card .stat-label{font-size:11px;color:var(--portal-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.portal-stat-card .stat-value{font-size:28px;font-weight:700;color:#fff}.portal-stat-card .stat-value.money{font-family:JetBrains Mono,monospace;font-size:22px}.portal-stat-card .stat-value.success{color:var(--portal-success)}.portal-stat-card .stat-value.warning{color:var(--portal-warning)}.portal-stat-card .stat-value.danger{color:var(--portal-danger)}.portal-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.portal-section-header h2{font-size:18px;margin:0;color:#fff}.portal-card{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);overflow:hidden}.portal-table{width:100%;border-collapse:collapse}.portal-table th{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;color:var(--portal-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--portal-border);background:var(--portal-surface-2)}.portal-table td{padding:12px 16px;font-size:13px;border-bottom:1px solid var(--portal-border)}.portal-table tbody tr{transition:background .15s;cursor:pointer}.portal-table tbody tr:hover{background:var(--portal-surface-2)}.portal-table tbody tr:last-child td{border-bottom:none}.portal-mono{font-family:JetBrains Mono,monospace;font-size:12px}.portal-badge{display:inline-flex;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.portal-badge.confirmed{background:#10b9811f;color:var(--portal-success)}.portal-badge.checkedin{background:#6366f11f;color:var(--portal-primary-light)}.portal-badge.checkedout{background:#94a3b81f;color:var(--portal-text-muted)}.portal-badge.cancelled{background:#ef44441f;color:var(--portal-danger)}.portal-badge.noshow{background:#f59e0b1f;color:var(--portal-warning)}.portal-badge.issued{background:#6366f11f;color:var(--portal-primary-light)}.portal-badge.paid{background:#10b9811f;color:var(--portal-success)}.portal-badge.overdue{background:#ef44441f;color:var(--portal-danger)}.portal-badge.draft{background:#94a3b81f;color:var(--portal-text-muted)}.portal-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--portal-radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.portal-btn-primary{background:linear-gradient(135deg,var(--portal-primary),var(--portal-primary-dark));color:#fff}.portal-btn-primary:hover{opacity:.9;transform:translateY(-1px)}.portal-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.portal-btn-secondary{background:var(--portal-surface-2);color:var(--portal-text);border:1px solid var(--portal-border)}.portal-btn-secondary:hover{border-color:var(--portal-primary)}.portal-btn-sm{padding:6px 14px;font-size:12px}.portal-booking-form{display:flex;flex-direction:column;gap:24px}.portal-form-section{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);padding:24px}.portal-form-section h3{font-size:15px;margin:0 0 16px;color:#fff;display:flex;align-items:center;gap:8px}.portal-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.portal-form-row:last-child{margin-bottom:0}.portal-form-group{display:flex;flex-direction:column;gap:6px}.portal-form-group label{font-size:12px;font-weight:600;color:var(--portal-text-muted);text-transform:uppercase;letter-spacing:.5px}.portal-form-group input,.portal-form-group select,.portal-form-group textarea{padding:10px 14px;background:var(--portal-surface-2);border:1px solid var(--portal-border);border-radius:8px;color:var(--portal-text);font-size:13px;outline:none;transition:border-color .2s}.portal-form-group input:focus,.portal-form-group select:focus,.portal-form-group textarea:focus{border-color:var(--portal-primary)}.portal-room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.portal-room-card{background:var(--portal-surface-2);border:2px solid var(--portal-border);border-radius:var(--portal-radius);padding:20px;transition:all .2s;cursor:pointer}.portal-room-card:hover{border-color:var(--portal-primary)}.portal-room-card.selected{border-color:var(--portal-primary);background:#6366f114}.portal-room-card.unavailable{opacity:.4;cursor:not-allowed}.portal-room-card h4{font-size:16px;margin:0 0 8px;color:#fff}.portal-room-card .room-rate{font-size:22px;font-weight:700;color:var(--portal-primary-light);font-family:JetBrains Mono,monospace}.portal-room-card .room-rate span{font-size:13px;color:var(--portal-text-muted);font-weight:400;font-family:inherit}.portal-room-card .room-meta{display:flex;gap:12px;margin-top:10px;font-size:12px;color:var(--portal-text-muted)}.portal-room-card .contracted-tag{display:inline-flex;padding:2px 8px;background:#10b9811f;color:var(--portal-success);border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase;margin-top:8px}.portal-empty{text-align:center;padding:60px 20px;color:var(--portal-text-muted)}.portal-empty svg{margin-bottom:16px;opacity:.3}.portal-empty h3{color:#fff;margin:0 0 8px}.portal-empty p{font-size:14px}.portal-loading{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--portal-text-muted);gap:12px}.portal-summary{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);padding:24px}.portal-summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px}.portal-summary-row .label{color:var(--portal-text-muted)}.portal-summary-row .value{color:#fff;font-weight:600}.portal-summary-row.grand{border-top:2px solid var(--portal-border);margin-top:8px;padding-top:16px;font-size:18px}.portal-summary-row.grand .value{color:var(--portal-primary-light);font-family:JetBrains Mono,monospace}.portal-filters{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.portal-search{display:flex;align-items:center;gap:8px;padding:8px 14px;background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius-sm);flex:1;min-width:200px}.portal-search input{background:transparent;border:none;color:var(--portal-text);font-size:13px;outline:none;width:100%}.portal-filter-select{padding:8px 14px;background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius-sm);color:var(--portal-text);font-size:13px;outline:none}@keyframes portal-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.portal-spin{animation:portal-spin 1s linear infinite}@media(max-width:768px){.portal-topbar{padding:0 16px}.portal-nav{display:none}.portal-content{padding:16px}.portal-stats{grid-template-columns:repeat(2,1fr)}.portal-form-row,.portal-room-grid{grid-template-columns:1fr}}.fnb-outlets-page{padding:0}.fnb-outlets-page .page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.fnb-outlets-page .page-header h1{font-size:1.6rem;font-weight:700;display:flex;align-items:center;gap:.5rem;color:var(--color-text)}.fnb-outlets-page .outlet-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.outlet-card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);overflow:hidden;transition:transform .2s,box-shadow .2s;cursor:pointer;box-shadow:var(--shadow-sm)}.outlet-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-border-hover)}.outlet-card-header{padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem;border-bottom:1px solid var(--color-border)}.outlet-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.outlet-icon.restaurant{background:linear-gradient(135deg,#f97316,#ea580c)}.outlet-icon.bar{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.outlet-icon.lounge{background:linear-gradient(135deg,#06b6d4,#0891b2)}.outlet-icon.cafe{background:linear-gradient(135deg,#d97706,#b45309)}.outlet-icon.roomservice{background:linear-gradient(135deg,#10b981,#059669)}.outlet-icon.banquet{background:linear-gradient(135deg,#ec4899,#db2777)}.outlet-icon.poolbar{background:linear-gradient(135deg,#3b82f6,#2563eb)}.outlet-card-info h3{font-size:1.05rem;font-weight:600;margin:0 0 .25rem;color:var(--color-text)}.outlet-card-info .code-badge,.code-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-sm);background:var(--color-bg-tertiary);color:var(--color-text-secondary);letter-spacing:.5px;font-family:var(--font-mono)}.outlet-card-body{padding:1rem 1.5rem}.outlet-stat-row{display:flex;gap:1.5rem;margin-bottom:.75rem}.outlet-stat{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--color-text-secondary)}.outlet-stat .num{font-weight:600;color:var(--color-text)}.outlet-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.outlet-tag{font-size:.72rem;padding:3px 10px;border-radius:var(--radius-full);background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-weight:500}.outlet-tag.active{background:var(--color-success-soft);color:#059669}.outlet-tag.inactive{background:var(--color-danger-soft);color:#dc2626}.outlet-card-actions{padding:.75rem 1.5rem;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:.5rem}.fnb-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s}.fnb-modal{background:var(--color-bg-secondary);border-radius:var(--radius-xl);border:1px solid var(--color-border);width:90%;max-width:640px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp .25s}.fnb-modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.fnb-modal-header h2{font-size:1.15rem;font-weight:600;margin:0;color:var(--color-text)}.fnb-modal-body{padding:1.5rem}.fnb-modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:.75rem}.fnb-form-group{margin-bottom:1.15rem}.fnb-form-group label{display:block;font-size:var(--text-xs);font-weight:var(--font-semibold);margin-bottom:.4rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.fnb-form-group input,.fnb-form-group select,.fnb-form-group textarea{width:100%;padding:.6rem .85rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-input);color:var(--color-text);font-size:.9rem;font-family:var(--font-family);transition:border-color var(--transition-fast)}.fnb-form-group input:focus,.fnb-form-group select:focus,.fnb-form-group textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-soft)}.fnb-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.fnb-form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.btn-fnb{padding:.55rem 1.15rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);border:none;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all var(--transition-fast);font-family:var(--font-family)}.btn-fnb.primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-fnb.primary:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-md),var(--shadow-glow)}.btn-fnb.secondary{background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-fnb.secondary:hover{background:var(--color-bg-card-hover);border-color:var(--color-border-hover);color:var(--color-text)}.btn-fnb.danger{background:var(--color-danger-soft);color:var(--color-danger)}.btn-fnb.danger:hover{background:#fecaca}.btn-fnb.sm{padding:.35rem .75rem;font-size:var(--text-xs)}.btn-fnb.icon-only{padding:.4rem;border-radius:var(--radius-sm)}.fnb-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:1.5rem}.fnb-tab{padding:.75rem 1.25rem;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);cursor:pointer;border-bottom:2px solid transparent;transition:color var(--transition-fast),border-color var(--transition-fast);background:none;border-top:none;border-left:none;border-right:none;font-family:var(--font-family);display:inline-flex;align-items:center;gap:.4rem}.fnb-tab:hover{color:var(--color-text)}.fnb-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.table-card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:1rem;text-align:center;transition:transform var(--transition-fast),box-shadow var(--transition-fast);position:relative;box-shadow:var(--shadow-sm)}.table-card:hover{transform:scale(1.03);box-shadow:var(--shadow-md)}.table-card .table-number{font-size:1.3rem;font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.table-card .table-capacity{font-size:.78rem;color:var(--color-text-secondary);margin-bottom:.5rem}.table-status-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px}.table-status-badge.available{background:var(--color-success-soft);color:#059669}.table-status-badge.occupied{background:var(--color-danger-soft);color:#dc2626}.table-status-badge.reserved{background:var(--color-warning-soft);color:#d97706}.table-status-badge.blocked{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.table-card-actions{margin-top:.75rem;display:flex;justify-content:center;gap:.4rem;flex-wrap:wrap}.fnb-empty{text-align:center;padding:3rem 1.5rem;color:var(--color-text-secondary)}.fnb-empty .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.4}.fnb-empty h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:var(--color-text)}.fnb-empty p{font-size:var(--text-sm);max-width:320px;margin:0 auto 1.25rem}.fnb-item-card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:1rem 1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast)}.fnb-item-card:hover{box-shadow:var(--shadow-md)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.fnb-stat-card{display:flex;align-items:center;gap:.85rem;padding:1rem 1.15rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .15s}.fnb-stat-card:hover{box-shadow:var(--shadow-md)}.fnb-stat-icon{width:42px;height:42px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fnb-stat-value{font-size:1.35rem;font-weight:800;line-height:1.1}.fnb-stat-label{font-size:.72rem;color:var(--color-text-secondary);font-weight:500;margin-top:2px}.kds-container{display:flex;flex-direction:column;height:100vh;background:#0f0f13;color:#e4e4e7;overflow:hidden}.kds-topbar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:#18181b;border-bottom:1px solid #27272a;flex-shrink:0;gap:.5rem}.kds-topbar-left,.kds-topbar-right{display:flex;align-items:center;gap:.5rem}.kds-topbar-center{display:flex;align-items:center;gap:4px;background:#27272a;border-radius:8px;padding:3px}.kds-title{font-size:.95rem;font-weight:700;color:#fafafa;white-space:nowrap}.kds-badge{font-size:.68rem;font-weight:600;background:#f9731626;color:#fb923c;padding:2px 8px;border-radius:10px;white-space:nowrap}.kds-icon-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid #3f3f46;border-radius:6px;color:#a1a1aa;cursor:pointer;transition:all .15s}.kds-icon-btn:hover{background:#27272a;color:#fafafa;border-color:#52525b}.kds-filter-btn{padding:4px 10px;border:none;background:transparent;color:#71717a;font-size:.72rem;font-weight:600;font-family:var(--font-family);border-radius:6px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:4px;white-space:nowrap}.kds-filter-btn:hover{color:#d4d4d8}.kds-filter-btn.active{background:#3f3f46;color:#fafafa}.kds-filter-count{font-size:.62rem;background:#f9731640;color:#fb923c;padding:0 5px;border-radius:8px;min-width:16px;text-align:center}.kds-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#52525b}.kds-empty p{font-size:1rem;font-weight:500}.kds-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.65rem;padding:.65rem;overflow-y:auto;align-content:start}.kds-ticket{border-radius:10px;border:1px solid #27272a;border-top:4px solid #52525b;display:flex;flex-direction:column;overflow:hidden;transition:transform .12s;animation:kdsSlideIn .2s ease-out}@keyframes kdsSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kds-ticket-header{display:flex;align-items:center;justify-content:space-between;padding:.55rem .7rem}.kds-ticket-id{display:flex;align-items:baseline;gap:.4rem}.kds-order-num{font-size:1.1rem;font-weight:800;color:#fafafa;font-family:var(--font-mono, monospace)}.kds-order-label{font-size:.72rem;color:#a1a1aa;font-weight:600}.kds-ticket-timer{display:flex;align-items:center;gap:3px;font-size:.75rem;font-weight:700;font-family:var(--font-mono, monospace)}.kds-status-ribbon{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#fff;text-align:center;padding:2px 0}.kds-ticket-items{padding:0 .5rem;flex:1}.kds-item{padding:.4rem .25rem;border-bottom:1px solid #27272a;cursor:pointer;transition:background .12s;position:relative}.kds-item:last-child{border-bottom:none}.kds-item:hover:not(.done){background:#ffffff08}.kds-item.done{opacity:.4;text-decoration:line-through;cursor:default}.kds-item-main{display:flex;align-items:baseline;gap:.35rem}.kds-item-qty{font-size:1rem;font-weight:800;color:#fafafa;min-width:24px;font-family:var(--font-mono, monospace)}.kds-item-name{font-size:.82rem;font-weight:600;color:#e4e4e7}.kds-item-portion{font-size:.65rem;color:#71717a;font-weight:500}.kds-item-mods{display:flex;flex-wrap:wrap;gap:3px;padding-left:28px;margin-top:2px}.kds-mod{font-size:.62rem;background:#6366f126;color:#a5b4fc;padding:1px 5px;border-radius:4px;font-weight:500}.kds-item-note{font-size:.68rem;color:#fbbf24;padding-left:28px;margin-top:2px;font-weight:500}.kds-item-check{position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#22c55e}.kds-order-note{padding:.35rem .7rem;font-size:.7rem;color:#fbbf24;background:#fbbf240f;border-top:1px solid #27272a;font-weight:500}.kds-bump-btn{display:block;width:100%;padding:.55rem;border:none;color:#fff;font-size:.78rem;font-weight:700;font-family:var(--font-family);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:all .12s}.kds-bump-btn:hover{filter:brightness(1.15)}.kds-bump-btn:active{transform:scale(.98)}.fnb-inv-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:1.25rem}.fnb-inv-tab{padding:.7rem 1.15rem;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-secondary);cursor:pointer;border:none;border-bottom:2px solid transparent;background:none;font-family:var(--font-family);display:inline-flex;align-items:center;gap:.4rem;transition:color var(--transition-fast),border-color var(--transition-fast)}.fnb-inv-tab:hover{color:var(--color-text)}.fnb-inv-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.fnb-inv-tab-count{font-size:.68rem;font-weight:600;background:var(--color-bg-tertiary);color:var(--color-text-secondary);padding:1px 7px;border-radius:var(--radius-full);min-width:18px;text-align:center}.fnb-inv-tab-badge{font-size:.62rem;font-weight:700;background:var(--color-danger, #ef4444);color:#fff;padding:1px 6px;border-radius:var(--radius-full);min-width:16px;text-align:center;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.fnb-inv-toolbar{display:flex;align-items:center;gap:.65rem;margin-bottom:1rem;flex-wrap:wrap}.fnb-inv-search{display:flex;align-items:center;gap:.4rem;background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.45rem .75rem;min-width:220px;transition:border-color var(--transition-fast)}.fnb-inv-search:focus-within{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-soft)}.fnb-inv-search input{border:none;background:transparent;outline:none;color:var(--color-text);font-size:.85rem;width:100%;font-family:var(--font-family)}.fnb-inv-search svg{color:var(--color-text-secondary);flex-shrink:0}.fnb-inv-filter-select{padding:.45rem .75rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-input);color:var(--color-text);font-size:.85rem;font-family:var(--font-family);cursor:pointer}.fnb-inv-table-wrap{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.fnb-inv-table{width:100%;border-collapse:collapse;font-size:.85rem}.fnb-inv-table thead{background:var(--color-bg-tertiary)}.fnb-inv-table th{padding:.65rem .85rem;text-align:left;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);white-space:nowrap}.fnb-inv-table td{padding:.6rem .85rem;border-bottom:1px solid var(--color-border);color:var(--color-text);vertical-align:middle}.fnb-inv-table tbody tr:last-child td{border-bottom:none}.fnb-inv-table tbody tr{transition:background var(--transition-fast)}.fnb-inv-table tbody tr:hover{background:var(--color-bg-card-hover)}.low-stock-row{background:#ef44440a!important}.low-stock-row:hover{background:#ef444414!important}.fnb-inv-name-cell{display:flex;flex-direction:column;gap:2px}.fnb-inv-name-cell strong{font-weight:600}.fnb-inv-sku{font-size:.7rem;font-family:var(--font-mono);color:var(--color-text-secondary);letter-spacing:.3px}.fnb-inv-cat-tag{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-bg-tertiary);color:var(--color-text-secondary);white-space:nowrap}.fnb-inv-stock-cell{display:flex;flex-direction:column;gap:3px;min-width:70px}.fnb-inv-stock-num{font-size:.95rem;font-weight:700;font-family:var(--font-mono, monospace)}.fnb-inv-stock-bar{width:100%;height:4px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.fnb-inv-stock-fill{height:100%;border-radius:var(--radius-full);transition:width .3s ease}.fnb-inv-actions{display:flex;align-items:center;gap:.2rem}.fnb-inv-movement-type{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}.fnb-inv-movement-type.received{background:#22c55e1f;color:#22c55e}.fnb-inv-movement-type.consumed{background:#ef44441a;color:#ef4444}.fnb-inv-movement-type.wastage{background:#f973161a;color:#f97316}.fnb-inv-movement-type.adjustment{background:#6366f11a;color:#6366f1}.fnb-inv-movement-type.transfer{background:#0ea5e91a;color:#0ea5e9}.fnb-inv-movement-type.return{background:#a855f71a;color:#a855f7}.fnb-inv-alert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:.85rem}.fnb-inv-alert-card{display:flex;align-items:center;gap:.85rem;padding:1rem 1.15rem;background:var(--color-bg-card);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast)}.fnb-inv-alert-card:hover{box-shadow:var(--shadow-md)}.fnb-inv-alert-icon{width:38px;height:38px;border-radius:var(--radius-md);background:#ef44441a;color:#ef4444;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fnb-inv-alert-body{flex:1;min-width:0}.fnb-inv-alert-body h4{margin:0;font-size:.92rem;font-weight:600;color:var(--color-text)}.fnb-inv-alert-meta{margin-top:3px}.fnb-inv-alert-stock{display:flex;align-items:center;gap:.35rem;margin-top:4px;font-size:.78rem}.fnb-inv-alert-stock .current{font-weight:700;color:#ef4444}.fnb-inv-alert-stock .divider,.fnb-inv-alert-stock .reorder{color:var(--color-text-secondary)}.fnb-inv-adjust-current{background:var(--color-bg-tertiary);border-radius:var(--radius-md);padding:.65rem .85rem;font-size:.85rem;color:var(--color-text-secondary);margin-bottom:1.15rem}.fnb-inv-adjust-current strong{color:var(--color-text);font-weight:700}.btn-warning{background:#f59e0b1f!important;color:#f59e0b!important;border:1px solid rgba(245,158,11,.25)!important}.btn-warning:hover{background:#f59e0b33!important}.btn-xs{padding:.2rem .35rem!important;font-size:.72rem!important}.fnb-inv-type-pills{display:flex;flex-wrap:wrap;gap:.35rem}.fnb-inv-type-pill{padding:.35rem .75rem;border-radius:var(--radius-full);font-size:.78rem;font-weight:600;border:1px solid var(--color-border);background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;transition:all .15s;font-family:var(--font-family)}.fnb-inv-type-pill:hover{border-color:var(--color-border-hover);color:var(--color-text)}.fnb-inv-type-pill.active.negative{background:#ef44441f;border-color:#ef44444d;color:#ef4444}.fnb-inv-type-pill.active.positive{background:#22c55e1f;border-color:#22c55e4d;color:#22c55e}.csv-bulk-modal{overflow:hidden!important}.csv-drop-zone{border:2px dashed var(--color-border);border-radius:var(--radius-xl);padding:2.5rem 2rem;text-align:center;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:var(--color-bg-tertiary)}.csv-drop-zone:hover{border-color:var(--color-primary);background:#0ea5e90a}.csv-drop-zone.drag-over{border-color:var(--color-primary);background:#0ea5e90f;transform:scale(1.005)}.csv-drop-heading{font-size:1.05rem;font-weight:700;color:var(--color-text);margin-top:.25rem}.csv-drop-desc{font-size:.82rem;color:var(--color-text-secondary);max-width:340px}.csv-drop-desc strong{color:var(--color-text)}.csv-template-link{background:none;border:none;color:var(--color-primary);font-size:.82rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-family);padding:.35rem 0;transition:opacity .15s}.csv-template-link:hover{opacity:.8;text-decoration:underline}.csv-error-banner{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger, #ef4444);font-size:.8rem;margin-top:.75rem}.csv-error-banner svg{flex-shrink:0;margin-top:1px}.csv-preview-wrap{max-height:360px;overflow:auto;border-radius:var(--radius-md);border:1px solid var(--color-border)}.csv-preview-table{width:100%;border-collapse:collapse;font-size:.78rem;white-space:nowrap}.csv-preview-table th{background:var(--color-bg-tertiary);padding:.5rem .65rem;text-align:left;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;position:sticky;top:0;z-index:1;border-bottom:1px solid var(--color-border)}.csv-preview-table td{padding:.4rem .65rem;border-bottom:1px solid var(--color-border);color:var(--color-text);max-width:160px;overflow:hidden;text-overflow:ellipsis}.csv-preview-table tbody tr:last-child td{border-bottom:none}.csv-preview-table tbody tr:hover{background:var(--color-bg-card-hover, rgba(255,255,255,.03))}.csv-required-star{color:var(--color-danger, #ef4444);margin-left:2px;font-weight:700}.csv-row-num{color:var(--color-text-secondary);font-family:var(--font-mono, monospace);font-size:.72rem}.csv-row-warning{background:#ef44440a!important}.csv-cell-error{background:#ef444414;color:var(--color-danger, #ef4444)!important}.csv-result-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.csv-result-card{display:flex;align-items:center;gap:.75rem;padding:1rem 1.15rem;border-radius:var(--radius-lg);border:1px solid var(--color-border)}.csv-result-card.success{background:#22c55e14;border-color:#22c55e33;color:#22c55e}.csv-result-card.error{background:#ef444414;border-color:#ef444433;color:#ef4444}.csv-result-card.total{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.csv-result-num{font-size:1.5rem;font-weight:800;line-height:1}.csv-result-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:2px}:root{--qr-bg: #0f0f0f;--qr-surface: #1a1a1a;--qr-surface-2: #242424;--qr-surface-3: #2e2e2e;--qr-border: #333;--qr-text: #f5f5f5;--qr-text-secondary: #999;--qr-text-muted: #666;--qr-accent: #f59e0b;--qr-accent-light: #fbbf24;--qr-accent-dark: #d97706;--qr-success: #22c55e;--qr-error: #ef4444;--qr-veg: #22c55e;--qr-nonveg: #ef4444;--qr-radius: 12px;--qr-radius-lg: 16px;--qr-radius-xl: 24px;--qr-shadow: 0 4px 24px rgba(0,0,0,.4);--qr-font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif}.qr-page{min-height:100dvh;background:var(--qr-bg);color:var(--qr-text);font-family:var(--qr-font);overflow-x:hidden;-webkit-font-smoothing:antialiased}.qr-page *{box-sizing:border-box}.qr-splash{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;gap:16px;padding:32px}.qr-splash-logo{width:72px;height:72px;border-radius:16px;object-fit:cover;border:2px solid var(--qr-border)}.qr-splash-name{font-size:20px;font-weight:600;color:var(--qr-text);margin:0}.qr-splash-sub{font-size:14px;color:var(--qr-text-secondary);margin:0}.qr-spinner{width:28px;height:28px;border:3px solid var(--qr-border);border-top-color:var(--qr-accent);border-radius:50%;animation:qr-spin .8s linear infinite;margin-top:12px}@keyframes qr-spin{to{transform:rotate(360deg)}}.qr-header{position:sticky;top:0;z-index:100;background:#0f0f0feb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--qr-border);padding:12px 16px;display:flex;align-items:center;gap:12px}.qr-header-logo{width:36px;height:36px;border-radius:8px;object-fit:cover}.qr-header-info{flex:1;min-width:0}.qr-header-info h2{font-size:15px;font-weight:600;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qr-header-info span{font-size:12px;color:var(--qr-text-secondary)}.qr-header-table{background:var(--qr-accent);color:#000;font-size:12px;font-weight:700;padding:4px 10px;border-radius:20px;white-space:nowrap}.qr-categories{position:sticky;top:61px;z-index:90;background:#0f0f0ff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;gap:8px;padding:10px 16px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;border-bottom:1px solid var(--qr-border)}.qr-categories::-webkit-scrollbar{display:none}.qr-category-chip{flex-shrink:0;padding:6px 16px;border-radius:20px;font-size:13px;font-weight:500;border:1px solid var(--qr-border);background:transparent;color:var(--qr-text-secondary);cursor:pointer;transition:all .2s;white-space:nowrap}.qr-category-chip.active{background:var(--qr-accent);color:#000;border-color:var(--qr-accent);font-weight:600}.qr-menu-section{padding:16px}.qr-menu-section-title{font-size:18px;font-weight:700;margin:0 0 12px;color:var(--qr-text)}.qr-item-card{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--qr-border);animation:qr-fadeIn .3s ease}.qr-item-card:last-child{border-bottom:none}@keyframes qr-fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.qr-item-info{flex:1;min-width:0}.qr-item-name-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.qr-diet-dot{width:14px;height:14px;border:2px solid;border-radius:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.qr-diet-dot.veg{border-color:var(--qr-veg)}.qr-diet-dot.veg:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--qr-veg)}.qr-diet-dot.nonveg{border-color:var(--qr-nonveg)}.qr-diet-dot.nonveg:after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:7px solid var(--qr-nonveg)}.qr-item-name{font-size:15px;font-weight:600;margin:0;line-height:1.3}.qr-item-desc{font-size:12px;color:var(--qr-text-secondary);margin:2px 0 6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.qr-item-tags{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:6px}.qr-tag{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--qr-surface-2);color:var(--qr-text-secondary);font-weight:500}.qr-tag.gluten-free{background:#22c55e26;color:var(--qr-veg)}.qr-item-price{font-size:15px;font-weight:700;color:var(--qr-accent-light)}.qr-item-prep{font-size:11px;color:var(--qr-text-muted);margin-left:6px;font-weight:400}.qr-item-right{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.qr-item-photo{width:80px;height:80px;border-radius:var(--qr-radius);object-fit:cover;background:var(--qr-surface-2)}.qr-add-btn{background:transparent;color:var(--qr-accent);border:1.5px solid var(--qr-accent);border-radius:8px;padding:4px 18px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s;font-family:var(--qr-font);text-transform:uppercase;letter-spacing:.5px}.qr-add-btn:active{background:var(--qr-accent);color:#000;transform:scale(.95)}.qr-qty-control{display:flex;align-items:center;gap:0;border:1.5px solid var(--qr-accent);border-radius:8px;overflow:hidden}.qr-qty-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;color:var(--qr-accent);border:none;font-size:16px;font-weight:700;cursor:pointer;transition:background .15s;font-family:var(--qr-font)}.qr-qty-btn:active{background:var(--qr-accent);color:#000}.qr-qty-val{width:24px;text-align:center;font-size:14px;font-weight:700;color:var(--qr-accent)}.qr-cart-bar{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--qr-accent);color:#000;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;animation:qr-slideUp .3s ease;box-shadow:0 -4px 20px #f59e0b4d}@keyframes qr-slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.qr-cart-left{display:flex;flex-direction:column}.qr-cart-items{font-size:13px;font-weight:600}.qr-cart-total{font-size:17px;font-weight:700}.qr-cart-cta{font-size:14px;font-weight:700;text-transform:uppercase;display:flex;align-items:center;gap:4px}.qr-cart-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#0009;animation:qr-fadeOverlay .2s ease}@keyframes qr-fadeOverlay{0%{opacity:0}to{opacity:1}}.qr-cart-sheet{position:fixed;bottom:0;left:0;right:0;z-index:301;background:var(--qr-surface);border-radius:var(--qr-radius-xl) var(--qr-radius-xl) 0 0;max-height:85dvh;overflow-y:auto;animation:qr-slideSheet .3s ease;padding:0 0 100px}@keyframes qr-slideSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.qr-cart-handle{width:40px;height:4px;background:var(--qr-text-muted);border-radius:2px;margin:12px auto 0}.qr-cart-title{font-size:18px;font-weight:700;padding:16px 20px 12px;margin:0}.qr-cart-item{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--qr-border)}.qr-cart-item-info{flex:1;min-width:0}.qr-cart-item-name{font-size:14px;font-weight:600;margin:0}.qr-cart-item-mods{font-size:11px;color:var(--qr-text-secondary);margin-top:2px}.qr-cart-item-price{font-size:14px;font-weight:600;color:var(--qr-accent-light);white-space:nowrap}.qr-cart-special{padding:12px 20px}.qr-cart-special textarea{width:100%;background:var(--qr-surface-2);border:1px solid var(--qr-border);border-radius:var(--qr-radius);color:var(--qr-text);font-family:var(--qr-font);font-size:13px;padding:10px 12px;resize:vertical;min-height:60px;outline:none;transition:border-color .2s}.qr-cart-special textarea:focus{border-color:var(--qr-accent)}.qr-cart-special textarea::placeholder{color:var(--qr-text-muted)}.qr-cart-totals{padding:16px 20px;border-top:1px solid var(--qr-border)}.qr-cart-total-row{display:flex;justify-content:space-between;font-size:13px;color:var(--qr-text-secondary);margin-bottom:6px}.qr-cart-total-row.grand{font-size:16px;font-weight:700;color:var(--qr-text);margin-top:10px;padding-top:10px;border-top:1px solid var(--qr-border)}.qr-place-btn{display:block;width:calc(100% - 40px);margin:16px auto;padding:14px;background:var(--qr-accent);color:#000;font-size:16px;font-weight:700;border:none;border-radius:var(--qr-radius);cursor:pointer;font-family:var(--qr-font);transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.qr-place-btn:active{transform:scale(.98);background:var(--qr-accent-dark)}.qr-place-btn:disabled{opacity:.5;cursor:not-allowed}.qr-auth-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center}.qr-auth-icon{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--qr-accent),var(--qr-accent-dark));display:flex;align-items:center;justify-content:center;color:#000;margin-bottom:20px}.qr-auth-title{font-size:22px;font-weight:700;margin:0 0 8px}.qr-auth-subtitle{font-size:14px;color:var(--qr-text-secondary);margin:0 0 28px;max-width:280px}.qr-phone-input-group{display:flex;align-items:center;gap:8px;margin-bottom:16px;width:100%;max-width:320px}.qr-phone-prefix{background:var(--qr-surface-2);border:1px solid var(--qr-border);border-radius:var(--qr-radius);padding:12px;font-size:15px;font-weight:600;color:var(--qr-text-secondary)}.qr-phone-input{flex:1;background:var(--qr-surface-2);border:1px solid var(--qr-border);border-radius:var(--qr-radius);padding:12px 14px;font-size:16px;font-weight:500;color:var(--qr-text);font-family:var(--qr-font);outline:none;transition:border-color .2s}.qr-phone-input:focus{border-color:var(--qr-accent)}.qr-otp-group{display:flex;gap:8px;margin-bottom:16px}.qr-otp-digit{width:44px;height:52px;background:var(--qr-surface-2);border:1.5px solid var(--qr-border);border-radius:var(--qr-radius);font-size:22px;font-weight:700;color:var(--qr-text);text-align:center;font-family:var(--qr-font);outline:none;transition:border-color .2s;caret-color:var(--qr-accent)}.qr-otp-digit:focus{border-color:var(--qr-accent);box-shadow:0 0 0 2px #f59e0b33}.qr-otp-timer{font-size:13px;color:var(--qr-text-muted);margin-bottom:20px}.qr-otp-resend{background:none;border:none;color:var(--qr-accent);font-family:var(--qr-font);font-size:13px;font-weight:600;cursor:pointer;padding:0}.qr-otp-resend:disabled{color:var(--qr-text-muted);cursor:default}.qr-auth-btn{width:100%;max-width:320px;padding:14px;background:var(--qr-accent);color:#000;font-size:15px;font-weight:700;border:none;border-radius:var(--qr-radius);cursor:pointer;font-family:var(--qr-font);transition:all .2s;margin-top:4px}.qr-auth-btn:active{transform:scale(.98)}.qr-auth-btn:disabled{opacity:.5;cursor:not-allowed}.qr-stay-list{width:100%;max-width:360px;margin:0;padding:0;list-style:none}.qr-stay-option{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--qr-surface);border:1.5px solid var(--qr-border);border-radius:var(--qr-radius);cursor:pointer;margin-bottom:10px;transition:all .2s}.qr-stay-option:hover,.qr-stay-option.selected{border-color:var(--qr-accent);background:#f59e0b0d}.qr-stay-radio{width:18px;height:18px;border:2px solid var(--qr-text-muted);border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color .2s}.qr-stay-option.selected .qr-stay-radio{border-color:var(--qr-accent)}.qr-stay-option.selected .qr-stay-radio:after{content:"";width:9px;height:9px;border-radius:50%;background:var(--qr-accent)}.qr-stay-details h4{font-size:14px;font-weight:600;margin:0 0 2px}.qr-stay-details span{font-size:12px;color:var(--qr-text-secondary)}.qr-confirm-banner{width:100%;max-width:360px;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:var(--qr-radius);padding:14px 16px;margin-bottom:20px}.qr-confirm-banner.walkin{background:#f59e0b1a;border-color:#f59e0b4d}.qr-confirm-banner h4{font-size:14px;font-weight:600;margin:0 0 4px;color:var(--qr-success)}.qr-confirm-banner.walkin h4{color:var(--qr-accent-light)}.qr-confirm-banner p{font-size:13px;color:var(--qr-text-secondary);margin:0}.qr-success-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center}.qr-success-check{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--qr-success),#16a34a);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:20px;animation:qr-checkPop .5s ease}@keyframes qr-checkPop{0%{transform:scale(0)}60%{transform:scale(1.2)}to{transform:scale(1)}}.qr-success-title{font-size:22px;font-weight:700;margin:0 0 6px}.qr-success-order{font-size:14px;color:var(--qr-text-secondary);margin:0 0 24px}.qr-success-order strong{color:var(--qr-accent-light)}.qr-status-tracker{width:100%;max-width:320px;background:var(--qr-surface);border-radius:var(--qr-radius-lg);padding:20px;margin-bottom:24px}.qr-status-step{display:flex;align-items:flex-start;gap:12px;position:relative;padding-bottom:20px}.qr-status-step:last-child{padding-bottom:0}.qr-status-step:before{content:"";position:absolute;left:11px;top:26px;bottom:0;width:2px;background:var(--qr-border)}.qr-status-step:last-child:before{display:none}.qr-status-step.active:before{background:var(--qr-accent)}.qr-status-dot{width:24px;height:24px;border-radius:50%;border:2px solid var(--qr-border);flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--qr-bg);z-index:1}.qr-status-step.done .qr-status-dot{background:var(--qr-accent);border-color:var(--qr-accent);color:#000}.qr-status-step.active .qr-status-dot{border-color:var(--qr-accent);animation:qr-pulse 2s infinite}@keyframes qr-pulse{0%,to{box-shadow:0 0 #f59e0b4d}50%{box-shadow:0 0 0 8px #f59e0b00}}.qr-status-label{font-size:14px;font-weight:500;padding-top:2px;color:var(--qr-text-muted)}.qr-status-step.done .qr-status-label,.qr-status-step.active .qr-status-label{color:var(--qr-text);font-weight:600}.qr-status-time{font-size:11px;color:var(--qr-text-muted);margin-top:2px}.qr-billing-card{width:100%;max-width:320px;background:var(--qr-surface);border-radius:var(--qr-radius);padding:14px 16px}.qr-billing-card h4{font-size:13px;font-weight:600;color:var(--qr-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px}.qr-billing-row{display:flex;justify-content:space-between;font-size:14px;margin-bottom:4px}.qr-billing-row .label{color:var(--qr-text-secondary)}.qr-error-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center}.qr-error-icon{width:56px;height:56px;border-radius:16px;background:#ef444426;display:flex;align-items:center;justify-content:center;color:var(--qr-error);margin-bottom:20px}.qr-error-title{font-size:20px;font-weight:700;margin:0 0 8px}.qr-error-message{font-size:14px;color:var(--qr-text-secondary);margin:0;max-width:300px}.qr-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:var(--qr-surface-2);color:var(--qr-text);padding:10px 20px;border-radius:20px;font-size:13px;font-weight:500;z-index:500;animation:qr-toastIn .3s ease;box-shadow:var(--qr-shadow);white-space:nowrap}@keyframes qr-toastIn{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.qr-room-bridge{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center}.qr-room-logo{width:64px;height:64px;border-radius:14px;object-fit:cover;border:2px solid var(--qr-border);margin-bottom:16px}.qr-room-property{font-size:18px;font-weight:700;margin:0 0 4px}.qr-room-label{font-size:14px;color:var(--qr-text-secondary);margin:0 0 32px}.qr-menu-pad{height:70px}.qr-back-btn{background:none;border:none;color:var(--qr-text-secondary);font-family:var(--qr-font);font-size:14px;cursor:pointer;display:flex;align-items:center;gap:4px;margin-bottom:24px}.qr-back-btn:hover{color:var(--qr-text)}:root{--gp-primary: #c8a97e;--gp-primary-dark: #b08d60;--gp-primary-light: #dfc9a8;--gp-accent: #8b7355;--gp-bg: #0c0e14;--gp-surface: #161821;--gp-surface-2: #1e2130;--gp-surface-3: #262938;--gp-border: rgba(200, 169, 126, .12);--gp-border-light: rgba(255, 255, 255, .06);--gp-text: #e8e4dd;--gp-text-muted: #9a9590;--gp-text-bright: #fff;--gp-success: #6bc9a6;--gp-warning: #e5b567;--gp-danger: #e07070;--gp-info: #7ba4db;--gp-radius: 16px;--gp-radius-sm: 10px;--gp-radius-xs: 6px;--gp-font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--gp-mono: "JetBrains Mono", monospace}.gp-auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--gp-bg);background-image:radial-gradient(at 30% 60%,rgba(200,169,126,.08) 0%,transparent 50%),radial-gradient(at 70% 30%,rgba(139,115,85,.06) 0%,transparent 50%);padding:24px;font-family:var(--gp-font)}.gp-auth-card{text-align:center;max-width:400px;width:100%}.gp-auth-card .gp-logo-mark{width:64px;height:64px;border-radius:18px;background:linear-gradient(135deg,var(--gp-primary),var(--gp-accent));display:inline-flex;align-items:center;justify-content:center;color:#0c0e14;margin-bottom:20px}.gp-auth-card h1{font-size:24px;color:var(--gp-text-bright);margin:0 0 6px;font-weight:700;letter-spacing:-.5px}.gp-auth-card p{color:var(--gp-text-muted);font-size:14px;margin:0 0 24px;line-height:1.5}.gp-auth-spinner{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--gp-text-muted);font-size:14px}.gp-auth-error{background:#e070701a;border:1px solid rgba(224,112,112,.2);border-radius:var(--gp-radius-sm);padding:16px;color:var(--gp-danger);margin-top:16px;font-size:14px;line-height:1.5}.gp-shell{min-height:100vh;background:var(--gp-bg);color:var(--gp-text);font-family:var(--gp-font);display:flex;flex-direction:column}.gp-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:60px;background:var(--gp-surface);border-bottom:1px solid var(--gp-border-light);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.gp-header-left{display:flex;align-items:center;gap:10px}.gp-header-logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--gp-primary),var(--gp-accent));display:flex;align-items:center;justify-content:center;color:#0c0e14}.gp-header-info h3{font-size:14px;margin:0;color:var(--gp-text-bright);font-weight:600}.gp-header-info span{font-size:11px;color:var(--gp-text-muted)}.gp-header-room{display:flex;align-items:center;gap:6px;padding:5px 12px;background:#c8a97e1a;border:1px solid var(--gp-border);border-radius:20px;font-size:12px;font-weight:600;color:var(--gp-primary-light)}.gp-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--gp-surface);border-top:1px solid var(--gp-border-light);z-index:100;padding:6px 8px env(safe-area-inset-bottom,8px)}.gp-bottom-nav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;text-decoration:none;font-size:10px;font-weight:500;color:var(--gp-text-muted);transition:all .2s;border-radius:8px}.gp-bottom-nav a.active{color:var(--gp-primary-light)}.gp-bottom-nav a.active svg{color:var(--gp-primary)}.gp-content{flex:1;padding:20px 20px 90px;max-width:680px;margin:0 auto;width:100%;box-sizing:border-box}.gp-page-title{margin-bottom:20px}.gp-page-title h1{font-size:22px;color:var(--gp-text-bright);margin:0 0 4px;font-weight:700;letter-spacing:-.3px}.gp-page-title p{font-size:13px;color:var(--gp-text-muted);margin:0}.gp-welcome-card{background:linear-gradient(135deg,#c8a97e1f,#8b73550f);border:1px solid var(--gp-border);border-radius:var(--gp-radius);padding:24px;margin-bottom:24px}.gp-welcome-card h1{font-size:24px;color:var(--gp-text-bright);margin:0 0 4px;font-weight:700}.gp-welcome-card .gp-welcome-subtitle{color:var(--gp-primary-light);font-size:14px;margin:0 0 16px}.gp-welcome-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gp-welcome-meta-item{text-align:center}.gp-welcome-meta-item .label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--gp-text-muted);margin-bottom:4px}.gp-welcome-meta-item .value{font-size:14px;font-weight:600;color:var(--gp-text-bright)}.gp-quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.gp-quick-action{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 12px;background:var(--gp-surface);border:1px solid var(--gp-border-light);border-radius:var(--gp-radius);text-decoration:none;color:var(--gp-text);transition:all .2s;cursor:pointer}.gp-quick-action:hover{border-color:var(--gp-border);transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.gp-quick-action .icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}.gp-quick-action .icon-wrap.gold{background:#c8a97e1f;color:var(--gp-primary)}.gp-quick-action .icon-wrap.green{background:#6bc9a61f;color:var(--gp-success)}.gp-quick-action .icon-wrap.blue{background:#7ba4db1f;color:var(--gp-info)}.gp-quick-action .icon-wrap.amber{background:#e5b5671f;color:var(--gp-warning)}.gp-quick-action span{font-size:13px;font-weight:600}.gp-card{background:var(--gp-surface);border:1px solid var(--gp-border-light);border-radius:var(--gp-radius);overflow:hidden;margin-bottom:16px}.gp-card-header{padding:16px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--gp-border-light)}.gp-card-header h3{font-size:15px;margin:0;color:var(--gp-text-bright);font-weight:600;display:flex;align-items:center;gap:8px}.gp-card-body{padding:20px}.gp-detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--gp-border-light)}.gp-detail-row:last-child{border-bottom:none}.gp-detail-row .label{font-size:13px;color:var(--gp-text-muted)}.gp-detail-row .value{font-size:13px;color:var(--gp-text-bright);font-weight:500;text-align:right}.gp-detail-row .value.mono{font-family:var(--gp-mono);letter-spacing:-.5px}.gp-detail-row.total{border-top:2px solid var(--gp-border);padding-top:14px;margin-top:4px}.gp-detail-row.total .label,.gp-detail-row.total .value{font-size:16px;font-weight:700;color:var(--gp-primary-light)}.gp-badge{display:inline-flex;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.gp-badge.placed,.gp-badge.open{background:#7ba4db1f;color:var(--gp-info)}.gp-badge.confirmed{background:#c8a97e1f;color:var(--gp-primary)}.gp-badge.preparing{background:#e5b5671f;color:var(--gp-warning)}.gp-badge.ready{background:#6bc9a626;color:var(--gp-success)}.gp-badge.delivered,.gp-badge.resolved,.gp-badge.closed{background:#6bc9a61f;color:var(--gp-success)}.gp-badge.cancelled{background:#e070701f;color:var(--gp-danger)}.gp-badge.inprogress{background:#e5b5671f;color:var(--gp-warning)}.gp-badge.settled{background:#94a3b81f;color:var(--gp-text-muted)}.gp-categories{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:16px;-webkit-overflow-scrolling:touch}.gp-categories::-webkit-scrollbar{display:none}.gp-category-chip{padding:8px 16px;background:var(--gp-surface);border:1px solid var(--gp-border-light);border-radius:20px;font-size:12px;font-weight:600;color:var(--gp-text-muted);white-space:nowrap;cursor:pointer;transition:all .2s}.gp-category-chip:hover{border-color:var(--gp-border)}.gp-category-chip.active{background:#c8a97e1f;border-color:var(--gp-primary);color:var(--gp-primary-light)}.gp-menu-item{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--gp-border-light);align-items:flex-start}.gp-menu-item:last-child{border-bottom:none}.gp-menu-item-info{flex:1;min-width:0}.gp-menu-item-info h4{font-size:14px;margin:0 0 4px;color:var(--gp-text-bright);font-weight:600}.gp-menu-item-info .desc{font-size:12px;color:var(--gp-text-muted);margin:0 0 6px;line-height:1.4}.gp-menu-item-tags{display:flex;gap:4px;flex-wrap:wrap}.gp-diet-tag{display:inline-flex;padding:2px 6px;border-radius:4px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.gp-diet-tag.veg{background:#6bc9a626;color:var(--gp-success)}.gp-diet-tag.non-veg{background:#e0707026;color:var(--gp-danger)}.gp-diet-tag.vegan{background:#6bc9a633;color:#4ade80}.gp-diet-tag.jain{background:#e5b56726;color:var(--gp-warning)}.gp-diet-tag.gf{background:#7ba4db26;color:var(--gp-info)}.gp-menu-item-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.gp-menu-item-price{font-size:14px;font-weight:700;color:var(--gp-primary-light);font-family:var(--gp-mono)}.gp-add-btn{width:32px;height:32px;border-radius:8px;background:#c8a97e1f;border:1px solid var(--gp-border);color:var(--gp-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:18px;font-weight:600}.gp-add-btn:hover{background:#c8a97e33;transform:scale(1.05)}.gp-qty-control{display:flex;align-items:center;gap:0;border-radius:8px;overflow:hidden;border:1px solid var(--gp-border)}.gp-qty-control button{width:30px;height:30px;background:var(--gp-surface-2);border:none;color:var(--gp-primary);font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center}.gp-qty-control span{width:28px;text-align:center;font-size:13px;font-weight:600;color:var(--gp-text-bright);background:var(--gp-surface-3)}.gp-cart-bar{position:fixed;bottom:70px;left:16px;right:16px;max-width:648px;margin:0 auto;background:var(--gp-primary);color:#0c0e14;border-radius:14px;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;box-shadow:0 8px 32px #c8a97e4d;z-index:90;transition:transform .2s}.gp-cart-bar:hover{transform:translateY(-2px)}.gp-cart-bar .cart-info{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px}.gp-cart-bar .cart-count{width:24px;height:24px;background:#0003;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.gp-cart-bar .cart-total{font-size:16px;font-weight:700;font-family:var(--gp-mono)}.gp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--gp-radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none;font-family:var(--gp-font)}.gp-btn-primary{background:linear-gradient(135deg,var(--gp-primary),var(--gp-primary-dark));color:#0c0e14;width:100%}.gp-btn-primary:hover{opacity:.9;transform:translateY(-1px)}.gp-btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.gp-btn-ghost{background:transparent;border:1px solid var(--gp-border);color:var(--gp-text)}.gp-btn-ghost:hover{border-color:var(--gp-primary);color:var(--gp-primary-light)}.gp-form-group{margin-bottom:16px}.gp-form-group label{display:block;font-size:11px;font-weight:600;color:var(--gp-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.gp-form-group select,.gp-form-group textarea,.gp-form-group input{width:100%;padding:12px 14px;background:var(--gp-surface-2);border:1px solid var(--gp-border-light);border-radius:var(--gp-radius-xs);color:var(--gp-text);font-size:14px;font-family:var(--gp-font);outline:none;transition:border-color .2s;box-sizing:border-box}.gp-form-group select:focus,.gp-form-group textarea:focus,.gp-form-group input:focus{border-color:var(--gp-primary)}.gp-form-group textarea{min-height:100px;resize:vertical}.gp-order-card{background:var(--gp-surface);border:1px solid var(--gp-border-light);border-radius:var(--gp-radius);padding:16px;margin-bottom:12px;transition:border-color .2s}.gp-order-card:hover{border-color:var(--gp-border)}.gp-order-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.gp-order-card-header .order-num{font-size:13px;font-weight:600;color:var(--gp-text-bright);font-family:var(--gp-mono)}.gp-order-items-summary{font-size:12px;color:var(--gp-text-muted);margin-bottom:8px;line-height:1.5}.gp-order-footer{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--gp-text-muted)}.gp-order-footer .total{font-family:var(--gp-mono);color:var(--gp-primary-light);font-weight:600}.gp-sr-card{background:var(--gp-surface);border:1px solid var(--gp-border-light);border-radius:var(--gp-radius);padding:16px;margin-bottom:12px}.gp-sr-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.gp-sr-card-header .sr-num{font-size:12px;font-family:var(--gp-mono);color:var(--gp-text-muted)}.gp-sr-card h4{font-size:14px;margin:0 0 6px;color:var(--gp-text-bright)}.gp-sr-card p{font-size:13px;color:var(--gp-text-muted);margin:0;line-height:1.5}.gp-pref-section{margin-bottom:24px}.gp-pref-section h3{font-size:14px;color:var(--gp-text-bright);margin:0 0 12px;display:flex;align-items:center;gap:8px}.gp-pref-tags{display:flex;flex-wrap:wrap;gap:8px}.gp-pref-tag{padding:6px 14px;background:var(--gp-surface-2);border:1px solid var(--gp-border-light);border-radius:20px;font-size:12px;color:var(--gp-text);cursor:pointer;transition:all .2s}.gp-pref-tag.selected{background:#c8a97e1f;border-color:var(--gp-primary);color:var(--gp-primary-light)}.gp-empty{text-align:center;padding:48px 20px;color:var(--gp-text-muted)}.gp-empty svg{margin-bottom:12px;opacity:.3}.gp-empty h3{color:var(--gp-text-bright);margin:0 0 6px;font-size:16px}.gp-empty p{font-size:13px;margin:0}.gp-loading{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--gp-text-muted);gap:10px}@keyframes gp-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gp-spin{animation:gp-spin 1s linear infinite}.gp-expired-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--gp-bg);color:var(--gp-text);font-family:var(--gp-font);text-align:center;padding:24px}.gp-expired-page svg{opacity:.3;margin-bottom:16px}.gp-expired-page h2{font-size:20px;margin:0 0 8px;color:var(--gp-text-bright)}.gp-expired-page p{font-size:14px;color:var(--gp-text-muted);max-width:360px;line-height:1.6}.gp-pay-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--gp-border-light)}.gp-pay-btn{display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;padding:14px 24px}.gp-pay-secure{display:flex;align-items:center;justify-content:center;gap:4px;font-size:10px;color:var(--gp-text-muted);margin-top:8px}.gp-pay-form{margin-top:16px;padding:20px;background:var(--gp-surface-2);border:1px solid var(--gp-border);border-radius:var(--gp-radius);animation:gp-slide-up .25s ease}@keyframes gp-slide-up{0%{opacity:0;transform:translateY(10px)}}.gp-pay-form-header{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--gp-primary-light);margin-bottom:16px}.gp-pay-amount-hints{display:flex;gap:8px;margin-top:8px}.gp-pay-hint-chip{padding:5px 12px;border-radius:20px;background:#c8a97e14;border:1px solid var(--gp-border);color:var(--gp-primary-light);font-size:11px;font-weight:600;cursor:pointer;transition:all .2s;font-family:var(--gp-font)}.gp-pay-hint-chip:hover{background:#c8a97e26;border-color:var(--gp-primary)}.gp-pay-error{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#e070701a;border:1px solid rgba(224,112,112,.2);border-radius:var(--gp-radius-xs);color:var(--gp-danger);font-size:13px;margin-bottom:12px}.gp-pay-form-actions{display:flex;gap:10px}.gp-pay-result{margin-top:16px;padding:24px 20px;background:var(--gp-surface-2);border:1px solid var(--gp-border);border-radius:var(--gp-radius);text-align:center;animation:gp-slide-up .3s ease}.gp-pay-result-icon{margin-bottom:12px}.gp-pay-result h3{font-size:18px;color:var(--gp-text-bright);margin:0 0 6px;font-weight:700}.gp-pay-result-msg{font-size:13px;color:var(--gp-text-muted);margin:0 0 16px}.gp-pay-result-details{text-align:left;padding:12px 16px;background:var(--gp-surface-3);border-radius:var(--gp-radius-sm)}.gp-folio-settled{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;color:var(--gp-success);font-size:12px;font-weight:600;border-top:1px solid var(--gp-border-light)}@media(min-width:768px){.gp-content{padding:28px 32px 100px}.gp-quick-actions,.gp-welcome-meta{grid-template-columns:repeat(4,1fr)}}.email-page{padding:24px 32px;max-width:1400px}.email-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.email-page-header h1{font-size:24px;font-weight:700;color:var(--text-primary, #1a1a2e);margin:0;display:flex;align-items:center;gap:10px}.email-header-actions{display:flex;gap:12px;align-items:center}.email-category-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.email-category-tab{padding:6px 16px;border-radius:20px;border:1px solid #e0e0e0;background:#fff;color:#666;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.email-category-tab:hover{border-color:#0d9488;color:#0d9488}.email-category-tab.active{background:#0d9488;color:#fff;border-color:#0d9488}.email-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.email-template-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s;position:relative}.email-template-card:hover{box-shadow:0 4px 20px #00000014;transform:translateY(-2px);border-color:#0d9488}.email-template-card-preview{height:160px;background:linear-gradient(135deg,#f0fdfa,#e0f7fa);display:flex;align-items:center;justify-content:center;border-bottom:1px solid #e8e8e8;overflow:hidden}.email-template-card-preview .template-icon{color:#0d9488;opacity:.4}.email-template-card-body{padding:16px}.email-template-card-body h3{font-size:15px;font-weight:600;color:#1a1a2e;margin:0 0 6px}.email-template-card-body .template-subject{font-size:13px;color:#888;margin:0 0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-template-card-meta{display:flex;justify-content:space-between;align-items:center}.template-category-badge{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.template-category-badge.BookingConfirmation{background:#dbeafe;color:#2563eb}.template-category-badge.PreArrival{background:#e0f2fe;color:#0284c7}.template-category-badge.PostStay{background:#fef3c7;color:#d97706}.template-category-badge.Marketing{background:#fce7f3;color:#db2777}.template-category-badge.Reminder{background:#ede9fe;color:#7c3aed}.template-category-badge.Custom{background:#f3f4f6;color:#6b7280}.template-date{font-size:12px;color:#999}.email-template-card-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .2s}.email-template-card:hover .email-template-card-actions{opacity:1}.email-template-card-actions button{width:30px;height:30px;border-radius:8px;border:none;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#666;transition:all .2s}.email-template-card-actions button:hover{background:#0d9488;color:#fff}.email-template-card-actions button.delete:hover{background:#ef4444}.email-empty-state{text-align:center;padding:60px 20px;color:#888}.email-empty-state .empty-icon{width:64px;height:64px;margin:0 auto 16px;background:#f0fdfa;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#0d9488}.email-empty-state h3{font-size:18px;color:#333;margin:0 0 8px}.email-empty-state p{font-size:14px;margin:0 0 20px}.email-builder{display:flex;height:calc(100vh - 64px);overflow:hidden}.builder-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#fff;border-bottom:1px solid #e8e8e8;gap:12px;flex-shrink:0}.builder-toolbar-left{display:flex;align-items:center;gap:12px}.builder-toolbar-left input{font-size:16px;font-weight:600;border:none;outline:none;padding:6px 0;color:#1a1a2e;min-width:200px}.builder-toolbar-left input::placeholder{color:#ccc}.builder-toolbar-right{display:flex;align-items:center;gap:10px}.builder-palette{width:240px;background:#fafbfc;border-right:1px solid #e8e8e8;padding:16px;overflow-y:auto;flex-shrink:0}.builder-palette h3{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#999;margin:0 0 12px}.palette-block{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fff;border:1px solid #e8e8e8;border-radius:8px;margin-bottom:8px;cursor:grab;transition:all .2s;font-size:13px;font-weight:500;color:#555}.palette-block:hover{border-color:#0d9488;box-shadow:0 2px 8px #0d94881a}.palette-block:active{cursor:grabbing;opacity:.7}.palette-block .palette-icon{width:28px;height:28px;border-radius:6px;background:#f0fdfa;display:flex;align-items:center;justify-content:center;color:#0d9488;flex-shrink:0}.builder-canvas-wrapper{flex:1;display:flex;flex-direction:column;min-width:0}.builder-canvas{flex:1;overflow-y:auto;padding:24px;background:#f0f0f3;display:flex;justify-content:center}.builder-canvas-inner{width:600px;min-height:400px;background:#fff;border-radius:8px;box-shadow:0 2px 12px #0000000f;overflow:hidden}.canvas-block{position:relative;border:2px solid transparent;transition:border-color .15s;cursor:pointer}.canvas-block:hover{border-color:#0d94884d}.canvas-block.selected{border-color:#0d9488}.canvas-block-controls{position:absolute;top:4px;right:4px;display:flex;gap:2px;opacity:0;transition:opacity .15s}.canvas-block:hover .canvas-block-controls{opacity:1}.canvas-block-controls button{width:24px;height:24px;border-radius:4px;border:none;background:#0009;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px}.canvas-block-controls button:hover{background:#0d9488}.canvas-block-controls button.delete:hover{background:#ef4444}.canvas-drop-zone{min-height:80px;display:flex;align-items:center;justify-content:center;color:#ccc;font-size:13px;border:2px dashed #e0e0e0;border-radius:8px;margin:12px;transition:all .2s}.canvas-drop-zone.drag-over{border-color:#0d9488;background:#f0fdfa;color:#0d9488}.builder-settings{width:280px;background:#fff;border-left:1px solid #e8e8e8;padding:20px;overflow-y:auto;flex-shrink:0}.builder-settings h3{font-size:14px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.builder-settings .settings-empty{text-align:center;padding:40px 0;color:#ccc;font-size:13px}.settings-field{margin-bottom:14px}.settings-field label{display:block;font-size:12px;font-weight:600;color:#666;margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.settings-field input,.settings-field textarea,.settings-field select{width:100%;padding:8px 10px;border:1px solid #e0e0e0;border-radius:6px;font-size:13px;outline:none;transition:border-color .2s;box-sizing:border-box}.settings-field input:focus,.settings-field textarea:focus,.settings-field select:focus{border-color:#0d9488}.settings-field textarea{min-height:80px;resize:vertical}.settings-field-color{display:flex;align-items:center;gap:8px}.settings-field-color input[type=color]{width:36px;height:36px;padding:2px;border-radius:6px;cursor:pointer}.settings-field-color input[type=text]{flex:1}.builder-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.builder-preview-content{background:#fff;border-radius:12px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 40px #00000026}.builder-preview-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e8e8e8}.builder-preview-header h3{margin:0;font-size:16px;font-weight:600}.builder-preview-body{padding:0}.builder-preview-body iframe{width:100%;min-height:500px;border:none}.email-logs-table{width:100%;border-collapse:collapse}.email-logs-table thead th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#888;border-bottom:2px solid #e8e8e8;background:#fafbfc}.email-logs-table tbody td{padding:12px 16px;font-size:14px;color:#333;border-bottom:1px solid #f0f0f3}.email-logs-table tbody tr:hover{background:#f8fffe}.email-log-status{display:inline-flex;padding:3px 10px;border-radius:10px;font-size:11px;font-weight:600}.email-log-status.Sent{background:#d1fae5;color:#059669}.email-log-status.Queued{background:#e0f2fe;color:#0284c7}.email-log-status.Failed{background:#fee2e2;color:#ef4444}.email-log-status.Bounced{background:#fef3c7;color:#d97706}.merge-tag-picker{position:relative;display:inline-block}.merge-tag-dropdown{position:absolute;top:100%;left:0;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 16px #0000001a;max-height:240px;overflow-y:auto;z-index:100;min-width:250px}.merge-tag-option{display:flex;justify-content:space-between;padding:8px 14px;font-size:13px;cursor:pointer;border:none;background:none;width:100%;text-align:left;color:#333}.merge-tag-option:hover{background:#f0fdfa;color:#0d9488}.merge-tag-option code{font-size:11px;color:#999;font-family:monospace}@media(max-width:768px){.email-page{padding:16px}.email-template-grid{grid-template-columns:1fr}.email-builder{flex-direction:column}.builder-palette,.builder-settings{width:100%}}.email-empty{text-align:center;padding:60px 20px;color:#888}.email-empty svg{opacity:.3;margin-bottom:12px}.email-empty h3{color:#333;margin:8px 0}.email-empty p{margin:0 0 20px;font-size:14px}.email-loading{text-align:center;padding:40px;color:#999}.triggers-table-wrapper{border:1px solid #e8e8e8;border-radius:12px;overflow:hidden;background:#fff}.triggers-table{width:100%;border-collapse:collapse}.triggers-table thead th{padding:14px 16px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#888;border-bottom:2px solid #e8e8e8;background:#fafbfc}.triggers-table tbody td{padding:14px 16px;font-size:14px;color:#333;border-bottom:1px solid #f0f0f3;vertical-align:middle}.triggers-table tbody tr:last-child td{border-bottom:none}.triggers-table tbody tr:hover{background:#f8fffe}.triggers-table tbody tr.trigger-inactive{opacity:.55}.trigger-event{display:flex;flex-direction:column;gap:2px}.trigger-event-badge{display:inline-block;padding:3px 10px;border-radius:10px;font-size:11px;font-weight:600;letter-spacing:.3px;background:#e0f2fe;color:#0284c7}.trigger-event-badge.trigger-event-bookingcreated{background:#dbeafe;color:#2563eb}.trigger-event-badge.trigger-event-bookingconfirmed{background:#d1fae5;color:#059669}.trigger-event-badge.trigger-event-prearrival{background:#e0f2fe;color:#0284c7}.trigger-event-badge.trigger-event-checkin{background:#d1fae5;color:#059669}.trigger-event-badge.trigger-event-checkout{background:#fef3c7;color:#d97706}.trigger-event-badge.trigger-event-poststay{background:#fce7f3;color:#db2777}.trigger-event-badge.trigger-event-invoicegenerated{background:#e0f2fe;color:#0284c7}.trigger-event-badge.trigger-event-cancellation,.trigger-event-badge.trigger-event-noshow{background:#fee2e2;color:#ef4444}.trigger-event-desc{font-size:11px;color:#999}.trigger-template{display:flex;flex-direction:column;gap:2px}.trigger-template-name{font-weight:500}.trigger-template-cat{font-size:11px;color:#999;text-transform:capitalize}.trigger-delay{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#555}.trigger-status-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:16px;border:none;cursor:pointer;font-size:12px;font-weight:600;transition:all .2s}.trigger-status-btn.active{background:#d1fae5;color:#059669}.trigger-status-btn.inactive{background:#f0f0f3;color:#999}.trigger-status-btn:hover{opacity:.8}.trigger-actions{display:flex;gap:4px}.btn-sm{padding:4px 8px!important;min-width:0!important}.btn-danger:hover{color:#ef4444!important}.trigger-modal{max-width:520px}.trigger-modal h2{margin:0 0 20px;font-size:18px}.trigger-form .form-field{margin-bottom:16px}.trigger-form .form-field label{display:block;font-size:13px;font-weight:600;color:#555;margin-bottom:6px}.trigger-form .form-field select,.trigger-form .form-field input[type=number]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;outline:none;box-sizing:border-box}.trigger-form .form-field select:focus,.trigger-form .form-field input:focus{border-color:#0d9488}.form-row{display:flex;gap:16px}.form-hint{display:block;font-size:11px;color:#999;margin-top:4px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#0d9488}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:16px;padding:28px;width:90%;max-width:600px;box-shadow:0 8px 40px #00000026}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.compare-controls{display:flex;align-items:center;gap:12px;padding:12px var(--space-6);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);flex-wrap:wrap}.compare-controls-right{margin-left:auto;display:flex;align-items:center;gap:8px}.dimension-toggle{display:flex;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-bg)}.dimension-btn{padding:7px 14px;font-size:11px;font-weight:700;letter-spacing:.04em;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:5px;white-space:nowrap}.dimension-btn:not(:last-child){border-right:1px solid var(--color-border)}.dimension-btn.active{background:var(--color-primary);color:#fff}.dimension-btn:hover:not(.active){background:var(--color-bg-secondary)}.compare-date-range{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary)}.compare-date-range span{font-weight:500}.compare-date-input{padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:12px;font-weight:500;background:var(--color-bg);color:var(--color-text);outline:none}.compare-date-input:focus{border-color:var(--color-primary)}.add-metric-wrap{position:relative;display:inline-block}.add-metric-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;font-size:11px;font-weight:600;color:var(--color-text-muted);background:none;border:1px dashed var(--color-border);border-radius:6px;cursor:pointer;transition:all .15s}.add-metric-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.add-metric-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:240px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;box-shadow:0 12px 40px #00000026;z-index:100;overflow:hidden;animation:insightsDropIn .15s ease-out}.add-metric-search{padding:8px 10px;border-bottom:1px solid var(--color-border)}.add-metric-search input{width:100%;padding:6px 8px;border:1px solid var(--color-border);border-radius:5px;font-size:12px;background:var(--color-bg-secondary);color:var(--color-text);outline:none;box-sizing:border-box}.add-metric-list{max-height:300px;overflow-y:auto}.add-metric-module-header{padding:5px 12px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border)}.add-metric-option{display:block;width:100%;padding:7px 12px 7px 16px;font-size:12px;font-weight:500;color:var(--color-text);background:none;border:none;text-align:left;cursor:pointer;transition:background .1s}.add-metric-option:hover{background:var(--color-bg-secondary)}.compare-table-wrap{overflow:auto;flex:1;min-height:0}.compare-table{width:100%;border-collapse:collapse;font-size:12px}.compare-table th,.compare-table td{padding:0}.compare-table .ct-metric-col{width:240px;min-width:240px;position:sticky;left:0;z-index:2;background:var(--color-bg);border-right:2px solid var(--color-border)}.compare-table thead .ct-metric-col{z-index:3}.compare-table thead th{position:sticky;top:0;z-index:2;background:var(--color-bg-secondary);border-bottom:2px solid var(--color-border);text-align:center;padding:14px 16px;font-size:12px;font-weight:700;color:var(--color-text);letter-spacing:-.01em;vertical-align:bottom}.compare-table thead th.ct-metric-col{text-align:left;padding-left:16px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);vertical-align:bottom}.compare-table thead th:not(.ct-metric-col)+th:not(.ct-metric-col){border-left:1px solid var(--color-border)}.ct-header-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;font-size:11px;letter-spacing:.04em}.ct-header-sub{display:block;font-size:10px;font-weight:500;color:var(--color-text-muted);margin-top:3px;text-transform:none;letter-spacing:0}.ct-module-row td{padding:10px 16px 6px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;border-top:2px solid var(--color-border);background:color-mix(in srgb,var(--color-bg-secondary) 50%,var(--color-bg))}.ct-module-label{display:flex;align-items:center;gap:6px}.ct-metric-row{transition:background .1s}.ct-metric-row:hover,.ct-metric-row:hover .ct-metric-col{background:var(--color-bg-secondary)}.ct-metric-name{display:flex;align-items:center;gap:6px;padding:10px 12px 10px 16px;font-size:13px;font-weight:500;color:var(--color-text);border-bottom:1px solid color-mix(in srgb,var(--color-border) 40%,transparent)}.ct-metric-remove{opacity:0;background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:2px;display:flex;align-items:center;transition:opacity .15s;flex-shrink:0}.ct-metric-row:hover .ct-metric-remove{opacity:.5}.ct-metric-remove:hover{opacity:1!important;color:#ef4444}.ct-value-cell{text-align:center;padding:10px 20px;font-weight:600;font-size:13px;font-variant-numeric:tabular-nums;color:var(--color-text);border-bottom:1px solid color-mix(in srgb,var(--color-border) 40%,transparent);transition:background .15s;white-space:nowrap}.ct-value-cell+.ct-value-cell{border-left:1px solid color-mix(in srgb,var(--color-border) 50%,transparent)}.ct-value-cell.ct-best{background:color-mix(in srgb,#16a34a 8%,transparent);color:#16a34a;font-weight:700}.ct-value-cell.ct-worst{background:color-mix(in srgb,#dc2626 6%,transparent);color:#dc2626}.compare-loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--color-primary)}.compare-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:300px;color:var(--color-text-muted);text-align:center}.compare-empty h3{font-size:15px;font-weight:700;color:var(--color-text-secondary);margin:0}.compare-empty p{font-size:13px;margin:0}@media(max-width:900px){.compare-controls{padding:10px var(--space-4)}.dimension-toggle{overflow-x:auto}.compare-table .ct-metric-col{width:160px;min-width:160px}}.ct-sort-btn{opacity:0;background:none;border:none;cursor:pointer;color:var(--color-text-muted);padding:2px;display:flex;align-items:center;transition:opacity .15s,color .15s;flex-shrink:0}.ct-metric-row:hover .ct-sort-btn{opacity:.5}.ct-sort-btn:hover,.ct-sort-btn.active{opacity:1!important;color:var(--color-primary)}.compare-type-badge{display:inline-flex;align-items:center;justify-content:center;padding:1px 4px;border-radius:3px;font-size:8px;font-weight:700;line-height:1.2;letter-spacing:.03em;flex-shrink:0}.compare-type-badge.ct-rate{background:color-mix(in srgb,#6366f1 12%,transparent);color:#6366f1}.compare-type-badge.ct-average{background:color-mix(in srgb,#0ea5e9 12%,transparent);color:#0ea5e9}.compare-type-badge.ct-absolute{background:color-mix(in srgb,#64748b 12%,transparent);color:#64748b}.add-metric-type-filters{display:flex;gap:4px;padding:6px 10px;border-bottom:1px solid var(--color-border)}.type-filter-pill{padding:3px 8px;font-size:10px;font-weight:600;border:1px solid var(--color-border);border-radius:12px;background:none;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.type-filter-pill:hover{border-color:var(--color-primary);color:var(--color-primary)}.type-filter-pill.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.add-metric-option{display:flex!important;align-items:center;justify-content:space-between}.add-metric-check{width:16px;height:16px;border:1.5px solid var(--color-border);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:8px;transition:all .15s;color:#fff}.add-metric-option.checked .add-metric-check{background:var(--color-primary);border-color:var(--color-primary)}.add-metric-option.checked{background:color-mix(in srgb,var(--color-primary) 6%,transparent)}.insights-page{display:flex;flex-direction:column;height:calc(100vh - 60px);max-height:calc(100vh - 60px);overflow:hidden;background:var(--color-bg)}.insights-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.insights-header h1{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--color-text);margin:0}.insights-header p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:4px 0 0}.insights-controls{display:flex;align-items:center;gap:12px;padding:12px var(--space-6);border-bottom:1px solid var(--color-border);background:var(--color-bg-secondary);flex-wrap:wrap}.insights-controls-right{margin-left:auto;display:flex;align-items:center;gap:8px}.property-multi-select{position:relative;min-width:220px}.property-multi-btn{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);font-size:13px;font-weight:500;cursor:pointer;min-width:200px;justify-content:space-between;transition:border-color .15s}.property-multi-btn:hover{border-color:var(--color-primary)}.property-multi-btn.open{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 15%,transparent)}.property-multi-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:280px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 12px 40px #00000026;z-index:100;overflow:hidden;animation:insightsDropIn .15s ease-out}@keyframes insightsDropIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.property-multi-search{padding:10px 12px;border-bottom:1px solid var(--color-border)}.property-multi-search input{width:100%;padding:7px 10px 7px 30px;border:1px solid var(--color-border);border-radius:6px;font-size:12px;background:var(--color-bg-secondary);color:var(--color-text);outline:none;box-sizing:border-box}.property-multi-search input:focus{border-color:var(--color-primary)}.property-multi-list{max-height:250px;overflow-y:auto}.property-multi-option{display:flex;align-items:center;gap:8px;padding:9px 14px;font-size:13px;cursor:pointer;transition:background .1s;color:var(--color-text);border:none;background:none;width:100%;text-align:left}.property-multi-option:hover{background:var(--color-bg-secondary)}.property-multi-option.active{color:var(--color-primary);font-weight:600}.property-multi-option .pms-check{width:16px;height:16px;border:1.5px solid var(--color-border);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.property-multi-option.active .pms-check{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.granularity-toggle{display:flex;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-bg)}.granularity-btn{padding:7px 16px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.granularity-btn:not(:last-child){border-right:1px solid var(--color-border)}.granularity-btn.active{background:var(--color-primary);color:#fff}.period-selector{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary)}.period-selector span{font-weight:500}.period-input{width:56px;padding:6px 8px;text-align:center;border:1px solid var(--color-border);border-radius:6px;font-size:13px;font-weight:600;background:var(--color-bg);color:var(--color-text);outline:none}.period-input:focus{border-color:var(--color-primary)}.insights-body{display:flex;flex:1;overflow:hidden}.metric-sidebar{width:260px;min-width:260px;border-right:1px solid var(--color-border);overflow-y:auto;background:var(--color-bg);padding:8px 0}.metric-category-label{display:flex;align-items:center;gap:6px;padding:12px 16px 6px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.metric-category-label .metric-cat-count{font-weight:500;color:var(--color-text-muted);opacity:.6}.metric-item{display:flex;flex-direction:column;gap:1px;padding:10px 16px 10px 24px;cursor:pointer;border-left:3px solid transparent;transition:all .12s}.metric-item:hover{background:var(--color-bg-secondary)}.metric-item.active{background:color-mix(in srgb,var(--color-primary) 8%,var(--color-bg));border-left-color:var(--color-primary)}.metric-item-name{font-size:13px;font-weight:600;color:var(--color-text);line-height:1.2}.metric-item.active .metric-item-name{color:var(--color-primary)}.metric-item-sub{font-size:10px;color:var(--color-text-muted);line-height:1.3}.insights-main{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-5) var(--space-6);gap:24px}.insights-metric-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.insights-metric-title h2{font-size:1.25rem;font-weight:800;letter-spacing:-.01em;color:var(--color-text);margin:0}.insights-metric-title .insights-metric-subtitle{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.insights-metric-value{text-align:right}.insights-metric-value .imv-big{font-size:1.5rem;font-weight:800;color:var(--color-text);letter-spacing:-.02em}.insights-metric-value .imv-change{font-size:12px;font-weight:600;margin-top:2px}.insights-metric-value .imv-change.positive{color:#16a34a}.insights-metric-value .imv-change.negative{color:#dc2626}.insights-metric-value .imv-change.neutral{color:var(--color-text-muted)}.insights-chart-area{display:grid;grid-template-columns:1fr 300px;gap:24px;min-height:320px}.insights-chart{background:var(--color-bg-secondary);border-radius:12px;padding:16px;border:1px solid var(--color-border)}.insights-table-container{background:var(--color-bg-secondary);border-radius:12px;border:1px solid var(--color-border);overflow:hidden}.insights-table-title{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);padding:14px 16px 10px;border-bottom:1px solid var(--color-border)}.insights-table{width:100%;border-collapse:collapse}.insights-table th{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);text-align:left;padding:8px 12px;border-bottom:1px solid var(--color-border)}.insights-table th:last-child,.insights-table td:last-child{text-align:right}.insights-table td{padding:9px 12px;font-size:12px;color:var(--color-text);border-bottom:1px solid color-mix(in srgb,var(--color-border) 50%,transparent)}.insights-table td.value-col{font-weight:600;font-variant-numeric:tabular-nums}.insights-table td .pct-badge{display:inline-block;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;margin-left:6px}.insights-table td .pct-badge.up{color:#16a34a;background:#f0fdf4}.insights-table td .pct-badge.down{color:#dc2626;background:#fef2f2}.insights-table td .pct-badge.flat{color:var(--color-text-muted);background:var(--color-bg)}.insights-loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--color-primary)}.insights-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:300px;color:var(--color-text-muted);text-align:center}.insights-empty h3{font-size:15px;font-weight:700;color:var(--color-text-secondary);margin:0}.insights-empty p{font-size:13px;max-width:400px;margin:0;line-height:1.5}@media(max-width:900px){.insights-body{flex-direction:column}.metric-sidebar{width:100%;min-width:unset;max-height:200px;border-right:none;border-bottom:1px solid var(--color-border);display:flex;overflow-x:auto;overflow-y:hidden;padding:8px;gap:4px}.metric-category-label{display:none}.metric-item{padding:8px 14px;border-left:none;border-bottom:2px solid transparent;white-space:nowrap;flex-direction:row;gap:6px}.metric-item.active{border-bottom-color:var(--color-primary);border-left-color:transparent}.insights-chart-area{grid-template-columns:1fr}}@media(max-width:600px){.insights-controls{flex-direction:column;align-items:stretch}.insights-controls-right{margin-left:0}.property-multi-select{min-width:unset}.insights-header,.insights-main{padding:var(--space-4)}}.ask-insights{padding:0 24px 40px;max-width:1400px;margin:0 auto}.ask-insights__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding-top:8px}.ask-insights__title-group{display:flex;flex-direction:column;gap:4px}.ask-insights__title{font-size:var(--text-2xl);font-weight:700;color:var(--color-text);display:flex;align-items:center;gap:10px;letter-spacing:-.02em}.ask-insights__title svg{color:var(--color-brand)}.ask-insights__subtitle{font-size:var(--text-sm);color:var(--color-text-secondary)}.ask-insights__total-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;background:var(--color-brand-soft);color:var(--color-brand);border-radius:20px;font-size:var(--text-xs);font-weight:600}.ask-insights__filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ask-insights__search{position:relative;flex:1;min-width:220px;max-width:360px}.ask-insights__search input{width:100%;padding:9px 14px 9px 36px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-input);font-size:var(--text-sm);color:var(--color-text);outline:none;transition:all .2s}.ask-insights__search input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-soft)}.ask-insights__search .search-icon{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.ask-insights__search .clear-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);cursor:pointer;color:var(--color-text-muted);padding:2px;border-radius:50%;transition:all .15s}.ask-insights__search .clear-icon:hover{background:var(--color-bg-tertiary);color:var(--color-text)}.ask-insights__date-input{padding:9px 14px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-input);font-size:var(--text-sm);color:var(--color-text);outline:none;transition:all .2s;font-family:var(--font-family)}.ask-insights__date-input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-soft)}.ask-insights__tabs{display:flex;align-items:center;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:24px;scrollbar-width:none}.ask-insights__tabs::-webkit-scrollbar{display:none}.ask-insights__tab{padding:7px 16px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-bg-card);font-size:var(--text-xs);font-weight:500;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;transition:all .2s;-webkit-user-select:none;user-select:none}.ask-insights__tab:hover{border-color:var(--color-brand);color:var(--color-brand);background:var(--color-brand-soft)}.ask-insights__tab--active{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.ask-insights__tab--active:hover{background:var(--color-brand-hover);color:#fff}.ask-insights__tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:10px;font-weight:600;margin-left:6px;background:#fff3}.ask-insights__tab:not(.ask-insights__tab--active) .ask-insights__tab-badge{background:var(--color-bg-tertiary);color:var(--color-text-muted)}.ask-insights__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:1100px){.ask-insights__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.ask-insights__grid{grid-template-columns:1fr}}.insight-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:14px;transition:all .2s ease;position:relative;overflow:hidden}.insight-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--card-accent, var(--color-brand));opacity:0;transition:opacity .2s}.insight-card:hover{border-color:var(--color-border-hover);box-shadow:0 4px 24px #0000000f;transform:translateY(-1px)}.insight-card:hover:before{opacity:1}.insight-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.insight-card__question{font-size:var(--text-sm);font-weight:600;color:var(--color-text);line-height:1.4;flex:1}.insight-card__id{font-size:10px;font-weight:600;color:var(--color-text-muted);background:var(--color-bg-tertiary);padding:2px 7px;border-radius:6px;white-space:nowrap;text-transform:uppercase}.insight-card__answer{font-size:var(--text-xs);color:var(--color-text-secondary);line-height:1.5}.insight-card__actions{display:flex;align-items:center;gap:4px;margin-top:auto;opacity:0;transition:opacity .2s}.insight-card:hover .insight-card__actions{opacity:1}.insight-card__action-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;border:none;border-radius:6px;background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.insight-card__action-btn:hover{background:var(--color-brand-soft);color:var(--color-brand)}.insight-card__fav-btn{position:absolute;top:12px;right:12px;background:none;border:none;padding:4px;cursor:pointer;color:var(--color-text-muted);transition:all .15s;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0}.insight-card:hover .insight-card__fav-btn{opacity:1}.insight-card__fav-btn--active{opacity:1!important;color:#f59e0b}.insight-card__fav-btn:hover{background:var(--color-bg-tertiary)}.insight-card__chart{flex:1;min-height:0}.chart-number{display:flex;align-items:center;justify-content:center;padding:12px 0}.chart-number__value{font-size:2rem;font-weight:700;color:var(--color-text);letter-spacing:-.03em;background:linear-gradient(135deg,var(--chart-color, var(--color-brand)) 0%,#1e293b 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.chart-percentage{display:flex;align-items:center;gap:14px;padding:8px 0}.chart-percentage__ring{position:relative;width:64px;height:64px;flex-shrink:0}.chart-percentage__ring svg{transform:rotate(-90deg)}.chart-percentage__ring-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;color:var(--color-text)}.chart-percentage__legend{display:flex;flex-direction:column;gap:4px;flex:1}.chart-percentage__legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--color-text-secondary)}.chart-percentage__legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.chart-bar{display:flex;flex-direction:column;gap:6px;padding:4px 0;max-height:160px;overflow-y:auto;scrollbar-width:thin}.chart-bar__row{display:flex;align-items:center;gap:10px;font-size:11px}.chart-bar__label{width:80px;text-align:right;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0}.chart-bar__track{flex:1;height:20px;background:var(--color-bg-tertiary);border-radius:6px;overflow:hidden;position:relative}.chart-bar__fill{height:100%;border-radius:6px;min-width:2px;transition:width .6s cubic-bezier(.34,1.56,.64,1)}.chart-bar__value{width:54px;text-align:right;font-weight:600;color:var(--color-text);white-space:nowrap}.chart-donut{display:flex;align-items:center;gap:16px;padding:8px 0}.chart-donut__ring{position:relative;width:80px;height:80px;flex-shrink:0}.chart-donut__ring svg{transform:rotate(-90deg)}.chart-donut__center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;color:var(--color-text-muted)}.chart-donut__center-value{font-size:var(--text-md);font-weight:700;color:var(--color-text)}.chart-donut__legend{display:flex;flex-direction:column;gap:5px;flex:1;overflow:hidden}.chart-donut__legend-item{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--color-text-secondary)}.chart-donut__legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.chart-donut__legend-value{margin-left:auto;font-weight:600;color:var(--color-text)}.insight-skeleton{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:14px;animation:skeleton-pulse 1.5s ease infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.insight-skeleton__line{height:14px;border-radius:6px;background:var(--color-bg-tertiary)}.insight-skeleton__line--short{width:60%}.insight-skeleton__line--medium{width:80%}.insight-skeleton__line--full{width:100%}.insight-skeleton__line--tall{height:80px}.ask-insights__empty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--color-text-muted);gap:12px}.ask-insights__empty svg{opacity:.3}.ask-insights__empty p{font-size:var(--text-sm)}.ask-insights__loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:100px 20px;color:var(--color-text-secondary);font-size:var(--text-sm)}.ask-insights__loading svg{animation:spin 1s linear infinite}.insight-card[data-category=REVENUE]{--card-accent: #04ADEF}.insight-card[data-category=OCCUPANCY]{--card-accent: #10B981}.insight-card[data-category=BOOKINGS]{--card-accent: #8B5CF6}.insight-card[data-category=GUEST]{--card-accent: #EC4899}.insight-card[data-category=OPERATIONS]{--card-accent: #F59E0B}.insight-card[data-category=FNB]{--card-accent: #EF4444}.insight-card[data-category=HOUSEKEEPING]{--card-accent: #14B8A6}.insight-card[data-category=CRM]{--card-accent: #6366F1}.insight-card[data-category=BANQUET]{--card-accent: #D946EF}.insight-card[data-category=FINANCIAL]{--card-accent: #059669}.rbm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.rbm-modal{background:var(--bg-primary, #fff);border-radius:14px;width:100%;max-width:680px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.rbm-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--border-color, #e5e7eb)}.rbm-header h2{margin:0;font-size:17px;font-weight:700;color:var(--text-primary, #1a1a2e)}.rbm-close{background:none;border:none;cursor:pointer;color:var(--text-tertiary, #9ca3af);padding:4px;border-radius:6px}.rbm-close:hover{background:var(--bg-tertiary, #f0f0f5)}.rbm-nav{display:flex;gap:2px;padding:8px 24px;border-bottom:1px solid var(--border-color, #e5e7eb);overflow-x:auto}.rbm-nav-item{display:flex;align-items:center;gap:5px;padding:7px 12px;border:none;border-radius:7px;background:transparent;color:var(--text-secondary, #6b7280);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease}.rbm-nav-item:hover{background:var(--bg-tertiary, #f0f0f5)}.rbm-nav-item.active{background:var(--color-primary, #6366f1);color:#fff}.rbm-body{flex:1;overflow-y:auto;padding:20px 24px}.rbm-section{display:flex;flex-direction:column;gap:14px}.rbm-section-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary, #1a1a2e);margin-bottom:4px}.rbm-add-btn{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px dashed var(--border-color, #e5e7eb);border-radius:6px;background:transparent;color:var(--color-primary, #6366f1);font-size:12px;cursor:pointer}.rbm-add-btn:hover{background:var(--bg-secondary, #fafafa)}.rbm-field{display:flex;flex-direction:column;gap:5px}.rbm-field label{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280)}.rbm-field input,.rbm-field select,.rbm-field textarea{padding:8px 12px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:13px;background:var(--bg-primary, #fff);color:var(--text-primary, #1a1a2e);outline:none;transition:border-color .15s ease}.rbm-field input:focus,.rbm-field select:focus,.rbm-field textarea:focus{border-color:var(--color-primary, #6366f1)}.rbm-field input:disabled{background:var(--bg-tertiary, #f0f0f5);color:var(--text-tertiary, #9ca3af)}.rbm-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rbm-hint{font-size:12px;color:var(--text-tertiary, #9ca3af);margin:0;font-style:italic}.rbm-filter-row{display:grid;grid-template-columns:1fr 100px 1fr 32px;gap:8px;align-items:center}.rbm-filter-row select,.rbm-filter-row input{padding:7px 10px;border:1px solid var(--border-color, #e5e7eb);border-radius:7px;font-size:12px;background:var(--bg-primary, #fff);color:var(--text-primary);outline:none}.rbm-remove-btn{background:none;border:none;cursor:pointer;color:var(--text-tertiary, #9ca3af);padding:4px;border-radius:6px}.rbm-remove-btn:hover{color:#dc2626;background:#fef2f2}.rbm-toggle-group{display:flex;gap:0;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden}.rbm-toggle-group button{flex:1;padding:8px 14px;border:none;background:transparent;font-size:12px;font-weight:500;cursor:pointer;color:var(--text-secondary, #6b7280);transition:all .15s ease}.rbm-toggle-group button.active{background:var(--color-primary, #6366f1);color:#fff}.rbm-bands{display:flex;flex-direction:column;gap:10px}.rbm-band-row{display:flex;align-items:center;gap:10px}.rbm-band-label{width:70px;font-size:12px;font-weight:600;text-transform:capitalize}.rbm-band-label.severity-info{color:var(--aq-info, #3b82f6)}.rbm-band-label.severity-warning{color:var(--aq-warning, #f59e0b)}.rbm-band-label.severity-high{color:var(--aq-high, #f97316)}.rbm-band-label.severity-critical{color:var(--aq-critical, #ef4444)}.rbm-band-row input{width:80px;padding:6px 10px;border:1px solid var(--border-color, #e5e7eb);border-radius:7px;font-size:12px;text-align:center}.rbm-band-row span{font-size:12px;color:var(--text-tertiary, #9ca3af)}.rbm-check-row{display:flex;align-items:center}.rbm-checkbox{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-primary, #1a1a2e);cursor:pointer}.rbm-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary, #6366f1)}.rbm-indent{padding-left:24px;border-left:2px solid var(--border-color-light, #f3f4f6)}.rbm-role-grid{display:flex;flex-wrap:wrap;gap:8px}.rbm-role-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;color:var(--text-secondary, #6b7280)}.rbm-role-chip:hover{border-color:var(--color-primary, #6366f1)}.rbm-role-chip.selected{background:color-mix(in srgb,var(--color-primary, #6366f1) 10%,transparent);border-color:var(--color-primary, #6366f1);color:var(--color-primary, #6366f1)}.rbm-role-chip input{display:none}.rbm-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border-color, #e5e7eb)}.rbm-btn-cancel,.rbm-btn-save{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .15s ease}.rbm-btn-cancel{background:var(--bg-secondary, #fafafa);color:var(--text-secondary, #6b7280);border:1px solid var(--border-color, #e5e7eb)}.rbm-btn-cancel:hover{background:var(--bg-tertiary, #f0f0f5)}.rbm-btn-save{background:var(--color-primary, #6366f1);color:#fff}.rbm-btn-save:hover{opacity:.9}.rbm-btn-save:disabled{opacity:.5;cursor:not-allowed}.rbm-spinner{animation:rbm-spin 1s linear infinite}@keyframes rbm-spin{to{transform:rotate(360deg)}}.aqc-tab{padding:0}.aqc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.aqc-title{display:flex;align-items:center;gap:10px}.aqc-title h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary, #1a1a2e)}.aqc-count{background:var(--bg-tertiary, #f0f0f5);color:var(--text-secondary, #6b7280);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.aqc-actions{display:flex;gap:8px}.aqc-btn-primary,.aqc-btn-secondary{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;padding:8px 14px;transition:all .15s ease}.aqc-btn-primary{background:var(--color-primary, #6366f1);color:#fff}.aqc-btn-primary:hover{opacity:.9}.aqc-btn-secondary{background:var(--bg-secondary, #fafafa);color:var(--text-secondary, #6b7280);border:1px solid var(--border-color, #e5e7eb)}.aqc-btn-secondary:hover{background:var(--bg-tertiary, #f0f0f5)}.aqc-list{display:flex;flex-direction:column;gap:8px}.aqc-rule-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:10px;transition:all .2s ease}.aqc-rule-card:hover{border-color:var(--color-primary-light, #a5b4fc)}.aqc-rule-card.inactive{opacity:.55}.aqc-rule-card.dragging{opacity:.4;border-style:dashed}.aqc-drag-handle{color:var(--text-tertiary, #9ca3af);flex-shrink:0}.aqc-rule-info{flex:1;min-width:0}.aqc-rule-name-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.aqc-rule-name{font-size:14px;font-weight:600;color:var(--text-primary, #1a1a2e)}.aqc-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.4px}.aqc-badge.active{background:color-mix(in srgb,#22c55e 12%,transparent);color:#16a34a}.aqc-badge.inactive{background:var(--bg-tertiary, #f0f0f5);color:var(--text-tertiary, #9ca3af)}.aqc-rule-desc{font-size:12px;color:var(--text-secondary, #6b7280);margin-bottom:6px}.aqc-rule-meta{display:flex;flex-wrap:wrap;gap:6px}.aqc-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:500;background:var(--bg-tertiary, #f0f0f5);color:var(--text-secondary, #6b7280)}.aqc-pill.entity{background:color-mix(in srgb,var(--color-primary, #6366f1) 10%,transparent);color:var(--color-primary, #6366f1)}.aqc-pill.alerts{background:color-mix(in srgb,#f59e0b 10%,transparent);color:#d97706}.aqc-rule-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.aqc-toggle-btn{background:none;border:none;cursor:pointer;padding:4px}.aqc-divider{width:1px;height:20px;background:var(--border-color, #e5e7eb);margin:0 2px}.aqc-icon-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:6px;color:var(--text-secondary, #6b7280);transition:all .15s ease}.aqc-icon-btn:hover{background:var(--bg-tertiary, #f0f0f5);color:var(--text-primary, #1a1a2e)}.aqc-icon-btn.danger:hover{background:#fef2f2;color:#dc2626}.aqc-loading,.aqc-error,.aqc-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;text-align:center;color:var(--text-tertiary, #9ca3af)}.aqc-loading h3,.aqc-error h3,.aqc-empty h3{margin:0;color:var(--text-primary);font-size:16px}.aqc-loading p,.aqc-error p,.aqc-empty p{margin:0;font-size:13px}.aqc-spinner{animation:aqc-spin 1s linear infinite}@keyframes aqc-spin{to{transform:rotate(360deg)}}.aq-page{padding:24px 28px;max-width:1200px}.aq-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.aq-header-left{display:flex;align-items:center;gap:10px}.aq-header-left h1{font-size:22px;font-weight:700;color:var(--text-primary, #1a1a2e);margin:0}.aq-total-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 8px;border-radius:12px;background:var(--color-primary, #6366f1);color:#fff;font-size:12px;font-weight:700}.aq-header-right{display:flex;gap:6px}.aq-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid var(--border-color, #e5e7eb);background:var(--bg-primary, #fff);color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease}.aq-icon-btn:hover{background:var(--bg-tertiary, #f0f0f5);color:var(--text-primary, #1a1a2e)}.aq-tabs{display:flex;gap:2px;margin-bottom:24px;background:var(--bg-tertiary, #f3f4f6);border-radius:10px;padding:3px;width:fit-content}.aq-tab{display:flex;align-items:center;gap:5px;padding:7px 16px;background:transparent;border:none;border-radius:8px;color:var(--text-secondary, #6b7280);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.aq-tab:hover{color:var(--text-primary, #1a1a2e)}.aq-tab.active{background:var(--bg-primary, #ffffff);color:var(--text-primary, #1a1a2e);font-weight:600;box-shadow:0 1px 3px #0000000f}.aq-btn{display:inline-flex;align-items:center;gap:6px;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;padding:8px 16px;transition:all .15s ease}.aq-btn-primary{background:var(--color-primary, #6366f1);color:#fff}.aq-btn-primary:hover{opacity:.9}.aq-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:4px}.aq-card{display:flex;flex-direction:column;padding:16px;background:var(--c-bg);border:1.5px solid var(--c-border);border-radius:14px;cursor:pointer;transition:all .2s ease;text-align:left;position:relative}.aq-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000000f}.aq-card.active{border-color:var(--c-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--c-accent) 25%,transparent),0 4px 16px #0000000f;transform:translateY(-2px)}.aq-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.aq-card-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--c-accent) 15%,transparent);color:var(--c-icon)}.aq-card-count{font-size:22px;font-weight:800;color:var(--c-icon);line-height:1}.aq-card-label{font-size:13px;font-weight:600;color:var(--text-primary, #1a1a2e);line-height:1.3;margin-bottom:2px}.aq-card-sub{font-size:11px;color:var(--text-tertiary, #9ca3af);text-transform:capitalize}.aq-detail{margin-top:16px;border:1px solid var(--border-color, #e5e7eb);border-radius:14px;overflow:hidden;animation:aq-fade-in .2s ease}@keyframes aq-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.aq-detail-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--d-bg, #fafafa)}.aq-detail-title{display:flex;align-items:center;gap:10px}.aq-detail-title h2{font-size:16px;font-weight:600;color:var(--text-primary, #1a1a2e);margin:0}.aq-detail-count{font-size:12px;font-weight:500;color:var(--d-accent, var(--text-tertiary));background:color-mix(in srgb,var(--d-accent, #6b7280) 10%,transparent);padding:3px 10px;border-radius:10px}.aq-detail-actions{display:flex;align-items:center;gap:8px}.aq-detail-search{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--bg-primary, #fff)}.aq-detail-search svg{color:var(--text-tertiary, #9ca3af);flex-shrink:0}.aq-detail-search input{border:none;background:transparent;font-size:12px;outline:none;width:140px;color:var(--text-primary, #1a1a2e)}.aq-detail-table-wrap{overflow-x:auto;max-height:500px;overflow-y:auto}.aq-detail-table{width:100%;border-collapse:collapse;font-size:13px}.aq-detail-table thead th{position:sticky;top:0;background:var(--bg-secondary, #fafafa);text-align:left;padding:10px 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary, #9ca3af);border-bottom:1px solid var(--border-color, #e5e7eb);white-space:nowrap}.aq-table-row{cursor:pointer;transition:background .12s ease}.aq-table-row:hover{background:var(--bg-secondary, #fafafa)}.aq-table-row td{padding:12px 16px;border-bottom:1px solid var(--border-color-light, #f3f4f6);vertical-align:middle;white-space:nowrap}.aq-table-row:last-child td{border-bottom:none}.aq-table-item-title{font-weight:600;color:var(--text-primary, #1a1a2e)}.aq-table-age{font-size:12px;color:var(--text-secondary, #6b7280);font-variant-numeric:tabular-nums}.aq-table-meta{display:flex;gap:5px;flex-wrap:wrap}.aq-meta-chip{display:inline-block;font-size:11px;padding:2px 8px;border-radius:5px;background:var(--bg-tertiary, #f0f0f5);color:var(--text-secondary, #6b7280)}.aq-table-action{color:var(--text-tertiary, #d1d5db);width:30px}.aq-table-row:hover .aq-table-action{color:var(--text-secondary, #6b7280)}.aq-table-empty{text-align:center;padding:40px 16px!important;color:var(--text-tertiary, #9ca3af);font-size:13px}.aq-sev-dot{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--dot-color)}.aq-sev-dot-circle{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--dot-color)}.aq-sev-filter-bar{display:flex;align-items:center;gap:6px;padding:10px 20px;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--bg-primary, #fff)}.aq-sev-filter-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border:1px solid var(--border-color, #e5e7eb);border-radius:16px;background:transparent;cursor:pointer;font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280);transition:all .15s ease}.aq-sev-filter-btn:hover{border-color:var(--sf-color, var(--color-primary, #6366f1));color:var(--sf-color, var(--text-primary, #1a1a2e))}.aq-sev-filter-btn.active{border-color:var(--sf-color, var(--color-primary, #6366f1));background:color-mix(in srgb,var(--sf-color, var(--color-primary, #6366f1)) 10%,transparent);color:var(--sf-color, var(--color-primary, #6366f1));font-weight:600}.aq-sf-dot{width:7px;height:7px;border-radius:50%;background:var(--sf-color, var(--text-tertiary))}.aq-sf-count{font-size:11px;font-weight:700;opacity:.7}.aq-pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 20px;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #fafafa);border-radius:0 0 14px 14px}.aq-page-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--bg-primary, #fff);color:var(--text-primary, #1a1a2e);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.aq-page-btn:hover:not(:disabled){background:var(--bg-tertiary, #f0f0f5);border-color:var(--color-primary, #6366f1);color:var(--color-primary, #6366f1)}.aq-page-btn:disabled{opacity:.4;cursor:not-allowed}.aq-page-info{font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);font-variant-numeric:tabular-nums}.aq-loading,.aq-error,.aq-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:60px 20px;text-align:center;color:var(--text-tertiary, #9ca3af)}.aq-loading h3,.aq-error h3,.aq-empty h3{color:var(--text-primary, #1a1a2e);font-size:17px;font-weight:600;margin:0}.aq-loading p,.aq-error p,.aq-empty p{font-size:13px;margin:0}.aq-spinner{animation:aq-spin 1s linear infinite}@keyframes aq-spin{to{transform:rotate(360deg)}}.aq-empty svg{color:var(--status-success-text, #22c55e)}@media(max-width:768px){.aq-cards{grid-template-columns:repeat(2,1fr)}.aq-page{padding:16px}.aq-header-left h1{font-size:18px}.aq-detail-search input{width:100px}}@media(max-width:480px){.aq-cards{grid-template-columns:1fr 1fr;gap:8px}.aq-card{padding:12px}.aq-card-count{font-size:18px}}:root{--color-brand: #04adef;--color-brand-hover: #039ad6;--color-brand-light: #e8f7fe;--color-brand-soft: rgba(4, 173, 239, .08);--color-brand-gradient: linear-gradient(135deg, #04adef 0%, #0295d6 100%);color-scheme:light;--color-bg: #f8fafb;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f1f5f9;--color-bg-card: #ffffff;--color-bg-card-hover: #fafbfc;--color-bg-input: #ffffff;--color-bg-overlay: rgba(15, 23, 42, .3);--color-border: #e2e8f0;--color-border-hover: #cbd5e1;--color-border-focus: rgba(4, 173, 239, .45);--color-text: #1e293b;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--color-text-inverse: #ffffff;--color-primary: #04adef;--color-primary-hover: #039ad6;--color-primary-soft: rgba(4, 173, 239, .08);--color-primary-gradient: linear-gradient(135deg, #04adef 0%, #0295d6 100%);--color-success: #10b981;--color-success-soft: #ecfdf5;--color-warning: #f59e0b;--color-warning-soft: #fffbeb;--color-danger: #ef4444;--color-danger-soft: #fef2f2;--color-info: #04adef;--color-info-soft: #e8f7fe;--font-family: "Inter", -apple-system, system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(4, 173, 239, .12);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--sidebar-width: 260px;--sidebar-collapsed: 72px;--header-height: 64px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;background-color:transparent}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;overflow-y:scroll}body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text);line-height:var(--leading-normal);font-size:var(--text-base);min-height:100vh}#root{background-color:var(--color-bg);min-height:100vh}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}input,select,textarea,button{color-scheme:light;color:var(--color-text)}input,select,textarea{background-color:var(--color-bg-input)}.form-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-input);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.form-input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-soft)}.form-input::placeholder{color:var(--color-text-muted)}.form-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);margin-bottom:var(--space-1);text-transform:uppercase;letter-spacing:.03em;font-size:var(--text-xs)}.form-group{display:flex;flex-direction:column}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-tight);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff!important;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);color:#fff!important;transform:translateY(-1px);box-shadow:var(--shadow-md),var(--shadow-glow)}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-card-hover);border-color:var(--color-border-hover)}.btn-danger{background:#dc2626;color:#fff!important}.btn-danger:hover:not(:disabled){background:#b91c1c;color:#fff!important}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-primary-soft);color:var(--color-primary)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-md)}.input,.select,.textarea{width:100%;padding:var(--space-2) var(--space-3);background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-family);font-size:var(--text-sm);transition:all var(--transition-fast);outline:none}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-soft)}.input::placeholder{color:var(--color-text-muted)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-group{display:flex;flex-direction:column;gap:var(--space-1)}.form-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-hover)}.table-container{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-card);box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse}th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border)}td{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);border-bottom:1px solid var(--color-border)}tr:hover td{background:var(--color-bg-tertiary)}tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.02em}.badge-success{background:var(--color-success-soft);color:#059669}.badge-warning{background:var(--color-warning-soft);color:#d97706}.badge-danger{background:var(--color-danger-soft);color:#dc2626}.badge-info{background:var(--color-info-soft);color:#0284c7}.badge-neutral{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-fast)}.modal{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);max-width:520px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp var(--transition-slow);position:relative}.modal-lg{max-width:740px}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text)}.modal-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-6)}.resize-handle{position:absolute;bottom:0;right:0;width:20px;height:20px;cursor:nwse-resize;z-index:10;border-radius:0 0 var(--radius-xl) 0;opacity:.35;transition:opacity var(--transition-fast);background:linear-gradient(135deg,transparent 30%,var(--color-text-muted) 30%,var(--color-text-muted) 33%,transparent 33%,transparent 46%,var(--color-text-muted) 46%,var(--color-text-muted) 49%,transparent 49%,transparent 62%,var(--color-text-muted) 62%,var(--color-text-muted) 65%,transparent 65%)}.resize-handle:hover{opacity:.7}.resize-handle:active{opacity:1}.resize-edge{position:absolute;z-index:10}.resize-edge-top{top:-3px;left:8px;right:8px;height:6px;cursor:ns-resize}.resize-edge-bottom{bottom:-3px;left:8px;right:8px;height:6px;cursor:ns-resize}.resize-edge-left{left:-3px;top:8px;bottom:8px;width:6px;cursor:ew-resize}.resize-edge-right{right:-3px;top:8px;bottom:8px;width:6px;cursor:ew-resize}.resize-edge-top-left{top:-4px;left:-4px;width:14px;height:14px;cursor:nwse-resize}.resize-edge-top-right{top:-4px;right:-4px;width:14px;height:14px;cursor:nesw-resize}.resize-edge-bottom-left{bottom:-4px;left:-4px;width:14px;height:14px;cursor:nesw-resize}.resize-edge-bottom-right{bottom:-4px;right:-4px;width:14px;height:14px;cursor:nwse-resize}.toast-container{position:fixed;top:var(--space-4);right:var(--space-4);z-index:2000;display:flex;flex-direction:column;gap:var(--space-2)}.toast{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);box-shadow:var(--shadow-lg);animation:slideIn var(--transition-base);max-width:400px;display:flex;align-items:center;gap:var(--space-3)}.toast-success{background:var(--color-success-soft);border:1px solid #a7f3d0;color:#059669}.toast-error{background:var(--color-danger-soft);border:1px solid #fecaca;color:#dc2626}.toast-info{background:var(--color-info-soft);border:1px solid #bae6fd;color:#0284c7}.page{padding:var(--space-8)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-8);min-width:0;gap:var(--space-3);flex-wrap:wrap}.page-title{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-text)}.page-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.w-full{width:100%}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--color-text-secondary)}.text-sm{font-size:var(--text-sm)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.spin{animation:spin .8s linear infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);color:var(--color-text-muted);text-align:center;gap:var(--space-4)}.empty-state-icon{opacity:.4}.mobile-only{display:none!important}.touch-target{min-height:44px;min-width:44px}@media(max-width:768px){:root{--sidebar-width: 0px;--header-height: 56px}.mobile-only{display:flex!important}.desktop-only{display:none!important}.page{padding:var(--space-4) var(--space-3)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4)}.page-title{font-size:var(--text-xl)}.page-subtitle{font-size:var(--text-xs)}.modal-overlay{padding:var(--space-3);align-items:flex-end}.modal{max-width:100%;width:100%;max-height:90vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-5)}.modal-lg{max-width:100%}.modal-header{margin-bottom:var(--space-4)}.modal-actions{flex-direction:column;margin-top:var(--space-4)}.modal-actions .btn{width:100%;justify-content:center}.toast-container{top:auto;bottom:var(--space-4);left:var(--space-3);right:var(--space-3)}.toast{max-width:100%}.table-container{border-radius:var(--radius-md)}th,td{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.form-input,.input,.select,.textarea{font-size:16px}.card{padding:var(--space-4);border-radius:var(--radius-md)}.btn{padding:var(--space-3) var(--space-4);min-height:44px}.btn-sm{padding:var(--space-2) var(--space-3);min-height:36px}.empty-state{padding:var(--space-8)}}@media(max-width:480px){.page{padding:var(--space-3) var(--space-2)}.page-title{font-size:var(--text-lg)}.modal{padding:var(--space-4);max-height:92vh}}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.thin-scrollbar::-webkit-scrollbar{height:3px!important;width:0}.thin-scrollbar::-webkit-scrollbar-track{background:transparent}.thin-scrollbar::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}
