*,*:before,*:after{box-sizing:border-box}:root{--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 8px 24px rgba(0, 0, 0, .14);--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--color-success: #34d399;--color-danger: #f87171;--color-warning: #fbbf24}[data-preset=slate],[data-preset=gold]{--color-bg: #0f1218;--color-surface: #171b24;--color-surface-2: #1e2430;--color-border: #2a3140;--color-accent: #6366f1;--color-accent-soft: #c7d2fe;--color-accent-text: #ffffff;--color-text: #e8ecf1;--color-text-secondary: #b8c0cc;--color-muted: #8b95a5;--color-input-bg: #12161e;--color-label: #9aa3b2}[data-preset=gold]{--color-accent: #c9a227;--color-accent-soft: #e8dcc0;--color-accent-text: #1a1508}[data-preset=luxcore]{--color-bg: #0f172a;--color-surface: #111827;--color-surface-2: #1e293b;--color-border: #334155;--color-accent: #d4af37;--color-accent-soft: #f5e6a8;--color-accent-text: #1a1508;--color-text: #f8fafc;--color-text-secondary: #94a3b8;--color-muted: #7c8da5;--color-input-bg: #0f172a;--color-label: #94a3b8;--color-success: #22c55e;--color-danger: #ef4444;--color-warning: #f59e0b;--color-info: #38bdf8}[data-preset=ruby]{--color-bg: #120d10;--color-surface: #1a1216;--color-surface-2: #221a1f;--color-border: #3a2a32;--color-accent: #e879a9;--color-accent-soft: #fbcfe8;--color-accent-text: #1f0a14;--color-text: #ece7ea;--color-text-secondary: #c4b8be;--color-muted: #9a8a92;--color-input-bg: #140e12;--color-label: #a8949e}[data-preset=emerald]{--color-bg: #0a1210;--color-surface: #111a16;--color-surface-2: #172420;--color-border: #264038;--color-accent: #34d399;--color-accent-soft: #a7f3d0;--color-accent-text: #052e16;--color-text: #e6f0eb;--color-text-secondary: #b8cfc4;--color-muted: #7a9488;--color-input-bg: #0c1512;--color-label: #8faaa0}[data-preset=ocean]{--color-bg: #0a1018;--color-surface: #111827;--color-surface-2: #172033;--color-border: #243044;--color-accent: #38bdf8;--color-accent-soft: #bae6fd;--color-accent-text: #082f49;--color-text: #e5edf5;--color-text-secondary: #b8c9d9;--color-muted: #8494a7;--color-input-bg: #0c121c;--color-label: #8fa3b8}[data-preset=violet]{--color-bg: #0e0a14;--color-surface: #161022;--color-surface-2: #1e1630;--color-border: #322848;--color-accent: #a78bfa;--color-accent-soft: #ddd6fe;--color-accent-text: #2e1065;--color-text: #ebe6f2;--color-text-secondary: #c4b8d4;--color-muted: #9588a8;--color-input-bg: #110c18;--color-label: #a894c4}[data-preset=amber]{--color-bg: #100e0a;--color-surface: #18140e;--color-surface-2: #221c14;--color-border: #3a3020;--color-accent: #fbbf24;--color-accent-soft: #fde68a;--color-accent-text: #451a03;--color-text: #f0ebe3;--color-text-secondary: #cfc4b4;--color-muted: #9a9080;--color-input-bg: #120f0a;--color-label: #a89880}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font:inherit;touch-action:manipulation}input,select,textarea{font-size:16px}.page{min-height:100vh;min-height:100dvh;background:var(--color-bg);color:var(--color-text)}.container{width:100%;max-width:1200px;margin:0 auto;padding:12px}@media (min-width: 768px){.container{padding:16px 24px}}.nav{background:color-mix(in srgb,var(--color-surface) 92%,var(--color-bg));border-bottom:1px solid var(--color-border);padding:10px 14px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media (min-width: 768px){.nav{padding:10px 24px}}.nav-title{color:var(--color-text);margin:0;font-size:.95rem;font-weight:600;line-height:1.3;flex:1 1 160px;letter-spacing:-.01em}@media (min-width: 768px){.nav-title{font-size:1.1rem}}.nav-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%}@media (min-width: 480px){.nav-actions{width:auto}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:38px;padding:8px 14px;border-radius:var(--radius-sm);border:none;font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap;flex:1;transition:background .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease}.btn:active:not(:disabled){transform:scale(.98)}.btn-gold{background:var(--color-accent);color:var(--color-accent-text);box-shadow:0 1px 2px #0000001f}.btn-gold:hover:not(:disabled){filter:brightness(1.08)}.btn-outline-muted{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-outline-muted:hover:not(:disabled){background:var(--color-surface-2);border-color:color-mix(in srgb,var(--color-accent) 35%,var(--color-border));color:var(--color-text)}@media (min-width: 480px){.btn{flex:none}}.btn-outline{background:transparent;color:var(--color-accent);border:1px solid color-mix(in srgb,var(--color-accent) 50%,var(--color-border))}.btn-outline:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.btn-danger-outline{background:transparent;color:#ef4444;border:1px solid #ef4444}.btn-success-outline{background:transparent;color:#10b981;border:1px solid #10b981}.form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;margin-bottom:16px;box-shadow:var(--shadow-sm)}@media (min-width: 768px){.form-card:not(.form-card-wide):not(.workforce-calendar-card):not(.workforce-sidebar-card){padding:16px;max-width:560px}.app-shell-content .form-card,.app-shell-content .form-card-wide{max-width:none!important;width:100%}}.form-title{color:var(--color-text);font-size:.95rem;font-weight:600;margin:0 0 12px;letter-spacing:-.01em}.form-stack,.form-row{display:flex;flex-direction:column;gap:10px}@media (min-width: 640px){.form-row{flex-direction:row;align-items:stretch}.form-row .field-grow{flex:1}}.form-card-wide{max-width:none}.field label{display:block;font-size:12px;font-weight:500;color:var(--color-label, var(--color-muted));margin-bottom:5px;letter-spacing:.01em}.input,.select{width:100%;min-height:42px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-input-bg, var(--color-surface-2));color:var(--color-text);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .15s ease,box-shadow .15s ease}.select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%238b95a5' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.input-gold-border{border-color:var(--color-accent)}.input:focus,.select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 22%,transparent)}.checkbox-row{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}.checkbox-row input{width:20px;height:20px;accent-color:var(--color-accent)}.checkbox-row span{color:var(--color-text-secondary);font-size:14px}.login-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--color-bg)}.login-card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:28px 20px;text-align:center;box-shadow:var(--shadow-md)}@media (min-width: 480px){.login-card{padding:40px 32px}}.login-tenant-hint{margin:-4px 0 8px;text-align:center}.login-title{color:var(--color-text);font-weight:600;letter-spacing:-.02em;margin:0 0 28px;font-size:1.15rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}@media (min-width: 640px){.stats-grid{grid-template-columns:repeat(4,1fr);gap:10px}}@media (min-width: 960px){.stats-grid-compact{grid-template-columns:repeat(6,minmax(0,1fr))}}.page-layout-group,.report-grid-2,.attendance-panel .attendance-grid{display:grid;grid-template-columns:1fr;gap:12px;align-items:start;min-width:0;width:100%}@media (min-width: 960px){.page-layout-group,.report-grid-2,.attendance-panel .attendance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.page-actions-col{display:flex;flex-direction:column;gap:12px;min-width:0}.app-shell-content .container>.page-layout-group,.app-shell-content .container>.report-grid-2{grid-column:1 / -1}.stat-card{background:var(--color-surface);border-radius:var(--radius-md);padding:12px 10px;text-align:center;border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.stat-card-btn{cursor:pointer;transition:transform .15s,box-shadow .15s;font-family:inherit;color:inherit}.stat-card-btn:active{transform:scale(.97)}.stat-card-active{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 50%,transparent);border-color:var(--color-accent)}.link-btn{background:none;border:none;color:var(--color-accent);text-decoration:underline;cursor:pointer;font:inherit;padding:0}.link-danger{color:#ef4444}.form-hint{margin:-4px 0 12px;font-size:13px;color:var(--color-muted)}.category-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.category-chip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);font-size:14px}.category-chip-inactive{opacity:.55}.category-chip-actions{display:flex;flex-wrap:wrap;gap:10px}.stat-value{font-size:1.25rem;font-weight:700;line-height:1.2;color:var(--color-text)}.stat-card-accent{border-color:color-mix(in srgb,var(--color-accent) 35%,var(--color-border))}.stat-card-accent .stat-value{color:var(--color-accent)}@media (min-width: 768px){.stat-value{font-size:1.4rem}}.stat-label{font-size:10px;color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.rooms-grid{display:grid;grid-template-columns:1fr;gap:10px;align-items:start}@media (min-width: 400px){.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}}@media (min-width: 768px){.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}.room-card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);overflow:hidden;box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.room-card-clickable .room-header{cursor:pointer;transition:filter .15s ease}.room-card-clickable .room-header:hover{filter:brightness(1.08)}.room-card-expanded{border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 35%,transparent)}.modal-rent{max-width:min(1120px,calc(100vw - 16px));width:100%;max-height:92dvh;overflow-y:auto}.modal-rent .modal-subtitle{margin-bottom:0}.rent-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 16px;margin-bottom:16px;flex-wrap:wrap}.rent-flow-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text-muted)}.rent-flow-iniciado{color:#93c5fd;border-color:color-mix(in srgb,#93c5fd 35%,transparent)}.rent-flow-ticket_impreso{color:#fcd34d;border-color:color-mix(in srgb,#fcd34d 35%,transparent)}.rent-flow-pago_pendiente{color:#fdba74;border-color:color-mix(in srgb,#fdba74 35%,transparent)}.rent-flow-pagado{color:#86efac;border-color:color-mix(in srgb,#86efac 35%,transparent)}.rent-modal-layout{display:grid;grid-template-columns:1fr;gap:14px 20px;align-items:start}@media (min-width: 720px){.rent-modal-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}@media (min-width: 960px){.rent-modal-layout{grid-template-columns:minmax(0,1fr) minmax(0,.95fr) minmax(240px,280px)}}.rent-modal-form.form-stack{gap:10px}.rent-modal-guest-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width: 479px){.rent-modal-guest-row{grid-template-columns:1fr}}.rent-modal-promo-row{display:grid;grid-template-columns:1fr;gap:10px}@media (min-width: 560px){.rent-modal-promo-row{grid-template-columns:1fr 1fr}}.rent-modal-rates{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px}.rent-modal-rates .rate-picker-title{margin-bottom:8px}.modal-rent .rate-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.modal-rent .rate-picker-btn{min-height:72px;justify-content:center}.modal-rent .rate-picker-btn--selected{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,var(--color-surface-2));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 40%,transparent)}.rent-summary-panel{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 16px}.rent-summary-panel--highlight{border-color:color-mix(in srgb,var(--color-accent) 35%,var(--color-border))}.rent-summary-title{margin:0 0 10px;font-size:.92rem;font-weight:600}.rent-summary-list{margin:0;display:grid;gap:8px}.rent-summary-list>div{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;font-size:.88rem}.rent-summary-list dt{margin:0;color:var(--color-text-muted);font-weight:500}.rent-summary-list dd{margin:0;text-align:right;font-weight:600;word-break:break-word}.rent-summary-total{margin-top:4px;padding-top:10px;border-top:1px solid var(--color-border)}.rent-summary-total dd{color:var(--color-accent);font-size:1rem}.rent-summary-hint{margin:12px 0 0;font-size:.78rem;line-height:1.4}.rent-summary-notes,.rent-summary-notes-row dd{font-size:.82rem;line-height:1.35}.rent-notes-input{min-height:64px;resize:vertical}.rent-modal-actions{flex-wrap:wrap;gap:10px}.rent-modal-registered{display:grid;gap:14px}.rent-post-actions{display:flex;flex-wrap:wrap;gap:10px}.rent-post-actions .btn{flex:1 1 160px}@media (max-width: 479px){.modal-rent{max-width:calc(100vw - 8px);padding:20px 14px 24px}.rent-post-actions{flex-direction:column}.rent-post-actions .btn{width:100%;flex:none}.rent-modal-actions .btn{width:100%}}.modal-rent .upsell-hint{margin:0 0 10px;font-size:.82rem}.modal-rent .modal-actions{margin-top:14px;padding-top:12px;border-top:1px solid var(--color-border)}.modal-rent .form-stack .field{margin-bottom:0}.modal-rent .loyalty-box{padding:8px 10px}.modal-stay{max-width:min(540px,96vw);max-height:94vh;overflow-y:auto}.modal-stay-body{gap:10px}.modal-timer-wrap{margin-bottom:8px}.room-fields-compact{display:grid;grid-template-columns:1fr 1fr;gap:8px}.room-fields-compact .field:last-of-type,.room-fields-compact .checkbox-row{grid-column:1 / -1}.dashboard-page .room-body-compact{padding:4px 6px}.dashboard-page .room-body-compact .btn{min-height:28px;padding:4px 8px;font-size:11px}.room-type-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);background:var(--color-surface-2);padding:2px 8px;border-radius:20px}.rate-picker{padding:10px 12px;background:var(--color-surface-2);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px}.rate-picker-title{margin:0;font-size:12px;font-weight:600;color:var(--color-accent);text-transform:uppercase;letter-spacing:.4px}.rate-picker-empty{margin:0;text-align:center}.rate-picker-list{display:flex;flex-direction:column;gap:6px}.rate-picker-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.rate-picker-btn:hover,.rate-picker-btn:focus-visible{border-color:var(--color-accent);background:#1a2438;outline:none}.rate-picker-name{font-weight:600;font-size:14px;color:#fff}.rate-picker-meta{font-size:12px;color:var(--color-accent)}.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}.rooms-board{margin-top:8px}.rooms-board-title{margin:0 0 16px;font-size:1.1rem;color:var(--color-accent);font-weight:600}.rooms-section{margin-bottom:20px}.rooms-section-title{margin:0 0 10px;font-size:.95rem;color:var(--color-text-secondary);font-weight:600;display:flex;align-items:center;gap:8px}.rooms-section-count{font-size:11px;font-weight:600;color:var(--color-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;padding:2px 8px}.room-header{position:relative;padding:10px 12px;text-align:center;border-top:3px solid var(--room-accent, var(--color-border));background:color-mix(in srgb,var(--room-accent, var(--color-border)) 10%,var(--color-surface))}.room-header[data-status=disponible]{--room-accent: #10b981}.room-header[data-status=reservada]{--room-accent: #3b82f6}.room-header[data-status=ocupada]{--room-accent: #ef4444}.room-header[data-status=ocupada-pagada]{--room-accent: #eab308}.room-header[data-status=limpieza]{--room-accent: #d97706}.room-header[data-status=mantenimiento]{--room-accent: #6b7280}.room-admin-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-muted);font-size:14px;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}.room-admin-btn:hover{color:var(--color-text);border-color:var(--color-accent)}.room-header-top{display:flex;flex-direction:column;align-items:center;gap:4px}.room-name{margin:0;color:var(--color-text);font-size:1.15rem;font-weight:700;line-height:1.2}.room-tariff-name{font-size:.75rem;color:var(--color-muted);font-weight:500;text-transform:uppercase;letter-spacing:.4px}.room-rate-badge{font-size:1rem;font-weight:700;color:var(--room-accent, var(--color-accent))}.room-tap-hint{font-size:.72rem;color:var(--color-muted);font-weight:500}.stay-timer{margin-top:8px;padding:6px 10px;background:var(--color-surface-2);border-radius:6px;border:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;gap:1px}.stay-timer-label{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--color-muted)}.stay-timer-value{font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--color-text);line-height:1.2}.stay-timer-urgent{border-color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,var(--color-surface-2));animation:pulse-urgent 1.5s ease-in-out infinite}.stay-timer-urgent .stay-timer-value{color:#d97706}.stay-timer-expired{border-color:#ef4444;background:color-mix(in srgb,#ef4444 12%,var(--color-surface-2))}.stay-timer-expired .stay-timer-value{color:#dc2626}.stay-timer-overtime-meta{display:flex;flex-direction:column;gap:4px;margin-top:6px;font-size:.72rem;line-height:1.35;color:var(--color-text-secondary);text-align:center}.stay-timer-total-due{font-weight:700;color:var(--color-warning)}@keyframes pulse-urgent{0%,to{opacity:1}50%{opacity:.85}}.room-price-block{display:flex;flex-direction:column;align-items:center;gap:2px}.room-header h2{margin:0;color:#fff;font-size:1.25rem;text-shadow:1px 1px 2px rgba(0,0,0,.4)}.room-stay-info{background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:8px 10px;font-size:12px;display:flex;flex-direction:column;gap:4px}.room-stay-info span{color:var(--color-accent);margin-right:6px}.room-stay-info strong{color:#10b981}.room-body{padding:10px 12px;display:flex;flex-direction:column;gap:8px}.room-fields{padding:10px;background:var(--color-bg);border-radius:6px;border:1px solid var(--color-border)}.room-fields p{margin:0 0 4px;font-size:11px;color:var(--color-accent)}.room-fields .hint{margin-top:6px;font-size:10px;color:#10b981;text-align:center}.field-optional{font-size:10px;color:var(--color-muted);font-weight:400;text-transform:none}.checkbox-row{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;color:var(--color-text-secondary);font-size:13px}.extend-section{padding:10px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px}.extend-label{margin:0 0 8px;font-size:12px;color:var(--color-accent);font-weight:600;text-align:center}.extend-buttons{display:flex;gap:8px}.extend-btn{flex:1;min-height:36px!important;padding:6px 8px!important;font-size:13px!important}.hint-warn{color:#f59e0b;text-align:center}.btn:disabled{opacity:.45;cursor:not-allowed}.checkbox-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent);cursor:pointer;flex-shrink:0}.plate-input{text-transform:uppercase}.page-header{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}@media (min-width: 640px){.page-header{flex-direction:row;align-items:flex-start;justify-content:space-between}}.page-title{color:var(--color-accent);margin:0;font-size:1.35rem}.page-subtitle{color:var(--color-muted);margin:6px 0 0;font-size:14px}.msg{margin:0 0 20px;font-size:.9rem;padding:12px 14px;border-radius:8px}.msg-ok{color:#10b981;background:#10b9811a;border:1px solid rgba(16,185,129,.3)}.msg-error{color:#f87171;background:#f871711a;border:1px solid rgba(248,113,113,.3)}.trial-banner{margin:0 0 16px;padding:14px 16px;border-radius:10px;border:1px solid color-mix(in srgb,var(--color-accent) 45%,transparent);background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.trial-banner-urgent{border-color:#f59e0b99;background:#f59e0b1f}.trial-banner-text{color:#f5e6b8;font-size:.95rem}.trial-banner-hint{margin:6px 0 0;color:var(--color-text-secondary);font-size:.85rem}.table-wrap{background:var(--color-surface);border-radius:10px;border:1px solid var(--color-border);overflow:hidden}.users-table{width:100%;border-collapse:collapse}.users-table th{padding:14px;color:var(--color-text-secondary);text-align:left;background:color-mix(in srgb,var(--color-surface-2) 82%,var(--color-accent) 18%);font-size:13px}.users-table td{padding:14px;border-top:1px solid var(--color-border);vertical-align:middle;color:var(--color-text)}.users-table .actions-cell{text-align:right}.action-group{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.action-group .btn{min-height:40px;padding:8px 12px;font-size:13px}.badge-you{display:inline-block;margin-left:8px;font-size:11px;color:var(--color-accent);border:1px solid var(--color-accent);border-radius:4px;padding:2px 6px}.row-inactive{background:color-mix(in srgb,var(--color-muted) 6%,transparent)}.row-inactive td{color:var(--color-text-secondary)}.empty-state{padding:30px;text-align:center;color:var(--color-muted)}.users-table tr.empty-row td{display:block;text-align:center}.users-table tr.empty-row td:before{display:none}@media (max-width: 767px){.table-wrap{background:transparent;border:none;overflow:visible}.users-table thead{display:none}.users-table,.users-table tbody,.users-table tr,.users-table td{display:block;width:100%}.users-table tr{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;margin-bottom:12px;padding:4px 0}.users-table td{border:none;padding:8px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right}.users-table td:before{content:attr(data-label);color:var(--color-accent);font-size:12px;text-transform:uppercase;flex-shrink:0;text-align:left}.users-table td.actions-cell{flex-direction:column;align-items:stretch;padding-top:12px;border-top:1px solid var(--color-border);margin-top:4px}.users-table td.actions-cell:before{display:none}.action-group{flex-direction:column}.action-group .btn{width:100%}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:flex-end;justify-content:center;z-index:1000;padding:0}@media (min-width: 640px){.modal-overlay{align-items:center;padding:24px}}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px 16px 0 0;padding:24px 20px 32px;width:100%;max-width:min(580px,100%);max-height:94dvh;overflow-y:auto;-webkit-overflow-scrolling:touch}@media (min-width: 640px){.modal{border-radius:12px;padding:28px 32px 32px;max-height:94vh}}.modal-wide{max-width:min(920px,96vw)}.modal.rent-room-modal{width:min(95vw,1100px);max-width:1100px;max-height:90vh;padding:0;overflow:hidden;display:flex;flex-direction:column;border-radius:12px}@media (max-width: 767px){.modal.rent-room-modal{width:96vw;max-width:96vw;max-height:90vh;border-radius:12px 12px 0 0}}.rent-room-modal .rent-modal-footer{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;width:100%;padding:16px 28px 24px;border-top:1px solid var(--color-border);background:var(--color-surface)}.rent-room-modal .rent-modal-footer .btn{flex:1 1 140px;min-height:44px}@media (min-width: 768px){.rent-room-modal .rent-modal-layout--2col{grid-template-columns:1fr 1fr}}.rent-room-modal .rent-summary-panel{margin-top:0}@media (max-width: 767px){.rent-room-modal .rent-modal-header{padding:20px 16px 0}.rent-room-modal .rent-modal-body{padding:12px 16px}.rent-room-modal .rent-modal-footer{padding:12px 16px 20px;flex-direction:column}.rent-room-modal .rent-modal-footer .btn{width:100%;flex:none}}.modal .table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.data-table tr.row-selected td{background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.modal-title{color:var(--color-accent);margin:0 0 8px;font-size:1.25rem;line-height:1.3;word-break:break-word}.modal-subtitle{color:var(--color-muted);margin:0 0 24px;font-size:14px;word-break:break-all}.modal-actions{display:flex;flex-direction:column;gap:10px;margin-top:10px}@media (min-width: 480px){.modal-actions{flex-direction:row}}.modal-actions .btn{flex:1}.rates-grid{display:grid;grid-template-columns:1fr;gap:10px}@media (min-width: 480px){.rates-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}.rate-card-header{padding:12px;background:#1b2440;display:flex;justify-content:space-between;align-items:center;gap:8px}.rate-card-header h3{margin:0;color:var(--color-text-secondary);font-size:.9rem}.rate-price{color:var(--color-accent);font-weight:700;font-size:1rem;white-space:nowrap}.rate-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.rate-card-body{padding:10px 12px;font-size:13px;color:var(--color-muted)}.rate-card-body p{margin:0 0 4px}.rate-desc{color:var(--color-muted);font-size:12px}.rate-card-actions{padding:8px 12px 12px;display:flex;flex-wrap:wrap;gap:8px}.rate-card-actions .btn{flex:1;min-width:120px}.duration-presets{display:flex;flex-wrap:wrap;gap:8px}.payment-badge{margin-top:6px;display:inline-block;font-size:10px;font-weight:600;padding:3px 8px;border-radius:20px}.payment-paid{background:color-mix(in srgb,#eab308 18%,transparent);color:#ca8a04;border:1px solid color-mix(in srgb,#eab308 55%,transparent)}.payment-pending{background:#f59e0b33;color:#f59e0b;border:1px solid #f59e0b}.stays-list{display:flex;flex-direction:column;gap:12px}.stay-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:12px}.stay-pending{border-color:#f59e0b}.stay-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.stay-card-header h3{margin:0;color:var(--color-accent);font-size:1rem}.stay-rate{font-size:12px;color:var(--color-muted)}.stay-amount{color:#10b981;font-weight:700;font-size:1rem;white-space:nowrap}.stay-card-body{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--color-text-secondary);margin-bottom:8px}.stay-card-body span{color:var(--color-accent);margin-right:6px}.preset-btn{flex:none!important;min-height:32px!important;padding:4px 10px!important;font-size:11px!important}.cash-methods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.cash-method-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#2a365580;border-radius:8px;border:1px solid var(--color-border);font-size:13px}.cash-method-item strong{color:var(--color-accent)}.dashboard-page .container{padding:8px 10px}@media (min-width: 768px){.dashboard-page .container{padding:12px 16px}}.dashboard-page .stats-grid{gap:6px;margin-bottom:10px}.dashboard-page .stat-card{padding:6px 4px;border-radius:6px}.dashboard-page .stat-value{font-size:1.05rem}@media (min-width: 768px){.dashboard-page .stat-value{font-size:1.15rem}}.dashboard-page .stat-label{font-size:9px;margin-top:1px}.dashboard-page .form-card{padding:10px 12px;margin-bottom:10px}.dashboard-page .form-card-wide{max-width:none}.dashboard-page .form-row{gap:6px}.dashboard-page .form-row .input,.dashboard-page .form-row .select,.dashboard-page .form-row .btn{min-height:34px;font-size:13px}.dashboard-page .form-title{font-size:.8rem;margin-bottom:8px}.dashboard-page .rooms-board{margin-top:4px}.dashboard-page .rooms-board-title{margin:0 0 10px;font-size:.9rem}.dashboard-page .rooms-section{margin-bottom:12px}.dashboard-page .rooms-section-title{margin:0 0 6px;font-size:.8rem;gap:6px}.dashboard-page .rooms-section-count{font-size:10px;padding:1px 6px}.dashboard-page .rooms-grid-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.dashboard-page .rooms-grid{gap:6px;align-items:start}.dashboard-page .rooms-grid-cols-4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;width:100%}@media (min-width: 640px){.dashboard-page .rooms-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px}}.dashboard-page .room-card{border-radius:6px}.dashboard-page .room-header{padding:6px 8px}.dashboard-page .room-admin-btn{top:4px;right:4px;width:22px;height:22px;font-size:11px;border-radius:4px}.dashboard-page .room-header-top{gap:2px}.dashboard-page .room-name,.dashboard-page .room-header h2{font-size:.95rem}.dashboard-page .room-tariff-name{font-size:.65rem;letter-spacing:.3px}.dashboard-page .room-rate-badge{font-size:.85rem}.dashboard-page .room-tap-hint{font-size:9px;margin-top:0}.dashboard-page .stay-timer{margin-top:4px;padding:4px 6px;border-radius:4px}.dashboard-page .stay-timer-label{font-size:8px}.dashboard-page .stay-timer-value{font-size:1rem}.dashboard-page .payment-badge{margin-top:4px;font-size:9px;padding:2px 6px}.dashboard-page .room-body{padding:6px 8px;gap:5px}.dashboard-page .room-stay-info{padding:5px 7px;font-size:10px;gap:2px;border-radius:4px}.dashboard-page .room-fields{padding:6px 8px}.dashboard-page .room-fields p{font-size:10px;margin-bottom:2px}.dashboard-page .room-fields .input{min-height:34px;padding:5px 8px;font-size:14px}.dashboard-page .room-fields .hint{margin-top:4px;font-size:9px}.dashboard-page .checkbox-row{margin-top:6px;padding:6px 8px;gap:8px;font-size:11px}.dashboard-page .checkbox-row input[type=checkbox]{width:15px;height:15px}.dashboard-page .extend-section{padding:6px 8px}.dashboard-page .extend-label{margin-bottom:5px;font-size:10px}.dashboard-page .extend-buttons{gap:5px}.dashboard-page .extend-btn{min-height:28px!important;padding:4px 6px!important;font-size:11px!important}.dashboard-page .rate-picker{padding:6px 8px;gap:5px}.dashboard-page .rate-picker-title{font-size:10px}.dashboard-page .rate-picker-list{gap:4px}.dashboard-page .rate-picker-btn{padding:6px 8px;border-radius:6px}.dashboard-page .rate-picker-name{font-size:12px}.dashboard-page .rate-picker-meta{font-size:10px}.dashboard-page .room-body .btn{min-height:30px;padding:5px 8px;font-size:11px}.dashboard-page .room-body .select{min-height:34px;padding:5px 8px;font-size:14px}.dashboard-page .hint-warn{font-size:10px}.dashboard-page .msg{padding:8px 10px;font-size:12px;margin-bottom:8px}.report-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.btn-sm{min-height:34px;padding:6px 12px;font-size:13px}.report-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.report-tab{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-muted);padding:10px 16px;border-radius:8px;cursor:pointer;font-family:inherit;font-size:14px;transition:border-color .15s,color .15s}.report-tab-active{border-color:var(--color-accent);color:var(--color-accent)}.report-grid-2{margin-bottom:12px}@media (min-width: 768px){.report-grid-2{grid-template-columns:1fr 1fr}}.report-chart{display:flex;align-items:flex-end;gap:6px;height:120px;padding-top:8px}.report-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}.report-bar{width:100%;max-width:40px;background:linear-gradient(180deg,var(--color-accent),color-mix(in srgb,var(--color-accent) 75%,#000));border-radius:4px 4px 0 0;margin-top:auto;transition:height .3s ease}.report-bar-label{font-size:10px;color:var(--color-muted);margin-top:4px}.text-danger{color:#f87171}.audit-details{font-size:12px;max-width:280px;word-break:break-word}.reportes-page .stats-grid{grid-template-columns:repeat(2,1fr)}.loyalty-box{margin-bottom:10px;padding:10px 12px;background:color-mix(in srgb,var(--color-accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 35%,transparent);border-radius:8px}.loyalty-badge{margin:0 0 8px;color:var(--color-accent);font-size:13px}.loyalty-badge-inline{color:var(--color-accent);font-size:13px}.loyalty-preview{padding:12px;background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-accent) 25%,var(--color-border));border-radius:8px;color:var(--color-text-secondary);font-size:14px}.loyalty-preview strong{color:var(--color-text)}.table-meta{display:block;margin-top:2px;font-size:.82rem;color:var(--color-text-secondary)}.clients-page .users-table td,.client360-page .users-table td,.clients-page .form-card-muted .hint strong,.client360-page .form-card-muted .hint strong{color:var(--color-text)}.loyalty-leaders-head .form-subtitle{color:var(--color-text-secondary)}.rent-open-cash-link{display:inline-flex;align-self:flex-start;text-decoration:none;margin-top:4px}@media (min-width: 900px){.reportes-page .stats-grid{grid-template-columns:repeat(4,1fr)}}.ajustes-page{background:var(--color-bg)}.ajustes-page .nav-compact{width:100%;max-width:none;padding:10px 16px;margin-bottom:0}.ajustes-page .nav-title{font-size:1rem;letter-spacing:.5px}.ajustes-container,.app-shell-content .container{width:100%;max-width:1200px;margin:0 auto;padding:12px 16px 24px}.app-shell-content .ajustes-container,.app-shell-content .container{max-width:none;padding:8px 20px 24px}.page-layout-grid,.ajustes-layout{display:grid;grid-template-columns:1fr;gap:12px;align-items:start}@media (min-width: 960px){.page-layout-grid,.ajustes-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}.page-layout-stack,.app-shell-content .container.page-layout-stack,.app-shell-content .ajustes-page .container,.app-shell-content .dashboard-page .container,.app-shell-content .pos-page .container,.app-shell-content .reportes-page .container,.app-shell-content .workforce-page .container,.app-shell-content .limpieza-mobile .container,.app-shell-content .onboarding-page .container{display:flex;flex-direction:column;gap:12px}.app-shell-content .clients-page .container,.app-shell-content .tarifas-page .container,.app-shell-content .historial-page .container,.app-shell-content .cajas-page .container,.app-shell-content .reservas-page .container,.app-shell-content .usuarios-page .container,.app-shell-content .promociones-page .container,.app-shell-content .gastos-page .container,.app-shell-content .waitlist-page .container,.app-shell-content .client360-page .container{display:block;max-width:none;width:100%}.page-grid-span-full,.page-span-full,.ajustes-card-span-full,.page-layout-grid>.page-span-full,.page-layout-grid>.page-save-row,.ajustes-layout>.page-span-full,.app-shell-content .container>.stats-grid,.app-shell-content .container>.table-wrap,.app-shell-content .container>.msg,.app-shell-content .container>.form-card-wide,.app-shell-content .container>.page-toolbar,.app-shell-content .container>.tab-bar,.app-shell-content .container>.workforce-tabs,.app-shell-content .container>.workforce-plan-layout,.app-shell-content .container>.trial-banner,.app-shell-content .container>.onboarding-checklist,.app-shell-content .container>.dashboard-widgets,.app-shell-content .container>.shift-handoff-panel,.app-shell-content .container>.stay-call-banner,.app-shell-content .container>.dashboard-overview,.app-shell-content .container>.dashboard-alerts,.app-shell-content .container>.lux-dashboard-section,.app-shell-content .container>.lux-cash-executive,.app-shell-content .container>.rooms-grid,.app-shell-content .container>.rates-grid,.app-shell-content .container>.stays-list,.app-shell-content .container>.category-list,.app-shell-content .container>.reservation-calendar-wrap,.app-shell-content .container>.cash-movements-wrap,.app-shell-content .container>.report-tabs,.app-shell-content .container>.report-grid-2,.app-shell-content .container>.attendance-panel-wrap,.app-shell-content .container>.attendance-grid{grid-column:1 / -1}.app-shell-content .form-card{min-width:0;padding:12px 14px;max-width:none!important;width:100%;margin-bottom:0}.app-shell-content .page .container>.form-card+.form-card,.app-shell-content .page .container>.page-layout-group+.form-card,.app-shell-content .page .container>.page-layout-group+.table-wrap{margin-top:0}.form-card-muted{background:color-mix(in srgb,var(--color-surface) 92%,var(--color-border));border-style:dashed}.ajustes-card-span-full{grid-column:1 / -1}.ajustes-layout-footer{margin-top:12px}.ajustes-packages-row{display:flex;flex-wrap:wrap;gap:16px 28px;font-size:13px}.ajustes-card-compact{padding:10px 14px}.ajustes-card-head-inline{margin-bottom:6px;padding-bottom:4px}.ajustes-page .msg-compact{padding:8px 10px;font-size:12px;margin-bottom:10px;border-radius:6px}.ajustes-stack,.ajustes-grid{display:contents}.ajustes-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px;box-shadow:var(--shadow-sm);min-width:0}.ajustes-card-room{margin-top:0;max-width:none}.ajustes-save-row{display:flex;justify-content:flex-end;padding:12px 14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.ajustes-card-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--color-border)}.ajustes-card-head h2{margin:0;font-size:.9rem;font-weight:600;color:var(--color-text);letter-spacing:-.01em}.ajustes-card-head p{margin:2px 0 0;font-size:11px;color:var(--color-muted)}.ajustes-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent);font-size:14px;flex-shrink:0}.ajustes-fields{display:flex;flex-direction:column;gap:6px}.ajustes-fields-2{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px}@media (min-width: 1100px){.ajustes-fields-3-wide{grid-template-columns:repeat(3,minmax(0,1fr))}}.ajustes-fields-2 .ajustes-rule{grid-column:1 / -1}@media (max-width: 520px){.ajustes-fields-2{grid-template-columns:1fr}.ajustes-container{padding:8px 10px 16px}}.field-compact label{font-size:10px;margin-bottom:3px;letter-spacing:.4px;text-transform:uppercase}.ajustes-page .input-compact,.ajustes-page .select-compact{min-height:34px;padding:6px 10px;font-size:13px;border-radius:6px}.ajustes-page .select-compact{background-position:right 10px center;padding-right:28px}.field-hint{display:block;margin-top:3px;font-size:10px;color:var(--color-accent);opacity:.85}.ajustes-rule{margin:4px 0 0;padding:6px 8px;font-size:11px;color:var(--color-muted);background:#0003;border-radius:6px;border-left:2px solid var(--color-accent)}.ajustes-muted{margin:0;font-size:11px;color:var(--color-muted);font-style:italic}.ajustes-room-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ajustes-room-form .input-compact{flex:1 1 120px;min-width:0}.ajustes-room-form .select-compact{flex:1 1 100px;min-width:0}.ajustes-room-form .btn{flex-shrink:0}.ajustes-toggle{margin-left:auto;position:relative;display:inline-flex;cursor:pointer}.ajustes-toggle input{position:absolute;opacity:0;width:0;height:0}.ajustes-toggle-track{width:36px;height:20px;background:var(--color-border);border-radius:20px;transition:background .2s;position:relative}.ajustes-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--color-muted);border-radius:50%;transition:transform .2s,background .2s}.ajustes-toggle input:checked+.ajustes-toggle-track{background:color-mix(in srgb,var(--color-accent) 35%,transparent)}.ajustes-toggle input:checked+.ajustes-toggle-track:after{transform:translate(16px);background:var(--color-accent)}.ajustes-toggle input:focus-visible+.ajustes-toggle-track{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 35%,transparent)}[data-theme=light] body,[data-theme=light] .page{background:#f3f4f6;color:#111827}[data-theme=light] .nav{background:#fff;border-bottom-color:#e5e7eb}[data-theme=light] .form-card,[data-theme=light] .stat-card,[data-theme=light] .room-card{background:#fff;border-color:#e5e7eb;color:#111827}[data-theme=light] .input,[data-theme=light] .select{background:#fff;color:#111827;border-color:#d1d5db}.rooms-board-header{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin-bottom:10px}.rooms-filters{display:flex;flex-wrap:wrap;gap:8px}.input-sm{max-width:200px;padding:6px 10px;font-size:.875rem}.stats-grid-kpi{margin-bottom:8px}.dashboard-overview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:12px;box-shadow:var(--shadow-sm)}.kpi-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--color-border)}.kpi-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 8px;border-right:1px solid var(--color-border)}.kpi-item:last-child{border-right:none}.kpi-value{font-size:1.05rem;font-weight:700;line-height:1.2;color:var(--color-text)}.kpi-item-accent .kpi-value{color:var(--color-accent)}.kpi-label{font-size:10px;color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:3px}@media (min-width: 768px){.kpi-value{font-size:1.2rem}}.status-filters{display:flex;align-items:center;gap:10px;min-width:0}.status-filters-label{flex-shrink:0;font-size:11px;font-weight:600;color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em}.status-filters-scroll{display:flex;flex-wrap:wrap;gap:6px;min-width:0;flex:1}@media (max-width: 639px){.status-filters{flex-direction:column;align-items:stretch}.status-filters-scroll{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.status-filters-scroll::-webkit-scrollbar{display:none}}.status-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text-secondary);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;font-family:inherit;transition:background .15s,border-color .15s,color .15s}.status-chip:hover{background:color-mix(in srgb,var(--color-accent) 8%,var(--color-surface-2));border-color:color-mix(in srgb,var(--color-accent) 30%,var(--color-border));color:var(--color-text)}.status-chip-active{background:color-mix(in srgb,var(--color-accent) 14%,var(--color-surface-2));border-color:var(--color-accent);color:var(--color-text);font-weight:600}.status-chip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-chip-count{font-size:11px;font-weight:700;color:var(--color-muted);background:color-mix(in srgb,var(--color-text) 6%,transparent);padding:1px 6px;border-radius:999px}.status-chip-active .status-chip-count{color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 15%,transparent)}.dashboard-overview:not(:has(.kpi-strip)) .status-filters{padding-top:0}.dashboard-overview:not(:has(.kpi-strip)){padding-top:10px;padding-bottom:10px}.dashboard-overview:not(:has(.kpi-strip)) .status-filters{margin:0}.dashboard-overview:has(.kpi-strip:only-child) .kpi-strip{border-bottom:none;margin-bottom:0;padding-bottom:0}.receipt-body{border:1px dashed var(--color-border);border-radius:8px;padding:12px;margin:12px 0}.receipt-row{display:flex;justify-content:space-between;padding:4px 0;font-size:.9rem}.receipt-total{border-top:1px solid var(--color-border);margin-top:8px;padding-top:8px;font-size:1rem}.calendar-wrap{overflow-x:auto;margin-top:12px}.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.calendar-grid{display:grid;grid-template-columns:64px repeat(7,minmax(90px,1fr));gap:4px;min-width:720px}.calendar-header{text-align:center;font-size:.75rem;padding:6px 4px;background:var(--color-surface);border-radius:4px}.calendar-day-num{font-weight:700;color:var(--color-accent)}.calendar-room-label,.calendar-room-col{font-weight:600;padding:8px 4px;background:var(--color-surface);border-radius:4px;text-align:center}.calendar-cell{min-height:56px;background:#131b2f99;border-radius:4px;padding:2px}.calendar-event{background:#3b82f640;border-left:3px solid #3b82f6;border-radius:3px;padding:2px 4px;margin-bottom:2px;font-size:.65rem}.calendar-event-time{font-weight:600}.calendar-event-price{color:var(--color-accent)}.report-chart-hours{min-height:120px}.form-row-wrap{flex-wrap:wrap}.loyalty-history{margin-top:8px}.loyalty-leaders-card{margin-bottom:0}.loyalty-leaders-card .table-wrap{max-height:280px;overflow:auto}.waitlist-entries{margin:0;padding:0;max-height:360px;overflow-y:auto}.loyalty-leaders-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.loyalty-leaders-table td strong{color:var(--color-accent)}.form-subtitle{font-size:.9rem;margin:0 0 8px;color:var(--color-accent)}.ajustes-card-wide,.ajustes-page .ajustes-card-wide{grid-column:1 / -1}.ticket-branding-grid{display:grid;grid-template-columns:140px 1fr;gap:16px 20px;align-items:start}@media (min-width: 960px){.ticket-branding-grid{grid-template-columns:140px 1fr 1fr}.ticket-fields-col{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;align-content:start}.ticket-fields-col>.field-compact:first-child,.ticket-fields-col>.field-compact:nth-child(2){grid-column:1 / -1}}@media (max-width: 560px){.ticket-branding-grid{grid-template-columns:1fr}}.ticket-logo-preview{width:120px;height:80px;border:1px dashed var(--color-border);border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0003;margin-bottom:8px}.ticket-logo-img{max-width:100%;max-height:100%;object-fit:contain}.ticket-logo-placeholder{font-size:.75rem;color:var(--color-muted)}.ticket-logo-actions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.ticket-logo-btn{cursor:pointer;margin:0}.field-label{display:block;font-size:.8rem;color:var(--color-muted);margin-bottom:6px}.receipt-preview-header{text-align:center;margin-bottom:8px}.receipt-preview-logo{max-width:120px;max-height:60px;object-fit:contain;margin-bottom:8px}.receipt-preview-contact{font-size:.8rem!important;line-height:1.4}.receipt-footer-msg{text-align:center;font-size:.85rem;color:var(--color-accent);font-style:italic;margin:0 0 12px}.extend-cta{margin-top:6px}.pull-refresh-indicator{text-align:center;padding:8px;color:var(--color-accent);font-size:.85rem}.upsell-hint{font-size:.85rem;color:var(--color-muted);margin:0}.onboarding-list{list-style:none;padding:0;margin:0 0 16px}.onboarding-list li{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}.onboarding-done{opacity:.7}.pos-room-picker{margin-bottom:16px;padding:12px 16px!important}.pos-room-picker .form-title{font-size:.95rem;margin-bottom:8px}.pos-page .pos-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.pos-layout{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 900px){.pos-layout{grid-template-columns:1fr 320px;align-items:start}}.pos-customer-type{display:flex;gap:8px;margin-bottom:12px}.pos-employee-fields{margin-bottom:16px}.pos-discount-banner{background:color-mix(in srgb,var(--color-accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 35%,transparent);border-radius:8px;padding:8px 12px;margin-bottom:12px;font-size:.85rem}.pos-category{margin-bottom:20px}.pos-category-title{font-size:.9rem;color:var(--color-accent);margin:0 0 8px;text-transform:uppercase;letter-spacing:.04em}.pos-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.pos-product-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);cursor:pointer;min-height:72px}.pos-product-btn:hover{border-color:var(--color-accent);background:#1a2540}.pos-product-name{font-size:.85rem;font-weight:600;text-align:center}.pos-product-price{color:var(--color-accent);font-weight:700;font-size:.9rem}.pos-product-stock{font-size:.7rem;color:var(--color-muted)}.pos-product-stock--low{color:#f59e0b;font-weight:600}.pos-product-btn--disabled,.pos-product-btn:disabled{opacity:.45;cursor:not-allowed}.pos-product-btn--disabled:hover,.pos-product-btn:disabled:hover{border-color:var(--color-border);background:var(--color-surface)}.pos-sale-mode{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.pos-cart{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:16px;position:sticky;top:72px}.pos-cart-list{list-style:none;padding:0;margin:0 0 12px}.pos-cart-item{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.9rem}.pos-cart-qty{display:flex;align-items:center;gap:6px}.pos-cart-qty span{min-width:20px;text-align:center}.pos-cart-price{font-size:.75rem;color:var(--color-muted)}.pos-cart-totals{border-top:1px solid var(--color-border);padding-top:8px;margin-bottom:12px}.pos-cart-row{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:4px}.pos-cart-total{font-size:1.1rem;color:var(--color-accent);margin-top:8px}.pos-cart-actions{display:flex;flex-direction:column;gap:8px}.pos-badge-dto{font-size:.75rem;color:#10b981}.pos-receipt{margin-top:16px}.limpieza-mobile .nav-compact{flex-wrap:wrap;gap:8px}.limpieza-cards{display:flex;flex-direction:column;gap:12px}.limpieza-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:16px}.limpieza-room-num{font-size:1.5rem;color:var(--color-accent)}.limpieza-card-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.limpieza-stats{margin-bottom:20px}.limpieza-timer{font-size:1.1rem;color:#f59e0b;margin:4px 0 0}.limpieza-history{overflow-x:auto;margin-top:8px}.room-change-preview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:6px;font-size:.9rem}.room-change-preview span{color:var(--color-text-secondary);margin-right:6px}.preview-highlight{color:#f59e0b;font-weight:600}.billing-options{display:flex;flex-direction:column;gap:8px}.stay-timer-grace{border-color:#6366f1;background:color-mix(in srgb,#6366f1 10%,var(--color-surface-2))}.stay-timer-grace .stay-timer-value{color:var(--color-accent)}.stay-call-banner{margin-bottom:10px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,#f59e0b 45%,transparent);background:color-mix(in srgb,#f59e0b 12%,var(--color-surface));animation:stay-call-pulse 2.5s ease-in-out infinite}@keyframes stay-call-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,#f59e0b 0%,transparent)}50%{box-shadow:0 0 0 3px color-mix(in srgb,#f59e0b 18%,transparent)}}.stay-call-banner-title{font-weight:700;font-size:.95rem;color:var(--color-text);margin-bottom:8px}.stay-call-banner-list{display:flex;flex-direction:column;gap:6px}.stay-call-banner-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:.875rem;color:var(--color-text-secondary)}.stay-call-banner-item strong{color:var(--color-text)}.stay-call-banner-phone{color:var(--color-accent);font-weight:600;text-decoration:none}.stay-call-banner-phone:hover{text-decoration:underline}.stay-call-banner-hint{margin:8px 0 0;font-size:.78rem;color:var(--color-muted)}.widget-alert-call{background:color-mix(in srgb,#f59e0b 14%,transparent);border:1px solid color-mix(in srgb,#f59e0b 45%,transparent);color:var(--color-text)}.widget-alert-grace{background:color-mix(in srgb,var(--color-accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 35%,transparent);color:var(--color-text)}.dashboard-widgets{margin-bottom:10px}.widget-alert{padding:8px 12px;border-radius:var(--radius-sm);margin-bottom:6px;font-size:.875rem;line-height:1.4}.widget-alert-danger{background:color-mix(in srgb,#ef4444 12%,transparent);border:1px solid color-mix(in srgb,#ef4444 40%,transparent);color:var(--color-text)}.widget-alert-warn{background:color-mix(in srgb,#f59e0b 12%,transparent);border:1px solid color-mix(in srgb,#f59e0b 40%,transparent);color:var(--color-text)}.widget-alert-info{background:color-mix(in srgb,var(--color-accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 35%,transparent);color:var(--color-text)}.widget-alert strong{color:var(--color-text)}.widget-warn-card{border-color:#f59e0b!important}.onboarding-checklist{margin-bottom:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 12px}.onboarding-checklist-summary{cursor:pointer;font-weight:600;font-size:.9rem;color:var(--color-text);list-style:none;display:flex;align-items:center;gap:8px}.onboarding-checklist-summary::-webkit-details-marker{display:none}.onboarding-checklist-count{font-size:11px;font-weight:700;color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,transparent);padding:2px 8px;border-radius:999px}.onboarding-checklist[open] .onboarding-list{margin-top:10px}.dashboard-alerts{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.app-shell-content .dashboard-page .container{max-width:none;padding:12px 16px 20px}@media (min-width: 1024px){.app-shell-content .dashboard-page .container{padding:16px 20px 24px}}.trial-banner-actions{margin-top:8px}.public-motel-card{max-width:480px}.public-motel-stats{margin:16px 0}.section-title{font-size:1rem;color:var(--color-text-secondary);margin:20px 0 10px;font-weight:600}.btn-lg-touch{min-height:48px;font-size:1rem;padding:12px 20px}.form-card,.modal,.table-wrap,.ajustes-card,.limpieza-card,.ticket-branding-grid,.receipt-body,.stat-card,.room-card{background:var(--color-surface);border-color:var(--color-border)}.form-title,.modal-title,.ajustes-card h2,.limpieza-room-num{color:var(--color-text)}.form-subtitle,.data-table th{color:var(--color-text-secondary)}.stat-label{color:var(--color-muted)}.input-gold-border,.select.input-gold-border,.input:focus,.select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}.input,.select,.textarea{background:var(--color-surface-2);border-color:var(--color-border);color:var(--color-text)}.hint,.field-hint,.stat-label{color:var(--color-muted)}.trial-banner{border-color:color-mix(in srgb,var(--color-accent) 45%,transparent);background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.trial-banner-text{color:var(--color-text-secondary)}[data-theme=light]{--color-bg: #e8ecf1;--color-surface: #ffffff;--color-surface-2: #f3f5f8;--color-border: #d5dbe3;--color-text: #1a2332;--color-text-secondary: #4a5568;--color-muted: #6b7280;--color-input-bg: #ffffff;--color-label: #64748b}[data-theme=light] body,[data-theme=light] .page{background:var(--color-bg);color:var(--color-text)}[data-theme=light] .nav{background:var(--color-surface);border-bottom-color:var(--color-border)}[data-theme=light] .form-card,[data-theme=light] .stat-card,[data-theme=light] .room-card,[data-theme=light] .modal,[data-theme=light] .ajustes-card{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}[data-theme=light] .input,[data-theme=light] .select{background:#fff;color:var(--color-text);border-color:var(--color-border)}.theme-palette{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.theme-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px;border-radius:10px;border:2px solid var(--color-border);background:var(--color-surface-2);cursor:pointer;text-align:left;color:var(--color-text);transition:border-color .15s,transform .1s}.theme-option:hover{border-color:var(--color-accent)}.theme-option.active{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.theme-swatch{width:100%;height:28px;border-radius:6px;border:1px solid rgba(255,255,255,.15)}.theme-option-label{font-weight:600;font-size:.9rem}.theme-option-desc{font-size:.75rem;color:var(--color-muted);line-height:1.3}.reservation-payments{display:flex;flex-direction:column;gap:10px;margin-top:8px}.reservation-payment-row{align-items:flex-end}.reservation-deposit-box{padding:12px;background:#ffffff05}.reservation-payments-history{padding:12px}.page-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.app-shell{display:flex;min-height:100vh;background:var(--color-bg)}.sidebar{width:252px;flex-shrink:0;display:flex;flex-direction:column;background:var(--color-surface);border-right:1px solid var(--color-border);position:sticky;top:0;height:100vh;z-index:200;transition:width .2s ease}.sidebar-brand{display:flex;gap:12px;align-items:center;padding:18px 14px 14px;border-bottom:1px solid var(--color-border);position:relative}.sidebar-brand-icon{font-size:1.75rem;line-height:1;flex-shrink:0}.sidebar-brand-text{flex:1;min-width:0;overflow:hidden}.sidebar-brand-name{font-weight:700;font-size:1rem;color:var(--color-text);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-brand-sub{font-size:.75rem;color:var(--color-muted);white-space:nowrap}.sidebar-collapse-btn{flex-shrink:0;width:28px;height:28px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);color:var(--color-muted);cursor:pointer;font-size:.85rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s,border-color .15s}.sidebar-collapse-btn:hover{color:var(--color-accent);border-color:var(--color-accent)}.sidebar-collapse-mobile-header{display:none}.sidebar-nav{flex:1;overflow-y:auto;padding:12px 10px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.sidebar-nav::-webkit-scrollbar{width:5px}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.sidebar-section+.sidebar-section{margin-top:16px}.sidebar-section-title{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);padding:0 10px 8px;white-space:nowrap;overflow:hidden}.sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:4px;border-radius:10px;color:var(--color-text);text-decoration:none;font-size:.92rem;transition:background .15s,color .15s,border-color .15s;border-left:3px solid transparent;position:relative}.sidebar-link:hover{background:var(--color-surface-2)}.sidebar-link-active{background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-text);font-weight:600;border-left-color:var(--color-accent)}.sidebar-link-icon{width:1.25rem;text-align:center;flex-shrink:0;font-size:1.05rem}.sidebar-link-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-shortcut{font-size:.62rem;color:var(--color-muted);opacity:.65;font-weight:500;letter-spacing:.02em}.sidebar-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-accent);color:var(--color-accent-text);font-size:.68rem;font-weight:700;line-height:18px;text-align:center;flex-shrink:0}.sidebar-badge-urgent{background:#ef4444;color:#fff;animation:sidebar-badge-pulse 2s ease-in-out infinite}@keyframes sidebar-badge-pulse{0%,to{opacity:1}50%{opacity:.75}}.sidebar-footer{padding:14px 12px 16px;border-top:1px solid var(--color-border)}.sidebar-user{display:flex;flex-direction:column;gap:2px;margin-bottom:10px;font-size:.85rem;overflow:hidden}.sidebar-user strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user span{color:var(--color-muted);font-size:.78rem}.sidebar-footer-actions{display:flex;gap:8px}.sidebar-footer-actions .btn{flex:1}.app-shell-main{flex:1;min-width:0;display:flex;flex-direction:column}.app-shell-header{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid var(--color-border);background:var(--color-surface);position:sticky;top:0;z-index:100}.app-shell-title{margin:0;font-size:1.15rem;font-weight:700}.app-shell-subtitle{margin:0;font-size:.78rem;color:var(--color-muted)}.app-shell-content{flex:1;min-width:0}.app-shell-main .page>.nav{display:none}.app-shell-main .page{min-height:auto}.sidebar-backdrop{display:none}.sidebar-toggle{display:none;flex-shrink:0}.app-shell.sidebar-collapsed .sidebar{width:72px}.app-shell.sidebar-collapsed .sidebar-brand-text,.app-shell.sidebar-collapsed .sidebar-link-label,.app-shell.sidebar-collapsed .sidebar-section-title,.app-shell.sidebar-collapsed .sidebar-user,.app-shell.sidebar-collapsed .sidebar-shortcut,.app-shell.sidebar-collapsed .sidebar-collapse-desktop{display:none}.app-shell.sidebar-collapsed .sidebar-brand{justify-content:center;padding:16px 8px}.app-shell.sidebar-collapsed .sidebar-link{justify-content:center;padding:11px 8px;gap:0}.app-shell.sidebar-collapsed .sidebar-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;line-height:16px;font-size:.6rem;padding:0 4px}.app-shell.sidebar-collapsed .sidebar-footer-actions{flex-direction:column}.app-shell.sidebar-collapsed .sidebar-logout-btn{font-size:0;padding:8px}.app-shell.sidebar-collapsed .sidebar-logout-btn:before{content:"🚪";font-size:1rem}@media (max-width: 960px){.sidebar{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform .2s ease,width .2s ease;box-shadow:8px 0 24px #00000059}.app-shell.sidebar-open .sidebar{transform:translate(0)}.app-shell.sidebar-collapsed .sidebar{width:252px}.app-shell.sidebar-collapsed.sidebar-open .sidebar-brand-text,.app-shell.sidebar-collapsed.sidebar-open .sidebar-link-label,.app-shell.sidebar-collapsed.sidebar-open .sidebar-section-title,.app-shell.sidebar-collapsed.sidebar-open .sidebar-user,.app-shell.sidebar-collapsed.sidebar-open .sidebar-shortcut{display:revert}.app-shell.sidebar-collapsed.sidebar-open .sidebar-link{justify-content:flex-start;gap:10px;padding:10px 12px}.app-shell.sidebar-collapsed.sidebar-open .sidebar-badge{position:static}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;border:none;background:#00000073;cursor:pointer}.sidebar-toggle{display:inline-flex}.sidebar-collapse-desktop{display:none}.sidebar-collapse-mobile-header{display:inline-flex}}.attendance-panel .attendance-grid{gap:12px}.attendance-coords{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.attendance-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.attendance-qr-card{text-align:center}.attendance-qr-img{max-width:280px;width:100%;border-radius:8px;background:#fff;padding:8px}.attendance-qr-url{font-size:.75rem;word-break:break-all;opacity:.7;margin:8px 0}.attendance-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:16px}.attendance-filters .field{min-width:140px}.badge-ok{color:#10b981;font-weight:600}.badge-warn{color:#f59e0b;font-weight:600}.attendance-page .attendance-card{max-width:420px}.attendance-status-box{background:var(--surface-2, rgba(255, 255, 255, .05));border-radius:8px;padding:12px 16px;margin:16px 0}.attendance-status-row{display:flex;justify-content:space-between;padding:6px 0}.attendance-punch-btns{display:flex;flex-direction:column;gap:10px}.attendance-btn-entrada{background:#059669!important;border-color:#059669!important;color:#fff!important;font-size:1.1rem;padding:14px}.attendance-btn-salida{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important;font-size:1.1rem;padding:14px}.attendance-btn-entrada.disabled,.attendance-btn-salida.disabled{opacity:.45}.attendance-setup-banner{margin-top:12px;padding:14px 16px;border:1px solid var(--border, color-mix(in srgb, var(--color-accent) 35%, transparent));border-radius:10px;background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.attendance-setup-banner p{margin:0 0 10px}.attendance-embedded-page .attendance-embedded-container{max-width:520px}.attendance-embedded-page .attendance-card{margin:0 auto}.workforce-tabs{margin-bottom:16px;flex-wrap:wrap}.workforce-page .container{max-width:none;width:100%;padding:12px 16px 24px}@media (min-width: 768px){.workforce-page .container{padding:16px 24px 32px}}.workforce-plan-layout{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;width:100%}.workforce-publish-alerts{flex:1 1 100%;width:100%;grid-column:unset;padding:12px 16px;border-radius:8px;border:1px solid rgba(234,179,8,.45);background:#eab30814;margin-bottom:4px}.workforce-publish-alerts.all-clear{border-color:#22c55e73;background:#22c55e14}.workforce-alert-list{margin:8px 0 0;padding-left:18px;font-size:14px}.workforce-upcoming-list{list-style:none;margin:0;padding:0}.workforce-upcoming-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border-muted, #333)}.workforce-history-list{list-style:none;margin:12px 0;padding:0;max-height:280px;overflow-y:auto}.workforce-history-list li{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0;border-bottom:1px solid var(--border-muted, #333);font-size:14px}.workforce-matrix-cell.droppable.is-empty:hover,.workforce-matrix-cell.droppable:not(.is-empty){outline:1px dashed transparent}.workforce-matrix-cell.droppable:has(.workforce-cal-shift[draggable=true]:hover){outline-color:#d4af3759}.workforce-notify-row{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-muted, #333)}.workforce-calendar-main{flex:1 1 calc(100% - 292px);min-width:0;max-width:calc(100% - 292px);display:flex}.workforce-plan-layout.sidebar-hidden .workforce-calendar-main{flex:1 1 100%;max-width:100%}.workforce-plan-layout .workforce-calendar-card{min-width:0;max-width:none!important;width:100%;flex:1;display:flex;flex-direction:column;margin-bottom:0;height:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.workforce-assign-sidebar{position:sticky;top:72px;flex:0 0 280px;width:280px;max-width:280px;max-height:calc(100vh - 88px);overflow-y:auto;min-width:0}.workforce-assign-sidebar .form-card{max-width:none;width:100%;margin-bottom:0}.workforce-cal-size-toggle{display:inline-flex;align-items:center;gap:4px}.workforce-cal-size-label{font-size:.75rem;margin-right:2px}.workforce-plan-layout.cal-size-md .workforce-calendar-scroll{min-height:min(72vh,820px)}.workforce-plan-layout.cal-size-lg .workforce-calendar-scroll{min-height:min(86vh,980px)}.workforce-plan-layout.cal-size-xl .workforce-calendar-scroll{min-height:calc(100vh - 140px);height:calc(100vh - 140px)}.workforce-plan-layout.cal-size-max .workforce-calendar-scroll{min-height:calc(100vh - 100px);height:calc(100vh - 100px)}.workforce-plan-layout.cal-size-md .workforce-month-cell{min-height:clamp(112px,12vh,150px)}.workforce-plan-layout.cal-size-lg .workforce-month-cell{min-height:clamp(128px,14vh,175px)}.workforce-plan-layout.cal-size-xl .workforce-month-cell,.workforce-plan-layout.cal-size-max .workforce-month-cell{min-height:0}.workforce-plan-layout.cal-size-xl .workforce-month-wrap,.workforce-plan-layout.cal-size-max .workforce-month-wrap{display:flex;flex-direction:column;min-height:100%;height:100%}.workforce-plan-layout.cal-size-xl .workforce-month-grid,.workforce-plan-layout.cal-size-max .workforce-month-grid{flex:1;grid-auto-rows:1fr;min-height:calc(100vh - 240px);height:100%}.workforce-plan-layout.cal-size-xl .workforce-month-cell,.workforce-plan-layout.cal-size-max .workforce-month-cell{min-height:clamp(130px,14vh,220px)}@media (min-width: 1200px){.workforce-plan-layout.cal-size-xl .workforce-month-cell{min-height:clamp(145px,15vh,240px)}.workforce-plan-layout.cal-size-max .workforce-month-cell{min-height:clamp(160px,16vh,260px)}}@media (min-width: 1600px){.workforce-plan-layout.cal-size-max .workforce-month-cell{min-height:clamp(175px,17vh,280px)}}.workforce-page.workforce-cal-view-max .container{padding:8px 12px 12px;max-width:none}.workforce-page.workforce-cal-view-max .nav{padding-top:6px;padding-bottom:6px}.workforce-page.workforce-cal-view-max .workforce-tabs{margin-bottom:8px}.workforce-page.workforce-cal-view-xl .container,.workforce-page.workforce-cal-view-max .container{max-width:none;padding:8px 12px 16px}.workforce-plan-layout.cal-size-xl .workforce-matrix-cell,.workforce-plan-layout.cal-size-max .workforce-matrix-cell{min-height:64px}.workforce-plan-layout.cal-size-max .workforce-calendar-card{padding:12px}@media (max-width: 1100px){.workforce-plan-layout{flex-direction:column}.workforce-calendar-main{flex:1 1 100%;max-width:100%}.workforce-assign-sidebar{position:static;flex:1 1 100%;width:100%;max-width:none;max-height:none}}.workforce-template-chip-actions{display:flex;gap:6px;flex-shrink:0}.workforce-template-edit-form{width:100%}.workforce-template-edit-actions{display:flex;gap:8px;margin-top:10px}.workforce-edit-modal{max-width:480px;width:min(96vw,480px)}.workforce-calendar-card{margin:0;padding:16px;max-width:none!important;width:100%}.workforce-sidebar-card{margin:0}.workforce-sidebar-card .field{margin-bottom:10px}.btn-block{width:100%}.workforce-calendar-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.workforce-calendar-toolbar-left{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.workforce-calendar-title{margin:0}.workforce-cal-mode-toggle{display:flex;gap:6px}.workforce-calendar-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.workforce-calendar-range{min-width:140px;text-align:center;text-transform:capitalize}.workforce-cal-filter{min-width:180px}.workforce-calendar-scroll{overflow-x:auto;overflow-y:auto;min-height:min(82vh,960px);max-height:none;width:100%;flex:1;border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:10px;background:#0000001f}.workforce-plan-layout .workforce-month-wrap,.workforce-plan-layout .workforce-month-grid{width:100%}.workforce-plan-layout .workforce-month-cell{min-height:clamp(108px,11vh,160px)}.workforce-matrix-table{width:100%;min-width:100%;border-collapse:collapse;table-layout:fixed}.workforce-matrix-table th,.workforce-matrix-table td{border:1px solid var(--border, rgba(255, 255, 255, .08));vertical-align:top}.workforce-matrix-table thead th{background:color-mix(in srgb,var(--color-surface) 90%,var(--color-bg));padding:10px 6px;font-size:.8rem;font-weight:600;text-align:center}.workforce-matrix-table thead th.is-today,.workforce-matrix-cell.is-today{background:color-mix(in srgb,var(--color-accent) 12%,transparent)}.workforce-matrix-sticky-col{position:sticky;left:0;z-index:2;background:var(--color-surface, #1a1a2e);min-width:130px;max-width:130px;text-align:left;padding:8px 10px}.workforce-matrix-worker{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workforce-matrix-day-name{display:block;text-transform:capitalize}.workforce-matrix-cell{min-height:52px;padding:4px;font-size:.75rem;cursor:default}.workforce-matrix-cell.is-empty{cursor:pointer}.workforce-matrix-cell.is-empty:hover{background:#ffffff0a}.workforce-matrix-add{display:flex;align-items:center;justify-content:center;min-height:40px;color:var(--text-muted, var(--color-muted));font-size:1.1rem;opacity:.45}.workforce-matrix-add.subtle{min-height:24px;font-size:.9rem}.workforce-cal-shift{border-left:3px solid;border-radius:6px;padding:6px 8px;margin-bottom:4px;font-size:.75rem}.workforce-cal-shift.compact{padding:4px 6px}.workforce-cal-shift-main strong{display:block;font-size:.78rem}.workforce-cal-shift-time{display:block;color:var(--text-muted, var(--color-muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workforce-cal-shift-status{display:inline-block;margin-top:2px;font-size:.68rem}.workforce-month-wrap{min-width:100%;width:100%}.workforce-month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:4px}.workforce-month-weekday{text-align:center;font-size:.75rem;font-weight:600;padding:8px 4px;color:var(--text-muted, var(--color-muted))}.workforce-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;width:100%}.workforce-month-cell{min-height:120px;padding:8px;border-radius:6px;background:#ffffff05;border:1px solid transparent}@media (min-width: 1200px){.workforce-month-cell{min-height:132px}.workforce-plan-layout-stacked .workforce-month-cell{min-height:140px}}.workforce-month-cell.other-month{opacity:.45}.workforce-month-cell.is-today{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.workforce-month-cell[role=button]{cursor:pointer}.workforce-month-cell[role=button]:hover{background:#ffffff0d}.workforce-month-day-num{font-size:.8rem;font-weight:600;margin-bottom:4px}.workforce-month-shifts{display:flex;flex-direction:column;gap:2px}.workforce-month-more{font-size:.68rem}.workforce-cal-legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle, rgba(255, 255, 255, .08))}.workforce-cal-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:.78rem}.workforce-cal-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.workforce-cal-footnote{margin:10px 0 0;font-size:.78rem}.workforce-coverage-banner{margin:0 0 10px;padding:10px 14px;border-radius:8px;background:color-mix(in srgb,#f59e0b 14%,transparent);border:1px solid color-mix(in srgb,#f59e0b 35%,transparent);font-size:.88rem}.workforce-coverage-banner.all-covered{background:color-mix(in srgb,#22c55e 12%,transparent);border-color:color-mix(in srgb,#22c55e 30%,transparent)}.workforce-coverage-list{margin-bottom:12px}.workforce-coverage-list details summary{cursor:pointer;font-size:.85rem;font-weight:600;margin-bottom:8px}.workforce-coverage-items{display:flex;flex-wrap:wrap;gap:8px;max-height:120px;overflow-y:auto;padding:4px 0}.workforce-gap-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid;border-radius:6px;padding:4px 8px;font-size:.75rem;color:inherit;text-align:left;max-width:100%}.workforce-gap-chip.clickable{cursor:pointer}.workforce-gap-chip.clickable:hover{filter:brightness(1.08)}.workforce-gap-chip.compact{padding:2px 5px;font-size:.68rem;width:100%}.workforce-gap-icon{color:#f59e0b;font-size:.72rem;flex-shrink:0}.workforce-gap-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workforce-gap-time{display:block;font-size:.68rem;opacity:.85}.workforce-day-gap-badge{display:block;margin-top:4px;font-size:.65rem;font-weight:600;color:#f59e0b}.workforce-coverage-row-label{font-size:.75rem;color:#f59e0b;font-weight:700}.workforce-coverage-row{background:color-mix(in srgb,#f59e0b 6%,transparent)}.workforce-coverage-cell{background:color-mix(in srgb,#f59e0b 4%,transparent)}.workforce-coverage-ok{display:flex;align-items:center;justify-content:center;min-height:36px;color:#22c55e;font-size:.9rem}.workforce-month-cell.has-gaps{box-shadow:inset 0 0 0 1px color-mix(in srgb,#f59e0b 45%,transparent)}.workforce-month-gap-count{margin-left:6px;font-size:.65rem;color:#f59e0b;font-weight:700}.workforce-month-gaps{margin-bottom:4px;display:flex;flex-direction:column;gap:2px}.workforce-stats{margin-bottom:16px}.workforce-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;align-items:end}.workforce-form-wide{grid-column:1 / -1}.workforce-form-action{display:flex;align-items:flex-end}.workforce-template-list{display:flex;flex-direction:column;gap:10px}.workforce-template-chip{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-left:4px solid;border-radius:8px;background:var(--card-bg, rgba(255, 255, 255, .03))}.workforce-template-chip.inactive{opacity:.55}.workforce-template-chip span{display:block;font-size:.85rem;color:var(--text-muted, var(--color-muted))}.workforce-week-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.workforce-week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:10px;overflow-x:auto}.workforce-day-col{min-width:120px;background:var(--card-bg, rgba(255, 255, 255, .02));border-radius:8px;padding:8px}.workforce-day-head{font-weight:600;font-size:.8rem;margin-bottom:8px;text-align:center;padding-bottom:6px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08))}.workforce-day-empty{font-size:.75rem;text-align:center;margin:8px 0}.workforce-shift-card{border-left:3px solid;padding:8px;margin-bottom:8px;border-radius:6px;background:#00000026;font-size:.8rem}.workforce-shift-card strong{display:block;font-size:.85rem}.workforce-shift-card span{display:block;color:var(--text-muted, var(--color-muted))}.workforce-shift-actions{display:flex;gap:4px;margin-top:6px}.workforce-shift-actions.compact-actions{margin-top:4px;gap:2px}.workforce-shift-actions.compact-actions .btn-sm{min-height:24px;padding:0 5px;font-size:.68rem}.workforce-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.workforce-ref-hint{margin:0 0 12px}.workforce-weekday-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.workforce-weekday-chip{padding:6px 10px;border-radius:8px;background:var(--surface-2, rgba(255, 255, 255, .04));font-size:.85rem}.workforce-rotation-box{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-subtle, rgba(255, 255, 255, .08))}.workforce-rotation-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px}.workforce-rotation-preview{margin-top:12px;padding:12px;border-radius:8px;background:var(--surface-2, rgba(0, 0, 0, .12))}.workforce-rotation-list{max-height:160px;overflow-y:auto;margin:8px 0}@media (max-width: 768px){.workforce-week-grid{grid-template-columns:1fr}}@media (max-width: 768px){.attendance-panel .attendance-grid,.attendance-coords{grid-template-columns:1fr}}.login-forgot-row{text-align:right;margin:-4px 0 8px}.login-forgot-link{font-size:.875rem;color:var(--color-accent);text-decoration:none}.login-forgot-link:hover{text-decoration:underline}.login-admin-hint{margin-top:16px;font-size:.85rem;text-align:center;opacity:.85}.recovery-card{max-width:440px}.recovery-admin-box{background:var(--surface-2, rgba(255, 255, 255, .05));border:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent);border-radius:8px;padding:14px 16px;margin:12px 0}.staff-discount-box{background:var(--surface-2, rgba(255, 255, 255, .05));border-radius:8px;padding:12px;margin:8px 0}.staff-discount-box .extend-label{margin-bottom:8px}.shift-handoff-panel{margin:12px 0 16px;padding:14px 16px;border-radius:var(--radius-lg, 12px);border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));background:var(--surface-1, rgba(255, 255, 255, .03))}.shift-handoff-head{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.shift-handoff-title{margin:0;font-size:1rem}.shift-handoff-sub{font-size:.78rem;color:var(--color-muted)}.shift-handoff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.shift-handoff-item{padding:10px 12px;border-radius:8px;background:var(--surface-2, rgba(0, 0, 0, .15));display:flex;flex-direction:column;gap:4px}.shift-handoff-item strong{font-size:1.05rem}.shift-handoff-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-muted)}.shift-handoff-warn{border-left:3px solid #f59e0b}.shift-handoff-ok{border-left:3px solid #10b981}.shift-handoff-info{border-left:3px solid #3b82f6}.cash-session-gate{margin:8px 0}.msg-warn{color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,transparent);border:1px solid color-mix(in srgb,#f59e0b 35%,transparent);border-radius:8px;padding:10px 12px;font-size:.9rem}.room-qr-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto}.room-qr-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;background:var(--surface-2, rgba(0, 0, 0, .12))}.room-qr-url{font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.receipt-pending-note{margin-top:10px;padding:10px 12px;border-radius:8px;background:color-mix(in srgb,#f59e0b 10%,transparent);border:1px solid color-mix(in srgb,#f59e0b 30%,transparent)}.receipt-highlight{background:color-mix(in srgb,#10b981 10%,transparent);padding:6px 8px;border-radius:6px;margin:4px 0}.receipt-payment-highlight{color:var(--color-accent);font-weight:600}.text-warn{color:#f59e0b}.text-ok{color:#10b981}.receipt-payments-list{margin-top:12px;padding-top:10px;border-top:1px solid var(--border-subtle, rgba(255, 255, 255, .08))}.app-shell-super-admin,.super-admin-page{--sa-bg: #040406;--sa-surface: #0a0a0f;--sa-surface-2: #101018;--sa-card: #13131c;--sa-card-hover: #181822;--sa-gold: #c9a962;--sa-gold-light: #e8dcc8;--sa-gold-muted: rgba(201, 169, 98, .55);--sa-gold-dim: rgba(201, 169, 98, .12);--sa-gold-glow: rgba(201, 169, 98, .28);--sa-border: rgba(255, 255, 255, .06);--sa-border-strong: rgba(255, 255, 255, .1);--sa-text: #f2f0eb;--sa-text-soft: rgba(242, 240, 235, .72);--sa-muted: rgba(242, 240, 235, .42);--sa-font-display: "Outfit", "Inter", system-ui, sans-serif;--sa-ease-out: cubic-bezier(.22, 1, .36, 1);--sa-ease-smooth: cubic-bezier(.4, 0, .2, 1);color-scheme:dark}.app-shell-super-admin{background:var(--sa-bg)}.app-shell-super-admin .sidebar{width:72px;background:linear-gradient(180deg,#08080c,#050508);border-right:1px solid var(--sa-border);box-shadow:4px 0 24px #00000059}.app-shell-super-admin .sidebar-brand{border-bottom-color:var(--sa-border);padding:18px 10px 14px;justify-content:center}.app-shell-super-admin .sidebar-brand-text,.app-shell-super-admin .sidebar-user,.app-shell-super-admin .sidebar-collapse-desktop{display:none}.app-shell-super-admin .sidebar-brand{flex-direction:column;gap:0}.app-shell-super-admin .sidebar-brand-icon{font-size:1.5rem}.app-shell-super-admin .sidebar-footer{padding:12px 8px}.app-shell-super-admin .sidebar-footer-actions{flex-direction:column;gap:8px}.app-shell-super-admin .sidebar-footer-actions .btn{width:100%;padding:8px;min-width:0}.app-shell-super-admin .sidebar-logout-btn{font-size:0;line-height:1}.app-shell-super-admin .sidebar-logout-btn:after{content:"⏻";font-size:1rem}.app-shell-super-admin .app-shell-main{min-width:0;flex:1}.app-shell-super-admin .sidebar-footer{border-top:1px solid var(--sa-border);background:#0003}.app-shell-super-admin .sidebar-user strong{color:var(--sa-text);font-weight:500}.app-shell-super-admin .sidebar-user span{color:var(--sa-muted)}.app-shell-super-admin .sidebar-collapse-btn{border-color:var(--sa-border);background:var(--sa-surface-2);color:var(--sa-muted)}.app-shell-super-admin .sidebar-collapse-btn:hover{color:var(--sa-gold);border-color:var(--sa-gold-muted)}@keyframes saOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes saModalIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes saFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.super-admin-page{background:var(--sa-bg);color:var(--sa-text);font-family:var(--sa-font-display);min-height:100dvh}.super-admin-page .super-admin-subtitle{margin:6px 0 0;max-width:42rem;color:var(--sa-muted);font-size:.88rem;letter-spacing:.01em}.super-admin-shell{display:flex;width:100%;min-width:0;min-height:calc(100dvh - 56px);align-items:stretch}.super-admin-sidebar{width:292px;flex-shrink:0;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--sa-surface) 0%,#07070b 100%);border-right:1px solid var(--sa-border);position:sticky;top:0;align-self:flex-start;max-height:calc(100dvh - 56px);z-index:50;box-shadow:inset -1px 0 #c9a9620a}.super-admin-sidebar-head{padding:24px 20px 18px;border-bottom:1px solid var(--sa-border);background:linear-gradient(135deg,rgba(201,169,98,.06) 0%,transparent 60%)}.super-admin-sidebar-title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:.04em;color:var(--sa-gold-light);text-transform:uppercase}.super-admin-sidebar-head .hint{color:var(--sa-muted);font-size:.78rem;margin-top:6px;letter-spacing:.02em}.super-admin-motel-context,.super-admin-motel-context-empty{margin:0 14px 12px;padding:12px 14px;border-radius:10px;border:1px solid var(--sa-gold-dim);background:linear-gradient(145deg,#c9a96214,#0a0a0f99)}.super-admin-motel-context-empty{border-color:var(--sa-border);background:var(--sa-surface-2);font-size:.78rem;line-height:1.45}.super-admin-motel-context-label{display:block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--sa-gold-muted);margin-bottom:4px}.super-admin-motel-context-name{display:block;font-size:.92rem;color:var(--sa-gold-light);margin-bottom:6px}.super-admin-motel-context-hint{margin:0 0 10px;font-size:.72rem;line-height:1.4}.super-admin-motel-context-hint code{font-size:.68rem;color:var(--sa-gold)}.super-admin-motel-context-clear{width:100%}.super-admin-motel-context-preview{width:100%;margin-top:8px}.super-admin-preview-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:12px 16px;border-radius:10px;border:1px solid rgba(201,169,98,.35);background:linear-gradient(90deg,#c9a9621f,#0a0a0f80)}.super-admin-preview-banner-label{display:block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#c9a962bf;margin-bottom:2px}.super-admin-preview-banner-text strong{color:var(--sa-gold-light, #e8dcc8);font-size:.95rem}.super-admin-preview-banner-link{white-space:nowrap}.super-admin-sidebar-nav{display:flex;flex-direction:column;gap:6px;padding:16px 14px;border-bottom:1px solid var(--sa-border)}.super-admin-nav-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--sa-text-soft);font:inherit;font-size:.9rem;font-weight:500;text-align:left;cursor:pointer;transition:background .22s var(--sa-ease-smooth),border-color .22s var(--sa-ease-smooth),color .22s var(--sa-ease-smooth),transform .18s var(--sa-ease-out),box-shadow .22s var(--sa-ease-smooth)}.super-admin-nav-btn:hover{background:var(--sa-card-hover);border-color:var(--sa-border-strong);color:var(--sa-text);transform:translate(2px)}.super-admin-nav-btn.active{background:linear-gradient(135deg,var(--sa-gold-dim) 0%,rgba(201,169,98,.04) 100%);border-color:var(--sa-gold-muted);color:var(--sa-gold-light);font-weight:600;box-shadow:0 0 20px #c9a96214}.super-admin-nav-icon{font-size:1.05rem;line-height:1;flex-shrink:0;opacity:.92}.super-admin-sidebar-tenants{flex:1;min-height:0;display:flex;flex-direction:column;padding:18px 14px 20px;overflow:hidden}.super-admin-sidebar-tenants-head{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--sa-gold-muted);margin-bottom:12px;padding:0 6px;font-weight:600}.super-admin-tenant-search{margin-bottom:12px;background:var(--sa-card)!important;border:1px solid var(--sa-border)!important;border-radius:10px!important;color:var(--sa-text)!important;padding:10px 12px!important;font-size:.85rem!important;transition:border-color .2s var(--sa-ease-smooth),box-shadow .2s var(--sa-ease-smooth)}.super-admin-tenant-search::placeholder{color:var(--sa-muted)}.super-admin-tenant-search:focus{outline:none;border-color:var(--sa-gold-muted)!important;box-shadow:0 0 0 3px var(--sa-gold-dim)}.super-admin-tenant-list{list-style:none;margin:0;padding:4px 2px;overflow-y:auto;flex:1;min-height:0;scroll-behavior:smooth}.super-admin-tenant-list::-webkit-scrollbar{width:5px}.super-admin-tenant-list::-webkit-scrollbar-thumb{background:#c9a96240;border-radius:999px}.super-admin-tenant-list::-webkit-scrollbar-track{background:transparent}.super-admin-tenant-btn{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:11px 12px;margin-bottom:6px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--sa-text-soft);font:inherit;text-align:left;cursor:pointer;transition:background .22s var(--sa-ease-smooth),border-color .22s var(--sa-ease-smooth),transform .18s var(--sa-ease-out),box-shadow .22s var(--sa-ease-smooth)}.super-admin-tenant-btn:hover{background:var(--sa-card);border-color:var(--sa-border-strong);transform:translate(3px);color:var(--sa-text)}.super-admin-tenant-btn.active{background:linear-gradient(135deg,#c9a96224,#c9a9620a);border-color:var(--sa-gold-muted);box-shadow:0 4px 16px #00000040,inset 0 1px #ffffff0a;color:var(--sa-text)}.super-admin-tenant-btn.has-issue:not(.active){border-color:#fbbf2447;background:#fbbf240a}.super-admin-tenant-name{font-weight:600;font-size:.86rem;line-height:1.3;word-break:break-word;letter-spacing:.01em}.super-admin-tenant-slug{font-size:.7rem;color:var(--sa-muted);font-family:ui-monospace,SF Mono,monospace;letter-spacing:.02em}.super-admin-tenant-meta{font-size:.68rem;color:var(--sa-muted);margin-top:2px}.super-admin-tenant-empty{padding:16px 10px;font-size:.84rem;color:var(--sa-muted);text-align:center}.super-admin-main{flex:1;min-width:0;display:flex;flex-direction:column;background:radial-gradient(ellipse 80% 50% at 100% 0%,rgba(201,169,98,.04) 0%,transparent 55%),var(--sa-bg)}.super-admin-main-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:28px 32px 20px;border-bottom:1px solid var(--sa-border);background:linear-gradient(180deg,#101018f2,#08080c99);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:saFadeUp .4s var(--sa-ease-out) both}.super-admin-main-head .nav-title{margin:0;font-size:1.55rem;font-weight:600;letter-spacing:-.02em;color:var(--sa-text);line-height:1.25}.super-admin-main-body{flex:1;padding:24px 32px 32px;overflow-y:auto;animation:saFadeUp .45s var(--sa-ease-out) .05s both}.super-admin-page .form-card{background:linear-gradient(165deg,var(--sa-card) 0%,#0f0f16 100%);border:1px solid var(--sa-border);border-radius:16px;box-shadow:0 8px 32px #00000047;transition:border-color .25s var(--sa-ease-smooth),box-shadow .25s var(--sa-ease-smooth);max-width:none;width:100%}@media (min-width: 768px){.super-admin-page .form-card{max-width:none}}.super-admin-page .form-card:hover{border-color:#ffffff14}.super-admin-page .form-title{color:var(--sa-gold-light);font-weight:600;letter-spacing:-.01em}.super-admin-page .hint{color:var(--sa-muted)}.super-admin-page .hint code,.super-admin-page code{color:var(--sa-gold);background:#c9a96214;border:1px solid rgba(201,169,98,.15);border-radius:6px;padding:1px 6px;font-size:.88em}.super-admin-page .input,.super-admin-page .select{background:var(--sa-surface-2)!important;border:1px solid var(--sa-border)!important;color:var(--sa-text)!important;border-radius:10px!important;transition:border-color .2s,box-shadow .2s}.super-admin-page .input:focus,.super-admin-page .select:focus{border-color:var(--sa-gold-muted)!important;box-shadow:0 0 0 3px var(--sa-gold-dim)!important;outline:none}.super-admin-page .btn-gold{background:linear-gradient(135deg,#d4b872,#b8944a);color:#1a1508;border:1px solid rgba(255,255,255,.12);font-weight:600;letter-spacing:.02em;border-radius:10px;transition:transform .18s var(--sa-ease-out),box-shadow .22s var(--sa-ease-smooth),filter .2s}.super-admin-page .btn-gold:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px var(--sa-gold-glow);filter:brightness(1.05)}.super-admin-page .btn-outline-muted{border-color:var(--sa-border-strong);color:var(--sa-text-soft);border-radius:10px;transition:border-color .2s,color .2s,background .2s}.super-admin-page .btn-outline-muted:hover:not(:disabled){border-color:var(--sa-gold-muted);color:var(--sa-gold-light);background:var(--sa-gold-dim)}.super-admin-page .stat-card{background:linear-gradient(160deg,var(--sa-card) 0%,#0e0e14 100%);border:1px solid var(--sa-border);border-radius:14px;transition:border-color .25s,transform .2s var(--sa-ease-out)}.super-admin-page .stat-card:hover{border-color:#c9a96233;transform:translateY(-2px)}.super-admin-page .stat-value{font-weight:600;letter-spacing:-.02em}.super-admin-page .stat-label{color:var(--sa-muted);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.super-admin-page .table-wrap{background:var(--sa-card);border:1px solid var(--sa-border);border-radius:16px;overflow:hidden;box-shadow:0 12px 40px #00000038}.super-admin-page .data-table{width:100%;border-collapse:collapse}.super-admin-page .data-table th{padding:14px 16px;text-align:left;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--sa-gold-muted);background:#00000059;border-bottom:1px solid var(--sa-border)}.super-admin-page .data-table td{padding:14px 16px;font-size:.86rem;color:var(--sa-text-soft);border-bottom:1px solid var(--sa-border);vertical-align:middle;transition:background .18s var(--sa-ease-smooth)}.super-admin-page .data-table tbody tr:hover td{background:#c9a9620a;color:var(--sa-text)}.super-admin-page .data-table tbody tr:last-child td{border-bottom:none}.super-admin-page .data-table tr.row-selected td{background:#c9a9621a!important}.super-admin-page .data-table tbody tr.row-inactive td{opacity:1;color:var(--sa-text-soft)}.super-admin-auth-table td:first-child{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--sa-muted);font-size:.8rem}.super-admin-tenant-detail-head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--sa-border)}.super-admin-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px 24px;margin:0}.super-admin-detail-grid>div{min-width:0;padding:12px 14px;background:#0003;border-radius:10px;border:1px solid var(--sa-border)}.super-admin-detail-grid dt{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--sa-gold-muted);margin-bottom:6px;font-weight:600}.super-admin-detail-grid dd{margin:0;font-size:.92rem;color:var(--sa-text)}.super-admin-page .msg{border-radius:10px}.super-admin-page .msg-warn{background:#fbbf2414;border:1px solid rgba(251,191,36,.22)}.super-admin-page .msg-ok{background:#34d39914;border:1px solid rgba(52,211,153,.2)}.super-admin-page .msg-error{background:#f8717114;border:1px solid rgba(248,113,113,.2)}.super-admin-page .modal-overlay{background:#020206c7;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:saOverlayIn .28s var(--sa-ease-smooth) both}.super-admin-page .modal{background:linear-gradient(168deg,#16161f,#0c0c12 48%,#08080e);border:1px solid rgba(201,169,98,.18);border-radius:20px;padding:28px 24px 32px;box-shadow:0 32px 80px #0000008c,0 0 0 1px #ffffff0a inset,0 1px #c9a96214 inset;animation:saModalIn .34s var(--sa-ease-out) both}@media (min-width: 640px){.super-admin-page .modal{border-radius:22px;padding:32px 36px 36px}}.super-admin-page .modal-wide{max-width:min(920px,96vw)}.super-admin-page .modal-title{color:var(--sa-gold-light);font-family:var(--sa-font-display);font-size:1.35rem;font-weight:600;letter-spacing:-.02em;margin-bottom:10px;padding-bottom:12px;border-bottom:1px solid var(--sa-border)}.super-admin-page .modal-subtitle,.super-admin-page .modal .hint{color:var(--sa-muted)}.super-admin-page .modal-actions{margin-top:20px;padding-top:20px;border-top:1px solid var(--sa-border);gap:12px}.super-admin-page .modal .table-wrap{border-radius:12px;margin-top:8px}.super-admin-page .module-badges .badge-ok{border-color:#c9a96259;color:var(--sa-gold-light)}@media (max-width: 900px){.super-admin-shell{flex-direction:column;min-height:auto}.super-admin-sidebar{width:100%;position:static;max-height:none;border-right:none;border-bottom:1px solid var(--sa-border)}.super-admin-tenant-list{max-height:240px}.super-admin-main-head,.super-admin-main-body{padding-left:20px;padding-right:20px}}@media (prefers-reduced-motion: reduce){.super-admin-page .modal-overlay,.super-admin-page .modal,.super-admin-main-head,.super-admin-main-body{animation:none}.super-admin-nav-btn:hover,.super-admin-tenant-btn:hover,.super-admin-page .btn-gold:hover:not(:disabled),.super-admin-page .stat-card:hover{transform:none}}.app-shell-super-admin .sidebar-nav,.app-shell-super-admin .app-shell-header{display:none}.app-shell-super-admin .app-shell-content{padding:0}.app-shell-super-admin .super-admin-shell{min-height:100dvh}.app-shell-super-admin .super-admin-sidebar{max-height:100dvh}.super-admin-access-card{margin-bottom:20px;padding:18px 20px}.super-admin-usage-card{margin-top:20px}.super-admin-usage-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.super-admin-cleanup-card{border-color:#c9a9621f}[data-theme=light] .app-shell-super-admin,[data-theme=light] .super-admin-page.page{background:var(--sa-bg)!important;color:var(--sa-text)!important}[data-theme=light] .app-shell-super-admin .sidebar,[data-theme=light] .app-shell-super-admin .sidebar-footer{background:linear-gradient(180deg,#08080c,#050508);border-color:var(--sa-border)}[data-theme=light] .app-shell-super-admin .sidebar-footer-actions .btn{background:var(--sa-surface-2)!important;border-color:var(--sa-border)!important;color:var(--sa-text-soft)!important}[data-theme=light] .app-shell-super-admin .sidebar-footer-actions .btn:hover:not(:disabled){background:var(--sa-card-hover)!important;border-color:var(--sa-gold-muted)!important;color:var(--sa-gold-light)!important}[data-theme=light] .super-admin-page,[data-theme=light] .super-admin-page .form-card,[data-theme=light] .super-admin-page .stat-card,[data-theme=light] .super-admin-page .table-wrap,[data-theme=light] .super-admin-page .modal{background:linear-gradient(165deg,var(--sa-card) 0%,#0f0f16 100%);border-color:var(--sa-border);color:var(--sa-text)}[data-theme=light] .super-admin-page .input,[data-theme=light] .super-admin-page .select,[data-theme=light] .super-admin-page .super-admin-tenant-search{background:var(--sa-surface-2)!important;border-color:var(--sa-border)!important;color:var(--sa-text)!important}[data-theme=light] .super-admin-page .data-table th{background:#00000059;color:var(--sa-gold-muted)}[data-theme=light] .super-admin-page .data-table td{color:var(--sa-text-soft);border-bottom-color:var(--sa-border)}[data-theme=light] .super-admin-page .form-title,[data-theme=light] .super-admin-page .modal-title{color:var(--sa-gold-light)}[data-theme=light] .super-admin-page .hint{color:var(--sa-muted)}html[data-luxcore="1"]{--color-bg: #0f172a;--color-surface: #111827;--color-surface-2: #1e293b;--color-border: #334155;--color-accent: #d4af37;--color-accent-soft: #f5e6a8;--color-accent-text: #1a1508;--color-text: #f8fafc;--color-text-secondary: #94a3b8;--color-muted: #7c8da5;--color-input-bg: #0f172a;--color-label: #94a3b8;--color-success: #22c55e;--color-danger: #ef4444;--color-warning: #f59e0b;--color-info: #38bdf8;--lux-glass: rgba(30, 41, 59, .78);--lux-glass-border: rgba(148, 163, 184, .14);--lux-shadow: 0 12px 40px rgba(0, 0, 0, .4);--lux-shadow-sm: 0 2px 16px rgba(0, 0, 0, .28);--lux-shadow-hover: 0 16px 48px rgba(0, 0, 0, .45);--lux-space-xs: 8px;--lux-space-sm: 12px;--lux-space-md: 16px;--lux-space-lg: 24px;--lux-space-xl: 32px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px}html[data-luxcore="1"] body{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(212,175,55,.06),transparent),var(--color-bg)}html[data-luxcore="1"] .sidebar{background:linear-gradient(180deg,#111827f7,#0f172afc);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-right-color:var(--lux-glass-border);box-shadow:var(--lux-shadow-sm)}html[data-luxcore="1"] .sidebar-link{border:1px solid transparent;margin-bottom:3px;color:var(--color-text-secondary);font-weight:500}html[data-luxcore="1"] .sidebar-link:hover{background:#94a3b814;border-color:var(--lux-glass-border);color:var(--color-text)}html[data-luxcore="1"] .sidebar-link-active{background:linear-gradient(90deg,#d4af3729,#d4af370d)!important;border:1px solid rgba(212,175,55,.32)!important;border-left:3px solid var(--color-accent)!important;color:var(--color-accent-soft)!important;font-weight:600;box-shadow:inset 0 1px #ffffff0a}html[data-luxcore="1"] .sidebar-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}html[data-luxcore="1"] .sidebar-section-title{color:var(--color-muted);padding-bottom:6px}html[data-luxcore="1"] .sidebar-brand-name.luxcore-product{background:linear-gradient(135deg,#faf0c8,#d4af37 45%,#a8891f);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.12rem;letter-spacing:.06em;font-weight:800}html[data-luxcore="1"] .sidebar-brand-sub{color:var(--color-text-secondary);font-size:.72rem;overflow:hidden;text-overflow:ellipsis}html[data-luxcore="1"] .app-shell-header{background:var(--lux-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--lux-glass-border);padding:10px 16px;gap:8px}html[data-luxcore="1"] .app-shell-title{font-size:1.05rem;letter-spacing:-.01em}html[data-luxcore="1"] .app-shell-subtitle{color:var(--color-text-secondary)}html[data-luxcore="1"] .app-shell-content{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}@media (min-width: 901px){html[data-luxcore="1"] .app-shell-content{padding-bottom:var(--lux-space-lg)}}html[data-luxcore="1"] .app-shell-content .dashboard-page .container{gap:var(--lux-space-md);padding:var(--lux-space-sm) var(--lux-space-md) var(--lux-space-lg)}@media (min-width: 1024px){html[data-luxcore="1"] .app-shell-content .dashboard-page .container{padding:var(--lux-space-md) var(--lux-space-lg) var(--lux-space-xl);gap:var(--lux-space-lg)}}html[data-luxcore="1"] .form-card,html[data-luxcore="1"] .lux-chart-card,html[data-luxcore="1"] .lux-kpi-card,html[data-luxcore="1"] .lux-alert-panel{background:linear-gradient(160deg,#111827f2,#1e293b99)}html[data-luxcore="1"] .link-btn{color:var(--color-accent-soft);font-weight:600}html[data-luxcore="1"] .link-btn:hover{color:var(--color-accent);text-decoration:underline}.lux-section-subtitle{font-size:.75rem;font-weight:500;color:var(--color-text-secondary)}.lux-section-title-sm{font-size:.92rem;margin-bottom:var(--lux-space-sm)}.lux-kpi-grid{display:grid;grid-template-columns:1fr;gap:var(--lux-space-sm)}@media (min-width: 540px){.lux-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 960px){.lux-kpi-grid{grid-template-columns:repeat(4,1fr);gap:var(--lux-space-md)}}.lux-kpi-card{background:linear-gradient(145deg,var(--color-surface) 0%,var(--color-surface-2) 100%);border:1px solid var(--lux-glass-border, var(--color-border));border-radius:var(--radius-md);padding:18px 20px;box-shadow:var(--lux-shadow-sm, var(--shadow-sm));transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;animation:lux-fade-in .4s ease backwards}.lux-kpi-card:hover{transform:translateY(-3px);box-shadow:var(--lux-shadow-hover, var(--shadow-md));border-color:#d4af3747}.lux-kpi-card-accent{border-color:#d4af3761;background:linear-gradient(145deg,rgba(212,175,55,.14) 0%,var(--color-surface) 55%)}.lux-kpi-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--lux-space-xs);margin-bottom:var(--lux-space-sm)}.lux-kpi-card-icon{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.05rem;background:#d4af371a;border:1px solid rgba(212,175,55,.22)}.lux-kpi-card-value{font-size:clamp(1.25rem,4vw,1.65rem);font-weight:700;line-height:1.15;color:var(--color-text);letter-spacing:-.02em;word-break:break-word}.lux-kpi-card-label{font-size:.8125rem;color:var(--color-text-secondary);margin-top:6px;line-height:1.35}.lux-kpi-card-trend{font-size:.72rem;font-weight:600;padding:3px 9px;border-radius:999px}.lux-kpi-card-trend-up{color:#4ade80;background:#22c55e24}.lux-kpi-card-trend-down{color:#fca5a5;background:#ef444424}.lux-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border:1px solid transparent;white-space:nowrap}.lux-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor}.lux-status-disponible{color:#6ee7b7;background:#22c55e24;border-color:#22c55e59}.lux-status-disponible .lux-status-dot{background:#22c55e;color:#22c55e}.lux-status-ocupada{color:#fca5a5;background:#ef444424;border-color:#ef444459}.lux-status-ocupada .lux-status-dot{background:#ef4444;color:#ef4444}.lux-status-limpieza{color:#fde68a;background:#f59e0b24;border-color:#f59e0b59}.lux-status-limpieza .lux-status-dot{background:#f59e0b;color:#f59e0b}.lux-status-reservada{color:#7dd3fc;background:#38bdf824;border-color:#38bdf859}.lux-status-reservada .lux-status-dot{background:#38bdf8;color:#38bdf8}.lux-status-mantenimiento{color:#cbd5e1;background:#94a3b824;border-color:#94a3b859}.lux-status-mantenimiento .lux-status-dot{background:#94a3b8;color:#94a3b8}.lux-chart-card{background:var(--color-surface);border:1px solid var(--lux-glass-border, var(--color-border));border-radius:var(--radius-md);padding:20px;box-shadow:var(--lux-shadow-sm, var(--shadow-sm));animation:lux-fade-in .5s ease backwards;transition:border-color .22s ease,box-shadow .22s ease}.lux-chart-card:hover{border-color:#d4af3733}.lux-chart-card-title{margin:0 0 6px;font-size:.9375rem;font-weight:600;color:var(--color-text);letter-spacing:-.01em}.lux-chart-card-subtitle{margin:0 0 18px;font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4}.lux-bar-chart{display:flex;align-items:flex-end;gap:6px;height:148px;padding-top:var(--lux-space-xs)}.lux-bar-chart-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.lux-bar-chart-bar-wrap{width:100%;height:116px;display:flex;align-items:flex-end;justify-content:center}.lux-bar-chart-bar{width:100%;max-width:32px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#e8c547,#d4af3773);transition:height .5s ease,filter .2s ease;min-height:4px}.lux-bar-chart-col:hover .lux-bar-chart-bar{filter:brightness(1.12)}.lux-bar-chart-bar-info{background:linear-gradient(180deg,#38bdf8,#38bdf859)}.lux-bar-chart-label{font-size:.6875rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lux-alert-panel{background:var(--color-surface);border:1px solid var(--lux-glass-border, var(--color-border));border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--lux-shadow-sm, var(--shadow-sm))}.lux-alert-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--color-border);background:#ef444412}.lux-alert-panel-title{margin:0;font-size:.9375rem;font-weight:600;color:var(--color-text)}.lux-alert-panel-count{font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:999px;background:#ef44442e;color:#fca5a5}.lux-alert-panel-list{list-style:none;margin:0;padding:0}.lux-alert-item{display:flex;gap:10px;padding:14px 18px;border-bottom:1px solid rgba(51,65,85,.6);font-size:.875rem;line-height:1.5;color:var(--color-text);animation:lux-fade-in .3s ease backwards}.lux-alert-item:last-child{border-bottom:none}.lux-alert-item-warn{border-left:3px solid var(--color-warning);background:#f59e0b0a}.lux-alert-item-info{border-left:3px solid var(--color-info);background:#38bdf80a}.lux-alert-item-error{border-left:3px solid var(--color-danger);background:#ef44440a}.lux-quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--lux-space-sm)}@media (min-width: 640px){.lux-quick-actions{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.lux-quick-actions{grid-template-columns:repeat(6,1fr)}}.lux-quick-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--lux-space-xs);min-height:72px;padding:14px 10px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;transition:all .2s ease;font-size:.8125rem;font-weight:500}.lux-quick-action:hover{border-color:#d4af3773;background:#d4af371a;transform:translateY(-2px);box-shadow:var(--lux-shadow-sm)}.lux-quick-action:active{transform:translateY(0)}.lux-quick-action:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lux-quick-action-icon{font-size:1.45rem;line-height:1}.lux-dashboard-section{padding-bottom:var(--lux-space-md);border-bottom:1px solid var(--lux-glass-border, var(--color-border));margin-bottom:var(--lux-space-xs)}.lux-dashboard-grid{display:grid;gap:var(--lux-space-md);margin-top:var(--lux-space-md);margin-bottom:var(--lux-space-md)}@media (min-width: 1024px){.lux-dashboard-grid{grid-template-columns:1fr 1fr}}.lux-dashboard-quick{margin-top:var(--lux-space-md);padding-top:var(--lux-space-md);border-top:1px solid var(--lux-glass-border, var(--color-border))}.lux-ranking-list{list-style:none;margin:0;padding:0}.lux-ranking-item{display:flex;align-items:center;gap:var(--lux-space-sm);padding:12px 0;border-bottom:1px solid rgba(51,65,85,.55);transition:background .15s ease}.lux-ranking-item:hover{background:#94a3b80a;margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:var(--radius-sm)}.lux-ranking-item:last-child{border-bottom:none}.lux-ranking-item-empty{color:var(--color-text-secondary);font-size:.875rem;padding:var(--lux-space-sm) 0}.lux-ranking-pos{width:28px;height:28px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;background:#d4af3729;color:var(--color-accent-soft);border:1px solid rgba(212,175,55,.25)}.lux-ranking-name{flex:1;font-size:.875rem;font-weight:500;color:var(--color-text)}.lux-ranking-value{font-size:.875rem;font-weight:700;color:var(--color-accent-soft)}.lux-section-title{display:flex;align-items:center;justify-content:space-between;gap:var(--lux-space-sm);margin:0 0 var(--lux-space-md);font-size:1.0625rem;font-weight:600;color:var(--color-text);letter-spacing:-.01em}.lux-section-anchor{scroll-margin-top:88px}.lux-dashboard-section+.dashboard-overview{background:transparent;border:none;box-shadow:none;padding:var(--lux-space-md) 0 0;margin-bottom:0}.lux-dashboard-section+.dashboard-overview .kpi-strip{display:none}html[data-luxcore="1"] .dashboard-overview .status-filters-label{color:var(--color-text-secondary);font-size:.75rem}html[data-luxcore="1"] .status-chip{border-color:#334155e6;background:#1e293ba6;color:var(--color-text-secondary);padding:8px 14px;font-size:.8125rem;min-height:36px}html[data-luxcore="1"] .status-chip:hover{background:#d4af3714;border-color:#d4af3759;color:var(--color-text)}html[data-luxcore="1"] .status-chip-active{background:#d4af3724;border-color:#d4af378c;color:var(--color-accent-soft)}html[data-luxcore="1"] .rooms-board{margin-top:var(--lux-space-sm)}html[data-luxcore="1"] .rooms-board .lux-rooms-heading{margin-top:var(--lux-space-md);padding-top:var(--lux-space-md);border-top:1px solid var(--lux-glass-border, var(--color-border))}html[data-luxcore="1"] .room-card{border-radius:var(--radius-md);border-color:var(--lux-glass-border);box-shadow:var(--lux-shadow-sm);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}html[data-luxcore="1"] .room-card-clickable:hover{transform:translateY(-3px);box-shadow:var(--lux-shadow);border-color:#d4af3738}.lux-room-status-row{display:flex;align-items:center;justify-content:space-between;gap:var(--lux-space-xs);flex-wrap:wrap;width:100%}.lux-room-status-row .room-name{margin:0;font-size:1.35rem;letter-spacing:-.02em}@media (max-width: 479px){.lux-room-status-row .lux-status-badge{font-size:.62rem;padding:3px 8px}}html[data-luxcore="1"] .dashboard-alerts .widget-alert{border-radius:var(--radius-md);padding:14px 16px;line-height:1.5;font-size:.875rem}.lux-cash-executive{display:grid;gap:var(--lux-space-sm);margin-bottom:var(--lux-space-lg)}@media (min-width: 768px){.lux-cash-executive{grid-template-columns:repeat(3,1fr);gap:var(--lux-space-md)}}.lux-cash-panel-card{background:linear-gradient(145deg,var(--color-surface) 0%,var(--color-surface-2) 100%);border:1px solid var(--lux-glass-border, var(--color-border));border-radius:var(--radius-md);padding:20px;box-shadow:var(--lux-shadow-sm);transition:border-color .2s ease}.lux-cash-panel-card:hover{border-color:#d4af3738}.lux-cash-panel-card h3{margin:0 0 8px;font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-secondary);font-weight:600}.lux-cash-panel-value{font-size:clamp(1.2rem,3vw,1.5rem);font-weight:700;line-height:1.2;color:var(--color-text)}.lux-cash-panel-meta{margin:10px 0 0;font-size:.8125rem;color:var(--color-text-secondary);line-height:1.45}.lux-cash-panel-value-success{color:#4ade80}.lux-cash-panel-value-danger{color:#fca5a5}.lux-cash-panel-value-accent{color:var(--color-accent-soft)}.lux-marketing-tabs{display:flex;flex-wrap:nowrap;gap:var(--lux-space-xs);margin-bottom:var(--lux-space-lg);overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.lux-marketing-tabs::-webkit-scrollbar{display:none}.lux-marketing-tab{padding:10px 16px;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .18s ease;white-space:nowrap;flex-shrink:0}.lux-marketing-tab:hover{border-color:#d4af3759;color:var(--color-text)}.lux-marketing-tab-active{border-color:#d4af378c;background:#d4af3724;color:var(--color-accent-soft)}.lux-marketing-grid{display:grid;gap:var(--lux-space-md)}@media (min-width: 768px){.lux-marketing-grid{grid-template-columns:repeat(2,1fr)}}.lux-mock-badge{display:inline-block;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:999px;background:#38bdf829;color:#7dd3fc;margin-left:var(--lux-space-xs);vertical-align:middle}.lux-ig-template{aspect-ratio:1;border-radius:var(--radius-md);border:1px dashed rgba(148,163,184,.35);background:linear-gradient(135deg,#1e293b,#0f172a);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--lux-space-xs);padding:var(--lux-space-md);text-align:center;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;color:var(--color-text)}.lux-ig-template:hover{border-color:#d4af3773;transform:translateY(-2px);box-shadow:var(--lux-shadow-sm)}.lux-ig-template-active{border-style:solid;border-color:#d4af37a6;box-shadow:0 0 0 1px #d4af3740}.marketing-page-head{margin-bottom:var(--lux-space-md)}.marketing-page-title{margin:4px 0 0;font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:600;letter-spacing:-.02em}.marketing-page-subtitle{margin-top:6px}.marketing-readonly-notice{margin:0 0 var(--lux-space-md);padding:10px 14px;border-radius:var(--radius-sm);border:1px solid rgba(56,189,248,.25);background:#38bdf814;color:#7dd3fc;font-size:.8125rem}.lux-marketing-subnav{display:flex;flex-wrap:wrap;gap:var(--lux-space-xs);margin-bottom:var(--lux-space-lg);padding-bottom:var(--lux-space-sm);border-bottom:1px solid var(--color-border)}.lux-marketing-subnav-link{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--radius-md);border:1px solid transparent;color:var(--color-text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;transition:all .18s ease}.lux-marketing-subnav-link:hover{color:var(--color-text);background:#ffffff0a}.lux-marketing-subnav-active{border-color:#d4af3773;background:#d4af371f;color:var(--color-accent-soft)}.marketing-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--lux-space-md);margin-top:var(--lux-space-md)}.marketing-field{display:flex;flex-direction:column;gap:6px}.marketing-field span{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary)}.marketing-field-full{grid-column:1 / -1}.marketing-checkbox{flex-direction:row;align-items:center;gap:10px;text-transform:none}.marketing-kpi-row{margin-bottom:var(--lux-space-md)}.marketing-table td,.marketing-table th{vertical-align:middle}.marketing-actions-cell{display:flex;flex-wrap:wrap;gap:6px}.marketing-status-pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.marketing-status-activa{background:#4ade8026;color:#86efac}.marketing-status-inactiva,.marketing-status-expirada,.marketing-status-agotada{background:#f871711f;color:#fca5a5}.marketing-status-programada{background:#38bdf81f;color:#7dd3fc}.marketing-modal{max-width:520px;width:calc(100% - 32px)}.marketing-modal-wide{max-width:640px}.marketing-campaign-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--lux-space-md);margin-bottom:var(--lux-space-md)}.marketing-month-nav{display:flex;align-items:center;gap:8px}.marketing-month-label{min-width:160px;text-align:center;text-transform:capitalize}.marketing-calendar-card{padding:var(--lux-space-md);overflow-x:auto}.marketing-calendar{min-width:560px}.marketing-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.marketing-calendar-weekdays span{text-align:center;font-size:.72rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase}.marketing-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.marketing-calendar-cell{min-height:88px;padding:6px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);text-align:left;cursor:default;transition:border-color .15s ease}.marketing-calendar-cell-empty{border-color:transparent;background:transparent}.marketing-calendar-cell:hover:not(.marketing-calendar-cell-empty){border-color:#d4af3759}.marketing-calendar-today{border-color:#d4af378c;box-shadow:inset 0 0 0 1px #d4af3733}.marketing-calendar-day{font-size:.8rem;font-weight:600}.marketing-calendar-events{display:flex;flex-direction:column;gap:3px;margin-top:6px}.marketing-calendar-event{display:block;padding:2px 6px;border-radius:4px;font-size:.62rem;font-weight:600;color:#0a0a0f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.marketing-calendar-more{font-size:.62rem;color:var(--color-text-secondary)}.marketing-campaign-card-head{display:flex;gap:12px;align-items:flex-start}.marketing-campaign-dot{width:10px;height:10px;border-radius:50%;margin-top:6px;flex-shrink:0}.marketing-campaign-status{margin:8px 0;font-size:.8125rem;color:var(--color-accent-soft)}.marketing-channel-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.marketing-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--lux-space-sm);margin:var(--lux-space-md) 0}.marketing-template-preview{font-size:.72rem;color:var(--color-muted);line-height:1.35}.marketing-template-details{margin:var(--lux-space-sm) 0}.marketing-template-body,.marketing-generated-text{margin:8px 0 0;padding:12px;border-radius:var(--radius-sm);background:#00000040;border:1px solid var(--color-border);font-size:.8125rem;line-height:1.5;white-space:pre-wrap;font-family:inherit}.marketing-output-card{margin-top:var(--lux-space-md)}.marketing-output-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:var(--lux-space-sm)}.lux-meta-badge{display:inline-block;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;border-radius:999px;background:#d4af3729;color:var(--color-accent-soft)}.marketing-meta-card{margin-top:var(--lux-space-md)}.marketing-meta-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.marketing-meta-scopes{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;padding:0;list-style:none}.marketing-meta-scopes code{font-size:.72rem;padding:4px 8px;border-radius:6px;background:#ffffff0f}@media (max-width: 640px){.marketing-form-grid{grid-template-columns:1fr}}.lux-mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:300;background:#0f172af5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--lux-glass-border, var(--color-border));padding:8px 6px calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -8px 32px #0006}@media (max-width: 900px){.lux-mobile-nav{display:flex;justify-content:space-around;align-items:stretch}.sidebar-collapse-mobile-header{display:inline-flex!important}html[data-luxcore="1"] .app-shell-subtitle{display:none}html[data-luxcore="1"] .lux-status-pill{padding:4px 8px;font-size:.6875rem}html[data-luxcore="1"] .app-shell-header-text{min-width:0;flex:1}html[data-luxcore="1"] .app-shell-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}html[data-luxcore="1"] .lux-topbar-status{gap:6px}}@media (max-width: 480px){html[data-luxcore="1"] .lux-status-pill{display:none}.lux-mobile-nav-item{font-size:.58rem;padding:8px 2px;min-height:52px}.lux-kpi-card{padding:14px 16px}.lux-section-title{flex-direction:column;align-items:flex-start;gap:4px}}@media (min-width: 901px) and (max-width: 1100px){.app-shell:not(.sidebar-collapsed) .sidebar{width:72px}.app-shell:not(.sidebar-collapsed) .sidebar-brand-text,.app-shell:not(.sidebar-collapsed) .sidebar-link-label,.app-shell:not(.sidebar-collapsed) .sidebar-section-title,.app-shell:not(.sidebar-collapsed) .sidebar-user,.app-shell:not(.sidebar-collapsed) .sidebar-shortcut,.app-shell:not(.sidebar-collapsed) .sidebar-collapse-desktop{display:none}.app-shell:not(.sidebar-collapsed) .sidebar-link{justify-content:center;padding:11px}.app-shell:not(.sidebar-collapsed) .sidebar-brand{justify-content:center}}.lux-mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;min-height:48px;border:none;background:transparent;color:var(--color-text-secondary);text-decoration:none;font-size:.625rem;font-weight:600;cursor:pointer;border-radius:12px;transition:color .18s ease,background .18s ease,transform .15s ease;min-width:0}.lux-mobile-nav-item:hover{color:var(--color-accent-soft);background:#d4af3714}.lux-mobile-nav-item-active{color:var(--color-accent-soft);background:#d4af371f;box-shadow:inset 0 0 0 1px #d4af3740}.lux-mobile-nav-item-active .lux-mobile-nav-icon{transform:scale(1.08)}.lux-mobile-nav-icon{font-size:1.3rem;line-height:1;transition:transform .18s ease}.lux-topbar-status{display:flex;align-items:center;gap:var(--lux-space-sm);margin-left:auto;flex-shrink:0}.lux-status-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--color-border);background:#1e293bcc}.lux-status-pill-open{border-color:#22c55e73;color:#4ade80;background:#22c55e14}.lux-status-pill-closed{border-color:#ef444473;color:#fca5a5;background:#ef444414}.lux-user-chip{display:none;align-items:center;gap:var(--lux-space-xs);padding:4px 12px 4px 4px;border-radius:999px;border:1px solid var(--lux-glass-border);background:#111827d9;font-size:.8125rem;color:var(--color-text);transition:border-color .18s ease}.lux-user-chip:hover{border-color:#d4af374d}@media (min-width: 640px){.lux-user-chip{display:flex}}.lux-user-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#e8c547,#b8941f);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;color:#1a1508;box-shadow:0 2px 8px #d4af3759}@keyframes lux-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.lux-kpi-card,.lux-chart-card,.lux-alert-item,.lux-bar-chart-bar{animation:none;transition:none}.lux-kpi-card:hover,.lux-quick-action:hover,html[data-luxcore="1"] .room-card-clickable:hover,.lux-ig-template:hover{transform:none}}.lux-access-denied{text-align:center;max-width:480px;margin:48px auto;padding:32px 24px}.lux-access-denied-icon{font-size:2.5rem;margin-bottom:12px;opacity:.85}.lux-perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-bottom:8px}.lux-perm-item{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--lux-radius-sm, 8px);border:1px solid var(--lux-border, rgba(255,255,255,.08));background:var(--lux-surface-2, rgba(255,255,255,.03));cursor:pointer;font-size:.88rem;transition:border-color .15s,background .15s}.lux-perm-item-on{border-color:var(--lux-gold, #c9a227);background:#c9a22714}.lux-perm-item input{accent-color:var(--lux-gold, #c9a227)}.lux-section-title-sm{font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--lux-muted, rgba(255,255,255,.55));margin:0 0 8px}.lux-audit-filters .form-row-wrap{gap:8px}.lux-audit-quick-filters{display:flex;flex-wrap:wrap;gap:8px}.lux-audit-json-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lux-audit-json{background:#00000040;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:12px;font-size:.78rem;max-height:220px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:0}@media (max-width: 768px){.lux-audit-json-grid{grid-template-columns:1fr}}.lux-audit-table{font-size:.82rem}.lux-audit-table .audit-details{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lux-audit-history-modal{max-width:720px;width:min(96vw,720px)}.lux-dashboard-executive .lux-section-title{margin-bottom:var(--lux-space-md)}.lux-kpi-grid-executive{grid-template-columns:repeat(2,1fr)}@media (min-width: 768px){.lux-kpi-grid-executive{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1200px){.lux-kpi-grid-executive{grid-template-columns:repeat(6,1fr)}}.lux-dashboard-grid-charts{margin-top:var(--lux-space-md)}@media (min-width: 1024px){.lux-dashboard-grid-charts{grid-template-columns:1fr 1fr}.lux-chart-card-span-2{grid-column:1 / -1}}.lux-dashboard-grid-panels{margin-top:var(--lux-space-md)}.lux-executive-summary{margin-top:var(--lux-space-lg);padding:var(--lux-space-md);border-radius:var(--radius-md, 12px);border:1px solid var(--lux-glass-border, rgba(212, 175, 55, .12));background:linear-gradient(145deg,#0f172ad9,#1e293b8c)}.lux-executive-summary-grid{display:grid;gap:var(--lux-space-sm);margin-top:var(--lux-space-sm)}@media (min-width: 768px){.lux-executive-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.lux-executive-summary-grid{grid-template-columns:repeat(4,1fr)}}.lux-executive-highlight{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:10px;border:1px solid rgba(51,65,85,.6);background:#0f172a80;transition:border-color .18s ease}.lux-executive-highlight:hover{border-color:#d4af3747}.lux-executive-highlight-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);font-weight:600}.lux-executive-highlight-value{font-size:1.05rem;font-weight:700;color:var(--color-text)}.lux-executive-highlight-meta{font-size:.8125rem;color:var(--color-accent-soft, #d4af37)}.lux-activity-list{list-style:none;margin:0;padding:0;max-height:280px;overflow-y:auto}.lux-activity-item{padding:10px 0;border-bottom:1px solid rgba(51,65,85,.45)}.lux-activity-item:last-child{border-bottom:none}.lux-activity-empty{color:var(--color-text-secondary);font-size:.875rem}.lux-activity-meta{display:flex;justify-content:space-between;gap:8px;font-size:.72rem;color:var(--color-text-secondary);margin-bottom:4px}.lux-activity-user{font-weight:600;color:var(--color-text)}.lux-activity-text{font-size:.8125rem;line-height:1.4}.lux-activity-panel{max-height:360px}.lux-alert-center{background:var(--color-surface, rgba(15, 23, 42, .6));border:1px solid var(--lux-glass-border, rgba(51, 65, 85, .55));border-radius:var(--radius-md, 12px);padding:var(--lux-space-md, 16px)}.lux-alert-center-compact{grid-column:1 / -1}.lux-alert-center-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.lux-alert-center-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lux-alert-center-filters{margin-bottom:12px}.lux-alert-center-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-height:520px;overflow-y:auto}.lux-alert-center-compact .lux-alert-center-list{max-height:360px}.lux-alert-center-card{padding:14px 16px;border-radius:10px;border:1px solid rgba(51,65,85,.55);background:#0f172a73;border-left:4px solid rgba(148,163,184,.5);transition:border-color .15s ease,background .15s ease}.lux-alert-center-card:hover{background:#1e293b8c}.lux-alert-center-read{opacity:.72}.lux-alert-center-resolved{opacity:.5}.lux-alert-severity-critica{border-left-color:#ef4444}.lux-alert-severity-alta{border-left-color:#f97316}.lux-alert-severity-media{border-left-color:#eab308}.lux-alert-severity-baja{border-left-color:#64748b}.lux-alert-severity-pill{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:999px}.lux-alert-severity-pill.lux-alert-severity-critica{background:#ef44442e;color:#fca5a5}.lux-alert-severity-pill.lux-alert-severity-alta{background:#f973162e;color:#fdba74}.lux-alert-severity-pill.lux-alert-severity-media{background:#eab30826;color:#fde047}.lux-alert-severity-pill.lux-alert-severity-baja{background:#64748b33;color:#cbd5e1}.lux-alert-center-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}.lux-alert-center-category{font-size:.72rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.lux-alert-center-title{margin:0 0 4px;font-size:.95rem;font-weight:600}.lux-alert-center-message{margin:0 0 10px;font-size:.8125rem;color:var(--color-text-secondary);line-height:1.45}.lux-alert-center-actions{display:flex;flex-wrap:wrap;gap:8px}.app-shell-content .container>.lux-dashboard-section,.app-shell-content .container>.lux-cash-executive,.app-shell-content .container>.lux-marketing-tabs,.app-shell-content .container>.lux-marketing-grid,.app-shell-content .container>.rooms-board{width:100%}.owner-mode{min-height:100dvh;background:linear-gradient(165deg,#050508,#0c0c12 45%,#08080e);color:#f2f0eb;color-scheme:dark;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}.owner-mode-header{position:sticky;top:0;z-index:50;padding:calc(12px + env(safe-area-inset-top,0px)) 16px 14px;background:#050508eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(201,169,98,.15)}.owner-mode-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.owner-mode-eyebrow{margin:0;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#c9a962b3}.owner-mode-title{margin:4px 0 0;font-size:1.35rem;font-weight:600;letter-spacing:-.02em;color:#e8dcc8}.owner-mode-user{margin:4px 0 0;font-size:.78rem;color:#f2f0eb73}.owner-mode-refresh{width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#c9a962;font-size:1.25rem;cursor:pointer;flex-shrink:0}.owner-mode-refresh:disabled{opacity:.5}.owner-mode-header-actions{margin-top:10px}.owner-mode-link{font-size:.8125rem;color:#c9a962d9;text-decoration:none}.owner-mode-main{padding:16px;max-width:520px;margin:0 auto}.owner-mode-loading,.owner-mode-error{text-align:center;padding:48px 16px;color:#f2f0eb8c}.owner-mode-spinner{width:32px;height:32px;margin:0 auto 12px;border:2px solid rgba(201,169,98,.2);border-top-color:#c9a962;border-radius:50%;animation:owner-spin .8s linear infinite}@keyframes owner-spin{to{transform:rotate(360deg)}}.owner-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.owner-kpi{padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:#13131cd9}.owner-kpi-accent{border-color:#c9a96259;background:linear-gradient(145deg,#c9a9621f,#13131ce6)}.owner-kpi-wide{grid-column:1 / -1}.owner-kpi-profit .owner-kpi-value{color:#86efac}.owner-kpi-loss .owner-kpi-value{color:#fca5a5}.owner-kpi-label{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:#f2f0eb73;margin-bottom:6px}.owner-kpi-value{display:block;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:#f2f0eb;line-height:1.2}.owner-kpi-value-muted{color:#f2f0ebb8}.owner-kpi-meta{display:block;margin-top:6px;font-size:.72rem;color:#f2f0eb66}.owner-occ-bar{margin-top:10px;height:6px;border-radius:999px;background:#ffffff14;overflow:hidden}.owner-occ-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#c9a962,#e8dcc8)}.owner-section{margin-bottom:18px;padding:16px;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:#0d0d14e6}.owner-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.owner-section-head h2{margin:0;font-size:.92rem;font-weight:600;color:#e8dcc8}.owner-section-meta{font-size:.72rem;color:#f2f0eb73}.owner-section-sub{margin:0 0 8px;font-size:.72rem;color:#f2f0eb73}.owner-section-sub-spaced{margin-top:16px}.owner-section-link,.owner-section-link-inline{display:inline-block;margin-top:10px;font-size:.78rem;color:#c9a962;text-decoration:none}.owner-badge-urgent{padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:700;background:#f8717133;color:#fca5a5}.owner-alert-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.owner-alert-item{padding:10px 12px;border-radius:10px;border-left:3px solid #f87171;background:#f8717114}.owner-alert-item strong{display:block;font-size:.8125rem;margin-bottom:4px}.owner-alert-item span{display:block;font-size:.75rem;color:#f2f0eba6;line-height:1.4}.owner-alert-item em{display:block;margin-top:4px;font-size:.68rem;font-style:normal;color:#f2f0eb66}.owner-mini-bars{display:flex;align-items:flex-end;gap:6px;height:88px}.owner-mini-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}.owner-mini-bar-track{width:100%;height:72px;display:flex;align-items:flex-end;justify-content:center}.owner-mini-bar-fill{width:100%;max-width:28px;border-radius:6px 6px 2px 2px;min-height:4px;transition:height .3s ease}.owner-mini-bar-gold{background:linear-gradient(180deg,#e8dcc8,#c9a962)}.owner-mini-bar-blue{background:linear-gradient(180deg,#7dd3fc,#38bdf8)}.owner-mini-bar-label{font-size:.62rem;color:#f2f0eb73;text-transform:capitalize}.owner-rank-list{list-style:none;margin:0;padding:0}.owner-rank-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}.owner-rank-item:last-child{border-bottom:none}.owner-rank-pos{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;background:#c9a96226;color:#c9a962;flex-shrink:0}.owner-rank-body strong{display:block;font-size:.875rem}.owner-rank-body span{font-size:.75rem;color:#f2f0eb80}.owner-promo-chips{display:flex;flex-direction:column;gap:8px}.owner-promo-chip{padding:10px 12px;border-radius:10px;border:1px solid rgba(201,169,98,.2);background:#c9a9620f}.owner-promo-chip strong{display:block;font-size:.875rem;color:#e8dcc8}.owner-promo-chip span{font-size:.75rem;color:#f2f0eb8c}.owner-promo-chip em{display:block;margin-top:2px;font-size:.72rem;font-style:normal;color:#f2f0eb66}.owner-empty{margin:0;font-size:.8125rem;color:#f2f0eb73}.owner-footer-meta{text-align:center;font-size:.68rem;color:#f2f0eb59;margin:8px 0 0}.lux-mobile-nav-owner{color:#e8dcc8}@media (min-width: 768px){.owner-mode-main{max-width:560px;padding:20px 24px 32px}.owner-kpi-value{font-size:1.35rem}}.rent-room-overlay{z-index:1200;align-items:center;justify-content:center;padding:16px}.modal.rent-room-modal{width:min(95vw,1100px)!important;max-width:1100px!important;min-width:0;max-height:90vh!important;padding:0!important;overflow:hidden!important;display:flex!important;flex-direction:column;border-radius:12px;margin:0 auto}.rent-room-modal .rent-modal-header{flex-shrink:0;padding:24px 28px 0;margin-bottom:0}.rent-room-modal .rent-modal-body{flex:1;min-height:0;overflow-y:auto;padding:16px 28px;-webkit-overflow-scrolling:touch}.rent-room-modal .rent-modal-footer{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px;width:100%;padding:16px 28px 24px;border-top:1px solid var(--color-border);background:var(--color-surface);box-sizing:border-box}.rent-room-modal .rent-modal-footer .btn{flex:1 1 160px;min-height:44px;max-width:none}.rent-room-modal .rent-modal-layout--2col{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}@media (min-width: 768px){.rent-room-modal .rent-modal-layout--2col{grid-template-columns:1fr 1fr}.modal.rent-room-modal{min-width:min(900px,95vw)}}.rent-room-modal .rent-modal-col--right{display:flex;flex-direction:column;gap:14px;min-width:0}.rent-room-modal .rent-modal-col--left.form-stack{gap:10px;min-width:0}.rent-room-modal .rent-modal-rates{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px}.rent-room-modal .rate-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.rent-room-modal .rate-picker-btn{min-height:72px;justify-content:center}.rent-room-modal .rate-picker-btn--selected{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 12%,var(--color-surface-2));box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 40%,transparent)}.rent-room-modal .rent-summary-panel{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 16px;margin-top:0}.rent-room-modal .rent-summary-panel--highlight{border-color:color-mix(in srgb,var(--color-accent) 35%,var(--color-border))}@media (max-width: 767px){.rent-room-overlay{align-items:flex-end;padding:0}.modal.rent-room-modal{width:96vw!important;max-width:96vw!important;min-width:0!important;max-height:90vh!important;border-radius:12px 12px 0 0}.rent-room-modal .rent-modal-header{padding:20px 16px 0}.rent-room-modal .rent-modal-body{padding:12px 16px}.rent-room-modal .rent-modal-footer{padding:12px 16px calc(16px + env(safe-area-inset-bottom,0px));flex-direction:column}.rent-room-modal .rent-modal-footer .btn{width:100%;flex:none}}.cash-arqueo-panel{margin-bottom:20px}.cash-arqueo-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.cash-arqueo-subtitle{margin-top:4px}.cash-arqueo-status{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;font-size:.85rem;font-weight:600;border:1px solid var(--color-border)}.cash-arqueo-status--open{color:var(--color-success);border-color:color-mix(in srgb,var(--color-success) 40%,transparent);background:color-mix(in srgb,var(--color-success) 12%,transparent)}.cash-arqueo-status--blocked{color:var(--color-warning);border-color:color-mix(in srgb,var(--color-warning) 40%,transparent);background:color-mix(in srgb,var(--color-warning) 12%,transparent)}.cash-arqueo-status--closed{color:var(--color-text-secondary)}.cash-arqueo-alert{margin-bottom:16px;padding:12px 16px;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--color-warning) 45%,transparent);background:color-mix(in srgb,var(--color-warning) 10%,var(--color-surface-2));color:var(--color-text)}.cash-arqueo-kpis{margin-bottom:16px}.lux-cash-panel-row{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width: 768px){.lux-cash-panel-row{grid-template-columns:1fr 1fr}}.cash-arqueo-dl{display:grid;gap:8px;margin:0}.cash-arqueo-dl>div{display:flex;justify-content:space-between;gap:12px;padding-bottom:6px;border-bottom:1px solid var(--color-border)}.cash-arqueo-dl dt{margin:0;color:var(--color-text-secondary);font-size:.88rem}.cash-arqueo-dl dd{margin:0;font-weight:600;text-align:right}.cash-arqueo-diff-warn{color:var(--color-warning)}.cash-expense-form{display:grid;gap:12px}@media (min-width: 640px){.cash-expense-form{grid-template-columns:1fr 1fr;align-items:end}.cash-expense-form .field--full{grid-column:1 / -1}}.cash-history-row{cursor:pointer}.cash-history-row:hover{background:color-mix(in srgb,var(--color-accent) 6%,transparent)}.users-table tr.row-expense td{opacity:.95}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.cash-session-detail-grid{display:grid;gap:16px}@media (min-width: 768px){.cash-session-detail-grid{grid-template-columns:1fr 1fr}}.cajas-page .modal.modal-wide{width:min(95vw,720px);max-width:720px}
