.maintenance-overlay[data-v-fdfd0124]{position:fixed;inset:0;background:var(--surface-alt);display:flex;align-items:center;justify-content:center;z-index:9999}.maintenance-card[data-v-fdfd0124]{text-align:center;padding:2rem}.icon[data-v-fdfd0124]{font-size:3rem}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}#app{width:100%;height:100vh}.login-container[data-v-3fb1df20]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:radial-gradient(circle at top,rgba(55,93,231,.18),transparent 70%),var(--bg);padding:1rem}.login-card[data-v-3fb1df20]{background:var(--surface);padding:2.8rem 2.2rem;border-radius:16px;width:100%;max-width:430px;box-shadow:0 14px 40px #0000001a;border:1px solid rgba(55,93,231,.12);animation:fadeUp-3fb1df20 .6s ease}.login-logo[data-v-3fb1df20]{display:block;margin:0 auto 1.2rem;width:140px;height:auto}.login-card h1[data-v-3fb1df20]{margin:0 0 1.5rem;text-align:center;font-size:1.9rem;font-weight:800;color:var(--primary)}.success-banner[data-v-3fb1df20]{padding:.875rem 1rem;background:var(--success-bg);color:var(--success-text);border-left:4px solid #28a745;border-radius:6px;margin-bottom:1.25rem;font-size:.9rem}.error-banner[data-v-3fb1df20]{padding:.875rem 1rem;background:var(--danger-bg);color:var(--danger-text);border-left:4px solid #dc3545;border-radius:6px;margin-bottom:1.25rem;font-size:.9rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.warning-banner[data-v-3fb1df20]{padding:.875rem 1rem;background:var(--warning-bg);color:var(--warning-text);border-left:4px solid var(--warning);border-radius:6px;margin-bottom:1.25rem;font-size:.9rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.btn-link[data-v-3fb1df20]{background:none;border:none;cursor:pointer;text-decoration:underline;font-size:.875rem;padding:0;color:inherit;font-weight:600}.resend-block[data-v-3fb1df20]{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;padding:1rem;background:var(--surface-alt);border-radius:8px;margin-bottom:1.25rem;border:1px solid var(--border)}.resend-input[data-v-3fb1df20]{flex:1;min-width:200px;padding:.6rem .875rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem}.resend-input[data-v-3fb1df20]:focus{outline:none;border-color:var(--accent)}.btn-resend[data-v-3fb1df20]{padding:.6rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;white-space:nowrap}.btn-resend[data-v-3fb1df20]:disabled{opacity:.6;cursor:not-allowed}.resend-message[data-v-3fb1df20]{width:100%;margin:0;font-size:.85rem;color:var(--text-muted)}.form-group[data-v-3fb1df20]{margin-bottom:1.4rem}.form-group label[data-v-3fb1df20]{display:block;margin-bottom:.5rem;font-size:.95rem;font-weight:600;color:var(--text)}.form-group input[data-v-3fb1df20]{width:100%;padding:.9rem;border:1px solid var(--border);border-radius:10px;font-size:1rem;box-sizing:border-box;transition:all .25s ease;font-family:inherit}.form-group input[data-v-3fb1df20]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #375de72e}.password-input-wrapper[data-v-3fb1df20]{position:relative;display:flex;align-items:center}.password-input-wrapper input[data-v-3fb1df20]{padding-right:3rem}.toggle-password-btn[data-v-3fb1df20]{position:absolute;right:0;top:0;bottom:0;background:transparent;border:none;padding:0 .9rem;cursor:pointer;font-size:1.2rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:color .2s}.toggle-password-btn[data-v-3fb1df20]:hover{color:var(--accent)}.error-message[data-v-3fb1df20]{padding:.85rem;border-radius:8px;background:#dc262614;border-left:4px solid var(--danger);color:var(--danger-text);font-size:.9rem;margin-bottom:1rem}.login-btn[data-v-3fb1df20]{width:100%;padding:.95rem;background:var(--primary);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .2s,transform .15s}.login-btn[data-v-3fb1df20]:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.login-btn[data-v-3fb1df20]:disabled{opacity:.6;cursor:not-allowed}.forgot-password[data-v-3fb1df20]{text-align:center;margin-top:1.6rem}.forgot-password a[data-v-3fb1df20]{color:var(--violet-sombre);font-weight:600;text-decoration:none;font-size:.92rem}.forgot-password a[data-v-3fb1df20]:hover{text-decoration:underline}.family-access-link[data-v-3fb1df20]{text-align:center;margin-top:.9rem;font-size:.85rem;color:var(--text-muted)}.family-access-link a[data-v-3fb1df20]{color:var(--violet-sombre);font-weight:600;text-decoration:none}.family-access-link a[data-v-3fb1df20]:hover{text-decoration:underline}@keyframes fadeUp-3fb1df20{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.login-card[data-v-3fb1df20]{padding:2rem 1.5rem}.resend-block[data-v-3fb1df20]{flex-direction:column;align-items:stretch}.resend-input[data-v-3fb1df20]{min-width:0}}.forgot-password-container[data-v-5a1c2c7a]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%)}.forgot-password-card[data-v-5a1c2c7a]{background:var(--surface);padding:2rem;border-radius:8px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}.forgot-password-card h1[data-v-5a1c2c7a]{margin:0 0 1rem;color:var(--text);text-align:center}.description[data-v-5a1c2c7a]{color:var(--text-muted);text-align:center;margin-bottom:2rem;line-height:1.5}.form-group[data-v-5a1c2c7a]{margin-bottom:1.5rem}.form-group label[data-v-5a1c2c7a]{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500}.form-group input[data-v-5a1c2c7a]{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input[data-v-5a1c2c7a]:focus{outline:none;border-color:var(--accent)}.error-message[data-v-5a1c2c7a]{padding:.75rem;background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin-bottom:1rem;font-size:.875rem}.success-message[data-v-5a1c2c7a]{padding:1rem;background:var(--success-bg);color:var(--success-text);border-radius:4px;margin-bottom:1rem;text-align:center}.success-message p[data-v-5a1c2c7a]{margin:0}.submit-btn[data-v-5a1c2c7a]{width:100%;padding:.75rem;background:var(--accent);color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn[data-v-5a1c2c7a]:hover:not(:disabled){background:var(--accent-hover)}.submit-btn[data-v-5a1c2c7a]:disabled{opacity:.6;cursor:not-allowed}.back-to-login[data-v-5a1c2c7a]{text-align:center;margin-top:1.5rem}.back-to-login a[data-v-5a1c2c7a]{color:var(--accent);text-decoration:none}.back-to-login a[data-v-5a1c2c7a]:hover{text-decoration:underline}.reset-password-container[data-v-1cf9a774]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%)}.reset-password-card[data-v-1cf9a774]{background:var(--surface);padding:2rem;border-radius:8px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}.reset-password-card h1[data-v-1cf9a774]{margin:0 0 2rem;color:var(--text);text-align:center}.form-group[data-v-1cf9a774]{margin-bottom:1.5rem}.form-group label[data-v-1cf9a774]{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500}.form-group input[data-v-1cf9a774]{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input[data-v-1cf9a774]:focus{outline:none;border-color:var(--accent)}.error-message[data-v-1cf9a774]{padding:.75rem;background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin-bottom:1rem;font-size:.875rem}.success-message[data-v-1cf9a774]{text-align:center;padding:1rem;background:var(--success-bg);color:var(--success-text);border-radius:4px}.success-message p[data-v-1cf9a774]{margin:0 0 1rem}.login-link[data-v-1cf9a774]{display:inline-block;padding:.5rem 1rem;background:var(--accent);color:#fff;text-decoration:none;border-radius:4px;transition:background .2s}.login-link[data-v-1cf9a774]:hover{background:var(--accent-hover)}.submit-btn[data-v-1cf9a774]{width:100%;padding:.75rem;background:var(--accent);color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn[data-v-1cf9a774]:hover:not(:disabled){background:var(--accent-hover)}.submit-btn[data-v-1cf9a774]:disabled{opacity:.6;cursor:not-allowed}.alerts-banner[data-v-08a8e809]{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem;padding:.85rem 1.25rem;background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning);border-radius:8px}.alerts-banner-icon[data-v-08a8e809]{font-size:1.25rem;flex-shrink:0}.alerts-banner-items[data-v-08a8e809]{display:flex;gap:1.25rem;flex-wrap:wrap;flex:1}.alerts-banner-item[data-v-08a8e809]{color:inherit;text-decoration:none}.alerts-banner-item[data-v-08a8e809]:hover{text-decoration:underline}.alerts-banner-detail[data-v-08a8e809]{flex-shrink:0;font-weight:600;color:inherit;text-decoration:underline;white-space:nowrap}.volumetry-panel[data-v-a3c67136]{margin-top:2rem;padding:1.5rem;background:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a}.volumetry-header[data-v-a3c67136]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.volumetry-header h3[data-v-a3c67136]{margin:0 0 .25rem;color:var(--text)}.volumetry-subtitle[data-v-a3c67136]{margin:0;color:var(--text-muted);font-size:.9rem}.btn[data-v-a3c67136]{padding:.6rem 1.2rem;border:none;border-radius:6px;cursor:pointer;font-weight:600;white-space:nowrap}.btn[data-v-a3c67136]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-a3c67136]{background:var(--accent);color:#fff}.btn-primary[data-v-a3c67136]:hover:not(:disabled){background:var(--accent-hover)}.volumetry-error[data-v-a3c67136]{color:var(--danger);margin-top:1rem}.volumetry-computed-at[data-v-a3c67136]{margin:1rem 0 .5rem;color:var(--text-muted);font-size:.85rem}.stat-grid[data-v-a3c67136]{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-top:.5rem}.stat-card[data-v-a3c67136]{display:flex;flex-direction:column;padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.stat-label[data-v-a3c67136]{font-size:.8rem;color:var(--text-muted);margin-bottom:.35rem}.stat-value[data-v-a3c67136]{font-size:1.4rem;font-weight:700;color:var(--text)}.stat-sub[data-v-a3c67136]{font-size:.75rem;color:var(--text-muted)}.by-entity-title[data-v-a3c67136]{margin:2rem 0 .75rem;color:var(--text)}.table-scroll[data-v-a3c67136]{overflow-x:auto}.by-entity-table[data-v-a3c67136]{width:100%;border-collapse:collapse;font-size:.9rem}.by-entity-table th[data-v-a3c67136],.by-entity-table td[data-v-a3c67136]{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.by-entity-table th[data-v-a3c67136]{color:var(--text-muted);font-weight:600;background:var(--surface-alt)}.row-inactive[data-v-a3c67136]{color:var(--text-muted)}.entity-name-cell[data-v-a3c67136]{font-weight:600}.badge-inactive[data-v-a3c67136]{margin-left:.5rem;padding:.1rem .5rem;border-radius:4px;background:var(--border);color:var(--text-muted);font-size:.7rem;font-weight:600;white-space:nowrap}.no-results[data-v-a3c67136]{text-align:center;color:var(--text-muted);padding:1rem}.estimate-note[data-v-a3c67136]{margin:.75rem 0 0;color:var(--text-muted);font-size:.8rem;font-style:italic}.entity-stats-panel[data-v-74983c04]{margin-top:2rem;padding:1.5rem;background:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a}.entity-stats-header[data-v-74983c04]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.entity-stats-header h3[data-v-74983c04]{margin:0 0 .25rem;color:var(--text)}.entity-stats-subtitle[data-v-74983c04]{margin:0;color:var(--text-muted);font-size:.9rem}.btn[data-v-74983c04]{padding:.6rem 1.2rem;border:none;border-radius:6px;cursor:pointer;font-weight:600;white-space:nowrap}.btn[data-v-74983c04]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-74983c04]{background:var(--accent);color:#fff}.btn-primary[data-v-74983c04]:hover:not(:disabled){background:var(--accent-hover)}.entity-stats-error[data-v-74983c04]{color:var(--danger);margin-top:1rem}.entity-stats-computed-at[data-v-74983c04]{margin:1rem 0 .5rem;color:var(--text-muted);font-size:.85rem}.stat-grid[data-v-74983c04]{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-top:.5rem}.stat-card[data-v-74983c04]{display:flex;flex-direction:column;padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.stat-label[data-v-74983c04]{font-size:.8rem;color:var(--text-muted);margin-bottom:.35rem}.stat-value[data-v-74983c04]{font-size:1.4rem;font-weight:700;color:var(--text)}.stat-sub[data-v-74983c04]{font-size:.75rem;color:var(--text-muted)}.chart-card[data-v-73a126fd]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-73a126fd]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-empty[data-v-73a126fd]{color:var(--text-muted);font-size:.85rem;margin:0}.chart-canvas[data-v-73a126fd]{position:relative;width:100%}.chart-card[data-v-47104735]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-47104735]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-empty[data-v-47104735]{color:var(--text-muted);font-size:.85rem;margin:0}.chart-canvas[data-v-47104735]{position:relative;width:100%}.chart-legend[data-v-47104735]{margin:.5rem 0 0;color:var(--text-muted);font-size:.78rem;display:flex;align-items:center;gap:.4rem}.legend-dot[data-v-47104735]{width:.6rem;height:.6rem;border-radius:50%;display:inline-block}.chart-card[data-v-08cc5054]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-08cc5054]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-canvas[data-v-08cc5054]{position:relative;width:100%;height:280px}.chart-card[data-v-86be11ac]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-86be11ac]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-empty[data-v-86be11ac]{color:var(--text-muted);font-size:.85rem;margin:0}.chart-canvas[data-v-86be11ac]{position:relative;width:100%;height:240px}.chart-card[data-v-2d74126a]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-2d74126a]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-canvas[data-v-2d74126a]{position:relative;width:100%;height:260px}.chart-card[data-v-af3f45e5]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-af3f45e5]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-empty[data-v-af3f45e5]{color:var(--text-muted);font-size:.85rem;margin:0}.chart-canvas[data-v-af3f45e5]{position:relative;width:100%;height:240px}.chart-card[data-v-5b943295]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-5b943295]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-empty[data-v-5b943295]{color:var(--text-muted);font-size:.85rem;margin:0}.chart-canvas[data-v-5b943295]{position:relative;width:100%;height:240px}.chart-card[data-v-11c18e9e]{padding:1rem;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.chart-card h4[data-v-11c18e9e]{margin:0 0 .75rem;color:var(--text);font-size:.95rem}.chart-empty[data-v-11c18e9e]{color:var(--text-muted);font-size:.85rem;margin:0}.chart-canvas[data-v-11c18e9e]{position:relative;width:100%}.dashboard-charts-panel[data-v-50cb84b1]{margin-top:2rem;padding:1.5rem;background:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a}.dashboard-charts-header[data-v-50cb84b1]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.dashboard-charts-header h3[data-v-50cb84b1]{margin:0 0 .25rem;color:var(--text)}.dashboard-charts-subtitle[data-v-50cb84b1]{margin:0;color:var(--text-muted);font-size:.9rem}.btn[data-v-50cb84b1]{padding:.6rem 1.2rem;border:none;border-radius:6px;cursor:pointer;font-weight:600;white-space:nowrap}.btn[data-v-50cb84b1]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-50cb84b1]{background:var(--surface-alt);color:var(--text);border:1px solid var(--border)}.btn-secondary[data-v-50cb84b1]:hover:not(:disabled){background:var(--surface-hover)}.dashboard-charts-error[data-v-50cb84b1]{color:var(--danger)}.chart-grid[data-v-50cb84b1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1.25rem}.orphan-panel[data-v-8de0dc68]{margin-top:2rem;padding:1.5rem;background:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a}.orphan-header[data-v-8de0dc68]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.orphan-header h3[data-v-8de0dc68]{margin:0 0 .25rem;color:var(--text)}.orphan-subtitle[data-v-8de0dc68]{margin:0;color:var(--text-muted);font-size:.9rem;max-width:60ch}.btn[data-v-8de0dc68]{padding:.6rem 1.2rem;border:none;border-radius:6px;cursor:pointer;font-weight:600;white-space:nowrap}.btn[data-v-8de0dc68]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-8de0dc68]{background:var(--accent);color:#fff}.btn-primary[data-v-8de0dc68]:hover:not(:disabled){background:var(--accent-hover)}.btn-danger[data-v-8de0dc68]{background:var(--danger);color:#fff}.btn-danger[data-v-8de0dc68]:hover:not(:disabled){filter:brightness(.92)}.btn-link[data-v-8de0dc68]{background:none;border:none;cursor:pointer;font-size:.85rem;padding:0}.btn-link[data-v-8de0dc68]:disabled{opacity:.5;cursor:not-allowed}.btn-link-danger[data-v-8de0dc68]{color:var(--danger)}.orphan-error[data-v-8de0dc68]{color:var(--danger);margin-top:1rem}.orphan-notice[data-v-8de0dc68]{color:var(--text);margin-top:1rem;padding:.6rem .9rem;background:var(--surface-alt);border-radius:6px}.orphan-summary[data-v-8de0dc68]{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;color:var(--text-muted);font-size:.9rem}.orphan-section-title[data-v-8de0dc68]{margin:1.5rem 0 .75rem;color:var(--text)}.table-scroll[data-v-8de0dc68]{overflow-x:auto}.orphan-table[data-v-8de0dc68]{width:100%;border-collapse:collapse;font-size:.9rem}.orphan-table th[data-v-8de0dc68],.orphan-table td[data-v-8de0dc68]{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border)}.orphan-table th[data-v-8de0dc68]{color:var(--text-muted);font-weight:600;background:var(--surface-alt)}.badge[data-v-8de0dc68]{display:inline-block;padding:.15rem .55rem;border-radius:4px;font-size:.75rem;font-weight:600}.badge-ok[data-v-8de0dc68]{background:var(--success-bg, #d1f4e0);color:var(--success, #157347)}.badge-blocked[data-v-8de0dc68]{background:var(--warning-bg, #fdecd2);color:var(--warning, #a15c00);cursor:help}.no-results[data-v-8de0dc68]{text-align:center;color:var(--text-muted);padding:1rem}.blocked-note[data-v-8de0dc68]{margin:1rem 0 0;color:var(--text-muted);font-size:.8rem;font-style:italic}.dashboard[data-v-39469c52]{padding:2rem}.dashboard h2[data-v-39469c52]{color:var(--text);margin-bottom:1rem}.quick-actions[data-v-39469c52]{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap}.action-button[data-v-39469c52]{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff;text-decoration:none;border-radius:8px;transition:all .3s ease;box-shadow:0 4px 6px #0000001a}.action-button[data-v-39469c52]:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026;background:linear-gradient(135deg,var(--accent-secondary) 0%,var(--accent) 100%)}.button-icon[data-v-39469c52]{font-size:1.5rem;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#fff3;border-radius:50%}.button-label[data-v-39469c52]{font-weight:600;font-size:1rem}.button-description[data-v-39469c52]{font-size:.875rem;opacity:.9}.school-year-selector[data-v-08c789fc]{display:flex;align-items:center;gap:.75rem}.selector-label[data-v-08c789fc]{font-size:.9rem;color:var(--text-muted);font-weight:500;white-space:nowrap}.year-select[data-v-08c789fc]{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;min-width:120px}.year-select[data-v-08c789fc]:hover{border-color:var(--accent)}.year-select[data-v-08c789fc]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}@media(max-width:1080px){.selector-label[data-v-08c789fc]{display:none}}@media(max-width:768px){.school-year-selector[data-v-08c789fc]{flex-direction:column;align-items:stretch;gap:.5rem}.year-select[data-v-08c789fc]{width:100%}}.theme-toggle[data-v-9b229e73]{background:transparent;border:none;padding:0;cursor:pointer;flex-shrink:0}.theme-toggle-track[data-v-9b229e73]{position:relative;display:flex;align-items:center;width:52px;height:28px;padding:0 6px;background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;transition:background .2s,border-color .2s}.theme-toggle.is-dark .theme-toggle-track[data-v-9b229e73]{background:var(--accent-bg);border-color:var(--accent)}.theme-toggle-icon[data-v-9b229e73]{font-size:.75rem;line-height:1;z-index:1;filter:grayscale(.2)}.theme-toggle-thumb[data-v-9b229e73]{position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px var(--shadow);transition:transform .2s ease}.theme-toggle.is-dark .theme-toggle-thumb[data-v-9b229e73]{transform:translate(24px)}.tabs-bar[data-v-04bb592d]{display:flex;align-items:stretch;gap:.5rem;padding:0 1rem;background:var(--surface);border-bottom:1px solid var(--border);min-height:2.5rem}.tabs-scroll[data-v-04bb592d]{display:flex;align-items:stretch;gap:.25rem;overflow-x:auto;flex:1;scrollbar-width:thin}.tab-item[data-v-04bb592d]{display:flex;align-items:center;gap:.4rem;padding:.35rem .5rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;white-space:nowrap;font-size:.85rem;border-radius:4px 4px 0 0}.tab-item[data-v-04bb592d]:hover{background:var(--surface-hover)}.tab-item.active[data-v-04bb592d]{color:var(--text);border-bottom-color:var(--accent);background:var(--surface-hover)}.tab-item.preview .tab-label[data-v-04bb592d]{font-style:italic}.tab-pin[data-v-04bb592d],.tab-close[data-v-04bb592d]{opacity:.35;font-size:.75rem}.tab-pin.pinned[data-v-04bb592d]{opacity:1}.tab-item:hover .tab-pin[data-v-04bb592d],.tab-item:hover .tab-close[data-v-04bb592d]{opacity:.7}.tab-pin[data-v-04bb592d]:hover,.tab-close[data-v-04bb592d]:hover{opacity:1!important}.tabs-overflow[data-v-04bb592d]{position:relative;display:flex;align-items:center}.tabs-overflow-trigger[data-v-04bb592d]{border:none;background:transparent;color:var(--text-muted);font-size:.8rem;cursor:pointer;white-space:nowrap}.tabs-overflow-panel[data-v-04bb592d]{position:absolute;top:100%;right:0;z-index:40;width:260px;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px #0000001f;padding:.5rem}.tabs-overflow-search[data-v-04bb592d]{width:100%;box-sizing:border-box;padding:.35rem .5rem;margin-bottom:.4rem;border:1px solid var(--border);border-radius:4px;font-size:.85rem}.tabs-overflow-list[data-v-04bb592d]{max-height:260px;overflow-y:auto;display:flex;flex-direction:column}.tabs-overflow-item[data-v-04bb592d]{display:flex;align-items:center;gap:.4rem;padding:.4rem .5rem;border:none;background:transparent;text-align:left;cursor:pointer;border-radius:4px;font-size:.85rem;color:var(--text)}.tabs-overflow-item[data-v-04bb592d]:hover{background:var(--surface-hover)}.tabs-overflow-empty[data-v-04bb592d]{font-size:.8rem;color:var(--text-muted);padding:.4rem;margin:0}.tabs-overflow-actions[data-v-04bb592d]{border-top:1px solid var(--border);margin-top:.4rem;padding-top:.4rem}.tabs-overflow-actions button[data-v-04bb592d]{width:100%;border:none;background:transparent;color:var(--text-muted);font-size:.8rem;text-align:left;padding:.3rem .5rem;cursor:pointer;border-radius:4px}.tabs-overflow-actions button[data-v-04bb592d]:hover{background:var(--surface-hover)}.main-layout[data-v-002e3893]{display:flex;height:100vh;overflow:hidden}.overlay[data-v-002e3893]{display:none;position:fixed;inset:0;background:#00000080;z-index:998}.sidebar[data-v-002e3893]{width:280px;background:#1f184d;color:#fff;transition:width .3s ease,transform .3s ease;display:flex;flex-direction:column;position:relative;z-index:999}.sidebar.collapsed[data-v-002e3893]{width:70px}.sidebar-header[data-v-002e3893]{padding:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.toggle-btn[data-v-002e3893]{background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;width:100%;text-align:left;padding:.5rem;border-radius:4px;transition:background .2s}.toggle-btn[data-v-002e3893]:hover{background:#ffffff1a}.header-entity-select[data-v-002e3893]{padding:.5rem 2.5rem .5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:20px;font-size:.85rem;font-weight:500;cursor:pointer;appearance:none;background-image:linear-gradient(135deg,#667eea,#764ba2),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center,right .75rem center}.header-entity-select option[data-v-002e3893]{background:#2c3e50;color:#fff}.header-entity-select[data-v-002e3893]:focus{outline:none;box-shadow:0 0 0 3px #667eea66}.entity-select[data-v-002e3893]:hover{background:#667eea4d}.entity-select option[data-v-002e3893]{background:#2c3e50;color:#fff}.entity-error[data-v-002e3893]{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#e74c3c33;border-radius:8px;border:1px solid rgba(231,76,60,.3)}.error-icon[data-v-002e3893]{font-size:1.5rem}.error-message[data-v-002e3893]{font-size:.85rem;line-height:1.4}.sidebar-nav[data-v-002e3893]{flex:1;padding:.5rem 0;overflow-y:auto}.nav-item[data-v-002e3893]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:#fff;text-decoration:none;transition:background .2s;cursor:pointer;position:relative}.nav-item[data-v-002e3893]:hover{background:#ffffff1a}.nav-item.active[data-v-002e3893]{background:#3498db4d;border-left:3px solid #3498db}.nav-item .icon[data-v-002e3893]{font-size:1.25rem;min-width:1.5rem;flex-shrink:0}.nav-item.menu-group-header .label[data-v-002e3893]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem}.menu-children .label[data-v-002e3893]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.8rem}.nav-item .chevron[data-v-002e3893]{font-size:.75rem;opacity:.7;margin-left:auto}.menu-badge[data-v-002e3893]{display:inline-block;padding:.125rem .5rem;background:#667eea;color:#fff;border-radius:10px;font-size:.7rem;font-weight:600;margin-left:.5rem}.menu-group[data-v-002e3893]{margin-bottom:.25rem}.menu-group-header[data-v-002e3893]{font-weight:500}.menu-group-header.expanded[data-v-002e3893]{background:#ffffff0d}.menu-children[data-v-002e3893]{padding-left:.5rem}.menu-child[data-v-002e3893]{padding-left:2.5rem;font-size:.82rem}.menu-subgroup[data-v-002e3893]{margin-top:.25rem}.menu-subgroup-header[data-v-002e3893]{padding-left:2.5rem;font-size:.82rem;font-weight:500}.menu-subgroup-header.expanded[data-v-002e3893]{background:#ffffff0d}.menu-subchildren[data-v-002e3893]{padding-left:.5rem}.menu-subchild[data-v-002e3893]{padding-left:4rem;font-size:.78rem}.main-content[data-v-002e3893]{flex:1;display:flex;flex-direction:column;overflow:hidden}.impersonation-banner[data-v-002e3893]{display:flex;align-items:center;gap:1rem;padding:.75rem 2rem;background:var(--danger-bg);border-bottom:1px solid var(--danger-bg);color:var(--danger-text);font-size:.9rem;position:relative}.impersonation-icon[data-v-002e3893]{font-size:1.25rem;flex-shrink:0}.impersonation-text[data-v-002e3893]{flex:1;min-width:0}.impersonation-text strong[data-v-002e3893]{color:var(--danger)}.btn-impersonation-stop[data-v-002e3893]{padding:.5rem 1rem;background:var(--danger);color:#fff;border:none;border-radius:4px;font-size:.85rem;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-impersonation-stop[data-v-002e3893]:hover{background:var(--danger-hover)}.top-header[data-v-002e3893]{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 2px 4px var(--shadow);min-height:70px}.header-left[data-v-002e3893]{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.header-year-selector[data-v-002e3893]{margin-left:auto}.header-year-selector[data-v-002e3893] select{appearance:none;-webkit-appearance:none;display:flex;align-items:center;height:38px;padding:0 2rem 0 .85rem;background-color:var(--surface-hover);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%237f8c8d' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;border:1px solid var(--border);border-radius:50px;font-size:.875rem;font-weight:500;color:var(--text);cursor:pointer;transition:all .2s;white-space:nowrap}.header-year-selector[data-v-002e3893] select:hover{background-color:var(--accent-bg);border-color:var(--accent)}.header-year-selector[data-v-002e3893] select:focus{outline:none;background-color:var(--accent-bg);border-color:var(--accent);box-shadow:0 0 0 3px #667eea26}@media(max-width:1200px){.header-year-selector[data-v-002e3893]{margin-left:0}}@media(max-width:768px){.header-left[data-v-002e3893]{flex-wrap:wrap;gap:.75rem}.header-entity[data-v-002e3893]{margin-left:0;order:2}.header-year-selector[data-v-002e3893]{flex-basis:100%;order:3}}.mobile-menu-btn[data-v-002e3893]{display:none;background:transparent;border:none;font-size:1.5rem;cursor:pointer;padding:.5rem;color:var(--text)}.header-left h1[data-v-002e3893]{margin:0;font-size:1.5rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-entity[data-v-002e3893]{margin-left:1rem}.entity-badge[data-v-002e3893]{display:inline-block;padding:.5rem 1rem;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff;border-radius:20px;font-size:.85rem;font-weight:500}.header-actions[data-v-002e3893]{display:flex;align-items:center;gap:1rem;flex-shrink:0;margin-left:1.5rem;padding-left:1.5rem;border-left:1px solid var(--border)}.user-menu[data-v-002e3893]{position:relative}.user-menu-trigger[data-v-002e3893]{display:flex;align-items:center;gap:.6rem;padding:.4rem .75rem .4rem .4rem;background:var(--surface-hover);border:1px solid var(--border);border-radius:50px;cursor:pointer;transition:all .2s;font-size:.875rem;color:var(--text)}.user-menu-trigger[data-v-002e3893]:hover,.user-menu-trigger.active[data-v-002e3893]{background:var(--accent-bg);border-color:var(--accent)}.user-avatar[data-v-002e3893]{width:30px;height:30px;border-radius:50%;background:var(--violet-sombre);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.user-email-short[data-v-002e3893]{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:none}.user-menu-chevron[data-v-002e3893]{font-size:.6rem;color:var(--text-muted)}.user-menu-dropdown[data-v-002e3893]{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px var(--shadow-strong);z-index:1001;overflow:hidden}.user-menu-header[data-v-002e3893]{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--surface-alt)}.user-menu-avatar-lg[data-v-002e3893]{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;flex-shrink:0}.user-menu-info[data-v-002e3893]{flex:1;min-width:0}.user-menu-email[data-v-002e3893]{display:block;font-size:.85rem;color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-divider[data-v-002e3893]{height:1px;background:var(--border)}.user-menu-item[data-v-002e3893]{display:flex;align-items:center;gap:.75rem;width:100%;padding:.85rem 1.25rem;background:transparent;border:none;font-size:.9rem;color:var(--text);cursor:pointer;text-align:left;transition:background .15s}.user-menu-item[data-v-002e3893]:hover{background:var(--surface-hover)}.user-menu-item--danger[data-v-002e3893]{color:var(--danger)}.user-menu-item--danger[data-v-002e3893]:hover{background:var(--danger-bg)}.user-menu-item-icon[data-v-002e3893]{font-size:1.1rem}.menu-dropdown-enter-active[data-v-002e3893],.menu-dropdown-leave-active[data-v-002e3893]{transition:opacity .15s ease,transform .15s ease}.menu-dropdown-enter-from[data-v-002e3893],.menu-dropdown-leave-to[data-v-002e3893]{opacity:0;transform:translateY(-6px)}.page-content[data-v-002e3893]{flex:1;overflow-y:auto;padding:1rem;background:var(--bg)}.footer[data-v-002e3893]{padding:.75rem 1rem;background:var(--surface);border-top:1px solid var(--border)}.footer-content[data-v-002e3893]{display:flex;justify-content:space-between;align-items:center;color:var(--text-muted);font-size:.75rem;flex-wrap:wrap;gap:.5rem}.versions[data-v-002e3893]{font-family:monospace}@media(min-width:768px){.user-email-short[data-v-002e3893]{display:inline}.page-content[data-v-002e3893]{padding:1rem}.footer-content[data-v-002e3893]{font-size:.875rem}.footer[data-v-002e3893]{padding:1rem 2rem}}@media(max-width:767px){.overlay[data-v-002e3893]{display:block}.sidebar[data-v-002e3893]{position:fixed;top:0;left:0;bottom:0;transform:translate(-100%);width:280px;box-shadow:2px 0 10px #0000004d}.sidebar.mobile-open[data-v-002e3893]{transform:translate(0)}.sidebar.collapsed[data-v-002e3893]{width:280px}.mobile-menu-btn[data-v-002e3893]{display:block}.top-header[data-v-002e3893]{padding:1rem}.header-left h1[data-v-002e3893]{font-size:1.2rem}.page-content[data-v-002e3893]{padding:1rem}.footer-content[data-v-002e3893]{font-size:.7rem;justify-content:center}.copyright[data-v-002e3893],.versions[data-v-002e3893]{flex-basis:100%;text-align:center}}@media(max-width:480px){.header-left h1[data-v-002e3893]{font-size:1rem}.page-content[data-v-002e3893]{padding:.5rem}}.sidebar-header[data-v-002e3893]{display:flex;align-items:center;padding:0 12px;gap:8px;height:48px;box-sizing:border-box}.sidebar-logo[data-v-002e3893]{height:24px;width:auto;max-width:100%}.toggle-btn[data-v-002e3893]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;font-size:18px}.clickable-link[data-v-002e3893]{color:var(--accent);text-decoration:none;transition:color .2s}.clickable-link[data-v-002e3893]:hover{text-decoration:underline;color:var(--accent-hover)}.address-input[data-v-6a917c63]{margin-bottom:1rem}.search-container[data-v-6a917c63]{display:flex;gap:.5rem;position:relative}.search-input[data-v-6a917c63]{flex:1}.btn-manual[data-v-6a917c63]{padding:.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:4px;cursor:pointer;white-space:nowrap;font-size:.9rem}.btn-manual[data-v-6a917c63]:hover{background:var(--surface-alt);border-color:var(--accent)}.suggestion-item[data-v-6a917c63]{padding:.75rem;cursor:pointer;border-bottom:1px solid var(--surface-alt)}.suggestion-item[data-v-6a917c63]:last-child{border-bottom:none}.suggestion-item[data-v-6a917c63]:hover{background:var(--surface-alt)}.suggestion-label[data-v-6a917c63]{font-weight:500;color:var(--text);margin-bottom:.25rem}.suggestion-details[data-v-6a917c63]{font-size:.85rem;color:var(--text-muted);display:flex;justify-content:space-between}.suggestion-score[data-v-6a917c63]{color:var(--accent);font-weight:500}.no-results-message[data-v-6a917c63]{padding:1rem;background:var(--warning-bg);border:1px solid var(--warning);border-radius:4px;margin-top:.5rem}.no-results-message p[data-v-6a917c63]{margin:0 0 .5rem}.loading-indicator[data-v-6a917c63]{padding:.5rem;color:var(--text-muted);font-size:.9rem;text-align:center}.verified-badge[data-v-6a917c63]{display:inline-block;padding:.25rem .5rem;background:var(--success-bg);color:var(--success-text);border-radius:4px;font-size:.75rem;margin-left:.5rem;font-weight:600}.manual-mode[data-v-6a917c63]{background:var(--surface-alt);padding:1.5rem;border-radius:6px;margin-top:1rem;border:2px dashed var(--border)}.manual-header[data-v-6a917c63]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.manual-header h4[data-v-6a917c63]{margin:0;color:var(--text)}.btn-sm[data-v-6a917c63]{padding:.5rem 1rem;font-size:.875rem}.manual-actions[data-v-6a917c63]{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.address-preview[data-v-6a917c63]{background:var(--info-bg);padding:1rem;border-radius:6px;margin-top:1rem;border-left:4px solid var(--accent)}.address-preview h4[data-v-6a917c63]{margin:0 0 .75rem;color:var(--text);font-size:.9rem}.preview-content[data-v-6a917c63]{margin-bottom:1rem}.preview-label[data-v-6a917c63]{font-weight:600;color:var(--text);margin:0 0 .5rem}.preview-details[data-v-6a917c63]{display:flex;gap:1rem;font-size:.9rem;color:var(--text-muted);margin-bottom:.5rem}.preview-coordinates[data-v-6a917c63]{font-size:.85rem;color:var(--text-muted)}@media(max-width:768px){.search-container[data-v-6a917c63]{flex-direction:column}.manual-header[data-v-6a917c63]{flex-direction:column;gap:1rem;align-items:stretch}.manual-actions[data-v-6a917c63]{flex-direction:column}}.suggestions-dropdown-teleported{background:var(--surface);border:1px solid var(--border);border-radius:4px;max-height:300px;overflow-y:auto;box-shadow:0 4px 12px #00000026}.suggestions-dropdown-teleported .suggestion-item{padding:.75rem;cursor:pointer;border-bottom:1px solid var(--surface-alt)}.suggestions-dropdown-teleported .suggestion-item:last-child{border-bottom:none}.suggestions-dropdown-teleported .suggestion-item:hover{background:var(--surface-alt)}.suggestions-dropdown-teleported .suggestion-label{font-weight:500;color:var(--text);margin-bottom:.25rem;font-size:.95rem}.suggestions-dropdown-teleported .suggestion-details{font-size:.85rem;color:var(--text-muted);display:flex;justify-content:space-between}.suggestions-dropdown-teleported .suggestion-score{color:var(--accent);font-weight:500}.modal-overlay[data-v-c36f0a83]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-c36f0a83]{background:var(--surface);border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header[data-v-c36f0a83]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h2[data-v-c36f0a83]{margin:0;color:var(--text)}.btn-close[data-v-c36f0a83]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;width:30px;height:30px;line-height:1}.btn-close[data-v-c36f0a83]:hover{color:var(--text)}.modal-body[data-v-c36f0a83]{padding:1.5rem}.form-group[data-v-c36f0a83]{margin-bottom:1rem}.form-group label[data-v-c36f0a83]{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500}.form-group input[data-v-c36f0a83],.form-group select[data-v-c36f0a83],.form-group textarea[data-v-c36f0a83]{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input[data-v-c36f0a83]:focus,.form-group select[data-v-c36f0a83]:focus,.form-group textarea[data-v-c36f0a83]:focus{outline:none;border-color:var(--accent)}.form-row[data-v-c36f0a83]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.responsable-fieldset[data-v-c36f0a83]{border:1px solid var(--border);border-radius:4px;padding:1rem;margin-top:0}.responsable-fieldset legend[data-v-c36f0a83]{padding:0 .5rem;font-weight:600;color:var(--text)}.responsable-fieldset .form-row[data-v-c36f0a83]:last-child{margin-bottom:0}.input-disabled[data-v-c36f0a83]{background:var(--surface-alt)!important;color:var(--text-muted)!important;cursor:not-allowed!important;border-color:var(--border)!important}.custom-fields[data-v-c36f0a83]{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.custom-field-row[data-v-c36f0a83]{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem;align-items:center}.custom-field-key[data-v-c36f0a83],.custom-field-value[data-v-c36f0a83]{padding:.5rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem}.btn-icon-small[data-v-c36f0a83]{padding:.25rem .5rem;background:transparent;border:1px solid var(--danger);color:var(--danger);border-radius:4px;cursor:pointer;font-size:1rem}.btn-icon-small[data-v-c36f0a83]:hover{background:var(--danger-bg)}.btn-add-field[data-v-c36f0a83]{padding:.5rem 1rem;background:var(--surface-alt);border:1px dashed var(--border);border-radius:4px;cursor:pointer;font-size:.9rem;color:var(--accent);transition:all .2s}.btn-add-field[data-v-c36f0a83]:hover{background:var(--border);border-color:var(--accent)}.error-message[data-v-c36f0a83]{padding:.75rem;background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin-bottom:1rem}.modal-footer[data-v-c36f0a83]{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-secondary[data-v-c36f0a83]{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-weight:600}.btn-secondary[data-v-c36f0a83]:hover{background:var(--surface-alt)}.btn-primary[data-v-c36f0a83]{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.btn-primary[data-v-c36f0a83]:hover:not(:disabled){background:var(--accent-hover)}.btn-primary[data-v-c36f0a83]:disabled{opacity:.6;cursor:not-allowed}.address-bulk-verify-bar[data-v-0de359a6]{position:sticky;bottom:0;z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;margin:1rem 0;box-shadow:0 -2px 8px #00000014;display:flex;flex-direction:column;gap:.5rem}.bulk-summary[data-v-0de359a6]{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--surface-alt)}.summary-line[data-v-0de359a6]{display:flex;flex-wrap:wrap;gap:.75rem;flex:1}.summary-item[data-v-0de359a6]{font-size:.85rem;font-weight:600}.summary-ok[data-v-0de359a6]{color:var(--success-text)}.summary-warn[data-v-0de359a6]{color:var(--warning-text)}.summary-error[data-v-0de359a6]{color:var(--danger-text)}.review-link[data-v-0de359a6]{font-size:.85rem;color:var(--accent);text-decoration:none;white-space:nowrap}.review-link[data-v-0de359a6]:hover{text-decoration:underline}.btn-dismiss[data-v-0de359a6]{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:.9rem;line-height:1}.bulk-actions[data-v-0de359a6]{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem}.candidate-count[data-v-0de359a6],.selected-count[data-v-0de359a6]{font-size:.85rem;color:var(--text-muted)}.btn-sm[data-v-0de359a6]{padding:.4rem .9rem;font-size:.85rem}.bulk-hint[data-v-0de359a6]{font-size:.8rem;color:var(--warning-text);background:var(--warning-bg);border:1px solid var(--warning);border-radius:4px;padding:.5rem .75rem}.bulk-error[data-v-0de359a6]{font-size:.85rem;color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-bg);border-radius:4px;padding:.5rem .75rem}.confirm-modal[data-v-c0e77e9d]{max-width:500px}.modal-body p[data-v-c0e77e9d]{margin:0;color:var(--text);line-height:1.6}.badge-imported[data-v-4352c5da]{display:inline-flex;align-items:center;gap:.25rem;background:#f3e8ff;color:#7c3aed;padding:.2rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap}.header-actions[data-v-689080cf]{display:flex;gap:1rem}.results-count[data-v-689080cf]{margin:.75rem 0 0;font-size:.9rem;color:var(--text-muted)}.filters[data-v-689080cf]{display:flex;gap:1rem}.family-card[data-v-689080cf]{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;transition:all .2s}.family-card[data-v-689080cf]:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.family-select[data-v-689080cf]{display:flex;align-items:center;padding-right:.25rem;flex-shrink:0}.family-select input[data-v-689080cf]{width:1.1rem;height:1.1rem;cursor:pointer}.badge-address-review[data-v-689080cf]{display:inline-block;margin-left:.5rem;padding:.1rem .4rem;background:var(--warning-bg);color:var(--warning-text);border-radius:10px;font-size:.7rem;font-weight:700;border:1px solid var(--warning-bg)}.badge-address-review--clickable[data-v-689080cf]{cursor:pointer;font-family:inherit}.badge-address-review--clickable[data-v-689080cf]:hover{background:var(--warning-bg)}.badge-address-nomatch[data-v-689080cf]{display:inline-block;margin-left:.5rem;padding:.1rem .4rem;background:var(--danger-bg);color:var(--danger-text);border-radius:10px;font-size:.7rem;font-weight:700;border:1px solid var(--danger-bg)}.family-icon[data-v-689080cf]{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.family-info[data-v-689080cf]{flex:1;min-width:0}.family-info h3[data-v-689080cf]{margin:0 0 .5rem;color:var(--text)}.family-address[data-v-689080cf],.family-members[data-v-689080cf]{margin:.25rem 0;font-size:.9rem;color:var(--text-muted)}.family-actions[data-v-689080cf]{display:flex;gap:.5rem}.btn-danger-icon[data-v-689080cf]{color:var(--danger);border-color:var(--danger)}.btn-danger-icon[data-v-689080cf]:hover{background:var(--danger-bg);border-color:var(--danger-hover)}@media(max-width:768px){.family-card[data-v-689080cf]{flex-direction:column;text-align:center}}.help-text-inline[data-v-a1c06ddc]{font-size:.77rem;font-weight:400;color:var(--text-muted);margin-left:.4rem}.modal-overlay[data-v-a1c06ddc]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content[data-v-a1c06ddc]{background:var(--surface);border-radius:8px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto}.modal-header[data-v-a1c06ddc]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:10}.modal-header h2[data-v-a1c06ddc]{margin:0;color:var(--text)}.btn-close[data-v-a1c06ddc]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);width:30px;height:30px}.btn-close[data-v-a1c06ddc]:hover{color:var(--text)}.modal-body[data-v-a1c06ddc]{padding:1.5rem}.form-section[data-v-a1c06ddc]{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.form-section[data-v-a1c06ddc]:last-of-type{border-bottom:none}.section-subtitle[data-v-a1c06ddc]{margin:0 0 1rem;color:var(--text);font-size:1.1rem;font-weight:600}.modal-footer[data-v-a1c06ddc]{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--border);position:sticky;bottom:0;background:var(--surface)}@media(max-width:768px){.modal-content[data-v-a1c06ddc]{max-width:100%;max-height:100vh;border-radius:0}}.duplicate-warning-overlay[data-v-a1c06ddc]{background:#0009}.duplicate-warning-content[data-v-a1c06ddc]{max-width:600px;max-height:80vh}.warning-header[data-v-a1c06ddc]{background:var(--warning-bg);border-bottom:1px solid var(--warning)}.warning-header h2[data-v-a1c06ddc]{color:var(--warning-text)}.warning-message[data-v-a1c06ddc]{color:var(--text-muted);margin-bottom:1.5rem;line-height:1.5}.duplicate-list[data-v-a1c06ddc]{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto;margin-bottom:1rem}.duplicate-person-card[data-v-a1c06ddc]{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--surface-alt);border-radius:6px;cursor:pointer;transition:background .2s;border:1px solid var(--border)}.duplicate-person-card[data-v-a1c06ddc]:hover{background:var(--border);border-color:var(--accent)}.duplicate-person-info[data-v-a1c06ddc]{display:flex;flex-direction:column;gap:.25rem}.duplicate-person-email[data-v-a1c06ddc],.duplicate-person-phone[data-v-a1c06ddc]{font-size:.85rem;color:var(--text-muted)}.duplicate-person-action[data-v-a1c06ddc]{color:var(--accent);font-weight:600;font-size:.9rem;white-space:nowrap;margin-left:1rem}.warning-footer[data-v-a1c06ddc]{border-top:1px solid var(--border);padding-top:1rem;display:flex;justify-content:flex-end}.person-search-selector[data-v-bb368d20]{width:100%}.search-field[data-v-bb368d20]{width:100%;min-height:44px;padding:.75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);cursor:pointer;transition:all .2s}.search-field[data-v-bb368d20]:hover{border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.selected-person[data-v-bb368d20]{display:flex;align-items:center;gap:.75rem}.person-avatar-mini[data-v-bb368d20]{width:30px;height:30px;border-radius:50%;overflow:hidden;flex-shrink:0}.person-avatar-mini img[data-v-bb368d20]{width:100%;height:100%;object-fit:cover}.avatar-placeholder-mini[data-v-bb368d20]{width:100%;height:100%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.person-name[data-v-bb368d20]{flex:1;color:var(--text);font-weight:500}.btn-clear[data-v-bb368d20]{width:24px;height:24px;border-radius:50%;background:var(--danger);color:#fff;border:none;cursor:pointer;font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-clear[data-v-bb368d20]:hover{background:var(--danger-hover)}.btn-create-person[data-v-bb368d20]{margin-top:1rem;padding:.6rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .2s}.btn-create-person[data-v-bb368d20]:hover{background:var(--accent-hover)}.search-placeholder[data-v-bb368d20]{color:var(--text-muted)}.search-modal[data-v-bb368d20]{max-width:800px;max-height:85vh}.btn-toggle-filters[data-v-bb368d20]{width:100%;padding:.5rem;background:var(--surface-alt);border:1px solid var(--border);border-radius:4px;cursor:pointer;text-align:left;margin-top:.5rem;font-weight:500;transition:all .2s}.btn-toggle-filters[data-v-bb368d20]:hover{background:var(--border)}.advanced-filters[data-v-bb368d20]{margin-top:1rem;padding:1rem;background:var(--surface-alt);border-radius:6px}.filter-row[data-v-bb368d20]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.filter-group label[data-v-bb368d20]{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500;font-size:.9rem}.filter-group select[data-v-bb368d20]{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem}.loading-state[data-v-bb368d20],.no-results[data-v-bb368d20],.initial-state[data-v-bb368d20]{padding:3rem 2rem;text-align:center;color:var(--text-muted)}.loading-spinner[data-v-bb368d20]{display:inline-block;width:40px;height:40px;border:4px solid var(--surface-alt);border-top:4px solid var(--accent);border-radius:50%;animation:spin-bb368d20 1s linear infinite;margin-bottom:1rem}@keyframes spin-bb368d20{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-results-icon[data-v-bb368d20],.initial-icon[data-v-bb368d20]{font-size:3rem;margin-bottom:1rem}.help-text[data-v-bb368d20]{font-size:.9rem;margin-top:.5rem}.results-section[data-v-bb368d20]{margin-top:1.5rem}.results-header[data-v-bb368d20]{padding:.75rem;background:var(--surface-alt);border-radius:6px 6px 0 0;border-bottom:2px solid var(--accent);display:flex;justify-content:space-between;align-items:center}.multi-select-count[data-v-bb368d20]{font-size:.85rem;font-weight:600;color:var(--accent);background:#eef0ff;padding:.2rem .65rem;border-radius:12px}.multi-checkbox[data-v-bb368d20]{display:flex;align-items:center;flex-shrink:0}.multi-checkbox input[type=checkbox][data-v-bb368d20]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent)}.result-item--multi[data-v-bb368d20]{cursor:pointer}.result-item--multi[data-v-bb368d20]:hover{background:var(--accent-bg)}.results-count[data-v-bb368d20]{font-weight:600;color:var(--text)}.results-list[data-v-bb368d20]{max-height:400px;overflow-y:auto;border:1px solid var(--border);border-top:none;border-radius:0 0 6px 6px}.result-item[data-v-bb368d20]{display:flex;align-items:center;gap:1rem;padding:1rem;cursor:pointer;border-bottom:1px solid var(--surface-alt);transition:all .2s}.result-item[data-v-bb368d20]:hover{background:var(--surface-alt)}.result-item.selected[data-v-bb368d20]{background:var(--info-bg);border-left:4px solid var(--accent)}.person-avatar-small[data-v-bb368d20]{width:50px;height:50px;border-radius:50%;overflow:hidden;flex-shrink:0}.person-avatar-small img[data-v-bb368d20]{width:100%;height:100%;object-fit:cover}.avatar-placeholder-small[data-v-bb368d20]{width:100%;height:100%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}.person-details[data-v-bb368d20]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.person-name-row[data-v-bb368d20]{display:flex;align-items:center;gap:.5rem}.person-name-row strong[data-v-bb368d20]{color:var(--text);font-size:1rem}.badge-inactive-mini[data-v-bb368d20]{padding:.125rem .5rem;background:var(--danger-bg);color:var(--danger-text);border-radius:10px;font-size:.75rem;font-weight:600}.person-info-row[data-v-bb368d20]{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem}.info-item[data-v-bb368d20]{color:var(--text-muted)}.person-number[data-v-bb368d20]{font-family:monospace;font-size:.85rem}.role-badge[data-v-bb368d20]{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.select-indicator[data-v-bb368d20]{width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}.pagination[data-v-bb368d20]{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem;background:var(--surface-alt)}@media(max-width:768px){.search-modal[data-v-bb368d20]{max-width:100%;max-height:100vh;border-radius:0}.filter-row[data-v-bb368d20]{grid-template-columns:1fr}.person-info-row[data-v-bb368d20]{flex-direction:column;gap:.25rem}.clickable-link[data-v-bb368d20]{color:var(--accent);text-decoration:none;transition:color .2s}.clickable-link[data-v-bb368d20]:hover{text-decoration:underline;color:var(--accent-hover)}}.modal-overlay[data-v-624b6297]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-624b6297]{background:var(--surface);border-radius:8px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header[data-v-624b6297]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h2[data-v-624b6297]{margin:0;color:var(--text)}.btn-close[data-v-624b6297]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;width:30px;height:30px;line-height:1}.btn-close[data-v-624b6297]:hover{color:var(--text)}.modal-body[data-v-624b6297]{padding:1.5rem}.mode-selector[data-v-624b6297]{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.5rem}.mode-btn[data-v-624b6297]{padding:.75rem;background:var(--surface);border:2px solid var(--border);border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.mode-btn[data-v-624b6297]:hover{border-color:var(--accent);background:var(--surface-alt)}.mode-btn.active[data-v-624b6297]{background:var(--accent);color:#fff;border-color:var(--accent)}.new-person-section[data-v-624b6297]{padding:1rem;background:var(--surface-alt);border-radius:6px;margin-bottom:1rem}.form-row[data-v-624b6297]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group[data-v-624b6297]{margin-bottom:1rem}.form-group label[data-v-624b6297]{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500}.form-group input[data-v-624b6297],.form-group select[data-v-624b6297],.form-group textarea[data-v-624b6297]{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input[data-v-624b6297]:focus,.form-group select[data-v-624b6297]:focus,.form-group textarea[data-v-624b6297]:focus{outline:none;border-color:var(--accent)}.help-text[data-v-624b6297]{margin:.5rem 0 0;font-size:.85rem;color:var(--text-muted);font-style:italic}.error-message[data-v-624b6297]{padding:.75rem;background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin-bottom:1rem}.modal-footer[data-v-624b6297]{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-secondary[data-v-624b6297]{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-weight:600}.btn-secondary[data-v-624b6297]:hover{background:var(--surface-alt)}.btn-primary[data-v-624b6297]{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.btn-primary[data-v-624b6297]:hover:not(:disabled){background:var(--accent-hover)}.btn-primary[data-v-624b6297]:disabled{opacity:.6;cursor:not-allowed}.form-group-checkbox[data-v-624b6297]{margin-bottom:1rem}.checkbox-label[data-v-624b6297]{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox][data-v-624b6297]{width:1.1rem;height:1.1rem;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.checkbox-label span[data-v-624b6297]{color:var(--text);font-size:.95rem}.checkbox-label small[data-v-624b6297]{display:block;color:var(--text-muted);font-size:.8rem;margin-top:.1rem}@media(max-width:768px){.form-row[data-v-624b6297],.mode-selector[data-v-624b6297]{grid-template-columns:1fr}}.modal-overlay[data-v-942ada0e]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-942ada0e]{background:var(--surface);border-radius:8px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header[data-v-942ada0e]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h2[data-v-942ada0e]{margin:0;color:var(--text)}.btn-close[data-v-942ada0e]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;width:30px;height:30px;line-height:1}.btn-close[data-v-942ada0e]:hover{color:var(--text)}.modal-body[data-v-942ada0e]{padding:1.5rem}.member-recap[data-v-942ada0e]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--surface-alt);border-radius:6px;margin-bottom:1.25rem}.member-recap-avatar[data-v-942ada0e]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.member-recap-info[data-v-942ada0e]{display:flex;flex-direction:column;gap:.1rem}.member-recap-info strong[data-v-942ada0e]{color:var(--text);font-size:.95rem}.member-recap-sub[data-v-942ada0e]{font-size:.82rem;color:var(--text-muted)}.form-group[data-v-942ada0e]{margin-bottom:1rem}.form-group label[data-v-942ada0e]{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500}.form-group select[data-v-942ada0e],.form-group textarea[data-v-942ada0e]{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group select[data-v-942ada0e]:focus,.form-group textarea[data-v-942ada0e]:focus{outline:none;border-color:var(--accent)}.form-group-checkbox[data-v-942ada0e]{margin-bottom:1rem}.checkbox-label[data-v-942ada0e]{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox][data-v-942ada0e]{width:1.1rem;height:1.1rem;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:2px}.checkbox-label span[data-v-942ada0e]{color:var(--text);font-size:.95rem}.checkbox-label small[data-v-942ada0e]{display:block;color:var(--text-muted);font-size:.8rem;margin-top:.1rem}.error-message[data-v-942ada0e]{padding:.75rem;background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin-bottom:1rem;font-size:.9rem}.modal-footer[data-v-942ada0e]{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-secondary[data-v-942ada0e]{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-weight:600}.btn-secondary[data-v-942ada0e]:hover{background:var(--surface-alt)}.btn-primary[data-v-942ada0e]{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.btn-primary[data-v-942ada0e]:hover:not(:disabled){background:var(--accent-hover)}.btn-primary[data-v-942ada0e]:disabled{opacity:.6;cursor:not-allowed}.clickable-link[data-v-942ada0e]{color:var(--accent);text-decoration:none;transition:color .2s}.clickable-link[data-v-942ada0e]:hover{text-decoration:underline;color:var(--accent-hover)}.modal-overlay[data-v-a01e4dc4]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-a01e4dc4]{background:var(--surface);border-radius:8px;width:100%;max-width:1000px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003}.modal-header[data-v-a01e4dc4]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h2[data-v-a01e4dc4]{margin:0;color:var(--text)}.btn-close[data-v-a01e4dc4]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;width:30px;height:30px;line-height:1}.btn-close[data-v-a01e4dc4]:hover{color:var(--text)}.modal-body[data-v-a01e4dc4]{padding:1.5rem;overflow-y:auto;flex:1}.search-section[data-v-a01e4dc4]{margin-bottom:1.5rem}.search-bar[data-v-a01e4dc4]{display:flex;gap:.5rem;margin-bottom:1rem}.search-input[data-v-a01e4dc4]{flex:1;padding:.75rem;border:1px solid var(--border);border-radius:6px;font-size:1rem}.search-input[data-v-a01e4dc4]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.btn-search[data-v-a01e4dc4]{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;white-space:nowrap;font-weight:600}.btn-search[data-v-a01e4dc4]:hover{background:var(--accent-hover)}.toolbar[data-v-a01e4dc4]{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.sort-group[data-v-a01e4dc4]{display:flex;align-items:center;gap:.5rem}.sort-group label[data-v-a01e4dc4]{font-size:.9rem;color:var(--text-muted);font-weight:500}.sort-select[data-v-a01e4dc4]{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem;background:var(--surface);cursor:pointer}.sort-select[data-v-a01e4dc4]:focus{outline:none;border-color:var(--accent)}.btn-toggle-filters[data-v-a01e4dc4]{padding:.5rem 1rem;background:var(--surface-alt);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:.9rem;color:var(--accent);transition:all .2s}.btn-toggle-filters[data-v-a01e4dc4]:hover,.btn-toggle-filters.active[data-v-a01e4dc4]{background:var(--accent);color:#fff;border-color:var(--accent)}.advanced-filters[data-v-a01e4dc4]{background:var(--surface-alt);padding:1rem;border-radius:6px;margin-top:1rem}.filter-row[data-v-a01e4dc4]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.filter-group[data-v-a01e4dc4]{display:flex;flex-direction:column;gap:.5rem}.filter-group label[data-v-a01e4dc4]{font-size:.85rem;color:var(--text-muted);font-weight:500}.filter-group input[data-v-a01e4dc4]{padding:.5rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem}.filter-group input[data-v-a01e4dc4]:focus{outline:none;border-color:var(--accent)}.loading-small[data-v-a01e4dc4]{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;color:var(--text-muted)}.loading-spinner[data-v-a01e4dc4]{width:30px;height:30px;border:3px solid var(--surface-alt);border-top:3px solid var(--accent);border-radius:50%;animation:spin-a01e4dc4 1s linear infinite}@keyframes spin-a01e4dc4{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-results-small[data-v-a01e4dc4]{text-align:center;padding:2rem;color:var(--text-muted)}.initial-message[data-v-a01e4dc4]{text-align:center;padding:3rem 2rem;color:var(--text-muted);background:var(--surface-alt);border-radius:8px;font-size:.95rem}.families-container[data-v-a01e4dc4]{display:grid;grid-template-columns:1fr 400px;gap:1rem}.families-list[data-v-a01e4dc4]{display:flex;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto;padding-right:.5rem}.family-item[data-v-a01e4dc4]{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:var(--surface-alt);border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s}.family-item[data-v-a01e4dc4]:hover{background:var(--border);border-color:var(--accent)}.family-item.selected[data-v-a01e4dc4]{background:var(--info-bg);border-color:var(--accent)}.family-icon-small[data-v-a01e4dc4]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.family-details[data-v-a01e4dc4]{flex:1;min-width:0}.family-name[data-v-a01e4dc4]{font-weight:600;color:var(--text);margin-bottom:.25rem;font-size:1.05rem}.family-meta[data-v-a01e4dc4]{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem}.family-number[data-v-a01e4dc4]{font-family:monospace;font-size:.85rem;color:var(--text-muted)}.meta-item[data-v-a01e4dc4]{font-size:.85rem;color:var(--text-muted)}.members-preview[data-v-a01e4dc4]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.member-chip-small[data-v-a01e4dc4]{padding:.25rem .5rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;font-size:.75rem;color:var(--accent)}.more-members[data-v-a01e4dc4]{padding:.25rem .5rem;background:var(--surface);border:1px solid var(--accent);border-radius:12px;font-size:.75rem;color:var(--accent);font-weight:600}.family-actions[data-v-a01e4dc4]{display:flex;flex-direction:column;align-items:center;gap:.5rem}.btn-icon-mini[data-v-a01e4dc4]{padding:.25rem .5rem;background:var(--surface);border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s}.btn-icon-mini[data-v-a01e4dc4]:hover{background:var(--accent);border-color:var(--accent);transform:scale(1.1)}.selected-icon[data-v-a01e4dc4]{color:var(--accent);font-size:1.5rem;font-weight:700}.family-preview[data-v-a01e4dc4]{background:var(--surface);border:2px solid var(--accent);border-radius:8px;overflow:hidden;max-height:500px;display:flex;flex-direction:column}.preview-header[data-v-a01e4dc4]{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff}.preview-header h3[data-v-a01e4dc4]{margin:0;font-size:1.1rem}.btn-close-preview[data-v-a01e4dc4]{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .2s}.btn-close-preview[data-v-a01e4dc4]:hover{background:#ffffff4d}.preview-content[data-v-a01e4dc4]{padding:1rem;overflow-y:auto;flex:1}.preview-section[data-v-a01e4dc4]{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.preview-section[data-v-a01e4dc4]:last-child{border-bottom:none}.preview-title[data-v-a01e4dc4]{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;margin-bottom:.5rem}.preview-icon[data-v-a01e4dc4]{font-size:1.5rem}.preview-label[data-v-a01e4dc4]{font-size:.85rem;color:var(--text-muted);font-weight:600;margin-bottom:.5rem}.preview-value[data-v-a01e4dc4]{color:var(--text);line-height:1.5}.preview-value.notes[data-v-a01e4dc4]{background:var(--surface-alt);padding:.75rem;border-radius:4px;white-space:pre-wrap}.preview-dates[data-v-a01e4dc4]{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem;color:var(--text-muted)}.members-detailed[data-v-a01e4dc4]{display:flex;flex-direction:column;gap:.5rem}.member-detailed[data-v-a01e4dc4]{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:var(--surface-alt);border-radius:6px}.member-avatar-preview[data-v-a01e4dc4]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.member-info-preview[data-v-a01e4dc4]{flex:1;display:flex;flex-direction:column;gap:.25rem}.member-info-preview strong[data-v-a01e4dc4]{color:var(--text);font-size:.9rem}.member-role-badge[data-v-a01e4dc4]{display:inline-block;padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.member-name-row[data-v-a01e4dc4]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.badge-responsable[data-v-a01e4dc4]{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .5rem;background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning);border-radius:12px;font-size:.7rem;font-weight:600;white-space:nowrap}.custom-fields-preview[data-v-a01e4dc4]{display:flex;flex-direction:column;gap:.5rem}.custom-field-item[data-v-a01e4dc4]{display:flex;gap:.5rem;font-size:.9rem}.field-key[data-v-a01e4dc4]{color:var(--text-muted);font-weight:500}.field-value[data-v-a01e4dc4]{color:var(--text)}.preview-actions[data-v-a01e4dc4]{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-select-preview[data-v-a01e4dc4]{width:100%;padding:.75rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .2s}.btn-select-preview[data-v-a01e4dc4]:hover{background:var(--accent-hover)}.btn-select-preview.selected[data-v-a01e4dc4]{background:var(--success)}.badge[data-v-a01e4dc4]{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.badge-active[data-v-a01e4dc4]{background:var(--success-bg);color:var(--success-text)}.badge-inactive[data-v-a01e4dc4]{background:var(--danger-bg);color:var(--danger-text)}.pagination-small[data-v-a01e4dc4]{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.btn-pagination-small[data-v-a01e4dc4]{padding:.5rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-pagination-small[data-v-a01e4dc4]:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.btn-pagination-small[data-v-a01e4dc4]:disabled{opacity:.5;cursor:not-allowed}.page-info-small[data-v-a01e4dc4]{color:var(--text-muted);font-size:.9rem}.modal-footer[data-v-a01e4dc4]{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border)}.btn-secondary[data-v-a01e4dc4]{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-weight:600}.btn-secondary[data-v-a01e4dc4]:hover{background:var(--surface-alt)}.btn-primary[data-v-a01e4dc4]{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.btn-primary[data-v-a01e4dc4]:hover:not(:disabled){background:var(--accent-hover)}.btn-primary[data-v-a01e4dc4]:disabled{opacity:.6;cursor:not-allowed}@media(max-width:1024px){.families-container[data-v-a01e4dc4]{grid-template-columns:1fr}.family-preview[data-v-a01e4dc4]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:500px;max-height:80vh;z-index:1001;box-shadow:0 10px 40px #0000004d}}@media(max-width:768px){.filter-row[data-v-a01e4dc4]{grid-template-columns:1fr}.search-bar[data-v-a01e4dc4]{flex-direction:column}.toolbar[data-v-a01e4dc4],.sort-group[data-v-a01e4dc4]{flex-direction:column;align-items:stretch}}.payment-modal[data-v-248e8640]{width:540px;max-width:96vw}.modal-title-row[data-v-248e8640]{display:flex;align-items:center;gap:.75rem}.modal-title-icon[data-v-248e8640]{font-size:1.4rem}.invoice-recap[data-v-248e8640]{background:var(--surface-alt);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.25rem;border:1px solid var(--border)}.recap-row[data-v-248e8640]{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0}.recap-row+.recap-row[data-v-248e8640]{border-top:1px solid var(--border)}.recap-balance[data-v-248e8640]{font-weight:700;padding-top:.5rem;margin-top:.25rem}.recap-label[data-v-248e8640]{color:var(--text-muted);font-size:.875rem}.recap-value[data-v-248e8640]{font-weight:600;color:var(--text)}.amount-paid[data-v-248e8640]{color:var(--success)}.amount-balance[data-v-248e8640]{color:var(--danger);font-size:1.05rem}.balance-ok .amount-balance[data-v-248e8640]{color:var(--success)}.methods-grid[data-v-248e8640]{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.method-card[data-v-248e8640]{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.75rem .5rem;border:2px solid var(--border);border-radius:8px;cursor:pointer;transition:all .15s;text-align:center;background:var(--surface)}.method-card input[data-v-248e8640]{display:none}.method-card[data-v-248e8640]:hover{border-color:var(--accent);background:#f5f7ff}.method-card.active[data-v-248e8640]{border-color:var(--accent);background:#eef0fd}.method-icon[data-v-248e8640]{font-size:1.5rem}.method-label[data-v-248e8640]{font-size:.78rem;font-weight:500;color:var(--text);line-height:1.2}.amount-input-wrapper[data-v-248e8640]{position:relative}.amount-unit[data-v-248e8640]{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:var(--text-muted);font-weight:600}.amount-input-wrapper .form-input[data-v-248e8640]{padding-right:2rem}.btn-hint[data-v-248e8640]{background:none;border:none;color:var(--accent);font-size:.8rem;cursor:pointer;padding:.25rem 0;text-decoration:underline;margin-top:.25rem;display:block}.family-select-wrapper[data-v-248e8640]{display:flex;flex-direction:column;gap:.5rem}.family-selected[data-v-248e8640]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--surface-alt);border:2px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s}.family-selected[data-v-248e8640]:hover{border-color:var(--accent);background:#eef0fd}.family-select-icon[data-v-248e8640]{font-size:1.4rem}.family-select-name[data-v-248e8640]{flex:1;font-weight:600;color:var(--text);font-size:.95rem}.family-select-change[data-v-248e8640]{color:var(--accent);font-size:1rem}.btn-select-family[data-v-248e8640]{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1rem;font-size:.95rem;font-weight:500}.family-display[data-v-248e8640]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--surface-alt);border-radius:8px}.family-display-icon[data-v-248e8640]{font-size:1.4rem}.family-display-name[data-v-248e8640]{font-weight:600;color:var(--text);font-size:.95rem}.form-section[data-v-248e8640]{display:flex;flex-direction:column;gap:1rem}.form-row[data-v-248e8640]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group[data-v-248e8640]{display:flex;flex-direction:column;gap:.35rem}.form-label[data-v-248e8640]{font-size:.875rem;font-weight:600;color:var(--text)}.required[data-v-248e8640]{color:var(--danger)}.form-input[data-v-248e8640]{padding:.6rem .875rem;border:1px solid var(--border);border-radius:6px;font-size:.95rem;outline:none;transition:border-color .15s;font-family:inherit;width:100%;box-sizing:border-box}.form-input[data-v-248e8640]:focus{border-color:var(--accent);box-shadow:0 0 0 3px #667eea1f}textarea.form-input[data-v-248e8640]{resize:vertical;min-height:60px}.field-hint[data-v-248e8640]{font-size:.78rem;color:var(--text-muted)}.alert[data-v-248e8640]{padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin-bottom:.75rem}.alert-error[data-v-248e8640]{background:var(--danger-bg);color:var(--danger-hover);border:1px solid var(--danger-bg)}.alert-info[data-v-248e8640]{background:#eaf4fb;color:#1a6f9a;border:1px solid #bee5f8}.allocation-box[data-v-248e8640]{background:var(--surface-alt);border:1px solid var(--border);border-radius:8px;padding:.9rem 1rem}.allocation-toggle[data-v-248e8640]{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text);cursor:pointer}.allocation-lines[data-v-248e8640]{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.allocation-line[data-v-248e8640]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.allocation-invoice[data-v-248e8640]{font-size:.9rem;color:var(--text)}.allocation-amount[data-v-248e8640]{width:130px}.allocation-amount .form-input[data-v-248e8640]{padding:.4rem 1.75rem .4rem .6rem}.allocation-remainder[data-v-248e8640]{font-size:.85rem;color:var(--warning-text);margin-top:.25rem}@media(max-width:480px){.form-row[data-v-248e8640]{grid-template-columns:1fr}.methods-grid[data-v-248e8640]{grid-template-columns:repeat(2,1fr)}}.page-header[data-v-204f25a4]{flex-wrap:wrap}.page-header h1[data-v-204f25a4]{flex:1;min-width:200px}.header-actions[data-v-204f25a4]{display:flex;gap:.75rem;flex-wrap:wrap}.family-number-badge[data-v-204f25a4]{font-family:monospace;font-size:.85rem;color:var(--text-muted);background:#f4f4f5;border-radius:6px;padding:.2rem .5rem}.alert[data-v-204f25a4]{padding:.875rem 1.25rem;border-radius:8px;margin-bottom:1rem;font-size:.95rem}.alert-success[data-v-204f25a4]{background:var(--success-bg);color:var(--success-text);border-left:4px solid #28a745}.alert-info[data-v-204f25a4]{background:var(--info-bg);color:var(--info-text);border-left:4px solid var(--info)}.alert-error[data-v-204f25a4]{background:var(--danger-bg);color:var(--danger-text);border-left:4px solid #dc3545}.mb-1[data-v-204f25a4]{margin-bottom:1rem}.modal-overlay[data-v-204f25a4]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-204f25a4]{background:var(--surface);border-radius:12px;box-shadow:0 10px 40px #0003;max-width:480px;width:100%;overflow:hidden}.manual-lines-modal .modal-header[data-v-204f25a4]{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;background:var(--warning-bg);border-bottom:1px solid var(--warning)}.modal-icon[data-v-204f25a4]{font-size:1.6rem}.manual-lines-modal .modal-header h2[data-v-204f25a4]{margin:0;font-size:1.1rem;color:var(--warning-text)}.manual-lines-modal .modal-body[data-v-204f25a4]{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.manual-lines-modal .modal-body p[data-v-204f25a4]{margin:0;color:var(--text);line-height:1.5}.manual-lines-modal .modal-body .hint[data-v-204f25a4]{background:var(--surface-alt);padding:.75rem 1rem;border-radius:6px;font-size:.875rem;color:var(--text-muted)}.manual-lines-modal .modal-footer[data-v-204f25a4]{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border)}.detail-tabs[data-v-204f25a4]{display:flex;gap:.5rem;margin-bottom:1.25rem;border-bottom:1px solid var(--border)}.detail-tab[data-v-204f25a4]{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-weight:500;font-size:.95rem;color:var(--text-muted);transition:all .15s}.detail-tab[data-v-204f25a4]:hover{color:var(--accent)}.detail-tab.active[data-v-204f25a4]{color:var(--accent);border-bottom-color:var(--accent)}.family-content[data-v-204f25a4]{display:flex;flex-direction:column;gap:2rem}.notes-content[data-v-204f25a4]{color:var(--text);line-height:1.6;white-space:pre-wrap;margin:0}.members-list[data-v-204f25a4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.member-card[data-v-204f25a4]{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--surface-alt);border-radius:6px;transition:all .2s}.member-card[data-v-204f25a4]:hover{background:var(--border)}.member-avatar[data-v-204f25a4]{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.member-info[data-v-204f25a4]{flex:1;display:flex;flex-direction:column;gap:.25rem}.member-name[data-v-204f25a4]{font-weight:500;color:var(--text)}.member-role[data-v-204f25a4]{font-size:.85rem;color:var(--text-muted)}.member-name-row[data-v-204f25a4]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.badge-responsable[data-v-204f25a4]{display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .5rem;background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning);border-radius:12px;font-size:.72rem;font-weight:600;white-space:nowrap}.pending-requests-section[data-v-204f25a4]{border:1px solid var(--warning-bg);background:var(--warning-bg)}.pending-request-list[data-v-204f25a4]{display:flex;flex-direction:column;gap:.6rem}.pending-request-card[data-v-204f25a4]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .9rem;background:var(--surface);border-radius:6px;border:1px solid var(--warning-bg);flex-wrap:wrap}.pending-request-info[data-v-204f25a4]{color:var(--warning-text);font-size:.9rem}.pending-request-actions[data-v-204f25a4]{display:flex;gap:.5rem}.section-header-with-action[data-v-204f25a4]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.btn-sm[data-v-204f25a4]{padding:.5rem 1rem;font-size:.9rem}.btn-danger-icon[data-v-204f25a4]{color:var(--danger);border-color:var(--danger);padding:.25rem .5rem}.btn-danger-icon[data-v-204f25a4]:hover{background:var(--danger-bg);border-color:var(--danger-hover)}.data-table-wrapper[data-v-204f25a4]{overflow-x:auto}.data-table[data-v-204f25a4]{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th[data-v-204f25a4],.data-table td[data-v-204f25a4]{padding:.65rem .9rem;text-align:left;border-bottom:1px solid var(--surface-alt);white-space:nowrap}.data-table thead th[data-v-204f25a4]{background:var(--surface-alt);font-weight:600;color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.data-table tbody tr[data-v-204f25a4]:hover{background:#f5f8ff}.data-table tfoot .total-row td[data-v-204f25a4]{border-top:2px solid var(--accent);padding-top:.75rem;font-size:.95rem}.text-right[data-v-204f25a4]{text-align:right}.text-center[data-v-204f25a4]{text-align:center}.fw-600[data-v-204f25a4]{font-weight:600}.text-muted[data-v-204f25a4]{color:var(--text-muted);font-style:italic}.row-actions[data-v-204f25a4]{display:flex;gap:.35rem;justify-content:center}.btn-link[data-v-204f25a4]{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.85rem;padding:0;text-decoration:underline}.btn-link[data-v-204f25a4]:hover{color:var(--accent-hover)}.sub-loading[data-v-204f25a4]{padding:1rem;color:var(--text-muted);font-style:italic;font-size:.9rem}.empty-state[data-v-204f25a4]{padding:1.25rem;color:var(--text-muted);font-style:italic;background:var(--surface-alt);border-radius:6px;font-size:.9rem}.badge-warning[data-v-204f25a4]{background:var(--warning-bg);color:var(--warning-text)}.badge-danger[data-v-204f25a4]{background:var(--danger-bg);color:var(--danger-text)}.badge-secondary[data-v-204f25a4]{background:#e2e3e5;color:#383d41}.badge-info[data-v-204f25a4]{background:var(--info-bg);color:var(--info-text)}.balance-summary[data-v-204f25a4]{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem}.balance-badge[data-v-204f25a4]{display:flex;flex-direction:column;gap:.15rem;padding:.75rem 1.25rem;border-radius:8px;min-width:180px}.balance-label[data-v-204f25a4]{font-size:.85rem;font-weight:600;opacity:.85}.balance-amount[data-v-204f25a4]{font-size:1.4rem;font-weight:700}.balance-due[data-v-204f25a4]{background:var(--danger-bg);color:var(--danger-text)}.balance-credit[data-v-204f25a4],.balance-clear[data-v-204f25a4]{background:var(--success-bg);color:var(--success-text)}.balance-details[data-v-204f25a4]{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem;color:var(--text-muted)}.payment-status-details[data-v-204f25a4]{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;font-size:.9rem;color:var(--text-muted);margin-top:.5rem}.alert-warning[data-v-204f25a4]{background:var(--warning-bg);color:var(--warning-text);border-left:4px solid var(--warning);padding:.875rem 1.25rem;border-radius:8px;margin-bottom:1rem}.warning-list[data-v-204f25a4]{margin:.5rem 0 0 1.25rem;padding:0}.warning-list li[data-v-204f25a4]{margin-bottom:.25rem;font-size:.9rem}.address-check-row[data-v-204f25a4]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.method-chip[data-v-204f25a4]{display:inline-block;padding:.2rem .6rem;border-radius:10px;font-size:.82rem;font-weight:500}.form-section[data-v-bea7fe58]{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}.form-section[data-v-bea7fe58]:last-of-type{border-bottom:none}.custom-fields[data-v-bea7fe58]{display:flex;flex-direction:column;gap:.75rem}.custom-field-row[data-v-bea7fe58]{display:grid;grid-template-columns:1fr 1fr auto;gap:.75rem;align-items:center}.custom-field-key[data-v-bea7fe58],.custom-field-value[data-v-bea7fe58]{padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem}.custom-field-key[data-v-bea7fe58]:focus,.custom-field-value[data-v-bea7fe58]:focus{outline:none;border-color:var(--accent)}.btn-danger-icon[data-v-bea7fe58]{color:var(--danger);border-color:var(--danger)}.btn-danger-icon[data-v-bea7fe58]:hover{background:var(--danger-bg);border-color:var(--danger-hover)}.field-hint[data-v-bea7fe58]{margin:.4rem 0 0;font-size:.8rem;color:var(--text-muted)}.modal-overlay[data-v-d456a2ec]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-d456a2ec]{background:var(--surface);border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header[data-v-d456a2ec]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h2[data-v-d456a2ec]{margin:0;color:var(--text)}.btn-close[data-v-d456a2ec]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;width:30px;height:30px;line-height:1}.btn-close[data-v-d456a2ec]:hover{color:var(--text)}.modal-body[data-v-d456a2ec]{padding:1.5rem}.form-row[data-v-d456a2ec]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group[data-v-d456a2ec]{margin-bottom:1rem}.form-group label[data-v-d456a2ec]{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500}.form-group input[data-v-d456a2ec],.form-group select[data-v-d456a2ec],.form-group textarea[data-v-d456a2ec]{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;box-sizing:border-box}.form-group input[data-v-d456a2ec]:focus,.form-group select[data-v-d456a2ec]:focus,.form-group textarea[data-v-d456a2ec]:focus{outline:none;border-color:var(--accent)}.color-input-group[data-v-d456a2ec]{display:flex;gap:.5rem;align-items:center}.color-picker[data-v-d456a2ec]{width:60px;height:44px;padding:.25rem;cursor:pointer}.checkbox-label[data-v-d456a2ec]{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type=checkbox][data-v-d456a2ec]{width:auto;cursor:pointer}.error-message[data-v-d456a2ec]{padding:.75rem;background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin-bottom:1rem}.modal-footer[data-v-d456a2ec]{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border)}.btn-secondary[data-v-d456a2ec]{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-weight:600}.btn-secondary[data-v-d456a2ec]:hover{background:var(--surface-alt)}.btn-primary[data-v-d456a2ec]{padding:.75rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.btn-primary[data-v-d456a2ec]:hover:not(:disabled){background:var(--accent-hover)}.btn-primary[data-v-d456a2ec]:disabled{opacity:.6;cursor:not-allowed}.availability-section[data-v-d456a2ec]{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.help-text[data-v-d456a2ec]{margin:.25rem 0 .75rem;font-size:.875rem;color:var(--text-muted)}.availability-editor[data-v-d456a2ec]{display:flex;flex-direction:column;gap:.5rem}.avail-empty[data-v-d456a2ec]{padding:.75rem 1rem;background:var(--surface-alt);border-radius:6px;color:var(--text-muted);font-style:italic;font-size:.9rem;border:1px dashed var(--border);text-align:center}.avail-row[data-v-d456a2ec]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.5rem;background:var(--surface-alt);border-radius:6px;border:1px solid var(--border)}.avail-select[data-v-d456a2ec]{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem;background:var(--surface);min-width:110px}.avail-time[data-v-d456a2ec]{padding:.5rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem;font-family:monospace;width:90px;background:var(--surface)}.avail-sep[data-v-d456a2ec]{color:var(--text-muted);font-weight:600}.avail-notes[data-v-d456a2ec]{flex:1;min-width:120px;padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;font-size:.875rem;background:var(--surface)}.avail-notes[data-v-d456a2ec]::placeholder{color:#bdc3c7}.btn-icon-small[data-v-d456a2ec]{padding:.35rem .5rem;background:transparent;border:1px solid var(--danger);color:var(--danger);border-radius:4px;cursor:pointer;font-size:1rem;flex-shrink:0}.btn-icon-small[data-v-d456a2ec]:hover{background:var(--danger-bg)}.btn-sm[data-v-d456a2ec]{padding:.5rem 1rem;font-size:.875rem}.avail-add-btn[data-v-d456a2ec]{align-self:flex-start;margin-top:.25rem}.avail-error[data-v-d456a2ec]{color:var(--danger);font-size:.875rem;background:var(--danger-bg);padding:.5rem .75rem;border-radius:4px;border-left:3px solid var(--danger);margin:0}@media(max-width:768px){.form-row[data-v-d456a2ec]{grid-template-columns:1fr}.avail-row[data-v-d456a2ec]{gap:.4rem}.avail-select[data-v-d456a2ec]{min-width:unset;width:100%}.avail-time[data-v-d456a2ec]{width:80px}.avail-notes[data-v-d456a2ec]{min-width:unset;width:100%}}.room-card[data-v-517c99ae]{background:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;transition:all .2s;overflow:hidden}.room-card[data-v-517c99ae]:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.room-color[data-v-517c99ae]{height:8px;width:100%}.room-content[data-v-517c99ae]{padding:1.5rem}.room-header[data-v-517c99ae]{display:flex;justify-content:space-between;align-items:start;margin-bottom:.5rem}.room-header h3[data-v-517c99ae]{margin:0;color:var(--text);font-size:1.25rem}.room-number[data-v-517c99ae]{background:var(--info-bg);color:var(--info);padding:.25rem .75rem;border-radius:4px;font-size:.875rem;font-weight:600}.room-description[data-v-517c99ae]{color:var(--text-muted);margin:.5rem 0;font-size:.9rem}.room-details[data-v-517c99ae]{display:flex;gap:1rem;margin:.75rem 0}.detail-item[data-v-517c99ae]{font-size:.875rem;color:var(--text-muted);display:flex;align-items:center;gap:.25rem}.room-equipment[data-v-517c99ae]{color:var(--text-muted);margin:.5rem 0 0;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results-count[data-v-517c99ae]{margin:-.5rem 0 1rem;font-size:.9rem;color:var(--text-muted)}.inactive-toggle[data-v-517c99ae]{display:flex;align-items:center;gap:.4rem;margin-top:.6rem;font-size:.9rem;color:#5a6673;cursor:pointer}@media(max-width:768px){.room-header[data-v-517c99ae]{flex-direction:column;gap:.5rem}.room-details[data-v-517c99ae]{flex-direction:column;gap:.25rem}}.settings-container[data-v-7cc7ac2a]{display:flex;height:100%;background:var(--surface-hover)}.settings-content[data-v-7cc7ac2a]{flex:1;overflow-y:auto;padding:2rem}@media(max-width:768px){.settings-container[data-v-7cc7ac2a]{flex-direction:column}.settings-content[data-v-7cc7ac2a]{padding:1rem}}.finance-container[data-v-1e5c2d4c]{display:flex;height:100%;background:var(--surface-hover)}.finance-content[data-v-1e5c2d4c]{flex:1;overflow-y:auto;padding:2rem}@media(max-width:768px){.finance-container[data-v-1e5c2d4c]{flex-direction:column}.finance-content[data-v-1e5c2d4c]{padding:1rem}}.email-view[data-v-a4e8f2d3]{height:100%;display:flex;flex-direction:column}.email-layout[data-v-a4e8f2d3]{display:flex;flex:1;overflow:hidden;gap:0;background:#f7f8fc}.email-blocked[data-v-a4e8f2d3]{display:flex;align-items:center;justify-content:center;flex:1}.blocked-card[data-v-a4e8f2d3]{text-align:center;max-width:440px;padding:2.5rem;background:var(--surface);border-radius:12px;box-shadow:0 2px 16px #0001}.blocked-icon[data-v-a4e8f2d3]{font-size:3rem;margin-bottom:1rem}.email-loading[data-v-a4e8f2d3]{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:1rem;color:var(--text-muted)}.email-sidebar[data-v-a4e8f2d3]{width:200px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:1rem .75rem;gap:.5rem}.btn-compose[data-v-a4e8f2d3]{width:100%;padding:.6rem;background:var(--accent);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:.875rem}.btn-compose[data-v-a4e8f2d3]:hover{background:#3451d1}.folder-nav[data-v-a4e8f2d3]{display:flex;flex-direction:column;gap:2px;margin-top:.5rem}.folder-item[data-v-a4e8f2d3]{display:flex;align-items:center;gap:.5rem;padding:.5rem .6rem;border:none;background:none;border-radius:6px;cursor:pointer;font-size:.875rem;width:100%;text-align:left;color:var(--text)}.folder-item[data-v-a4e8f2d3]:hover{background:var(--accent-bg)}.folder-item.active[data-v-a4e8f2d3]{background:#ebefff;color:var(--accent);font-weight:600}.folder-badge[data-v-a4e8f2d3]{margin-left:auto;background:var(--accent);color:#fff;border-radius:10px;font-size:.7rem;padding:1px 6px}.sidebar-from[data-v-a4e8f2d3]{margin-top:auto;padding-top:.75rem;border-top:1px solid var(--border);font-size:.75rem}.from-label[data-v-a4e8f2d3]{display:block;color:var(--text-muted);margin-bottom:2px}.from-value[data-v-a4e8f2d3]{color:var(--text-muted);word-break:break-all}.email-list-panel[data-v-a4e8f2d3]{width:300px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.email-list-panel.collapsed[data-v-a4e8f2d3]{width:0;overflow:hidden;flex-shrink:1}.list-toolbar[data-v-a4e8f2d3]{display:flex;gap:.5rem;padding:.75rem;border-bottom:1px solid var(--border)}.search-wrap[data-v-a4e8f2d3]{flex:1;display:flex;align-items:center;gap:.4rem;background:var(--surface-hover);border-radius:6px;padding:.35rem .6rem}.search-input[data-v-a4e8f2d3]{border:none;background:none;outline:none;width:100%;font-size:.875rem}.btn-refresh[data-v-a4e8f2d3]{background:none;border:1px solid var(--border);border-radius:6px;padding:.35rem .5rem;cursor:pointer}.btn-refresh[data-v-a4e8f2d3]:disabled{opacity:.5}.spinning[data-v-a4e8f2d3]{display:inline-block;animation:spin-a4e8f2d3 .8s linear infinite}@keyframes spin-a4e8f2d3{to{transform:rotate(360deg)}}.list-empty[data-v-a4e8f2d3]{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:.5rem;color:var(--text-muted);font-size:.875rem}.list-loading[data-v-a4e8f2d3]{display:flex;align-items:center;gap:.5rem;padding:1rem;color:var(--text-muted);font-size:.875rem}.imap-error[data-v-a4e8f2d3]{margin:.75rem;padding:.75rem;background:#fff3f3;border-radius:8px;display:flex;gap:.5rem;align-items:flex-start;font-size:.875rem}.imap-error strong[data-v-a4e8f2d3]{display:block}.imap-error p[data-v-a4e8f2d3]{margin:4px 0 0;color:var(--text-muted);font-size:.8rem}.btn-retry[data-v-a4e8f2d3]{margin-left:auto;padding:.3rem .7rem;border:1px solid var(--danger);background:none;color:var(--danger);border-radius:5px;cursor:pointer;font-size:.8rem}.email-list[data-v-a4e8f2d3]{flex:1;overflow-y:auto}.email-item[data-v-a4e8f2d3]{padding:.75rem 1rem;border-bottom:1px solid var(--surface-alt);cursor:pointer;transition:background .1s}.email-item[data-v-a4e8f2d3]:hover{background:#f7f8ff}.email-item.active[data-v-a4e8f2d3]{background:#ebefff}.email-item.unread .email-from[data-v-a4e8f2d3],.email-item.unread .email-subject[data-v-a4e8f2d3]{font-weight:700}.email-item-header[data-v-a4e8f2d3]{display:flex;justify-content:space-between;margin-bottom:2px}.email-from[data-v-a4e8f2d3]{font-size:.875rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.email-date[data-v-a4e8f2d3]{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.email-subject[data-v-a4e8f2d3]{font-size:.82rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-item-meta[data-v-a4e8f2d3]{display:flex;align-items:center;gap:.4rem;margin-top:3px}.meta-att[data-v-a4e8f2d3]{font-size:.75rem}.unread-dot[data-v-a4e8f2d3]{width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:auto}.email-detail-panel[data-v-a4e8f2d3]{flex:1;overflow:hidden;display:flex;flex-direction:column;background:var(--surface)}.email-placeholder[data-v-a4e8f2d3]{flex:1;display:flex;align-items:center;justify-content:center;background:#f7f8fc}.placeholder-inner[data-v-a4e8f2d3]{text-align:center;color:var(--text-muted)}.placeholder-icon[data-v-a4e8f2d3]{font-size:3rem}.email-read[data-v-a4e8f2d3]{flex:1;display:flex;flex-direction:column;overflow:hidden}.read-toolbar[data-v-a4e8f2d3]{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-bottom:1px solid var(--border);background:var(--surface-alt)}.read-toolbar-right[data-v-a4e8f2d3]{margin-left:auto}.btn-icon[data-v-a4e8f2d3]{background:none;border:1px solid var(--border);border-radius:5px;padding:.3rem .7rem;cursor:pointer;font-size:.8rem}.btn-icon[data-v-a4e8f2d3]:hover{background:var(--surface-alt)}.btn-toggle-view[data-v-a4e8f2d3]{background:none;border:1px solid var(--accent);color:var(--accent);border-radius:5px;padding:.25rem .7rem;cursor:pointer;font-size:.78rem}.btn-outline[data-v-a4e8f2d3]{background:transparent;border:1px solid var(--primary, var(--accent));color:var(--primary, var(--accent));border-radius:6px;padding:.45rem 1rem;cursor:pointer;font-size:.875rem}.btn-outline[data-v-a4e8f2d3]:hover{background:var(--accent-bg)}.btn-outline[data-v-a4e8f2d3]:disabled{opacity:.5;cursor:default}.read-header[data-v-a4e8f2d3]{padding:1rem 1.25rem .75rem;border-bottom:1px solid var(--border)}.read-subject[data-v-a4e8f2d3]{font-size:1.1rem;margin:0 0 .6rem;color:var(--text)}.read-meta[data-v-a4e8f2d3]{display:flex;flex-direction:column;gap:3px}.meta-row[data-v-a4e8f2d3]{display:flex;gap:.5rem;font-size:.82rem}.meta-key[data-v-a4e8f2d3]{color:var(--text-muted);min-width:40px}.meta-val[data-v-a4e8f2d3]{color:var(--text)}.attachments-bar[data-v-a4e8f2d3]{padding:.6rem 1.25rem;background:#f8f9ff;border-bottom:1px solid var(--border)}.att-title[data-v-a4e8f2d3]{font-size:.8rem;font-weight:600;color:var(--text-muted)}.att-list[data-v-a4e8f2d3]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.4rem}.att-item[data-v-a4e8f2d3]{display:flex;align-items:center;gap:.35rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.3rem .6rem;font-size:.8rem}.att-name[data-v-a4e8f2d3]{color:var(--text);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-size[data-v-a4e8f2d3]{color:var(--text-muted);font-size:.75rem}.btn-download[data-v-a4e8f2d3]{background:none;border:none;cursor:pointer;font-size:.9rem;padding:0 .2rem}.btn-download[data-v-a4e8f2d3]:disabled{opacity:.5;cursor:default}.read-body[data-v-a4e8f2d3]{flex:1;overflow:auto;padding:1rem 1.25rem}.body-iframe[data-v-a4e8f2d3]{width:100%;min-height:400px;border:none;background:var(--surface)}.body-text[data-v-a4e8f2d3]{white-space:pre-wrap;font-family:inherit;font-size:.9rem;color:var(--text);margin:0;line-height:1.6}.email-compose[data-v-a4e8f2d3]{flex:1;display:flex;flex-direction:column;overflow:hidden}.compose-header[data-v-a4e8f2d3]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.compose-header h3[data-v-a4e8f2d3]{margin:0;font-size:.95rem}.compose-fields[data-v-a4e8f2d3]{border-bottom:1px solid var(--border)}.compose-field[data-v-a4e8f2d3]{display:flex;align-items:center;gap:.5rem;padding:.45rem 1rem;border-bottom:1px solid var(--surface-alt)}.compose-field label[data-v-a4e8f2d3]{width:36px;font-size:.8rem;color:var(--text-muted);flex-shrink:0}.compose-input[data-v-a4e8f2d3]{flex:1;border:none;outline:none;font-size:.875rem}.wysiwyg-toolbar[data-v-a4e8f2d3]{display:flex;align-items:center;gap:2px;padding:.4rem .75rem;border-bottom:1px solid var(--border);background:var(--surface-alt);flex-wrap:wrap}.wysiwyg-toolbar button[data-v-a4e8f2d3]{background:none;border:1px solid transparent;border-radius:4px;padding:.2rem .5rem;cursor:pointer;font-size:.85rem;min-width:28px}.wysiwyg-toolbar button[data-v-a4e8f2d3]:hover{background:#e8eeff;border-color:#c0ccff}.toolbar-sep[data-v-a4e8f2d3]{width:1px;height:18px;background:var(--border);margin:0 3px}.toolbar-size[data-v-a4e8f2d3]{border:1px solid var(--border);border-radius:4px;padding:.15rem .3rem;font-size:.8rem;background:var(--surface);cursor:pointer}.compose-editor[data-v-a4e8f2d3]{flex:1;min-height:180px;max-height:320px;overflow-y:auto;padding:.75rem 1rem;outline:none;font-size:.9rem;line-height:1.6;color:var(--text)}.compose-editor[data-v-a4e8f2d3]:empty:before{content:attr(data-placeholder);color:#bbb;pointer-events:none}.compose-attachments[data-v-a4e8f2d3]{padding:.5rem 1rem;border-top:1px solid var(--border);background:var(--surface-alt)}.btn-attach[data-v-a4e8f2d3]{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--accent);cursor:pointer;padding:.25rem .5rem;border:1px dashed #b0beff;border-radius:5px}.btn-attach[data-v-a4e8f2d3]:hover{background:var(--accent-bg)}.compose-att-list[data-v-a4e8f2d3]{margin-top:.4rem;display:flex;flex-wrap:wrap;gap:.4rem}.compose-att-item[data-v-a4e8f2d3]{display:flex;align-items:center;gap:.3rem;background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:.2rem .5rem;font-size:.8rem}.btn-remove-att[data-v-a4e8f2d3]{background:none;border:none;cursor:pointer;color:var(--danger);font-size:.75rem;padding:0 .2rem}.send-error[data-v-a4e8f2d3]{padding:.4rem 1rem;color:var(--danger);font-size:.85rem}.send-success[data-v-a4e8f2d3]{padding:.4rem 1rem;color:var(--success);font-size:.85rem}.compose-actions[data-v-a4e8f2d3]{display:flex;justify-content:flex-end;gap:.5rem;padding:.6rem 1rem;border-top:1px solid var(--border);background:var(--surface-alt)}.spinner[data-v-a4e8f2d3]{width:32px;height:32px;border:3px solid #e0e3ff;border-top-color:var(--accent);border-radius:50%;animation:spin-a4e8f2d3 .7s linear infinite}.spinner.sm[data-v-a4e8f2d3]{width:16px;height:16px;border-width:2px}.family-layout[data-v-994491a2]{min-height:100vh;background:#f4f6fa}.family-header[data-v-994491a2]{background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000000a}.family-header-inner[data-v-994491a2]{max-width:1100px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.family-logo[data-v-994491a2]{height:32px;width:auto}.family-nav[data-v-994491a2]{display:flex;gap:.5rem;flex:1;flex-wrap:wrap}.nav-tab[data-v-994491a2]{padding:.6rem 1rem;border-radius:8px;color:#4b5563;text-decoration:none;font-weight:600;font-size:.95rem;transition:background .15s,color .15s}.nav-tab[data-v-994491a2]:hover{background:#f3f4f6}.nav-tab.active[data-v-994491a2]{background:#375de71f;color:#375de7}.logout-btn[data-v-994491a2]{padding:.55rem 1rem;background:transparent;border:1px solid #d1d5db;border-radius:8px;color:#4b5563;font-size:.875rem;font-weight:600;cursor:pointer}.logout-btn[data-v-994491a2]:hover{background:#f3f4f6;border-color:#b91c1c;color:#b91c1c}.family-content[data-v-994491a2]{max-width:1100px;margin:0 auto;padding:2rem 1.5rem}.pending-banner[data-v-994491a2]{max-width:1100px;margin:1rem auto 0;padding:.85rem 1.5rem;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;color:#9a3412;font-size:.9rem;font-weight:600}.login-container[data-v-c02b687d]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:radial-gradient(circle at top,rgba(55,93,231,.18),transparent 70%),#f4f6fa;padding:1rem}.login-card[data-v-c02b687d]{background:#fff;padding:2.8rem 2.2rem;border-radius:16px;width:100%;max-width:430px;box-shadow:0 14px 40px #0000001a;border:1px solid rgba(55,93,231,.12)}.login-logo[data-v-c02b687d]{display:block;margin:0 auto 1.2rem;width:140px;height:auto}.login-card h1[data-v-c02b687d]{margin:0 0 .5rem;text-align:center;font-size:1.9rem;font-weight:800;color:var(--primary)}.subtitle[data-v-c02b687d]{text-align:center;color:#6b7280;font-size:.9rem;margin:0 0 1.75rem;line-height:1.5}.success-banner[data-v-c02b687d]{padding:.875rem 1rem;background:#d4edda;color:#155724;border-left:4px solid #28a745;border-radius:6px;margin-bottom:1.25rem;font-size:.9rem;line-height:1.6}.success-banner a[data-v-c02b687d]{display:block;margin-top:.5rem;color:#155724;font-weight:700}.form-group[data-v-c02b687d]{margin-bottom:1.4rem}.form-group label[data-v-c02b687d]{display:block;margin-bottom:.5rem;font-size:.95rem;font-weight:600;color:#333}.form-group input[data-v-c02b687d]{width:100%;padding:.9rem;border:1px solid #d1d5db;border-radius:10px;font-size:1rem;box-sizing:border-box;font-family:inherit}.form-group input[data-v-c02b687d]:focus{outline:none;border-color:#375de7;box-shadow:0 0 0 3px #375de72e}.error-message[data-v-c02b687d]{padding:.85rem;border-radius:8px;background:#dc262614;border-left:4px solid #dc2626;color:#b91c1c;font-size:.9rem;margin-bottom:1rem}.login-btn[data-v-c02b687d]{width:100%;padding:.95rem;background:#1f184d;color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer}.login-btn[data-v-c02b687d]:hover:not(:disabled){background:#514b77}.login-btn[data-v-c02b687d]:disabled{opacity:.6;cursor:not-allowed}.resend[data-v-c02b687d]{text-align:center;margin-top:1.5rem}.btn-link[data-v-c02b687d]{background:none;border:none;cursor:pointer;text-decoration:underline;font-size:.875rem;padding:0;color:#375de7;font-weight:600}.login-container[data-v-04c7c899]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:radial-gradient(circle at top,rgba(55,93,231,.18),transparent 70%),#f4f6fa;padding:1rem}.login-card[data-v-04c7c899]{background:#fff;padding:2.8rem 2.2rem;border-radius:16px;width:100%;max-width:430px;box-shadow:0 14px 40px #0000001a;border:1px solid rgba(55,93,231,.12)}.login-logo[data-v-04c7c899]{display:block;margin:0 auto 1.2rem;width:140px;height:auto}.login-card h1[data-v-04c7c899]{margin:0 0 .5rem;text-align:center;font-size:1.9rem;font-weight:800;color:var(--primary)}.subtitle[data-v-04c7c899]{text-align:center;color:#6b7280;font-size:.9rem;margin:0 0 1.75rem;line-height:1.5}.form-group[data-v-04c7c899]{margin-bottom:1.4rem}.form-group label[data-v-04c7c899]{display:block;margin-bottom:.5rem;font-size:.95rem;font-weight:600;color:#333}.form-group input[data-v-04c7c899]{width:100%;padding:.9rem;border:1px solid #d1d5db;border-radius:10px;font-size:1rem;box-sizing:border-box;font-family:inherit}.form-group input[data-v-04c7c899]:focus{outline:none;border-color:#375de7;box-shadow:0 0 0 3px #375de72e}.code-input[data-v-04c7c899]{letter-spacing:6px;font-weight:700;text-align:center;font-size:1.3rem!important}.error-message[data-v-04c7c899]{padding:.85rem;border-radius:8px;background:#dc262614;border-left:4px solid #dc2626;color:#b91c1c;font-size:.9rem;margin-bottom:1rem}.login-btn[data-v-04c7c899]{width:100%;padding:.95rem;background:#1f184d;color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer}.login-btn[data-v-04c7c899]:hover:not(:disabled){background:#514b77}.login-btn[data-v-04c7c899]:disabled{opacity:.6;cursor:not-allowed}.resend[data-v-04c7c899]{text-align:center;margin-top:1.5rem}.resend a[data-v-04c7c899]{color:#375de7;font-weight:600;text-decoration:none;font-size:.92rem}.resend a[data-v-04c7c899]:hover{text-decoration:underline}.login-container[data-v-546ea04c]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:radial-gradient(circle at top,rgba(55,93,231,.18),transparent 70%),#f4f6fa;padding:1rem}.login-card[data-v-546ea04c]{background:#fff;padding:2.8rem 2.2rem;border-radius:16px;width:100%;max-width:430px;box-shadow:0 14px 40px #0000001a;border:1px solid rgba(55,93,231,.12)}.login-logo[data-v-546ea04c]{display:block;margin:0 auto 1.2rem;width:140px;height:auto}.login-card h1[data-v-546ea04c]{margin:0 0 .5rem;text-align:center;font-size:1.9rem;font-weight:800;color:var(--primary)}.subtitle[data-v-546ea04c]{text-align:center;color:#6b7280;font-size:.9rem;margin:0 0 1.75rem;line-height:1.5}.form-group[data-v-546ea04c]{margin-bottom:1.4rem}.form-group label[data-v-546ea04c]{display:block;margin-bottom:.5rem;font-size:.95rem;font-weight:600;color:#333}.form-group input[data-v-546ea04c]{width:100%;padding:.9rem;border:1px solid #d1d5db;border-radius:10px;font-size:1rem;box-sizing:border-box;font-family:inherit}.form-group input[data-v-546ea04c]:focus{outline:none;border-color:#375de7;box-shadow:0 0 0 3px #375de72e}.code-input[data-v-546ea04c]{letter-spacing:6px;font-weight:700;text-align:center;font-size:1.3rem!important}.error-message[data-v-546ea04c]{padding:.85rem;border-radius:8px;background:#dc262614;border-left:4px solid #dc2626;color:#b91c1c;font-size:.9rem;margin-bottom:1rem}.login-btn[data-v-546ea04c]{width:100%;padding:.95rem;background:#1f184d;color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer}.login-btn[data-v-546ea04c]:hover:not(:disabled){background:#514b77}.login-btn[data-v-546ea04c]:disabled{opacity:.6;cursor:not-allowed}.resend[data-v-546ea04c]{text-align:center;margin-top:1.5rem}.btn-link[data-v-546ea04c]{background:none;border:none;cursor:pointer;text-decoration:underline;font-size:.875rem;padding:0;color:#375de7;font-weight:600;display:inline-block}:root{--primary: #1F184D;--primary-hover: #514B77;--bg: #F4F6FA;--violet: #7398E7;--violet-sombre: #6382C4;--bleu-ciel: #5DC9F3;--bleu-ciel-sombre: #009AD6;--surface: #ffffff;--surface-alt: #f8f9fa;--surface-hover: #f5f6fa;--border: #e0e0e0;--text: #2c3e50;--text-muted: #7f8c8d;--text-inverse: #ffffff;--accent: #667eea;--accent-hover: #5568d3;--accent-secondary: #764ba2;--accent-bg: #eef2ff;--shadow: rgba(0, 0, 0, .1);--shadow-strong: rgba(0, 0, 0, .25);--danger: #e74c3c;--danger-hover: #c0392b;--danger-bg: #f8d7da;--danger-text: #721c24;--success: #27ae60;--success-hover: #229954;--success-bg: #d4edda;--success-text: #155724;--warning: #ffc107;--warning-bg: #fff3cd;--warning-text: #856404;--info: #1976d2;--info-bg: #d1ecf1;--info-text: #0c5460}:root[data-theme=dark]{--primary: #6f5fd4;--primary-hover: #8676e0;--bg: #121022;--surface: #1c1a30;--surface-alt: #242240;--surface-hover: #2b2949;--border: #3a3760;--text: #e8e6f5;--text-muted: #a29fc4;--text-inverse: #ffffff;--accent: #8b9dfb;--accent-hover: #a6b4fc;--accent-secondary: #9c7bd4;--accent-bg: #2a2856;--shadow: rgba(0, 0, 0, .4);--shadow-strong: rgba(0, 0, 0, .6);--danger: #f16354;--danger-hover: #ff8a7d;--danger-bg: #4a2226;--danger-text: #ff9c92;--success: #3ecf7e;--success-hover: #5ee096;--success-bg: #1c3a2a;--success-text: #7be0a8;--warning: #ffd24d;--warning-bg: #4a3c14;--warning-text: #ffd97d;--info: #5aa9f0;--info-bg: #1d3550;--info-text: #8fc7fb}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:var(--text);background:var(--bg)}#app{width:100%;min-height:100vh}.page-container{max-width:1200px;margin:0 auto;padding:1rem}.page-container-wide{max-width:1400px;margin:0 auto;padding:1rem}.page-container-narrow{max-width:800px;margin:0 auto;padding:1rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem}.page-header h1{margin:0;color:var(--text);font-size:1.75rem}.page-header h2{margin:0;color:var(--text);font-size:1.5rem}.section{background:var(--surface);padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:1.5rem}.section-title{margin:0 0 1rem;color:var(--text);font-size:1.2rem;border-bottom:2px solid var(--primary);padding-bottom:.5rem}.card{background:var(--surface);border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;transition:all .2s}.card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.card-grid{display:grid;gap:1rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--surface);color:var(--text-muted);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--surface-alt)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:var(--success-hover)}.btn-back{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-weight:600}.btn-back:hover{background:var(--surface-alt)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;padding:0;background:transparent;border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:1.2rem;line-height:1;transition:all .2s}.btn-icon:hover{background:var(--surface-alt);border-color:var(--accent)}.btn-view{display:inline-flex;align-items:center;gap:8px}.btn-view:before{content:"";display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M1.66665%206.66667C1.66665%206.66667%205.39761%202.5%209.99998%202.5C14.6024%202.5%2018.3333%206.66667%2018.3333%206.66667'%20stroke='%236382C4'%20stroke-linecap='round'/%3e%3cpath%20d='M17.9533%2010.8708C18.2067%2011.2261%2018.3334%2011.4037%2018.3334%2011.6666C18.3334%2011.9296%2018.2067%2012.1072%2017.9533%2012.4625C16.8149%2014.0588%2013.9077%2017.5%2010%2017.5C6.09234%2017.5%203.1851%2014.0588%202.04672%2012.4625C1.79337%2012.1072%201.66669%2011.9296%201.66669%2011.6666C1.66669%2011.4037%201.79336%2011.2261%202.04672%2010.8708C3.1851%209.27451%206.09234%205.83331%2010%205.83331C13.9077%205.83331%2016.8149%209.27451%2017.9533%2010.8708Z'%20stroke='%231F184D'/%3e%3cpath%20d='M12.5%2011.6667C12.5%2010.286%2011.3807%209.16669%2010%209.16669C8.61929%209.16669%207.5%2010.286%207.5%2011.6667C7.5%2013.0474%208.61929%2014.1667%2010%2014.1667C11.3807%2014.1667%2012.5%2013.0474%2012.5%2011.6667Z'%20stroke='%23009AD6'/%3e%3c/svg%3e");background-size:contain;background-repeat:no-repeat}.btn-modify{display:inline-flex;align-items:center;gap:8px}.btn-modify:before{content:"";display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12.8465%204.52515L14.1606%203.211C14.8864%202.48521%2016.0631%202.48521%2016.7889%203.211C17.5147%203.93678%2017.5147%205.11351%2016.7889%205.8393L15.4748%207.15345M12.8465%204.52515L5.12721%2012.2444C4.14725%2013.2244%203.65725%2013.7144%203.3236%2014.3114C2.98995%2014.9085%202.65425%2016.3185%202.33325%2017.6667C3.68146%2017.3457%205.09137%2017.01%205.68846%2016.6763C6.28555%2016.3427%206.77554%2015.8527%207.75552%2014.8727L15.4748%207.15345M12.8465%204.52515L15.4748%207.15345'%20stroke='%231F184D'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M9.33325%2017.6667H14.3333'%20stroke='%23009AD6'%20stroke-linecap='round'/%3e%3c/svg%3e");background-size:contain;background-repeat:no-repeat}.btn-delete{display:inline-flex;align-items:center;gap:8px}.btn-delete:before{content:"";display:inline-block;width:18px;height:18px;background-image:url("data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M16.25%204.58334L15.7336%2012.9376C15.6016%2015.0721%2015.5356%2016.1393%2015.0006%2016.9066C14.7361%2017.2859%2014.3955%2017.6061%2014.0006%2017.8467C13.2018%2018.3333%2012.1325%2018.3333%209.99395%2018.3333C7.8526%2018.3333%206.78192%2018.3333%205.98254%2017.8458C5.58733%2017.6047%205.24666%2017.284%204.98224%2016.904C4.4474%2016.1355%204.38288%2015.0668%204.25384%2012.9293L3.75%204.58334'%20stroke='%231F184D'%20stroke-linecap='round'/%3e%3cpath%20d='M2.5%204.58332H17.5M13.3798%204.58332L12.8109%203.40976C12.433%202.6302%2012.244%202.24042%2011.9181%201.99733C11.8458%201.94341%2011.7692%201.89544%2011.6892%201.85391C11.3283%201.66666%2010.8951%201.66666%2010.0288%201.66666C9.14069%201.66666%208.69665%201.66666%208.32974%201.86176C8.24842%201.905%208.17082%201.9549%208.09774%202.01096C7.76803%202.26391%207.58386%202.66795%207.2155%203.47604L6.71077%204.58332'%20stroke='%231F184D'%20stroke-linecap='round'/%3e%3cpath%20d='M7.91675%2013.75L7.91675%208.75'%20stroke='%23009AD6'%20stroke-linecap='round'/%3e%3cpath%20d='M12.0833%2013.75L12.0833%208.75'%20stroke='%236382C4'%20stroke-linecap='round'/%3e%3c/svg%3e");background-size:contain;background-repeat:no-repeat}.entity-icon{display:flex;align-items:center;gap:8px;position:relative;padding-left:24px}.entity-icon:before{content:"";display:inline-block;width:16px;height:16px;background-image:url("data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.79183%2019.4445V15.7556C9.79183%2014.8861%209.79183%2014.4513%209.52334%2014.1812C9.25486%2013.9111%208.82274%2013.9111%207.9585%2013.9111H7.04183C6.17759%2013.9111%205.74547%2013.9111%205.47698%2014.1812C5.2085%2014.4513%205.2085%2014.8861%205.2085%2015.7556V19.4445'%20stroke='%237398E7'%20stroke-linejoin='round'/%3e%3cpath%20d='M10.25%201H4.75C2.47483%201%202%201.47771%202%203.76667V19.4444H13V3.76667C13%201.47771%2012.5252%201%2010.25%201Z'%20stroke='%231F184D'%20stroke-linejoin='round'/%3e%3cpath%20d='M15.75%206.53333H13V19.4444H18.5V9.3C18.5%207.01104%2018.0252%206.53333%2015.75%206.53333Z'%20stroke='%231F184D'%20stroke-linejoin='round'/%3e%3cpath%20d='M6.5835%204.68889L8.41683%204.68889M6.5835%207.45556L8.41683%207.45556M6.5835%2010.2222L8.41683%2010.2222'%20stroke='%237398E7'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center;background-size:contain;position:absolute;left:0;top:50%;transform:translateY(-50%)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-size:1rem;box-sizing:border-box;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #375de726}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--surface-alt);cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border)}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{font-size:.875rem;color:var(--text-muted);font-weight:600}.info-item span{color:var(--text);font-size:1rem}.info-item.full-width{grid-column:1 / -1}.badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.875rem;font-weight:600}.badge-primary{background:var(--info-bg);color:var(--info)}.badge-success{background:var(--success-bg);color:var(--success-text)}.badge-danger{background:var(--danger-bg);color:var(--danger-text)}.badge-warning{background:var(--warning-bg);color:var(--warning-text)}.badge-info{background:var(--info-bg);color:var(--info-text)}.badge-active{background:var(--success-bg);color:var(--success-text)}.badge-inactive{background:var(--danger-bg);color:var(--danger-text)}.error-message{padding:.75rem;background:var(--danger-bg);color:var(--danger-text);border-radius:4px;margin-bottom:1rem;border-left:3px solid var(--danger-text)}.success-message{padding:.75rem;background:var(--success-bg);color:var(--success-text);border-radius:4px;margin-bottom:1rem;border-left:3px solid var(--success-text)}.warning-message{padding:.75rem;background:var(--warning-bg);color:var(--warning-text);border-radius:4px;margin-bottom:1rem;border-left:3px solid var(--warning-text)}.info-message{padding:.75rem;background:var(--info-bg);color:var(--info-text);border-radius:4px;margin-bottom:1rem;border-left:3px solid var(--info-text)}.loading{text-align:center;padding:3rem;color:var(--text-muted);font-size:1.1rem}.loading-spinner{display:inline-block;width:40px;height:40px;border:4px solid var(--surface-alt);border-top:4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.no-results{text-align:center;padding:3rem;color:var(--text-muted);background:var(--surface);border-radius:8px}.search-section{background:var(--surface);padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem}.search-bar{display:flex;gap:1rem;margin-bottom:1rem}.search-input{flex:1;padding:.75rem;border:1px solid var(--border);border-radius:6px;font-size:1rem}.search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #667eea1a}.btn-search{padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:6px;cursor:pointer;white-space:nowrap;font-weight:600}.btn-search:hover{background:var(--primary-hover)}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding:1rem}.btn-pagination{padding:.5rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .2s}.btn-pagination:hover:not(:disabled){background:var(--primary);color:#fff;border-color:var(--primary)}.btn-pagination:disabled{opacity:.5;cursor:not-allowed}.page-info{color:var(--text-muted)}.modal-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container,.modal-content{background:var(--surface);border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000040,0 4px 16px #0000001f}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface-alt);border-radius:12px 12px 0 0}.modal-header h2{margin:0;color:var(--text);font-size:1.1rem}.modal-close,.btn-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-muted);padding:.25rem .5rem;border-radius:4px;line-height:1;transition:background .15s,color .15s}.modal-close:hover,.btn-close:hover{background:var(--border);color:var(--text)}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--surface-alt);border-radius:0 0 12px 12px}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}a{color:var(--primary)}a:hover{color:var(--primary-hover)}@media(max-width:768px){.page-container,.page-container-wide,.page-container-narrow{padding:.5rem}.page-header{flex-direction:column;align-items:stretch}.page-header h1{font-size:1.5rem}.form-row,.info-grid{grid-template-columns:1fr}.search-bar{flex-direction:column}.card-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn{width:100%}}@media(max-width:480px){.page-header h1{font-size:1.3rem}.section{padding:1rem}}
