html{--mat-sys-background: #faf9fd;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f2f0f4;--mat-sys-inverse-primary: #abc7ff;--mat-sys-inverse-surface: #2f3033;--mat-sys-on-background: #1a1b1f;--mat-sys-on-error: #ffffff;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary: #ffffff;--mat-sys-on-primary-container: #00458f;--mat-sys-on-primary-fixed: #001b3f;--mat-sys-on-primary-fixed-variant: #00458f;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3e4759;--mat-sys-on-secondary-fixed: #131c2b;--mat-sys-on-secondary-fixed-variant: #3e4759;--mat-sys-on-surface: #1a1b1f;--mat-sys-on-surface-variant: #44474e;--mat-sys-on-tertiary: #ffffff;--mat-sys-on-tertiary-container: #0000ef;--mat-sys-on-tertiary-fixed: #00006e;--mat-sys-on-tertiary-fixed-variant: #0000ef;--mat-sys-outline: #74777f;--mat-sys-outline-variant: #c4c6d0;--mat-sys-primary: #005cbb;--mat-sys-primary-container: #d7e3ff;--mat-sys-primary-fixed: #d7e3ff;--mat-sys-primary-fixed-dim: #abc7ff;--mat-sys-scrim: #000000;--mat-sys-secondary: #565e71;--mat-sys-secondary-container: #dae2f9;--mat-sys-secondary-fixed: #dae2f9;--mat-sys-secondary-fixed-dim: #bec6dc;--mat-sys-shadow: #000000;--mat-sys-surface: #faf9fd;--mat-sys-surface-bright: #faf9fd;--mat-sys-surface-container: #efedf0;--mat-sys-surface-container-high: #e9e7eb;--mat-sys-surface-container-highest: #e3e2e6;--mat-sys-surface-container-low: #f4f3f6;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dbd9dd;--mat-sys-surface-tint: #005cbb;--mat-sys-surface-variant: #e0e2ec;--mat-sys-tertiary: #343dff;--mat-sys-tertiary-container: #e0e0ff;--mat-sys-tertiary-fixed: #e0e0ff;--mat-sys-tertiary-fixed-dim: #bec2ff;--mat-sys-neutral-variant20: #2d3038;--mat-sys-neutral10: #1a1b1f}html{--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12)}html{--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12)}html{--mat-sys-body-large: 400 1rem / 1.5rem Roboto;--mat-sys-body-large-font: Roboto;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Roboto;--mat-sys-body-medium-font: Roboto;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Roboto;--mat-sys-body-small-font: Roboto;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Roboto;--mat-sys-display-large-font: Roboto;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Roboto;--mat-sys-display-medium-font: Roboto;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Roboto;--mat-sys-display-small-font: Roboto;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Roboto;--mat-sys-headline-large-font: Roboto;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Roboto;--mat-sys-headline-medium-font: Roboto;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Roboto;--mat-sys-headline-small-font: Roboto;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Roboto;--mat-sys-label-large-font: Roboto;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Roboto;--mat-sys-label-medium-font: Roboto;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Roboto;--mat-sys-label-small-font: Roboto;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Roboto;--mat-sys-title-large-font: Roboto;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Roboto;--mat-sys-title-medium-font: Roboto;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Roboto;--mat-sys-title-small-font: Roboto;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500}html{--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px}html{--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}:root{--bg-body: #f5f7fb;--surface: #ffffff;--surface-muted: #eef2ff;--text-main: #0f172a;--text-muted: #6b7280;--border-color: #e0e7ff;--primary: #2457ff;--primary-dark: #14287a;--primary-light: #7ba1ff;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-soft: 0 25px 60px rgba(15, 23, 42, .12);--radius: .8rem;--radius-lg: 1.5rem;font-family:Segoe UI,Inter,system-ui,-apple-system,sans-serif;color-scheme:light;--role-card-bg: rgba(255, 255, 255, .75);--role-card-border: rgba(0, 0, 0, .1);--toggle-row-bg: rgba(255, 255, 255, .85);--toggle-row-border: rgba(0, 0, 0, .08);--text-label: #000000}[data-theme=dark]{--bg-body: #050912;--surface: #0f172a;--surface-muted: #111c2f;--text-main: #f8fafc;--text-muted: rgba(226, 232, 240, .75);--border-color: rgba(148, 163, 184, .3);--primary: #7ea5ff;--primary-dark: #5568ff;--primary-light: #93b5ff;--shadow-soft: 0 35px 85px rgba(2, 6, 23, .65);--role-card-bg: rgba(15, 23, 42, .65);--role-card-border: rgba(148, 163, 184, .2);--toggle-row-bg: rgba(17, 28, 47, .85);--toggle-row-border: rgba(226, 232, 240, .1);--text-label: rgba(248, 250, 252, .9)}body{margin:0;font-family:var(--font-family);background-color:var(--bg-body);color:var(--text-main);transition:background-color .3s ease,color .3s ease}.card{background-color:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:2rem;display:flex;flex-direction:column;gap:1.25rem;min-width:0;word-wrap:break-word}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.card-header h2{margin:0;font-size:1.5rem;color:var(--text-main)}.card-subtitle{margin:.35rem 0 0;color:var(--text-muted)}label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-label);font-size:.92rem}input,select,textarea{background-color:var(--surface-muted);border:1px solid var(--border-color);color:var(--text-main);border-radius:14px;padding:.75rem .9rem;font-size:1rem;width:100%;box-sizing:border-box;transition:all .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2457ff33}.form-grid{display:flex;flex-wrap:wrap;gap:1.25rem}.form-grid-btn-mantenimiento{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-end}.form-grid.dense{gap:1rem}.form-grid label{display:flex;gap:.45rem;font-size:.92rem;color:var(--text-muted)}.form-grid label.span-full{flex:1 1 100%}.form-grid label.checkbox-label{flex-direction:row;align-items:center;gap:.75rem;font-weight:500;color:var(--text-main);cursor:pointer}button{cursor:pointer;border-radius:14px;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease;border:none;font:inherit}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;box-shadow:0 10px 20px #2457ff40}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 15px 30px #2457ff59}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-outline{background:transparent;border:1.5px solid rgba(36,87,255,.4);color:var(--primary)}.btn-outline:hover{background:#2457ff14}.btn-ghost{background:#2457ff1a;color:var(--primary)}.btn-ghost:hover{background:#2457ff2e}.btn-danger{background:linear-gradient(135deg,#d93025,#b42318);color:#fff;box-shadow:0 10px 20px #d9302540}.btn-danger:hover{transform:translateY(-1px)}.table-wrapper{overflow-x:auto;border-radius:20px;border:1px solid var(--border-color)}table{width:100%;border-collapse:collapse;background:var(--surface)}th{text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--border-color);color:var(--text-muted);font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;background:var(--surface-muted)}td{padding:.85rem 1rem;border-bottom:1px solid var(--border-color);color:var(--text-main);max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}tr:hover td{background:#2457ff08}@media (max-width: 1366px),(max-height: 800px){.card{padding:1.35rem;gap:1rem;border-radius:1.25rem}.card-header h2{font-size:1.25rem}.card-subtitle{font-size:.9rem}input,select,textarea{padding:.65rem .8rem;font-size:.95rem}button{padding:.65rem 1.05rem}th,td{padding:.7rem .8rem}}@media (max-width: 1100px){.table-wrapper,.table-scroll{overflow-x:auto}.table-wrapper table,.table-scroll table{min-width:720px}}.tag{display:inline-flex;align-items:center;padding:.3rem .75rem;border-radius:999px;font-size:.82rem;font-weight:700;background:var(--surface-muted);color:var(--text-main)}.tag-success{background:#10b98126;color:#10b981}.tag-warning{background:#f59e0b26;color:#b45309}.tag-danger{background:#ef444426;color:#ef4444}.text-muted{color:var(--text-muted)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.flag-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500;color:var(--text-main);font-size:1rem}.flag-toggle input[type=checkbox]{display:none}.flag-toggle .slider{position:relative;width:40px;height:20px;background-color:var(--border-color);border-radius:20px;transition:.3s ease;flex-shrink:0;order:2}.flag-toggle .slider:before{content:"";position:absolute;height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.3s ease;box-shadow:0 1px 3px #0003}.flag-toggle input:checked+.slider{background-color:var(--primary)}.flag-toggle input:checked+.slider:before{transform:translate(20px)}.flag-toggle:hover .slider:not(:checked){background-color:var(--text-muted)}.required:after{content:"*";color:var(--danger)}.required{display:inline-block}.field{display:flex;gap:.55rem}.field-label{color:#6b7280;font-size:.92rem}.field-hint{display:block;margin-top:.35rem;font-size:.78rem;color:#b91c1c}.form-grid input.invalid,.form-grid select.invalid{border-color:#ef4444!important;box-shadow:0 0 0 2px #ef444426}label:has(input[required]),label:has(select[required]),label:has(textarea[required]){position:relative}html,body{height:100%}body{margin:0;font-family:Roboto,Helvetica Neue,sans-serif}.pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--border-color)}.pagination .page-btn{min-width:110px;height:40px;border-radius:14px;border:1px solid var(--border-color);background:var(--surface-muted);color:var(--text-main);font-weight:600;transition:all .2s ease}.pagination .page-btn:hover:not(:disabled){background:#2457ff14;border-color:var(--primary);color:var(--primary)}.pagination .page-btn:disabled{opacity:.45;cursor:not-allowed}.page-info{font-size:.9rem;font-weight:500;color:var(--text-muted)}.file-container{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin-top:8px;background-color:#fff;border:1px solid #bbbdc0;border-radius:8px;width:fit-content}.file-upload{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.file-name{font-size:14px;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.chip-link{gap:.45rem}.chip-link a{color:inherit;text-decoration:none;font-weight:700}.chip-link a:hover{text-decoration:underline}.regulation-panel{display:flex;flex-direction:column;gap:.75rem;margin-top:.25rem}.regulation-help{margin:0 10px;line-height:1.45}.regulation-current{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:0 10px}.regulation-link{color:var(--primary-dark);font-weight:700;text-decoration:none;word-break:break-word}.regulation-link:hover{text-decoration:underline}.regulation-remove{padding:.55rem .9rem}.issue-evidence{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;margin-top:.45rem}.issue-evidence-link{display:inline-flex;align-items:center;justify-content:center;max-width:min(320px,100%);border-radius:16px;overflow:hidden;border:1px solid var(--border-color);background:#fff;text-decoration:none}.issue-evidence-thumb{display:block;width:min(320px,100%);max-width:100%;max-height:220px;object-fit:cover}.issue-evidence-file{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1rem;color:var(--primary-dark);font-weight:700}.issue-evidence-name{max-width:min(320px,100%);word-break:break-word}.issue-evidence--manager{flex-direction:row;align-items:center;gap:.75rem;flex-wrap:wrap}.issue-evidence-eye{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem .9rem;border-radius:999px;border:1px solid rgba(36,87,255,.18);background:#2457ff14;color:var(--primary-dark);font-weight:700;text-decoration:none}.issue-evidence-eye:hover{background:#2457ff24}.issue-admin-note{display:flex;flex-direction:column;gap:.55rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid rgba(148,163,184,.2)}.issue-admin-note--resolved{background:#10b9810d;border:1px solid rgba(16,185,129,.14);border-radius:18px;padding:.95rem 1rem}.issue-admin-note-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.issue-admin-note-copy{display:flex;flex-direction:column;gap:.35rem}.issue-admin-label{margin:0;font-weight:700;color:var(--text-main)}.issue-note-help{margin:0;line-height:1.45}.issue-note-state{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;background:#2457ff14;color:var(--primary-dark);font-size:.82rem;font-weight:700;white-space:nowrap}.issue-note-state--resolved{background:#10b98124;color:#0f8a62}.issue-note-textarea{min-height:110px;resize:vertical}.issue-note-actions{display:flex;gap:.65rem;flex-wrap:wrap}.issue-note-preview{display:flex;flex-direction:column;gap:.45rem;margin-top:.8rem;padding:.85rem 1rem;border-radius:16px;background:#2457ff0f;border:1px solid rgba(36,87,255,.12)}.issue-note-preview strong,.issue-note-preview p{margin:0}.issue-note-preview p{white-space:pre-wrap;line-height:1.55}.issue-note-preview--manager{margin-top:.2rem}.resident-issue-card{display:flex;flex-direction:column;gap:.7rem}.resident-issue-description{margin:0;line-height:1.45}.resident-issue-lower{display:flex;align-items:flex-start;gap:.85rem;flex-wrap:wrap}.issue-evidence--compact{margin-top:0;flex:0 0 auto}.issue-evidence--compact .issue-evidence-link{max-width:150px}.issue-evidence--compact .issue-evidence-thumb{width:150px;max-height:120px}.issue-note-preview--compact{flex:1 1 320px;margin-top:0;min-width:240px}@media (max-width: 640px){.resident-issue-lower{flex-direction:column}.issue-evidence--compact .issue-evidence-link,.issue-evidence--compact .issue-evidence-thumb{width:min(100%,220px);max-width:100%}.issue-note-preview--compact{min-width:0;width:100%}}.horario-container{display:flex;align-items:center;gap:8px}.modal-large{width:min(500px,100%);max-height:calc(100vh - 2rem);border-radius:25px;padding:2rem;background:var(--surface);box-shadow:0 35px 90px #00000059;border:1px solid var(--border);display:flex;flex-direction:column;overflow:auto}.button{align-self:flex-end!important}.remove-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background-color:#fff0;color:#dc2626;border:none;border-radius:50%;cursor:pointer;transition:all .2s ease}.remove-btn:hover{background-color:#dc2626;color:#fff;transform:scale(1.05)}.remove-btn:active{transform:scale(.95)}.delete-icon{color:#d32f2f!important}
