.clr-muted{color:#9c9a95}.clr-secondary{color:#5c5a52}.clr-primary{color:#1a1917}.clr-accent{color:#4a7c59}.clr-danger{color:#c0392b}.clr-warning{color:#c47b1a}.clr-blue{color:#2563eb}.clr-white{color:#fff}.fs-xs{font-size:11px}.fs-sm{font-size:12px}.fs-body-sm{font-size:13px}.fs-body{font-size:15px}.fs-body-lg{font-size:16px}.fs-heading{font-size:20px}.fs-title{letter-spacing:-.5px;font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:700}.fw-normal{font-weight:400}.fw-medium{font-weight:500}.fw-semibold{font-weight:600}.fw-bold{font-weight:700}.text-label{text-transform:uppercase;letter-spacing:.8px;color:#9c9a95;font-size:12px;font-weight:700}.card-surface,.glass-card{background:#fff;border:1px solid #e5e2da;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000a,0 1px 2px #00000008}.card-surface:hover,.glass-card:hover{box-shadow:0 4px 16px #0000000f,0 1px 4px #0000000a}.card-head{justify-content:space-between;align-items:center;padding:24px 28px 18px;display:flex}.card-head h3{color:#1a1917;align-items:center;gap:12px;font-size:20px;font-weight:700;display:flex}.count-badge{border-radius:10px;padding:4px 12px;font-size:13px;font-weight:700}.count-red{color:#c0392b;background:#fcddd8;border:1px solid #dc262626}.count-muted{color:#9c9a95;background:#f7f6f3;border:1px solid #e5e2da}.view-link{color:#4a7c59;align-items:center;gap:4px;min-height:36px;font-size:15px;font-weight:600;text-decoration:none;transition:color .15s;display:flex}.view-link:hover{color:#3a6347}.p-card{padding:20px 24px}.p-card-head{justify-content:space-between;align-items:center;padding:24px 28px 18px;display:flex}.p-card-body{padding:8px 20px 20px}.card-divider{border-bottom:1px solid #0000000f}.empty-state{text-align:center;color:#9c9a95;padding:60px 20px;font-size:15px}.btn-accent{color:#fff;cursor:pointer;background:#4a7c59;border:none;border-radius:8px;min-height:36px;padding:12px 24px;font-family:inherit;font-size:15px;font-weight:600;transition:all .15s;box-shadow:0 2px 8px #05966940}.btn-accent:hover{background:#3a6347;transform:translateY(-1px);box-shadow:0 4px 14px #05966959}.btn-accent:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-outline{cursor:pointer;color:#1a1917;background:#fff;border:1px solid #e5e2da;border-radius:8px;min-height:36px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;box-shadow:0 1px 3px #0000000a}.btn-outline:hover{background:#f7f6f3;box-shadow:0 2px 8px #0000000f}.btn-text{color:#4a7c59;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:14px;font-weight:600;transition:color .12s}.btn-text:hover{color:#3a6347}.input-field{color:#1a1917;background:#fff;border:1px solid #e5e2da;border-radius:8px;outline:none;width:100%;min-height:50px;padding:14px 18px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 3px #0000000a}.input-field:focus{border-color:#4a7c59;box-shadow:0 0 0 4px #0596691a}.input-field::placeholder{color:#9c9a95}.badge-success{color:#4a7c59;text-transform:uppercase;letter-spacing:.5px;background:#e8f2ec;border:1px solid #05966926;border-radius:10px;padding:4px 12px;font-size:12px;font-weight:700}.badge-danger{color:#c0392b;text-transform:uppercase;letter-spacing:.5px;background:#fcddd8;border:1px solid #dc262626;border-radius:10px;padding:4px 12px;font-size:12px;font-weight:700}.badge-warning{color:#c47b1a;text-transform:uppercase;letter-spacing:.5px;background:#fef3e2;border:1px solid #d9770626;border-radius:10px;padding:4px 12px;font-size:12px;font-weight:700}.badge-info{color:#2563eb;text-transform:uppercase;letter-spacing:.5px;background:#eff6ff;border:1px solid #2563eb26;border-radius:10px;padding:4px 12px;font-size:12px;font-weight:700}.badge-neutral{color:#5c5a52;background:#f7f6f3;border:1px solid #e5e2da;border-radius:10px;padding:4px 12px;font-size:12px;font-weight:700}.link-accent{color:#4a7c59;font-size:15px;font-weight:600;text-decoration:none;transition:color .12s}.link-accent:hover{color:#3a6347}.tab-bar{border-bottom:1px solid #0000000f;display:flex}.tab-item{color:#9c9a95;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;min-height:50px;padding:14px 20px;font-family:inherit;font-size:15px;font-weight:500;transition:all .15s}.tab-item:hover{color:#5c5a52}.tab-item.active{color:#4a7c59;border-bottom-color:#4a7c59;font-weight:600}.list-item{border-bottom:1px solid #0000000a;align-items:flex-start;gap:16px;padding:20px 24px;transition:background .12s;display:flex}.list-item:hover{background:#00000004}.list-item:last-child{border-bottom:none}.section-head{align-items:center;gap:10px;margin-bottom:16px;display:flex}.section-head-label{text-transform:uppercase;letter-spacing:1.2px;color:#9c9a95;font-size:14px;font-weight:700}.section-head-line{background:#0000000f;flex:1;height:1px}.page-enter table{border-collapse:collapse;width:100%}.page-enter table th{text-transform:uppercase;letter-spacing:.8px;color:#9c9a95;text-align:left;border-bottom:1px solid #0000000f;padding:14px 16px;font-size:12px;font-weight:700}.page-enter table td{color:#1a1917;border-bottom:1px solid #0000000a;padding:16px;font-size:15px}.page-enter table tr{transition:background .12s}.page-enter table tr:hover{background:#00000004}.page-enter::-webkit-scrollbar{width:6px}.page-enter::-webkit-scrollbar-thumb{background:#00000014;border-radius:3px}.page-enter::-webkit-scrollbar-thumb:hover{background:#00000026}.page-enter input:focus,.page-enter select:focus,.page-enter textarea:focus{border-color:#4a7c59!important;outline:none!important;box-shadow:0 0 0 4px #0596691a!important}.btn-sm-primary{background:var(--text-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:600;transition:opacity .15s}.btn-sm-primary:disabled{opacity:.7;cursor:wait}.btn-sm-outline{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;padding:9px 18px;font-size:13px;font-weight:500;transition:opacity .15s}.btn-sm-danger{border:1px solid var(--red-border,#fca5a5);background:var(--red-bg);color:var(--red);cursor:pointer;border-radius:6px;padding:5px 12px;font-size:12px}.btn-sm-danger:disabled{opacity:.5;cursor:wait}.btn-sm-blue{color:#fff;cursor:pointer;background:#2b5ce6;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:opacity .15s}.btn-sm-blue:disabled{opacity:.7;cursor:wait}.alert-success{border:1px solid var(--green-border);background:var(--green-bg);color:var(--green);border-radius:8px;padding:12px 14px;font-size:12px}.alert-error{border:1px solid var(--red-border);background:var(--red-bg);color:var(--red);border-radius:8px;padding:10px 14px;font-size:13px}.alert-warning{border:1px solid var(--border);background:var(--amber-bg,#fef3c7);color:var(--amber,#c47b1a);border-radius:10px;padding:14px 16px;font-size:13px;font-weight:500}.alert-info{border:1px solid var(--border);background:var(--accent-light);color:var(--accent);border-radius:10px;padding:14px 16px;font-size:13px;font-weight:500}.section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:14px;font-size:11px;font-weight:600}.info-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:4px;font-size:11px;font-weight:600}.filter-pill{cursor:pointer;border:1px solid var(--border);color:var(--text-secondary);background:0 0;border-radius:20px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .15s}.filter-pill.active{background:var(--text-primary);color:#fff;border-color:#0000}.data-grid-header{background:var(--surface-2);border-bottom:1px solid var(--border);padding:10px 20px}.data-grid-header>div{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:11px;font-weight:600}.data-grid-row{border-bottom:1px solid var(--border);align-items:center;padding:12px 20px}.font-mono-data{font-family:var(--font-dm-mono,monospace)}.status-pill{text-transform:capitalize;border-radius:20px;padding:3px 8px;font-size:11px;font-weight:500}.nav-link-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-primary);cursor:pointer;border-radius:8px;align-items:center;padding:8px 16px;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.nav-link-btn:hover{background:var(--surface-2)}.btn-primary{background:var(--text-primary,#1a1917);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600;transition:opacity .15s}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--red-bg);color:var(--red);border:1px solid var(--red-border,#fca5a5);cursor:pointer;border-radius:8px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:500;transition:opacity .15s}.btn-danger:disabled{opacity:.5;cursor:wait}.btn-outline-sm{border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:6px;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:background .12s}.btn-outline-sm:hover{background:var(--surface-2)}.btn-outline-sm:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{z-index:200;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;max-width:90vw;padding:28px;box-shadow:0 20px 60px #00000026}.error-banner{background:var(--red-bg,#fcddd8);color:var(--red,#c0392b);border:1px solid var(--red-border,#fca5a5);border-radius:8px;padding:10px 16px;font-size:13px}.warning-banner{color:#92400e;background:#fef3e2;border:1px solid #fde68a;border-radius:8px;padding:10px 16px;font-size:13px}.info-banner{background:var(--accent-light,#e8f2ec);color:var(--accent,#4a7c59);border:1px solid var(--accent,#4a7c59);border-radius:8px;padding:12px 16px;font-size:13px}.label-field{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;font-size:11px;font-weight:600;display:block}.grid-header{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:600}.card-header{border-bottom:1px solid var(--border);padding:14px 20px;font-size:13px;font-weight:600}.font-mono{font-family:var(--font-dm-mono,monospace)}.back-link{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:20px;font-size:13px;text-decoration:none;display:inline-flex}::selection{color:#065f46;background:#e8f2ec}
.stat-card{background:var(--surface,#fff);cursor:pointer;box-shadow:var(--shadow-sm);border:1px solid #e5e2da;border-radius:10px;padding:24px 26px 0;transition:all .2s;position:relative;overflow:hidden}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.stat-card .glow{filter:blur(50px);opacity:.07;pointer-events:none;border-radius:50%;width:120px;height:120px;position:absolute;top:-40px;right:-40px}.stat-head{z-index:2;justify-content:space-between;align-items:center;margin-bottom:12px;display:flex;position:relative}.stat-head-left{align-items:center;gap:10px;display:flex}.stat-icon{border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted,#9c9a95);font-size:14px;font-weight:600}.trend-badge{border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:13px;font-weight:700;display:flex}.trend-down{background:var(--red-bg,#fcddd8);color:var(--red,#c0392b)}.stat-value{letter-spacing:-1.5px;z-index:2;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:700;line-height:1;position:relative}.stat-sub{color:var(--text-secondary,#5c5a52);z-index:2;margin-top:6px;padding-bottom:18px;font-size:15px;position:relative}.stat-chart{z-index:2;height:60px;margin:0 -26px;position:relative}.live-indicator{vertical-align:middle;align-items:center;gap:6px;margin-left:12px;display:inline-flex}.live-text{text-transform:uppercase;letter-spacing:1.5px;color:var(--emerald,#4a7c59);font-family:DM Sans,sans-serif;font-size:11px;font-weight:700}.section-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.section-title-label{text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted,#9c9a95);font-size:14px;font-weight:700}.section-line{background:#0000000f;flex:1;height:1px}.room-card{background:var(--surface,#fff);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:10px;padding:24px;transition:all .2s}.room-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.room-card.status-danger{border:1px solid #dc262633}.room-card.status-danger:hover{border-color:#dc262659}.room-card.status-warn{border:1px solid #d9770633}.room-card.status-warn:hover{border-color:#d9770659}.room-card.status-ok{border:1px solid #05966933}.room-card.status-ok:hover{border-color:#05966959}.room-status-badge{text-transform:uppercase;letter-spacing:.8px;border-radius:10px;padding:6px 14px;font-size:12px;font-weight:700}.badge-danger{background:var(--red-bg,#fcddd8);color:var(--red,#c0392b);border:1px solid #dc262626}.badge-warn{background:var(--amber-bg,#fef3e2);color:var(--amber,#c47b1a);border:1px solid #d9770626}.badge-ok{color:#4a7c59;background:#e8f2ec;border:1px solid #05966926}.room-metric{background:var(--bg,#f7f6f3);border:1px solid #0000000a;border-radius:8px;padding:14px}.room-metric-label{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted,#9c9a95);margin-bottom:4px;font-size:11px;font-weight:700}.room-metric-value{font-family:Georgia,Times New Roman,serif;font-size:22px;font-weight:700}.room-metric-value .frac{color:var(--text-muted,#9c9a95);font-family:DM Sans,sans-serif;font-size:13px}.val-ok{color:#4a7c59}.val-tight{color:#c47b1a}.val-default{color:var(--text,#1a1917)}.alert-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.alert-dot.red{background:#c0392b;box-shadow:0 0 6px #dc262640}.alert-dot.amber{background:#c47b1a;box-shadow:0 0 6px #d9770633}.glass-card{background:var(--surface,#fff);box-shadow:var(--shadow-sm);border:1px solid #e5e2da;border-radius:10px;overflow:hidden}.card-head{justify-content:space-between;align-items:center;padding:24px 28px 18px;display:flex}.card-head h3{color:var(--text,#1a1917);align-items:center;gap:12px;font-size:20px;font-weight:700;display:flex}.count-badge{border-radius:10px;padding:4px 12px;font-size:13px;font-weight:700}.count-red{color:#c0392b;background:#fcddd8;border:1px solid #dc262626}.count-muted{background:var(--bg,#f7f6f3);color:var(--text-muted,#9c9a95);border:1px solid #e5e2da}.view-link{color:#4a7c59;align-items:center;gap:4px;min-height:36px;font-size:15px;font-weight:600;text-decoration:none;transition:color .15s;display:flex}.view-link:hover{color:#3a6347}.card-tabs{border-bottom:1px solid #0000000f;gap:0;padding:0 28px;display:flex}.card-tab{color:var(--text-muted,#9c9a95);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;min-height:50px;padding:14px 20px;font-family:inherit;font-size:15px;font-weight:500;transition:all .15s}.card-tab:hover{color:var(--text-secondary,#5c5a52)}.card-tab.active{color:#4a7c59;border-bottom-color:#4a7c59;font-weight:600}.action-list{padding:8px 16px 16px}.time-label{align-items:center;gap:12px;padding:18px 14px 6px;display:flex}.time-label span{text-transform:uppercase;letter-spacing:1.2px;color:var(--text-muted,#9c9a95);white-space:nowrap;font-size:12px;font-weight:700}.time-label:after{content:"";background:#0000000f;flex:1;height:1px}.action-item{cursor:pointer;border:1px solid #0000;border-radius:16px;align-items:flex-start;gap:16px;padding:20px 16px;transition:all .15s;display:flex}.action-item:hover{background:#00000005;border-color:#0000000d}.sev-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:6px}.sev-dot.critical{background:#c0392b;outline:4px solid #dc262614;box-shadow:0 0 10px #dc262640}.sev-dot.warning{background:#c47b1a;outline:4px solid #d977060f;box-shadow:0 0 10px #d9770633}.action-body{flex:1;min-width:0}.action-title{color:var(--text,#1a1917);font-size:16px;font-weight:600;line-height:1.35}.action-desc{color:var(--text-secondary,#5c5a52);margin-top:4px;font-size:15px;line-height:1.5}.action-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.tag{text-transform:uppercase;letter-spacing:.5px;border:1px solid;border-radius:8px;padding:4px 12px;font-size:11px;font-weight:700}.tag-red{color:#c0392b;background:#fcddd8;border-color:#dc262626}.tag-amber{color:#c47b1a;background:#fef3e2;border-color:#d9770626}.tag-blue{color:#2563eb;background:#eff6ff;border-color:#2563eb26}.tag-grey{background:var(--bg,#f7f6f3);color:var(--text-secondary,#5c5a52);border-color:#e5e2da}.action-time{color:var(--text-muted,#9c9a95);font-size:13px}.cta-btn{background:var(--surface,#fff);color:#4a7c59;cursor:pointer;opacity:0;white-space:nowrap;min-height:36px;box-shadow:var(--shadow-sm);border:1px solid #00000014;border-radius:8px;flex-shrink:0;align-items:center;gap:8px;margin-top:4px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:flex}.action-item:hover .cta-btn{opacity:1}.cta-btn:hover{background:#e8f2ec!important;border-color:#05966933!important}.tracker-list{flex-direction:column;gap:12px;padding:8px 20px 20px;display:flex}.tracker-item{background:var(--bg,#f7f6f3);cursor:pointer;border:1px solid #0000000f;border-radius:16px;padding:20px;transition:all .15s}.tracker-item:hover{box-shadow:var(--shadow-sm);border-color:#0000001a}.tracker-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.tracker-name{color:var(--text,#1a1917);font-size:16px;font-weight:600}.tracker-badge{border:1px solid;border-radius:8px;padding:4px 12px;font-size:13px;font-weight:700}.tracker-badge.overdue{color:#c0392b;background:#fcddd8;border-color:#dc262626}.tracker-badge.expiring{color:#c47b1a;background:#fef3e2;border-color:#d9770626}.tracker-bar{background:#0000000f;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden}.tracker-fill{border-radius:4px;height:100%}.tracker-fill.red{background:linear-gradient(90deg,#c0392b,#f87171);box-shadow:0 0 8px #dc262626}.tracker-fill.amber{background:linear-gradient(90deg,#c47b1a,#fbbf24);box-shadow:0 0 8px #d977061a}.tracker-foot{color:var(--text-secondary,#5c5a52);justify-content:space-between;align-items:center;font-size:14px;display:flex}.tracker-cta{background:var(--surface,#fff);color:#4a7c59;cursor:pointer;min-height:38px;box-shadow:var(--shadow-sm);border:1px solid #00000014;border-radius:10px;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s;display:flex}.tracker-cta:hover{background:#e8f2ec;border-color:#05966933}.shift-list{padding:6px 20px 20px}.shift-row{color:var(--text-secondary,#5c5a52);border-radius:10px;align-items:center;gap:12px;min-height:48px;padding:12px 14px;font-size:15px;transition:background .12s;display:flex}.shift-row:hover{background:#00000005}.shift-pip{border-radius:50%;flex-shrink:0;width:8px;height:8px}.shift-pip.red{background:#c0392b;box-shadow:0 0 6px #dc262633}.shift-pip.amber{background:#c47b1a;box-shadow:0 0 6px #d9770626}.shift-row strong{color:var(--text,#1a1917);font-weight:600}.qip-grid{grid-template-columns:1fr 1fr;gap:10px;padding:8px 20px 20px;display:grid}.qip-item{cursor:pointer;border:1px solid;border-radius:8px;min-height:60px;padding:16px 18px;transition:all .15s}.qip-item:hover{transform:scale(1.02)}.qip-met{background:#d1fae580;border-color:#05966926}.qip-working{background:#fffbebb3;border-color:#d9770626}.qip-not-met{background:#fef2f2b3;border-color:#dc262626}.qip-area{text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted,#9c9a95);margin-bottom:4px;font-size:12px;font-weight:700}.qip-rating{align-items:center;gap:6px;font-size:16px;font-weight:600;display:flex}.qip-rating.met{color:#4a7c59}.qip-rating.working{color:#c47b1a}.qip-rating.not-met{color:#c0392b}.qip-span2{grid-column:span 2}.ai-card{box-shadow:var(--shadow-md);background:linear-gradient(140deg,#1e3a2f 0%,#1a3028 50%,#1c2e26 100%);border:1px solid #34d39926;border-radius:10px;padding:28px;position:relative;overflow:hidden}.ai-card .dot-grid{opacity:.04;background-image:radial-gradient(circle at 1px 1px,#34d399cc 1px,#0000 0);background-size:20px 20px;position:absolute;inset:0}.ai-card .corner-glow{filter:blur(60px);pointer-events:none;background:#34d3991a;border-radius:50%;width:200px;height:200px;position:absolute;top:-30px;right:-30px}.ai-card h3{color:#fff;align-items:center;gap:10px;margin-bottom:6px;font-size:20px;font-weight:700;display:flex}.ai-badge{text-transform:uppercase;letter-spacing:1.5px;color:#34d399;background:#064e3b80;border:1px solid #34d39933;border-radius:6px;padding:4px 10px;font-size:10px;font-weight:700}.ai-card p{color:#ffffff73;margin-bottom:20px;font-size:15px;line-height:1.5}.ai-btns{flex-direction:column;gap:10px;display:flex}.ai-btn{color:#fffc;cursor:pointer;text-align:left;background:#ffffff0f;border:1px solid #ffffff14;border-radius:8px;align-items:center;gap:14px;width:100%;min-height:56px;padding:16px 20px;font-family:inherit;font-size:16px;font-weight:500;transition:all .15s;display:flex}.ai-btn:hover{background:#ffffff1a;border-color:#ffffff1f}.ai-icon{color:#34d39980;font-size:18px}.ai-arrow{color:#34d3994d;margin-left:auto;transition:color .15s}.ai-btn:hover .ai-arrow{color:#34d39999}.pulse-dot{border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}.pulse-dot.red{background:#c0392b;box-shadow:0 0 6px #dc262666}.pulse-dot.green{background:#4a7c59;box-shadow:0 0 8px #05966966}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.stat-card{animation:.5s both fadeUp}.stat-card:first-child{animation-delay:50ms}.stat-card:nth-child(2){animation-delay:.1s}.stat-card:nth-child(3){animation-delay:.15s}.stat-card:nth-child(4){animation-delay:.2s}.room-card{animation:.5s both fadeUp}.room-card:first-child{animation-delay:.22s}.room-card:nth-child(2){animation-delay:.27s}.room-card:nth-child(3){animation-delay:.32s}.glass-card,.ai-card{animation:.5s .35s both fadeUp}@media (max-width:1280px){.content-grid-dashboard{grid-template-columns:1fr!important}.room-grid-dashboard{grid-template-columns:repeat(2,1fr)!important}}@media (max-width:768px){.stat-grid-dashboard{grid-template-columns:repeat(2,1fr)!important}.room-grid-dashboard{grid-template-columns:1fr!important}}
