:root{color-scheme:light;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-light: #eff6ff;--success: #16a34a;--success-light: #f0fdf4;--warning: #ca8a04;--warning-light: #fefce8;--danger: #dc2626;--danger-light: #fef2f2;--bg-app: #f8fafc;--bg-card: #ffffff;--bg-subtle: #f1f5f9;--bg-hover: #e2e8f0;--border-light: #e2e8f0;--border-dark: #cbd5e1;--text-main: #0f172a;--text-dark: #0f172a;--text-muted: #64748b;--text-dim: #94a3b8;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .08), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .12), 0 8px 10px -6px rgba(0, 0, 0, .06)}:root[data-theme=dark],.dark{color-scheme:dark;--primary: #3b82f6;--primary-hover: #60a5fa;--primary-light: rgba(59, 130, 246, .18);--success: #22c55e;--success-light: rgba(34, 197, 94, .18);--warning: #eab308;--warning-light: rgba(234, 179, 8, .18);--danger: #ef4444;--danger-light: rgba(239, 68, 68, .18);--bg-app: #0b1120;--bg-card: #131d33;--bg-subtle: #1e293b;--bg-hover: #293548;--border-light: #1e293b;--border-dark: #334155;--text-main: #f8fafc;--text-dark: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .6), 0 4px 6px -4px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .7), 0 8px 10px -6px rgba(0, 0, 0, .5)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--primary: #3b82f6;--primary-hover: #60a5fa;--primary-light: rgba(59, 130, 246, .18);--success: #22c55e;--success-light: rgba(34, 197, 94, .18);--warning: #eab308;--warning-light: rgba(234, 179, 8, .18);--danger: #ef4444;--danger-light: rgba(239, 68, 68, .18);--bg-app: #0b1120;--bg-card: #131d33;--bg-subtle: #1e293b;--bg-hover: #293548;--border-light: #1e293b;--border-dark: #334155;--text-main: #f8fafc;--text-dark: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .6), 0 4px 6px -4px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .7), 0 8px 10px -6px rgba(0, 0, 0, .5)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-app);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-sm);transition:all .15s ease-in-out}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.visually-hidden{position:absolute;clip-path:inset(50%);overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;white-space:nowrap}.primary-btn{background-color:var(--primary);color:#fff;font-weight:600;padding:8px 16px;min-height:38px}.primary-btn:hover:not(:disabled){background-color:var(--primary-hover)}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.secondary-btn{background-color:#fff;color:var(--text-main);border:1px solid var(--border-dark);font-weight:500;padding:8px 14px;min-height:38px}.secondary-btn:hover:not(:disabled){background-color:#f1f5f9}.danger-btn{background-color:var(--danger-light);color:var(--danger);border:1px solid #fca5a5;font-weight:600;padding:8px 14px;min-height:38px}.danger-btn:hover{background-color:#fee2e2}.app-loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.loading-spinner{width:36px;height:36px;border:4px solid #e2e8f0;border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-header{background:#fff;border-bottom:1px solid var(--border-light);padding:8px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:0;z-index:20;max-width:100vw;box-sizing:border-box}.header-left{display:flex;align-items:center;gap:12px;flex-shrink:0}.app-logo{display:flex;align-items:center;gap:10px;flex-shrink:0}.logo-icon{color:var(--primary)}.brand-name{font-size:18px;font-weight:800;letter-spacing:-.5px;color:#0f172a}.brand-badge{display:block;font-size:9px;font-weight:700;letter-spacing:.5px;color:var(--text-muted)}.header-project-name{display:flex;align-items:center;gap:8px;padding-left:12px;border-left:1px solid var(--border-light);min-width:0;max-width:220px}.project-title{font-weight:600;font-size:13px;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vps-badge{display:inline-flex;align-items:center;gap:5px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600;color:#334155;flex-shrink:0}.online-dot{width:7px;height:7px;border-radius:50%;background-color:var(--success)}.header-right{display:flex;align-items:center;gap:5px;flex-shrink:0}.header-btn{background:#fff;border:1px solid var(--border-light);padding:6px 10px;font-size:12px;font-weight:600;color:var(--text-main);border-radius:var(--radius-sm);min-height:34px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.header-btn:hover{background:#f8fafc;border-color:var(--border-dark)}.add-room-btn{border-radius:var(--radius-sm);padding:6px 14px;min-height:34px;font-size:13px;font-weight:700;flex-shrink:0;white-space:nowrap}@media(max-width:1650px){.header-landing-btn .hide-on-compact,.header-refresh-btn .hide-on-compact,.header-export-btn .hide-on-tablet,.header-settings-btn .hide-on-tablet,.header-history-btn .hide-on-tablet,.admin-accounts-btn .hide-on-compact,.plan-name-text{display:none}}@media(max-width:1380px){.header-project-name{display:none}.user-pill-name{max-width:90px}.app-header{padding:6px 10px;gap:6px}}@media(max-width:1050px){.user-session-pill{padding:3px 6px}.user-pill-name{display:none}}@media(max-width:900px){.app-header{flex-wrap:wrap;padding:8px 10px}.header-left{flex:1 1 auto}.header-right{flex:1 1 auto;justify-content:flex-end;flex-wrap:wrap}}.stats-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;padding:16px 24px;background:#fff;border-bottom:1px solid var(--border-light)}.stat-card{background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:14px 16px;transition:transform .15s,box-shadow .15s}.stat-card.clickable{cursor:pointer}.stat-card.clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.stat-card.active-filter{border-color:var(--danger);background:var(--danger-light)}.stat-card.card-warning{border-left:4px solid var(--danger)}.stat-value{font-size:24px;font-weight:700;line-height:1.1;color:var(--text-main);display:flex;align-items:center;gap:6px}.stat-value.text-accent{color:var(--primary)}.stat-value.text-blue{color:#0284c7}.stat-value.text-red{color:var(--danger)}.stat-value.text-slate{color:#475569}.stat-caption{font-size:12px;color:var(--text-muted);margin-top:4px;font-weight:500}.filters-toolbar{padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#fff;border-bottom:1px solid var(--border-light)}.view-mode-group{display:inline-flex;background:#f1f5f9;padding:3px;border-radius:var(--radius-sm);border:1px solid var(--border-light)}.view-toggle-btn{padding:6px 12px;font-size:13px;font-weight:600;color:var(--text-muted);border-radius:4px}.view-toggle-btn.active{background:#fff;color:var(--primary);box-shadow:var(--shadow-sm)}.filters-inputs-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1;justify-content:flex-end}.search-input-wrap{position:relative;min-width:170px;flex:1 1 180px;max-width:280px}.search-ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-dim)}.search-input-wrap input{width:100%;padding:7px 10px 7px 32px;font-size:13px;background:#f8fafc;border:1px solid var(--border-dark);border-radius:var(--radius-sm)}.filter-select-wrap{position:relative;display:inline-flex;align-items:center}.filter-ic{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none}.filter-select-wrap select{padding:7px 12px;font-size:13px;background:#f8fafc;border:1px solid var(--border-dark);border-radius:var(--radius-sm);max-width:220px;text-overflow:ellipsis}.filter-select-wrap:has(.filter-ic) select{padding-left:28px}.filter-chip-btn{padding:7px 12px;font-size:13px;font-weight:500;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#f8fafc;color:var(--text-main)}.filter-chip-btn.active{background:var(--danger-light);border-color:#fca5a5;color:var(--danger);font-weight:600}.clear-filters-btn{font-size:12px;color:var(--primary);text-decoration:underline;padding:4px 6px}.app-main-content{flex:1;padding:20px 24px}.content-results-header{margin-bottom:14px;font-size:13px;color:var(--text-muted)}.matrix-empty-state{text-align:center;padding:60px 20px;background:#fff;border:1px dashed var(--border-dark);border-radius:var(--radius-md);color:var(--text-muted)}.floor-matrix-container{display:flex;flex-direction:column;gap:24px}.building-section{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.building-title-bar{background:#f8fafc;border-bottom:1px solid var(--border-light);padding:10px 16px;display:flex;align-items:center;gap:10px}.building-badge{background:#0f172a;color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px}.building-name{font-size:15px;font-weight:700;color:var(--text-main)}.building-stats-label{font-size:12px;color:var(--text-muted)}.floors-matrix-grid{display:flex;flex-direction:column}.floor-row{display:flex;align-items:stretch;border-bottom:1px solid var(--border-light)}.floor-row:last-child{border-bottom:none}.floor-label-cell{width:90px;min-width:90px;background:#f1f5f9;border-right:1px solid var(--border-light);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 6px}.floor-number{font-size:20px;font-weight:800;color:#1e293b;line-height:1}.floor-text{font-size:9px;font-weight:700;color:var(--text-muted);letter-spacing:.5px;margin-top:2px}.rooms-cells-wrap{flex:1;padding:12px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.room-matrix-card{width:165px;min-height:86px;background:#fff;border:1px solid var(--border-dark);border-radius:var(--radius-sm);padding:10px 12px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;transition:transform .15s,box-shadow .15s,border-color .15s}.room-matrix-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary)}.room-matrix-card.status-completed{border-color:#86efac;background:#f0fdf4}.room-matrix-card.status-has-issues{border-color:#fca5a5;background:#fef2f2;box-shadow:0 0 0 1px #ef4444}.room-matrix-card.status-progressing{border-color:#93c5fd}.card-top-row{display:flex;align-items:center;justify-content:space-between;width:100%}.room-number-badge{font-size:14px;font-weight:800;color:#0f172a}.card-icons-row{display:flex;align-items:center;gap:4px}.matrix-icon.photo-ic{color:#2563eb}.matrix-icon.success-ic{color:#16a34a}.matrix-issue-badge{display:inline-flex;align-items:center;gap:2px;background:#fee2e2;color:#b91c1c;font-size:10px;font-weight:700;padding:1px 4px;border-radius:4px}.matrix-progress-track{width:100%;height:5px;background:#e2e8f0;border-radius:3px;overflow:hidden;margin:6px 0}.matrix-progress-fill{height:100%;background-color:var(--primary);border-radius:3px}.room-matrix-card.status-completed .matrix-progress-fill{background-color:var(--success)}.card-bottom-row{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:11px}.progress-fraction{font-weight:700;color:var(--text-muted)}.resp-snippet{display:inline-flex;align-items:center;gap:3px;color:var(--text-muted);max-width:95px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.add-room-quick-btn{border:1px dashed var(--border-dark);color:var(--text-muted);padding:8px 12px;font-size:12px;font-weight:600;border-radius:var(--radius-sm);background:#fff;min-height:80px}.add-room-quick-btn:hover{background:#f8fafc;border-color:var(--primary);color:var(--primary)}.responsive-table-container{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:auto;box-shadow:var(--shadow-sm);max-height:80vh;container-type:inline-size}.rooms-data-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.rooms-data-table thead{position:sticky;top:0;z-index:5;background:#f8fafc}.rooms-data-table th{padding:12px 14px;font-weight:700;color:#334155;border-bottom:2px solid var(--border-dark);white-space:nowrap}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable-th:hover{background:#f1f5f9}.th-content{display:flex;align-items:center;gap:6px}.rooms-data-table td{padding:12px 14px;border-bottom:1px solid var(--border-light);vertical-align:middle}.table-room-row{cursor:pointer;transition:background-color .1s}.table-room-row:hover{background-color:#f8fafc}.table-room-row.row-with-issues{background-color:#fffbfb}.table-room-row.row-with-issues:hover{background-color:#fef2f2}.table-room-pill{font-weight:800;font-size:14px;color:#0f172a}.table-progress-wrap{display:flex;align-items:center;gap:8px;min-width:130px}.table-progress-bar{flex:1;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.table-progress-fill{height:100%;border-radius:3px}.table-progress-text{font-size:11px;font-weight:600;color:var(--text-muted);white-space:nowrap}.table-issue-tag{display:inline-flex;align-items:center;gap:4px;background:var(--danger-light);color:var(--danger);border:1px solid #fca5a5;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:600}.table-done-tag{display:inline-flex;align-items:center;gap:4px;background:var(--success-light);color:var(--success);border:1px solid #86efac;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:600}.table-normal-tag{display:inline-flex;align-items:center;gap:4px;color:#0284c7;font-size:12px;font-weight:500}.table-photo-tag{display:inline-flex;align-items:center;gap:4px;color:var(--primary);font-size:12px;font-weight:600}.table-no-photo-text{color:var(--text-dim);font-size:12px}.table-actions-cell{white-space:nowrap}.table-action-btn{padding:6px 10px;font-size:12px;font-weight:500;background:#fff;border:1px solid var(--border-dark);border-radius:var(--radius-sm);color:var(--text-main);margin-right:6px}.table-action-btn:hover{background:#f1f5f9}.table-action-btn.print:hover{color:var(--primary)}@container (width < 680px){.rooms-data-table,.rooms-data-table thead,.rooms-data-table tbody,.rooms-data-table tr,.rooms-data-table td{display:block}.rooms-data-table thead{display:none}.table-room-row{margin:12px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);padding:10px 14px;background:#fff}.rooms-data-table td{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--border-light)}.rooms-data-table td:last-child{border-bottom:none;padding-top:10px}.rooms-data-table td:before{content:attr(data-label);font-weight:600;color:var(--text-muted);font-size:12px}}dialog:modal{overscroll-behavior:contain}dialog::backdrop{overflow:hidden;overscroll-behavior:contain;background:#0f172aa6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modern-dialog{border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);background:#fff;padding:0;margin:auto;max-width:95vw;max-height:92dvh;width:min(860px,95vw);height:fit-content;color:var(--text-main);overflow:hidden;flex-direction:column}.modern-dialog[open]{display:flex}.modern-dialog>form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-height:92dvh;overflow:hidden}.dialog-header{padding:16px 24px;background:#f8fafc;border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0}.dialog-breadcrumbs{font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:6px;margin-bottom:2px}.dialog-main-title{font-size:17px;font-weight:700;color:var(--text-main);line-height:1.2}.dialog-subtitle{font-size:12px;color:var(--text-muted);margin-top:2px}.dialog-header-actions{display:flex;align-items:center;gap:8px}.close-icon-btn{color:var(--text-muted);padding:6px;border-radius:var(--radius-sm)}.close-icon-btn:hover{background:#e2e8f0;color:var(--text-main)}.dialog-body{padding:20px 24px;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0}.dialog-footer{padding:14px 24px;background:#f8fafc;border-top:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.footer-right-buttons{display:flex;align-items:center;gap:10px;margin-left:auto}.room-dialog{width:min(1180px,95vw);height:85dvh;min-height:min(650px,85dvh);max-height:92dvh}.room-dialog .dialog-body{min-height:0}.room-passport-card{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:14px 16px;margin-bottom:14px}.passport-field{display:flex;flex-direction:column;gap:4px}.passport-field.full-width{grid-column:1 / -1}.passport-field label{font-size:11px;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:4px}.passport-field input{padding:6px 10px;font-size:13px;font-weight:600;background:#fff;border:1px solid var(--border-dark);border-radius:var(--radius-sm)}.room-stats-banner{display:flex;align-items:center;gap:12px;margin-bottom:16px}.stat-pill{display:inline-flex;align-items:center;gap:6px;background:#f1f5f9;border:1px solid var(--border-light);border-radius:20px;padding:4px 12px;font-size:12px;color:#334155}.stat-pill.issue-pill{background:var(--danger-light);color:var(--danger);border-color:#fca5a5}.tasks-master-detail{display:grid;grid-template-columns:340px 1fr;gap:16px;min-height:500px}.tasks-sidebar{border:1px solid var(--border-light);border-radius:var(--radius-md);background:#f8fafc;display:flex;flex-direction:column;overflow:hidden}.sidebar-section-title{padding:10px 14px;font-size:11px;font-weight:700;color:var(--text-muted);border-bottom:1px solid var(--border-light);background:#f1f5f9;letter-spacing:.5px;flex-shrink:0}.tasks-nav-list{flex:1 1 auto;overflow-y:auto;max-height:460px}.task-nav-item{width:100%;padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-light);background:#fff;display:flex;flex-direction:column;gap:6px;border-left:3px solid transparent}.task-nav-item:hover{background:#f8fafc}.task-nav-item.active{background:#eff6ff;border-left-color:var(--primary)}.task-nav-item.custom-task-item{background:#fdfefe}.task-nav-top{display:flex;align-items:flex-start;gap:6px}.task-nav-number{font-size:12px;font-weight:700;color:var(--text-muted)}.task-nav-title{font-size:13px;font-weight:600;color:#0f172a;line-height:1.3}.task-nav-bottom{display:flex;align-items:center;gap:6px;font-size:11px;flex-wrap:wrap}.task-status-tag{padding:2px 6px;border-radius:4px;border:1px solid transparent;font-weight:600}.task-resp-tag{display:inline-flex;align-items:center;gap:3px;color:#334155;background:#f1f5f9;border:1px solid #cbd5e1;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600}.task-resp-tag.unassigned{color:var(--text-dim);background:transparent;border-style:dashed;font-weight:500}.photo-indicator{color:var(--primary);font-weight:600}.custom-indicator{background:#e0e7ff;color:#3730a3;padding:1px 4px;border-radius:3px;font-size:10px}.add-custom-task-form{padding:10px;border-top:1px solid var(--border-light);display:flex;gap:6px;background:#fff;align-items:stretch}.add-custom-inputs{flex:1;display:flex;flex-direction:column;gap:5px}.add-custom-task-form input{width:100%;padding:6px 10px;font-size:12px;border:1px solid var(--border-dark);border-radius:var(--radius-sm)}.add-task-btn{background:var(--primary);color:#fff;padding:6px 12px;border-radius:var(--radius-sm)}.quick-resp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.quick-resp-chip{padding:4px 10px;font-size:11px;font-weight:600;border-radius:14px;border:1px solid var(--border-dark);background:#f8fafc;color:#334155}.quick-resp-chip:hover{background:#eff6ff;border-color:#93c5fd;color:var(--primary)}.quick-resp-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.task-detail-pane{border:1px solid var(--border-light);border-radius:var(--radius-md);background:#fff;padding:16px;overflow-y:auto}.active-task-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}.active-task-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.task-card-save-btn{padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.task-card-inline-footer{margin-top:16px;padding-top:14px;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end}.task-card-footer-save-btn{padding:9px 18px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.task-kind-pill{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase}.active-task-title{font-size:16px;font-weight:700;color:#0f172a}.delete-task-btn{color:var(--danger);font-size:12px;font-weight:500;padding:4px 8px;border:1px solid #fca5a5;border-radius:var(--radius-sm);background:var(--danger-light)}.delete-task-btn:hover{background:#fee2e2}.status-selector-group{margin-bottom:16px}.status-group-label{font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px}.status-buttons-row{display:flex;gap:8px;flex-wrap:wrap}.status-btn{padding:6px 12px;font-size:12px;font-weight:600;border:1px solid var(--border-dark);border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:6px;transition:all .15s}.status-btn.selected{box-shadow:0 0 0 2px #2563eb33}.status-dot{width:7px;height:7px;border-radius:50%}.task-provenance-bar{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:10px 14px;margin-bottom:16px}.provenance-item{display:flex;flex-direction:column;gap:3px}.prov-lbl{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.prov-val{font-size:12px;font-weight:600;color:var(--text-main);line-height:1.3}.prov-val.accepted{color:#059669}.prov-val.pending{color:#d97706;font-style:italic;font-weight:500}.history-provenance-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;padding-top:6px;border-top:1px dashed var(--border-light)}.hist-chip-accepted{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:#065f46;background:#d1fae5;border:1px solid #a7f3d0;padding:2px 7px;border-radius:4px}.hist-chip-setby{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:#1e40af;background:#dbeafe;border:1px solid #bfdbfe;padding:2px 7px;border-radius:4px}.mobile-passport-summary-bar,.mobile-room-tab-bar,.mobile-task-quick-nav{display:none}.task-fields-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:16px}.task-field{display:flex;flex-direction:column;gap:4px}.task-field label{font-size:12px;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:4px}.task-field input,.task-field textarea{padding:8px 10px;font-size:13px;border:1px solid var(--border-dark);border-radius:var(--radius-sm)}.before-after-wrapper{margin-top:14px;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:14px;background:#f8fafc}.photo-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.photo-section-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#1e293b}.compress-pill{font-size:11px;background:#dbeafe;color:#1e40af;padding:2px 8px;border-radius:10px;font-weight:500}.view-mode-toggle{display:inline-flex;background:#fff;border:1px solid var(--border-dark);border-radius:var(--radius-sm);padding:2px}.mode-btn{padding:4px 8px;font-size:11px;font-weight:600;color:var(--text-muted)}.mode-btn.active{background:var(--primary-light);color:var(--primary);border-radius:4px}.photos-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.photo-box{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden;display:flex;flex-direction:column}.photo-box-header{padding:8px 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-light);background:#f8fafc}.badge-before{font-size:11px;font-weight:700;color:#b91c1c}.badge-after{font-size:11px;font-weight:700;color:#15803d}.photo-actions{display:flex;gap:4px}.action-icon-btn{padding:4px;border-radius:4px;color:var(--text-muted)}.action-icon-btn:hover{background:#e2e8f0;color:var(--text-main)}.action-icon-btn.danger:hover{background:var(--danger-light);color:var(--danger)}.photo-preview-wrap{position:relative;aspect-ratio:4 / 3;background:#0f172a}.preview-img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}.photo-meta-time{position:absolute;bottom:6px;left:6px;background:#0f172abf;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}.photo-upload-dropzone{aspect-ratio:4 / 3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;background:#fff;border:2px dashed var(--border-dark);margin:10px;border-radius:var(--radius-sm);transition:all .15s}.photo-upload-dropzone:hover{background:#f8fafc;border-color:var(--primary)}.upload-icon{color:var(--text-dim)}.upload-title{font-size:12px;font-weight:600;color:var(--text-main)}.upload-subtitle{font-size:10px;color:var(--text-muted)}.interactive-slider-box{position:relative;aspect-ratio:4 / 3;width:100%;max-width:580px;margin:0 auto;overflow:hidden;border-radius:var(--radius-sm);border:1px solid var(--border-dark);-webkit-user-select:none;user-select:none;touch-action:none;cursor:ew-resize;background:#0f172a}.slider-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.slider-img.base-img{z-index:1}.slider-clip{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;z-index:2}.slider-clip .slider-img{width:100%;height:100%}.slider-label{position:absolute;top:10px;font-size:11px;font-weight:800;padding:3px 8px;border-radius:4px;color:#fff;z-index:4}.label-after{right:10px;background:#16a34ad9}.label-before{left:10px;background:#dc2626d9}.slider-handle-line{position:absolute;top:0;bottom:0;width:2px;background:#fff;z-index:5;box-shadow:0 0 6px #00000080;transform:translate(-50%)}.slider-thumb{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#0f172a;box-shadow:var(--shadow-md)}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ae6;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.lightbox-content{position:relative;max-width:90vw;max-height:90vh}.lightbox-close{position:absolute;top:-38px;right:0;color:#fff;background:#fff3;padding:6px;border-radius:50%}.lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:var(--radius-sm)}.photo-count-pill{font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px;background:var(--primary-light);color:var(--primary);border:1px solid var(--primary)}.photo-box-header-title{display:flex;align-items:center;gap:8px}.photo-count-badge{font-size:11px;font-weight:600;color:var(--text-muted);background:#94a3b826;padding:1px 6px;border-radius:10px}.btn-add-more-photo{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--primary);background:var(--primary-light);border:1px solid var(--primary);padding:3px 8px;border-radius:12px;cursor:pointer;transition:all .15s}.btn-add-more-photo:hover{background:var(--primary);color:#fff}.photo-multi-container{display:flex;flex-direction:column}.photo-position-tag{position:absolute;top:6px;right:6px;background:#0f172abf;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px}.photo-thumbnails-strip{display:flex;align-items:center;gap:6px;padding:8px;background:#f8fafc;border-top:1px solid var(--border-light);overflow-x:auto;min-height:52px}.photo-thumb-card{position:relative;width:44px;height:44px;border-radius:4px;overflow:hidden;border:2px solid transparent;cursor:pointer;flex-shrink:0;background:#0f172a;transition:border-color .15s}.photo-thumb-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-thumb-card:hover{border-color:#94a3b8}.photo-thumb-card.active{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.thumb-active-check{position:absolute;top:2px;left:2px;background:var(--primary);color:#fff;border-radius:50%;width:13px;height:13px;display:flex;align-items:center;justify-content:center}.thumb-delete-icon-btn{position:absolute;top:2px;right:2px;background:#ef4444d9;color:#fff;border:none;border-radius:3px;width:14px;height:14px;display:none;align-items:center;justify-content:center;cursor:pointer;padding:0}.photo-thumb-card:hover .thumb-delete-icon-btn{display:flex}.photo-thumb-add-tile{width:44px;height:44px;border:1px dashed var(--border-dark);border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:all .15s}.photo-thumb-add-tile:hover{border-color:var(--primary);color:var(--primary);background:#fff}.slider-mode-container{display:flex;flex-direction:column;gap:8px}.slider-pickers-row{display:flex;flex-wrap:wrap;gap:12px;padding:8px 12px;background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-sm)}.slider-picker-group{display:flex;align-items:center;gap:6px}.picker-label{font-size:11px;font-weight:600;color:var(--text-muted)}.picker-chips{display:flex;gap:4px}.picker-thumb-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px 2px 2px;border-radius:12px;border:1px solid var(--border-dark);background:#fff;font-size:11px;font-weight:600;color:var(--text-main);cursor:pointer;transition:all .15s}.picker-thumb-chip img{width:18px;height:18px;border-radius:50%;object-fit:cover}.picker-thumb-chip.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.lightbox-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#0f172ab3;color:#fff;border:1px solid rgba(255,255,255,.2);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;z-index:10}.lightbox-nav-btn:hover{background:#0f172af2;border-color:#fff}.lightbox-nav-btn.prev{left:-54px}.lightbox-nav-btn.next{right:-54px}.lightbox-caption-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;margin-top:8px;background:#0f172ad9;border-radius:4px;color:#fff;font-size:12px}.lightbox-type-badge{font-weight:700;font-size:11px;padding:2px 6px;border-radius:3px}.lightbox-type-badge.before{background:#b91c1c}.lightbox-type-badge.after{background:#15803d}.lightbox-time{color:#cbd5e1;font-size:11px}.lightbox-counter{font-weight:600;color:#94a3b8}.new-room-dialog{width:min(580px,95vw)}.new-room-dialog .dialog-body{overflow-y:visible}.change-password-dialog{width:min(480px,95vw);max-width:480px}.change-password-body{display:flex;flex-direction:column;gap:16px;padding:22px 24px;min-height:auto;overflow:visible}.cp-master-note{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f59e0b14;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-sm);color:#b45309;font-size:12px;font-weight:500;line-height:1.4}.change-password-success{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 16px;gap:12px}.change-password-success h3{font-size:17px;font-weight:700;color:var(--text-main);margin:0}.change-password-success p{font-size:13px;color:var(--text-muted);margin:0}.new-room-body,.settings-body{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{font-size:13px;font-weight:600;color:#334155;display:flex;align-items:center;gap:4px}.form-group input,.form-group textarea,.form-group select{padding:8px 12px;font-size:14px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#fff}.form-row-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-dialog{width:min(780px,95vw);height:min(720px,88dvh)}.settings-section{background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;gap:10px}.section-title-with-icon{display:flex;align-items:center;gap:6px;color:#0f172a}.section-title-with-icon h3{font-size:14px;font-weight:700}.settings-label{font-size:13px;font-weight:600;color:#334155}.settings-input{padding:8px 12px;font-size:14px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#fff}.settings-hint{font-size:12px;color:var(--text-muted)}.template-items-list{display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.template-item-row{display:flex;align-items:center;gap:8px}.template-num{font-size:12px;font-weight:700;color:var(--text-muted);width:20px}.template-stage-input{flex:1;padding:6px 10px;font-size:13px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#fff}.icon-danger-btn{color:var(--danger);padding:6px;border-radius:var(--radius-sm)}.icon-danger-btn:hover{background:var(--danger-light)}.add-template-form{display:flex;gap:8px;margin-top:6px}.add-template-form input{flex:1;padding:7px 10px;font-size:13px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#fff}.responsibles-chips-wrap{display:flex;flex-wrap:wrap;gap:8px}.resp-chip{background:#fff;border:1px solid var(--border-dark);border-radius:20px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.chip-remove-btn{color:var(--text-dim)}.chip-remove-btn:hover{color:var(--danger)}@media(max-width:768px),(max-height:580px){.app-header{padding:10px 14px}.header-project-name,.hide-on-mobile{display:none}.stats-dashboard{padding:12px 14px;grid-template-columns:1fr 1fr}.filters-toolbar{padding:10px 14px;flex-direction:column;align-items:stretch}.filters-inputs-row{flex-direction:column;align-items:stretch}.app-main-content{padding:14px}.room-dialog{width:100vw;height:100dvh;min-height:0!important;max-height:100dvh;border-radius:0;margin:0;padding:0;display:flex;flex-direction:column}.room-dialog .dialog-body{padding:10px 12px;flex:1 1 auto;min-height:0!important;overflow-y:auto;display:flex;flex-direction:column}.room-dialog .dialog-footer{padding:8px 12px;flex-shrink:0;gap:8px;flex-wrap:wrap}.room-dialog .dialog-footer .danger-btn{padding:7px 10px;font-size:12px}.room-dialog .dialog-footer .secondary-btn,.room-dialog .dialog-footer .primary-btn{padding:7px 12px;font-size:12px}.mobile-passport-summary-bar{display:flex!important;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:8px;font-size:12px}.mobile-passport-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--text-main)}.mobile-passport-toggle-btn{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:4px 8px;font-size:11px;font-weight:600;color:var(--primary);cursor:pointer}.room-passport-card.mobile-passport-collapsed{display:none!important}.mobile-room-tab-bar{display:flex!important;gap:8px;margin-bottom:12px;position:sticky;top:0;z-index:20;background:var(--bg-surface, #ffffff);padding:4px 0 8px;border-bottom:1px solid var(--border-light)}.mobile-tab-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;font-size:13px;font-weight:600;border:1px solid var(--border-light);border-radius:var(--radius-md);background:#f8fafc;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.mobile-tab-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:var(--shadow-sm)}.tasks-master-detail{display:flex!important;flex-direction:column!important;flex:1 1 auto;min-height:0!important;gap:0!important}.room-dialog .dialog-header{padding:8px 12px}.room-dialog .dialog-title{font-size:14px;line-height:1.25}.room-stats-banner{padding:6px 8px;gap:6px;margin-bottom:8px;flex-wrap:wrap}.stat-pill,.uk-handover-toggle-btn{padding:4px 8px;font-size:11px}.tasks-master-detail.mobile-tab-list .task-detail-pane{display:none!important}.tasks-master-detail.mobile-tab-list .tasks-sidebar{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:420px!important;max-height:none!important;height:auto!important;border:1px solid var(--border-light);border-radius:var(--radius-md)}.tasks-master-detail.mobile-tab-list .tasks-nav-list{min-height:300px!important;max-height:420px!important;flex:1 1 auto!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.tasks-master-detail.mobile-tab-detail .tasks-sidebar{display:none!important}.tasks-master-detail.mobile-tab-detail .task-detail-pane{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:12px}.mobile-task-quick-nav{display:flex!important;align-items:center;gap:8px;padding:8px 10px;background:#f1f5f9;border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:12px}.mobile-back-to-list-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;font-size:12px;font-weight:600;background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-main);cursor:pointer;white-space:nowrap;flex-shrink:0}.mobile-task-select-dropdown{flex:1 1 auto;min-width:0;padding:6px 8px;font-size:12px;font-weight:500;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:#fff;color:var(--text-main);text-overflow:ellipsis}.mobile-task-stepper{display:inline-flex;align-items:center;gap:3px;flex-shrink:0}.stepper-nav-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-main);cursor:pointer;padding:0}.stepper-nav-btn:disabled{opacity:.4;cursor:not-allowed}.stepper-counter{font-size:11px;font-weight:600;color:var(--text-muted);min-width:34px;text-align:center}.task-provenance-bar{grid-template-columns:1fr;gap:8px}.photos-grid{grid-template-columns:1fr}.room-passport-card{grid-template-columns:1fr 1fr}}@media(max-height:540px){.room-dialog .dialog-header{padding:5px 12px}.room-dialog .dialog-breadcrumbs{display:none}.room-dialog .dialog-main-title{font-size:13px}.room-dialog .dialog-body{padding:6px 10px}.room-dialog .dialog-footer{padding:6px 12px}.mobile-passport-summary-bar{display:none!important}.room-stats-banner{padding:3px 6px;margin-bottom:4px}.mobile-room-tab-bar{padding:2px 0 4px;margin-bottom:6px}.mobile-tab-btn{padding:5px 10px;font-size:12px}.mobile-task-quick-nav{padding:4px 8px;margin-bottom:8px}.active-task-header{margin-bottom:10px;padding-bottom:8px}.active-task-title{font-size:14px}.status-selector-group{margin-bottom:10px}.tasks-master-detail.mobile-tab-list .tasks-sidebar{min-height:180px!important}.tasks-master-detail.mobile-tab-list .tasks-nav-list{min-height:140px!important;max-height:none!important}.task-provenance-bar{grid-template-columns:1fr 1fr}}.login-page-backdrop{min-height:100dvh;background:linear-gradient(135deg,#0f172a,#1e293b,#0f172a);display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:min(460px,100%);background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:28px;display:flex;flex-direction:column;gap:20px}.login-brand-header{display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border-light);padding-bottom:16px}.login-title{font-size:20px;font-weight:800;color:#0f172a;margin-top:4px}.login-subtitle{font-size:13px;color:var(--text-muted)}.login-form{display:flex;flex-direction:column;gap:14px}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:40px}.password-toggle-btn{position:absolute;right:8px;color:var(--text-muted);padding:4px;border-radius:4px}.password-toggle-btn:hover{color:var(--text-main);background:#f1f5f9}.login-submit-btn{width:100%;justify-content:center;padding:10px 16px;font-size:14px;margin-top:4px}.login-demo-section{border-top:1px solid var(--border-light);padding-top:14px;display:flex;flex-direction:column;gap:8px}.demo-section-title{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.demo-accounts-grid{display:flex;flex-direction:column;gap:6px}.demo-account-btn{width:100%;text-align:left;padding:8px 12px;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:#f8fafc;display:flex;align-items:center;gap:10px;transition:all .15s}.demo-account-btn:hover{background:#eff6ff;border-color:#93c5fd}.demo-account-info{display:flex;flex-direction:column;gap:1px}.demo-account-info strong{font-size:12px;color:#0f172a}.demo-account-info span{font-size:11px;color:var(--text-muted)}.text-amber{color:#d97706}.user-session-pill{display:inline-flex;align-items:center;gap:6px;background:#ffffff1a;border:1px solid rgba(255,255,255,.18);padding:4px 6px 4px 10px;border-radius:20px;color:#f8fafc;font-size:12px;font-weight:600}.user-pill-icon{color:#38bdf8}.user-pill-name{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-icon-btn{color:#cbd5e1;padding:4px;border-radius:50%}.logout-icon-btn:hover{color:#fff;background:#ef444459}.history-dialog{width:min(880px,95vw);height:min(760px,88dvh)}.history-dialog-body{display:flex;flex-direction:column;gap:14px}.history-filters-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#f8fafc;padding:10px 12px;border:1px solid var(--border-light);border-radius:var(--radius-md)}.history-timeline-list{display:flex;flex-direction:column;gap:10px}.history-item-card{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:12px 14px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-sm)}.history-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.history-action-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.history-action-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700}.history-room-link{font-size:12px;font-weight:700;color:var(--primary);background:#eff6ff;border:1px solid #bfdbfe;padding:2px 8px;border-radius:6px}.history-room-link:hover{background:#dbeafe}.history-timestamp{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted)}.history-task-title{font-size:12px;color:#334155}.history-details-text{font-size:13px;color:#0f172a;font-weight:500}.history-user-footer{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);border-top:1px dashed var(--border-light);padding-top:6px;margin-top:2px}.history-role-tag{background:#f1f5f9;color:#475569;padding:1px 6px;border-radius:4px;font-size:10px}.active-toggle-btn{background:var(--primary-light);color:var(--primary);border-color:#93c5fd}.room-history-panel{background:#f8fafc;border:1px solid #cbd5e1;border-radius:var(--radius-md);padding:12px 14px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.room-history-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.room-history-title{display:flex;align-items:center;gap:6px;font-size:13px;color:#0f172a}.room-history-empty{font-size:12px;color:var(--text-muted);padding:8px 0}.room-history-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.room-history-row{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12px}.room-history-main{flex:1;min-width:200px;color:#0f172a}.room-history-task{font-weight:700;color:#334155}.room-history-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-muted)}.room-history-author,.room-history-time{display:inline-flex;align-items:center;gap:4px}.users-directory-list{display:flex;flex-direction:column;gap:6px}.user-account-row{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.user-account-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}.user-login-tag{font-size:11px;color:var(--text-muted);background:#f1f5f9;padding:2px 6px;border-radius:4px}.user-role-pill{font-size:11px;font-weight:600;color:var(--primary);background:#eff6ff;padding:2px 8px;border-radius:10px}.user-role-selector-wrap{display:inline-flex;align-items:center;position:relative;gap:6px}.user-role-select-badge{-moz-appearance:none;appearance:none;-webkit-appearance:none;font-size:11px;font-weight:600;line-height:1.4;padding:3px 22px 3px 9px;border-radius:12px;cursor:pointer;border:1px solid transparent;transition:all .15s ease;background-repeat:no-repeat;background-position:right 6px center;background-size:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.user-role-select-badge:hover:not(:disabled){filter:brightness(.95);box-shadow:0 1px 3px #0000001a}.user-role-select-badge:focus{outline:none;box-shadow:0 0 0 2px var(--primary)}.user-role-select-badge:disabled{opacity:.6;cursor:not-allowed}.user-role-select-badge.role-badge-admin{background-color:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.user-role-select-badge.role-badge-inspector{background-color:#fefce8;color:#a16207;border-color:#fef08a}.user-role-select-badge.role-badge-foreman{background-color:#f1f5f9;color:#334155;border-color:#cbd5e1}.user-role-select-badge.role-badge-uk{background-color:#ecfdf5;color:#047857;border-color:#a7f3d0}.user-role-select-badge option{background-color:#fff;color:#1e293b;font-size:12px;padding:4px}.role-change-spinner{font-size:11px;font-weight:700;color:var(--primary);animation:pulse 1s infinite}.add-user-panel-form{display:flex;flex-direction:column;gap:12px;background:var(--bg-subtle);border:1px solid var(--border-light);padding:16px;border-radius:var(--radius-md);margin-top:10px}.add-user-row{display:flex;align-items:flex-end;gap:12px;width:100%}.form-field-wrap{display:flex;flex-direction:column;gap:5px;flex:1 1 160px;min-width:120px}.form-field-wrap.flex-grow-2{flex:1.8 1 240px}.form-field-wrap.field-action-wrap{flex:0 0 auto;min-width:160px}.field-micro-label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.add-user-panel-form input,.add-user-panel-form select{padding:8px 12px;font-size:13px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#fff;color:var(--text-main);outline:none;height:38px;box-sizing:border-box}.add-user-panel-form input:focus,.add-user-panel-form select:focus{border-color:var(--primary)}.create-account-submit-btn{height:38px;padding:0 18px;font-size:13px;font-weight:700;white-space:nowrap}.add-user-fixed-company-tag{display:flex;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#fff;color:var(--text-main);height:38px;box-sizing:border-box}.users-list-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.users-company-filter-bar{display:flex;align-items:center;gap:8px;background:var(--bg-subtle);border:1px solid var(--border-light);padding:5px 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;color:var(--text-main)}.users-company-select{border:none;background:transparent;font-size:12px;font-weight:700;color:var(--text-main);outline:none;cursor:pointer}.user-company-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;padding:2px 8px;border-radius:12px;white-space:nowrap}.user-company-tag.master-company-tag{color:#b45309;background:#fffbeb;border-color:#fde68a}.user-edit-company-readonly{display:flex;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:600;background:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-main)}@media(max-width:900px){.add-user-grid-form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.add-user-grid-form{grid-template-columns:1fr}.user-pill-name{max-width:110px}}.user-session-pill{background:#f1f5f9;border:1px solid #cbd5e1;color:#0f172a}.user-pill-icon{color:var(--primary)}.logout-icon-btn{color:#64748b}.logout-icon-btn:hover{color:var(--danger);background:#fee2e2}.admin-accounts-btn{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8;font-weight:600}.admin-accounts-btn:hover{background:#dbeafe;border-color:#60a5fa}.users-admin-dialog{width:min(880px,95vw);height:min(760px,88dvh)}.form-success-banner{background:#ecfdf5;color:#047857;border:1px solid #6ee7b7;border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}.user-account-card{background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden}.user-account-card .user-account-row{border:none}.self-user-tag{background:#dbeafe;color:#1e40af;font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px}.user-account-actions{display:flex;align-items:center;gap:8px}.small-action-btn{padding:5px 10px;font-size:12px}.user-inline-edit-form{background:#f8fafc;border-top:1px solid var(--border-light);padding:12px 14px;display:flex;flex-direction:column;gap:12px}.edit-user-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.edit-user-footer{display:flex;justify-content:flex-end;gap:8px}.text-emerald{color:#059669}.uk-handover-toggle-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;border:1px dashed #64748b;background:#fff;color:#334155;transition:all .15s}.uk-handover-toggle-btn:hover{border-color:#059669;color:#047857;background:#ecfdf5}.uk-handover-toggle-btn.transferred{border:1px solid #10b981;background:#ecfdf5;color:#047857;box-shadow:0 0 0 2px #10b98126}.room-matrix-card.status-transferred-uk{background:#ecfdf5;border-color:#34d399}.room-matrix-card.status-transferred-uk .matrix-progress-fill{background:#059669}.matrix-uk-badge{background:#059669;color:#fff;font-size:10px;font-weight:800;padding:1px 6px;border-radius:4px;letter-spacing:.3px}.table-uk-tag{display:inline-flex;align-items:center;gap:5px;background:#ecfdf5;color:#047857;border:1px solid #6ee7b7;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:700}@media(max-width:768px){.edit-user-grid{grid-template-columns:1fr}.uk-handover-toggle-btn{margin-left:0;width:100%;justify-content:center}}.final-handover-nav-wrap{padding:10px 12px 14px;background:linear-gradient(180deg,#f1f5f966,#f1f5f9e6);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);margin-top:4px;margin-bottom:8px}.final-handover-nav-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;border:1.5px dashed #0284c7;background:#f0f9ff;color:#0369a1;cursor:pointer;text-align:left;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 3px #0284c714}.final-handover-nav-btn:hover{background:#e0f2fe;border-color:#0369a1;transform:translateY(-1px)}.final-handover-nav-btn.active{background:#0284c7;color:#fff;border:1.5px solid #0369a1;box-shadow:0 4px 12px #0284c74d}.final-handover-nav-btn.is-transferred{border-style:solid;border-color:#10b981;background:#ecfdf5;color:#065f46}.final-handover-nav-btn.is-transferred:hover{background:#d1fae5;border-color:#059669}.final-handover-nav-btn.is-transferred.active{background:#059669;color:#fff;border-color:#047857;box-shadow:0 4px 12px #05966959}.final-nav-left{display:flex;align-items:center;gap:10px}.final-nav-icon-wrap{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;background:#ffffffd9;color:inherit;flex-shrink:0}.final-handover-nav-btn.active .final-nav-icon-wrap{background:#ffffff40;color:#fff}.final-nav-info{display:flex;flex-direction:column}.final-nav-title{font-size:13px;font-weight:700;line-height:1.25}.final-nav-subtitle{font-size:10px;opacity:.85}.final-nav-badge{font-size:11px;font-weight:700;padding:3px 8px;border-radius:12px;white-space:nowrap}.final-nav-badge.badge-transferred{background:#10b981;color:#fff}.final-nav-badge.badge-ready{background:#f59e0b;color:#fff}.final-nav-badge.badge-pending{background:#00000014;color:inherit}.final-handover-nav-btn.active .final-nav-badge.badge-pending{background:#ffffff40;color:#fff}.final-handover-detail-card{display:flex;flex-direction:column;gap:16px}.task-kind-pill.final-pill{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.final-status-pill{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700}.final-status-pill.transferred{background:#ecfdf5;color:#047857;border:1px solid #10b981}.final-status-pill.pending{background:#fefce8;color:#a16207;border:1px solid #fde047}.final-handover-intro{font-size:13px;line-height:1.5;color:var(--text-muted);margin:0}.handover-readiness-card{padding:14px 16px;border-radius:8px;background:#f8fafc;border:1px solid var(--border-light);display:flex;flex-direction:column;gap:10px}.readiness-header{display:flex;align-items:center;justify-content:space-between;font-size:13px}.readiness-label{color:var(--text-muted)}.readiness-pct{color:var(--text-dark)}.readiness-progress-track{width:100%;height:8px;border-radius:4px;background:#e2e8f0;overflow:hidden}.readiness-progress-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:4px;transition:width .3s ease}.readiness-notice{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.4;padding:8px 12px;border-radius:6px}.readiness-notice.ready{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.readiness-notice.in-progress{background:#fefce8;color:#854d0e;border:1px solid #fef08a}.handover-state-card{padding:20px;border-radius:10px;display:flex;flex-direction:column;gap:16px;border:1px solid var(--border-light)}.handover-state-card.is-transferred{background:#f0fdf4;border-color:#86efac}.handover-state-card.is-pending{background:#f8fafc;border-color:#cbd5e1}.state-card-banner{display:flex;align-items:flex-start;gap:14px}.state-card-banner h4{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--text-dark)}.state-card-banner p{margin:0;font-size:13px;line-height:1.45;color:var(--text-muted)}.handover-meta-details{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:12px 14px;background:#fff;border:1px solid var(--border-light);border-radius:8px}.meta-item{display:flex;flex-direction:column;gap:2px}.meta-lbl{font-size:11px;color:var(--text-muted)}.meta-val{font-size:13px;color:var(--text-dark)}.meta-status-tag{display:inline-block;font-size:12px;font-weight:700;color:#059669}.handover-actions-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.handover-confirm-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;background:#0284c7;color:#fff;font-size:13px;font-weight:700;border:none;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 6px #0284c740}.handover-confirm-btn:hover{background:#0369a1;transform:translateY(-1px)}.handover-rollback-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:6px;background:transparent;color:#ef4444;border:1px solid #fca5a5;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.handover-rollback-btn:hover{background:#fef2f2;border-color:#ef4444}.handover-confirm-dialog{width:min(560px,94vw);max-width:560px;border-radius:var(--radius-lg);padding:0;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;border:1px solid var(--border-light);background:var(--bg-surface, #ffffff)}.handover-confirm-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px;overflow-y:auto;max-height:calc(85vh - 130px)}.handover-room-pill-card{padding:12px 14px;background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-md)}.room-pill-main{display:flex;align-items:center;gap:12px}.room-pill-title{font-size:14px;font-weight:600;color:var(--text-main)}.room-pill-meta{font-size:12px;color:var(--text-muted);margin-top:2px}.handover-stats-summary-card{padding:12px 16px;background:#f8fafc;border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:10px}.handover-stats-summary-card .stats-row{display:flex;align-items:center;justify-content:space-between}.handover-stats-summary-card .stats-col{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1}.handover-stats-summary-card .stats-lbl{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.handover-stats-summary-card .stats-val{font-size:18px;font-weight:700;color:var(--text-main)}.handover-stats-summary-card .stats-divider{width:1px;height:28px;background:var(--border-light)}.handover-progress-track{width:100%;height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden}.handover-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:999px;transition:width .3s ease}.handover-auto-accept-card{padding:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:12px}.auto-accept-header{display:flex;align-items:flex-start;gap:12px}.auto-accept-icon-wrap{width:38px;height:38px;border-radius:10px;background:#dbeafe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.auto-accept-title{font-size:15px;font-weight:700;color:#1e3a8a;margin:0 0 4px;line-height:1.3}.auto-accept-desc{font-size:13px;color:#1e40af;margin:0;line-height:1.45}.auto-accept-preview-wrap{border-top:1px dashed #bfdbfe;padding-top:10px}.preview-label{font-size:11px;font-weight:600;color:#1e40af;margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.preview-tags-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.preview-stage-tag{font-size:11px;font-weight:500;padding:3px 8px;background:#fff;border:1px solid #bfdbfe;color:#1e40af;border-radius:4px;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.preview-stage-tag.more{background:#dbeafe;font-weight:600}.handover-all-done-notice{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-md)}.handover-all-done-notice h4{font-size:15px;font-weight:700;color:#166534;margin:0 0 4px}.handover-all-done-notice p{font-size:13px;color:#15803d;margin:0;line-height:1.45}.handover-confirm-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 20px;border-top:1px solid var(--border-light);background:#f8fafc}.handover-footer-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.handover-without-accept-btn{padding:8px 12px;font-size:12px;font-weight:500;color:var(--text-muted);background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.handover-without-accept-btn:hover{background:#f1f5f9;color:var(--text-main);border-color:var(--border-dark)}.auto-accept-confirm-btn{background:linear-gradient(135deg,#059669,#10b981)!important;color:#fff!important;border:none!important;padding:8px 16px!important;font-size:13px!important;font-weight:600!important;border-radius:var(--radius-md)!important;box-shadow:0 2px 4px #10b98140!important;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.auto-accept-confirm-btn:hover{box-shadow:0 4px 8px #10b98159!important;transform:translateY(-1px)}.handover-confirm-final-btn{background:linear-gradient(135deg,#2563eb,#3b82f6)!important;color:#fff!important;display:inline-flex;align-items:center;gap:6px}[data-theme=dark] .handover-confirm-dialog,.dark .handover-confirm-dialog{background:#0f172a;border-color:#334155}[data-theme=dark] .handover-room-pill-card,.dark .handover-room-pill-card,[data-theme=dark] .handover-stats-summary-card,.dark .handover-stats-summary-card{background:#1e293b;border-color:#334155}[data-theme=dark] .handover-stats-summary-card .stats-divider,.dark .handover-stats-summary-card .stats-divider,[data-theme=dark] .handover-progress-track,.dark .handover-progress-track{background:#334155}[data-theme=dark] .handover-auto-accept-card,.dark .handover-auto-accept-card{background:#2563eb1f;border-color:#3b82f64d}[data-theme=dark] .auto-accept-icon-wrap,.dark .auto-accept-icon-wrap{background:#2563eb40;color:#60a5fa}[data-theme=dark] .auto-accept-title,.dark .auto-accept-title{color:#93c5fd}[data-theme=dark] .auto-accept-desc,.dark .auto-accept-desc{color:#cbd5e1}[data-theme=dark] .auto-accept-preview-wrap,.dark .auto-accept-preview-wrap{border-top-color:#3b82f640}[data-theme=dark] .preview-label,.dark .preview-label{color:#93c5fd}[data-theme=dark] .preview-stage-tag,.dark .preview-stage-tag{background:#1e293b;border-color:#334155;color:#e2e8f0}[data-theme=dark] .preview-stage-tag.more,.dark .preview-stage-tag.more{background:#2563eb40;color:#93c5fd}[data-theme=dark] .handover-all-done-notice,.dark .handover-all-done-notice{background:#10b9811f;border-color:#10b9814d}[data-theme=dark] .handover-all-done-notice h4,.dark .handover-all-done-notice h4{color:#34d399}[data-theme=dark] .handover-all-done-notice p,.dark .handover-all-done-notice p{color:#cbd5e1}[data-theme=dark] .handover-confirm-footer,.dark .handover-confirm-footer{background:#1e293b;border-top-color:#334155}[data-theme=dark] .handover-without-accept-btn,.dark .handover-without-accept-btn{background:#0f172a;border-color:#334155;color:#94a3b8}[data-theme=dark] .handover-without-accept-btn:hover,.dark .handover-without-accept-btn:hover{background:#1e293b;color:#f1f5f9}[data-theme=dark] .final-handover-nav-wrap,.dark .final-handover-nav-wrap{background:linear-gradient(180deg,#0d152766,#0d1527f2);border-color:#273652}[data-theme=dark] .final-handover-nav-btn,.dark .final-handover-nav-btn{background:#111d33;border-color:#0284c7;color:#38bdf8;box-shadow:0 1px 4px #0000004d}[data-theme=dark] .final-handover-nav-btn:hover,.dark .final-handover-nav-btn:hover{background:#172644;border-color:#38bdf8}[data-theme=dark] .final-handover-nav-btn.active,.dark .final-handover-nav-btn.active{background:#0284c7;color:#fff;border-color:#38bdf8}[data-theme=dark] .final-handover-nav-btn.is-transferred,.dark .final-handover-nav-btn.is-transferred{background:#064e3b;border-color:#10b981;color:#a7f3d0}[data-theme=dark] .final-handover-nav-btn.is-transferred.active,.dark .final-handover-nav-btn.is-transferred.active{background:#059669;color:#fff;border-color:#34d399}[data-theme=dark] .final-nav-icon-wrap,.dark .final-nav-icon-wrap{background:#0000004d}[data-theme=dark] .task-kind-pill.final-pill,.dark .task-kind-pill.final-pill{background:#0c4a6e;color:#7dd3fc;border-color:#0284c7}[data-theme=dark] .final-status-pill.transferred,.dark .final-status-pill.transferred{background:#064e3b;color:#6ee7b7;border-color:#10b981}[data-theme=dark] .final-status-pill.pending,.dark .final-status-pill.pending{background:#422006;color:#fde047;border-color:#ca8a04}[data-theme=dark] .handover-readiness-card,.dark .handover-readiness-card{background:#0f182c;border-color:#273652}[data-theme=dark] .readiness-progress-track,.dark .readiness-progress-track{background:#1e293b}[data-theme=dark] .readiness-notice.ready,.dark .readiness-notice.ready{background:#064e3b;color:#a7f3d0;border-color:#059669}[data-theme=dark] .readiness-notice.in-progress,.dark .readiness-notice.in-progress{background:#451a03;color:#fef08a;border-color:#78350f}[data-theme=dark] .handover-state-card.is-transferred,.dark .handover-state-card.is-transferred{background:#0a261d;border-color:#059669}[data-theme=dark] .handover-state-card.is-pending,.dark .handover-state-card.is-pending{background:#0f182c;border-color:#273652}[data-theme=dark] .handover-meta-details,.dark .handover-meta-details{background:#152038;border-color:#273652}[data-theme=dark] .meta-val,.dark .meta-val{color:#f8fafc}[data-theme=dark] .handover-rollback-btn,.dark .handover-rollback-btn{color:#fca5a5;border-color:#7f1d1d}[data-theme=dark] .handover-rollback-btn:hover,.dark .handover-rollback-btn:hover{background:#450a0a;border-color:#ef4444}.lang-switcher-pill{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border-dark);padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;color:#334155;cursor:pointer;transition:all .15s ease;min-height:36px}.lang-switcher-pill:hover{background:#eff6ff;border-color:var(--primary);color:var(--primary)}.lang-switcher-pill .lang-code{font-weight:800;letter-spacing:.5px}.header-company-switcher{display:flex;align-items:center;gap:8px}.company-select-wrap{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border-dark);border-radius:8px;padding:4px 10px;box-shadow:0 1px 2px #0000000a}.company-select-wrap .comp-icon{color:var(--primary);flex-shrink:0}.header-company-select{border:none;background:transparent;font-size:13px;font-weight:700;color:var(--text-main);cursor:pointer;outline:none;max-width:280px}.header-manage-comp-btn{font-size:12px;font-weight:700;padding:6px 10px;border-radius:6px;color:var(--primary);border:1px dashed var(--primary);background:#eff6ff}.header-manage-comp-btn:hover{background:#dbeafe}.plan-quota-pill{display:inline-flex;align-items:center;gap:6px;background:#f8fafc;border:1px solid var(--border-dark);padding:5px 12px;border-radius:20px;font-size:12px;font-weight:700;color:#334155;cursor:pointer;transition:all .15s ease;min-height:36px}.plan-quota-pill:hover{background:#f1f5f9;border-color:#94a3b8}.plan-pill-trial{background:#fefce8;border-color:#fde047;color:#a16207}.plan-pill-full{background:#fef2f2;border-color:#fca5a5;color:#b91c1c;animation:pulse-border 2s infinite}@keyframes pulse-border{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 6px #ef444400}to{box-shadow:0 0 #ef444400}}.password-change-icon-btn{background:transparent;border:none;color:#64748b;cursor:pointer;padding:3px 5px;border-radius:4px;display:inline-flex;align-items:center;transition:all .15s ease}.password-change-icon-btn:hover{background:#e2e8f0;color:var(--primary)}.landing-nav-btn{border-color:#cbd5e1;color:#0f172a}.landing-nav-btn:hover{background:#eff6ff;border-color:var(--primary);color:var(--primary)}.company-manager-dialog{max-width:820px;width:95%;max-height:90vh}.companies-list-container{display:flex;flex-direction:column;gap:16px}.companies-list-header{display:flex;justify-content:space-between;align-items:center}.companies-list-header .count-label{font-size:13px;font-weight:600;color:#64748b}.add-company-btn{font-size:13px;padding:6px 14px}.companies-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}.company-card{background:#fff;border:1px solid var(--border-dark);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all .15s ease;box-shadow:0 1px 3px #0000000a}.company-card-active{border-color:var(--primary);box-shadow:0 0 0 2px #2563eb33;background:#f8faff}.company-card-top{display:flex;justify-content:space-between;align-items:flex-start}.company-name-row{display:flex;align-items:center;gap:8px}.company-title{font-size:15px;font-weight:800;color:var(--text-main)}.company-inn{font-size:11px;color:#94a3b8;display:block;margin-top:2px}.active-badge{display:inline-flex;align-items:center;gap:4px;background:#eff6ff;color:var(--primary);border:1px solid #bfdbfe;font-size:10px;font-weight:800;padding:2px 7px;border-radius:10px}.company-project-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;display:flex;align-items:flex-start;gap:10px}.company-project-box .project-icon{color:#64748b;margin-top:2px;flex-shrink:0}.company-project-box .project-info{display:flex;flex-direction:column}.company-project-box .project-label{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:700;letter-spacing:.5px}.company-project-box .project-name-val{font-size:13px;color:#1e293b;font-weight:700}.company-footer-row{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.plan-pill-tag{display:inline-flex;align-items:center;gap:5px;background:#f1f5f9;border:1px solid #cbd5e1;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700;color:#475569}.plan-pill-tag .quota-tag{color:var(--primary);background:#fff;padding:1px 5px;border-radius:4px;border:1px solid #e2e8f0}.btn-switch-comp{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid var(--border-dark);padding:5px 12px;border-radius:6px;font-size:12px;font-weight:700;color:#334155;cursor:pointer;transition:all .15s ease}.btn-switch-comp:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.subscription-plans-dialog{max-width:1040px;width:min(1040px,95vw);max-height:92dvh}.subscription-plans-body{padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:16px;margin:0}.plan-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:20px 18px;display:flex;flex-direction:column;position:relative;transition:all .2s ease;box-shadow:var(--shadow-sm)}.plan-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.plan-card-popular{border-color:var(--primary);box-shadow:0 4px 16px #2563eb29}.plan-card-current{border-color:#10b981;background:#10b9810d}.plan-badge-popular{position:absolute;top:-10px;right:14px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:800;letter-spacing:.3px;display:inline-flex;align-items:center;gap:4px;box-shadow:0 2px 6px #2563eb4d}.plan-header{margin-bottom:8px}.plan-name{font-size:16px;font-weight:800;color:var(--text-main);margin:0 0 4px;line-height:1.25}.plan-desc{font-size:12px;color:var(--text-muted);min-height:34px;margin:0;line-height:1.35}.plan-price-block{margin:12px 0;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.plan-price{font-size:26px;font-weight:900;color:var(--text-main);line-height:1}.plan-period{font-size:11.5px;color:var(--text-muted);line-height:1.3}.plan-quota-badge{display:inline-flex;align-items:center;gap:6px;background:var(--bg-subtle);border:1px solid var(--border-light);padding:5px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:700;color:var(--text-main);margin-bottom:14px}.plan-features-list{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:8px;flex-grow:1}.plan-feature-item{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--text-main);line-height:1.35}.feature-check-icon{color:#10b981;flex-shrink:0;margin-top:2px}.plan-btn{width:100%;padding:9px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:700;cursor:pointer;border:none;transition:all .15s ease;display:flex;align-items:center;justify-content:center}.plan-btn-upgrade{background:var(--primary);color:#fff}.plan-btn-upgrade:hover{background:var(--primary-hover)}.plan-btn-trial{background:#fefce8;color:#a16207;border:1px solid #fde047}.plan-btn-trial:hover{background:#fef08a}.plan-btn-current{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border-light);cursor:default}.vps-private-note{display:flex;align-items:center;gap:12px;background:var(--primary-light);border:1px solid rgba(37,99,235,.2);padding:12px 16px;border-radius:var(--radius-md);margin-top:4px}.vps-private-note p{margin:0;font-size:12px;color:var(--text-main);line-height:1.45}[data-theme=dark] .plan-card,.dark .plan-card{background:#162035;border-color:#273652}[data-theme=dark] .plan-card:hover,.dark .plan-card:hover{border-color:#3b82f6;box-shadow:0 8px 24px #0006}[data-theme=dark] .plan-card-popular,.dark .plan-card-popular{border-color:#3b82f6;box-shadow:0 4px 16px #3b82f640}[data-theme=dark] .plan-card-current,.dark .plan-card-current{border-color:#10b981;background:#10b9811f}[data-theme=dark] .plan-name,.dark .plan-name,[data-theme=dark] .plan-price,.dark .plan-price{color:#fff}[data-theme=dark] .plan-desc,.dark .plan-desc,[data-theme=dark] .plan-period,.dark .plan-period{color:#94a3b8}[data-theme=dark] .plan-quota-badge,.dark .plan-quota-badge{background:#3b82f626;border-color:#3b82f659;color:#93c5fd}[data-theme=dark] .plan-feature-item,.dark .plan-feature-item{color:#e2e8f0}[data-theme=dark] .plan-btn-trial,.dark .plan-btn-trial{background:#eab30826;color:#fde047;border:1px solid rgba(234,179,8,.4)}[data-theme=dark] .plan-btn-trial:hover,.dark .plan-btn-trial:hover{background:#eab30840}[data-theme=dark] .plan-btn-current,.dark .plan-btn-current{background:#1e293b;color:#94a3b8;border-color:#334155}[data-theme=dark] .vps-private-note,.dark .vps-private-note{background:#3b82f61f;border-color:#3b82f647}[data-theme=dark] .vps-private-note p,.dark .vps-private-note p{color:#bfdbfe}.landing-page-root{min-height:100vh;background:#0f172a;color:#f8fafc;font-family:inherit;overflow-x:hidden}.landing-container{max-width:1200px;margin:0 auto;padding:0 24px}.landing-header{position:sticky;top:0;z-index:100;background:#0f172ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}.header-inner{height:64px;display:flex;align-items:center;justify-content:space-between}.landing-logo{display:flex;align-items:center;gap:10px}.landing-logo .brand-icon-box{width:38px;height:38px;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #2563eb4d}.landing-logo .brand-title{font-size:18px;font-weight:900;letter-spacing:-.5px;color:#fff;display:block;line-height:1.1}.landing-logo .brand-tagline{font-size:9px;font-weight:800;letter-spacing:1px;color:#94a3b8;display:block}.landing-nav{display:flex;align-items:center;gap:24px}.landing-nav a{color:#94a3b8;text-decoration:none;font-size:13px;font-weight:600;transition:color .15s ease}.landing-nav a:hover{color:#fff}.landing-header-actions{display:flex;align-items:center;gap:10px}.landing-lang-toggle{display:inline-flex;align-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:2px;gap:2px}.lang-sub-pill{background:transparent;border:none;color:#94a3b8;padding:4px 10px;border-radius:16px;font-size:11px;font-weight:700;cursor:pointer;transition:all .15s ease}.lang-sub-pill:hover{color:#fff}.lang-sub-pill.active{background:var(--primary);color:#fff;box-shadow:0 1px 3px #0003}.header-landing-btn{background:#eff6ff!important;color:var(--primary)!important;border-color:#bfdbfe!important;font-weight:700}.header-landing-btn:hover{background:#dbeafe!important;border-color:var(--primary)!important}.lang-pill-btn{display:inline-flex;align-items:center;gap:5px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#cbd5e1;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s ease}.lang-pill-btn:hover{background:#ffffff1f;color:#fff}.landing-btn-secondary{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff;padding:7px 16px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease}.landing-btn-secondary:hover{background:#ffffff1a;border-color:#ffffff4d}.landing-btn-trial{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;color:#fff;padding:7px 18px;border-radius:8px;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 4px 12px #2563eb4d;transition:all .15s ease}.landing-btn-trial:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.landing-hero-section{padding:60px 0 80px;position:relative}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}.hero-pill-badge{display:inline-flex;align-items:center;gap:8px;background:#2563eb26;border:1px solid rgba(37,99,235,.4);color:#93c5fd;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:700;margin-bottom:20px}.hero-headline{font-size:44px;font-weight:900;line-height:1.15;letter-spacing:-1px;color:#fff;margin:0 0 20px}.text-gradient{background:linear-gradient(135deg,#60a5fa,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subheadline{font-size:16px;line-height:1.6;color:#94a3b8;margin:0 0 32px;max-width:580px}.hero-cta-group{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:28px}.hero-primary-btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:14px 28px;border-radius:10px;font-size:15px;font-weight:800;border:none;cursor:pointer;box-shadow:0 10px 24px #2563eb66;transition:all .2s ease}.hero-primary-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-2px);box-shadow:0 14px 30px #2563eb80}.hero-master-btn,.hero-signin-btn{display:inline-flex;align-items:center;gap:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);color:#fff;padding:14px 22px;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.hero-master-btn:hover,.hero-signin-btn:hover{background:#ffffff26;border-color:#fff6}.hero-guarantee-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.guarantee-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#cbd5e1}.hero-mockup-wrap{perspective:1000px}.hero-card-preview{background:#1e293b;border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden;box-shadow:0 20px 40px #0006,0 0 60px #2563eb26;transform:rotateY(-3deg) rotateX(2deg);transition:transform .3s ease}.hero-card-preview:hover{transform:rotateY(0) rotateX(0)}.preview-top-bar{background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);padding:10px 14px;display:flex;align-items:center;gap:12px}.window-dots{display:flex;gap:6px}.window-dots .dot{width:9px;height:9px;border-radius:50%}.window-dots .dot.red{background:#ef4444}.window-dots .dot.yellow{background:#f59e0b}.window-dots .dot.green{background:#10b981}.window-title-tab{display:flex;align-items:center;gap:6px;font-size:11px;color:#94a3b8;font-weight:700}.preview-body{padding:16px;display:flex;flex-direction:column;gap:14px}.mockup-kpi-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:#0f172a;padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,.06)}.mockup-kpi{display:flex;flex-direction:column;align-items:center}.mockup-kpi .num{font-size:20px;font-weight:900;color:#fff}.mockup-kpi .lbl{font-size:10px;color:#94a3b8;font-weight:700;text-transform:uppercase}.mockup-matrix-preview{display:flex;flex-direction:column;gap:8px}.floor-row-demo{display:flex;align-items:center;gap:10px}.floor-tag{font-size:11px;font-weight:800;color:#94a3b8;width:50px;flex-shrink:0}.matrix-cards-sample{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;flex-grow:1}.room-cell-demo{background:#0f172a;border:1px solid rgba(255,255,255,.1);padding:8px 10px;border-radius:8px;display:flex;flex-direction:column;gap:4px}.room-cell-demo .r-num{font-size:13px;font-weight:800;color:#fff}.room-cell-demo .r-badge{font-size:9px;font-weight:800;padding:2px 6px;border-radius:4px;display:inline-block}.room-cell-demo .r-badge.done{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.room-cell-demo .r-badge.progress{background:#3b82f626;color:#93c5fd;border:1px solid rgba(59,130,246,.3)}.room-cell-demo .r-badge.issue{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.mockup-handover-ribbon{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#6ee7b7;padding:8px 12px;border-radius:8px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:8px}.landing-metrics-section{background:#1e293b;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);padding:36px 0}.metrics-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.metric-box{display:flex;flex-direction:column;align-items:center;text-align:center}.metric-val{font-size:38px;font-weight:900;color:#38bdf8;letter-spacing:-1px}.metric-desc{font-size:13px;color:#94a3b8;font-weight:600;margin-top:4px}.landing-features-section{padding:80px 0}.section-head{margin-bottom:48px}.section-sub-badge{font-size:11px;font-weight:800;letter-spacing:1.5px;color:#38bdf8;text-transform:uppercase;display:inline-block;margin-bottom:8px}.section-main-title{font-size:34px;font-weight:900;color:#fff;letter-spacing:-.5px;margin:0 0 12px}.section-desc{font-size:16px;color:#94a3b8;max-width:640px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.feature-card{background:#1e293b;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:12px;transition:all .2s ease}.feature-card:hover{transform:translateY(-3px);border-color:#2563eb66;box-shadow:0 12px 24px #0000004d}.feature-icon-box{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.feature-icon-box.bg-blue{background:#2563eb}.feature-icon-box.bg-green{background:#10b981}.feature-icon-box.bg-purple{background:#8b5cf6}.feature-icon-box.bg-emerald{background:#059669}.feature-icon-box.bg-amber{background:#f59e0b}.feature-icon-box.bg-indigo{background:#6366f1}.feature-title{font-size:18px;font-weight:800;color:#fff;margin:0}.feature-text{font-size:14px;line-height:1.5;color:#94a3b8;margin:0}.landing-slider-section{background:#090e17;padding:80px 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.interactive-slider-showcase{max-width:820px;margin:0 auto}.slider-wrapper-box{position:relative;width:100%;height:380px;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.15);box-shadow:0 20px 40px #00000080;-webkit-user-select:none;user-select:none}.slider-layer{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center}.layer-content{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:24px}.photo-stamp{align-self:flex-start;font-size:12px;font-weight:800;padding:6px 12px;border-radius:6px;letter-spacing:.3px}.stamp-before{background:#ef4444d9;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.stamp-after{background:#10b981d9;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-self:flex-end}.demo-scene-art{display:flex;flex-direction:column;align-items:center;text-align:center;margin:auto}.demo-scene-art h4{font-size:20px;font-weight:800;color:#fff;margin:14px 0 6px}.demo-scene-art p{font-size:13px;color:#94a3b8;margin:0}.slider-divider-line{position:absolute;top:0;bottom:0;width:3px;background:#fff;transform:translate(-50%);pointer-events:none;z-index:10;box-shadow:0 0 10px #00000080}.slider-handle-pill{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px;background:#fff;border-radius:50%;box-shadow:0 4px 10px #0006;display:flex;align-items:center;justify-content:center;gap:2px;color:#0f172a;font-size:10px;font-weight:800}.slider-invisible-range{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:20}.slider-hint-text{text-align:center;font-size:13px;color:#94a3b8;margin-top:14px}.landing-pricing-section{padding:80px 0}.pricing-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.landing-plan-card{background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:28px 24px;display:flex;flex-direction:column;position:relative;transition:all .2s ease}.landing-plan-card.popular-plan{border-color:#38bdf8;background:linear-gradient(180deg,#1e293b,#172554);box-shadow:0 10px 30px #38bdf826;transform:scale(1.02)}.popular-ribbon{position:absolute;top:-12px;right:20px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;padding:3px 10px;border-radius:12px;font-size:10px;font-weight:800;letter-spacing:.5px;display:inline-flex;align-items:center;gap:4px}.plan-card-header .plan-title{font-size:20px;font-weight:800;color:#fff;margin:0 0 6px}.plan-card-header .plan-subtitle{font-size:13px;color:#94a3b8;margin:0;min-height:38px}.plan-price-area{margin:20px 0 12px;display:flex;align-items:baseline;gap:6px}.plan-price-area .price-num{font-size:32px;font-weight:900;color:#fff}.plan-price-area .price-time{font-size:12px;color:#94a3b8}.plan-quota-box{display:inline-flex;align-items:center;gap:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);padding:8px 12px;border-radius:8px;font-size:13px;font-weight:700;color:#38bdf8;margin-bottom:20px}.plan-features{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:10px;flex-grow:1}.plan-features li{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#cbd5e1;line-height:1.4}.btn-plan-action{width:100%;padding:12px 18px;border-radius:10px;font-size:14px;font-weight:800;cursor:pointer;border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.btn-plan-action.trial-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 12px #2563eb4d}.btn-plan-action.trial-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.btn-plan-action.paid-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-plan-action.paid-btn:hover{background:#ffffff2e;border-color:#fff6}.btn-plan-action.enterprise-btn{background:linear-gradient(135deg,#059669,#047857);color:#fff;box-shadow:0 4px 12px #0596694d}.btn-plan-action.enterprise-btn:hover{background:linear-gradient(135deg,#047857,#065f46);transform:translateY(-1px)}.landing-vps-section{background:#111827;padding:80px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.vps-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.vps-content h2{font-size:32px;font-weight:900;color:#fff;margin:12px 0 16px}.vps-content p{font-size:15px;line-height:1.6;color:#94a3b8;margin-bottom:24px}.vps-benefits-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.vps-benefits-list li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#e2e8f0}.vps-terminal-mockup{background:#020617;border:1px solid rgba(255,255,255,.12);border-radius:12px;overflow:hidden;box-shadow:0 20px 40px #0009}.terminal-header{background:#0f172a;padding:10px 14px;display:flex;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.06)}.terminal-header .dot{width:9px;height:9px;border-radius:50%}.terminal-header .dot.red{background:#ef4444}.terminal-header .dot.yellow{background:#f59e0b}.terminal-header .dot.green{background:#10b981}.term-title{font-family:monospace;font-size:11px;color:#94a3b8;margin-left:6px}.terminal-body{padding:16px 18px;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5;color:#38bdf8;overflow-x:auto}.landing-faq-section{padding:80px 0}.faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.faq-item{background:#1e293b;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:18px 20px;cursor:pointer;transition:all .15s ease}.faq-item:hover{border-color:#fff3}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;font-weight:700;color:#fff}.faq-arrow{color:#94a3b8;transition:transform .2s ease;flex-shrink:0}.faq-arrow.rotate{transform:rotate(90deg)}.faq-answer{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.06)}.faq-answer p{margin:0;font-size:14px;line-height:1.6;color:#94a3b8}.landing-cta-banner{background:radial-gradient(circle at 50% 50%,#1e3a8a,#0f172a);padding:80px 0;border-top:1px solid rgba(255,255,255,.08);position:relative}.cta-sparkle{margin-bottom:16px}.landing-cta-banner h2{font-size:38px;font-weight:900;color:#fff;margin:0 0 16px}.landing-cta-banner p{font-size:17px;color:#93c5fd;max-width:580px;margin:0 auto 36px}.cta-banner-buttons{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.landing-footer{background:#090e17;padding:40px 0 24px;border-top:1px solid rgba(255,255,255,.06)}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.06)}.footer-tagline{font-size:12px;color:#64748b;margin:6px 0 0}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.footer-link-btn{background:transparent;border:none;color:#94a3b8;font-size:13px;font-weight:600;cursor:pointer;transition:color .15s ease}.footer-link-btn:hover{color:#fff}.footer-bottom-line{text-align:center;padding-top:20px;font-size:12px;color:#64748b}.login-trial-card{margin-bottom:16px}.btn-try-free-login{width:100%;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:1px solid #3b82f6;border-radius:10px;padding:12px 16px;color:#fff;display:flex;align-items:center;gap:12px;cursor:pointer;box-shadow:0 4px 14px #2563eb59;transition:all .15s ease;text-align:left}.btn-try-free-login:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.trial-btn-text{display:flex;flex-direction:column}.trial-btn-text strong{font-size:14px;font-weight:800}.trial-btn-text span{font-size:11px;color:#bfdbfe}.demo-account-master{background:#f8fafc;border-color:#f59e0b}.demo-account-master:hover{background:#fffbeb;border-color:#d97706}.landing-link-pill{display:inline-flex;align-items:center;gap:5px;background:#f1f5f9;border:1px solid #cbd5e1;color:#334155;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;cursor:pointer;transition:all .15s ease}.landing-link-pill:hover{background:#e2e8f0;color:var(--primary);border-color:var(--primary)}@media(max-width:900px){.hero-grid,.vps-grid{grid-template-columns:1fr}.hero-headline{font-size:32px}.hide-on-mobile{display:none!important}}.master-account-card-box{margin-bottom:14px}.master-demo-account-btn{width:100%;display:flex;align-items:center;gap:12px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 14px;cursor:pointer;text-align:left;transition:all .15s ease;box-shadow:0 1px 3px #d977061a}.master-demo-account-btn:hover{background:#fef3c7;border-color:#f59e0b;transform:translateY(-1px)}.open-repair-ticket-btn{display:inline-flex;align-items:center;gap:7px;background:#fffbeb;border:1px solid #fde68a;color:#b45309;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease}.open-repair-ticket-btn:hover{background:#fef3c7;border-color:#f59e0b;color:#92400e;transform:translateY(-1px)}.admin-accounts-btn{position:relative}.admin-btn-badge{background:#ef4444;color:#fff;font-size:10px;font-weight:800;padding:1px 6px;border-radius:12px;margin-left:4px;line-height:1.3;display:inline-block;box-shadow:0 1px 2px #ef444466}.repair-ticket-dialog{max-width:680px;width:95vw}.badge-uk-indicator{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;padding:2px 7px;border-radius:12px;font-size:11px;font-weight:700}.repair-dialog-body{padding:18px 24px;display:flex;flex-direction:column;gap:16px}.repair-info-banner{display:flex;align-items:flex-start;gap:12px;background:#fffbeb;border:1px solid #fef3c7;border-left:4px solid #f59e0b;padding:12px 14px;border-radius:var(--radius-sm)}.repair-info-text strong{display:block;font-size:13px;color:#92400e;margin-bottom:2px}.repair-info-text p{font-size:12px;color:#b45309;line-height:1.4;margin:0}.repair-form-card{background:#f8fafc;border:1px solid var(--border-dark);border-radius:var(--radius-md);padding:16px}.repair-section-subtitle{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text-main);margin:0 0 14px}.repair-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:12px}.repair-field{display:flex;flex-direction:column;gap:5px}.repair-field.full-width{grid-column:1 / -1;margin-bottom:12px}.repair-field label{font-size:12px;font-weight:600;color:var(--text-dim)}.repair-select,.repair-input-wrap input,.repair-field textarea{width:100%;padding:8px 12px;font-size:13px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#fff}.repair-input-wrap{position:relative;display:flex;align-items:center}.repair-input-wrap .input-ic{position:absolute;left:10px;color:var(--text-dim)}.repair-input-wrap input{padding-left:30px}.repair-field textarea{resize:vertical;min-height:70px}.repair-photo-box{margin-bottom:14px}.repair-add-photo-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#fff;border:1px dashed var(--border-dark);border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-main);cursor:pointer;transition:all .15s ease}.repair-add-photo-btn:hover{background:#f1f5f9;border-color:var(--primary);color:var(--primary)}.repair-photo-preview{display:inline-flex;align-items:center;gap:12px;background:#fff;padding:6px;border-radius:var(--radius-sm);border:1px solid var(--border-dark)}.repair-photo-preview img{width:70px;height:70px;object-fit:cover;border-radius:4px}.remove-photo-btn{display:inline-flex;align-items:center;gap:5px;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:6px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer}.repair-submit-box{display:flex;justify-content:flex-end}.submit-repair-btn{padding:9px 18px;font-size:13px;font-weight:600}.repair-history-section{display:flex;flex-direction:column;gap:10px}.section-head-mini{display:flex;align-items:center;gap:8px;color:var(--text-dim)}.section-head-mini h4{margin:0;font-size:13px;font-weight:700;color:var(--text-main)}.repair-empty-state{background:#f8fafc;border:1px dashed var(--border-dark);padding:16px;text-align:center;font-size:13px;color:var(--text-dim);border-radius:var(--radius-sm)}.repair-tickets-list{display:flex;flex-direction:column;gap:10px}.repair-ticket-item{background:#fff;border:1px solid var(--border-dark);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:8px;transition:box-shadow .15s ease}.repair-ticket-item:hover{box-shadow:0 2px 6px #0000000f}.ticket-item-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.ticket-tags{display:flex;align-items:center;gap:6px}.ticket-status-badge,.ticket-prio-badge{font-size:11px;font-weight:700;padding:2px 7px;border-radius:12px}.ticket-cat-badge{font-size:11px;font-weight:600;background:#f1f5f9;color:#475569;padding:2px 7px;border-radius:12px}.ticket-date{font-size:11px;color:var(--text-dim)}.ticket-desc{font-size:13px;line-height:1.4;color:var(--text-main)}.ticket-thumb-img{width:60px;height:60px;object-fit:cover;border-radius:4px;border:1px solid var(--border-light);cursor:pointer}.ticket-footer-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid var(--border-light);padding-top:8px;font-size:12px;color:var(--text-dim)}.ticket-status-actions{display:flex;align-items:center;gap:6px}.status-action-btn{padding:3px 8px;font-size:11px;font-weight:600;border-radius:4px;border:1px solid transparent;cursor:pointer;transition:all .15s ease}.status-action-btn.in-progress-btn{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.status-action-btn.in-progress-btn:hover{background:#dbeafe}.status-action-btn.done-btn{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.status-action-btn.done-btn:hover{background:#dcfce7}.status-action-btn.reject-btn{background:#f8fafc;color:#64748b;border-color:#e2e8f0}.status-action-btn.reject-btn:hover{background:#f1f5f9}.admin-center-dialog{max-width:900px;width:95vw}.admin-nav-tabs-bar{display:flex;align-items:center;gap:6px;padding:8px 24px;background:#f8fafc;border-bottom:1px solid var(--border-light)}.admin-nav-tab-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;font-size:13px;font-weight:600;border:1px solid transparent;background:transparent;color:var(--text-dim);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.admin-nav-tab-btn:hover{background:#f1f5f9;color:var(--text-main)}.admin-nav-tab-btn.active{background:#fff;color:var(--primary);border-color:var(--border-dark);box-shadow:0 1px 3px #0000000d}.admin-tab-badge{font-size:10px;font-weight:800;padding:2px 6px;border-radius:12px}.admin-tab-badge.badge-amber{background:#fef3c7;color:#b45309}.admin-tab-badge.badge-green{background:#f0fdf4;color:#15803d}.admin-tab-content{display:flex;flex-direction:column;gap:16px}.admin-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.admin-kpi-card{background:#f8fafc;border:1px solid var(--border-dark);border-radius:var(--radius-sm);padding:10px 14px;display:flex;flex-direction:column}.admin-kpi-card .kpi-num{font-size:20px;font-weight:800;line-height:1.2}.admin-kpi-card .kpi-lbl{font-size:11px;color:var(--text-dim)}.admin-kpi-card.text-amber .kpi-num{color:#d97706}.admin-kpi-card.text-blue .kpi-num{color:#2563eb}.admin-kpi-card.text-green .kpi-num{color:#16a34a}.admin-filters-bar{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--border-light);padding:10px 14px;border-radius:var(--radius-sm);flex-wrap:wrap}.admin-filters-bar .filter-item{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--text-dim)}.admin-select{padding:5px 10px;font-size:12px;border:1px solid var(--border-dark);border-radius:var(--radius-sm);background:#f8fafc}.admin-select.small-select{padding:3px 8px;font-size:11px}.admin-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 20px;text-align:center;background:#f8fafc;border:1px dashed var(--border-dark);border-radius:var(--radius-md);color:var(--text-dim);gap:10px;font-size:13px}.admin-tickets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.admin-ticket-card{background:#fff;border:1px solid var(--border-dark);border-radius:var(--radius-md);padding:14px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 3px #00000008}.ticket-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ticket-room-info{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-main);flex-wrap:wrap}.ticket-room-info strong{font-weight:700}.ticket-badges{display:flex;align-items:center;gap:5px}.ticket-status-pill,.ticket-prio-pill{font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px}.ticket-cat-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-bottom:6px}.cat-chip{background:#eff6ff;color:#1e40af;padding:2px 6px;border-radius:4px;font-weight:600}.ticket-date-time{color:var(--text-dim)}.ticket-description-text{font-size:13px;line-height:1.45;color:var(--text-main);margin:0;background:#f8fafc;padding:8px 10px;border-radius:4px;border-left:3px solid #3b82f6}.ticket-photo-box{margin-top:4px}.ticket-admin-thumb{width:70px;height:70px;object-fit:cover;border-radius:4px;border:1px solid var(--border-light);cursor:pointer;transition:transform .15s ease}.ticket-admin-thumb:hover{transform:scale(1.04)}.ticket-applicant-block{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-main);flex-wrap:wrap;margin-top:4px}.ticket-applicant-block .lbl{color:var(--text-dim)}.applicant-phone-link{display:inline-flex;align-items:center;gap:4px;color:var(--primary);font-weight:600;text-decoration:none}.applicant-phone-link:hover{text-decoration:underline}.applicant-role{color:var(--text-dim);font-size:11px}.ticket-assignment-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--border-light);padding-top:10px;margin-top:6px;flex-wrap:wrap}.assignee-select-box{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim)}.ticket-action-buttons{display:flex;align-items:center;gap:6px}.action-tag-btn{padding:4px 9px;font-size:11px;font-weight:700;border-radius:4px;border:1px solid transparent;cursor:pointer;transition:all .15s ease}.action-tag-btn.in-prog{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.action-tag-btn.in-prog:hover{background:#dbeafe}.action-tag-btn.done{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}.action-tag-btn.done:hover{background:#dcfce7}.action-tag-btn.reject{background:#f8fafc;color:#64748b;border-color:#e2e8f0}.action-tag-btn.reject:hover{background:#f1f5f9}.admin-leads-list{display:flex;flex-direction:column;gap:12px}.admin-lead-card{background:#fff;border:1px solid var(--border-dark);border-radius:var(--radius-md);padding:14px;display:flex;flex-direction:column;gap:10px}.lead-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.lead-client-info{display:flex;align-items:center;gap:8px;font-size:14px}.lead-company-badge{background:#f1f5f9;color:#334155;font-size:12px;font-weight:600;padding:2px 7px;border-radius:4px}.lead-card-meta{display:flex;align-items:center;gap:8px}.lead-status-pill{font-size:11px;font-weight:700;padding:2px 8px;border-radius:12px}.lead-date-time{font-size:11px;color:var(--text-dim)}.lead-contacts-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.contact-pill-item,.scale-pill-item{display:inline-flex;align-items:center;gap:6px;background:#f8fafc;border:1px solid var(--border-light);padding:4px 9px;border-radius:var(--radius-sm);font-size:12px;font-weight:500}.contact-link{color:var(--text-main);text-decoration:none;font-weight:600}.contact-link:hover{color:var(--primary);text-decoration:underline}.lead-message-box{background:#f8fafc;border-left:3px solid var(--accent);padding:8px 12px;border-radius:4px;font-size:13px;color:#334155;font-style:italic}.lead-message-box p{margin:0}.lead-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--border-light);padding-top:10px}.lead-status-btns{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.landing-contact-section{padding:80px 0;background:linear-gradient(180deg,#090d16,#0d1322);color:#fff;position:relative;border-top:1px solid rgba(255,255,255,.06)}.contact-box-wrapper{max-width:760px;margin:32px auto 0}.contact-form-card{background:#121828d9;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:32px;box-shadow:0 20px 40px #0006;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.contact-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-bottom:20px}.contact-field-item{display:flex;flex-direction:column;gap:6px}.contact-field-item.full-span{grid-column:1 / -1}.contact-field-item label{font-size:13px;font-weight:600;color:#94a3b8}.contact-field-item input,.contact-field-item textarea{width:100%;padding:10px 14px;font-size:14px;background:#0f172abf;border:1px solid rgba(255,255,255,.14);border-radius:8px;color:#fff;transition:border-color .15s ease,box-shadow .15s ease}.contact-field-item input:focus,.contact-field-item textarea:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf833}.contact-input-icon-wrap{position:relative;display:flex;align-items:center}.contact-input-icon-wrap .input-ic{position:absolute;left:12px;color:#64748b}.contact-input-icon-wrap input{padding-left:36px}.scale-radio-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.scale-radio-pill{display:flex;align-items:center;gap:8px;background:#0f172ab3;border:1px solid rgba(255,255,255,.12);padding:8px 12px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:500;color:#cbd5e1;transition:all .15s ease}.scale-radio-pill:hover{background:#1e293bcc;border-color:#ffffff40}.scale-radio-pill.active{background:#38bdf826;border-color:#38bdf8;color:#38bdf8;font-weight:700}.scale-radio-pill input{display:none}.contact-submit-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.contact-submit-btn{padding:12px 28px;font-size:15px;font-weight:700}.contact-privacy-note{font-size:12px;color:#64748b;max-width:380px;line-height:1.35}.contact-success-state{background:#121828e6;border:1px solid rgba(52,211,153,.3);border-radius:16px;padding:40px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.success-icon-badge{width:64px;height:64px;border-radius:50%;background:#10b98126;display:flex;align-items:center;justify-content:center}.contact-success-state h3{font-size:22px;font-weight:800;color:#fff;margin:0}.contact-success-state p{font-size:14px;color:#94a3b8;max-width:480px;line-height:1.5;margin:0}.theme-switcher-pill{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;min-height:36px;border-radius:18px;border:1px solid var(--border-dark);background:var(--bg-card);color:var(--text-main);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);padding:0}.theme-switcher-pill:hover{background:var(--bg-hover);border-color:var(--primary);color:var(--primary);transform:rotate(18deg) scale(1.05)}.theme-switcher-pill:active{transform:scale(.95)}[data-theme=dark] .app-header,.dark .app-header{background:var(--bg-card);border-bottom-color:var(--border-light)}[data-theme=dark] .brand-name,.dark .brand-name{color:#fff}[data-theme=dark] .header-btn,.dark .header-btn{background:var(--bg-subtle);border-color:var(--border-light);color:var(--text-main)}[data-theme=dark] .header-btn:hover,.dark .header-btn:hover{background:var(--bg-hover);border-color:var(--border-dark)}[data-theme=dark] .header-company-select,.dark .header-company-select{background:var(--bg-subtle);border-color:var(--border-dark);color:var(--text-main)}[data-theme=dark] .vps-badge,.dark .vps-badge,[data-theme=dark] .plan-quota-pill,.dark .plan-quota-pill,[data-theme=dark] .user-session-pill,.dark .user-session-pill{background:#111a2e;border-color:#1e293b;color:#cbd5e1}[data-theme=dark] .user-pill-name,.dark .user-pill-name{color:#f8fafc}[data-theme=dark] .lang-switcher-pill,.dark .lang-switcher-pill{background:var(--bg-subtle);border-color:var(--border-dark);color:var(--text-main)}[data-theme=dark] .stats-dashboard,.dark .stats-dashboard{background:var(--bg-card);border-bottom-color:var(--border-light)}[data-theme=dark] .stat-card,.dark .stat-card{background:#0d1527;border-color:var(--border-light)}[data-theme=dark] .stat-card:hover,.dark .stat-card:hover{background:#131f38}[data-theme=dark] .stat-value,.dark .stat-value{color:#f8fafc}[data-theme=dark] .stat-value.text-slate,.dark .stat-value.text-slate{color:#94a3b8}[data-theme=dark] .stat-card.active-filter,.dark .stat-card.active-filter{background:#ef444429;border-color:var(--danger)}[data-theme=dark] .filters-toolbar,.dark .filters-toolbar{background:var(--bg-card);border-bottom-color:var(--border-light)}[data-theme=dark] .view-mode-group,.dark .view-mode-group{background:#0d1527;border-color:var(--border-light)}[data-theme=dark] .view-toggle-btn,.dark .view-toggle-btn{color:var(--text-muted)}[data-theme=dark] .view-toggle-btn.active,.dark .view-toggle-btn.active{background:#1e293b;color:#60a5fa}[data-theme=dark] .search-input-wrap input,.dark .search-input-wrap input,[data-theme=dark] .filter-select-wrap select,.dark .filter-select-wrap select{background:#0d1527;border-color:var(--border-dark);color:#f8fafc}[data-theme=dark] .search-input-wrap input::placeholder,.dark .search-input-wrap input::placeholder{color:#64748b}[data-theme=dark] .filter-chip-btn,.dark .filter-chip-btn{background:#0d1527;border-color:var(--border-dark);color:#e2e8f0}[data-theme=dark] .filter-chip-btn.active,.dark .filter-chip-btn.active{background:#ef444438;border-color:var(--danger);color:#fca5a5}[data-theme=dark] .building-section,.dark .building-section{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .building-title-bar,.dark .building-title-bar{background:#0f182c;border-bottom-color:var(--border-light)}[data-theme=dark] .building-name,.dark .building-name{color:#fff}[data-theme=dark] .floor-row,.dark .floor-row{border-bottom-color:var(--border-light)}[data-theme=dark] .floor-label-cell,.dark .floor-label-cell{background:#0d1527;border-right-color:var(--border-light)}[data-theme=dark] .floor-number,.dark .floor-number{color:#f1f5f9}[data-theme=dark] .floor-text,.dark .floor-text{color:#64748b}[data-theme=dark] .room-matrix-card,.dark .room-matrix-card{background:#152038;border-color:#273652;color:var(--text-main)}[data-theme=dark] .room-matrix-card:hover,.dark .room-matrix-card:hover{background:#1c2b4d;border-color:#60a5fa}[data-theme=dark] .room-number-badge,.dark .room-number-badge{color:#fff}[data-theme=dark] .room-matrix-card.status-completed,.dark .room-matrix-card.status-completed{background:#22c55e1f;border-color:#22c55e73}[data-theme=dark] .room-matrix-card.status-has-issues,.dark .room-matrix-card.status-has-issues{background:#ef444424;border-color:#ef44448c;box-shadow:0 0 0 1px #ef44448c}[data-theme=dark] .room-matrix-card.status-transferred-uk,.dark .room-matrix-card.status-transferred-uk{background:#10b98126;border-color:#10b981}[data-theme=dark] .matrix-progress-track,.dark .matrix-progress-track{background:#25334e}[data-theme=dark] .add-room-quick-btn,.dark .add-room-quick-btn{background:#10182b;border-color:#273652;color:#94a3b8}[data-theme=dark] .add-room-quick-btn:hover,.dark .add-room-quick-btn:hover{background:#16223b;border-color:#60a5fa;color:#60a5fa}[data-theme=dark] .matrix-empty-state,.dark .matrix-empty-state{background:var(--bg-card);border-color:var(--border-dark)}[data-theme=dark] .responsive-table-container,.dark .responsive-table-container{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .rooms-data-table thead,.dark .rooms-data-table thead{background:#0f182c}[data-theme=dark] .rooms-data-table th,.dark .rooms-data-table th{color:#cbd5e1;border-bottom-color:var(--border-dark)}[data-theme=dark] .sortable-th:hover,.dark .sortable-th:hover{background:#17233c}[data-theme=dark] .rooms-data-table td,.dark .rooms-data-table td{border-bottom-color:var(--border-light)}[data-theme=dark] .table-room-row:hover,.dark .table-room-row:hover{background-color:#17233c}[data-theme=dark] .table-room-row.row-with-issues,.dark .table-room-row.row-with-issues{background-color:#ef444414}[data-theme=dark] .table-room-row.row-with-issues:hover,.dark .table-room-row.row-with-issues:hover{background-color:#ef444429}[data-theme=dark] .table-room-pill,.dark .table-room-pill{color:#fff}[data-theme=dark] .table-progress-bar,.dark .table-progress-bar{background:#25334e}[data-theme=dark] dialog::backdrop,.dark dialog::backdrop{background:#030712c7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=dark] .modern-dialog,.dark .modern-dialog{background:#131d33;border:1px solid #273652;color:var(--text-main);box-shadow:0 25px 50px -12px #000000b3}[data-theme=dark] .dialog-header,.dark .dialog-header{background:#0f182c;border-bottom-color:var(--border-light)}[data-theme=dark] .dialog-footer,.dark .dialog-footer{background:#0f182c;border-top-color:var(--border-light)}[data-theme=dark] .dialog-main-title,.dark .dialog-main-title{color:#fff}[data-theme=dark] .close-icon-btn,.dark .close-icon-btn{color:#94a3b8}[data-theme=dark] .close-icon-btn:hover,.dark .close-icon-btn:hover{background:#1e293b;color:#fff}[data-theme=dark] .room-passport-card,.dark .room-passport-card{background:#0f182c;border-color:var(--border-light)}[data-theme=dark] .passport-field input,.dark .passport-field input{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .stat-pill,.dark .stat-pill,[data-theme=dark] .uk-handover-toggle-btn,.dark .uk-handover-toggle-btn{background:#152038;border-color:#273652;color:#cbd5e1}[data-theme=dark] .tasks-sidebar,.dark .tasks-sidebar{background:#0d1527;border-color:var(--border-light)}[data-theme=dark] .sidebar-section-title,.dark .sidebar-section-title{background:#0f182c;border-bottom-color:var(--border-light);color:#94a3b8}[data-theme=dark] .task-nav-title,.dark .task-nav-title{color:#f8fafc}[data-theme=dark] .task-resp-tag,.dark .task-resp-tag{color:#cbd5e1;background:#1a2742;border-color:#2e4165}[data-theme=dark] .add-custom-task-form,.dark .add-custom-task-form{background:#0f182c;border-top-color:var(--border-light)}[data-theme=dark] .add-custom-task-form input,.dark .add-custom-task-form input{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .quick-resp-chip,.dark .quick-resp-chip{background:#152038;border-color:#273652;color:#cbd5e1}[data-theme=dark] .quick-resp-chip:hover,.dark .quick-resp-chip:hover{background:#1e2f52;border-color:#3b82f6;color:#60a5fa}[data-theme=dark] .task-detail-pane,.dark .task-detail-pane{background:#111a2e;border-color:var(--border-light)}[data-theme=dark] .active-task-title,.dark .active-task-title{color:#fff}[data-theme=dark] .status-btn,.dark .status-btn{background:#152038;border-color:#273652;color:#e2e8f0}[data-theme=dark] .status-btn:hover,.dark .status-btn:hover{background:#1c2b4d;border-color:#3b82f6}[data-theme=dark] .status-btn.selected,.dark .status-btn.selected{background:#1e3a8a;border-color:#3b82f6;color:#fff}[data-theme=dark] .task-provenance-bar,.dark .task-provenance-bar{background:#0f182c;border-color:#273652}[data-theme=dark] .prov-lbl,.dark .prov-lbl{color:#94a3b8}[data-theme=dark] .prov-val,.dark .prov-val{color:#f1f5f9}[data-theme=dark] .prov-val.accepted,.dark .prov-val.accepted{color:#34d399}[data-theme=dark] .prov-val.pending,.dark .prov-val.pending{color:#fbbf24}[data-theme=dark] .history-provenance-chips,.dark .history-provenance-chips{border-top-color:#273652}[data-theme=dark] .hist-chip-accepted,.dark .hist-chip-accepted{background:#10b98126;border-color:#10b9814d;color:#34d399}[data-theme=dark] .hist-chip-setby,.dark .hist-chip-setby{background:#3b82f626;border-color:#3b82f64d;color:#93c5fd}[data-theme=dark] .mobile-passport-summary-bar,.dark .mobile-passport-summary-bar{background:#0f182c;border-color:#273652;color:#f1f5f9}[data-theme=dark] .mobile-passport-toggle-btn,.dark .mobile-passport-toggle-btn{background:#152038;border-color:#273652;color:#60a5fa}[data-theme=dark] .mobile-tab-btn,.dark .mobile-tab-btn{background:#0f182c;border-color:#273652;color:#94a3b8}[data-theme=dark] .mobile-tab-btn.active,.dark .mobile-tab-btn.active{background:#2563eb;border-color:#3b82f6;color:#fff}[data-theme=dark] .mobile-task-quick-nav,.dark .mobile-task-quick-nav{background:#0f182c;border-color:#273652}[data-theme=dark] .mobile-back-to-list-btn,.dark .mobile-back-to-list-btn,[data-theme=dark] .mobile-task-select-dropdown,.dark .mobile-task-select-dropdown,[data-theme=dark] .stepper-nav-btn,.dark .stepper-nav-btn{background:#152038;border-color:#273652;color:#f1f5f9}[data-theme=dark] .task-field input,.dark .task-field input,[data-theme=dark] .task-field textarea,.dark .task-field textarea{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .before-after-wrapper,.dark .before-after-wrapper{background:#0d1527;border-color:var(--border-light)}[data-theme=dark] .photo-section-title,.dark .photo-section-title{color:#f8fafc}[data-theme=dark] .photo-box,.dark .photo-box{background:#131d33;border-color:#273652}[data-theme=dark] .photo-box-header,.dark .photo-box-header{background:#0f182c;border-bottom-color:#273652}[data-theme=dark] .photo-thumbnails-strip,.dark .photo-thumbnails-strip{background:#0f182c;border-top-color:#273652}[data-theme=dark] .photo-thumb-add-tile,.dark .photo-thumb-add-tile{border-color:#273652;color:#64748b}[data-theme=dark] .photo-thumb-add-tile:hover,.dark .photo-thumb-add-tile:hover{background:#1e293b;border-color:#3b82f6;color:#fff}[data-theme=dark] .slider-pickers-row,.dark .slider-pickers-row{background:#0f182c;border-color:#273652}[data-theme=dark] .picker-thumb-chip,.dark .picker-thumb-chip{background:#152038;border-color:#273652;color:#e2e8f0}[data-theme=dark] .picker-thumb-chip.active,.dark .picker-thumb-chip.active{background:#3b82f633;border-color:#3b82f6;color:#93c5fd}[data-theme=dark] .room-history-panel,.dark .room-history-panel{background:#0d1527;border-color:var(--border-light)}[data-theme=dark] .room-history-row,.dark .room-history-row{border-bottom-color:var(--border-light)}[data-theme=dark] .room-history-main,.dark .room-history-main{color:#e2e8f0}[data-theme=dark] .room-history-title,.dark .room-history-title{color:#fff}[data-theme=dark] .tasks-nav-column,.dark .tasks-nav-column{background:#0d1527;border-right-color:var(--border-light)}[data-theme=dark] .task-nav-item,.dark .task-nav-item{background:#152038;border-color:#1e2c4a;color:#cbd5e1}[data-theme=dark] .task-nav-item:hover,.dark .task-nav-item:hover{background:#1c2b4d;border-color:#2e4472}[data-theme=dark] .task-nav-item.active,.dark .task-nav-item.active{background:#1e3a8a;border-color:#3b82f6;color:#fff}[data-theme=dark] .task-nav-item.completed,.dark .task-nav-item.completed{border-left-color:#22c55e}[data-theme=dark] .task-nav-item.has-issue,.dark .task-nav-item.has-issue{border-left-color:#ef4444}[data-theme=dark] .active-task-card,.dark .active-task-card{background:#152038;border-color:var(--border-light)}[data-theme=dark] .room-history-card,.dark .room-history-card{background:#0d1527;border-color:var(--border-light)}[data-theme=dark] .room-meta-pill,.dark .room-meta-pill{background:#10182b;border-color:#25334e;color:#cbd5e1}[data-theme=dark] .task-notes-textarea,.dark .task-notes-textarea,[data-theme=dark] .inspector-input-box input,.dark .inspector-input-box input{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .template-stage-group,.dark .template-stage-group{background:#152038;border-color:var(--border-light)}[data-theme=dark] .template-item-row,.dark .template-item-row{background:#0f182c;border-color:var(--border-light)}[data-theme=dark] .template-stage-input,.dark .template-stage-input,[data-theme=dark] .template-item-input,.dark .template-item-input{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .admin-tabs-nav,.dark .admin-tabs-nav{background:#0f182c;border-bottom-color:var(--border-light)}[data-theme=dark] .admin-tab-btn,.dark .admin-tab-btn{color:#94a3b8}[data-theme=dark] .admin-tab-btn.active,.dark .admin-tab-btn.active{color:#60a5fa;border-bottom-color:#60a5fa}[data-theme=dark] .admin-kpi-card,.dark .admin-kpi-card,[data-theme=dark] .admin-ticket-card,.dark .admin-ticket-card,[data-theme=dark] .admin-lead-card,.dark .admin-lead-card,[data-theme=dark] .admin-user-card,.dark .admin-user-card,[data-theme=dark] .admin-form-box,.dark .admin-form-box{background:#152038;border-color:var(--border-light)}[data-theme=dark] .admin-input,.dark .admin-input,[data-theme=dark] .admin-select,.dark .admin-select{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .admin-empty-state,.dark .admin-empty-state{background:#0d1527;border-color:#273652}[data-theme=dark] .subscription-plan-dialog-card,.dark .subscription-plan-dialog-card{background:#152038;border-color:#273652}[data-theme=dark] .subscription-plan-dialog-card.current,.dark .subscription-plan-dialog-card.current{border-color:#3b82f6;background:#2563eb26}[data-theme=dark] .company-card-item,.dark .company-card-item{background:#152038;border-color:var(--border-light)}[data-theme=dark] .comp-input,.dark .comp-input,[data-theme=dark] .comp-select,.dark .comp-select{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .login-page-backdrop,.dark .login-page-backdrop{background:radial-gradient(circle at 50% 20%,#1e293b,#080d1a)}[data-theme=dark] .login-card,.dark .login-card{background:#131d33;border:1px solid #273652;box-shadow:0 25px 50px -12px #000000bf}[data-theme=dark] .login-title,.dark .login-title{color:#fff}[data-theme=dark] .login-field-group input,.dark .login-field-group input{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .demo-account-btn,.dark .demo-account-btn{background:#162038;border-color:#25334e;color:#fff}[data-theme=dark] .demo-account-btn:hover,.dark .demo-account-btn:hover{background:#1f2d4e;border-color:#3b82f6}[data-theme=dark] .master-account-card,.dark .master-account-card{background:#f59e0b1f;border-color:#f59e0b59}[data-theme=dark] .login-trial-card button,.dark .login-trial-card button{background:linear-gradient(135deg,#1d4ed8,#2563eb)}[data-theme=dark] .landing-page-root,.dark .landing-page-root{background-color:#0b1120;color:var(--text-main)}[data-theme=dark] .landing-header,.dark .landing-header{background:#131d33e0;border-bottom-color:var(--border-light)}[data-theme=dark] .landing-nav a,.dark .landing-nav a{color:#cbd5e1}[data-theme=dark] .landing-nav a:hover,.dark .landing-nav a:hover{color:#60a5fa}[data-theme=dark] .feature-card,.dark .feature-card{background:#131d33;border-color:var(--border-light)}[data-theme=dark] .feature-title,.dark .feature-title{color:#fff}[data-theme=dark] .landing-plan-card,.dark .landing-plan-card,[data-theme=dark] .faq-item,.dark .faq-item,[data-theme=dark] .landing-contact-card,.dark .landing-contact-card{background:#131d33;border-color:var(--border-light)}[data-theme=dark] .contact-form-card input,.dark .contact-form-card input,[data-theme=dark] .contact-form-card textarea,.dark .contact-form-card textarea,[data-theme=dark] .contact-form-card select,.dark .contact-form-card select{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .table-action-btn,.dark .table-action-btn{background:#152038;border-color:#273652;color:#f8fafc}[data-theme=dark] .table-action-btn:hover,.dark .table-action-btn:hover{background:#1c2b4d;border-color:#3b82f6;color:#60a5fa}[data-theme=dark] .admin-nav-tabs-bar,.dark .admin-nav-tabs-bar{background:#0f182c;border-bottom-color:var(--border-light)}[data-theme=dark] .admin-nav-tab-btn,.dark .admin-nav-tab-btn{color:#94a3b8}[data-theme=dark] .admin-nav-tab-btn:hover,.dark .admin-nav-tab-btn:hover{background:#17233c;color:#fff}[data-theme=dark] .admin-nav-tab-btn.active,.dark .admin-nav-tab-btn.active{background:#1e293b;color:#60a5fa;border-color:#3b82f6;box-shadow:0 1px 3px #0006}[data-theme=dark] .settings-section,.dark .settings-section{background:#0f182c;border-color:var(--border-light)}[data-theme=dark] .section-title-with-icon h3,.dark .section-title-with-icon h3{color:#fff}[data-theme=dark] .settings-hint,.dark .settings-hint{color:#94a3b8}[data-theme=dark] .user-account-card,.dark .user-account-card,[data-theme=dark] .user-account-row,.dark .user-account-row{background:#152038;border-color:var(--border-light)}[data-theme=dark] .user-account-main,.dark .user-account-main,[data-theme=dark] .user-account-main strong,.dark .user-account-main strong{color:#fff}[data-theme=dark] .user-login-tag,.dark .user-login-tag{background:#0d1527;color:#94a3b8;border:1px solid #273652}[data-theme=dark] .user-account-actions .secondary-btn,.dark .user-account-actions .secondary-btn{background:#0d1527;border-color:#273652;color:#e2e8f0}[data-theme=dark] .user-role-select-badge.role-badge-admin,.dark .user-role-select-badge.role-badge-admin{background-color:#3b82f62e;color:#93c5fd;border-color:#3b82f666;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2393c5fd' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}[data-theme=dark] .user-role-select-badge.role-badge-inspector,.dark .user-role-select-badge.role-badge-inspector{background-color:#eab3082e;color:#fde047;border-color:#eab30866;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23fde047' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}[data-theme=dark] .user-role-select-badge.role-badge-foreman,.dark .user-role-select-badge.role-badge-foreman{background-color:#94a3b82e;color:#cbd5e1;border-color:#94a3b866;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23cbd5e1' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}[data-theme=dark] .user-role-select-badge.role-badge-uk,.dark .user-role-select-badge.role-badge-uk{background-color:#10b9812e;color:#6ee7b7;border-color:#10b98166;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236ee7b7' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}[data-theme=dark] .user-role-select-badge option,.dark .user-role-select-badge option{background-color:#152038;color:#f1f5f9}[data-theme=dark] .add-user-panel-form,.dark .add-user-panel-form{background:#0f182c;border-color:#273652}[data-theme=dark] .add-user-panel-form input,.dark .add-user-panel-form input,[data-theme=dark] .add-user-panel-form select,.dark .add-user-panel-form select,[data-theme=dark] .add-user-grid-form input,.dark .add-user-grid-form input,[data-theme=dark] .add-user-grid-form select,.dark .add-user-grid-form select,[data-theme=dark] .user-inline-edit-form input,.dark .user-inline-edit-form input,[data-theme=dark] .user-inline-edit-form select,.dark .user-inline-edit-form select{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .user-company-tag,.dark .user-company-tag{color:#93c5fd;background:#3b82f629;border-color:#3b82f659}[data-theme=dark] .user-company-tag.master-company-tag,.dark .user-company-tag.master-company-tag{color:#fde047;background:#eab30829;border-color:#eab30859}[data-theme=dark] .users-company-filter-bar,.dark .users-company-filter-bar{background:#0d1527;border-color:#273652;color:#cbd5e1}[data-theme=dark] .users-company-select,.dark .users-company-select{color:#fff;background:#0d1527}[data-theme=dark] .add-user-fixed-company-tag,.dark .add-user-fixed-company-tag,[data-theme=dark] .user-edit-company-readonly,.dark .user-edit-company-readonly{background:#0d1527;border-color:#273652;color:#cbd5e1}[data-theme=dark] .secondary-btn,.dark .secondary-btn{background:#17233c;border-color:#273652;color:#e2e8f0}[data-theme=dark] .secondary-btn:hover,.dark .secondary-btn:hover{background:#1f2e4d;color:#fff;border-color:#3b82f6}[data-theme=dark] .login-form .form-group input,.dark .login-form .form-group input{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .login-form .form-group label,.dark .login-form .form-group label{color:#cbd5e1}[data-theme=dark] .master-demo-account-btn,.dark .master-demo-account-btn{background:#f59e0b1f;border-color:#f59e0b66;color:#fff}[data-theme=dark] .master-demo-account-btn strong,.dark .master-demo-account-btn strong{color:#fde68a}[data-theme=dark] .master-demo-account-btn span,.dark .master-demo-account-btn span{color:#cbd5e1}[data-theme=dark] .demo-account-btn,.dark .demo-account-btn{background:#152038;border-color:#25334e;color:#fff}[data-theme=dark] .demo-account-btn:hover,.dark .demo-account-btn:hover{background:#1c2b4d;border-color:#3b82f6}[data-theme=dark] .demo-account-info strong,.dark .demo-account-info strong{color:#fff}[data-theme=dark] .demo-account-info span,.dark .demo-account-info span{color:#94a3b8}[data-theme=dark] .login-top-bar .landing-link-pill,.dark .login-top-bar .landing-link-pill{background:#152038;border-color:#273652;color:#cbd5e1}[data-theme=dark] .change-password-dialog,.dark .change-password-dialog{background:#131d33;border:1px solid #273652}[data-theme=dark] .change-password-body .form-group input,.dark .change-password-body .form-group input{background:#0d1527;border-color:#273652;color:#fff}[data-theme=dark] .change-password-body .form-group label,.dark .change-password-body .form-group label{color:#cbd5e1}[data-theme=dark] .change-password-body .password-toggle-btn,.dark .change-password-body .password-toggle-btn{color:#94a3b8}[data-theme=dark] .change-password-body .password-toggle-btn:hover,.dark .change-password-body .password-toggle-btn:hover{color:#fff;background:#1e293b}[data-theme=dark] .cp-master-note,.dark .cp-master-note{background:#f59e0b1f;border-color:#f59e0b59;color:#fde68a}.task-deadline-tag{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;padding:1px 6px;border-radius:10px;background:var(--bg-secondary, #f1f5f9);color:var(--text-muted, #64748b);border:1px solid var(--border-color, #e2e8f0)}.task-deadline-tag.today{background:#f59e0b26;color:#b45309;border-color:#f59e0b59}.task-deadline-tag.overdue{background:#ef444426;color:#b91c1c;border-color:#ef444459}.task-field.due-date-field{background:var(--card-bg-subtle, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;padding:12px 14px;margin-bottom:12px}.due-date-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.due-date-header-row label{display:flex;align-items:center;gap:6px;font-weight:600;font-size:13px;color:var(--text-main, #1e293b);margin:0}.due-date-status-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:2px 8px;border-radius:12px;border:1px solid transparent}.due-date-status-pill.upcoming{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.due-date-status-pill.today{background:#fefce8;color:#a16207;border-color:#fde047}.due-date-status-pill.overdue{background:#fef2f2;color:#b91c1c;border-color:#fca5a5;animation:pulse-border 2s infinite}@keyframes pulse-border{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 4px #ef444400}to{box-shadow:0 0 #ef444400}}.due-date-control-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.due-date-input{padding:7px 12px;font-size:13px;border-radius:8px;border:1px solid var(--border-color, #cbd5e1);background:var(--input-bg, #ffffff);color:var(--text-main, #0f172a);font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.due-date-input:focus{border-color:var(--primary, #2563eb);box-shadow:0 0 0 3px #2563eb26}.quick-due-presets{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.quick-due-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;font-size:11px;font-weight:600;border-radius:6px;border:1px solid var(--border-color, #cbd5e1);background:var(--card-bg, #ffffff);color:var(--text-main, #334155);cursor:pointer;transition:all .15s ease}.quick-due-btn:hover{background:var(--bg-hover, #f1f5f9);border-color:var(--primary, #2563eb);color:var(--primary, #2563eb)}.quick-due-btn.clear{color:#dc2626;border-color:#dc26264d;background:#dc26260d}.quick-due-btn.clear:hover{background:#dc2626;color:#fff}.construction-calendar-container{display:flex;flex-direction:column;gap:16px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;padding:20px;box-shadow:0 4px 16px #00000008}.calendar-top-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--border-color, #e2e8f0)}.calendar-brand-title{display:flex;align-items:center;gap:12px}.calendar-header-icon{color:var(--primary, #2563eb)}.calendar-main-title{font-size:18px;font-weight:700;color:var(--text-main, #0f172a);margin:0 0 2px}.calendar-period-label{font-size:13px;font-weight:600;color:var(--text-muted, #64748b)}.calendar-nav-controls{display:flex;align-items:center;gap:8px}.calendar-nav-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid var(--border-color, #cbd5e1);background:var(--card-bg, #ffffff);color:var(--text-main, #334155);cursor:pointer;transition:all .15s}.calendar-nav-btn:hover{background:var(--bg-hover, #f1f5f9);border-color:var(--primary, #2563eb);color:var(--primary, #2563eb)}.calendar-today-btn{padding:0 14px;height:34px;font-size:13px;font-weight:600;border-radius:8px;border:1px solid var(--border-color, #cbd5e1);background:var(--card-bg, #ffffff);color:var(--text-main, #334155);cursor:pointer;transition:all .15s}.calendar-today-btn:hover{background:var(--bg-hover, #f1f5f9);border-color:var(--primary, #2563eb);color:var(--primary, #2563eb)}.calendar-view-toggle{display:flex;align-items:center;background:var(--bg-secondary, #f1f5f9);border-radius:8px;padding:3px;margin-left:8px;border:1px solid var(--border-color, #e2e8f0)}.view-pill-btn{padding:5px 12px;font-size:12px;font-weight:600;border-radius:6px;border:none;background:transparent;color:var(--text-muted, #64748b);cursor:pointer;transition:all .15s}.view-pill-btn.active{background:var(--card-bg, #ffffff);color:var(--primary, #2563eb);box-shadow:0 1px 3px #00000014}.calendar-kpi-ribbon{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.cal-kpi-card{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg-subtle, #f8fafc);transition:transform .15s ease}.cal-kpi-card:hover{transform:translateY(-1px)}.cal-kpi-card.alert{border-color:#ef444466;background:#ef44440d}.cal-kpi-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px}.cal-kpi-icon.total{background:#eff6ff;color:#2563eb}.cal-kpi-icon.overdue{background:#fee2e2;color:#dc2626}.cal-kpi-icon.week{background:#fef3c7;color:#d97706}.cal-kpi-icon.completed{background:#dcfce7;color:#16a34a}.cal-kpi-info{display:flex;flex-direction:column}.cal-kpi-num{font-size:20px;font-weight:800;color:var(--text-main, #0f172a);line-height:1.1}.cal-kpi-label{font-size:11px;font-weight:500;color:var(--text-muted, #64748b);margin-top:2px}.calendar-filters-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 14px;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:10px}.cal-filter-item{display:flex;align-items:center;gap:6px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #cbd5e1);border-radius:8px;padding:0 10px;height:34px}.cal-filter-item .filter-icon{color:var(--text-muted, #64748b);flex-shrink:0}.cal-filter-item select{border:none;background:transparent;font-size:12px;color:var(--text-main, #1e293b);outline:none;cursor:pointer}.cal-overdue-toggle{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;font-size:12px;font-weight:600;border-radius:8px;border:1px solid var(--border-color, #cbd5e1);background:var(--card-bg, #ffffff);color:var(--text-main, #334155);cursor:pointer;transition:all .15s}.cal-overdue-toggle.active{background:#fee2e2;border-color:#f87171;color:#b91c1c}.cal-reset-filters-btn{height:34px;padding:0 12px;font-size:12px;font-weight:600;color:var(--primary, #2563eb);background:transparent;border:none;cursor:pointer;text-decoration:underline}.calendar-month-grid{display:flex;flex-direction:column;border:1px solid var(--border-color, #e2e8f0);border-radius:10px;overflow:hidden}.calendar-weekdays-row{display:grid;grid-template-columns:repeat(7,1fr);background:var(--bg-secondary, #f8fafc);border-bottom:1px solid var(--border-color, #e2e8f0)}.calendar-weekday-cell{padding:10px;text-align:center;font-size:12px;font-weight:700;color:var(--text-muted, #64748b);border-right:1px solid var(--border-color, #e2e8f0)}.calendar-weekday-cell:last-child{border-right:none}.calendar-weekday-cell.weekend{color:#94a3b8}.calendar-days-matrix{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day-cell{min-height:120px;padding:8px;border-right:1px solid var(--border-color, #e2e8f0);border-bottom:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, #ffffff);display:flex;flex-direction:column;transition:background .1s}.calendar-day-cell:nth-child(7n){border-right:none}.calendar-day-cell.padding-day{background:var(--bg-secondary, #fbfcfe);opacity:.6}.calendar-day-cell.weekend-cell{background:var(--bg-hover, #fafbfc)}.calendar-day-cell.today-cell{background:#2563eb08;box-shadow:inset 0 0 0 2px var(--primary, #2563eb)}.calendar-day-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.calendar-day-num{font-size:12px;font-weight:600;color:var(--text-main, #334155)}.calendar-day-num.today-pill{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--primary, #2563eb);color:#fff;font-weight:700}.day-task-count-pill{font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px;background:var(--bg-secondary, #e2e8f0);color:var(--text-muted, #475569)}.calendar-day-task-list{display:flex;flex-direction:column;gap:4px;flex:1}.cal-task-chip{display:flex;align-items:center;gap:5px;padding:4px 6px;border-radius:6px;background:var(--bg-secondary, #f1f5f9);border:1px solid var(--border-color, #e2e8f0);font-size:11px;cursor:pointer;transition:all .15s ease;overflow:hidden;white-space:nowrap}.cal-task-chip:hover{transform:translateY(-1px);border-color:var(--primary, #2563eb);box-shadow:0 2px 6px #00000014}.cal-task-chip.overdue{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.cal-task-chip.completed{background:#f0fdf4;border-color:#bbf7d0;color:#166534;opacity:.85}.cal-chip-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.cal-chip-room{font-weight:700;flex-shrink:0}.cal-chip-title{flex:1;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted, #475569)}.cal-chip-warning{flex-shrink:0;font-size:11px}.cal-more-tasks-btn{font-size:10px;font-weight:700;color:var(--primary, #2563eb);background:transparent;border:none;cursor:pointer;text-align:left;padding:2px 4px}.calendar-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.calendar-week-col{display:flex;flex-direction:column;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:10px;overflow:hidden;min-height:480px}.calendar-week-col.today-col{border-color:var(--primary, #2563eb);box-shadow:0 0 0 1px var(--primary, #2563eb);background:#2563eb05}.week-col-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--card-bg, #ffffff);border-bottom:1px solid var(--border-color, #e2e8f0);gap:6px}.week-col-name{font-size:12px;font-weight:700;color:var(--text-muted, #64748b)}.week-col-date{font-size:13px;font-weight:800;color:var(--text-main, #0f172a)}.week-col-date.today-pill{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--primary, #2563eb);color:#fff}.today-badge-text{font-size:10px;font-weight:700;padding:1px 5px;border-radius:6px;background:#2563eb1a;color:var(--primary, #2563eb)}.week-col-task-badge{font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px;background:var(--bg-secondary, #e2e8f0);color:var(--text-muted, #475569);margin-left:auto}.week-col-content{display:flex;flex-direction:column;gap:8px;padding:8px;flex:1;overflow-y:auto}.week-col-empty{display:flex;align-items:center;justify-content:center;height:100px;color:var(--text-muted, #94a3b8);font-size:11px;text-align:center;padding:16px}.week-task-card{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:8px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);cursor:pointer;transition:all .15s ease}.week-task-card:hover{transform:translateY(-2px);border-color:var(--primary, #2563eb);box-shadow:0 4px 12px #00000014}.week-task-card.overdue{border-left:3px solid #ef4444;background:snow}.week-task-card.completed{border-left:3px solid #22c55e;opacity:.9}.week-task-room-badge{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;color:var(--text-main, #0f172a)}.room-meta-sub{font-size:10px;font-weight:500;color:var(--text-muted, #64748b)}.week-task-title{font-size:12px;font-weight:600;color:var(--text-main, #1e293b);line-height:1.3}.week-task-badges-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.week-status-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:2px 6px;border-radius:6px;border:1px solid}.week-overdue-tag{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;padding:2px 6px;border-radius:6px;background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.week-task-assignee{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted, #64748b)}.week-task-comment{font-size:11px;font-style:italic;color:var(--text-muted, #64748b);background:var(--bg-secondary, #f8fafc);padding:4px 6px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .task-deadline-tag,.dark .task-deadline-tag{background:#1e293b;color:#94a3b8;border-color:#334155}[data-theme=dark] .task-deadline-tag.today,.dark .task-deadline-tag.today{background:#f59e0b33;color:#fde68a;border-color:#f59e0b66}[data-theme=dark] .task-deadline-tag.overdue,.dark .task-deadline-tag.overdue{background:#ef444433;color:#fca5a5;border-color:#ef444466}[data-theme=dark] .task-field.due-date-field,.dark .task-field.due-date-field{background:#141f36;border-color:#273652}[data-theme=dark] .due-date-input,.dark .due-date-input{background:#0d1527;border-color:#273652;color:#f8fafc}[data-theme=dark] .quick-due-btn,.dark .quick-due-btn{background:#1a253c;border-color:#273652;color:#cbd5e1}[data-theme=dark] .quick-due-btn:hover,.dark .quick-due-btn:hover{background:#233352;border-color:#3b82f6;color:#60a5fa}[data-theme=dark] .construction-calendar-container,.dark .construction-calendar-container{background:#10192d;border-color:#22304d}[data-theme=dark] .calendar-top-bar,.dark .calendar-top-bar{border-color:#22304d}[data-theme=dark] .calendar-main-title,.dark .calendar-main-title{color:#f8fafc}[data-theme=dark] .calendar-nav-btn,[data-theme=dark] .calendar-today-btn,.dark .calendar-nav-btn,.dark .calendar-today-btn{background:#18233c;border-color:#2a3a5c;color:#e2e8f0}[data-theme=dark] .calendar-view-toggle,.dark .calendar-view-toggle{background:#141f36;border-color:#22304d}[data-theme=dark] .view-pill-btn.active,.dark .view-pill-btn.active{background:#1e2c4a;color:#60a5fa}[data-theme=dark] .cal-kpi-card,.dark .cal-kpi-card{background:#141f36;border-color:#22304d}[data-theme=dark] .cal-kpi-num,.dark .cal-kpi-num{color:#f8fafc}[data-theme=dark] .calendar-filters-bar,.dark .calendar-filters-bar{background:#141f36;border-color:#22304d}[data-theme=dark] .cal-filter-item,[data-theme=dark] .cal-overdue-toggle,.dark .cal-filter-item,.dark .cal-overdue-toggle{background:#192642;border-color:#273652;color:#cbd5e1}[data-theme=dark] .cal-filter-item select,.dark .cal-filter-item select{color:#f8fafc}[data-theme=dark] .calendar-month-grid,.dark .calendar-month-grid{border-color:#22304d}[data-theme=dark] .calendar-weekdays-row,.dark .calendar-weekdays-row{background:#141f36;border-color:#22304d}[data-theme=dark] .calendar-weekday-cell,.dark .calendar-weekday-cell{border-color:#22304d;color:#94a3b8}[data-theme=dark] .calendar-day-cell,.dark .calendar-day-cell{background:#10192d;border-color:#22304d}[data-theme=dark] .calendar-day-cell.padding-day,.dark .calendar-day-cell.padding-day{background:#0c1424}[data-theme=dark] .calendar-day-cell.weekend-cell,.dark .calendar-day-cell.weekend-cell{background:#0e1728}[data-theme=dark] .calendar-day-cell.today-cell,.dark .calendar-day-cell.today-cell{background:#3b82f614;box-shadow:inset 0 0 0 2px #3b82f6}[data-theme=dark] .calendar-day-num,.dark .calendar-day-num{color:#cbd5e1}[data-theme=dark] .cal-task-chip,.dark .cal-task-chip{background:#18253e;border-color:#293a5c;color:#f1f5f9}[data-theme=dark] .cal-task-chip .cal-chip-title,.dark .cal-task-chip .cal-chip-title{color:#cbd5e1}[data-theme=dark] .cal-task-chip.overdue,.dark .cal-task-chip.overdue{background:#ef444426;border-color:#ef444466;color:#fca5a5}[data-theme=dark] .calendar-week-col,.dark .calendar-week-col{background:#0d1527;border-color:#22304d}[data-theme=dark] .week-col-header,.dark .week-col-header{background:#141f36;border-color:#22304d}[data-theme=dark] .week-col-date,.dark .week-col-date{color:#f8fafc}[data-theme=dark] .week-task-card,.dark .week-task-card{background:#141f36;border-color:#243452}[data-theme=dark] .week-task-room-badge,.dark .week-task-room-badge,[data-theme=dark] .week-task-title,.dark .week-task-title{color:#f8fafc}[data-theme=dark] .week-task-comment,.dark .week-task-comment{background:#0d1527;color:#94a3b8}[data-theme=dark] .week-task-card.overdue,.dark .week-task-card.overdue{background:#ef444414;border-left-color:#ef4444}[data-theme=dark] .repair-ticket-dialog,.dark .repair-ticket-dialog{background:#10192d;border:1px solid #22304d}[data-theme=dark] .badge-uk-indicator,.dark .badge-uk-indicator{background:#3b82f62e;border:1px solid rgba(59,130,246,.4);color:#93c5fd}[data-theme=dark] .repair-info-banner,.dark .repair-info-banner{background:#f59e0b1a;border:1px solid rgba(245,158,11,.25);border-left:4px solid #f59e0b}[data-theme=dark] .repair-info-text strong,.dark .repair-info-text strong{color:#fde68a}[data-theme=dark] .repair-info-text p,.dark .repair-info-text p{color:#fbbf24}[data-theme=dark] .repair-form-card,.dark .repair-form-card{background:#141f36;border:1px solid #243452}[data-theme=dark] .repair-section-subtitle,.dark .repair-section-subtitle{color:#f8fafc}[data-theme=dark] .repair-field label,.dark .repair-field label{color:#cbd5e1}[data-theme=dark] .repair-select,[data-theme=dark] .repair-input-wrap input,[data-theme=dark] .repair-field textarea,.dark .repair-select,.dark .repair-input-wrap input,.dark .repair-field textarea{background:#0d1527;border:1px solid #273652;color:#fff}[data-theme=dark] .repair-select:focus,[data-theme=dark] .repair-input-wrap input:focus,[data-theme=dark] .repair-field textarea:focus,.dark .repair-select:focus,.dark .repair-input-wrap input:focus,.dark .repair-field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}[data-theme=dark] .repair-input-wrap .input-ic,.dark .repair-input-wrap .input-ic{color:#94a3b8}[data-theme=dark] .repair-input-wrap input::placeholder,[data-theme=dark] .repair-field textarea::placeholder,.dark .repair-input-wrap input::placeholder,.dark .repair-field textarea::placeholder{color:#64748b}[data-theme=dark] .repair-select option,.dark .repair-select option{background:#0d1527;color:#fff}[data-theme=dark] .repair-add-photo-btn,.dark .repair-add-photo-btn{background:#192642;border:1px dashed #33476e;color:#e2e8f0}[data-theme=dark] .repair-add-photo-btn:hover,.dark .repair-add-photo-btn:hover{background:#233352;border-color:#3b82f6;color:#60a5fa}[data-theme=dark] .repair-photo-preview,.dark .repair-photo-preview{background:#192642;border:1px solid #273652}[data-theme=dark] .remove-photo-btn,.dark .remove-photo-btn{background:#ef44442e;border:1px solid rgba(239,68,68,.4);color:#fca5a5}[data-theme=dark] .remove-photo-btn:hover,.dark .remove-photo-btn:hover{background:#ef44444d}[data-theme=dark] .section-head-mini,.dark .section-head-mini{color:#94a3b8}[data-theme=dark] .section-head-mini h4,.dark .section-head-mini h4{color:#f8fafc}[data-theme=dark] .repair-empty-state,.dark .repair-empty-state{background:#141f36;border:1px dashed #273652;color:#94a3b8}[data-theme=dark] .repair-ticket-item,.dark .repair-ticket-item{background:#141f36;border:1px solid #243452;color:#f8fafc}[data-theme=dark] .repair-ticket-item:hover,.dark .repair-ticket-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .ticket-cat-badge,.dark .ticket-cat-badge{background:#1e293b;color:#cbd5e1}[data-theme=dark] .ticket-date,.dark .ticket-date{color:#94a3b8}[data-theme=dark] .ticket-desc,.dark .ticket-desc{color:#f8fafc}[data-theme=dark] .ticket-thumb-img,.dark .ticket-thumb-img{border-color:#273652}[data-theme=dark] .ticket-footer-row,.dark .ticket-footer-row{border-top-color:#243452;color:#94a3b8}[data-theme=dark] .ticket-footer-row strong,.dark .ticket-footer-row strong{color:#fff}[data-theme=dark] .status-action-btn.in-progress-btn,.dark .status-action-btn.in-progress-btn{background:#3b82f62e;color:#93c5fd;border-color:#3b82f666}[data-theme=dark] .status-action-btn.in-progress-btn:hover,.dark .status-action-btn.in-progress-btn:hover{background:#3b82f64d}[data-theme=dark] .status-action-btn.done-btn,.dark .status-action-btn.done-btn{background:#22c55e2e;color:#86efac;border-color:#22c55e66}[data-theme=dark] .status-action-btn.done-btn:hover,.dark .status-action-btn.done-btn:hover{background:#22c55e4d}[data-theme=dark] .status-action-btn.reject-btn,.dark .status-action-btn.reject-btn{background:#1e293b;color:#94a3b8;border-color:#334155}[data-theme=dark] .status-action-btn.reject-btn:hover,.dark .status-action-btn.reject-btn:hover{background:#334155;color:#f8fafc}[data-theme=dark] .open-repair-ticket-btn,.dark .open-repair-ticket-btn{background:#f59e0b26;border:1px solid rgba(245,158,11,.35);color:#fde68a}[data-theme=dark] .open-repair-ticket-btn:hover,.dark .open-repair-ticket-btn:hover{background:#f59e0b40;border-color:#f59e0b;color:#fff}[data-theme=dark] .form-error-banner,.dark .form-error-banner{background:#ef44442e;color:#fca5a5;border:1px solid rgba(239,68,68,.4)}[data-theme=dark] .form-success-banner,.dark .form-success-banner{background:#22c55e2e;color:#86efac;border:1px solid rgba(34,197,94,.4)}
