body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;animation:gradientAnimation 15s ease infinite;background:linear-gradient(-45deg,#ee7752,#e73c7e,#23a6d5,#23d5ab);background-size:400% 400%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px}.login-header{text-shadow:0 1px 3px #0000001f}.login-logo{background-color:#ffffffd9;border-radius:12px;box-shadow:0 4px 15px #0000001f;display:block;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;max-width:180px;padding:12px}.login-form{border-radius:16px;box-shadow:0 8px 32px #0000001f;margin-bottom:2rem;padding:2.5rem 2rem}.login-form h2{color:#111827;font-size:1.5rem;font-weight:700;margin:0 0 .35rem;text-shadow:none}.login-form p{color:#4b5563;font-size:.95rem;margin:0 0 1.8rem}.login-mode-toggle{background:#f0f0f0;border-radius:10px;display:flex;gap:8px;margin-bottom:20px;padding:4px}.mode-btn{background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:10px 16px;transition:all .2s ease}.mode-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #667eea4d;color:#fff}.mode-btn:hover:not(.active){background:#e0e0e0}.form-alert{border:1px solid #0000;border-radius:10px;box-shadow:0 8px 20px #00000014;display:flex;flex-direction:column;font-size:.95rem;gap:.35rem;line-height:1.4;margin-bottom:1.5rem;padding:.9rem 1rem}.form-alert strong{font-size:1rem}.form-alert span{display:block}.form-alert-success{background:#f0fff4;border-color:#9ae6b4;color:#22543d}.form-alert-warning{background:#fffaf0;border-color:#fbd38d;color:#7b341e}.form-alert-error{background:#fff5f5;border-color:#feb2b2;color:#822727}.form-group{margin-bottom:24px;padding:0 2px;text-align:left}.form-group label{color:#333;letter-spacing:.02em;margin-bottom:10px}.form-group input,.form-group select{background:#f5f7fa;border:2.5px solid #667eea;border-radius:10px;box-shadow:0 0 0 2px #667eea1f;color:#222;font-size:1rem;margin-bottom:2px;padding:14px 16px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:#8e76f8;box-shadow:0 0 0 2px #667eea26;outline:none}@keyframes gradientAnimation{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.login-header{color:#444;margin-bottom:2rem;text-align:center}.login-form{background:#fff;border-radius:12px;box-shadow:0 5px 25px #0000001a;max-width:400px;padding:2.5rem;width:100%}.options-row{color:#374151;font-size:.9em;justify-content:space-between;margin-bottom:1.5rem}.options-row,.remember-me{align-items:center;display:flex}.remember-me{color:inherit;cursor:pointer;font-weight:500;gap:.5rem}.auth-switch{color:#111827;font-size:1rem;margin-top:1.5rem;text-align:center}.auth-switch-link{background:none;border:none;color:#f97316;cursor:pointer;font-weight:700;padding:0;text-decoration:underline}.auth-switch span{display:block;font-weight:600;margin-bottom:.4rem}.auth-switch-link:hover{color:#ea580c}.btn-submit{background:linear-gradient(90deg,#8e76f8,#667eea);font-size:1.1em;padding:15px;transition:transform .1s;width:100%}.btn-submit:active{transform:scale(.98)}.login-logo{margin-bottom:1rem;max-width:250px}.password-wrapper input{border:2.5px solid #667eea;color:#222}.form-group input::placeholder,.password-wrapper input::placeholder{color:#8a8f99}.login-form .form-group input,.login-form .password-wrapper input{-webkit-text-fill-color:#222!important;color:#222!important}.password-wrapper input:focus{border-color:#8e76f8!important;box-shadow:0 0 0 4px #8e76f81f!important;outline:none!important}.toggle-password{border-radius:6px;display:flex;padding:6px;right:8px}.toggle-password:focus{box-shadow:0 0 0 3px #667eea1f;outline:none}.platform-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100vw}.platform-header{align-items:center;background-color:#fff;box-shadow:0 2px 4px #00000014;display:flex;flex-shrink:0;height:70px;justify-content:space-between;padding:0 30px;z-index:10}.platform-header-title{color:#333;font-size:1.2rem;font-weight:600}.platform-user-info{align-items:center;display:flex;gap:20px}.btn-logout{background-color:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;font-weight:500;padding:8px 15px}.btn-logout:hover{background-color:#c0392b}.platform-content{background-color:#f4f7f6;flex-grow:1;overflow-y:auto;padding:30px}:root{--color-primary:#3f51b5;--color-primary-dark:#283593;--color-secondary:#00bcd4;--color-success:#4caf50;--color-warning:#ff9800;--color-danger:#f44336;--color-text-dark:#1a1a1a;--color-text-light:#666;--color-bg-light:#f5f7fa;--color-border:#e8ecf1}body,html{overflow-x:hidden}.platform-dashboard-container{background:#f5f7fa;box-sizing:border-box;margin:0 auto;max-width:1400px;overflow:hidden;padding:36px 28px 48px;position:relative;width:100%}.dashboard-welcome{margin-bottom:36px;position:relative;z-index:1}.dashboard-kicker{background:linear-gradient(135deg,#3f51b5,#283593);background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);border-radius:50px;box-shadow:0 4px 15px #3f51b540;color:#fff;display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.15em;margin-bottom:20px;padding:8px 16px;text-transform:uppercase}.dashboard-welcome h1{-webkit-text-fill-color:#0000;word-wrap:break-word;background:linear-gradient(135deg,#3f51b5,#00bcd4);background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);-webkit-background-clip:text;background-clip:text;color:#1a1a1a;color:var(--color-text-dark);font-size:clamp(2rem,5vw,2.8rem);font-weight:800;letter-spacing:-.02em;margin:0;overflow-wrap:break-word}.dashboard-welcome p{color:#666;color:var(--color-text-light);font-size:1rem;font-weight:400;line-height:1.6;margin-top:12px;max-width:640px}.dashboard-cards-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));z-index:1}.dashboard-card,.dashboard-cards-grid{box-sizing:border-box;position:relative;width:100%}.dashboard-card{border:1px solid #e8ecf1;border:1px solid var(--color-border);border-radius:14px;box-shadow:0 4px 14px #0000000f;min-height:300px;overflow:hidden;padding:22px;transition:all .35s cubic-bezier(.4,0,.2,1)}.dashboard-card:before{background:linear-gradient(90deg,#3f51b5,#00bcd4);background:linear-gradient(90deg,var(--color-primary) 0,var(--color-secondary) 100%);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .35s ease}.dashboard-card:hover{border-color:#00bcd4;border-color:var(--color-secondary);box-shadow:0 16px 28px #0000001f;transform:translateY(-6px)}.dashboard-card:hover:before{opacity:1}.card-icon-container{align-items:center;background:linear-gradient(135deg,#3f51b5,#283593);background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);border-radius:14px;display:flex;height:64px;justify-content:center;margin-bottom:18px;transition:transform .3s ease;width:64px}.dashboard-card:hover .card-icon-container{transform:scale(1.08) rotate(5deg)}.card-icon-container svg{color:#fff;filter:drop-shadow(0 4px 8px rgba(0,0,0,.15));font-size:28px}.dashboard-card h3{color:#1a1a1a;color:var(--color-text-dark);font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0 0 10px}.dashboard-card p{color:#666;color:var(--color-text-light);flex-grow:1;font-size:.95rem;font-weight:400;line-height:1.6;margin-bottom:16px}.card-stats{background:linear-gradient(135deg,#3f51b50d,#00bcd40d);border:1px solid #e8ecf1;border:1px solid var(--color-border);border-radius:12px;display:flex;gap:0;margin-bottom:14px;padding:8px}.card-stats div{align-items:flex-start;display:flex;flex-direction:column;min-width:0;padding:6px 10px}.card-stats div+div{border-left:1px dashed #e8ecf1;border-left:1px dashed var(--color-border)}.card-stats strong{color:#3f51b5;color:var(--color-primary);font-size:1.3rem;font-weight:800;letter-spacing:-.02em;margin-bottom:4px}.card-stats span{color:#666;color:var(--color-text-light);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.card-stats div:first-child strong{color:#4caf50;color:var(--color-success)}.card-stats div:nth-child(2) strong{color:#ff9800;color:var(--color-warning)}.card-stats div:nth-child(3) strong{color:#3f51b5;color:var(--color-primary)}.card-actions{flex-direction:column;gap:12px;margin-top:auto}.card-link{align-items:center;border:none;border-radius:10px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;justify-content:center;letter-spacing:.02em;padding:10px 14px;text-align:center;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%}.card-link.primary{background:linear-gradient(135deg,#3f51b5,#283593);background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);box-shadow:0 8px 20px #3f51b54d;color:#fff}.card-link.primary:hover{box-shadow:0 12px 30px #3f51b566;transform:translateY(-3px)}.card-link.secondary{background:#3f51b51a;border:2px solid #3f51b5;border:2px solid var(--color-primary);color:#3f51b5;color:var(--color-primary)}.card-link.secondary:hover{background:#3f51b5;background:var(--color-primary);box-shadow:0 8px 20px #3f51b54d;color:#fff;transform:translateY(-3px)}.card-link.ghost{background:#fff;border:2px solid #e8ecf1;border:2px solid var(--color-border)}.card-link.ghost,.card-link.ghost:hover{color:#3f51b5;color:var(--color-primary)}.card-link.ghost:hover{background:#f5f7fa;background:var(--color-bg-light);border-color:#3f51b5;border-color:var(--color-primary);box-shadow:0 4px 12px #3f51b526;transform:translateY(-3px)}@media (max-width:1024px){.platform-dashboard-container{padding:28px 24px}.dashboard-cards-grid{gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.dashboard-welcome h1{font-size:2.2rem}}@media (max-width:768px){.platform-dashboard-container{padding:24px 16px}.dashboard-cards-grid{gap:16px;grid-template-columns:1fr}.dashboard-welcome h1{font-size:1.8rem}.dashboard-welcome p{font-size:1rem}.dashboard-card{min-height:auto;padding:22px}.card-link{font-size:.9rem;padding:12px 20px}}.platform-back-button{align-items:center;background:#fff;border:none;border-radius:999px;box-shadow:0 12px 24px #4f46e52e;color:#1d4ed8;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.45rem;justify-content:center;padding:.45rem 1.2rem;transition:transform .18s ease,box-shadow .18s ease,color .18s ease}.platform-back-button:hover{box-shadow:0 16px 32px #4f46e538;color:#312e81;transform:translateY(-1px)}.platform-back-button:focus{box-shadow:0 0 0 3px #6366f140;outline:none}.platform-back-button:active{box-shadow:0 10px 20px #4f46e52e;transform:translateY(0)}.platform-config-container{margin:2rem auto 4rem;max-width:1200px;padding:0 1.5rem 3rem}.platform-config-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d;display:flex;gap:1.5rem;margin-bottom:2rem;padding:1.5rem 2rem}@media (max-width:900px){.platform-config-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1.25rem 1.5rem}.header-icon{height:52px;width:52px}.header-icon,.platform-config-header h1{font-size:1.6em}.platform-config-header p{font-size:.95rem}}.header-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;font-size:2em;height:60px;width:60px}.platform-config-header h1{font-size:2em;margin:0}.platform-config-header p{color:#666;margin:0}.platform-config-header .platform-back-button{flex-shrink:0}.metrics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:3rem}.metric-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d;padding:1.5rem;text-align:center}.metric-card span{color:#667eea;font-size:2.5em;font-weight:700}.metric-card small{color:#888;display:block;margin-top:.5rem}.fracc-small-card{background:#fff;border-radius:18px;box-shadow:0 10px 35px #4f72ff1f;display:flex;flex-direction:column;gap:1.5rem;margin-top:3rem;padding:1.75rem 2rem}.fracc-small-header{align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between}.fracc-small-title{align-items:flex-start;display:flex;gap:1rem}.fracc-small-icon{background:#6366f12e;border-radius:14px;color:#4f5dff;display:grid;font-size:1.5rem;height:48px;place-items:center;width:48px}.fracc-small-title h2{color:#1f2a44;font-size:1.6rem;margin:0}.fracc-small-title p{color:#4b5563;margin:.25rem 0 0}.fracc-small-cta{background:linear-gradient(135deg,#5661ff,#7f8ff4);border:none;border-radius:999px;box-shadow:0 10px 24px #4f72ff2e;color:#fff;cursor:pointer;font-weight:600;padding:.65rem 1.4rem;transition:transform .15s ease,box-shadow .15s ease}.fracc-small-cta:hover{box-shadow:0 14px 30px #4f72ff38;transform:translateY(-1px)}.fracc-small-body{grid-gap:1.5rem;display:grid;gap:1.5rem}.fracc-small-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.fracc-small-stat{background:#f8f9ffcc;border:1px solid #e2e8f0cc;border-radius:14px;padding:1rem 1.25rem}.fracc-small-stat span{color:#4f5dff;display:block;font-size:1.6rem;font-weight:700}.fracc-small-stat small{color:#4b5563;display:block;font-size:.75rem;letter-spacing:.05em;margin-top:.25rem;text-transform:uppercase}.fracc-small-actions{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.fracc-small-action{align-items:center;background:#fff;border:1px solid #e2e8f0e6;border-radius:14px;box-shadow:0 8px 18px #4f72ff14;cursor:pointer;display:flex;gap:.9rem;padding:.9rem 1.1rem;transition:transform .15s ease,box-shadow .15s ease}.fracc-small-action:hover{box-shadow:0 12px 28px #4f72ff1f;transform:translateY(-2px)}.fracc-small-action strong{color:#1f2937;display:block;font-size:.95rem}.fracc-small-action small{color:#4a5568;display:block;font-size:.8rem;margin-top:.18rem}.fracc-small-action-icon{background:#6366f11f;border-radius:12px;color:#4f5dff;display:grid;font-size:1.15rem;height:40px;place-items:center;width:40px}.fracc-users-card{background:#fff;border-radius:18px;box-shadow:0 10px 35px #4f72ff1f;display:flex;flex-direction:column;gap:1.25rem;margin-top:2.5rem;padding:1.75rem 2rem}.fracc-users-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.fracc-users-header h2{color:#1f2a44;font-size:1.5rem;margin:0 0 .25rem}.fracc-users-header p{color:#4b5563;margin:0}.fracc-users-selector{display:flex;flex-direction:column;gap:.35rem;min-width:260px}.fracc-users-selector label{color:#1f2937;font-weight:600}.fracc-users-selector select{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;box-shadow:inset 0 1px 0 #fff9;color:#111827;font-weight:600;padding:.65rem .85rem}.fracc-users-body{background:#f9fafb;border:1px solid #e5e7eb;border-radius:14px;padding:1rem}.fracc-users-status{color:#4b5563;margin:0}.fracc-users-error{color:#b91c1c;font-weight:600;margin:0}.fracc-users-table-wrapper{overflow-x:auto}.fracc-users-table{border-collapse:collapse;min-width:620px;width:100%}.fracc-users-table td,.fracc-users-table th{border-bottom:1px solid #e5e7eb;font-size:.95rem;padding:.75rem .9rem;text-align:left}.fracc-users-table th{background:#f3f4f6;color:#111827;font-weight:700}.fracc-users-table tbody tr:hover{background:#eef2ff}.fracc-users-password{color:#6b21a8;font-family:Fira Code,Consolas,monospace}@media (max-width:768px){.fracc-users-header{align-items:flex-start;flex-direction:column}.fracc-users-selector{width:100%}}.fracc-amenidades-panel{background:#fff;border-radius:18px;box-shadow:0 12px 36px #4f72ff1f;margin-top:1.5rem;padding:1.75rem 2rem 2.2rem}.fracc-amenidades-header{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.4rem}.fracc-amenidades-header h3{color:#1f2a44;font-size:1.35rem;margin:0}.fracc-amenidades-header p{color:#4b5563;margin:0}.fracc-amenidades-panel .amenidades-config-page{margin:0;max-width:none;padding:0}.fracc-amenidades-panel .amenidades-config-surface{border:1px solid #e2e8f0e6;border-radius:18px;box-shadow:none}.actions-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.action-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d;color:#333;padding:1.5rem;text-decoration:none;transition:transform .2s,box-shadow .2s}.action-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-5px)}.action-icon{color:#667eea;font-size:1.8em;margin-bottom:1rem}.action-card h4{margin:0 0 .5rem}.action-card p{color:#666;font-size:.9em;margin:0}@media (max-width:768px){.platform-config-container{padding:0 1rem 2rem}.fracc-small-card{padding:1.5rem}.fracc-small-header{align-items:flex-start;flex-direction:column}.fracc-small-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.fracc-small-actions{grid-template-columns:1fr}.fracc-amenidades-panel{padding:1.5rem}}.amenidades-config-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a59;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:1200}.amenidades-config-modal{background:#fff;border-radius:24px;box-shadow:0 25px 45px #0f172a2e;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:min(960px,100%)}.amenidades-config-header{align-items:flex-start;background:linear-gradient(135deg,#6c5ce7,#7f8ff4);color:#fff;display:flex;gap:1.5rem;justify-content:space-between;padding:2rem 2.5rem}.amenidades-config-header.detail{align-items:center;background:linear-gradient(135deg,#5f27cd,#00c6ff)}.amenidades-config-header h2{font-size:1.9rem;font-weight:600;margin:0}.amenidades-config-header p{font-size:.95rem;margin-bottom:0;margin-top:.35rem;opacity:.9}.modal-close{background:#ffffff26;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:1.6rem;height:36px;line-height:1;width:36px}.modal-close:hover{background:#ffffff4d}.amenidades-config-header-actions{align-items:center;display:flex;gap:.75rem}.amenidades-config-body{overflow-y:auto;padding:2rem 2.5rem}.amenidades-config-list{grid-gap:1.5rem;display:grid;gap:1.5rem}.amenidades-config-card{align-items:center;background:#f7f9ff;border:1px solid #7c8bfc1a;border-radius:20px;display:flex;gap:2rem;justify-content:space-between;padding:1.75rem}.amenidades-config-info h3{color:#1f2a44;font-size:1.4rem;margin:0}.amenidades-count{color:#6c5ce7;display:inline-flex;font-size:.95rem;font-weight:500;margin-top:.35rem}.amenidades-config-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.amenidades-config-tag{align-items:center;background:#2ed5731f;border-radius:999px;color:#1b8c4b;display:inline-flex;font-size:.85rem;font-weight:500;gap:.5rem;padding:.45rem .9rem}.amenidades-config-tag.muted{background:#a8aebe38;color:#4a5568}.amenidad-chip-icon{display:grid;font-size:1rem;place-items:center}.amenidades-config-button{background:#6c5ce7;border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:600;padding:.85rem 1.8rem;transition:transform .15s ease,box-shadow .15s ease}.amenidades-config-button:hover{box-shadow:0 12px 24px #6c5ce740;transform:translateY(-2px)}.amenidades-select-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:2rem}.amenidades-select-item{background:#f8f9ff;border:1px solid #4f46e52e;border-radius:18px;color:#1f2937;cursor:pointer;padding:1.5rem 1.25rem;position:relative;text-align:left;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.amenidades-select-item:hover{box-shadow:0 18px 28px #4f46e526;transform:translateY(-3px)}.amenidades-select-item.selected{background:#f0fff5;border-color:#22c55ee6}.amenidades-select-icon{align-items:center;background:#4f46e526;border-radius:16px;color:#4f46e5;display:inline-flex;font-size:1.6rem;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.amenidades-select-item.selected .amenidades-select-icon{background:#22c55e29;color:#15803d}.amenidades-select-title{display:block;font-weight:600}.amenidades-select-check{background:#22c55e;border-radius:50%;color:#fff;display:grid;font-size:1.1rem;font-weight:700;height:28px;place-items:center;position:absolute;right:14px;top:14px;width:28px}.amenidades-config-actions{display:flex;gap:1rem;justify-content:flex-end}.amenidades-config-primary,.amenidades-config-secondary{border:none;border-radius:999px;cursor:pointer;font-weight:600;padding:.75rem 1.8rem}.amenidades-config-primary{background:#22c55e;color:#fff}.amenidades-config-primary:disabled{cursor:not-allowed;opacity:.7}.amenidades-config-secondary{background:#6366f11f;color:#3730a3}@media (max-width:720px){.amenidades-config-body,.amenidades-config-header{padding:1.75rem}.amenidades-config-card{align-items:flex-start;flex-direction:column}.amenidades-config-button{text-align:center;width:100%}.amenidades-config-actions{align-items:stretch;flex-direction:column}.amenidades-config-primary,.amenidades-config-secondary{text-align:center;width:100%}}.amenidades-config-page{margin:2rem auto 4rem;max-width:1040px;padding:0 1.5rem}.amenidades-config-surface{background:#fff;border-radius:24px;box-shadow:0 25px 50px #1e293b1f;display:flex;flex-direction:column;min-height:520px;overflow:hidden}.amenidades-config-header.page{align-items:center;gap:1.25rem}.amenidades-config-header-left{align-items:center;display:flex;gap:1.25rem}.amenidades-config-back{align-items:center;background:#fff3;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.4rem;height:42px;justify-content:center;transition:background .2s ease,transform .2s ease;width:42px}.amenidades-config-back:hover{background:#ffffff59;transform:translateY(-1px)}.amenidades-config-page .amenidades-config-body{overflow:visible;padding:2.25rem 2.5rem 2.75rem}.amenidades-config-empty{background:#fff;border-radius:18px;box-shadow:0 20px 45px #1e293b1f;color:#4b5563;padding:3rem 2rem;text-align:center}@media (max-width:768px){.amenidades-config-page{padding:0 1rem}.amenidades-config-back{height:36px;width:36px}.amenidades-config-page .amenidades-config-body{padding:1.5rem}.amenidades-config-header-left,.amenidades-config-header.page{align-items:flex-start;flex-direction:column}}.modulos-modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modulos-modal-container{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.modulos-modal-header{border-bottom:1px solid #e8ecf1;padding:30px;position:relative}.modulos-modal-header h2{color:#1a1a1a;font-size:1.8rem;font-weight:700;margin:0 0 8px}.modulos-modal-header p{color:#666;font-size:1rem;margin:0}.modulos-modal-close{align-items:center;background:none;border:none;border-radius:8px;color:#999;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;right:20px;top:20px;transition:color .2s ease;width:40px}.modulos-modal-close:hover{background:#f5f7fa;color:#1a1a1a}.modulos-modal-content{flex:1 1;overflow-y:auto;padding:30px}.modulos-fracc-selector{background:linear-gradient(135deg,#3f51b50d,#00bcd40d);border:1px solid #e8ecf1;border-radius:12px;margin-bottom:32px;padding:20px}.modulos-fracc-selector label{align-items:center;color:#1a1a1a;display:flex;font-size:1rem;font-weight:600;gap:8px;margin-bottom:12px}.modulos-fracc-selector select{background:#fff;border:2px solid #e8ecf1;border-radius:8px;color:#1a1a1a;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 16px;transition:border-color .2s ease;width:100%}.modulos-fracc-selector select:hover:not(:disabled){border-color:#3f51b5}.modulos-fracc-selector select:focus{border-color:#3f51b5;box-shadow:0 0 0 3px #3f51b51a;outline:none}.modulos-fracc-selector select:disabled{background:#f5f7fa;color:#999;cursor:not-allowed}.modulos-loading{color:#666;font-size:1.1rem;padding:40px 20px;text-align:center}.modulos-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.modulos-item{background:#fff;border:2px solid #e8ecf1;border-radius:12px;cursor:pointer;padding:20px;transition:all .3s ease}.modulos-item.active{background:linear-gradient(135deg,#3f51b50d,#00bcd40d);border-color:#3f51b5}.modulos-item.inactive{background:#f5f7fa;opacity:.7}.modulos-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.modulos-item-icon{font-size:2.5rem}.modulos-toggle{display:inline-block;height:28px;position:relative;width:50px}.modulos-toggle input{height:0;opacity:0;width:0}.modulos-toggle-slider{background-color:#ccc;border-radius:28px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.modulos-toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:22px;left:3px;position:absolute;transition:.3s;width:22px}.modulos-toggle input:checked+.modulos-toggle-slider{background-color:#3f51b5}.modulos-toggle input:checked+.modulos-toggle-slider:before{transform:translateX(22px)}.modulos-item h3{color:#1a1a1a;font-size:1.1rem;font-weight:600;margin:0 0 8px}.modulos-item p{color:#666;font-size:.9rem;line-height:1.5;margin:0 0 16px}.modulos-status{align-items:center;display:flex}.status-enabled{background:#4caf501a;color:#4caf50}.status-disabled,.status-enabled{align-items:center;border-radius:6px;display:flex;font-size:.85rem;font-weight:600;gap:6px;padding:6px 12px}.status-disabled{background:#f443361a;color:#f44336}.modulos-message{animation:slideIn .3s ease;border-radius:8px;font-weight:600;margin-top:20px;padding:16px}.modulos-message-top{margin-bottom:12px;margin-top:0}.modulos-message.success{background:#4caf501a;border:1px solid #4caf504d;color:#4caf50}.modulos-message.error{background:#f443361a;border:1px solid #f443364d;color:#f44336}.modulos-modal-footer{background:#f5f7fa;border-top:1px solid #e8ecf1;display:flex;gap:12px;justify-content:flex-end;padding:20px 30px}.modulos-btn-cancel,.modulos-btn-save{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;letter-spacing:.05em;padding:12px 28px;text-transform:uppercase;transition:all .2s ease}.modulos-btn-cancel{background:#fff;border:2px solid #3f51b5;color:#3f51b5}.modulos-btn-cancel:hover:not(:disabled){background:#f5f7fa}.modulos-btn-cancel:disabled{cursor:not-allowed;opacity:.5}.modulos-btn-save{background:linear-gradient(135deg,#3f51b5,#283593);box-shadow:0 4px 15px #3f51b54d;color:#fff}.modulos-btn-save:hover:not(:disabled){box-shadow:0 6px 20px #3f51b566;transform:translateY(-2px)}.modulos-btn-save:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.modulos-modal-container{border-radius:12px 12px 0 0;max-height:100vh}.modulos-modal-header{padding:20px}.modulos-modal-header h2{font-size:1.5rem}.modulos-modal-content{padding:20px}.modulos-grid{gap:16px;grid-template-columns:1fr}.modulos-modal-footer{padding:16px 20px}.modulos-btn-cancel,.modulos-btn-save{flex:1 1;font-size:.9rem;padding:12px 16px}}.manager-system-notifications{background:#fff;border-radius:16px;box-shadow:0 18px 40px #0f172a1f;display:flex;flex-direction:column;gap:1.5rem;padding:1.75rem}.manager-system-notifications__header h2{align-items:center;display:flex;font-size:1.4rem;gap:.65rem;margin:0}.manager-system-notifications__header p{color:#4a5568;font-size:.94rem;margin:.25rem 0 0}.manager-system-notifications__filters{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(160px,1fr)) minmax(220px,auto)}.manager-system-notifications__search{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:.5rem;padding:.65rem .9rem;position:relative}.manager-system-notifications__search input{background:#0000;border:none;outline:none;width:100%}.manager-system-notifications__select{display:flex;flex-direction:column;font-size:.9rem;gap:.4rem}.manager-system-notifications__select select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:.55rem .75rem}.manager-system-notifications__roles{align-items:center;border:1px solid #e2e8f0;border-radius:12px;display:flex;font-weight:600;gap:.75rem;gap:.4rem;margin-right:.5rem;padding:.75rem 1rem}.manager-system-notifications__roles label{align-items:center;display:flex;font-size:.9rem;gap:.35rem;white-space:nowrap}.manager-system-notifications__body{border-top:1px solid #edf2f7;padding-top:1rem}.manager-system-notifications__status{color:#4a5568;margin:0}.manager-system-notifications__status.error{color:#b91c1c}.manager-system-notifications__list{display:flex;flex-direction:column;gap:1.1rem;list-style:none;margin:0;padding:0}.manager-system-notifications__item{background:#fdfdfd;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:.65rem;padding:1rem 1.25rem}.manager-system-notifications__item-header{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.manager-system-notifications__item-header h3{font-size:1.05rem;margin:0}.manager-system-notifications__item-header time{color:#64748b;font-size:.85rem}.manager-system-notifications__item-description{color:#4a5568;line-height:1.45;margin:0}.manager-system-notifications__meta{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.manager-system-notifications__chip{background:#e2e8f0;border-radius:999px;color:#1f2937;font-size:.8rem;padding:.3rem .7rem}.manager-system-notifications__chip.emphasis{background:#4f46e524;color:#4338ca;font-weight:600}.manager-system-notifications__chip.muted{background:#f1f5f9;color:#475569}.manager-system-notifications__role{border-radius:999px;font-size:.8rem;font-weight:600;padding:.3rem .75rem}.manager-system-notifications__role--administrador{background:#3b82f61f;color:#1d4ed8}.manager-system-notifications__role--usuario{background:#10b9811f;color:#047857}.manager-system-notifications__role--sin-clasificar{background:#94a3b82e;color:#475569}@media (max-width:960px){.manager-system-notifications__filters{grid-template-columns:1fr}.manager-system-notifications__roles{flex-wrap:wrap}}.platform-notifications-page{display:flex;flex-direction:column;gap:1.75rem;margin:2rem auto 4rem;max-width:1120px;padding:0 1.5rem}.platform-notifications-header{align-items:center;display:flex;gap:1rem}.platform-notifications-back{margin-right:.5rem}.platform-notifications-header-content{align-items:center;display:flex;gap:1rem}.platform-notifications-header-icon{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:16px;box-shadow:0 18px 36px #6366f13d;color:#fff;display:grid;font-size:1.8rem;height:56px;place-items:center;width:56px}.platform-notifications-header h1{color:#1f2937;font-size:1.9rem;margin:0}.platform-notifications-header p{color:#4b5563;margin:.3rem 0 0;max-width:520px}.platform-notifications-toolbar{align-items:center;display:flex;gap:1rem;justify-content:flex-end}.platform-notifications-toolbar label{color:#374151;display:flex;flex-direction:column;font-size:.9rem;gap:.4rem}.platform-notifications-toolbar select{background:#f8fafc;border:1px solid #94a3b899;border-radius:12px;font-weight:500;min-width:240px;padding:.6rem .75rem}.platform-notifications-empty{background:#f1f5f999;border-radius:16px;color:#475569;font-weight:600;padding:1.25rem 1.5rem;text-align:center}@media (max-width:720px){.platform-notifications-page{padding:0 1rem}.platform-notifications-header,.platform-notifications-header-content{align-items:flex-start;flex-direction:column}.platform-notifications-back{margin-bottom:.75rem}.platform-notifications-header h1{font-size:1.6rem}.platform-notifications-toolbar{justify-content:stretch}.platform-notifications-toolbar select{width:100%}}.lista-fracc-page .metric-label{color:#1e293b;font-size:.82rem;font-weight:600;letter-spacing:.16em;opacity:.9;position:relative;text-transform:uppercase;z-index:1}.lista-fracc-page .metric-value{color:#0f172a;font-size:2.05rem;font-weight:700;margin-top:auto;position:relative;z-index:1}.lista-fracc-page .metric-total{background:linear-gradient(135deg,#eef2ff,#d6d3ff 45%,#f1f0ff)}.lista-fracc-page .metric-activos{background:linear-gradient(135deg,#0f513229,#16a34a2e)}.lista-fracc-page .metric-inactivos{background:linear-gradient(135deg,#7f1d1d29,#dc26262e)}.lista-fracc-page .metric-por-vencer{background:linear-gradient(135deg,#7c2d1229,#ea580c2e)}.lista-fracc-page{box-shadow:0 10px 18px #4f46e540;min-height:100vh}.lista-fracc-metrics{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:2.25rem}.metric-card{box-shadow:0 18px 36px #0f172a2e;color:#0f172a;display:flex;flex-direction:column;justify-content:space-between;min-height:140px;overflow:hidden;padding:1.25rem 1.2rem;position:relative;transition:transform .2s ease,box-shadow .2s ease}.metric-card:after{border:1px solid #ffffff2e;border-radius:14px;bottom:10px;content:"";left:10px;pointer-events:none;position:absolute;right:10px;top:10px}.metric-card:hover{box-shadow:0 24px 45px #0f172a38;transform:translateY(-2px)}.metric-label{font-weight:600;letter-spacing:.16em;opacity:.85;position:relative;z-index:1}.metric-value{font-size:2.1rem;font-weight:700;margin-top:auto;position:relative;z-index:1}.metric-total{background:linear-gradient(135deg,#eef2ff,#d6d3ff 45%,#f1f0ff);color:#1f1b4d}.metric-total .metric-label{color:#1f1b4db3;opacity:1}.metric-total .metric-value{color:#1f1b4d}.metric-activos{background:linear-gradient(135deg,#0f5132,#16a34a 55%,#22c55e);color:#fff}.metric-activos .metric-label,.metric-activos .metric-value{color:#fff;opacity:1;text-shadow:0 2px 6px #0f172a59}.metric-inactivos{background:linear-gradient(135deg,#7f1d1d,#dc2626 55%,#ef4444);color:#fff}.metric-inactivos .metric-label,.metric-inactivos .metric-value{color:#fff;opacity:1;text-shadow:0 2px 6px #0f172a66}.metric-por-vencer{background:linear-gradient(135deg,#7c2d12,#ea580c 55%,#f97316);color:#fff}.metric-por-vencer .metric-label,.metric-por-vencer .metric-value{color:#fff;opacity:1;text-shadow:0 2px 6px #0f172a59}.table-wrapper{background-color:#fff;border-radius:20px;box-shadow:inset 0 1px 0 #0f172a0d,0 18px 40px #0f172a1f;padding:1.75rem 1.5rem}.table-wrapper table{border-collapse:collapse;text-align:left;width:100%}.table-wrapper td,.table-wrapper th{border-bottom:1px solid #e2e8f0;font-size:.95rem;padding:16px 18px;vertical-align:middle}.table-wrapper th{background:#e2e8f099;color:#475569;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.table-wrapper tr:hover{background-color:#6366f114}.fracc-meta{align-items:flex-start;color:#64748b;display:flex;flex-direction:column;font-size:.82rem;gap:.35rem;margin-top:.4rem}.fracc-meta-line{align-items:center;color:inherit;display:inline-flex;font-size:.8rem;gap:.35rem}.fracc-meta-vencimiento{font-weight:600}.fracc-meta-vencimiento--expirando{color:#b45309}.fracc-meta-vencimiento--expirado{color:#b91c1c}.admin-info{display:flex;flex-direction:column;gap:.25rem}.admin-name{color:#0f172a;font-weight:600}.admin-email{color:#64748b;font-size:.78rem}.status-pill{border:1px solid #0000;font-size:.8rem;font-weight:600;gap:.3rem;text-transform:capitalize}.suscripcion-demo{background-color:#ecfdf5;border-color:#10b98140;color:#047857}.suscripcion-basica{background-color:#eff6ff;border-color:#3b82f640;color:#1d4ed8}.suscripcion-estandar{background-color:#f3f4f6;border-color:#9ca3af33;color:#4b5563}.suscripcion-premium{background-color:#fdf4ff;border-color:#a855f740;color:#7e22ce}.suscripcion-premium-plus{background-color:#fff1f2;border-color:#f43f5e40;color:#be123c}.suscripcion-default{background-color:#e2e8f0;border-color:#94a3b880;color:#475569}.estado-activo{background-color:#ecfdf5;border-color:#10b98140;color:#047857}.house-count-label{color:#4a5568;font-size:.8rem;margin-top:.25rem}.estado-inactivo{background-color:#fef2f2;border-color:#ef444440;color:#b91c1c}.estado-default{background-color:#e2e8f0;border-color:#94a3b880;color:#475569}.plan-price{color:#1f2937;font-size:.78rem;font-weight:600;margin-top:.35rem}.btn-details{align-items:center;background:linear-gradient(135deg,#4338ca,#6366f1);border-radius:999px;color:#fff;display:inline-flex;font-weight:600;justify-content:center;min-width:120px;padding:.55rem 1.1rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.btn-details:hover{box-shadow:0 12px 24px #4f46e547;transform:translateY(-2px)}.lista-fracc-loading{align-items:center;background:linear-gradient(135deg,#111827,#1f2937 50%,#0f172a);color:#e2e8f0;display:flex;flex-direction:column;gap:1.25rem;justify-content:center;min-height:70vh}.loader{animation:spin 1s linear infinite;border:4px solid #94a3b859;border-radius:50%;border-top-color:#6366f1;height:52px;width:52px}@media (max-width:960px){.lista-fracc-surface{padding:2rem}.lista-fracc-header{align-items:flex-start;flex-direction:column}}@media (max-width:720px){.table-wrapper{border-radius:16px;overflow-x:auto;padding:1.25rem .75rem}.lista-fracc-page{padding:2rem 1rem}.btn-details{min-width:auto}}.lista-fracc-header{align-items:center;display:flex;gap:1.25rem}.lista-fracc-header .platform-back-button{flex-shrink:0}.lista-usuarios-section{background:#fff;border-radius:16px;box-shadow:0 10px 35px #4f72ff1f;margin-top:3rem;padding:2rem}.lista-usuarios-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem}.lista-usuarios-header h2{align-items:center;color:#1f2a44;display:flex;font-size:1.6rem;gap:.75rem;margin:0}.lista-usuarios-header h2 svg{color:#667eea}.lista-usuarios-header p{color:#4b5563;font-size:.95rem;margin:0}.lista-usuarios-card{display:flex;flex-direction:column;gap:1.5rem}.lista-usuarios-selector{display:flex;flex-direction:column;gap:.5rem}.lista-usuarios-selector label{color:#1f2937;font-size:.95rem;font-weight:700}.lista-usuarios-selector select{background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;color:#111827;cursor:pointer;font-size:1rem;font-weight:600;max-width:350px;padding:.85rem 1rem;transition:all .2s ease}.lista-usuarios-selector select:hover{border-color:#667eea}.lista-usuarios-selector select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.lista-usuarios-body{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:14px;display:flex;justify-content:center;min-height:200px;padding:1.5rem}.lista-usuarios-status{color:#4b5563;font-size:.95rem;margin:0;text-align:center}.lista-usuarios-error{color:#b91c1c;font-weight:600;margin:0;text-align:center}.lista-usuarios-table-wrapper{overflow-x:auto;width:100%}.lista-usuarios-table{border-collapse:collapse;min-width:700px;width:100%}.lista-usuarios-table td,.lista-usuarios-table th{border-bottom:1px solid #e5e7eb;font-size:.95rem;padding:1rem .9rem;text-align:left}.lista-usuarios-table th{background:#f3f4f6;color:#111827;font-weight:700;position:-webkit-sticky;position:sticky;top:0;z-index:10}.lista-usuarios-table tbody tr{transition:background-color .15s ease}.lista-usuarios-table tbody tr:hover{background:#eef2ff}.lista-usuarios-password{color:#6b21a8;font-family:Fira Code,Consolas,monospace;font-weight:500}@media (max-width:768px){.lista-usuarios-section{padding:1.5rem}.lista-usuarios-header h2{font-size:1.3rem}.lista-usuarios-selector select{max-width:100%}.lista-usuarios-table td,.lista-usuarios-table th{font-size:.85rem;padding:.75rem .5rem}}.registrar-fracc-page{background:linear-gradient(180deg,#f8f9ff,#fff);padding:2rem 1rem 3rem}.registrar-fracc-container{background-color:#fff;border-radius:16px;box-shadow:0 18px 40px #667eea1f;margin:0 auto;max-width:1000px;padding:2rem 2.5rem}.registrar-fracc-header{align-items:center;border-bottom:1px solid #eee;display:flex;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem}.registrar-fracc-header .platform-back-button{flex-shrink:0}.registrar-fracc-header h2{margin:0}.registrar-fracc-header p{color:#666;margin:0}.registrar-fracc-form h4{color:#333;margin-bottom:1.5rem;margin-top:0}.registrar-fracc-form .form-divider{border-top:1px solid #eee;margin-top:2rem;padding-top:1.5rem}.registrar-fracc-form .form-group{margin-bottom:1.5rem}.registrar-fracc-form label{color:#555;display:block;font-weight:600;margin-bottom:.5rem}.registrar-fracc-form input,.registrar-fracc-form select{-webkit-text-fill-color:#0f1426;background-color:#fff;border:1px solid #bfc5d6;border-radius:8px;color:#0f1426!important;font-size:1em;font-weight:500;opacity:1;padding:12px;width:100%}.registrar-fracc-form input:-webkit-autofill,.registrar-fracc-form input:-webkit-autofill:focus,.registrar-fracc-form input:-webkit-autofill:hover{-webkit-text-fill-color:#0f1426;-webkit-box-shadow:inset 0 0 0 1000px #fff}.registrar-fracc-form input:focus,.registrar-fracc-form select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea26;color:#0f1424;outline:none}.registrar-fracc-form input::placeholder{color:#9aa0b3}.error-message{background-color:#f8d7da;color:#dc3545;margin-top:1.5rem;padding:10px;text-align:center}.registrar-fracc-body{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:minmax(0,1fr) 340px}.registrar-fracc-body .registrar-fracc-form{background:#fdfdff;border:1px solid #edf0ff;border-radius:14px;padding:1.5rem 1.8rem}.solicitud-panel{background:#f7f8ff;border:1px solid #e2e7ff;border-radius:14px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.solicitud-panel h4{color:#2a2d56;font-size:1.1rem;margin:0}.solicitud-panel dl{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr;margin:0}.solicitud-panel dl div{display:flex;flex-direction:column;gap:.25rem}.solicitud-panel dt{color:#6f76a1;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}.solicitud-panel dd{color:#2a2d56;font-size:.98rem;margin:0}.panel-hint{color:#5f6590;font-size:.85rem;margin:0}.estado-pill{border-radius:999px;display:inline-block;font-size:.85rem;font-weight:600;padding:.35rem .75rem;text-transform:capitalize}.estado-pendiente{background:#ffc10726;color:#8a6d1f}.estado-contactado{background:#4285f426;color:#2a5cb7}.estado-aprobado{background:#28a74526;color:#1f7a3a}.estado-rechazado{background:#dc354526;color:#962c38}.form-actions{margin-top:2rem;text-align:right}.btn-submit{background-color:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1em;font-weight:700;padding:12px 25px;transition:background-color .2s}.btn-submit:disabled{background-color:#ccc;cursor:not-allowed}.btn-submit:hover:not(:disabled){background-color:#5a6fd2}.form-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:1fr 1fr}.password-group .password-wrapper{position:relative}.password-group input{padding-right:44px}.password-toggle{align-items:center;background:#0000;border:none;color:#667eea;cursor:pointer;display:flex;font-size:1.2rem;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.password-toggle:hover{color:#5a6fd2}.password-hint{color:#6b6f85;display:block;font-size:.85rem;margin-top:.5rem}@media (max-width:960px){.registrar-fracc-body{grid-template-columns:1fr}.solicitud-panel{order:-1}}.solicitudes-back{align-self:flex-start}.solicitudes-surface:after{background:radial-gradient(circle at center,#6c63ff4d,#0000 65%);content:"";height:360px;pointer-events:none;position:absolute;right:-120px;top:-140px;width:360px}.solicitudes-topbar{display:flex;justify-content:flex-start;margin-bottom:24px;position:relative;z-index:1}.solicitudes-back{background:#fffc;border:none;border-radius:999px;box-shadow:0 10px 25px #1f2a5c26;color:#1f2a5c;cursor:pointer;font-weight:600;padding:10px 20px;transition:transform .2s ease,box-shadow .2s ease}.solicitudes-back:hover{box-shadow:0 14px 32px #1f2a5c2e;transform:translateY(-2px)}.solicitudes-hero{margin-bottom:40px;max-width:720px;position:relative;z-index:1}.solicitudes-kicker{background:#3f46d61f;border-radius:999px;color:#3f46d6;display:inline-block;font-size:.82rem;font-weight:700;letter-spacing:.08em;margin-bottom:18px;padding:6px 16px;text-transform:uppercase}.solicitudes-hero h1{color:#111827;font-size:2rem;margin:0 0 14px}.solicitudes-hero p{color:#4b5563;font-size:1.05rem;line-height:1.7;margin:0}.solicitudes-metrics{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:36px;position:relative;z-index:1}.metric-card{background:#ffffffe6;border:1px solid #d1d5ff80;border-radius:18px;box-shadow:0 12px 30px #4258ff2e;padding:20px 24px}.metric-label{color:#5a63a8;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}.metric-card strong{color:#1f2937;display:block;font-size:1.6rem;margin-top:10px}.solicitudes-empty{background:#ffffffeb;border-radius:22px;box-shadow:0 18px 40px #525f7f1f;padding:48px;text-align:center}.solicitudes-empty h3{color:#111827;font-size:1.5rem;margin:0 0 12px}.solicitudes-empty p{color:#4b5563;margin:0}.solicitud-card{background:#fffffffa;border:1px solid #c5cffd73;border-radius:22px;box-shadow:0 20px 45px #525f7f29;display:flex;flex-direction:column;gap:24px;padding:28px 32px}.solicitud-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.solicitud-head h3{color:#1f2937;font-size:1.25rem;margin:0 0 4px}.solicitud-meta{color:#6b7280;font-size:.85rem}.solicitud-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.85rem;font-weight:600;letter-spacing:.02em;padding:6px 14px}.pill-pendiente{background:#ffcd5629;color:#b45309}.pill-contactado{background:#3b82f629;color:#1d4ed8}.pill-rechazado{background:#ef444429;color:#b91c1c}.pill-aprobado{background:#22c55e29;color:#15803d}.solicitud-body{grid-gap:18px 24px;display:grid;gap:18px 24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.solicitud-row{display:flex;flex-direction:column;gap:6px}.solicitud-tag{color:#6366f1;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.solicitud-row p{color:#1f2937;font-size:.98rem;margin:0}.solicitud-row.comentarios{grid-column:1/-1}.solicitud-alert{background:#f9731629;border-radius:12px;color:#9a3412;font-size:.9rem;grid-column:1/-1;padding:14px 16px}.solicitud-actions{align-items:stretch;display:flex;flex-wrap:wrap;gap:16px}.action-stack{display:flex;flex:1 1 280px;flex-direction:column;gap:12px}.action-button{align-items:center;border:none;border-radius:14px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;justify-content:center;padding:14px 24px;text-align:center;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.action-button.primary{background:linear-gradient(135deg,#3651ff,#845bff);box-shadow:0 16px 40px #496cff59;color:#fff;flex:1 1 220px}.action-button.primary:hover{box-shadow:0 20px 48px #496cff66;transform:translateY(-2px)}.action-button.neutral{background:#fff;border:1px solid #3b82f659;color:#1d4ed8}.action-button.neutral:hover{background:#3b82f60d;transform:translateY(-2px)}.action-button.danger{background:#fff;border:1px solid #dc262659;color:#dc2626}.action-button.danger:hover{background:#dc26260d;transform:translateY(-2px)}.solicitudes-section{grid-gap:20px;display:grid;gap:20px;margin-bottom:40px;position:relative;z-index:1}.section-head{align-items:center;display:flex;gap:16px;justify-content:space-between}.section-head h2{color:#111827;font-size:1.35rem;margin:0}.section-head p{color:#4b5563;font-size:.95rem;margin:6px 0 0}.section-count{align-items:center;background:#3145d91f;border-radius:14px;color:#3145d9;display:inline-flex;font-weight:600;justify-content:center;min-width:48px;padding:10px 14px}.section-actions{align-items:center;display:flex;gap:12px}.historial-toggle{background:#ffffffe0;border:none;border-radius:999px;box-shadow:0 10px 24px #1f2a5c24;color:#1f2a5c;cursor:pointer;font-weight:600;padding:10px 18px;transition:transform .2s ease,box-shadow .2s ease}.historial-toggle:hover{box-shadow:0 14px 32px #1f2a5c2e;transform:translateY(-2px)}.solicitud-historial{align-items:center;color:#4b5563;display:flex;flex-wrap:wrap;font-size:.9rem;gap:12px;justify-content:space-between}.historial-retry{background:#4c6fff1f;border-radius:12px;color:#3145d9;font-weight:600;padding:10px 16px;text-decoration:none;transition:background .2s ease,transform .2s ease}.historial-retry:hover{background:#4c6fff2e;transform:translateY(-1px)}.solicitudes-loading{color:#1f2937;font-size:1.1rem;text-align:center}@media (max-width:1024px){.solicitudes-surface{padding:36px 28px 48px}.solicitud-actions{flex-direction:column}.section-head{align-items:flex-start}}@media (max-width:768px){.solicitudes-shell{padding:32px 14px}.solicitudes-surface{border-radius:24px;padding:32px 22px 40px}.solicitud-card{padding:24px}.action-stack{flex-direction:column}.action-button{width:100%}.solicitud-historial{align-items:flex-start;flex-direction:column}}.support-admin-page{background:#f5f7fa;min-height:100vh;padding:28px 18px}.header{align-items:center;color:#1f2937;display:flex;gap:12px;margin-bottom:14px}.header h2{margin:0}.header svg{color:#3f51b5;font-size:22px}.summary{background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:8px}.summary>div{padding:6px 10px}.summary>div+div{border-left:1px dashed #e5e7eb}.summary strong{color:#3f51b5;font-size:1.2rem}.summary span{color:#6b7280;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.list{display:flex;flex-direction:column;gap:10px}.row{grid-gap:12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:grid;gap:12px;grid-template-columns:1fr 280px;padding:12px}.row h4{color:#111827;margin:0 0 6px}.row .meta{color:#6b7280;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px}.row .message{color:#374151;margin:0}.side{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.status-badge{border-radius:10px;font-size:.82rem;padding:6px 10px}.status-badge.pendiente{background:#fff7ed;border:1px solid #f59e0b;color:#d97706}.status-badge.contactada{background:#eff6ff;border:1px solid #60a5fa;color:#1d4ed8}.status-badge.resuelta{background:#ecfdf5;border:1px solid #34d399;color:#065f46}.status-badge.rechazada{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.contact{color:#4b5563;display:flex;flex-direction:column;gap:4px}.contact svg{margin-right:6px}.actions{flex-direction:column;width:100%}.actions,.btn{display:flex;gap:6px}.btn{align-items:center;border-radius:10px;font-weight:700;justify-content:center;padding:8px}.btn.contact{background:#eef2ff;color:#1d4ed8}.btn.success{background:#ecfdf5;color:#065f46}.btn.danger{background:#fef2f2;color:#991b1b}@media (max-width:900px){.row{grid-template-columns:1fr}.row,.side{align-items:flex-start}.actions{flex-direction:row;flex-wrap:wrap;gap:8px}}@media (max-width:640px){.summary>div{border-left:none!important;border-top:1px dashed #e5e7eb;flex:1 1 50%}.summary>div:first-child{border-top:none}.row{padding:10px}.btn{width:100%}}.edit-fracc-container{margin:2rem auto;max-width:900px}.edit-fracc-header{align-items:center;display:flex;gap:1.5rem;margin-bottom:2.5rem}.edit-fracc-header .platform-back-button{flex-shrink:0}.edit-fracc-header h2{font-size:2em;margin:0}.edit-form-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:2rem}.edit-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014;padding:1.5rem 2rem}.edit-card h3{border-bottom:1px solid #eee;margin-top:0;padding-bottom:1rem}.edit-card h3,.form-group{margin-bottom:1.5rem}.form-group:last-child{margin-bottom:0}.form-group label{color:#555;margin-bottom:.5rem}.form-group input,.form-group select{-webkit-text-fill-color:#1f2933;background-color:#fff;border:1px solid #ccc;border-radius:8px;box-sizing:border-box;color:#1f2933;font-size:1em;padding:12px;width:100%}.form-group input::placeholder{color:#6b7280;opacity:1}.form-group select option{color:#1f2933}.save-actions{margin-top:1rem;text-align:right}.save-actions button{background-color:#28a745;border-radius:8px;font-size:1em;font-weight:700;padding:12px 25px;transition:background-color .2s}.save-actions button:disabled{background-color:#ccc;cursor:not-allowed}.save-actions button:hover:not(:disabled){background-color:#218838}.gestion-planes-container{display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:1150px}.gestion-planes-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 18px 45px #4f46e514;display:flex;gap:1.25rem;padding:1.25rem 1.5rem}.gestion-planes-header .header-icon{background:linear-gradient(135deg,#6366f126,#4f46e514);border-radius:14px;color:#4f46e5;display:grid;font-size:1.75rem;height:48px;margin-left:auto;place-items:center;width:48px}.gestion-planes-title h2{color:#0f172a;font-size:1.65rem;margin:0}.gestion-planes-title p{color:#64748b;font-size:.95rem;margin:.35rem 0 0}.gestion-planes-back{flex-shrink:0;margin-right:.25rem}.planes-grid{grid-gap:1.75rem;display:grid;gap:1.75rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.planes-calculator{display:flex;justify-content:center}.calculator-card{background:#fff;border-radius:20px;box-shadow:0 20px 45px #0f172a1a;display:flex;flex-direction:column;gap:1.75rem;max-width:520px;padding:2rem;width:100%}.calculator-header h3{color:#111827;font-size:1.45rem;margin:0}.calculator-header p{color:#64748b;margin:.35rem 0 0}.calculator-controls{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.calculator-field{display:flex;flex-direction:column;gap:.5rem}.calculator-field label{color:#475569;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}.calculator-field input,.calculator-field select{background:#f8fafc;border:1px solid #94a3b899;border-radius:10px;color:#0f172a;font-weight:600;padding:.75rem .85rem;transition:border-color .2s,box-shadow .2s}.calculator-field input:focus,.calculator-field select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f12e;outline:none}.iva-toggle{gap:.75rem}.iva-switch{align-items:center;background:#f8fafc;border:1px solid #94a3b899;border-radius:999px;color:#0f172a;cursor:pointer;display:inline-flex;font-weight:600;gap:.75rem;padding:.35rem .6rem .35rem .35rem;position:relative;transition:border-color .2s,background .2s,color .2s}.iva-switch:hover{border-color:#6366f1}.iva-switch:focus-visible{box-shadow:0 0 0 3px #6366f159;outline:none}.iva-switch.active{background:linear-gradient(135deg,#6366f140,#4f46e538);border-color:#6366f166;color:#1e1b4b}.iva-switch-thumb{background:#94a3b88c;border-radius:999px;height:18px;position:relative;transition:background .2s;width:32px}.iva-switch-thumb:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0f172a4d;content:"";height:14px;left:2px;position:absolute;top:2px;transition:transform .25s;width:14px}.iva-switch.active .iva-switch-thumb{background:#3b82f6a6}.iva-switch.active .iva-switch-thumb:after{transform:translateX(14px)}.iva-switch-label{font-size:.9rem}.calculator-totals{grid-gap:1rem;display:grid;gap:1rem}.calculator-totals div{align-items:center;background:#f8fafc;border-radius:12px;color:#1e293b;display:flex;justify-content:space-between;padding:.75rem 1rem}.calculator-totals span{color:#64748b;font-size:.85rem}.calculator-totals strong{color:#111827;font-size:1.1rem}.calculator-subtotal{background:linear-gradient(135deg,#3b82f61f,#2563eb14);border:1px solid #3b82f62e}.calculator-vat{background:#0f172a0a;border:1px dashed #0f172a33}.calculator-total{background:linear-gradient(135deg,#6366f129,#2563eb1f);border:1px solid #6366f13d}.calculator-total strong{color:#312e81;font-size:1.25rem}.plan-card{background:#fff;border-radius:18px;box-shadow:0 20px 45px #0f172a14;display:flex;flex-direction:column;gap:1rem;padding:1.75rem}.plan-card h3{color:#1e293b;font-size:1.25rem;margin:0;padding-left:12px}.plan-card .form-group{display:flex;flex-direction:column;gap:.5rem}.plan-card label{color:#64748b;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}.plan-card input{background:#f8fafc;border:1px solid #94a3b899;border-radius:10px;color:#0f172a;font-size:1.1rem;font-weight:600;padding:.75rem .85rem;transition:border-color .2s,box-shadow .2s;width:100%}.plan-card input::placeholder{color:#64748bb8;font-weight:500}.plan-card input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f12e;outline:none}.save-actions{display:flex;justify-content:flex-end}.save-actions button{background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;padding:.85rem 2.5rem;transition:transform .2s,box-shadow .2s}.save-actions button:hover:not(:disabled){box-shadow:0 14px 30px #22c55e38;transform:translateY(-1px)}.save-actions button:disabled{cursor:wait;opacity:.6}.comunidad-page{color:#1f2740}.comunidad-page .section-header{align-items:center;display:flex;flex-direction:column;gap:6px;text-align:center}.comunidad-grid{background:linear-gradient(150deg,#fff3,#7654ff38);border:1px solid #ffffff47;border-radius:30px;box-shadow:0 18px 38px #150c3d2e;display:flex;flex-wrap:wrap;gap:32px;justify-content:center;padding:30px}.comunidad-card{align-items:center;background:#fffffff5;border:1px solid #7c5cff2e;border-radius:20px;box-shadow:0 14px 30px #1b124b24;color:#2b1e4c;display:flex;flex:1 1 300px;flex-direction:column;gap:12px;height:100%;max-width:360px;min-height:280px;padding:28px 24px;text-align:center;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}.comunidad-card:hover{box-shadow:0 26px 52px #1b124b38;transform:translateY(-6px)}.comunidad-card-icon{align-items:center;background:linear-gradient(140deg,#7f59ff2e,#ffffffa6);border-radius:20px;color:#6a3fff;display:inline-flex;font-size:2.5rem;height:64px;justify-content:center;width:64px}.comunidad-card h3{color:#261d52;font-size:1.35rem;margin:0}.comunidad-card p{color:#4c3f7a;font-size:.98rem;line-height:1.55;margin:0}.comunidad-card.emergency .comunidad-card-icon{background:linear-gradient(140deg,#d9534f33,#ffffffb8);color:#d9534f}.comunidad-card.emergency:hover{box-shadow:0 28px 56px #d9534f52}@media (max-width:768px){.comunidad-grid{gap:20px;padding:24px}.comunidad-card{flex:1 1 240px;max-width:100%;padding:24px 20px}}.chat-comunitario-page{background:linear-gradient(180deg,#f3f4ff,#f7f9ff);box-sizing:border-box;display:flex;justify-content:center;min-height:calc(100vh - 120px);padding:28px 20px}.chat-comunitario-card{background:#fff;border-radius:20px;box-shadow:0 18px 48px #7047eb29;display:flex;max-width:1160px;min-height:640px;overflow:hidden;width:100%}.chat-sidebar{background:linear-gradient(180deg,#315efb,#6f47eb);color:#fff;display:flex;flex:0 0 340px;flex-direction:column}.chat-sidebar-header{border-bottom:1px solid #ffffff2e;padding:28px 28px 16px}.chat-sidebar-header h2{font-size:1.55rem;font-weight:700;margin:0}.chat-sidebar-header p{color:#ffffffd9;font-size:.92rem;margin:12px 0 0}.chat-fraccionamiento-picker{display:flex;flex-direction:column;gap:8px;margin-top:18px}.chat-fraccionamiento-picker label{color:#ffffffb8;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.chat-fraccionamiento-picker select{background:#ffffff38;border:none;border-radius:10px;color:#111;cursor:pointer;font-weight:600;padding:10px 12px}.chat-fraccionamiento-picker select:focus{box-shadow:0 0 0 2px #fff6;outline:none}.chat-search{padding:18px 24px 0;position:relative}.chat-search input{background:#ffffff2e;border:none;border-radius:12px;color:#fff;font-size:.95rem;padding:12px 14px 12px 40px;width:100%}.chat-search input:disabled{cursor:not-allowed;opacity:.6}.chat-search input::placeholder{color:#ffffffbf}.chat-search input:focus{box-shadow:0 0 0 2px #ffffff47;outline:none}.chat-search-icon{color:#ffffffbf;left:34px;position:absolute;top:50%;transform:translateY(-4px)}.chat-contact-groups{flex:1 1;overflow-y:auto;padding:16px 0 24px}.chat-contact-group{padding:0 8px 20px}.chat-contact-group-header{color:#ffffffa6;font-size:.85rem;letter-spacing:.08em;padding:0 16px 10px;text-transform:uppercase}.chat-contact-list{display:flex;flex-direction:column;gap:10px}.chat-empty-message{background:#ffffff17;border-radius:12px;color:#ffffffbd;font-size:.88rem;margin:0;padding:12px 18px}.chat-contact-row{align-items:center;background:#0000;border:none;border-radius:14px;color:inherit;cursor:pointer;display:flex;gap:14px;padding:12px 18px;transition:background .2s ease,transform .2s ease}.chat-contact-row:hover{background:#ffffff1f;transform:translateY(-1px)}.chat-contact-row.selected{background:#ffffff38}.chat-contact-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;font-weight:700;height:46px;justify-content:center;letter-spacing:.03em;width:46px}.chat-contact-avatar.large{font-size:1.1rem;height:58px;width:58px}.chat-contact-info{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:4px}.chat-contact-top{align-items:center;display:flex;gap:12px;justify-content:space-between;width:100%}.chat-contact-name{font-size:1rem;font-weight:600;letter-spacing:.01em}.chat-unread-badge{align-items:center;background:#ff4d6d;border-radius:999px;color:#fff;display:inline-flex;font-size:.78rem;font-weight:700;height:24px;justify-content:center;min-width:24px;padding:0 8px}.chat-contact-bottom{align-items:center;display:flex;font-size:.83rem;justify-content:space-between;width:100%}.chat-contact-house{color:#ffffffc7}.chat-contact-status{align-items:center;display:inline-flex;font-weight:600;gap:6px}.chat-contact-status svg{font-size:.58rem}.chat-contact-status.online{color:#9ef8c1}.chat-contact-status.online svg{color:#30f59c}.chat-contact-status.offline{color:#ffffff8c}.chat-contact-status.offline svg{color:#ffffff59}.chat-main{align-items:stretch;background:#f6f7fb;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;position:relative;width:100%}.chat-main-header{align-items:center;background:#fff;border-bottom:1px solid #140c2c14;display:flex;justify-content:space-between;padding:24px 28px}.chat-main-header-left{align-items:center;display:flex;gap:18px}.chat-back-button{align-items:center;background:#6f47eb1f;border:none;border-radius:50%;color:#6f47eb;cursor:pointer;display:none;height:40px;justify-content:center;width:40px}.chat-main-contact-meta h3{color:#1b1e37;font-size:1.2rem;margin:0}.chat-main-contact-meta p{color:#596080;font-size:.9rem;margin:4px 0 0}.chat-messages{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;padding:24px 32px;width:100%}.chat-empty-conversation{background:#6f47eb14;border-radius:16px;color:#5a36d8;font-weight:600;margin:auto;padding:48px 30px;text-align:center}.chat-message{display:flex;width:100%}.chat-message.incoming{justify-content:flex-start}.chat-message.outgoing{justify-content:flex-end}.chat-bubble{background:#fff;border-radius:18px;box-shadow:0 6px 18px #140c2c14;max-width:70%;padding:12px 16px;position:relative}.chat-message.outgoing .chat-bubble{background:linear-gradient(135deg,#6f47eb,#88d3ce);color:#fff}.chat-bubble p{line-height:1.45;margin:0 0 6px;word-break:break-word}.chat-message-time{color:#1b1e378a;font-size:.75rem}.chat-message.outgoing .chat-message-time{color:#ffffffc7}.chat-composer{align-items:flex-start!important;align-self:stretch!important;background:#fff!important;border-top:1px solid #140c2c14!important;display:flex!important;flex-direction:column!important;flex-shrink:0!important;gap:8px;height:auto!important;max-width:100%!important;min-height:auto!important;padding:5px!important}.chat-composer,.chat-composer input{box-sizing:border-box!important;width:100%!important}.chat-composer input{background:#f9f9ff!important;border:1px solid #6366f152!important;border-radius:12px!important;display:block!important;flex:1 1!important;font-family:inherit!important;font-size:1.1rem!important;height:180px!important;line-height:1.5!important;max-height:180px!important;max-width:none!important;min-height:180px!important;padding:14px 16px!important;resize:none!important}.chat-composer input::placeholder{color:#140c2c80!important}.chat-composer input:focus{border-color:#6f47eb9e!important;box-shadow:0 0 0 3px #6f47eb26!important;outline:none!important}.chat-composer button{align-items:center!important;align-self:flex-end!important;background:linear-gradient(135deg,#6f47eb,#88d3ce)!important;border:none!important;border-radius:12px!important;box-sizing:border-box!important;color:#fff!important;cursor:pointer;display:inline-flex!important;flex-shrink:0!important;font-size:1rem!important;font-weight:600;gap:10px;height:auto!important;max-height:none!important;min-height:auto!important;padding:12px 24px!important;transition:transform .2s ease,box-shadow .2s ease}.chat-composer button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.chat-composer button:not(:disabled):hover{box-shadow:0 10px 24px #6f47eb47;transform:translateY(-1px)}.chat-placeholder{color:#444b6a;flex:1 1;flex-direction:column;gap:16px;padding:40px;text-align:center}.chat-placeholder,.chat-placeholder-icon{align-items:center;display:flex;justify-content:center}.chat-placeholder-icon{background:#6f47eb1f;border-radius:26px;color:#6f47eb;font-size:3.2rem;height:88px;width:88px}.chat-placeholder h3{font-size:1.4rem;margin:0}.chat-placeholder p{margin:0;max-width:320px}@media (max-width:1080px){.chat-comunitario-card{flex-direction:column}.chat-comunitario-card.contact-selected .chat-sidebar{display:none}.chat-comunitario-card.contact-selected .chat-main{border-radius:20px}.chat-sidebar{border-radius:20px 20px 0 0;flex:0 0 auto}.chat-main{border-radius:0 0 20px 20px}.chat-main-header{position:-webkit-sticky;position:sticky;top:0;z-index:2}.chat-back-button{display:inline-flex}}@media (max-width:720px){.chat-comunitario-page{padding:16px}.chat-messages{padding:18px}.chat-composer{padding:14px 18px!important}}form.chat-composer input[type=text]{font-size:1.1rem!important;height:180px!important;max-height:180px!important;min-height:180px!important;padding:14px 16px!important}.validacion-documentos-page{background-color:#f8fafc;display:flex;flex-direction:column;gap:1.5rem;padding:2rem}.vd-header{grid-gap:1.5rem;align-items:center;background:#fff;border-radius:1.25rem;box-shadow:0 20px 40px #0f172a14;display:grid;gap:1.5rem;grid-template-columns:auto 1fr;padding:1.5rem 2rem}.vd-header-icon{align-items:center;background:#3b82f61f;border-radius:16px;color:#2563eb;display:flex;font-size:1.8rem;height:52px;justify-content:center;width:52px}.vd-header h1{color:#1f2937;font-size:1.9rem;font-weight:700;margin:0}.vd-header p{color:#6b7280;margin:0}.vd-tabs{align-self:flex-start;background:#e2e8f0;border-radius:999px;display:inline-flex;gap:.5rem;margin-top:.5rem;padding:.4rem}.vd-tab{background:#0000;border:none;border-radius:999px;color:#475569;cursor:pointer;font-weight:600;padding:.55rem 1.2rem;transition:background .2s ease,color .2s ease}.vd-tab.active{background:#fff;box-shadow:0 8px 20px #3b82f62e;color:#1d4ed8}.vd-alert{border-radius:.9rem;font-weight:600;padding:1rem 1.25rem}.vd-alert.info{background:#e0f2fe;color:#0369a1}.vd-card{background:#fff;border-radius:1.25rem;box-shadow:0 20px 40px #0f172a14;display:flex;flex-direction:column;gap:1.5rem;padding:2rem}.vd-toolbar{flex-wrap:wrap;gap:1rem;justify-content:space-between}.vd-search,.vd-toolbar{align-items:center;display:flex}.vd-search{gap:.75rem}.vd-search input{border:1px solid #d0d7e3;border-radius:.9rem;font-size:.95rem;min-width:260px;padding:.8rem 1rem}.vd-button{align-items:center;background:linear-gradient(135deg,#2563eb,#4338ca);border:none;border-radius:.9rem;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.75rem 1.35rem;transition:transform .2s ease,box-shadow .2s ease}.vd-button:hover{box-shadow:0 12px 24px #2563eb40;transform:translateY(-1px)}.vd-button.ghost{background:#e2e8f0;box-shadow:none;color:#1e293b}.vd-doc-list,.vd-request-list{display:flex;flex-direction:column;gap:1rem;list-style:none;margin:0;padding:0}.vd-doc-item{grid-gap:1.25rem;align-items:center;background:#f8fafc;border-radius:1rem;display:grid;gap:1.25rem;grid-template-columns:auto 1fr auto;padding:1.1rem 1.25rem}.vd-doc-icon{align-items:center;background:#f8717126;border-radius:14px;color:#ef4444;display:flex;font-size:1.6rem;height:48px;justify-content:center;width:48px}.vd-doc-content h4{color:#1f2937;font-size:1.05rem;margin:0 0 .4rem}.vd-doc-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.75rem}.vd-actions{display:flex;gap:.6rem}.vd-icon-button{align-items:center;background:#e2e8f0;border:none;border-radius:10px;color:#1e293b;cursor:pointer;display:flex;height:36px;justify-content:center;transition:background .2s ease;width:36px}.vd-icon-button:hover{background:#d1d5db}.vd-icon-button.danger{background:#f8717126;color:#b91c1c}.vd-empty{background:#f1f5f9;border-radius:.75rem;color:#64748b;font-weight:500;margin:0;padding:1rem;text-align:center}.vd-request-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.vd-request-filters{display:flex;flex-wrap:wrap;gap:.6rem}.vd-chip{background:#e2e8f0;border:none;border-radius:999px;color:#475569;cursor:pointer;font-weight:600;padding:.45rem 1rem}.vd-chip.selected{background:#2563eb1f;color:#1d4ed8}.vd-request-item{grid-gap:1.25rem;align-items:center;background:#f8fafc;border-radius:1rem;display:grid;gap:1.25rem;grid-template-columns:auto 1fr auto;padding:1.1rem 1.3rem}.vd-request-item.resident{grid-template-columns:auto 1fr}.vd-request-avatar{align-items:center;background:#6366f126;border-radius:14px;color:#4338ca;display:flex;font-size:1.6rem;height:48px;justify-content:center;width:48px}.vd-request-head{align-items:center;display:flex;gap:.75rem}.vd-request-head h4{color:#1f2937;font-size:1.05rem;margin:0}.vd-request-body p{color:#475569;margin:.2rem 0}.vd-request-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.75rem}.vd-request-meta span{align-items:center;display:inline-flex;gap:.35rem}.vd-request-meta span svg{color:#2563eb}.vd-request-extra{color:#475569;display:flex;flex-wrap:wrap;font-size:.82rem;gap:.75rem;margin-top:.5rem}.vd-request-files{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.vd-file-link{align-items:center;background:#2563eb1f;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.82rem;font-weight:600;gap:.35rem;padding:.45rem .85rem;text-decoration:none}.vd-file-link:hover{background:#2563eb33}.vd-request-submitted{color:#94a3b8;font-size:.75rem;margin-top:.75rem}.vd-badge{border-radius:999px;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.vd-badge.warning{background:#fef3c7;color:#92400e}.vd-badge.info{background:#dbeafe;color:#1d4ed8}.vd-badge.success{background:#dcfce7;color:#166534}.vd-badge.danger{background:#fee2e2;color:#b91c1c}.vd-new-request-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.vd-request-template{align-items:center;background:#f8fafc;border:1px dashed #cbd5f5;border-radius:1rem;cursor:pointer;display:flex;gap:1rem;padding:1.25rem;transition:border .2s ease,background .2s ease}.vd-request-template:hover{background:#eef2ff;border-color:#6366f1}.vd-template-icon{align-items:center;background:#6366f11f;border-radius:12px;color:#4338ca;display:flex;font-size:1.2rem;height:44px;justify-content:center;width:44px}@media (max-width:900px){.validacion-documentos-page{padding:1.5rem}.vd-header{grid-template-columns:1fr;text-align:center}.vd-header-icon{justify-self:center}.vd-tabs{align-self:stretch;justify-content:space-between}.vd-search input{min-width:0;width:100%}.vd-request-toolbar,.vd-toolbar{align-items:stretch;flex-direction:column}.vd-doc-item,.vd-request-item{grid-template-columns:1fr;text-align:left}.vd-actions{justify-content:flex-start}.vd-button.ghost{justify-content:center;width:100%}}.mudanza-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:1.5rem;position:fixed;z-index:1100}.mudanza-modal{background:#fff;border-radius:1.5rem;box-shadow:0 30px 60px #0f172a40;display:flex;flex-direction:column;max-height:100%;width:min(720px,100%)}.mudanza-modal-header{align-items:center;display:flex;justify-content:space-between;padding:1.5rem 2rem 1rem}.mudanza-header-meta{display:flex;flex-direction:column;gap:.25rem}.mudanza-header-meta h2{color:#0f172a;font-size:1.6rem;margin:0}.mudanza-template-badge{align-self:flex-start;background:#3b82f61f;border-radius:999px;color:#1d4ed8;font-size:.75rem;font-weight:600;padding:.2rem .6rem}.mudanza-close{background:#94a3b82e;border:none;border-radius:50%;color:#475569;cursor:pointer;display:grid;font-size:1rem;height:38px;place-items:center;transition:background .2s ease,color .2s ease;width:38px}.mudanza-close:hover{background:#3b82f62e;color:#1d4ed8}.mudanza-steps{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr);padding:0 2rem 1rem}.mudanza-step{align-items:center;background:#f1f5f9;border-radius:1rem;color:#475569;display:flex;flex-direction:column;font-size:.85rem;gap:.35rem;padding:.75rem .5rem;transition:background .2s ease,color .2s ease}.mudanza-step-index{background:#94a3b866;border-radius:999px;color:#475569;display:grid;font-weight:700;height:32px;place-items:center;width:32px}.mudanza-step.active{background:#2563eb1f;color:#1d4ed8}.mudanza-step.active .mudanza-step-index{background:linear-gradient(135deg,#2563eb,#4338ca);color:#fff}.mudanza-step.complete{background:#86efac2e;color:#166534}.mudanza-step.complete .mudanza-step-index{background:#22c55e;color:#fff}.mudanza-info{background:#3b82f61f;border-radius:.85rem;color:#1d4ed8;font-weight:500;margin:0 2rem .5rem;padding:.65rem 1rem}.mudanza-error{background:#f8717126;border-radius:.85rem;color:#b91c1c;font-weight:600;margin:0 2rem .75rem;padding:.75rem 1rem}.mudanza-body{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:0 2rem 1.5rem}.mudanza-section h3{color:#0f172a;font-size:1.25rem;margin:0 0 1rem}.mudanza-grid{grid-gap:1rem;gap:1rem}.mudanza-field{color:#1f2937;display:flex;flex-direction:column;font-size:.9rem;gap:.5rem}.mudanza-field input,.mudanza-field select,.mudanza-field textarea{border:1px solid #d0d7e3;border-radius:.85rem;font-size:.95rem;padding:.75rem 1rem;transition:border .2s ease,box-shadow .2s ease}.mudanza-field input:focus,.mudanza-field select:focus,.mudanza-field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26;outline:none}.mudanza-field textarea{min-height:110px;resize:vertical}.mudanza-note{background:#3b82f61f;border-radius:.85rem;color:#1e3a8a;font-weight:500;line-height:1.45;margin-bottom:1rem;padding:.75rem 1rem}.mudanza-warning{color:#b91c1c;font-size:.8rem;font-weight:600}.mudanza-hint{color:#475569;font-size:.9rem;margin:0 0 1rem}.mudanza-upload-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.mudanza-upload-card{background:#f8fafc;border:1px dashed #cbd5f5;border-radius:1rem;display:flex;flex-direction:column;gap:.75rem;padding:1rem}.mudanza-upload-card header{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.mudanza-upload-card h4{color:#0f172a;font-size:1rem;margin:0}.mudanza-upload-card.required h4:after{color:#dc2626;content:" *"}.mudanza-upload-remove{background:none;border:none;color:#dc2626;cursor:pointer;font-weight:600}.mudanza-upload-drop{align-items:center;background:#2563eb14;border:1px dashed #2563eb66;border-radius:.85rem;color:#1d4ed8;cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;gap:.5rem;padding:1.25rem 1rem;text-align:center}.mudanza-upload-drop input{display:none}.mudanza-upload-drop svg{font-size:1.8rem}.mudanza-upload-drop small{color:#475569}.mudanza-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-bottom:1.25rem}.mudanza-summary-block{background:#f1f5f9;border-radius:1rem;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.mudanza-summary-block h4{color:#0f172a;font-size:1rem;margin:0}.mudanza-summary-block ul{color:#334155;display:flex;flex-direction:column;font-size:.9rem;gap:.35rem;list-style:none;margin:0;padding:0}.mudanza-summary-block ul li{align-items:center;display:flex;gap:.35rem}.mudanza-summary-block ul svg{color:#22c55e}.mudanza-summary-block p{color:#334155;line-height:1.5;margin:0}.mudanza-terms{align-items:center;background:#2563eb14;border-radius:.85rem;color:#1d4ed8;display:flex;font-weight:600;gap:.6rem;padding:.75rem 1rem}.mudanza-terms input[type=checkbox]{height:18px;width:18px}.mudanza-footer{align-items:center;border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:space-between;padding:1rem 2rem 1.5rem}.mudanza-footer-actions{align-items:center;display:flex;gap:.75rem}.mudanza-btn{align-items:center;border:none;border-radius:.85rem;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.mudanza-btn.primary{background:linear-gradient(135deg,#2563eb,#4338ca);color:#fff}.mudanza-btn.primary:hover{box-shadow:0 12px 24px #2563eb40;transform:translateY(-1px)}.mudanza-btn.secondary{background:#0f172a0f;color:#1f2937}.mudanza-btn.secondary:hover{background:#0f172a1a}.mudanza-btn.ghost{background:#0000;color:#475569}.mudanza-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:720px){.mudanza-modal{border-radius:1rem}.mudanza-body,.mudanza-footer,.mudanza-modal-header,.mudanza-steps{padding-left:1.25rem;padding-right:1.25rem}.mudanza-steps{grid-template-columns:repeat(2,1fr)}.mudanza-footer{align-items:stretch;flex-direction:column}.mudanza-footer-actions{justify-content:space-between}.mudanza-btn{flex:1 1;justify-content:center}}.confirm-overlay{align-items:center;background:#0e002180;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.confirm-modal{background:#1e1b2e;border-radius:14px;box-shadow:0 12px 40px #00000059;color:#fff;max-width:520px;overflow:hidden;width:92%}.confirm-header{align-items:center;background:linear-gradient(90deg,#6d28d9,#7c3aed);display:flex;gap:10px;padding:16px 18px}.confirm-header h4{font-size:1.05rem;margin:0}.confirm-body{padding:18px}.confirm-body p{line-height:1.5;margin:0}.confirm-actions{background:#231f3d;gap:10px;justify-content:flex-end;padding:16px 18px}.confirm-actions .btn-primary{background:#6d28d9;border:none;border-radius:10px;color:#fff;font-weight:600;padding:8px 14px}.confirm-actions .btn-primary:hover{background:#7c3aed}.confirm-actions .btn-secondary{background:#0000;border:1px solid #ffffff40;border-radius:10px;color:#fff;font-weight:500;padding:8px 14px}.confirm-actions .btn-secondary:hover{border-color:#ffffff73}.confirm-modal.warning .confirm-header{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.confirm-modal.warning .confirm-actions{background:#2a233e}.confirm-modal.warning .confirm-actions .btn-primary{background:#f59e0b}.confirm-modal.warning .confirm-actions .btn-primary:hover{background:#d97706}.confirm-modal.danger .confirm-header{background:linear-gradient(90deg,#ef4444,#f87171)}.confirm-modal.danger .confirm-actions{background:#2a233e}.confirm-modal.danger .confirm-actions .btn-primary{background:#ef4444}.confirm-modal.danger .confirm-actions .btn-primary:hover{background:#dc2626}.confirm-dialog-backdrop{align-items:center;background:#0f172a73;bottom:0;display:flex;justify-content:center;left:0;padding:16px;position:fixed;right:0;top:0;z-index:1000}.confirm-dialog{background:#fff;border-radius:14px;box-shadow:0 20px 45px #02061738;color:#111827;font-family:inherit;padding:22px 24px;width:min(420px,100%)}.confirm-dialog h4{font-size:1.1rem;font-weight:700;margin:0 0 10px}.confirm-dialog p{color:#374151;line-height:1.45;margin:0 0 18px}.confirm-dialog-actions{display:flex;gap:12px;justify-content:flex-end}.confirm-dialog-button{background:#fff;border:1px solid #0f172a14;border-radius:10px;color:#1f2937;cursor:pointer;font-weight:700;padding:9px 16px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.confirm-dialog-button:hover:not(:disabled){box-shadow:0 6px 18px #0f172a1f;transform:translateY(-1px)}.confirm-dialog-button:disabled{box-shadow:none;cursor:default;opacity:.6;transform:none}.confirm-dialog-button.primary{background:#546efd;border-color:#546efd;box-shadow:0 10px 28px #546efd2e;color:#fff}.confirm-dialog-button.primary:hover:not(:disabled){background:#4057d6;border-color:#4057d6}.confirm-dialog-button.danger{background:#ef4444;border-color:#ef4444;box-shadow:0 12px 32px #ef444440;color:#fff}.confirm-dialog-button.danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.mudanza-review-overlay{align-items:center;background-color:#00000073;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:999}.mudanza-review-modal{background-color:#fff;border-radius:16px;box-shadow:0 24px 48px #0f172a2e;display:flex;flex-direction:column;max-height:90vh;max-width:720px;overflow:hidden;width:100%}.mudanza-review-header{align-items:center;border-bottom:1px solid #0f172a14;display:flex;justify-content:space-between;padding:1.75rem 2rem 1.25rem}.mudanza-review-header-meta{align-items:center;display:flex;gap:1rem}.mudanza-review-avatar{background:linear-gradient(135deg,#1d4ed8,#2563eb);border-radius:50%;color:#fff;display:grid;font-size:1.5rem;height:56px;place-items:center;width:56px}.mudanza-review-header h2{color:#111827;font-size:1.25rem;font-weight:600;margin:0}.mudanza-review-status{border-radius:999px;display:inline-block;font-size:.875rem;font-weight:600;letter-spacing:.04em;margin-top:.35rem;padding:.25rem .75rem;text-transform:uppercase}.mudanza-review-status.warning{background-color:#f59e0b29;color:#b45309}.mudanza-review-status.info{background-color:#3b82f629;color:#1d4ed8}.mudanza-review-status.success{background-color:#10b98129;color:#047857}.mudanza-review-status.danger{background-color:#ef444429;color:#b91c1c}.mudanza-review-close{background:none;border:none;color:#6b7280;cursor:pointer;display:grid;font-size:1.25rem;place-items:center;transition:color .2s ease}.mudanza-review-close:hover:enabled{color:#111827}.mudanza-review-close:disabled{cursor:not-allowed;opacity:.5}.mudanza-review-body{overflow-y:auto;padding:1.5rem 2rem}.mudanza-review-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.mudanza-review-label{align-items:center;color:#6b7280;display:inline-flex;font-size:.8125rem;font-weight:600;gap:.5rem;letter-spacing:.04em;text-transform:uppercase}.mudanza-review-grid p{color:#111827;font-size:.95rem;margin:.35rem 0 0;word-break:break-word}.mudanza-review-section{margin-top:1.75rem}.mudanza-review-section h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 .5rem}.mudanza-review-section p{color:#374151;line-height:1.5;margin:0}.mudanza-review-files{grid-gap:.75rem;display:grid;gap:.75rem;list-style:none;margin:0;padding:0}.mudanza-review-files li a{align-items:center;color:#1d4ed8;display:inline-flex;font-weight:600;gap:.5rem;text-decoration:none}.mudanza-review-files li a:hover{text-decoration:underline}.mudanza-review-empty{color:#6b7280;margin:0}.mudanza-review-meta{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.875rem;gap:1rem;margin-top:2rem}.mudanza-review-error{background-color:#ef44441f;border-radius:8px;color:#b91c1c;font-weight:600;margin-top:1rem;padding:.75rem 1rem}.mudanza-review-footer{align-items:center;border-top:1px solid #0f172a14;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1.25rem 2rem 1.75rem}.mudanza-review-actions{display:flex;flex-wrap:wrap;gap:.75rem}.mudanza-review-action{border:none;border-radius:999px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:transform .2s ease,box-shadow .2s ease}.mudanza-review-action.warning{background-color:#f59e0b2e;color:#b45309}.mudanza-review-action.info{background-color:#3b82f62e;color:#1d4ed8}.mudanza-review-action.success{background-color:#10b9812e;color:#047857}.mudanza-review-action.danger{background-color:#ef44442e;color:#b91c1c}.mudanza-review-action.active{box-shadow:inset 0 0 0 2px #0f172a2e;transform:translateY(1px)}.mudanza-review-action:disabled{cursor:not-allowed;opacity:.55}.mudanza-review-action:not(:disabled):hover{transform:translateY(-1px)}.mudanza-review-secondary{background-color:initial;border:1px solid #0f172a29;border-radius:999px;color:#1f2937;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem}.mudanza-review-secondary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:640px){.mudanza-review-modal{border-radius:0;max-width:100%}.mudanza-review-body,.mudanza-review-footer,.mudanza-review-header{padding-left:1.25rem;padding-right:1.25rem}}.confirm-modal-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.confirm-modal-content{animation:slideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:480px;overflow:hidden;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.confirm-modal-header{border-bottom:1px solid #e0e0e0;gap:12px;padding:24px 24px 16px}.modal-icon{flex-shrink:0;font-size:32px}.warning-icon{color:#ff9800}.success-icon{color:#4caf50}.info-icon{color:#2196f3}.confirm-modal-title{color:#333;font-size:20px;font-weight:600;margin:0}.confirm-modal-body{padding:24px}.confirm-modal-message{color:#555;font-size:15px;line-height:1.5;margin:0}.confirm-modal-footer{padding:16px 24px 24px}.confirm-modal-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.cancel-btn{background-color:#f5f5f5;color:#666}.cancel-btn:hover{background-color:#e0e0e0}.confirm-btn{color:#fff}.warning-btn{background-color:#ff9800}.warning-btn:hover{background-color:#f57c00}.success-btn{background-color:#4caf50}.success-btn:hover{background-color:#388e3c}.info-btn{background-color:#2196f3}.info-btn:hover{background-color:#1976d2}.warning-modal .confirm-modal-header{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-bottom-color:#ffcc80}.success-modal .confirm-modal-header{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-bottom-color:#a5d6a7}.info-modal .confirm-modal-header{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-bottom-color:#90caf9}.gestion-usuarios-container{margin:2rem auto 4rem;max-width:1200px;padding:0 1.5rem 3rem}.gestion-usuarios-header{align-items:flex-start;background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000000d;display:flex;gap:1.5rem;margin-bottom:2rem;padding:1.5rem 2rem}.gestion-usuarios-title{align-items:flex-start;display:flex;flex:1 1;gap:1rem}.gestion-usuarios-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:1.5rem;height:50px;padding:12px;width:50px}.gestion-usuarios-header h1{color:#1f2a44;font-size:1.8rem;margin:0 0 .5rem}.gestion-usuarios-header p{color:#4b5563;margin:0}.gestion-usuarios-card{background:#fff;border-radius:16px;box-shadow:0 10px 35px #4f72ff1f;display:flex;flex-direction:column;gap:2rem;padding:2rem}.search-filter-bar{align-items:center;background:linear-gradient(135deg,#f9fafb,#fff);border:2px solid #e5e7eb;border-radius:12px;display:flex;padding:.5rem 1rem;position:relative;transition:all .3s ease}.search-filter-bar:focus-within{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-icon{font-size:1.1rem;margin-right:.75rem;transition:color .2s ease}.search-filter-bar:focus-within .search-icon{color:#667eea}.search-input{background:#0000;border:none;color:#111827;flex:1 1;font-size:.95rem;font-weight:500;outline:none;padding:.5rem 0 .5rem .5rem}.search-input::placeholder{color:#9ca3af;font-weight:400}.clear-search-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.3rem;font-weight:700;height:28px;justify-content:center;line-height:1;margin-left:.5rem;transition:all .2s ease;width:28px}.clear-search-btn:hover{background:#dc2626;transform:scale(1.1)}.clear-search-btn:active{transform:scale(.95)}.gestion-usuarios-selector{display:flex;flex-direction:column;gap:.5rem}.gestion-usuarios-selector label{color:#1f2937;font-size:.95rem;font-weight:700}.gestion-usuarios-selector select{background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;color:#111827;cursor:pointer;font-size:1rem;font-weight:600;padding:.85rem 1rem;transition:all .2s ease}.gestion-usuarios-selector select:hover{border-color:#667eea}.gestion-usuarios-selector select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.gestion-usuarios-body{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:14px;display:flex;justify-content:center;min-height:200px;padding:1.5rem}.gestion-usuarios-status{color:#4b5563;font-size:.95rem;margin:0;text-align:center}.gestion-usuarios-error{color:#b91c1c;font-weight:600;margin:0;text-align:center}.gestion-usuarios-table-wrapper{overflow-x:auto;width:100%}.gestion-usuarios-table{border-collapse:collapse;min-width:700px;width:100%}.gestion-usuarios-table td,.gestion-usuarios-table th{border-bottom:1px solid #e5e7eb;font-size:.95rem;padding:1rem .9rem;text-align:left;vertical-align:middle}.gestion-usuarios-table th{background:#f3f4f6;color:#111827;font-weight:700;position:-webkit-sticky;position:sticky;top:0;z-index:10}.gestion-usuarios-table tbody tr{transition:background-color .15s ease}.gestion-usuarios-table tbody tr:hover{background:#eef2ff}.edit-btn,.reset-btn{border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-weight:700;min-width:120px;padding:.4rem .85rem;text-align:center;transition:all .2s ease}.edit-btn{background:#eef2ff;color:#4338ca}.edit-btn:hover{background:#e0e7ff;border-color:#c7d2fe}.edit-modal-backdrop{align-items:center;background:#11182773;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:2000}.edit-modal{background:#fff;border-radius:14px;box-shadow:0 25px 60px #0000002e;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:min(840px,100%)}.edit-modal-head{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem 1.25rem}.edit-modal-head h3{color:#111827;font-size:1.2rem;margin:0}.close-btn{background:#0000;font-size:1.4rem;line-height:1}.edit-modal-body{overflow-y:auto;padding:1.75rem}.form-grid{grid-gap:1.25rem 1.5rem;gap:1.25rem 1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.form-grid-2col{gap:1.5rem 1.25rem;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-2col .full-width{grid-column:1/-1}@media (max-width:768px){.form-grid-2col{grid-template-columns:1fr}}.form-label{gap:.5rem}.form-grid label,.form-label{color:#1f2937;display:flex;flex-direction:column;font-size:.95rem;font-weight:600}.form-grid label{gap:.35rem}.form-grid input,.form-grid select,.form-grid textarea,.form-input-disabled,.form-select{background:#f9fafb;border:1px solid #d1d5db;border-radius:10px;box-sizing:border-box;font-size:.95rem;padding:.75rem .85rem;width:100%}.password-wrapper{position:relative}.password-wrapper input{padding-right:44px}.toggle-password{align-items:center;background:#0000;border:none;color:#6b7280;cursor:pointer;display:inline-flex;font-size:1.05rem;justify-content:center;padding:4px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.toggle-password:hover{color:#4b5563}.form-grid input:disabled{background:#f3f4f6;color:#6b7280}.form-input-disabled{background:#f3f4f6!important;color:#6b7280!important;cursor:not-allowed}.form-select{background:#f9fafb;border:1px solid #d1d5db;border-radius:10px;color:#111827;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem .85rem;transition:all .2s ease}.form-select:hover{background:#fff;border-color:#9ca3af}.form-select:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-helper-text{color:#6b7280;font-weight:400;line-height:1.4}.form-error-text,.form-helper-text{display:block;font-size:.85rem;margin-top:.35rem}.form-error-text{color:#dc2626;font-weight:600}.tab-bar{display:flex;gap:.5rem;margin-bottom:1rem}.tab-btn{background:#f9fafb;border:1px solid #d1d5db;border-radius:10px;color:#111827;cursor:pointer;font-weight:700;padding:.5rem .9rem}.tab-btn.active{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.custom-fields{background:#fff;border:1px solid #e5e7eb;border-radius:12px}.custom-fields-head{grid-gap:.75rem;background:#f3f4f6;display:grid;font-weight:700;gap:.75rem;grid-template-columns:1fr 1fr 100px;padding:.9rem 1rem}.custom-fields-body{padding:.9rem 1rem}.custom-fields-empty{color:#6b7280;font-size:.95rem}.custom-field-row{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr 100px;margin-bottom:.75rem}.cf-input{background:#f9fafb;border-radius:10px;font-size:.95rem;padding:.6rem .75rem;width:100%}.cf-delete,.cf-input{border:1px solid #d1d5db}.cf-delete{background:#fee2e2;border-radius:10px;color:#b91c1c;cursor:pointer;font-weight:800}.custom-fields-footer{display:flex;justify-content:flex-end;padding:.75rem 1rem 1rem}.edit-modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.25rem}.ghost-btn,.primary-btn{border:1px solid #0000;border-radius:10px;cursor:pointer;font-weight:700;padding:.75rem 1.1rem;transition:all .2s ease}.primary-btn{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.primary-btn:disabled{cursor:not-allowed;opacity:.6}.ghost-btn{background:#f9fafb;border-color:#d1d5db;color:#111827}.ghost-btn:hover{background:#eef2ff;border-color:#c7d2fe}.gestion-usuarios-password .copy-btn:hover,.gestion-usuarios-password .reveal-btn:hover{background:#c7d2fe}.reset-modal-backdrop{align-items:center;background:#0f172aa6;display:flex;inset:0;justify-content:center;padding:1.25rem;position:fixed;z-index:2400}.reset-modal{background:linear-gradient(135deg,#0f172a,#111827);border:1px solid #1f2937;border-radius:16px;box-shadow:0 20px 60px #00000059;color:#e5e7eb;padding:1.25rem 1.5rem;width:min(430px,100%)}.reset-modal.error{background:linear-gradient(135deg,#3b0f0f,#1f0f0f);border-color:#7f1d1d}.reset-modal-header{align-items:flex-start;display:flex;gap:.75rem}.reset-modal-icon{font-size:1.8rem}.reset-modal-icon.success{color:#22c55e}.reset-modal-icon.error{color:#f97316}.reset-modal-title{color:#f8fafc;font-size:1.1rem;font-weight:800;margin:0}.reset-modal-subtitle{color:#cbd5e1;font-size:.95rem;margin:2px 0 0}.reset-modal-body{display:flex;flex-direction:column;gap:8px;margin:14px 0}.reset-modal-email{background:#ffffff0f;border:1px dashed #475569;border-radius:10px;color:#e2e8f0;font-weight:700;padding:10px 12px;word-break:break-all}.reset-modal-hint{color:#e5e7eb;margin:0;opacity:.85}.reset-modal-footer{display:flex;justify-content:flex-end}.reset-modal-btn{background:#06b6d4;border:none;border-radius:10px;box-shadow:0 12px 35px #06b6d459;color:#0b1021;cursor:pointer;font-weight:800;padding:.65rem 1.3rem;transition:transform .2s ease,box-shadow .2s ease}.reset-modal-btn:hover{box-shadow:0 16px 45px #06b6d473;transform:translateY(-1px)}.reset-modal-btn:focus{outline:2px solid #22d3ee;outline-offset:2px}@media (max-width:768px){.gestion-usuarios-container{margin:1rem auto 3rem;padding:0 1rem 2rem}.gestion-usuarios-header{flex-direction:column;gap:1rem}.gestion-usuarios-card{padding:1.5rem}.gestion-usuarios-table td,.gestion-usuarios-table th{font-size:.85rem;padding:.75rem .5rem}}.superadmin-layout{background-color:#f4f7f6;display:flex;flex-direction:column;height:100vh}.superadmin-header{background-color:#2c3e50;color:#fff;font-size:1.3rem;font-weight:600;margin-bottom:30px;padding:15px 0;text-align:center}.superadmin-content{flex-grow:1;overflow-y:auto;padding:30px}.superadmin-layout .main-nav{background-color:#34495e;border-radius:12px;box-shadow:0 2px 4px #0003;margin:12px auto;padding:6px;width:calc(100% - 48px)}.superadmin-layout .nav-list{flex-wrap:nowrap;justify-content:center;overflow-x:auto}.superadmin-layout .nav-link{border-radius:999px;color:#ecf0f1;margin:0;padding:10px 16px;transition:background-color .2s,box-shadow .2s}.superadmin-layout .nav-link:hover{background-color:#4a627a}.superadmin-layout .nav-link.active{background-color:#1abc9c;box-shadow:0 4px 10px #1abc9c59;color:#fff;transform:none}.notifications-center-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c111da6;display:flex;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:1000}.notifications-center-modal{background:#fff;border-radius:16px;box-shadow:0 32px 60px #0f172a40;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:min(1040px,100%)}.notifications-center-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem 2rem 1rem}.notifications-center-header h2{color:#0f172a;font-size:1.75rem;margin:0}.notifications-center-header p{color:#475569;font-size:.95rem;margin:.25rem 0 0}.notifications-close{background:#0000;border:none;border-radius:50%;color:#0f172a;cursor:pointer;font-size:1.35rem;padding:.25rem;transition:background .2s ease}.notifications-close:hover{background:#0f172a14}.notifications-center-tabs{grid-gap:.5rem;background:linear-gradient(90deg,#0f172a0f,#0f172a00);display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr);padding:.75rem 2rem}.notifications-center-tabs button{background:#e2e8f0;border:none;border-radius:12px;color:#334155;cursor:pointer;font-weight:600;padding:.75rem 1rem;transition:background .2s ease,color .2s ease,transform .2s ease}.notifications-center-tabs button.active{background:#0f172a;box-shadow:0 10px 20px #0f172a33;color:#fff;transform:translateY(-2px)}.notifications-center-content{overflow-y:auto;padding:0 2rem 2rem}.notifications-center-section{display:flex;flex-direction:column;gap:1.5rem}.notifications-summary-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.notifications-summary-header h4{color:#0f172a;font-size:1.3rem;margin:0}.notifications-summary-header p{color:#475569;margin:.25rem 0 0}.notifications-summary-actions{display:flex;gap:.75rem}.notifications-control{align-items:center;background:#0f172a;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.7rem 1rem;transition:background .2s ease,transform .2s ease}.notifications-control:disabled{cursor:not-allowed;opacity:.55;transform:none}.notifications-control:not(:disabled):hover{background:#1e293b;transform:translateY(-1px)}.notifications-filters{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.notifications-filters header{align-items:center;color:#0f172a;display:flex;gap:1rem;justify-content:space-between}.notifications-reset{background:#0000;border:none;color:#2563eb;cursor:pointer;font-size:.95rem;font-weight:600}.notifications-filter-chips{display:flex;flex-wrap:wrap;gap:.6rem}.notifications-filter-chip{background:#fff;border:1px solid #cbd5f5;border-radius:999px;color:#475569;cursor:pointer;font-weight:500;padding:.4rem .75rem;transition:background .2s ease,border .2s ease,color .2s ease}.notifications-filter-chip.selected{background:#0f172a;border-color:#0f172a;color:#fff}.notifications-filter-empty{color:#94a3b8}.notifications-search,.notifications-search-inline{display:flex;flex-direction:column;gap:.4rem}.notifications-search input,.notifications-search-inline input{border:1px solid #cbd5f5;border-radius:999px;font-size:.95rem;padding:.65rem 1rem}.notifications-summary-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));list-style:none;margin:0;padding:0}.notifications-summary-stats li{align-items:center;background:linear-gradient(135deg,#0f172ad9,#2563ebd9);border-radius:16px;color:#fff;display:flex;gap:1rem;justify-content:space-between;padding:1rem}.notifications-summary-list{grid-gap:1rem;display:grid;gap:1rem;list-style:none;margin:0;padding:0}.notifications-summary-item{background:#fff;border:1px solid #e2e8f0;border-radius:16px;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.25rem}.notifications-summary-title{color:#0f172a;font-weight:600}.notifications-summary-description{color:#475569;margin:0}.notifications-summary-meta{align-items:center;color:#64748b;display:flex;gap:.5rem;justify-content:space-between}.notifications-tag{align-items:center;background:#2563eb1a;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.85rem;font-weight:600;padding:.35rem .8rem}.notifications-summary-footer{display:flex;justify-content:flex-end}.notifications-link{align-items:center;background:#0000;border:none;color:#2563eb;cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem}.notifications-link svg{font-size:.85rem}.notifications-empty{color:#94a3b8;margin:0;text-align:center}.notifications-detail-controls{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.notifications-detail-table-wrapper{border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.notifications-detail-table{border-collapse:collapse;font-size:.95rem;width:100%}.notifications-detail-table thead{background:#0f172a;color:#fff}.notifications-detail-table td,.notifications-detail-table th{border-bottom:1px solid #e2e8f0;padding:.9rem 1rem;text-align:left;vertical-align:top}.notifications-detail-title{color:#0f172a;font-weight:600}.notifications-detail-description{color:#475569;display:block;margin-top:.25rem}.notifications-priority{align-items:center;border-radius:999px;display:inline-flex;font-size:.85rem;font-weight:600;padding:.25rem .65rem}.notifications-priority-normal{background:#22c55e26;color:#166534}.notifications-priority-alta,.notifications-priority-urgente{background:#dc262626;color:#b91c1c}.notifications-priority-media{background:#3b82f626;color:#1d4ed8}.notifications-center-modal .sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}@media (max-width:768px){.notifications-center-modal{padding-bottom:1rem;width:min(96vw,720px)}.notifications-center-content,.notifications-center-header,.notifications-center-tabs{padding-left:1.25rem;padding-right:1.25rem}.notifications-control{justify-content:center;width:100%}.notifications-detail-controls{align-items:stretch;flex-direction:column}.notifications-summary-meta{align-items:flex-start;flex-direction:column}.notifications-detail-table-wrapper{overflow:auto}.notifications-detail-table td,.notifications-detail-table th{white-space:nowrap}}.welcome-config-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.welcome-config-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.welcome-config-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #e9ecef;padding:24px 28px}.welcome-config-modal-header h2{color:#fff;font-size:24px;font-weight:600;margin:0}.welcome-config-modal-body{padding:28px}.intro-text,.loading-text{font-size:16px}.intro-text{color:#495057;line-height:1.6}.checklist-container,.intro-text{margin-bottom:24px}.checklist-container h3{color:#212529;font-size:18px;font-weight:600;margin:0 0 16px}.checklist-items{display:flex;flex-direction:column;gap:12px}.checklist-item{align-items:flex-start;border:2px solid #e9ecef;border-radius:8px;display:flex;gap:12px;padding:14px;transition:all .3s ease}.checklist-item.complete{background-color:#d4edda;border-color:#28a745}.checklist-item.incomplete{background-color:#fff3cd;border-color:#ffc107}.checklist-icon{font-size:24px;font-weight:700;min-width:30px;text-align:center}.checklist-item.complete .checklist-icon{color:#28a745}.checklist-item.incomplete .checklist-icon{color:#ffc107}.checklist-text{flex:1 1}.checklist-text strong{color:#212529;display:block;font-size:16px;margin-bottom:4px}.checklist-text small{color:#6c757d;display:block;font-size:13px;line-height:1.4}.warning-box{background-color:#fff3cd;border:2px solid #ffc107;border-radius:8px;margin-bottom:16px;padding:16px}.warning-box p{color:#856404;font-size:15px;line-height:1.5;margin:0}.success-box{background-color:#d4edda;border:2px solid #28a745;border-radius:8px;margin-bottom:16px;padding:16px}.success-box p{color:#155724;font-size:15px;line-height:1.5;margin:0}.welcome-config-modal-footer{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:20px 28px}.btn-continue,.btn-go-config{border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 28px;transition:all .3s ease}.btn-go-config{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-go-config:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-go-config:disabled{cursor:not-allowed;opacity:.6}.btn-continue{background-color:#28a745;color:#fff}.btn-continue:hover{background-color:#218838;box-shadow:0 4px 12px #28a74566;transform:translateY(-2px)}@media (max-width:640px){.welcome-config-modal-content{margin:10px;max-width:95%}.welcome-config-modal-header h2{font-size:20px}.checklist-text strong{font-size:14px}.checklist-text small{font-size:12px}}.dashboard-container{grid-gap:1.75rem;display:grid;gap:1.75rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:2rem}.dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 22px 45px #0f172a14;display:flex;flex-direction:column;gap:1.25rem;padding:1.75rem}.dashboard-card h3{color:#0f172a;gap:.5rem;margin:0}.card-content{display:flex;flex-direction:column;gap:.75rem}.summary-item{align-items:center;border-bottom:1px solid #f1f5f9;color:#0f172a;justify-content:space-between;padding:.6rem 0}.summary-item:last-child{border-bottom:none}.summary-item.morosos span{color:#dc2626;font-weight:700}.summary-item strong{color:#475569;font-weight:600}.summary-item span{font-weight:600}.summary-item.summary-divider{border-bottom:none;border-top:1px dashed #94a3b8b3;margin-top:.75rem;padding-top:.75rem}.dashboard-card-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.dashboard-card-action{align-items:center;background:#0f172a;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.55rem .95rem}.dashboard-card-action svg,.dashboard-link-button svg{font-size:.85rem}.notification-item{background:#f8fafc;border:1px solid #0000;border-radius:14px;gap:.35rem;padding:.9rem 1rem}.notification-item strong{color:#0f172a}.notification-item p{color:#475569;margin:0}.notification-item small{color:#64748b}.dashboard-card-footer{border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;margin-top:auto;padding-top:1rem}.dashboard-link-button{align-items:center;background:#0000;border:none;color:#2563eb;cursor:pointer;display:inline-flex;font-weight:600;gap:.35rem}@media (max-width:768px){.dashboard-card{padding:1.4rem}.dashboard-container{gap:1.25rem;grid-template-columns:1fr}}.auth-details-card{background-color:#fffffff2;border-radius:20px;box-shadow:0 8px 32px 0 #1f268733;color:#333;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:25px}.auth-details-card,.user-info{align-items:center;display:flex}.user-info{gap:15px}.user-icon{color:#6c757d;font-size:3em}.signed-in-as{color:#666;font-size:.9em;margin:0}.user-email{font-size:1.1em;font-weight:600;margin:0}.sign-out-button{align-items:center;background-color:#d9534f;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:700;gap:8px;padding:10px 20px;transition:background-color .2s}.sign-out-button:hover{background-color:#c9302c}.config-page{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:40px 20px}.config-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#fff;margin-bottom:40px;padding:25px}.config-header h1{font-size:2.5em;margin:0}.config-header p{font-size:1.2em;opacity:.8}.config-page .auth-details-card{margin-bottom:40px}.config-section{margin-top:40px}.config-section:first-of-type{margin-top:0}.config-section>h3{align-items:center;border-bottom:2px solid #ffffff4d;color:#fff;display:flex;font-size:1.8em;gap:12px;margin-bottom:20px;padding-bottom:10px}.config-grid{grid-gap:30px;gap:30px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.config-grid-single{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}@media (max-width:380px){.config-form-row,.config-grid-single{grid-template-columns:1fr}}.config-card{background-color:#fffffffa;border-radius:20px;box-shadow:0 8px 32px 0 #1f268733;color:#333;padding:25px;transition:transform .2s ease-in-out}.config-card:hover{transform:translateY(-5px)}.config-card h4{align-items:center;border-bottom:1px solid #eee;display:flex;font-size:1.3em;gap:10px;margin-bottom:25px;margin-top:0;padding-bottom:15px}.config-card-subtitle{color:#6b7280;font-size:.95em;margin:-10px 0 20px}.config-subtitle-contrast{color:#e8ecff!important}.config-card-traffic{background:linear-gradient(160deg,#5474fd14,#5474fd05)}.config-form{gap:16px}.config-form,.config-form-group{display:flex;flex-direction:column}.config-form-group{gap:6px}.config-form-group label{color:#1e293b;font-weight:600}.config-form-group input,.config-form-group textarea{background-color:#f8fafccc;border:1px solid #94a3b880;border-radius:10px;font-size:.95em;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease}.config-form-group input:focus,.config-form-group textarea:focus{border-color:#546efd;box-shadow:0 0 0 3px #546efd26;outline:none}.config-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.config-form-group input[type=file]{padding:8px 0}.config-card-recibos{background:linear-gradient(135deg,#6b7cff,#8a4bff);box-shadow:0 10px 30px #5a4cdc40;color:#fff}.config-card-recibos .config-card-subtitle,.config-card-recibos .config-form-group label,.config-card-recibos .config-status{color:#f7f8ff}.config-card-header-row{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.config-card-title-group{align-items:center;display:flex;gap:.75rem}.config-card-icon{color:#f7f8ff;font-size:1.6em}.config-back-link{align-items:center;color:#fff;display:inline-flex;font-weight:600;gap:.4rem;text-decoration:none}.config-back-link:hover{color:#e8ecff}.upload-chip{align-items:center;background:#546efd0f;border:1px dashed #546efd80;border-radius:10px;color:#334155;cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;padding:8px 10px;width:-webkit-fit-content;width:fit-content}.upload-chip input{display:none}.config-hint{color:#e8ecff;display:block;font-size:.85rem;margin-bottom:6px;margin-top:-6px}.help-icon{background:#ffffff2e;color:#1f3b8f;font-size:.9rem;font-weight:800;margin-left:6px}.conceptos-list{background:#ffffff14;border:1px solid #ffffff24;border-radius:12px;padding:14px}.conceptos-list ul{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));list-style:none;margin:0 0 10px;padding:0}.conceptos-list li{align-items:center;background:#ffffff26;border-radius:10px;color:#000;display:flex;font-weight:500;justify-content:space-between;padding:8px 12px}.concept-remove{background:#fff3;border:none;border-radius:8px;color:#1f1f4d;cursor:pointer;font-weight:700;height:28px;width:28px}.concept-remove:hover{background:#ffffff59}.concept-add{display:flex;gap:10px}.concept-add input{background:#ffffff29!important;border-color:#ffffff40!important;color:#000!important;flex:1 1}.concept-add input::placeholder{color:#00000080}.concept-add-btn{background:#fff;border:none;border-radius:10px;box-shadow:0 8px 20px #fff3;color:#5a4cdc;cursor:pointer;font-weight:700;padding:0 16px}.concept-add-btn:disabled{cursor:not-allowed;opacity:.6}.config-form-actions{display:flex;justify-content:flex-end}.config-save-button{background:#546efd;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:10px 18px;transition:background .2s ease,transform .2s ease}.config-save-button:hover:not(:disabled){background:#3d54d9;transform:translateY(-1px)}.config-save-button:disabled{cursor:default;opacity:.65}.config-status{color:#475569;font-size:.95em;margin:12px 0 0}.config-list{list-style-type:none;margin:0;padding:0}.config-list li a{border-bottom:1px solid #f0f0f0;border-radius:8px;text-decoration:none}.config-list li a,.config-list-button{align-items:center;color:inherit;display:flex;gap:15px;padding:20px 10px;transition:background-color .2s ease,transform .2s ease}.config-list-button{background:#0000;border:none;border-bottom:1px solid #f0f0f0;border-radius:8px;cursor:pointer;font:inherit;text-align:left;width:100%}.config-list li:last-child .config-list-button,.config-list li:last-child a{border-bottom:none}.config-list li a:hover,.config-list-button:hover{background-color:#f0f2f5;transform:translateX(5px)}.config-list-button:focus-visible{outline:2px solid #546efd;outline-offset:2px}.config-list li a svg,.config-list-button svg{color:#667eea;font-size:1.5em;text-align:center;width:30px}.config-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172aa6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.config-modal{border-radius:20px;box-shadow:0 20px 45px #0f172a40;max-height:90vh;overflow:auto;position:relative;width:min(720px,100%)}.config-modal-card{background-color:#fffffff5;border-radius:20px;color:#1f2937;padding:30px}.config-modal-close{align-items:center;background:#ffffffd9;border:none;border-radius:50%;color:#1f2937;cursor:pointer;display:flex;font-size:1.1em;height:36px;justify-content:center;position:absolute;right:18px;top:18px;transition:transform .2s ease,background .2s ease;width:36px}.config-modal-close:hover{background:#fff;transform:scale(1.05)}.config-list li a div,.config-list-button div{display:flex;flex-direction:column}.config-list li a span,.config-list-button span{font-size:1.1em;font-weight:600}.config-list li a small,.config-list-button small{color:#666;font-size:.9em}.admin-section{border-top:1px solid #fff6;margin-top:50px;padding-top:30px}.financiera-page{padding:24px}.financiera-header{margin-bottom:18px}.financiera-header-top{align-items:center;display:flex;gap:16px;justify-content:space-between}.financiera-header h1{align-items:center;display:flex;flex:1 1 auto;font-size:1.6rem;gap:10px;margin:0}.financiera-header p{color:#374151;margin:10px 0 18px}.back-button{align-items:center;background:linear-gradient(90deg,#6c63ff,#546efd);border:none;border-radius:26px;box-shadow:0 12px 30px #546efd38,inset 0 -2px 6px #0000000f;color:#fff;display:inline-flex;font-size:.95rem;font-weight:700;gap:8px;justify-content:center;padding:10px 18px;text-decoration:none}.back-button:hover{transform:translateY(-2px)}.back-button:active{transform:translateY(0)}.save-button{align-items:center;background:#fff;border:1px solid #546efd24;border-radius:20px;box-shadow:0 6px 18px #546efd14;color:#546efd;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;justify-content:center;padding:8px 14px;text-decoration:none}.save-button:hover{transform:translateY(-1px)}.save-button:disabled{opacity:.6;transform:none}.financiera-tabs{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0f172a0f;padding:18px 18px 90px;position:relative}.financiera-tab-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.financiera-tab-buttons button{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-weight:600;padding:6px 10px}.financiera-tab-buttons button.active{background:linear-gradient(90deg,#546efd,#6c63ff);border:none;color:#fff}.financiera-tab-content{padding-top:6px}.financiera-tab-content h5{margin-top:0}.financiera-tab-content input[type=number],.financiera-tab-content input[type=text],.financiera-tab-content select{border:1px solid #e6e6e6;border-radius:8px;box-sizing:border-box;margin:8px 0 14px;padding:10px 12px;width:100%}.financiera-tab-content label{color:#111827;font-weight:700}.financiera-footer-note{color:#6b7280;margin-top:12px}.financiera-tab-content input,.financiera-tab-content select,.financiera-tab-content textarea{background:#fff;border:1px solid #e6e6f0;border-radius:8px;font-size:.95rem;height:44px;padding:10px 14px}.financiera-tab-content textarea{height:auto;min-height:96px}.saving-indicator{background:#6366f10f;border-radius:10px;color:#6b7280;font-weight:600;padding:6px 10px}.financiera-grid{grid-gap:22px;align-items:start;display:grid;gap:22px;grid-template-columns:1fr 1fr}.financiera-grid .col{background:#0000}.financiera-grid .sidebar{border-left:1px solid #eef2ff;padding-left:18px}.fin-row{margin-bottom:12px}.checkbox-inline{align-items:center;cursor:pointer;display:flex;font-size:.95rem;gap:10px;margin-top:8px}.checkbox-inline input[type=checkbox]{cursor:pointer;flex-shrink:0;height:16px;margin:0;width:16px}@media (max-width:980px){.financiera-grid{grid-template-columns:1fr}.financiera-grid .sidebar{border-left:none;margin-top:10px;padding-left:0}.back-button{font-size:.9rem;padding:8px 14px}}@media (max-width:520px){.financiera-tabs{padding:12px}.financiera-header h1{font-size:1.2rem}.back-button{font-size:.85rem;padding:8px 12px}}.section-card{background:#0000;border-radius:12px}.section-header{align-items:center;background:linear-gradient(90deg,#3b82f6,#6d28d9);border-radius:12px 12px 6px 6px;box-shadow:0 8px 24px #3b82f614;color:#fff;display:flex;gap:16px;margin-bottom:16px;padding:20px 22px}.section-index{align-items:center;background:#ffffff24;border-radius:10px;display:inline-flex;font-size:1rem;font-weight:800;height:42px;justify-content:center;width:42px}.section-header h3{font-size:1.35rem;letter-spacing:-.2px;margin:0}.section-header small{display:block;font-size:.8rem;opacity:.85}.tipo-card{background:linear-gradient(180deg,#f4fff6,#effbf0);border-radius:10px;padding:12px}.tipo-card .input-row{margin-bottom:14px}.section-content{background:#fff;border-left:6px solid #4f46e50f;border-radius:0 0 12px 12px;box-shadow:0 14px 40px #0206170f;padding:22px}.section-card-surface .section-content{background:linear-gradient(180deg,#f6f8ff,#eef2ff);border-left-color:#3b82f62e}.section-card-surface .financiera-grid{gap:26px}.section-card-surface .financiera-grid .col{background:#fffffff0;border:1px solid #94a3b838;border-radius:16px;box-shadow:0 14px 32px #3b82f614;box-sizing:border-box;max-width:100%;overflow-wrap:break-word;padding:20px;width:100%;word-break:break-word}.section-card-surface .financiera-grid .sidebar{background:#ffffffe6;border-left:none;padding:20px}transition:transform .2s ease-in-out;overflow-x:hidden;.section-card-surface .summary-box{background:#ffffffe0;border-color:#94a3b847;box-shadow:0 10px 26px #0f172a14}.section-card-surface .section-content,.section-card-surface .section-content .input-row,.section-card-surface .section-content label,.section-card-surface .section-content p,.section-card-surface .section-content small{overflow-wrap:break-word;word-break:break-word}.sanciones-grid{gap:26px}@media (max-width:980px){.section-card-surface .financiera-grid .col,.section-card-surface .financiera-grid .sidebar{padding:16px}}.input-row{margin-bottom:16px}.input-row label{color:#0f172a;display:block;font-weight:700;margin-bottom:8px}.currency-input{align-items:center;display:flex;gap:8px}.currency-input .currency-symbol{background:#f8fafc;border:1px solid #e6e9f8;border-radius:10px;color:#0f172a;font-weight:800;padding:10px 12px}.currency-input input{border:1px solid #e6e9f8;border-radius:10px;box-shadow:inset 0 1px 0 #10182805;flex:1 1;font-size:.97rem;padding:12px 14px}.currency-input input:focus{border-color:#4f46e552;box-shadow:0 6px 18px #4f46e514;outline:none}.percent-input{align-items:center;display:flex}.percent-input input{border:1px solid #e6e9f8;border-radius:8px;box-sizing:border-box;flex:1 1;min-width:0;padding:10px 12px}.percent-symbol{color:#0f172a;font-weight:800;margin-left:8px}.subsection-title{font-size:1.05rem;margin-bottom:6px;margin-top:8px}.subsection-desc{color:#6b7280;font-size:.9rem;margin-bottom:10px;margin-top:0}.fondo-box{background:linear-gradient(180deg,#fffaf0,#fff7ed);border:1px solid #fde3a7;border-radius:12px;padding:14px}.fondo-box strong{font-size:1.03rem}.fondo-top{align-items:center;display:flex;gap:12px;justify-content:space-between}.fondo-top .muted{color:#374151;font-size:.92rem;margin:0}.fondo-config-card{background:linear-gradient(180deg,#f8fbff,#f1f5ff);border:1px solid #94a3b840;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:18px}.fondo-config-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.fondo-config-header strong{color:#0f172a;display:block;font-size:1.08rem}.fondo-config-header p{color:#475569;font-size:.92rem;margin:6px 0 0}.fondo-config-card .input-row{margin-bottom:0}.fondo-config-card textarea{min-height:110px}.budget-calculator-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 8px 24px #667eea4d;color:#fff;padding:24px}.calculator-header{border-bottom:1px solid #fff3;margin-bottom:24px;padding-bottom:16px}.calculator-header strong{display:block;font-size:1.25rem;margin-bottom:6px}.calculator-header p{color:#000;font-size:.92rem;margin:0;opacity:.9}.calculator-summary{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.calc-item{align-items:center;display:flex;justify-content:space-between;padding:10px 0}.calc-label{font-size:.95rem;opacity:.9}.calc-value{font-family:Segoe UI,system-ui,sans-serif;font-size:1.1rem;font-weight:700}.calc-divider{background:#fff3;height:1px;margin:8px 0}.calc-item.total{font-size:1.05rem;font-weight:600;padding-top:16px}.calc-item.total .calc-value{color:#fbbf24;font-size:1.3rem}.calc-item.total-operative{background:#ffffff1a;border-radius:6px;font-size:1.02rem;font-weight:600;margin:8px 0;padding:12px}.calc-item.total-operative .calc-value{color:#60a5fa;font-size:1.2rem}.calc-item.remaining{padding-bottom:16px}.calc-item.remaining .calc-value{color:#34d399}.calculator-percentages{border-top:1px solid #fff3;margin-top:24px;padding-top:20px}.percent-bar{background:#ffffff26;border-radius:10px;display:flex;height:40px;margin-bottom:16px;overflow:hidden}.percent-segment{align-items:center;display:flex;justify-content:center;position:relative;transition:all .3s ease}.percent-segment.maintenance{background:linear-gradient(135deg,#3b82f6,#2563eb)}.percent-segment.security{background:linear-gradient(135deg,#f59e0b,#d97706)}.percent-segment.utilities{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.percent-segment.reserve{background:linear-gradient(135deg,#10b981,#059669)}.percent-label{color:#fff;font-size:.85rem;font-weight:700;text-shadow:0 1px 2px #0003}.percent-legend{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.legend-item{align-items:center;display:flex;font-size:.85rem;gap:8px}.legend-color{border-radius:4px;height:16px;width:16px}.legend-color.maintenance{background:linear-gradient(135deg,#3b82f6,#2563eb)}.legend-color.security{background:linear-gradient(135deg,#f59e0b,#d97706)}.legend-color.utilities{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.legend-color.reserve{background:linear-gradient(135deg,#10b981,#059669)}.budget-calculator-card .financiera-footer-note{color:#000;font-size:.88rem;margin-bottom:0;margin-top:20px;opacity:.8;text-align:center}.consumo-box{background:linear-gradient(180deg,#f8fbff,#f0f7ff);border:1px solid #dbeafe;border-radius:12px;margin-top:14px;padding:14px}.consumo-box strong{font-size:1.03rem}.consumo-box .muted{color:#0f172a;font-size:.9rem;margin:6px 0 10px}.currency-input.small{max-width:160px}.currency-input.small .currency-symbol{padding:8px 10px}.currency-input.small input{font-size:.92rem;padding:8px 10px}.extra-item{background:#fff;border:1px solid #0f172a0a;border-radius:8px;margin-bottom:8px;padding:10px}.add-extra-button{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:8px 12px}.add-extra-button:hover{background:#0ea36f}.remove-extra-button{background:#0000;border:1px solid #0f172a0f;border-radius:8px;color:#ef4444;cursor:pointer;font-weight:700;padding:6px 10px}.remove-extra-button:hover{background:#ef44440f}.cuota-extra-row{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.cuota-extra-row .input-row{margin-bottom:0}.cuota-extra-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(240px,1fr));width:100%}.cuota-extra-grid .field-col{display:flex;flex-direction:column;gap:8px;min-width:0}.cuota-extra-grid .field-col .currency-input.small,.cuota-extra-grid .field-col select{width:100%}.cuota-extra-grid .currency-input.small{align-items:center;display:flex}.cuota-extra-grid .currency-input.small .currency-symbol{align-items:center;display:inline-flex;height:44px;justify-content:center;padding:0 12px}.cuota-extra-grid .currency-input.small input{height:44px;padding:8px 10px;width:100%}.cuota-extra-grid select{height:44px}.cuota-extra-grid .field-col small.muted{color:#374151;font-size:.95em;margin-top:0}.cuota-extra-row-actions{align-items:center;display:flex;gap:12px}.cuota-extra-row-actions .remove-extra-button{margin-top:0}@media (max-width:980px){.cuota-extra-grid{gap:16px;grid-template-columns:1fr}.cuota-extra-row-actions{flex-wrap:wrap}}.summary-box{background:#ffffffeb;border:1px solid #e2e8f099;margin-top:12px;padding:10px}.summary-box .summary-row{color:#111827;display:flex;font-weight:600;gap:8px;justify-content:space-between;padding:6px 0}.summary-box .summary-row.total{color:#0f172a;font-size:1.02rem}.field-help{color:#6b7280}.field-error,.field-help{display:block;font-size:.88rem;margin-top:6px}.field-error{color:#ef4444}.help-icon{color:#6b7280;cursor:pointer;font-size:.95rem;margin-left:8px;vertical-align:middle}.help-icon:hover{color:#374151}.toggle-placeholder{font-size:.92rem;margin-top:10px}.help-backdrop{align-items:center;background:#0f172a73;border-radius:12px;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:35}.help-modal{width:min(520px,100%)}.help-modal-card{background:#fff;border-radius:10px;box-shadow:0 12px 40px #0206172e;color:#0f172a;padding:18px 20px}.help-modal-close{background:#0000;border:none;cursor:pointer;font-size:1.2rem;position:absolute;right:18px;top:18px}.switch{display:inline-block;height:28px;position:relative;width:48px}.switch input{height:0;opacity:0;width:0}.switch .slider{background:#e6eefc;border-radius:999px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.18s}.switch .slider:before{background:#fff;border-radius:50%;box-shadow:0 6px 18px #02061714;content:"";height:22px;left:3px;position:absolute;top:3px;transition:.18s;width:22px}.switch input:checked+.slider{background:linear-gradient(90deg,#4f46e5,#6c63ff)}.switch input:checked+.slider:before{transform:translateX(20px)}.section-content input[type=number]::-webkit-inner-spin-button,.section-content input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.section-content input[type=number]{-webkit-appearance:none;appearance:textfield}.section-content select{background:#fff;border:1px solid #e6e9f8;border-radius:10px;font-size:.97rem;padding:10px 12px;position:relative;width:100%;z-index:2}.section-content select:focus{border-color:#4f46e552;box-shadow:0 10px 25px #4f46e51a;outline:none;z-index:5}.section-content .input-row{overflow:visible}.section-content .input-row.row-with-switch{padding-right:84px;position:relative}.section-content .input-row.row-with-switch .switch{position:absolute;right:18px;top:18px;z-index:6}.section-content .input-row>div[style]{padding-bottom:6px}@media (max-width:980px){.section-content .input-row.row-with-switch{padding-right:20px}.section-content .input-row.row-with-switch .switch{right:8px;top:14px}}.section-content textarea{border:1px solid #e6e9f8;border-radius:8px;min-height:64px;padding:10px 12px;resize:vertical;width:100%}@media (max-width:980px){.section-content{padding:14px}.financiera-grid{grid-template-columns:1fr}.financiera-grid .sidebar{border-left:none;margin-top:12px;padding-left:0}}.financiera-actions{align-items:center;bottom:18px;display:flex;gap:12px;position:absolute;right:18px;z-index:20}.cancel-button{background:#0000;border:1px solid #0f172a14;border-radius:10px;color:#374151;cursor:pointer;font-weight:700;padding:10px 16px}.cancel-button:hover{background:#0f172a0a;transform:translateY(-1px)}.cancel-button:disabled{cursor:default;opacity:.6;transform:none}.save-button{background:#546efd;border:none;border-radius:12px;box-shadow:0 8px 24px #546efd2e;color:#fff;font-weight:800;padding:10px 18px}.save-button:hover:not(:disabled){background:#4057d6;transform:translateY(-1px)}.save-button:disabled{cursor:default;opacity:.7}.switch-toggle{display:inline-block;height:28px;position:relative;width:54px}.switch-toggle input{height:0;opacity:0;width:0}.switch-slider{background-color:#ccc;border-radius:28px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.switch-slider:before{background-color:#fff;border-radius:50%;bottom:4px;box-shadow:0 2px 4px #0003;content:"";height:20px;left:4px;position:absolute;transition:.3s;width:20px}.switch-toggle input:checked+.switch-slider{background-color:#28a745}.switch-toggle input:focus+.switch-slider{box-shadow:0 0 1px #28a745}.switch-toggle input:checked+.switch-slider:before{transform:translateX(26px)}.switch-toggle input:disabled+.switch-slider{cursor:not-allowed;opacity:.5}.recibos-page{padding:24px}.recibos-header{margin-bottom:18px}.recibos-header-top{align-items:center;display:flex;gap:16px;justify-content:space-between}.recibos-header h1{align-items:center;display:flex;flex:1 1 auto;font-size:1.6rem;gap:10px;margin:0}.recibos-header p{color:#374151;margin:10px 0 18px}.recibos-form{position:relative}.recibos-form-actions{border-top:1px solid #94a3b833;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:12px}.unsaved-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a73;display:flex;height:100vh;justify-content:center;left:0;padding:16px;position:fixed;top:0;width:100vw;z-index:1100}.unsaved-modal{animation:fadeInUnsaved .18s ease-out;background:linear-gradient(135deg,#fff7ed,#fffaf5);border:1px solid #fed7aa;border-radius:16px;box-shadow:0 20px 50px #0000002e;color:#1f2937;max-width:440px;padding:20px 22px;width:100%}.unsaved-icon{align-items:center;background:#f97316;border-radius:12px;box-shadow:0 6px 16px #f9731659;color:#fff;display:inline-flex;font-weight:800;height:40px;justify-content:center;margin-bottom:10px;width:40px}.unsaved-modal h4{color:#b45309;font-size:1.1rem;margin:0 0 6px}.unsaved-modal p{color:#374151;line-height:1.4;margin:0 0 14px}.unsaved-actions{display:flex;gap:10px;justify-content:flex-end}.unsaved-primary,.unsaved-secondary{border:none;border-radius:10px;cursor:pointer;font-weight:700;padding:10px 14px;transition:transform .08s ease,box-shadow .12s ease,opacity .12s ease}.unsaved-primary{background:#f97316;box-shadow:0 8px 20px #f9731659;color:#fff}.unsaved-primary:hover{box-shadow:0 10px 24px #f9731666;transform:translateY(-1px)}.unsaved-secondary{background:#fff;border:1px solid #e5e7eb;color:#374151}.unsaved-secondary:hover{box-shadow:0 6px 16px #00000014;transform:translateY(-1px)}@keyframes fadeInUnsaved{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.preview-right{align-items:flex-end;display:flex;flex-direction:column;margin-left:auto}@media (max-width:768px){.preview-row{align-items:flex-start;flex-direction:column}.preview-right{text-align:left}.preview-table-header,.preview-table-row{grid-template-columns:1fr 110px}.preview-footer{align-items:center;flex-direction:column}.preview-sello{height:70px;width:120px}}@media (max-width:520px){.recibos-header h1{font-size:1.2rem}.recibos-header-top{align-items:flex-start;flex-direction:column;gap:8px}.back-button{font-size:.85rem;padding:8px 12px}}.help-page{background:linear-gradient(135deg,#5a6ff0,#7b4ca0);min-height:100vh;padding:28px 18px 40px}.help-hero{align-items:center;color:#f7f8ff;display:flex;gap:12px;margin-bottom:16px}.help-hero h2{margin:0}.help-hero p{color:#e8ecff;margin:4px 0 0}.help-hero-icon{background:#ffffff2e;border-radius:14px;display:grid;font-size:18px;height:44px;place-items:center;width:44px}.help-card{background:#fff;border-radius:14px;box-shadow:0 12px 30px #0f172a24;margin-bottom:18px;padding:18px}.faq-list{display:flex;flex-direction:column;gap:10px}.faq-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.faq-item.open{background:#eef2ff;border-color:#5a6ff0;box-shadow:0 8px 18px #5a6ff02e}.faq-header{background:#0000;border:none;cursor:pointer;justify-content:space-between;padding:12px 14px;text-align:left;width:100%}.faq-header,.faq-meta{align-items:center;display:flex}.faq-meta{gap:10px}.faq-icon{background:#eef2ff;border-radius:10px;color:#4f46e5;display:grid;height:34px;place-items:center;width:34px}.faq-category{color:#6b7280;font-size:.9rem;margin:0}.faq-question{color:#111827;margin:2px 0 0}.faq-toggle{color:#4b5563}.faq-body{background:#fff;border-top:1px solid #e5e7eb;color:#374151;padding:0 14px 12px}.contact-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.contact-method{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;box-shadow:inset 0 1px 0 #fff9;padding:14px;text-align:center}.contact-icon{border-radius:12px;color:#fff;display:grid;height:42px;margin:0 auto 8px;place-items:center;width:42px}.contact-icon.phone{background:linear-gradient(135deg,#5a6ff0,#4c51bf)}.contact-icon.mail{background:linear-gradient(135deg,#10b981,#059669)}.contact-icon.chat{background:linear-gradient(135deg,#f59e0b,#d97706)}.contact-method h4{margin:6px 0 2px}.contact-method p{color:#6b7280;font-size:.93rem;margin:2px 0 6px}.contact-method strong{color:#111827;letter-spacing:.3px}.form-title{color:#111827;margin:0 0 10px}.support-form{display:flex;flex-direction:column;gap:10px}.form-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.form-group{gap:6px}.form-group.full{grid-column:1/-1}.form-group label{color:#374151}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:10px;font-size:.98rem;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#5a6ff0;box-shadow:0 0 0 3px #5a6ff026;outline:none}.form-actions{margin-top:4px}button.primary{background:linear-gradient(135deg,#5a6ff0,#7b4ca0);border:none;border-radius:12px;box-shadow:0 10px 24px #5a6ff040;color:#fff;cursor:pointer;font-weight:700;padding:11px 18px}button.primary:disabled{cursor:not-allowed;opacity:.65}.schedule{border-top:1px solid #e5e7eb;color:#374151;display:flex;gap:10px;margin-top:14px;padding-top:12px}.schedule-icon{background:#eef2ff;border-radius:10px;color:#4f46e5;display:grid;height:32px;place-items:center;width:32px}.schedule ul{color:#4b5563;margin:6px 0 0;padding-left:16px}.trust{align-items:center;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:10px;color:#10b981;display:flex;gap:8px;margin-top:12px;padding:10px 12px}.trust p{color:#065f46;margin:0}@media (max-width:640px){.help-card{padding:14px}.help-hero{align-items:flex-start}}.profile-page{overflow-x:hidden;padding-bottom:40px;padding-top:20px}.profile-header{color:#f7f8ff;display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.profile-header h2{align-items:center;display:flex;gap:10px;margin:0}.profile-header p{color:#e8ecff;font-size:.95em;margin:0}.profile-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.profile-actions button{align-items:center;display:inline-flex;gap:8px}.profile-page .config-form-group input,.profile-page .config-form-group select,.profile-page .config-form-group textarea{background-color:#f8fafccc;border:1px solid #94a3b880;border-radius:10px;box-sizing:border-box;font-size:.85em;height:36px;line-height:1.15;max-width:100%;padding:6px 10px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.profile-page .config-form-group input:focus,.profile-page .config-form-group select:focus,.profile-page .config-form-group textarea:focus{border-color:#546efd;box-shadow:0 0 0 3px #546efd26;outline:none}.profile-page .config-form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (max-width:900px){.profile-page .config-form-row{grid-template-columns:1fr}}.profile-page .config-card{max-width:100%;overflow-x:hidden;position:relative}.profile-page .config-form,.profile-page .config-grid-single{max-width:100%}.profile-summary{overflow-wrap:anywhere}.profile-back-floating{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;color:#3730a3;display:inline-flex;font-weight:600;gap:6px;padding:8px 12px;position:absolute;right:12px;text-decoration:none;top:12px;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.profile-back-floating:hover{background:#e0e7ff;box-shadow:0 6px 16px #3730a32e;transform:translateY(-1px)}.profile-actions .primary{background:#546efd;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:10px 16px;transition:transform .15s ease,box-shadow .15s ease}.profile-actions .primary:hover:enabled{box-shadow:0 8px 20px #546efd40;transform:translateY(-1px)}.profile-actions .primary:disabled{cursor:not-allowed;opacity:.6}.profile-actions .ghost{background:#0000;border:1px solid #546efd66;border-radius:10px;color:#546efd;cursor:pointer;font-weight:600;padding:10px 16px;transition:border-color .15s ease,color .15s ease}.profile-actions .ghost:hover:enabled{border-color:#546efd;color:#3c53d6}.profile-actions .ghost:disabled{cursor:not-allowed;opacity:.6}.profile-summary{align-items:center;background:#546efd0f;border:1px dashed #546efd59;border-radius:12px;color:#1e293b;display:flex;gap:8px;padding:10px 12px}.profile-summary-label{color:#111827;font-weight:600}.profile-summary-value{color:#334155}.profile-hint{color:#6b7280}.horarios-page{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;padding:40px 20px 60px}.horarios-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:32px}.horarios-header h2{font-size:2rem;margin:0}.horarios-header p{margin:8px 0 0;max-width:520px;opacity:.85}.horarios-back-link{align-self:center;background:#ffffff26;border-radius:999px;color:#fff;font-weight:600;padding:8px 16px;text-decoration:none;transition:background-color .2s ease}.horarios-back-link:hover{background:#ffffff47}.horarios-alert,.horarios-empty,.horarios-loading{background:#ffffff26;border-radius:16px;color:#fff;margin-bottom:24px;padding:18px 24px}.horarios-empty{border:1px dashed #fff6;font-weight:500;text-align:center}.horarios-grid{grid-gap:24px;gap:24px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.horarios-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #fff3;border-radius:20px;display:flex;flex-direction:column;gap:20px;padding:24px}.horarios-card.disabled{border-style:dashed;opacity:.65}.horarios-card-header{align-items:center;display:flex;gap:16px}.horarios-card-header h3{font-size:1.3rem;margin:0}.horarios-card-header p{margin:6px 0 0;opacity:.75}.horarios-card-icon{align-items:center;background:#fff3;border-radius:14px;display:inline-flex;font-size:2rem;height:48px;justify-content:center;width:48px}.horarios-chip-list{display:flex;flex-wrap:wrap;gap:10px}.horarios-chip{align-items:center;background:#fff3;border:none;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:8px;padding:6px 12px;transition:background-color .2s ease,transform .2s ease}.horarios-chip span{font-size:1rem;line-height:1}.horarios-chip:hover{background:#ffffff59;transform:translateY(-1px)}.horarios-chip.muted{background:#ffffff26;cursor:default;font-weight:400}.horarios-actions{display:flex;flex-wrap:wrap;gap:12px}.horarios-actions input[type=time]{background:#ffffffd9;border:1px solid #fff6;border-radius:10px;color:#2d235a;font-weight:600;min-width:120px;padding:8px 12px}.horarios-actions button{border:none;border-radius:10px;cursor:pointer;font-weight:600;padding:8px 16px;transition:background-color .2s ease,transform .2s ease}.horarios-actions button:not(.link){background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.horarios-actions button:not(.link):hover{transform:translateY(-1px)}.horarios-actions button.link{background:#0000;color:#f4f0ff;padding-left:0;padding-right:0;text-decoration:underline}.horarios-actions button:disabled{cursor:not-allowed;opacity:.6}.horarios-card-note{background:#00000040;border-radius:12px;color:#ffffffd9;font-weight:500;padding:14px 18px}.horarios-save-bar{align-items:center;display:flex;gap:16px;margin-top:32px}.horarios-save-bar button{background:#fff;border:none;border-radius:14px;color:#5a3faa;cursor:pointer;font-size:1rem;font-weight:700;padding:12px 26px;transition:transform .2s ease,box-shadow .2s ease}.horarios-save-bar button:hover:not(:disabled){box-shadow:0 10px 24px #1f26874d;transform:translateY(-2px)}.horarios-save-bar button:disabled{cursor:not-allowed;opacity:.6}.horarios-unsaved{color:#ffffffe6;font-size:.95rem;font-weight:500}.sr-only{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}@media (max-width:768px){.horarios-header{align-items:flex-start;flex-direction:column}.horarios-back-link{align-self:flex-start}.horarios-actions{align-items:stretch;flex-direction:column}.horarios-actions button,.horarios-actions input[type=time]{width:100%}.horarios-save-bar{align-items:stretch;flex-direction:column}.horarios-save-bar button{width:100%}}.mudanza-config-page{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem}.mudanza-config-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1.25rem;justify-content:space-between}.mudanza-config-header-content{flex:1 1 320px;min-width:260px}.mudanza-config-back{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:999px;box-shadow:0 12px 22px #6366f147;color:#fff;display:inline-flex;font-weight:600;gap:.35rem;padding:.5rem 1.4rem;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease}.mudanza-config-back:hover{box-shadow:0 16px 26px #6366f152;transform:translateY(-1px)}.mudanza-config-back:focus{box-shadow:0 0 0 3px #818cf859;outline:none}.mudanza-config-header h1{color:#111827;font-size:1.8rem;margin:0}.mudanza-config-header p{color:#4b5563;margin:.35rem 0 0}.mudanza-config-alert{background-color:#ef44441f;border-radius:12px;color:#991b1b;font-weight:600;padding:1rem 1.25rem}.mudanza-config-loading{background-color:#f9fafb;border-radius:12px;color:#4b5563;padding:2rem;text-align:center}.mudanza-config-content{grid-gap:1.5rem;display:grid;gap:1.5rem}.mudanza-config-card{background-color:#fff;border-radius:16px;box-shadow:0 12px 24px #0f172a14;display:flex;flex-direction:column;gap:1rem;padding:1.75rem}.mudanza-config-card h2{align-items:center;color:#1f2937;display:flex;font-size:1.2rem;gap:.6rem;margin:0}.mudanza-config-helper{align-items:center;color:#6b7280;display:flex;font-size:.95rem;gap:.4rem;margin:0}.mudanza-day-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.mudanza-day-button{background-color:#fff;border:1px solid #3b82f640;border-radius:12px;color:#1e3a8a;cursor:pointer;font-weight:600;padding:.75rem 1rem;transition:background-color .2s ease,transform .15s ease}.mudanza-day-button.active{background-color:#3b82f61f;border-color:#3b82f68c}.mudanza-day-button:hover{background-color:#3b82f62e;transform:translateY(-1px)}.mudanza-time-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.mudanza-time-grid label{color:#1f2937;display:flex;flex-direction:column;font-weight:600;gap:.5rem}.mudanza-time-grid input,.mudanza-time-grid select{border:1px solid #94a3b899;border-radius:10px;color:#111827;font-size:.95rem;padding:.6rem .75rem}.mudanza-config-card textarea{border:1px solid #94a3b899;border-radius:12px;color:#111827;font-size:.95rem;min-height:140px;padding:.75rem;resize:vertical}.mudanza-config-card textarea:focus,.mudanza-time-grid input:focus,.mudanza-time-grid select:focus{border-color:#3b82f6cc;box-shadow:0 0 0 3px #3b82f626;outline:none}.mudanza-config-footer{display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end;margin-top:.5rem}.mudanza-structural-section{display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem}.mudanza-structural-header{display:flex;flex-direction:column;gap:.35rem}.mudanza-structural-header h2{color:#1f2937;font-size:1.4rem;margin:0}.mudanza-structural-header p{color:#4b5563;margin:0;max-width:640px}.structural-config-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.structural-card h3{align-items:center;color:#1f2937;display:flex;font-size:1.1rem;gap:.5rem;margin:0}.mudanza-config-subsection{display:flex;flex-direction:column;gap:.75rem;margin-top:1.25rem}.mudanza-config-subtitle{color:#1f2937;font-weight:600}.mudanza-primary-button,.mudanza-secondary-button{border-radius:999px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.6rem;transition:transform .15s ease,opacity .2s ease}.mudanza-primary-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;color:#fff}.mudanza-secondary-button{background-color:initial;border:1px solid #6366f166;color:#1d4ed8}.mudanza-primary-button:disabled,.mudanza-secondary-button:disabled{cursor:not-allowed;opacity:.6}.mudanza-primary-button:not(:disabled):hover,.mudanza-secondary-button:not(:disabled):hover{transform:translateY(-1px)}@media (max-width:768px){.mudanza-config-page{padding:1rem}.mudanza-config-card{padding:1.25rem}.structural-config-grid{gap:1rem}}.contacto-proveedores-page{color:#1f2933;display:flex;flex-direction:column;gap:24px;padding:16px}.cp-header h1{font-size:1.9rem;margin-bottom:8px}.cp-header p{color:#52606d;margin:0;max-width:780px}.cp-tabs{display:flex;gap:12px}.cp-tab-button{background:#e4ebf5;border:none;border-radius:999px;color:#334155;cursor:pointer;font-weight:600;padding:10px 18px;transition:background-color .2s ease,transform .2s ease}.cp-tab-button.active{background:linear-gradient(135deg,#2563eb,#3b82f6);box-shadow:0 6px 14px #2563eb40;color:#fff}.cp-tab-button:hover:not(.active){background:#d5deeb}.cp-agenda,.cp-facturacion{display:flex;gap:24px}.cp-list-panel{display:flex;flex:1 1 320px;flex-direction:column;gap:16px;min-width:280px}.cp-form-panel{flex:2 1 520px}.cp-list-toolbar{display:flex;gap:12px}.cp-list-toolbar input[type=search]{background:#fff;border:1px solid #cbd2d9;border-radius:12px;flex:1 1;padding:10px 14px}.cp-provider-list{grid-gap:12px;display:grid;gap:12px;max-height:540px;overflow-y:auto;padding-right:6px}.cp-provider-card{background:#fff;border:1px solid #0000;border-radius:16px;box-shadow:0 1px 3px #0f172a14;cursor:pointer;padding:16px;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.cp-provider-card.active,.cp-provider-card:hover{border-color:#3b82f6;box-shadow:0 8px 20px #2563eb26;transform:translateY(-2px)}.cp-provider-card h3{font-size:1.05rem;margin:0 0 8px}.cp-provider-card ul{grid-gap:4px;color:#52606d;display:grid;font-size:.92rem;gap:4px;list-style:none;margin:0;padding-left:0}.cp-provider-card li span{color:#1f2933;font-weight:600}.cp-card-actions{align-items:center;display:flex;gap:12px;margin-top:12px}.cp-danger,.cp-link,.cp-primary,.cp-secondary{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;justify-content:center;padding:10px 16px;transition:transform .15s ease,box-shadow .15s ease}.cp-primary{background:linear-gradient(135deg,#2563eb,#3b82f6);box-shadow:0 6px 18px #2563eb40;color:#fff}.cp-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.cp-secondary{background:#f1f5f9;color:#1f2933}.cp-danger{background:#fee2e2;color:#b91c1c}.cp-link{background:#0000;color:#2563eb;padding:6px 10px}.cp-form{background:#fff;border-radius:20px;box-shadow:0 12px 28px #0f172a14;display:flex;flex-direction:column;gap:28px;margin:0 auto;max-width:820px;padding:24px;width:100%}.cp-section h2{font-size:1.1rem;margin:0 0 12px}.cp-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.cp-fields-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}@media (max-width:1024px){.cp-fields-grid{grid-template-columns:1fr}}.cp-field-full{grid-column:1/-1}.cp-form label{color:#334155;display:flex;flex-direction:column;font-weight:600;gap:8px}.cp-form input,.cp-form select,.cp-form textarea{background:#f8fafc;border:1px solid #cbd2d9;border-radius:12px;box-sizing:border-box;color:#1f2933;font-size:.95rem;font-weight:500;padding:12px 14px;width:100%}.cp-form select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23334155' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.cp-form input:focus,.cp-form select:focus,.cp-form textarea:focus{background:#fff;outline:2px solid #93c5fd}.cp-form textarea{resize:vertical}.cp-actions{display:flex;gap:12px}.cp-actions-inline{flex-wrap:wrap;justify-content:flex-end}.cp-ghost-button{background:#f8fafc;border:1px solid #cbd2d9;border-radius:999px;color:#2563eb;cursor:pointer;font-weight:600;padding:8px 16px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.cp-ghost-button:hover{background:#e0ecff;border-color:#93c5fd}.cp-ghost-button:focus-visible{box-shadow:0 0 0 3px #93c5fd73;outline:none}.cp-ghost-button:disabled{cursor:not-allowed;opacity:.6}.cp-readonly-note{margin-top:12px}.cp-feedback{background:#e0f2fe;border-radius:12px;color:#0369a1;font-weight:600;margin-bottom:16px;padding:12px 16px}.cp-muted{color:#64748b}.cp-placeholder,.cp-preview{background:#fff;border-radius:20px;box-shadow:0 12px 28px #0f172a14;padding:24px}.cp-placeholder-edit{align-items:flex-start;color:#475569;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:240px}.cp-placeholder-edit h2{color:#1f2933;margin:0}.cp-preview-columns{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.cp-preview ul{color:#334155;margin:0;padding-left:16px}.cp-preview-notes{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:16px}@media (max-width:1024px){.cp-agenda,.cp-facturacion{flex-direction:column}.cp-form-panel,.cp-list-panel{width:100%}.cp-provider-list{max-height:360px}}@media (max-width:640px){.contacto-proveedores-page{padding:12px}.cp-tabs{gap:8px}.cp-actions,.cp-tabs{flex-direction:column}.cp-actions{align-items:stretch}}.cp-pdf-upload-section{background:linear-gradient(135deg,#f0f4ff,#f9f7ff);border-left:4px solid #2563eb;border-radius:12px;margin-bottom:24px;padding:20px}.cp-pdf-upload-label{cursor:pointer}.cp-pdf-upload-button{align-items:center;background:#fff;border:2px dashed #2563eb;border-radius:12px;color:#2563eb;display:flex;font-size:1rem;font-weight:600;gap:12px;justify-content:center;padding:24px 16px;transition:all .2s ease}.cp-pdf-upload-button:hover{background:#f0f4ff;border-color:#1d4ed8;box-shadow:0 4px 12px #2563eb26;color:#1d4ed8}.cp-pdf-upload-label:has(input:focus-visible) .cp-pdf-upload-button{outline:2px solid #2563eb;outline-offset:2px}.amenidades-page{background:linear-gradient(135deg,#5c6cff,#8d54ff);border-radius:28px;box-sizing:border-box;min-height:100vh;padding:48px 32px 64px}.amenidades-header{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#ffffff29,#09097914 60%,#00d4ff14);border-radius:22px;box-shadow:0 18px 36px #12104438;color:#fff;margin-bottom:36px;padding:28px 32px;text-align:center}.amenidades-header h1{font-size:2.6rem;letter-spacing:-.01em;margin:0 0 8px}.amenidades-header p{font-size:1.1rem;margin:0;opacity:.85}.amenidades-date-bar{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff38;border-radius:20px;color:#fef9ff;display:flex;flex-direction:column;gap:12px;margin:0 auto 36px;max-width:720px;padding:18px 20px}.amenidades-date-label span{font-weight:600;letter-spacing:.03em}.amenidades-date-label{font-size:.95rem}.amenidades-date-input-wrapper{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.amenidades-date-input-wrapper input[type=date]{background:#fff;border:1px solid #6143ea40;border-radius:14px;box-shadow:0 6px 16px #1b104a26;color:#2d1b4e;font-size:1rem;min-width:200px;outline:none;padding:10px 14px;transition:border-color .2s ease,box-shadow .2s ease}.amenidades-date-input-wrapper input[type=date]:focus{border-color:#6143ea80;box-shadow:0 0 0 3px #6143ea2e}.amenidades-date-helper{color:#ffffffeb;font-size:.95rem;font-weight:500}.amenidades-grid{grid-gap:28px;align-items:stretch;display:grid;gap:28px;grid-auto-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.amenidades-empty{background-color:#ffffff1f;border:1px dashed #ffffff59;border-radius:16px;color:#ffffffd9;font-weight:500;grid-column:1/-1;padding:24px;text-align:center}.amenidad-no-horarios{background:#8061ff1f;border:1px dashed #8061ff59;border-radius:16px;color:#3a2b6b;font-weight:600;margin-top:16px;padding:18px;text-align:center}.amenidad-card{background:#fbf8ff;border:1px solid #7c5cff1f;border-radius:28px;box-shadow:0 18px 36px #170c3f29;color:#2b1e4c;display:flex;flex-direction:column;height:100%;padding:28px 26px 24px;transition:transform .25s ease,box-shadow .25s ease}.amenidad-card:hover{box-shadow:0 24px 44px #170c3f3d;transform:translateY(-4px)}.card-header{gap:16px;margin-bottom:12px}.card-icon{align-items:center;background:linear-gradient(140deg,#7f59ff29,#fff9);border-radius:16px;color:#6a3fff;display:inline-flex;font-size:2.1rem;height:54px;justify-content:center;width:54px}.card-header h3{font-size:1.4rem;font-weight:700}.card-hours{color:#6a53aa;font-size:.95rem;font-weight:600;letter-spacing:.02em;margin:0 0 18px}.card-body-reservable{display:flex;flex-direction:column;flex-grow:1;gap:20px;justify-content:flex-start}.dias-semana{color:#7c66c2;display:flex;font-weight:600;justify-content:space-around;margin-bottom:18px;opacity:.65}.dias-semana .dia-activo{color:#43237e;opacity:1;transform:scale(1.12)}.horarios-grid{grid-gap:14px;align-items:stretch;display:grid;font-size:.95rem;gap:14px;grid-auto-rows:minmax(48px,auto);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:4px}.horario-slot{align-items:stretch;display:flex;height:100%;width:100%}.horario-slot>*{flex:1 1 auto}.horario-btn{align-items:center;background:#6e57ff1f;border:none;border-radius:16px;box-shadow:0 8px 22px #20104e24;color:#38285b;cursor:pointer;display:flex;font-size:.98rem;font-weight:600;height:100%;justify-content:center;letter-spacing:.01em;line-height:1.15;min-height:52px;padding:12px 14px;transition:background-color .25s ease,transform .18s ease,box-shadow .18s ease;white-space:nowrap;width:100%}.horario-btn:not(:disabled):hover{background:#6e57ff33;box-shadow:0 12px 26px #20104e38;transform:translateY(-2px)}.horario-btn:disabled{cursor:not-allowed}.horario-btn.reservado{background:#1c1c302e;border-color:#3a295b1f;cursor:not-allowed;opacity:.55}.horario-slot.ocupado{cursor:not-allowed}.horario-slot.admin-targetable-slot{cursor:pointer}.horario-btn.admin-targetable{cursor:pointer;opacity:.8}.horario-btn.admin-selected{box-shadow:0 0 0 4px #8f4cff26;opacity:1;outline:2px solid #8f4cffcc}.horario-btn.propio{background:#50cf8d2e;border-color:#50cf8d47;color:#1b5a3a}.btn-reservar-principal{background:linear-gradient(135deg,#7259ff,#8f4cff);border:none;border-radius:14px;color:#fff;cursor:pointer;flex:1 1 50%;font-size:1em;font-weight:700;padding:12px 18px;transition:background-color .3s,transform .2s}.btn-reservar-principal:hover{transform:translateY(-1px)}.btn-reservar-principal:disabled{background:#b4a5ff47;color:#3c2f678c;cursor:not-allowed;transform:none}.btn-cancelar-reserva{background:#ffffffd1;border:1px solid #9376ff47;border-radius:14px;color:#66307a;cursor:pointer;flex:1 1 50%;font-size:1rem;font-weight:600;padding:12px 18px;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.btn-cancelar-reserva:hover{background:#fffffff2;box-shadow:0 10px 22px #180c4429;transform:translateY(-1px)}.btn-cancelar-reserva:disabled{background:#f6f2ff99;border-color:#9376ff29;box-shadow:none;color:#4e3f7a73;cursor:not-allowed}.amenidad-card-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:auto;padding-top:24px}.amenidad-card-actions button{min-width:150px}.amenidad-cancel-hint{color:#5a3f8f;font-size:.86rem;font-weight:500;margin:12px 0 0}.card-body-disponibilidad{display:flex;flex-direction:column;flex-grow:1;gap:20px;justify-content:flex-start}.horarios-grid.readonly{flex-grow:1;font-size:.95rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));width:100%}.amenidades-admin-tip{align-items:center;background:#ffffff1f;border-radius:12px;color:#f4f0ff;display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 28px;padding:12px 16px}.amenidades-admin-tip span{flex:1 1 220px;font-weight:500}.admin-tip-link{align-items:center;background:#ffffff47;border-radius:999px;color:#2d0c4f;display:inline-flex;font-weight:700;justify-content:center;padding:10px 18px;text-decoration:none;transition:transform .2s ease,background-color .2s ease}.admin-tip-link:hover{background:#fff6;transform:translateY(-1px)}.amenidades-modal-backdrop{align-items:center;background-color:#1a1a2c8c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.amenidades-modal{background-color:#fff;border-radius:18px;box-shadow:0 20px 40px #12122840;display:flex;flex-direction:column;overflow:hidden;width:min(520px,100%)}.amenidades-modal-header{align-items:center;background:linear-gradient(135deg,#764ba2,#667eea);color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.amenidades-modal-header h2{font-size:1.4rem;margin:0}.amenidades-modal-close{background:none;border:none;color:inherit;cursor:pointer;font-size:1.6rem}.amenidades-modal-form{display:flex;flex-direction:column;gap:20px;padding:24px}.amenidades-modal-field{color:#3e3b5c;display:flex;flex-direction:column;gap:10px}.amenidades-modal-field.amenidades-modal-inline{grid-gap:0 24px!important;align-items:start;display:grid!important;flex-direction:row;gap:0 24px!important;grid-template-columns:repeat(2,1fr);margin-bottom:8px}.amenidades-modal-field label{font-weight:600}.amenidades-modal-field input,.amenidades-modal-field select,.amenidades-modal-field textarea{background-color:#f5f4ffcc;border:1px solid #764ba259;border-radius:10px;box-sizing:border-box;color:#2d235a;font-size:.95rem;padding:10px 12px;width:100%}.amenidades-modal-field input:disabled,.amenidades-modal-field select:disabled,.amenidades-modal-field textarea:disabled{background-color:#f0f0f8cc;color:#5a5a78b3}.amenidades-modal-subfield{align-self:stretch;display:flex;flex-direction:column;gap:8px;min-width:0}.amenidades-modal-subfield label{display:block;font-weight:600;margin-bottom:0}.amenidades-modal-subfield input,.amenidades-modal-subfield select{height:42px}.amenidades-modal-hint{color:#7a6a9d;font-size:.8rem;margin:0}.amenidades-modal-form>.amenidades-modal-hint{line-height:1.4;margin-top:6px}.amenidades-modal-actions{align-items:center;display:flex;gap:14px;justify-content:flex-end;margin-top:8px}.amenidades-modal-actions .primary,.amenidades-modal-actions .secondary{border:none;border-radius:10px;cursor:pointer;font-weight:600;padding:10px 18px}.amenidades-modal-actions .secondary{background-color:#764ba21a;color:#4d3d6b}.amenidades-modal-actions .primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.amenidades-modal-actions .primary:disabled{cursor:not-allowed;opacity:.6}.amenidades-modal-message{color:#6b5b8d;font-size:.85rem;margin:0;max-width:260px;text-align:right}.superadmin-reservas-modal{max-width:720px}.superadmin-reservas-body{display:flex;flex-direction:column;gap:18px}.superadmin-reservas-date{color:#4a3679;font-weight:600;margin:0}.superadmin-reservas-empty{background:#7b59ff14;border-radius:16px;color:#3c2e5f;font-weight:600;margin:0;padding:20px;text-align:center}.superadmin-reservas-list{display:flex;flex-direction:column;gap:14px;list-style:none;margin:0;max-height:420px;overflow-y:auto;padding:0}.superadmin-reserva-item{align-items:center;background:#f0ecffeb;border:1px solid #7a5fff2e;border-radius:16px;display:flex;gap:16px;justify-content:space-between;padding:14px 18px}.superadmin-reserva-info{color:#2e2156;display:flex;flex-direction:column;gap:4px}.superadmin-reserva-horario{font-size:1rem;font-weight:700}.superadmin-reserva-nombre{font-size:.95rem;font-weight:600}.superadmin-reserva-casa{color:#5b468f;font-size:.9rem}.superadmin-reserva-actions{display:flex;gap:10px}.superadmin-reserva-btn{background:#7b59ff29;border:none;border-radius:12px;color:#452972;cursor:pointer;font-weight:600;padding:8px 14px;transition:transform .15s ease,box-shadow .15s ease}.superadmin-reserva-btn:hover{box-shadow:0 8px 18px #3b226c26;transform:translateY(-1px)}.superadmin-reserva-btn.danger{background:#ff66852e;color:#8f1e3a}.superadmin-reserva-btn.danger:hover{box-shadow:0 8px 18px #8f1e3a38}.amenidades-caseta-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));padding:16px 0}.amenidad-caseta-card{background:#fff;border:3px solid #0000;border-radius:20px;box-shadow:0 8px 24px #0000001f;padding:28px;transition:transform .2s ease,box-shadow .2s ease}.amenidad-caseta-card.disponible{background:linear-gradient(135deg,#f0fff4,#fff);border-color:#28a745}.amenidad-caseta-card.parcial{background:linear-gradient(135deg,#fff9e6,#fff);border-color:#ffc107}.amenidad-caseta-card.ocupado{background:linear-gradient(135deg,#fff5f5,#fff);border-color:#dc3545}.amenidad-caseta-card:hover{box-shadow:0 12px 32px #0000002e;transform:translateY(-4px)}.caseta-card-icon{font-size:4rem;margin-bottom:16px;text-align:center}.caseta-card-title{color:#2d1b4e;font-size:1.8rem;font-weight:700;margin:0 0 20px;text-align:center}.caseta-card-disponibilidad{background:#764ba214;border-radius:12px;margin-bottom:20px;padding:16px;text-align:center}.disponibilidad-badge{font-size:2rem;font-weight:800;margin-bottom:8px}.amenidad-caseta-card.disponible .disponibilidad-badge{color:#28a745}.amenidad-caseta-card.parcial .disponibilidad-badge{color:#ffc107}.amenidad-caseta-card.ocupado .disponibilidad-badge{color:#dc3545}.disponibilidad-detalles{align-items:center;color:#555;display:flex;font-size:1.1rem;gap:12px;justify-content:center}.disponibilidad-detalles .libres{color:#28a745;font-weight:600}.disponibilidad-detalles .ocupados{color:#dc3545;font-weight:600}.disponibilidad-detalles .separador{color:#999}.caseta-card-horario{background:#ffffffe6;border-radius:10px;color:#444;font-size:1.15rem;margin-bottom:16px;padding:12px;text-align:center}.caseta-card-horario strong{color:#6143ea}.caseta-reservas-list{border-top:2px solid #764ba233;margin-top:20px;padding-top:20px}.caseta-reservas-list strong{color:#2d1b4e;display:block;font-size:1.1rem;margin-bottom:12px}.caseta-reserva-item{align-items:center;background:#f5f4ffcc;border-left:4px solid #6143ea;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:10px 14px}.horario-reserva{color:#6143ea;font-size:1rem;font-weight:700}.nombre-reserva{color:#555;font-size:.95rem}@media (max-width:520px){.amenidades-modal-inline{grid-template-columns:1fr}.amenidades-modal-subfield{width:100%}.amenidades-modal-actions{align-items:stretch;flex-direction:column-reverse}.amenidades-modal-message{text-align:left}.amenidades-caseta-grid{grid-template-columns:1fr}.amenidad-caseta-card{padding:20px}.caseta-card-icon{font-size:3rem}.caseta-card-title{font-size:1.5rem}}.vigilancia-page{color:#1f2740}.vigilancia-page .section-header{align-items:center;display:flex;flex-direction:column;gap:6px;text-align:center}.vigilancia-grid{grid-gap:30px;display:grid;gap:30px;grid-template-areas:"accesos accesos accesos" "visitas paqueteria mudanzas" "frecuentes frecuentes frecuentes";grid-template-columns:1fr 1fr .8fr;grid-template-rows:auto auto 1fr}.vigilancia-grid-residente{grid-template-areas:"accesos accesos" "visitas paqueteria" "frecuentes frecuentes";grid-template-columns:1fr 1fr;grid-template-rows:auto auto 1fr}@media (max-width:1024px){.vigilancia-grid{gap:20px;grid-template-areas:"accesos accesos" "visitas paqueteria" "mudanzas mudanzas" "frecuentes frecuentes";grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto 1fr}}@media (max-width:640px){.vigilancia-grid,.vigilancia-grid-residente{gap:16px;grid-template-areas:"accesos" "visitas" "paqueteria" "mudanzas" "frecuentes";grid-template-columns:1fr;grid-template-rows:auto}.vigilancia-card{border-radius:18px;padding:20px}}.card-accesos{grid-area:accesos}.card-visitas{grid-area:visitas}.card-paqueteria{grid-area:paqueteria}.card-mudanzas{grid-area:mudanzas}.card-frecuentes{grid-area:frecuentes}.vigilancia-card{background:#fff;border:1px solid #64748b33;border-radius:26px;box-shadow:0 4px 16px #0000001a;color:#1e293b;padding:28px}.vigilancia-card h3{align-items:center;color:#0f172a;display:flex;font-size:1.35em;font-weight:700;gap:10px;margin-bottom:25px;margin-top:0}.card-visitas-description{color:#475569;font-size:1.05em;font-weight:500;margin:0 0 18px;opacity:1}.card-visitas-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}@media (min-width:768px){.card-visitas-actions{flex-direction:column}}.card-visitas-action{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:10px;justify-content:center;padding:12px 15px;text-align:center;transition:all .2s ease}.card-visitas-action svg{flex-shrink:0}.card-visitas-hint{align-items:center;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:12px;color:#1e40af;display:flex;font-size:.95em;font-weight:500;gap:12px;padding:14px 16px}.card-visitas-hint svg{flex-shrink:0}.accesos-header{display:flex;flex-direction:column;gap:18px;margin-bottom:20px}.accesos-header-text h3{margin-bottom:6px}.accesos-subtitle{font-size:.95em;margin:0;opacity:.85}.accesos-actions{display:flex;flex-direction:column;gap:10px}.accesos-action{flex:1 1}@media (min-width:768px){.accesos-header{align-items:center;flex-direction:row;justify-content:space-between}.accesos-actions{flex-direction:row;width:auto}.accesos-action{flex:none}}.accesos-filters{display:flex;flex-direction:column;gap:16px;margin-bottom:18px}@media (min-width:768px){.accesos-filters{align-items:flex-end;flex-direction:row;flex-wrap:wrap}.accesos-filter-select{flex-shrink:0;max-width:220px}.accesos-search{min-width:300px}}.accesos-filter-select label{display:block;font-size:.85em;margin-bottom:6px;opacity:.8}.accesos-filter-select select{background-color:#f5f7ff;border:1px solid #6376f647;border-radius:8px;box-sizing:border-box;color:#1f2740;font-size:.95em;height:44px;padding:12px;width:100%}.accesos-filter-select select:focus{outline:none}.accesos-search{align-items:center;background:#f0f3ff;border:1px solid #6376f647;border-radius:8px;box-sizing:border-box;display:flex;flex:1 1;gap:10px;height:44px;min-width:0;padding:12px;position:relative}.accesos-search svg{color:#4d56b2;flex-shrink:0;opacity:1}.accesos-search input{background:#0000;border:none;color:#1f2740;flex:1 1;font-size:.95em;min-width:0;width:100%}.accesos-search input::placeholder{color:#8892c4;font-size:.9em}.accesos-search input:focus{outline:none}.accesos-search-clear{background:#0000;border:none;color:#4d56b2;cursor:pointer;font-size:1.2em;padding:4px}.accesos-hint{align-items:center;background-color:#6376f614;border:1px solid #8e9ada3d;border-radius:12px;color:#4250a4;display:flex;font-size:.95em;gap:12px;padding:14px 16px}.accesos-hint svg{color:#4d56b2;flex-shrink:0}.accesos-hint-loading{background-color:#e0e7ffe6;border-color:#818cf880;color:#312e81}.accesos-hint-error{background-color:#fee2e2f2;border-color:#f8717199;color:#7f1d1d;justify-content:space-between}.accesos-hint-error button{background:#fff3;border:none;border-radius:8px;color:inherit;cursor:pointer;padding:8px 12px}.accesos-hint-empty{background-color:#ede9fee6;border-color:#c4b5fd99;color:#4c1d95}.accesos-hint-residente{justify-content:flex-start}.accesos-table table{min-width:100%}.acceso-visitante{display:flex;flex-direction:column;gap:6px}.acceso-visitante-nombre{color:#1e293b;font-size:1.05em;font-weight:700}.acceso-origen{color:#64748b;font-size:.8em;font-weight:600;letter-spacing:.05em;opacity:.9;text-transform:uppercase}.acceso-guardia{display:flex;flex-direction:column;font-size:.9em;gap:4px}.acceso-visitantes-count{font-size:.8em;opacity:.85}.acceso-estado{align-items:center;display:flex;flex-direction:row;gap:10px}.btn-inline{background:#6d28d9;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85em;font-weight:600;padding:6px 12px;transition:background .2s ease,transform .2s ease}.btn-inline:hover{background:#7c3aed;transform:translateY(-1px)}.btn-inline:disabled{cursor:not-allowed;opacity:.6;transform:none}.acceso-notas{font-size:.9em;max-width:220px;opacity:.85;white-space:pre-wrap;word-break:break-word}.acceso-salida-meta{display:inline-block;font-size:.85em;opacity:.85}.acceso-timestamp{display:flex;flex-direction:column;gap:4px}.acceso-timestamp-sec{font-size:.92em;opacity:.85}.accesos-refresh-indicator{font-size:.85em;margin-top:14px;opacity:.75}.manual-access-description{font-size:.92em;margin-bottom:18px;opacity:.85}.form-group label{font-weight:500;opacity:.9}.form-group input,.form-group select,.form-group textarea{background-color:#f5f7ff;border:1px solid #6376f647;border-radius:8px;color:#1f2740;font-size:1em;padding:12px;width:100%}.form-group input::placeholder{color:#2f366d99}.form-group textarea{min-height:96px}.form-group input[type=file]{background-color:#eef1ff;padding:10px}.form-group select{-webkit-appearance:none;appearance:none}.button-group{gap:10px}.btn-primary{background-color:#8c5fb2;box-shadow:0 4px 12px #0003}.btn-secondary{background-color:#3b82f6!important;border:1px solid #2563eb80;box-shadow:0 4px 12px #3b82f64d;color:#fff!important;font-weight:700}.btn-accion,.btn-danger,.btn-ghost,.btn-primary,.btn-secondary{align-items:center;border-radius:8px;cursor:pointer;display:inline-flex;flex:1 1;font-weight:600;gap:8px;justify-content:center;padding:12px 15px;transition:all .2s ease}.btn-primary:hover{background-color:#764ba2;color:#fff}.btn-secondary:hover{background-color:#2563eb;box-shadow:0 6px 16px #2563eb66;color:#fff}.btn-danger{background-color:#ff0019;border:none;box-shadow:0 4px 12px #ff001940}.btn-danger:hover{background-color:#c82333}.btn-ghost{background-color:initial;border:1px solid #6376f673;box-shadow:none;color:#4d56b2}.btn-ghost:hover{background-color:#6376f61f}.full-width{width:100%}.mudanza-aviso{background-color:#ffe56433;border:1px solid #ffe56480;border-radius:8px;margin-bottom:20px;padding:15px}.mudanza-aviso svg{color:#ffc107}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid #8e9ada47;color:#1f2740;padding:15px;text-align:left}th{color:#4a4f7d;font-weight:600}tbody tr:hover{background-color:#6376f614}.status-pill{border-radius:12px;font-size:.8em;padding:5px 10px}.status-en-el-edificio{background-color:#28a745;color:#fff}.status-no-ha-llegado{background-color:#ffc107;color:#333}.status-salió{background-color:#6c757d;color:#fff}.status-pendiente,.status-pendiente-de-recoger{background-color:#ffc107d9;color:#1f2937}.status-autorizado,.status-validado{background-color:#22c55ed9;color:#ecfdf5}.status-expirado{background-color:#94a3b8d9;color:#111827}.status-anulado,.status-cancelado,.status-revocado{background-color:#f87171e6;color:#fef2f2}.status-denegado{background-color:#ef4444d9;color:#fee2e2}.status-entregado{background-color:#198754d9;color:#e9fff1}.status-dentro{background-color:#22c55ee0;color:#ecfdf5}.status-fuera{background-color:#94a3b8d1;color:#111827}.status-generico{background-color:#4f46e5a6;color:#eef2ff}.status-en-proceso,.status-en-seguimiento,.status-enproceso{background-color:#38bdf8b3;color:#0f172a}.btn-accion{background-color:#667eea;border:none;color:#fff;padding:8px 12px}.visitas-residente-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.visitas-residente-note{flex:1 1 260px;font-size:.95em;margin:0;opacity:.85}.visitas-residente-add{align-items:center;display:flex;flex:0 0 auto;gap:8px;justify-content:center}.visitas-categoria-limits{display:flex;flex-wrap:wrap;font-size:.9em;gap:12px 18px;list-style:none;margin:0 0 18px;opacity:.85;padding:0}.visitas-categoria-limits li{background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;display:flex;gap:6px;padding:8px 12px}.visitas-hint{align-items:center;border:1px solid #0000;border-radius:10px;display:flex;font-size:.95em;gap:10px;margin-top:6px;padding:12px 14px}.visitas-hint svg{flex-shrink:0}.visitas-hint-loading{background-color:#e0e7ff;border-color:#c7d2fe;color:#312e81}.visitas-hint-error{background-color:#fee2e2;border-color:#fca5a5;color:#7f1d1d}.visitas-hint-warning{background-color:#fef3c7;border-color:#facc15;color:#78350f}.visitas-residente-list{display:flex;flex-direction:column;gap:14px;list-style:none;margin:0;padding:0}.visitas-residente-item{background:#fffffff2;border:1px solid #64748b33;border-radius:16px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:12px;padding:18px}.visitas-residente-item-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.visitas-residente-nombre{color:#1e293b;font-size:1.1em;font-weight:700}.visitas-residente-categoria{font-size:.85em}.visitas-categoria-badge{align-items:center;background:linear-gradient(135deg,#818cf82e,#6366f152);border:1px solid #6366f161;border-radius:999px;box-shadow:0 6px 14px #4f46e52e;color:#1e1b4b;display:inline-flex;font-size:.82em;font-weight:600;gap:6px;letter-spacing:.02em;padding:4px 12px}.visitas-categoria-badge.categoria-visita{background:linear-gradient(135deg,#818cf83d,#4338ca6b);border-color:#4f46e58c;color:#1e1b4b}.visitas-categoria-badge.categoria-proveedor{background:linear-gradient(135deg,#86efac3d,#22c55e73);border-color:#16a34a80;color:#064e3b}.visitas-categoria-badge.categoria-personal-limpieza{background:linear-gradient(135deg,#fde68a42,#f59e0b73);border-color:#d9770685;color:#78350f}.visitas-categoria-badge.categoria-servicio{background:linear-gradient(135deg,#a5f3fc42,#38bdf873);border-color:#0ea5e980;color:#0f172a}.visitas-categoria-badge.categoria-familia{background:linear-gradient(135deg,#fbcfe842,#f472b673);border-color:#db277780;color:#831843}.visitas-categoria-badge.categoria-chofer{background:linear-gradient(135deg,#bfdbfe3d,#60a5fa6b);border-color:#2563eb80;color:#1e3a8a}.visitas-categoria-badge.categoria-generica{background:linear-gradient(135deg,#e2e8f047,#94a3b866);border-color:#64748b80;color:#1f2937}.visitas-residente-item .visitas-categoria-badge{padding:5px 14px}.visitas-table td .visitas-categoria-badge{justify-content:center;min-width:110px}.detalle-visita-grid .visitas-categoria-badge{margin-top:4px}.visitas-residente-meta{color:#475569;display:flex;flex-wrap:wrap;font-size:.95em;font-weight:500;gap:10px 16px;opacity:1}.visitas-residente-notas{background:#f1f5f9e6;border-left:3px solid #3b82f680;border-radius:10px;color:#334155;font-size:.95em;font-weight:500;line-height:1.5;padding:12px 14px}.visitas-residente-id{align-items:center;color:#2563eb;display:inline-flex;font-size:.95em;font-weight:600;gap:8px;text-decoration:none;transition:color .2s ease}.visitas-residente-id:hover{color:#1d4ed8}.visitas-superadmin-toolbar{display:flex;flex-direction:column;font-size:.9em;gap:8px;margin-bottom:16px}.visitas-filter-input{align-items:center;background:#ffffff14;border:1px solid #ffffff1f;border-radius:10px;display:flex;gap:10px;padding:10px 12px}.visitas-filter-input input{background:#0000;border:none;color:inherit;flex:1 1;font-size:1em}.visitas-filter-input input::placeholder{color:#ffffffa6}.visitas-table table tbody tr td:last-child{width:150px}.visitas-modal-error{background-color:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#7f1d1d;font-size:.9em;margin-top:10px;padding:10px 12px}.visitas-modal-hint{color:#475569;display:block;font-size:.8em;margin-top:6px;opacity:.9}.visitas-modal-file{color:#334155;display:block;font-size:.8em;margin-top:4px;opacity:.85}.detalle-visita-body{display:flex;flex-direction:column;gap:18px}.detalle-visita-owner{background:#ffffff0f;border-radius:12px;display:flex;flex-direction:column;font-size:.9em;gap:4px;padding:14px 16px}.detalle-visita-owner>span:first-child{font-size:.75em;letter-spacing:.08em;opacity:.65;text-transform:uppercase}.detalle-visita-owner strong{font-size:1em}.detalle-visita-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.detalle-label{display:block;font-size:.78em;letter-spacing:.08em;margin-bottom:4px;opacity:.6;text-transform:uppercase}.detalle-value{font-size:.95em}.detalle-visita-notas{background:#ffffff0d;border-radius:12px;grid-column:1/-1;padding:12px}.detalle-visita-identificacion{align-items:center;display:flex;font-size:.9em;gap:12px}.detalle-visita-identificacion a{align-items:center;color:#c3dafe;display:inline-flex;gap:8px;text-decoration:none;transition:color .2s ease}.detalle-visita-identificacion a:hover{color:#fff}.detalle-visita-edit{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.detalle-visita-edit .form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:0}.detalle-visita-footer{flex-wrap:wrap;gap:12px;justify-content:flex-end}.detalle-visita-footer .btn-danger,.detalle-visita-footer .btn-primary,.detalle-visita-footer .btn-secondary{flex:0 0 auto}.detalle-visita-footer .btn-danger{background:linear-gradient(135deg,#ef4444,#b91c1c);border:1px solid #991b1bd9;box-shadow:0 12px 20px #991b1b47;color:#fff;font-weight:700;letter-spacing:.01em;text-shadow:0 1px 1px #0f172a59}.detalle-visita-footer .btn-danger svg{margin-right:6px}.detalle-visita-footer .btn-danger:hover{background:linear-gradient(135deg,#dc2626,#991b1b)}.detalle-visita-footer .btn-danger:disabled{background:linear-gradient(135deg,#f87171,#dc2626);border:1px solid #991b1b99;color:#fff;cursor:not-allowed;opacity:1;text-shadow:none}.detalle-visita-footer .btn-danger-confirm{background:linear-gradient(135deg,#f43f5e,#be123c);border-color:#be123ce6}.detalle-visita-footer .btn-danger-confirm:hover{background:linear-gradient(135deg,#e11d48,#9f1239)}.paqueteria-error{background-color:#dc354533;border:1px solid #dc354599;color:#dc3545;font-size:.95em;font-weight:600}.paqueteria-error,.paqueteria-hint{border-radius:8px;margin-bottom:15px;padding:10px 12px}.paqueteria-hint{align-items:center;border:1px solid #0000;display:flex;font-size:.9em;gap:8px}.paqueteria-hint svg{flex-shrink:0}.paqueteria-hint-loading{background-color:#3b82f61f;border-color:#3b82f666;color:#1e40af;font-weight:500}.paqueteria-hint-success{background-color:#22c55e1f;border-color:#22c55e66;color:#166534;font-weight:500}.paqueteria-hint-warning{background-color:#eab3081f;border-color:#eab30866;color:#854d0e;font-weight:500}.paqueteria-hint-error{background-color:#ef44441f;border-color:#ef444466;color:#991b1b;font-weight:500}.paqueteria-residente{display:flex;flex-direction:column;gap:16px}.paqueteria-residente-list{display:flex;flex-direction:column;gap:14px;list-style:none;margin:0;padding:0}.paqueteria-residente-item{grid-gap:12px;background:#fffffff2;border:1px solid #64748b33;border-radius:16px;box-shadow:0 2px 8px #00000014;display:grid;gap:12px;padding:18px}.paqueteria-residente-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.paqueteria-residente-empresa{color:#1f2740;font-size:1.15em;font-weight:700;letter-spacing:.3px}.paqueteria-residente-fecha{color:#475569;font-size:.95em;font-weight:500;opacity:.9}.paqueteria-residente-meta{align-items:center;color:#334155;display:flex;flex-wrap:wrap;font-size:.95em;font-weight:500;gap:10px 14px;opacity:1}.paqueteria-residente-meta .status-pill{margin-left:auto}.paqueteria-residente-comentarios{background:#f1f5f9e6;border-left:3px solid #3b82f680;border-radius:10px;color:#334155;font-size:.95em;font-weight:500;line-height:1.5;padding:12px 14px}.paqueteria-residente-footnote{color:#64748b;font-size:.9em;font-weight:500;margin:0;opacity:1}.mudanza-list{grid-gap:12px;display:grid;gap:12px;list-style:none;margin:0 0 20px;padding:0}.mudanza-item{grid-gap:6px;background:#ffffff14;border:1px solid #ffffff1f;border-radius:12px;display:grid;gap:6px;padding:12px}.mudanza-item span{align-items:center;background:#6376f614;border:1px solid #8e9ada3d;border-radius:12px;color:#4250a4;display:flex;font-size:.95em;gap:8px;padding:12px 14px}.mudanza-residente{opacity:.85}.mudanza-error{background-color:#dc354526;border:1px solid #dc354566;border-radius:8px;color:#ffe2e6;margin-bottom:20px;padding:12px}.vigilancia-modal{align-items:flex-start;background:#11182799;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:40px 20px;position:fixed;right:0;top:0;z-index:1000}.vigilancia-modal-content{background:linear-gradient(180deg,#f2f5ff,#e7ecff);background:#fff;border:1px solid #94a3b833;border-radius:16px;box-shadow:0 20px 45px #0f172a99;display:flex;flex-direction:column;margin:auto;max-height:90vh;max-width:520px;overflow:hidden;width:100%}.vigilancia-modal-large{max-width:820px}.vigilancia-modal-content,.vigilancia-modal-footer,.vigilancia-modal-header{color:#0f172a}.vigilancia-modal-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;padding:20px 24px}.vigilancia-modal-header h2{font-size:1.3em;margin:0}.vigilancia-modal-header button{background:none;border:none;color:#475569;cursor:pointer;font-size:1.5em;transition:color .2s ease}.vigilancia-modal-header button:hover{color:#1e293b}.vigilancia-modal-content form{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.vigilancia-modal-body{color:#0f172a;flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 24px 24px}.validation-modal-body{display:flex;flex-direction:column;gap:16px}.validation-modal-description{color:#1f2937;font-size:.95em;margin:0}.validation-modal-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.validation-modal-camera{align-items:center;background:#e2e8ff;border:1px solid #5b21b673;border-radius:12px;box-shadow:0 10px 20px #4f46e52e;color:#1e1b4b;cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:.95em;font-weight:600;gap:8px;justify-content:center;letter-spacing:.02em;min-width:180px;padding:12px 18px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease}.validation-modal-camera.active{background:linear-gradient(135deg,#38bdf8,#0ea5e9);border-color:#0ea5e999;box-shadow:0 12px 26px #0e74d752;color:#082f49}.validation-modal-camera:hover{background:#d7ddff;border-color:#4338ca99}.validation-modal-camera:focus-visible{outline:3px solid #818cf873;outline-offset:2px}.validation-modal-hint{color:#475569;font-size:.85em}.validation-modal-preview{align-items:center;background:#6366f11f;border:1px dashed #4f46e559;border-radius:14px;display:flex;justify-content:center;min-height:200px;overflow:hidden}.validation-video{height:100%;object-fit:cover;width:100%}.validation-video-placeholder{align-items:center;color:#1e293b;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:30px 20px;text-align:center}.validation-video-placeholder svg{color:#4f46e5d9;font-size:2.4rem}.validation-modal-progress{align-items:center;background:#3b82f61f;border:1px solid #2563eb40;border-radius:12px;color:#1d4ed8;display:flex;font-size:.9em;gap:8px;padding:10px 14px}.validation-result{align-items:flex-start;background:#1e3a8a14;border:1px solid #0000;border-radius:16px;color:#1e293b;display:flex;gap:12px;padding:14px 16px}.validation-result.success{background:#22c55e1f;border-color:#16a34a59;color:#166534}.validation-result.error{background:#f8717124;border-color:#dc262661;color:#7f1d1d}.validation-result-icon{align-items:center;display:flex;flex:0 0 auto;font-size:1.8rem;justify-content:center}.validation-result.success .validation-result-icon svg{color:#16a34a}.validation-result.error .validation-result-icon svg{color:#dc2626}.validation-result-text{flex:1 1 auto}.validation-result-title{font-size:1em;font-weight:600;margin:0 0 4px}.validation-result-details{display:flex;flex-direction:column;font-size:.9em;gap:2px}.validation-result-details p{margin:0}.validation-result-details strong{font-weight:600}.visit-history-body{display:flex;flex-direction:column;gap:18px}.visit-history-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.visit-history-toolbar p{color:#1f2937;flex:1 1 260px;font-size:.95em;margin:0}.visit-history-toolbar button{align-items:center;display:flex;flex:0 0 auto;gap:8px}.visit-history-toolbar .btn-secondary{background:#6366f129;border:1px solid #6366f152;box-shadow:0 10px 22px #4f46e52e;color:#312e81;font-weight:600}.visit-history-toolbar .btn-secondary svg{color:#4338ca}.visit-history-toolbar .btn-secondary:hover{background:#4f46e538;border-color:#4338ca7a}.visit-history-toolbar .btn-secondary:disabled{background:#94a3b82e;border-color:#94a3b859;box-shadow:none;color:#475569}.visit-history-toolbar .btn-secondary:disabled svg{color:#64748b}.visit-history-table table td,.visit-history-table table th{vertical-align:top}.visit-history-sub{color:#475569;font-size:.8em;margin-top:4px}.vigilancia-modal-content form .form-group label{color:#1e293b;font-weight:600;opacity:.95}.vigilancia-modal-content form .form-group input,.vigilancia-modal-content form .form-group select,.vigilancia-modal-content form .form-group textarea{background-color:#ffffffeb;border:1px solid #6366f166;box-shadow:0 4px 16px #0f172a2e;color:#1e293b}.vigilancia-modal-content form .form-group input::placeholder,.vigilancia-modal-content form .form-group textarea::placeholder{color:#0f172a8c}.vigilancia-modal-content form .form-group select{background-image:linear-gradient(45deg,#0000 50%,#6366f1cc 0),linear-gradient(135deg,#6366f1cc 50%,#0000 0);background-position:calc(100% - 18px) 1.1em,calc(100% - 13px) 1.1em;background-repeat:no-repeat;background-size:5px 5px,5px 5px;color:#1e293b;padding-right:36px}.vigilancia-modal-content form .form-group textarea{min-height:120px}.vigilancia-modal-content form .form-group input[type=file]{background-color:#ffffffe6;border:1px dashed #6366f173;color:#1e293b}.vigilancia-modal-content form .form-group input:focus,.vigilancia-modal-content form .form-group select:focus,.vigilancia-modal-content form .form-group textarea:focus{border-color:#818cf8cc;box-shadow:0 0 0 3px #818cf840;outline:none}.mudanza-modal-list{list-style:none;margin:0;padding:0}.mudanza-modal-list li{grid-gap:4px;border-bottom:1px solid #ffffff14;display:grid;gap:4px;padding:12px 0}.mudanza-modal-list li:last-child{border-bottom:none}.vigilancia-modal-footer{background:#f1f5f9f2;border-top:1px solid #94a3b859;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:20px 24px;width:100%}.vigilancia-modal-footer .btn-danger,.vigilancia-modal-footer .btn-primary,.vigilancia-modal-footer .btn-secondary{align-self:center;box-shadow:none;flex:0 1 50%;font-size:.85em;max-width:220px;min-width:0;padding:8px 12px}.vigilancia-modal-footer .btn-primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 10px 18px #4c1d9540}.vigilancia-modal-footer .btn-primary:hover{background:linear-gradient(135deg,#6d28d9,#5b21b6)}.vigilancia-modal-footer .btn-secondary{background-color:#3b82f6;border:1px solid #2563eb80;box-shadow:0 6px 14px #3b82f64d;color:#fff}.vigilancia-modal-footer .btn-secondary:hover{background-color:#2563eb;border-color:#2563eb80;box-shadow:0 8px 16px #2563eb66;color:#fff}.qr-modal-body{display:flex;flex-direction:column;gap:18px}.qr-modal-toggle{align-items:center;background:#818cf829;border:1px solid #818cf852;border-radius:14px;color:#312e81;display:flex;font-size:.95em;gap:12px;padding:12px 14px}.qr-modal-toggle label{align-items:center;cursor:pointer;display:inline-flex;gap:10px}.qr-modal-toggle input{-webkit-appearance:none;appearance:none;background:#fffffff2;border:2px solid #6366f1cc;border-radius:6px;display:grid;height:18px;place-items:center;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease;width:18px}.qr-modal-toggle input:after{background:#0000;border-radius:2px;content:"";height:8px;transform:scale(0);transition:transform .15s ease;width:8px}.qr-modal-toggle input:checked{background:#7c3aed;border-color:#5b21b6;box-shadow:0 6px 14px #5b21b640}.qr-modal-toggle input:checked:after{background:#fff;transform:scale(1)}.qr-modal-toggle input:focus-visible{outline:3px solid #6366f166;outline-offset:2px}.qr-modal-hint{color:#475569;display:block;font-size:.82em;margin-top:6px;opacity:.9}.qr-modal-grid{grid-gap:18px 16px;align-items:start;display:grid;gap:18px 16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.qr-modal-grid .form-group{margin-bottom:0}.qr-modal-grid .form-group input,.qr-modal-grid .form-group select{box-sizing:border-box;height:46px;padding:12px}.qr-modal-grid .form-group textarea{min-height:120px}.manual-access-grid{margin-top:4px}.manual-textarea{grid-column:1/-1}.qr-help-icon{align-items:center;color:#7b8ab3;display:inline-flex;font-size:.95em;gap:4px;margin-left:6px}.qr-help-icon:hover{color:#4d56b2}.qr-modal-preview{align-items:center;background:#ffffffd9;border:1px solid #94a3b859;border-radius:18px;box-shadow:0 10px 28px #0f172a33;display:flex;flex-wrap:wrap;gap:20px;padding:18px}.qr-modal-preview-image{align-items:center;background:#fff;border-radius:16px;box-shadow:inset 0 0 0 1px #94a3b840;display:flex;flex:0 0 200px;justify-content:center;padding:16px}.qr-modal-preview-image img{height:auto;max-width:180px;width:100%}.qr-modal-preview-info{color:#0f172a;display:flex;flex:1 1 220px;flex-direction:column;gap:10px}.qr-modal-preview-info p{margin:0}.qr-modal-footer{gap:16px}.paqueteria-modal-list{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0}@media (max-width:480px){.vigilancia-modal{padding:20px 12px}.vigilancia-modal-content{border-radius:12px;max-width:100%}.vigilancia-modal-header{padding:16px 18px}.vigilancia-modal-body{padding:0 18px 18px}.vigilancia-modal-footer{justify-content:center;padding:16px 18px}.vigilancia-modal-footer .btn-danger,.vigilancia-modal-footer .btn-primary,.vigilancia-modal-footer .btn-secondary{flex:1 1 100%;font-size:.9em;min-width:0;padding:10px 12px}.qr-modal-grid{grid-template-columns:1fr}.qr-modal-preview{align-items:stretch;flex-direction:column}.qr-modal-preview-image{flex:0 0 auto;margin:0 auto}}.paqueteria-modal-item{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:16px;display:flex;flex-wrap:wrap;gap:16px;padding:18px}.paqueteria-modal-main{display:flex;flex:1 1 420px;flex-direction:column;gap:12px}.paqueteria-modal-main>div:first-child{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.paqueteria-modal-depto{font-size:1.05em;font-weight:600}.paqueteria-modal-meta{display:flex;flex-wrap:wrap;font-size:.9em;gap:12px 18px;opacity:.9}.paqueteria-modal-comentarios{display:block;margin-top:8px;width:100%}.paqueteria-modal-actions{align-items:center;display:flex;flex:0 0 160px;justify-content:flex-end}.paqueteria-modal-actions .btn-primary{width:100%}.reportes-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.reportes-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:900px;overflow-y:auto;width:100%}.reportes-modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:24px}.reportes-modal-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.reportes-close-btn{align-items:center;background:none;border:none;border-radius:6px;color:#6c757d;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:0;transition:all .2s;width:40px}.reportes-close-btn:hover{background:#e9ecef;color:#2c3e50}.reportes-modal-body{padding:24px}.reportes-controls{display:flex;flex-direction:column;gap:20px}.date-selector{display:flex;gap:20px;margin-bottom:20px}.date-input-group{display:flex;flex-direction:column;gap:8px}.date-input-group label{color:#2c3e50;font-size:.9rem;font-weight:600}.date-input-group select{background:#fff;border:1px solid #d0d0d0;border-radius:6px;cursor:pointer;font-size:1rem;min-width:150px;padding:10px 12px}.date-input-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;padding:12px}.btn-generate-report{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;padding:12px 24px;transition:all .3s}.btn-generate-report:hover:not(:disabled){box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}.btn-generate-report:disabled{cursor:not-allowed;opacity:.6}.spinner{animation:spin 1s linear infinite}.reporte-mensual,.reportes-result{display:flex;flex-direction:column;gap:24px}.reporte-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-item{background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:16px}.summary-item label{color:#6c757d;font-size:.9rem;font-weight:600}.summary-item .amount{color:#2c3e50;font-size:1.5rem;font-weight:700}.summary-item .amount.negative{color:#dc3545}.summary-item .amount.positive{color:#28a745}.summary-item.total{background:linear-gradient(135deg,#f8f9fa,#e9ecef);grid-column:1/-1}.summary-item.total .amount{font-size:2rem}.reporte-details{gap:24px}.details-section,.reporte-details{display:flex;flex-direction:column}.details-section{gap:12px}.details-section h4{color:#2c3e50;font-size:1.1rem;margin:0}.details-table{border-collapse:collapse;font-size:.9rem;width:100%}.details-table thead{background:#f8f9fa;border-bottom:2px solid #d0d0d0}.details-table thead th{color:#2c3e50;font-weight:600;padding:12px;text-align:left}.details-table tbody td{border-bottom:1px solid #e9ecef;color:#495057;padding:12px}.details-table tbody tr:hover{background:#f8f9fa}.details-table .amount{color:#28a745;font-weight:600;text-align:right}.details-table .amount.negative{color:#dc3545}.estado-cuenta-report{display:flex;flex-direction:column;gap:24px}.estado-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.summary-box{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;padding:16px;text-align:center}.summary-box.success{background:#f0f8f5;border-left-color:#28a745}.summary-box.danger{background:#fdf5f5;border-left-color:#dc3545}.summary-box label{color:#6c757d;display:block;font-size:.85rem;font-weight:600;margin-bottom:8px}.summary-box .value{color:#2c3e50;display:block;font-size:1.5rem;font-weight:700}.casas-list{gap:12px}.casas-list h4{color:#2c3e50;font-size:1.1rem;margin:0}.status-badge{padding:4px 12px}.status-badge.corriente{background:#d4edda;color:#155724}.status-badge.morosa{background:#f8d7da;color:#721c24}.details-table tbody tr.morosa{background:#fff5f5}.gastos-report{display:flex;flex-direction:column;gap:24px}.gastos-summary{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;padding:20px}.gastos-summary .summary-item{background:#0000}.gastos-by-category{display:flex;flex-direction:column;gap:12px}.gastos-by-category h4{color:#2c3e50;font-size:1.1rem;margin:0}.reportes-actions{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding-top:12px}.btn-download,.btn-new-report{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.btn-download{background:#28a745}.btn-download:hover{background:#218838;box-shadow:0 4px 12px #28a7454d}.btn-new-report{background:#6c757d;color:#fff}.btn-new-report:hover{background:#5a6268;box-shadow:0 4px 12px #6c757d4d;transform:translateY(-2px)}@media (max-width:768px){.reportes-modal-content{max-width:calc(100% - 40px)}.date-selector{flex-direction:column}.date-input-group select{min-width:100%}.estado-summary,.reporte-summary{grid-template-columns:1fr}.details-table{font-size:.8rem}.details-table tbody td,.details-table thead th{padding:8px}.reportes-actions{flex-direction:column}.btn-download,.btn-new-report{justify-content:center;width:100%}}.finanzas-page{color:#1f2740}.finanzas-header{display:flex;justify-content:center;margin-bottom:36px}.finanzas-header-left{align-items:center;display:flex;flex-direction:column;gap:8px}.feedback-message{animation:fadeInMessage .5s ease-out;margin:0 0 20px;padding:12px}@keyframes fadeInMessage{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.feedback-message.success{border:1px solid #c3e6cb}.feedback-message.error{border:1px solid #f5c6cb}.finanzas-grid{grid-gap:30px;display:grid;gap:30px;grid-auto-rows:auto;grid-template-areas:"quick quick" "summary reports" "calculate calculate" "ingresos egresos" "recibos recibos";grid-template-columns:1.5fr 1fr}.card-quick{grid-area:quick}.card-summary{grid-area:summary}.card-reports{grid-area:reports}.card-calculate{grid-area:calculate}.card-ingresos{grid-area:ingresos}.card-egresos{grid-area:egresos}.card-deleted{grid-area:recibos}.finanzas-card{background:#fbf8ff;border:1px solid #7c5cff24;border-radius:26px;box-shadow:0 24px 48px #1b124b2e;color:#1f2740;display:flex;flex-direction:column;gap:18px;padding:28px}.finanzas-card.card-quick{padding:16px 22px}.finanzas-card h3{align-items:center;display:flex;font-size:1.3em;gap:10px;margin:0}.card-title-with-action{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.summary-list .summary-item{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:15px 5px}.summary-list .summary-item:last-child{border-bottom:none}.summary-item.summary-important strong{color:#d9534f}.summary-item.summary-positive strong{color:#28a745}.summary-pair{display:flex;gap:16px}.summary-pair .summary-item{border-bottom:none;flex:1 1}.summary-subtext{color:#6c757d;font-size:.85em;margin-top:4px}.reports-actions{display:flex;flex-wrap:wrap;gap:10px}.btn-report{background-color:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9em;font-weight:500;padding:8px 14px;transition:background-color .2s ease,transform .1s ease}.btn-report:hover{background-color:#5a6fd2}.btn-report:active{background-color:#4f60b9;transform:scale(.95)}.btn-add-egreso{background-color:#d9534f;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9em;font-weight:700;padding:8px 16px;transition:background-color .2s;white-space:nowrap}.btn-add-egreso:hover{background-color:#c9302c}.table-container{width:100%}.monto-egreso{color:#d9534f;font-weight:700;text-align:right}@keyframes fadeInRow{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.finanzas-card tbody tr{opacity:0}.finanzas-card.is-visible tbody tr{animation:fadeInRow .7s ease-out forwards}.btn-ver-todos{background-color:initial;border:1px solid #667eea;border-radius:6px;color:#667eea;font-size:.8em;font-weight:700;padding:6px 12px;text-decoration:none;transition:all .2s}.btn-ver-todos:hover{background-color:#667eea;color:#fff}.finanzas-card.card-link a{align-items:center;color:inherit;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center;text-decoration:none}.card-deleted{background:#dc26260d;border:1px dashed #dc2626;box-shadow:0 12px 28px #dc262614;gap:0;grid-column:1/-1;min-height:0;padding:12px 16px}.card-deleted-link{align-items:center;color:#b91c1c;display:flex;flex-direction:row;gap:12px;height:auto;justify-content:space-between;text-align:left;text-decoration:none;width:100%}.card-deleted-icon{color:#dc2626;font-size:22px;margin:0}.card-deleted-text{display:flex;flex-direction:column;gap:2px}.card-deleted-text h3{color:#991b1b;display:block;font-size:1rem;line-height:1.2;margin:0}.card-deleted-text p{color:#b91c1c;font-size:.9rem;line-height:1.3;margin:0}.quick-summary{background:#0000;border:none;border-radius:0;box-shadow:none;color:inherit;display:flex;flex-direction:column;gap:12px;padding:0;width:100%}.quick-summary-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.quick-summary-header>div:first-child{align-items:flex-start;display:flex;flex-direction:column;gap:4px;max-width:540px}.quick-summary-title{font-weight:700}.quick-summary-desc{color:#6b7280;font-size:.82em;line-height:1.25}.quick-summary-values{grid-gap:8px 24px;display:grid;gap:8px 24px;grid-template-columns:repeat(4,minmax(140px,1fr));width:100%}.quick-summary-values div{display:flex;flex-direction:column;gap:4px}.quick-summary-values small{color:#64748b;font-size:.68rem;font-weight:600;letter-spacing:.045em;text-transform:uppercase}.qs-amount{font-weight:700;margin-top:2px}.qs-amount.strong{color:#111827}.card-link-icon{color:#667eea;font-size:2.5em;margin-bottom:1rem}.finanzas-page{overflow:hidden;position:relative}.finanzas-card{box-sizing:border-box;max-width:100%}.finanzas-card,.quick-summary{overflow:hidden}.quick-summary-sections{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:12px}.quick-summary-section{background:linear-gradient(180deg,#ffffffeb,#f8fafcf0);border:1px solid #94a3b838;border-radius:12px;display:flex;flex-direction:column;gap:8px;min-height:0;padding:12px 14px}.quick-summary-section h4{color:#0f172a;font-size:.84rem;letter-spacing:-.01em;margin:0}.quick-summary-section ul{color:#475569;display:flex;flex-direction:column;font-size:.82rem;gap:4px;list-style:none;margin:0;padding:0}.quick-summary-section ul li strong{color:#111827;font-weight:600}.quick-summary-section ul li{display:flex;gap:8px;justify-content:space-between;line-height:1.2}.quick-summary-section ul li span{text-align:right}.config-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:.85rem;min-width:32px;padding:4px 8px;text-align:center}.config-badge,.quick-summary-chip{align-items:center;display:inline-flex;font-weight:700;justify-content:center}.quick-summary-chip{background:#94a3b838;border-radius:999px;color:#334155;font-size:.7rem;letter-spacing:.02em;padding:3px 8px;text-transform:uppercase}.quick-summary-chip.active{background:#22c55e29;color:#047857}.quick-summary-chip.inactive{background:#94a3b829;color:#475569}.quick-summary-compact-chips{justify-content:flex-start;margin-top:4px}.quick-summary-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.btn-toggle-summary{background-color:#94a3b840;border:1px solid #94a3b859;border-radius:6px;color:#1f2937;cursor:pointer;font-size:.78rem;font-weight:600;padding:6px 12px;transition:all .2s ease}.btn-toggle-summary:hover{background-color:#6b728033;border-color:#6b728059}.btn-toggle-summary:active{transform:translateY(1px)}.card-calculate{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.card-calculate h3{color:#fff;font-size:1.4em}.card-calculate p{font-size:.95em;margin:0;opacity:.95}.calculate-info{background:#ffffff26;border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;padding:12px}.calculate-info div{display:flex;flex-direction:column;gap:4px}.calculate-info strong{font-size:.75rem;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.btn-calculate-charges{background:#fff;border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#667eea;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 24px;transition:all .3s ease}.btn-calculate-charges:hover:not(:disabled){box-shadow:0 6px 20px #0003;transform:translateY(-2px)}.btn-calculate-charges:active:not(:disabled){transform:translateY(0)}.btn-calculate-charges:disabled{cursor:not-allowed;opacity:.6}.btn-reset-charges{background:#fff3cd;border:2px solid #ffc107;border-radius:8px;color:#856404;cursor:pointer;display:block;font-size:.9rem;font-weight:600;margin-top:12px;padding:12px 20px;transition:all .3s ease;width:100%}.btn-reset-charges:hover:not(:disabled){background:#ffc107;box-shadow:0 4px 12px #ffc10766;color:#fff;transform:translateY(-2px)}.btn-reset-charges:active:not(:disabled){transform:translateY(0)}.btn-reset-charges:disabled{cursor:not-allowed;opacity:.5}.btn-assign-role{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:block;font-size:.85rem;font-weight:600;margin-top:8px;padding:12px 20px;transition:all .3s ease;width:100%}.btn-assign-role:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-assign-role:active:not(:disabled){transform:translateY(0)}.btn-assign-role:disabled{cursor:not-allowed;opacity:.5}.charge-result{animation:fadeIn .3s ease-in;border-radius:8px;font-size:.9em;padding:12px}.charge-result.success{background:#22c55e33;border:1px solid #22c55e66}.charge-result.error{background:#ef444433;border:1px solid #ef444466}.charge-details{border-top:1px solid #ffffff4d;margin-top:8px;padding-top:8px}.charge-details small{font-size:.85em;opacity:.95}.confirm-modal-overlay,.error-modal-overlay{align-items:center;animation:fadeInOverlay .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172abf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.confirm-modal-content,.error-modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:500px;overflow:hidden;width:100%}.confirm-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;gap:16px;padding:28px 30px}.confirm-modal-icon{flex-shrink:0;font-size:2.5em;opacity:.95}.confirm-modal-header h2{font-size:1.35em;font-weight:600;line-height:1.3;margin:0}.confirm-modal-body{padding:30px}.confirm-modal-info{background:linear-gradient(135deg,#f8f9ff,#f0f4ff);border:2px solid #e0e7ff;border-radius:12px;margin-bottom:20px;padding:20px}.confirm-info-item{align-items:center;border-bottom:1px solid #667eea26;display:flex;justify-content:space-between;padding:10px 0}.confirm-info-item:last-child{border-bottom:none;padding-bottom:0}.confirm-info-item:first-child{padding-top:0}.confirm-label{color:#475569;font-size:.95em;font-weight:500}.confirm-value{color:#1e293b;font-size:1.05em;font-weight:700;text-align:right}.confirm-modal-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:4px solid #f59e0b;border-radius:8px;color:#92400e;font-size:.95em;font-weight:500;line-height:1.5;margin:0;padding:16px}.confirm-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:20px 30px 30px}.btn-confirm-accept,.btn-confirm-cancel{border:none;border-radius:10px;cursor:pointer;font-size:1em;font-weight:600;min-width:120px;padding:12px 28px;transition:all .2s ease}.btn-confirm-cancel{background:#f1f5f9;border:2px solid #e2e8f0;color:#475569}.btn-confirm-cancel:hover{background:#e2e8f0;border-color:#cbd5e1}.btn-confirm-accept{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66;color:#fff}.btn-confirm-accept:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-confirm-accept:active{transform:translateY(0)}.btn-danger-accept{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 12px #ef444466;color:#fff}.btn-danger-accept:hover:not(:disabled){box-shadow:0 6px 20px #ef444480;transform:translateY(-2px)}.btn-danger-accept:active:not(:disabled){transform:translateY(0)}.btn-danger-accept:disabled{cursor:not-allowed;opacity:.6}.reset-modal{max-width:450px}.reset-header{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.reset-icon{font-size:2.5rem}.confirm-modal-warning.danger{background-color:#fef2f2;border-left:4px solid #dc2626;border-radius:4px;color:#991b1b;padding:12px}.error-modal-content{max-width:450px}.error-modal-header{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:flex;gap:16px;padding:28px 30px}.error-icon-wrapper{align-items:center;background:#fff3;border-radius:50%;display:flex;flex-shrink:0;height:50px;justify-content:center;width:50px}.error-icon{font-size:1.8em;font-weight:700;line-height:1}.error-modal-header h2{font-size:1.3em;font-weight:600;line-height:1.3;margin:0}.error-modal-body{padding:30px}.error-message{background:linear-gradient(135deg,#fee2e2,#fecaca);border-left:4px solid #ef4444;border-radius:8px;color:#7f1d1d;font-size:.95em;font-weight:500;line-height:1.6;margin:0;padding:20px}.error-modal-footer{display:flex;justify-content:center;padding:0 30px 30px}.btn-error-accept{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;box-shadow:0 4px 12px #ef444466;color:#fff;cursor:pointer;font-size:1em;font-weight:600;min-width:140px;padding:12px 40px;transition:all .2s ease}.btn-error-accept:hover{box-shadow:0 6px 20px #ef444480;transform:translateY(-2px)}.btn-error-accept:active{transform:translateY(0)}@media (max-width:600px){.confirm-modal-content,.error-modal-content{margin:10px;max-width:95%}.confirm-modal-header,.error-modal-header{padding:20px}.confirm-modal-header h2,.error-modal-header h2{font-size:1.15em}.confirm-modal-icon{font-size:2em}.error-icon-wrapper{height:40px;width:40px}.error-icon{font-size:1.5em}.confirm-modal-body,.error-modal-body{padding:20px}.confirm-modal-footer,.error-modal-footer{flex-direction:column;padding:15px 20px 20px}.btn-confirm-accept,.btn-confirm-cancel,.btn-error-accept{width:100%}}.success-modal-overlay{align-items:center;animation:fadeInOverlay .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172abf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.success-modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:500px;overflow:hidden;width:100%}.success-modal-header{align-items:center;background:linear-gradient(135deg,#34d399,#10b981);color:#fff;display:flex;gap:16px;padding:28px 30px}.success-icon-wrapper{align-items:center;background:#fff3;border-radius:50%;display:flex;flex-shrink:0;height:50px;justify-content:center;width:50px}.success-icon{font-size:1.8em;font-weight:700;line-height:1}.success-modal-header h2{font-size:1.3em;font-weight:600;line-height:1.3;margin:0}.success-modal-body{padding:30px}.success-message{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-left:4px solid #10b981;border-radius:8px;color:#065f46;font-size:.95em;font-weight:500;line-height:1.6;margin:0 0 16px;padding:16px}.success-info{background:linear-gradient(135deg,#f8f9ff,#f0f4ff);border:2px solid #e0e7ff;border-radius:12px;padding:16px}.success-info-item{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.success-label{color:#475569;font-size:.9em;font-weight:600}.success-value{color:#1e293b;font-size:1.05em;font-weight:700;text-align:right}.success-modal-footer{display:flex;justify-content:center;padding:0 30px 30px}.btn-success-accept{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:10px;box-shadow:0 4px 12px #10b98166;color:#fff;cursor:pointer;font-size:1em;font-weight:600;min-width:140px;padding:12px 40px;transition:all .2s ease}.btn-success-accept:hover{box-shadow:0 6px 20px #10b98180;transform:translateY(-2px)}.btn-success-accept:active{transform:translateY(0)}@media (max-width:600px){.success-modal-content{margin:10px;max-width:95%}.success-modal-header{padding:20px}.success-icon-wrapper{height:40px;width:40px}.success-icon{font-size:1.5em}.success-modal-body{padding:20px}.success-modal-footer{padding:15px 20px 20px}}@media (max-width:1024px){.quick-summary-values{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media (max-width:720px){.quick-summary-header{align-items:stretch;flex-direction:column;gap:10px}.quick-summary-actions{justify-content:flex-start}.quick-summary-values{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.quick-summary-sections{grid-template-columns:1fr}}.finanzas-card.is-visible tbody tr:first-child{animation-delay:.2s}.finanzas-card.is-visible tbody tr:nth-child(2){animation-delay:.4s}.finanzas-card.is-visible tbody tr:nth-child(3){animation-delay:.6s}.finanzas-card.is-visible tbody tr:nth-child(4){animation-delay:.8s}.finanzas-card.is-visible tbody tr:nth-child(5){animation-delay:1s}.pago-modal-wrapper{align-items:center;background:#0000;display:flex;inset:0;justify-content:center;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:16px 0;position:fixed;z-index:1100}.pago-modal-content{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 22px 45px #0f172a38;display:flex;flex-direction:column;max-height:88vh;overflow:hidden;position:relative;width:min(1400px,98vw)}.modal-close-btn{background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;color:#e2e8ff;display:grid;font-size:20px;height:42px;place-items:center;right:14px;top:14px;transition:all .18s ease;width:42px;z-index:5}.modal-close-btn:hover{background:#ffffff24;transform:translateY(-1px) scale(1.02)}.modal-header{background:linear-gradient(135deg,#4f46e5,#6366f1 40%,#8b5cf6);border-bottom:1px solid #ffffff0f;padding:clamp(14px,4vw,22px) clamp(16px,4vw,24px) clamp(12px,3vw,18px);text-align:center}.modal-header h2{font-size:clamp(1.1rem,3vw,1.35rem);font-weight:800;letter-spacing:-.01em;margin:0 0 clamp(4px,1vw,6px)}.modal-resident-name{color:#fff!important;font-size:clamp(.9rem,2.5vw,1.05rem);font-weight:700;margin:0;word-break:break-word}.modal-debt-info,.modal-folio-info{align-items:center;background:#ffffff0f;border:1px solid #ffffff14;border-radius:12px;display:inline-flex;flex-wrap:wrap;gap:clamp(6px,1.5vw,10px);margin-top:clamp(8px,2vw,12px);max-width:100%;padding:clamp(8px,1.5vw,10px) clamp(10px,2vw,14px)}.debt-label{color:#cbd5ff;font-size:clamp(.8rem,1.5vw,.95rem);font-weight:700;white-space:nowrap}.debt-amount{color:#fbbf24;font-size:clamp(1rem,2vw,1.2rem);font-weight:800}.folio-label{color:#cbd5ff;font-size:clamp(.75rem,1.3vw,.9rem);font-weight:600;white-space:nowrap}.folio-number{color:#34d399;font-family:Courier New,monospace;font-size:clamp(.8rem,1.5vw,1rem);font-weight:800}.form-error-message{align-items:center;background:linear-gradient(135deg,#ef44441a,#f871711f);border:1px solid #ef444466;border-radius:12px;color:#991b1b;display:flex;font-weight:700;gap:10px;margin:14px 18px 0;padding:12px 14px}form{background:#0000;color:#111827;display:flex;flex:1 1 auto;flex-direction:column;gap:clamp(8px,1.5vw,10px);overflow-y:auto;padding:clamp(10px,2vw,12px) clamp(12px,2vw,14px)}.form-layout{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);overflow-x:hidden;padding-right:6px}.form-column{display:flex;flex-direction:column;gap:14px}.form-column--primary{background:#f9fafb;border-radius:14px;box-shadow:0 10px 30px #0f172a40;padding:16px 18px 18px}.form-column--summary{align-self:stretch;display:flex;flex-direction:column;gap:12px;position:relative;top:auto}@media (max-width:1024px){.form-layout{grid-template-columns:1fr}.form-column--summary{position:relative;top:auto}}.form-grid{grid-gap:clamp(6px,1.5vw,8px);display:grid;gap:clamp(6px,1.5vw,8px);grid-template-columns:repeat(2,minmax(200px,1fr))}.form-grid-notes{column-gap:24px;grid-template-columns:minmax(260px,1.4fr) minmax(220px,1fr)}.form-group-file{align-self:flex-start}.form-group{display:flex;flex-direction:column;gap:3px}.form-label-row{color:#4b5563;display:flex;flex-wrap:nowrap;font-size:clamp(.85rem,2vw,.95rem);gap:6px}.form-label-row,.help-icon{align-items:center;font-weight:700}.help-icon{background:linear-gradient(135deg,#667eea,#764ba2);border:1px solid #ffffff4d;border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#fff!important;cursor:help;display:inline-flex;font-size:.75rem;height:18px;justify-content:center;transition:all .2s ease;width:18px}.help-icon:hover{box-shadow:0 3px 6px #00000026;transform:scale(1.1)}.input-with-suffix{position:relative}.input-with-suffix .suffix{color:#000;font-size:.95rem;font-weight:700;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.input-with-suffix input[type=number]::-webkit-inner-spin-button,.input-with-suffix input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-with-suffix input[type=number]{-moz-appearance:textfield}input,select,textarea{background:#fff;border:1px solid #d1d5db;border-radius:12px;color:#111827;font-size:clamp(.85rem,1.5vw,.95rem);min-height:40px;padding:clamp(10px,1.5vw,12px) clamp(12px,2vw,14px);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;width:100%}input:focus,select:focus,textarea:focus{background:#ffffff0f;border-color:#7c5cffcc;box-shadow:0 0 0 3px #7c5cff2e;outline:none}input[type=file]{font-size:.8rem;max-width:210px;padding:6px 10px}textarea{max-height:60px;min-height:50px;resize:vertical}.badge{background:#7c5cff29;border:1px solid #7c5cff59;border-radius:999px;color:#4f46e5;display:inline-block;font-size:1rem;margin:0}.badge,.badge-soft{font-weight:700;padding:4px 10px}.badge-soft{background:#34d39929;border:1px solid #34d39959;border-radius:10px;color:#bbf7d0}.pagos-container{display:flex;flex-direction:column;gap:8px;max-height:none;overflow-y:visible;padding-right:0}.pago-card{background:#fff;border:1px solid #e5e7eb;box-shadow:0 8px 20px #00000024;padding:clamp(10px,2vw,14px)}.pago-header{gap:8px;margin-bottom:10px}.pago-header h4{color:#111827;font-size:1.15rem;font-weight:800;margin:4px 0 0}.btn-remove-pago{background:#f871711f;border:1px solid #f8717140;border-radius:10px;color:#fecdd3;cursor:pointer;font-size:16px;height:34px;transition:all .18s ease;width:34px}.btn-remove-pago:hover{background:#f8717133}.pago-summary{background:#f5f3ff;border:1px solid #e5e7eb;border-radius:10px;margin-top:8px;padding:10px}.summary-row{align-items:center;color:#374151;display:flex;font-size:.95rem;justify-content:space-between;padding:8px 0}.summary-row.final{border-top:1px solid #9ca3af40;color:#111827;font-weight:800;margin-top:6px;padding-top:10px}.summary-label{color:#cbd5ff;font-size:.8rem;font-weight:800;letter-spacing:.08em;margin:0 0 6px;text-transform:uppercase}.summary-strong{color:#fcd34d;font-weight:800}.discount-value{color:#fca5a5;font-weight:700}.summary-card,.tips-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 12px 28px #00000029;font-size:clamp(.8rem,1.5vw,.95rem);padding:clamp(10px,2vw,14px)}.summary-card{display:flex;flex-direction:column;gap:6px;position:-webkit-sticky;position:sticky;top:12px}.divider{background:linear-gradient(90deg,#0000,#fff3,#0000);height:1px;margin:8px 0 4px}.tips-title{color:#1f2937;font-weight:800;margin:0 0 8px}.tips-card ul{color:#374151;display:flex;flex-direction:column;font-size:.93rem;gap:6px;margin:0;padding-left:18px}.btn-add-pago{background:linear-gradient(135deg,#eef2ff,#e0f2fe);border:1px dashed #6366f1;border-radius:12px;color:#1d4ed8;cursor:pointer;font-weight:700;padding:12px 14px;transition:all .18s ease}.btn-add-pago:hover:not(:disabled){border-color:#4f46e5;transform:translateY(-1px)}.btn-add-pago:disabled{cursor:not-allowed;opacity:.6}.modal-actions{background:linear-gradient(180deg,#ffffff05,#ffffff0a);border-top:1px solid #ffffff0f;bottom:0;gap:10px;padding:14px 20px 18px;position:-webkit-sticky;position:sticky;z-index:3}.pago-modal-content .btn-cancel,.pago-modal-content .btn-confirm{border:none;border-radius:12px;cursor:pointer;font-weight:800;transition:all .18s ease}.pago-modal-content .btn-cancel{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;flex:0 0 auto;font-size:.95rem;min-width:135px;padding:11px 22px}.pago-modal-content .btn-cancel:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5}.pago-modal-content .btn-confirm{background:linear-gradient(135deg,#7c5cff,#4f46e5);box-shadow:0 12px 28px #4f46e559;color:#fff;flex:0 0 auto;font-size:.95rem;min-width:135px;padding:11px 22px}.pago-modal-content .btn-confirm:hover:not(:disabled){box-shadow:0 16px 32px #4f46e56b;transform:translateY(-1px)}.pago-modal-content .btn-cancel:disabled,.pago-modal-content .btn-confirm:disabled{cursor:not-allowed;opacity:.6}.confirm-leave-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;display:grid;inset:0;padding:18px;place-items:center;position:fixed;z-index:1200}.confirm-leave-modal{background:#0f172a;border:1px solid #ffffff14;border-radius:14px;box-shadow:0 22px 40px #00000059;color:#e5e7eb;padding:18px 18px 14px;width:min(380px,96vw)}.confirm-leave-modal h4{font-size:1.05rem;margin:0 0 8px}.confirm-leave-modal p{color:#cbd5ff;margin:0 0 14px}.confirm-leave-actions{display:flex;gap:10px;justify-content:flex-end}.btn-danger,.btn-secondary{border:none;border-radius:10px;cursor:pointer;font-weight:700;padding:10px 14px;transition:all .18s ease}.btn-secondary{background:#ffffff14;color:#e5e7eb}.btn-secondary:hover{background:#ffffff1f}.btn-danger{background:linear-gradient(135deg,#ef4444,#b91c1c);box-shadow:0 10px 24px #ef444440}.btn-danger:hover{filter:brightness(1.05)}@media (max-width:1600px){.pago-modal-content{width:97vw}}@media (max-width:1200px){.pago-modal-content{max-height:92vh;width:95vw}.form-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media (max-width:992px){.pago-modal-content{max-height:93vh;width:92vw}.form-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}.modal-header{padding:12px 16px 10px}}@media (max-width:768px){.pago-modal-wrapper{padding:12px 0}.pago-modal-content{border-radius:14px;max-height:95vh;width:97vw}.modal-header{padding:10px 14px 8px}form{gap:8px;padding:10px 12px}.form-grid{gap:6px;grid-template-columns:repeat(2,minmax(140px,1fr))}.form-column--summary{gap:8px;grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse;gap:8px;padding:10px 12px 12px}.btn-cancel,.btn-confirm{font-size:clamp(.85rem,2vw,.96rem);min-width:0;min-width:auto;padding:10px 14px;width:100%}.pago-card,.summary-card,.tips-card{padding:10px}}@media (max-width:480px){.pago-modal-wrapper{padding:8px 4px}.pago-modal-content{border-radius:12px;max-height:96vh;width:96vw}.modal-header h2{font-size:1rem}.modal-resident-name{font-size:.9rem}.form-grid{gap:6px;grid-template-columns:1fr}input,select,textarea{font-size:16px;min-height:44px;padding:10px}.form-label-row{font-size:.8rem}}.confirmation-modal-backdrop{align-items:center;background-color:#1a1a2c8c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.confirmation-modal{align-items:center;background-color:#fff;border-radius:20px;box-shadow:0 20px 50px #1212284d;display:flex;flex-direction:column;gap:20px;max-width:420px;padding:40px 36px;text-align:center;width:100%}.confirmation-modal-icon{align-items:center;background:linear-gradient(135deg,#6376f61f,#667eea14);border-radius:50%;color:#667eea;display:flex;font-size:3.5rem;height:80px;justify-content:center;margin-bottom:8px;width:80px}.confirmation-modal-success .confirmation-modal-icon{background:linear-gradient(135deg,#22c55e1f,#22c55e14);color:#22c55e}.confirmation-modal-error .confirmation-modal-icon{background:linear-gradient(135deg,#ef44441f,#ef444414);color:#ef4444}.confirmation-modal-warning .confirmation-modal-icon{background:linear-gradient(135deg,#f59e0b1f,#f59e0b14);color:#f59e0b}.confirmation-modal-title{color:#1f2740;font-size:1.6rem;font-weight:700;line-height:1.3;margin:0}.confirmation-modal-message{color:#5d6685;font-size:1rem;line-height:1.6;margin:0;max-width:100%}.confirmation-modal-actions{display:flex;gap:12px;justify-content:center;margin-top:12px;width:100%}.confirmation-modal-btn{border:none;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:700;min-width:140px;padding:12px 32px;transition:all .2s ease}.confirmation-modal-btn-info{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.confirmation-modal-btn-info:hover{box-shadow:0 8px 20px #667eea4d;transform:translateY(-2px)}.confirmation-modal-btn-success{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.confirmation-modal-btn-success:hover{box-shadow:0 8px 20px #22c55e4d;transform:translateY(-2px)}.confirmation-modal-btn-error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.confirmation-modal-btn-error:hover{box-shadow:0 8px 20px #ef44444d;transform:translateY(-2px)}.confirmation-modal-btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.confirmation-modal-btn-warning:hover{box-shadow:0 8px 20px #f59e0b4d;transform:translateY(-2px)}@media (max-width:480px){.confirmation-modal{border-radius:16px;padding:32px 24px}.confirmation-modal-title{font-size:1.4rem}.confirmation-modal-message{font-size:.95rem}.confirmation-modal-btn{font-size:.95rem;padding:10px 24px}}.confirm-delete-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:2000}.confirm-delete-modal{animation:slideUp .3s ease-out;background:#fff;border:1px solid #f0f0f0;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:420px;padding:32px 24px;position:relative;width:100%}.modal-close-x{align-items:center;background:none;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;font-size:20px;justify-content:center;padding:4px;position:absolute;right:16px;top:16px;transition:all .2s ease}.modal-close-x:hover:not(:disabled){background:#f8fafc;color:#475569}.modal-close-x:disabled{cursor:not-allowed;opacity:.5}.modal-icon{display:flex;justify-content:center;margin-bottom:16px}.modal-icon svg{color:#dc2626;font-size:48px;opacity:.9}.modal-title{color:#1f2937;font-size:20px;font-weight:700;letter-spacing:-.5px;margin:0 0 12px;text-align:center}.modal-message{color:#6b7280;font-size:14px;line-height:1.6;margin:0 0 24px;text-align:center}.btn-cancel,.btn-delete{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px 20px;text-align:center;transition:all .2s ease}.btn-cancel{background:#f3f4f6;border:1px solid #e5e7eb;color:#374151}.btn-cancel:hover:not(:disabled){background:#e5e7eb;border-color:#d1d5db}.btn-delete{background:#dc2626;border:1px solid #dc2626;color:#fff}.btn-delete:hover:not(:disabled){background:#b91c1c;border-color:#991b1b;box-shadow:0 8px 16px #dc262633;transform:translateY(-1px)}.btn-delete:active:not(:disabled){transform:translateY(0)}.btn-delete:disabled{cursor:not-allowed;opacity:.7}@media (max-width:480px){.confirm-delete-modal{padding:24px 16px}.modal-title{font-size:18px}.modal-icon svg{font-size:40px}.modal-actions{flex-direction:column}.btn-cancel,.btn-delete{width:100%}}.generar-ticket-page{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;box-sizing:border-box;margin:2rem auto;max-width:1200px;overflow:hidden;padding:0;width:100%}.generar-ticket-page h2{margin-top:0;text-align:center}.generar-ticket-page p{color:#666;margin-bottom:2rem;text-align:center}.search-bar{margin-bottom:1.5rem;max-width:100%}.search-input-wrapper{position:relative;width:100%}.search-input-wrapper input{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:1.05em;padding:12px 12px 12px 40px;width:100%}.search-icon{color:#9ca3af;font-size:1rem;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.search-helper-text{color:#6b7280;display:block;font-size:.8rem;margin-top:.35rem}.feedback-message{border-radius:8px;font-weight:500;margin-bottom:1rem;padding:10px;text-align:center}.feedback-message.success{background-color:#d4edda;color:#155724}.feedback-message.error{background-color:#f8d7da;color:#721c24}.casas-list{display:flex;flex-direction:column;gap:1rem}.casas-header{grid-gap:.75rem;border-bottom:1px solid #e5e7eb;color:#6b7280;display:grid;font-size:.8rem;gap:.75rem;grid-template-columns:1.2fr 1fr 1.4fr 1.2fr auto;letter-spacing:.04em;padding:.25rem .25rem .5rem;text-transform:uppercase}.casa-item{grid-gap:.65rem 1rem;align-items:center;border:1px solid #eee;border-radius:10px;display:grid;gap:.65rem 1rem;grid-template-columns:1fr auto;padding:.85rem 1rem;transition:background-color .2s}.casa-item:hover{background-color:#f8f9fa}.casa-numerico,.casa-numero{font-size:1.2em;font-weight:700}.casa-inline{grid-gap:.55rem .75rem;align-items:center;color:#444;display:grid;font-size:.95em;gap:.55rem .75rem;grid-template-columns:1.2fr 1fr 1.4fr 1.2fr}.casa-col{display:flex;flex-direction:column;gap:.1rem}.casa-col-label{color:#9ca3af;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.casa-residente{font-weight:500;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.casa-adeudo{border-radius:12px;font-size:.85em;font-weight:600;padding:2px 8px}.casa-adeudo-wrapper{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px}.saldo-favor-pill{background:#e0f7f1;border-radius:12px;color:#0f9d70;font-size:.85em;font-weight:700;padding:2px 10px;white-space:nowrap}.casa-adeudo.adeudo-pendiente{background-color:#fdecea;color:#c0392b}.casa-adeudo.adeudo-cero{background-color:#e8f5e9;color:#2e7d32}.casa-status{border-radius:15px;color:#fff;font-size:.8em;font-weight:700;padding:5px 12px}.casa-status.moroso{background-color:#d9534f}.casa-status.al-corriente{background-color:#28a745}.btn-pagar{background-color:#667eea;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:500;padding:10px 14px;transition:background-color .2s}.btn-pagar:hover:not(:disabled){background-color:#5a6fd2}.btn-pagar:disabled{background-color:#ccc;cursor:not-allowed}.no-results-text{color:#6b7280;font-size:.95rem;text-align:center}.lista-egresos-header{margin-bottom:2rem}.lista-egresos-header h2{margin:0}.btn-back-simple{background:#0000;border:1px solid #ccc;border-radius:8px;color:#555;cursor:pointer;font-weight:500;padding:10px 15px;transition:all .2s}.btn-back-simple:hover{background-color:#f0f0f0;border-color:#aaa}.egreso-actions{display:flex;position:relative}.action-menu-trigger,.egreso-actions{align-items:center;justify-content:center}.action-menu-trigger{background:#f8fafc;border:1px solid #d7dce3;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;font-size:18px;font-weight:700;height:32px;min-width:32px;padding:6px 8px;transition:all .2s ease}.action-menu-trigger:hover{background:#eef2ff;border-color:#c7cffd;box-shadow:0 8px 16px #4338ca1f;color:#4338ca;transform:translateY(-1px)}.action-menu{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 25px #00000026;display:none;flex-direction:column;gap:4px;min-width:160px;padding:8px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.action-menu.active{display:flex}.action-menu-item{align-items:center;background:#0000;border:none;border-radius:6px;color:#334155;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:10px;padding:10px 12px;text-align:left;transition:all .15s ease;width:100%}.action-menu-item:hover{background:#eef2ff;color:#4338ca}.action-menu-item.delete:hover{background:#fee2e2;color:#dc2626}.action-menu-item svg{flex-shrink:0}.tabla-ingresos td:last-child,.tabla-ingresos th:last-child{text-align:center;width:70px}.action-menu-wrapper{display:inline-flex;position:relative}.action-menu button{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#334155;cursor:pointer;font-weight:600;padding:10px 12px;text-align:left;transition:all .15s ease}.action-menu button:hover{background:#eef2ff;border-color:#c7cffd;color:#4338ca}.lista-egresos-header{align-items:center;background:#fff;border-radius:12px 12px 0 0;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin:0;padding:20px;top:0;z-index:100}.ingresos-resumen.ingresos-resumen-top,.lista-egresos-header{box-shadow:0 2px 8px #0000000d;position:-webkit-sticky;position:sticky}.ingresos-resumen.ingresos-resumen-top{grid-gap:8px!important;background:#fff!important;border:none!important;display:grid!important;gap:8px!important;grid-template-columns:minmax(100px,.8fr) minmax(140px,1.1fr) minmax(140px,1.1fr) minmax(140px,1.1fr)!important;margin:10px 0 15px!important;padding:10px 20px!important;top:85px;width:100%;z-index:99}.ingresos-resumen-top .resumen-item{border-left-width:3px!important;font-size:13px!important;padding:8px 10px!important}.ingresos-resumen-top .resumen-item:first-child{font-size:12px}.ingresos-resumen-top .resumen-item:first-child span{font-size:11px}.ingresos-resumen-top .resumen-item:first-child strong{font-size:16px}.lista-ingresos-content{padding:0 20px 30px}.filtros-container{align-items:flex-end;background:linear-gradient(135deg,#f5f7fa,#fff);border:2px solid #e3e8ef;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-wrap:wrap;gap:2px;margin:20px 0;padding:20px}.filtro-grupo{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:180px}.filtro-grupo label{align-items:center;color:#2c3e50;display:flex;font-size:12px;font-weight:700;gap:6px;height:16px;letter-spacing:.6px;text-transform:uppercase}.filtro-grupo input,.filtro-grupo select{background-color:#fff;border:2px solid #d1d8e0;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;height:42px;padding:11px 13px;transition:all .3s ease}.filtro-grupo input[type=date]{color:#2c3e50;padding:11px 13px}.filtro-grupo input[type=date]::-webkit-calendar-picker-indicator{border-radius:4px;cursor:pointer;filter:invert(.8) hue-rotate(200deg);margin-right:4px;opacity:.6;-webkit-transition:opacity .2s ease,filter .2s ease;transition:opacity .2s ease,filter .2s ease}.filtro-grupo input[type=date]:hover::-webkit-calendar-picker-indicator{filter:invert(.7) hue-rotate(200deg);opacity:1}.filtro-grupo input[type=date]::-webkit-inner-spin-button,.filtro-grupo input[type=date]::-webkit-outer-spin-button{display:none}.filtro-grupo input::placeholder{color:#9ca3af}.filtro-grupo input:focus,.filtro-grupo select:focus{background-color:#fafbfc;border-color:#4f2d7f;box-shadow:0 0 0 3px #4f2d7f1a;outline:none}.filtro-grupo input:hover,.filtro-grupo select:hover{border-color:#b8c0cc}.filtro-grupo.checkbox{align-items:flex-end;flex:initial;flex-direction:row;gap:2px;min-width:auto}.filtro-grupo.checkbox label{align-items:center;background-color:#f0f4f9;border:2px solid #d1d8e0;border-radius:6px;box-sizing:border-box;color:#2c3e50;cursor:pointer;display:flex;font-weight:600;gap:8px;height:42px;justify-content:center;margin:0;padding:0 12px;text-transform:none;transition:all .2s ease;white-space:nowrap}.filtro-grupo.checkbox label:hover{background-color:#e8ecf3;border-color:#b8c0cc}.filtro-grupo.checkbox input[type=checkbox]{accent-color:#4f2d7f;cursor:pointer;flex-shrink:0;height:18px;width:18px}.btn-limpiar-filtros{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ee5a6f);border:none;border-radius:6px;box-shadow:0 2px 6px #ff6b6b33;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:700;height:42px;justify-content:center;letter-spacing:.4px;padding:0 14px;text-transform:uppercase;transition:all .2s ease;white-space:nowrap}.btn-limpiar-filtros:hover{background:linear-gradient(135deg,#ff5252,#e63946);box-shadow:0 4px 10px #ff6b6b4d;transform:translateY(-1px)}.btn-limpiar-filtros:active{transform:translateY(0)}.btn-exportar-excel{align-items:center;background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.btn-exportar-excel:hover:not(:disabled){background-color:#218838;box-shadow:0 4px 8px #28a7454d;transform:translateY(-2px)}.btn-exportar-excel:disabled{cursor:not-allowed;opacity:.5}.casa-info{color:#2c3e50;font-weight:500}.descuento-info{color:#d9534f;font-weight:500}.monto-neto{color:#27ae60;font-weight:600}.ingresos-resumen{grid-gap:12px;background-color:#f0f4ff;border:2px solid #4f2d7f;border-radius:8px;display:grid;gap:12px;margin-top:20px;padding:12px}.ingresos-resumen:not(.ingresos-resumen-top){grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.ingresos-resumen:not(.ingresos-resumen-top) .resumen-item{align-items:center;background-color:#fff;border-left:4px solid #4f2d7f;border-radius:6px;display:flex;justify-content:space-between;padding:10px 15px}.resumen-item span{color:#666;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.resumen-item strong{color:#4f2d7f;font-size:18px}@media (max-width:768px){.lista-egresos-header{flex-direction:column;gap:10px;padding:10px;position:-webkit-sticky;position:sticky;top:0}.lista-egresos-header h2{font-size:18px;margin:0}.lista-egresos-header button{font-size:13px;padding:10px;width:100%}.ingresos-resumen-top{gap:8px;grid-template-columns:repeat(2,1fr);padding:8px;top:140px;width:100%}.ingresos-resumen-top .resumen-item{font-size:11px;padding:6px 8px}.filtros-container{gap:12px;grid-template-columns:1fr;margin-top:10px}.ingresos-resumen{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.btn-exportar-excel{justify-content:center;width:100%}.tabla-ingresos{border-radius:6px;font-size:12px}.tabla-ingresos table{min-width:800px}}.tabla-ingresos{-webkit-overflow-scrolling:touch;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin-top:15px;overflow-x:auto;overflow-y:visible;width:100%}.tabla-ingresos table{border-collapse:initial;font-size:13px;margin:0;min-width:900px;table-layout:auto;width:100%}.tabla-ingresos td,.tabla-ingresos th{overflow-wrap:anywhere;padding:8px 6px;vertical-align:middle;white-space:normal;word-break:break-word}.tabla-ingresos th{font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.tabla-ingresos td:first-child,.tabla-ingresos th:first-child{min-width:90px;width:auto}.tabla-ingresos td:nth-child(2),.tabla-ingresos th:nth-child(2){min-width:70px;width:auto}.tabla-ingresos td:nth-child(3),.tabla-ingresos th:nth-child(3){min-width:120px;width:auto}.tabla-ingresos td:nth-child(4),.tabla-ingresos td:nth-child(5),.tabla-ingresos th:nth-child(4),.tabla-ingresos th:nth-child(5){min-width:100px;width:auto}.tabla-ingresos td:nth-child(6),.tabla-ingresos th:nth-child(6){min-width:90px;width:auto}.tabla-ingresos td:nth-child(7),.tabla-ingresos th:nth-child(7){min-width:80px;width:auto}.tabla-ingresos td:nth-child(8),.tabla-ingresos th:nth-child(8){min-width:90px;width:auto}.tabla-ingresos td:nth-child(9),.tabla-ingresos th:nth-child(9){flex-shrink:0;min-width:110px;text-align:center;width:auto}.texto-extendido{max-width:none}.btn-eye{align-items:center;background:#0000;border:1px solid #d1d5db;border-radius:6px;color:#4b5563;cursor:pointer;display:inline-flex;font-size:16px;justify-content:center;padding:8px 10px;transition:all .2s}.btn-eye:hover{background:#eef2ff;border-color:#6366f1;color:#4338ca;transform:scale(1.1)}.ingreso-actions-cell{align-items:center;display:flex;gap:8px;justify-content:flex-end;min-width:118px;white-space:nowrap}.ingreso-verified-icon{align-items:center;background:#2563eb1f;border:1px solid #2563eb47;border-radius:999px;box-shadow:0 6px 16px #2563eb1f;color:#1d4ed8;display:inline-flex;flex-shrink:0;font-size:.58rem;gap:3px;line-height:1;padding:4px 8px}.ingreso-verified-icon .icon-envelope{font-size:.63rem}.ingreso-verified-icon .icon-check{color:#22c55e;font-size:.6rem}.receipt-modal{align-items:center}.receipt-modal .receipt-modal-content{display:flex;flex-direction:column;height:94vh;max-height:94vh;max-width:880px;width:95%}.receipt-scroll-area{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto;padding:26px 26px 10px}.receipt-preview-container{margin:0 auto;max-width:1100px}.preview-wrapper{background:#f8fafc;border:1px solid #94a3b833;border-radius:14px;padding:16px}.receipt-preview{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0f172a14;color:#111827;padding:20px}.preview-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.preview-top .preview-logo.placeholder,.preview-top img.preview-logo{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:#94a3b8;display:flex;font-size:12px;height:80px;justify-content:center;object-fit:contain;width:120px}.preview-condo h4{font-size:16px;margin:0}.preview-condo p{color:#4b5563;font-size:13px;margin:4px 0 0}.preview-right{text-align:right}.preview-title{color:#1d4ed8;font-size:20px;letter-spacing:.4px;margin:0}.preview-meta{color:#4b5563;display:flex;flex-direction:column;font-size:13px;gap:2px;margin-top:6px}.preview-divider{border:none;border-top:1px solid #e5e7eb;margin:16px 0}.preview-block h5{color:#1f2937;font-size:14px;margin:0 0 6px}.preview-block p{color:#374151;font-size:13px;margin:2px 0}.preview-muted{color:#6b7280;font-size:12px}.preview-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.preview-table-header,.preview-table-row{display:grid;grid-template-columns:1fr 140px;padding:10px 12px}.preview-table-header{background:#f1f5f9;font-size:13px;font-weight:700}.preview-table-row{border-top:1px solid #e5e7eb;font-size:13px}.preview-total{align-items:center;display:flex;font-size:16px;font-weight:700;justify-content:space-between;margin-top:18px}.preview-total-amount{color:#1d4ed8;font-size:18px}.preview-leyenda{color:#374151;font-size:12px;font-style:italic;margin:10px 0 20px;text-align:left}.preview-footer{align-items:center;display:flex;gap:12px;justify-content:center}.preview-sello{border:1px dashed #cbd5e1;border-radius:6px;height:80px;object-fit:contain;width:140px}.preview-sello.placeholder{align-items:center;background:#f8fafc;color:#94a3b8;display:flex;justify-content:center}.preview-firma-stack{align-items:center;display:flex;flex-direction:column;gap:10px}.preview-firma{max-width:100%;text-align:center;width:260px}.preview-firma-line{background:#1f2937;height:1px;margin:0 auto 6px;max-width:100%;width:220px}.preview-firma small{color:#6b7280;display:block}.preview-firma span{color:#1f2937;font-weight:600}.receipt-modal .preview-row{align-items:flex-start}.receipt-modal .preview-block,.receipt-modal .preview-block h5,.receipt-modal .preview-block p,.receipt-modal .preview-meta,.receipt-modal .receipt-preview{text-align:left}.receipt-actions{background:linear-gradient(180deg,#f8fafc66,#fff 60%);border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end;padding:12px 20px 18px}.receipt-actions .btn-secondary{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 4px 10px #0f172a14;color:#0f172a;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;padding:10px 14px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.receipt-actions .btn-secondary:hover{border-color:#94a3b8;box-shadow:0 8px 18px #0f172a24;transform:translateY(-1px)}.receipt-modal .modal-close-btn{align-items:center;background:#ef4444!important;border:none;border-radius:6px;box-shadow:0 4px 12px #ef444440;color:#fff!important;cursor:pointer;display:flex!important;font-size:1.3rem;font-weight:400;height:32px;justify-content:center;line-height:1;opacity:1;position:absolute;right:14px;top:14px;transition:background .2s ease,box-shadow .2s ease,transform .15s ease;width:32px;z-index:10}.receipt-modal .modal-close-btn:hover{background:#dc2626!important;box-shadow:0 6px 16px #ef444459;transform:scale(1.08)}.receipt-modal .modal-close-btn:active{transform:scale(.96)}.btn-download{background:#1d4ed8;border-color:#1d4ed8}.btn-download:hover{border-color:#1d4ed8;box-shadow:0 10px 24px #1d4ed840}.modal-overlay{margin:0;padding:0}.modal-overlay.receipt-modal{align-items:center;background:#0000!important;display:flex;justify-content:center;z-index:1500}@media (min-width:768px){.modal-overlay.receipt-modal .receipt-modal-content{transform:translateX(40px)}}.modal-overlay.confirm-modal{align-items:center!important;background:#00000073!important;bottom:auto!important;display:flex!important;height:auto!important;justify-content:center!important;left:50%!important;padding:0!important;position:fixed!important;right:auto!important;top:50%!important;transform:translate(-50%,-50%)!important;width:auto!important;z-index:4000!important}.modal-overlay.confirm-modal .modal-content.confirm-modal-content{align-items:center;border-radius:14px;box-sizing:border-box;display:flex;flex-direction:column;gap:18px;justify-content:center;margin:0 auto;max-height:85vh;max-width:620px;min-height:-webkit-fit-content;min-height:fit-content;overflow:visible;padding:32px 36px 30px;width:94%}.modal-overlay.confirm-modal .modal-content{all:revert}.confirm-modal-content{align-items:center;animation:fadeInModal .3s ease-out;background:#f8fafc;border:1px solid #0f172a14;border-radius:10px;box-shadow:0 28px 70px #00000052;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:0;text-align:center}.confirm-title{font-size:1.15rem;line-height:1.3}.confirm-msg,.confirm-title{color:#0b1224;font-weight:700;margin:0;word-break:break-word}.confirm-msg{background:linear-gradient(180deg,#fff,#f1f5f9);border-radius:12px;box-shadow:0 6px 16px #0f172a1f;font-size:1rem;line-height:1.55;padding:12px 14px}.confirm-actions{align-items:center;display:flex;flex-direction:column;gap:12px;justify-content:center;margin-top:16px;width:100%}.confirm-actions,.confirm-modal-content .confirm-actions{background:#0000;padding:0}.btn-cancel,.btn-confirm{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;cursor:pointer;flex:0 1 auto;font-size:.92rem;font-weight:600;min-width:130px;padding:12px 22px;transition:all .2s ease;white-space:nowrap}.btn-cancel{background:#f1f5f9;color:#475569}.btn-cancel:hover{background:#e2e8f0;border-color:#cbd5e1}.btn-confirm{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.btn-confirm:hover{background:#1e40af;border-color:#1e40af;box-shadow:0 8px 16px #1d4ed84d}.btn-cancel:disabled,.btn-confirm:disabled{cursor:not-allowed;opacity:.6}.confirm-error,.confirm-loading,.confirm-success{align-items:center;display:flex;flex-direction:column;gap:6px;padding:4px 0}.spinner{animation:spin .8s linear infinite;border:2px solid #1d4ed833;border-radius:50%;border-top-color:#1d4ed8;height:28px;width:28px}.error-icon,.success-icon{align-items:center;border-radius:50%;display:flex;font-size:24px;font-weight:700;height:48px;justify-content:center;margin-bottom:4px;width:48px}.success-icon{background:#dcfce7;color:#22c55e}.error-icon{background:#fee2e2;color:#ef4444}.confirm-success .confirm-msg{color:#22c55e}.confirm-error .confirm-msg{color:#ef4444}.confirm-loading p{color:#475569;font-size:1rem;font-weight:600}@keyframes fadeInModal{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.filtros-container-recibos-eliminados{align-items:flex-end;background:linear-gradient(135deg,#f5f7fa,#fff);border:2px solid #e3e8ef;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-wrap:wrap;gap:2px;margin:20px 0;padding:20px}.filtros-container-recibos-eliminados .filtro-grupo{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:180px}.filtros-container-recibos-eliminados .filtro-grupo label{align-items:center;color:#2c3e50;display:flex;font-size:12px;font-weight:700;gap:6px;height:16px;letter-spacing:.6px;text-transform:uppercase}.filtros-container-recibos-eliminados .filtro-grupo input,.filtros-container-recibos-eliminados .filtro-grupo select{background-color:#fff;border:2px solid #d1d8e0;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;height:42px;padding:11px 13px;transition:all .3s ease}.filtros-container-recibos-eliminados .filtro-grupo input::placeholder{color:#9ca3af}.filtros-container-recibos-eliminados .filtro-grupo input:focus,.filtros-container-recibos-eliminados .filtro-grupo select:focus{background-color:#fafbfc;border-color:#4f2d7f;box-shadow:0 0 0 3px #4f2d7f1a;outline:none}.filtros-container-recibos-eliminados .filtro-grupo input:hover,.filtros-container-recibos-eliminados .filtro-grupo select:hover{border-color:#b8c0cc}.filtros-container-recibos-eliminados .filtro-grupo.checkbox{align-items:flex-end;flex:initial;flex-direction:row;gap:2px;min-width:auto}.filtros-container-recibos-eliminados .filtro-grupo.checkbox label{align-items:center;background-color:#f0f4f9;border:2px solid #d1d8e0;border-radius:6px;box-sizing:border-box;color:#2c3e50;cursor:pointer;display:flex;font-weight:600;gap:8px;height:42px;justify-content:center;margin:0;padding:0 12px;text-transform:none;transition:all .2s ease;white-space:nowrap}.filtros-container-recibos-eliminados .filtro-grupo.checkbox label:hover{background-color:#e8ecf3;border-color:#b8c0cc}.filtros-container-recibos-eliminados .filtro-grupo.checkbox input[type=checkbox]{accent-color:#4f2d7f;cursor:pointer;flex-shrink:0;height:18px;width:18px}.filtros-container-recibos-eliminados .filtro-grupo input[type=date]{color:#2c3e50;padding:11px 13px}.filtros-container-recibos-eliminados .filtro-grupo input[type=date]::-webkit-calendar-picker-indicator{border-radius:4px;cursor:pointer;filter:invert(.8) hue-rotate(200deg);margin-right:4px;opacity:.6;-webkit-transition:opacity .2s ease,filter .2s ease;transition:opacity .2s ease,filter .2s ease}.filtros-container-recibos-eliminados .filtro-grupo input[type=date]:hover::-webkit-calendar-picker-indicator{filter:invert(.7) hue-rotate(200deg);opacity:1}.filtros-container-recibos-eliminados .filtro-grupo input[type=date]::-webkit-inner-spin-button,.filtros-container-recibos-eliminados .filtro-grupo input[type=date]::-webkit-outer-spin-button{display:none}.admin-page{color:#1f2740}.admin-page .section-header{align-items:center;display:flex;flex-direction:column;gap:6px;text-align:center}.admin-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.admin-card{background:#fbf8ff;border:1px solid #7c5cff24;border-radius:26px;box-shadow:0 24px 48px #1b124b2e;color:#1f2740;display:flex;flex-direction:column;gap:18px;padding:28px}.admin-card-basic{background:linear-gradient(180deg,#faf9fff5,#ebe7fff0);border:1px solid #7163c740;box-shadow:0 14px 36px #3a3b882e;color:#1f2740}.admin-card-basic h3{color:#1b2140}.admin-card-basic .action-list li{border-color:#818bd138}.admin-card-basic .action-list li>a{align-items:center;color:#2f366d;display:flex;font-weight:600;gap:10px;padding:15px 6px;text-decoration:none;transition:color .2s ease,padding-left .2s ease}.admin-card-basic .action-list li>a:before{color:#667eea;content:"•";display:inline-block;width:10px}.admin-card-basic .action-list li>a:hover{color:#5565d6;padding-left:12px}.admin-card-basic .action-list li:first-child>a{border-top-left-radius:14px;border-top-right-radius:14px}.admin-card-basic .action-list li:last-child>a{border-bottom-left-radius:14px;border-bottom-right-radius:14px}.admin-card-residents{gap:20px}.department-list{margin-top:.75rem}.admin-card-residents .resident-card-header p{color:#2f3a66}.admin-card-residents .action-list li{border-color:#818bd138}.resident-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.resident-card-header h3{margin-bottom:4px}.resident-card-header p{color:#6b7280;margin:0}.admin-card h3{align-items:center;display:flex;font-size:1.3em;gap:10px;margin-bottom:25px;margin-top:0}.card-title-with-help{align-items:center;display:flex;gap:8px;margin-bottom:20px}.card-title-with-help h3{margin:0}.help-icon-wrapper{align-items:center;display:inline-flex;position:relative}.help-icon{color:#5c6cff;flex-shrink:0;font-size:1.1em}.help-icon-wrapper:hover .help-icon{color:#8d54ff}.tooltip{animation:slideInTooltip .2s ease-out;background:linear-gradient(135deg,#5c6cff,#8d54ff);border-radius:8px;bottom:100%;box-shadow:0 8px 24px #1b124b40;color:#fff;font-size:.85em;left:50%;margin-bottom:8px;padding:10px 14px;position:absolute;text-align:center;transform:translateX(-50%);white-space:normal;width:180px;z-index:10}@keyframes slideInTooltip{0%{opacity:0;transform:translateX(-50%) translateY(4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.tooltip:after{border:6px solid #0000;border-top-color:#8d54ff;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.action-list{list-style-type:none;margin:0;padding:0}.action-list li{border-bottom:1px solid #f0f0f0;padding:0}.action-list li:last-child{border-bottom:none}.button-group{display:flex;gap:15px;margin-top:20px}.admin-card-pagos .button-group{gap:12px;margin-top:28px}.admin-card-pagos .btn-admin-primary{background:#7e56d9}.admin-card-pagos .btn-admin-primary:hover{background:#6c45c5}.admin-card-pagos .btn-admin-secondary{background:#6376f6}.admin-card-pagos .btn-admin-secondary:hover{background:#5464df}.btn-admin-primary,.btn-admin-secondary{border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-weight:700;padding:12px 15px;transition:all .2s ease}.btn-admin-primary{background-color:#8c5fb2}.btn-admin-primary:hover{background-color:#764ba2}.btn-admin-secondary{background:#667eea}.btn-admin-secondary:hover{background-color:#5a6fd2}.btn-admin-primary:active,.btn-admin-secondary:active{transform:scale(.97)}.btn-narrow{flex:initial;white-space:nowrap}.btn-narrow,.btn-outline{align-items:center;display:inline-flex;gap:6px}.btn-outline{border:1px solid #c7cbe7;border-radius:8px;color:#4b4f7a;padding:8px 14px;text-decoration:none;transition:all .2s ease}.btn-outline:hover{border-color:#667eea;color:#667eea}.btn-outline.small{font-size:.9rem;padding:6px 12px}.btn-link{align-items:center;background:none;border:none;color:#667eea;cursor:pointer;display:inline-flex;font-weight:600;gap:4px;text-decoration:none}.btn-link.subtle{font-size:.9rem;font-weight:500;opacity:.85}.btn-link.subtle:hover{opacity:1}.departamentos-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:48px 24px 64px}.departamentos-container{margin:0 auto;max-width:1080px}.departamentos-header{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1f;border:1px solid #ffffff38;border-radius:24px;color:#f7f8ff;display:flex;gap:24px;padding:28px 32px}.departamentos-header-icon{background:#ffffff24;border-radius:20px;color:#fff;display:grid;font-size:28px;height:64px;place-items:center;width:64px}.departamentos-header h1{font-size:2rem;margin:0}.departamentos-header p{font-size:1rem;margin:6px 0 0;opacity:.85}.departamentos-back-link{align-items:center;background:#667eea52;border-radius:999px;color:#fff;display:inline-flex;font-weight:600;gap:6px;margin-left:auto;padding:10px 14px;text-decoration:none;transition:background .2s ease,transform .2s ease}.departamentos-back-link:hover{background:#667eea80;transform:translateY(-1px)}.departamentos-content{grid-gap:24px;display:grid;gap:24px;margin-top:36px}.departamentos-card{background:#fffffff0;border:1px solid #8e9ada47;border-radius:20px;box-shadow:0 20px 40px #25356d2e;color:#28314d;padding:24px 28px}.departamentos-card-mail-anchor{position:relative}.departamentos-card h2{font-size:1.4rem;margin-bottom:8px;margin-top:0}.departamentos-card p{color:#606a92;line-height:1.5;margin:0}.departamentos-card+.departamentos-card{margin-top:12px}.residentes-filter-card{display:flex;flex-direction:column;gap:16px}.residentes-filter{display:flex;flex-wrap:wrap;gap:12px}.residentes-filter.compact{flex-direction:column;gap:0;margin-top:18px}.departamentos-card-header.inline{align-items:flex-start;flex-direction:column;gap:4px;margin-bottom:8px}.residentes-results.compact{margin-top:10px;padding-top:10px}.residentes-filter-input-wrapper{position:relative;width:100%}.residentes-filter-input-wrapper .residentes-filter-input{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:1.05em;padding:12px 12px 12px 40px;width:100%}.residentes-filter-search-icon{color:#9ca3af;font-size:1rem;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.residentes-filter-helper-text{color:#6b7280;display:block;font-size:.8rem;margin-top:.35rem}.status-filter-controls{width:100%}.status-filter-controls .residentes-filter-input-wrapper{position:relative;width:100%}.status-filter-controls .residentes-filter-input-wrapper .residentes-filter-input{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:1.05em;padding:12px 12px 12px 40px;width:100%}.status-filter-controls .residentes-filter-search-icon{color:#9ca3af;font-size:1rem;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.status-filter-controls .residentes-filter-helper-text{color:#6b7280;display:block;font-size:.8rem;margin-top:.35rem}.residentes-filter-form{align-items:center;background:#6376f61f;border:1px solid #6376f647;border-radius:16px;color:#2b2f4a;display:flex;flex:1 1;gap:12px;min-width:260px;padding:12px 18px}.residentes-filter-form.compact{align-items:center;border-radius:14px;display:flex;gap:12px;padding:8px 10px}.residentes-filter-icon{align-items:center;background:#eef2ff;border-radius:999px;color:#4f46e5;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.residentes-filter-icon svg{font-size:1rem}.residentes-filter-input-box{align-items:center;background:#6376f614;border:1px solid #6376f652;border-radius:999px;display:flex;flex:1 1;padding:6px 14px}.residentes-filter-form.compact .residentes-filter-input{flex:1 1}.residentes-filter-form.compact .residentes-filter-button{white-space:nowrap}.residentes-filter-form svg{color:#5a63d8;font-size:1.05rem}.residentes-filter-input{background:#0000;border:none;color:inherit;flex:1 1;font-size:.95rem}.residentes-filter-input::placeholder{color:#2b2f4a8a}.residentes-filter-input:focus{outline:none}.residentes-filter-button{align-items:center;background:linear-gradient(135deg,#7e56d9,#6376f6);border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:6px;padding:10px 18px;transition:transform .2s ease,box-shadow .2s ease}.residentes-filter-button:hover{box-shadow:0 12px 24px #6376f647;transform:translateY(-1px)}.departamentos-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.overlay-actions{align-items:center;display:flex;gap:10px;margin-left:auto}.overlay-history-button{background:#eef2ff;border:1px solid #6366f147;border-radius:10px;color:#4f46e5;font-weight:600;gap:6px;padding:8px 12px}.overlay-history-button,.overlay-mail-button{align-items:center;cursor:pointer;display:inline-flex}.overlay-mail-button{background:#7161ff1f;border:1px solid #7161ff47;border-radius:10px;color:#5b4ae2;height:36px;justify-content:center;margin-left:auto;transition:transform .15s ease,box-shadow .15s ease,background .2s ease;width:36px}.overlay-mail-button:hover{background:#7161ff2e;box-shadow:0 10px 20px #5b4ae233;transform:translateY(-1px)}.tag{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:700;gap:6px;letter-spacing:.08em;padding:4px 12px;text-transform:uppercase}.tag-follow{background:#6366f11f;color:#4338ca}.tag-independent{background:#10b98129;color:#047857}.status-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:18px}.status-card{border:1px dashed #94a3b899;border-radius:14px;gap:14px;padding:18px}.status-card,.status-detail-grid{display:flex;flex-direction:column}.status-detail-grid{gap:24px}.status-card-header{align-items:center;display:flex;gap:8px}.status-count{background:#fff9;border-radius:999px;color:#1f2937;display:grid;font-size:.85rem;font-weight:700;height:24px;margin-left:auto;min-width:36px;place-items:center}.status-card-actions{align-items:center;display:flex}.status-button{background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:10px 18px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.status-button:hover:not(:disabled){box-shadow:0 12px 24px #22c55e40;transform:translateY(-1px)}.status-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.finanzas-control-card{align-items:flex-start;background:#fffffff0;border:1px solid #8e9ada47;border-radius:20px;box-shadow:0 16px 36px #25356d2e;color:#1f2740;display:flex;gap:24px;margin-top:18px;padding:20px 24px}.finanzas-control-text{display:flex;flex:1 1;flex-direction:column;gap:10px}.finanzas-control-top{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.finanzas-eyebrow{color:#6b7acf;font-size:.72rem;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.finanzas-control-text h3{font-size:1.35rem;margin:4px 0 6px}.finanzas-control-text p{color:#4a5272;margin:0}.finanzas-metrics{display:flex;flex-wrap:wrap;gap:10px}.finanzas-chip{background:#6376f61a;border:1px solid #6376f640;border-radius:12px;color:#2b3073;font-size:.9rem;font-weight:700;padding:8px 12px}.finanzas-chip.alert{background:#ef444414;border-color:#ef444438;color:#b91c1c}.finanzas-chip.ok{background:#10b9811a;border-color:#10b9813d;color:#047857}.finanzas-chip.ghost{background:#94a3b824;border-color:#94a3b842;color:#475569}.finanzas-run-data{display:flex;flex-wrap:wrap;gap:10px}.finanzas-tag{align-items:center;background:#6376f614;border:1px dashed #6376f64d;border-radius:10px;color:#2b3073;display:inline-flex;font-size:.85rem;gap:6px;padding:6px 10px}.finanzas-tag.muted{background:#94a3b81f;border-color:#94a3b842;color:#475569}.finanzas-control-actions{display:flex;flex-direction:column;gap:10px;max-width:280px;min-width:240px}.finanzas-redirect-button{background:#fff;border:1px solid #667eea;border-radius:12px;box-shadow:0 6px 18px #00000014;color:#3b5bcc;cursor:pointer;display:inline-block;font-weight:700;padding:12px 16px;text-align:center;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;width:100%}.finanzas-redirect-button:hover{background:#f5f7ff;box-shadow:0 10px 24px #0000001f;transform:translateY(-1px)}.finanzas-redirect-button:active{transform:translateY(0)}.finanzas-helper{color:#475569;font-size:.85rem;margin:0}.finanzas-message{border:1px solid #0000;border-radius:10px;font-size:.92rem;padding:10px 12px}.finanzas-message.success{background:#e8f5e9;border-color:#a5d6a7;color:#2e7d32}.finanzas-message.error{background:#ffebee;border-color:#ffcdd2;color:#c62828}.finanzas-message.warning{background:#fff7ed;border-color:#fed7aa;color:#b45309}.finanzas-message.info,.finanzas-message.progress{background:#e0ecff;border-color:#bfdbfe;color:#1e3a8a}@media (max-width:768px){.finanzas-control-card{flex-direction:column}.finanzas-control-actions{max-width:none;width:100%}}.status-button.danger{background:linear-gradient(135deg,#f97316,#ef4444);box-shadow:none}.status-button.danger:hover:not(:disabled){box-shadow:0 12px 24px #ef444447}.status-resident-list{display:flex;flex-direction:column;gap:10px;max-height:260px;overflow-y:auto;padding-right:6px}.status-resident{align-items:center;background:#ffffffe6;border:1px solid #94a3b866;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;padding:10px 12px}.status-resident-main{display:flex;flex-direction:column;gap:2px}.status-resident-number{color:#1e3a8a;font-weight:700}.status-resident-name{color:#1f2937;font-weight:600}.status-resident-meta{color:#475569;display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px}.status-resident-adeudo{color:#b91c1c;font-weight:700}.status-empty{color:#475569;font-size:.9rem;margin:0}.status-detail-panel{background:#fffffff5;border:1px solid #94a3b859;border-radius:24px;box-shadow:0 24px 48px #25356d29;display:flex;flex-direction:column;gap:24px;margin-top:24px;padding:28px}.status-detail-panel.ok{border-color:#22c55e47}.status-detail-panel.alert{border-color:#ef444447}.status-detail-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between}.status-detail-header h3{font-size:1.5rem;margin:4px 0}.status-detail-header small{color:#64748b;display:block;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.status-detail-header p{color:#475569;margin:0}.resident-summary-metrics{display:flex;flex-wrap:wrap;gap:12px}.resident-summary-pill{align-items:center;background:#0f172a0f;border-radius:999px;color:#1e293b;display:inline-flex;font-weight:600;gap:6px;padding:8px 14px}.status-detail-close{background:#6366f11a;border:none;border-radius:999px;color:#312e81;cursor:pointer;font-weight:600;padding:8px 18px;transition:background .2s ease,transform .2s ease}.status-detail-close:hover{background:#6366f12e;transform:translateY(-1px)}.status-detail-grid{column-count:1;column-gap:24px}@media (min-width:640px){.status-detail-grid{column-count:2}}@media (min-width:1024px){.status-detail-grid{column-count:3}}.status-detail-grid .resident-detail-card{break-inside:avoid;margin-bottom:24px;page-break-inside:avoid}.resident-detail-card{background:#fff;border:1px solid #94a3b840;border-radius:24px;box-shadow:0 18px 36px #0f172a1f;display:flex;flex-direction:column;overflow:hidden;width:100%}.resident-card-top{align-items:center;border-bottom:1px solid #94a3b82e;display:flex;gap:20px;justify-content:space-between;padding:22px 28px}.resident-card-top.ok{background:linear-gradient(135deg,#22c55e38,#fffffff2)}.resident-card-top.alert{background:linear-gradient(135deg,#f871713d,#fffffff2)}.resident-top-left{align-items:center;display:flex;flex:1 1;gap:18px}.resident-number-circle{background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:999px;box-shadow:0 16px 32px #22c55e4d;color:#fff;display:grid;font-size:1.25rem;font-weight:700;height:70px;place-items:center;width:70px}.resident-number-circle span{padding:0 6px;text-align:center}.resident-top-details{display:flex;flex-direction:column;gap:6px}.resident-top-details h4{color:#0f172a;font-size:1.35rem;margin:0}.resident-status-indicator{align-items:center;display:inline-flex;font-size:.95rem;font-weight:600;gap:6px}.resident-status-indicator svg{font-size:1rem}.resident-status-indicator.ok{color:#047857}.resident-status-indicator.alert{color:#b91c1c}.resident-top-right{align-items:center;display:flex;gap:12px}.resident-adeudo-badge,.resident-verified-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.76rem;font-weight:700;gap:8px;letter-spacing:.08em;padding:8px 16px;text-transform:uppercase}.resident-verified-badge{background:#22c55e29;border:1px solid #22c55e47;color:#047857}.resident-verified-badge svg{font-size:1rem}.resident-adeudo-badge{background:#f8717129;border:1px solid #f871714d;color:#b91c1c}.resident-adeudo-badge strong{font-size:.9rem;letter-spacing:normal;text-transform:none}.badge-label{font-size:.68rem;letter-spacing:.12em;opacity:.72}.resident-detail-body{color:#1f2937;display:flex;flex-direction:column;gap:22px;padding:22px 28px}.resident-info-columns{grid-gap:16px 32px;display:grid;gap:16px 32px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.resident-info-column{display:flex;flex-direction:column;gap:18px}.resident-info-row{align-items:flex-start;color:#0f172a;display:flex;gap:14px}.resident-info-row .resident-info-icon{background:#3b82f61f;border-radius:12px;color:#2563eb;display:grid;font-size:1.1rem;height:38px;place-items:center;width:38px}.resident-info-row.alert .resident-info-icon{background:#f871712e;color:#b91c1c}.resident-info-row.success .resident-info-icon{background:#22c55e2e;color:#047857}.resident-info-text{display:flex;flex-direction:column;gap:4px}.resident-info-label{color:#64748b;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.resident-info-value{color:inherit;font-size:1.02rem;font-weight:600}.resident-info-row.muted{opacity:.65}.resident-info-row.success{color:#047857}.resident-info-row.alert{color:#b91c1c}.resident-payment-highlight{align-items:center;background:#22c55e1f;border:1px solid #22c55e38;border-radius:18px;color:#047857;display:flex;font-weight:600;gap:12px;padding:14px 18px}.resident-payment-highlight.alert{background:#f871711f;border-color:#f871713d;color:#b91c1c}.resident-payment-highlight.muted{opacity:.75}.resident-payment-highlight svg{font-size:1.15rem}.resident-detail-actions{display:flex;flex-direction:column;gap:12px;padding:0 28px 28px}.resident-action-row{display:flex;flex-wrap:wrap;gap:12px}.resident-action-row .resident-action{flex:1 1 160px}.resident-action{align-items:center;border:none;border-radius:14px;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;justify-content:center;padding:12px 18px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.resident-action svg{font-size:1.05rem}.resident-action.primary{background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 12px 26px #6d28d947;color:#fff}.resident-action.primary:hover{box-shadow:0 16px 32px #6d28d95c;transform:translateY(-1px)}.resident-action.info{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 12px 26px #2563eb47;color:#fff}.resident-action.info:hover{box-shadow:0 16px 32px #2563eb5c;transform:translateY(-1px)}.resident-action.ghost{background:#fff;border:1px solid #94a3b866;box-shadow:none;color:#1f2937}.resident-action.ghost:hover{background:#94a3b81f;transform:translateY(-1px)}.inline-link{align-items:center;color:#5860d6;display:inline-flex;font-weight:600;gap:6px;text-decoration:none}.inline-link:hover{color:#3b40b4}.owner-grid{align-items:center;gap:18px;margin-top:12px}.owner-grid,.owner-links{display:flex;flex-wrap:wrap}.owner-links{gap:14px}.owner-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:20px}.owner-stats strong{font-size:1.5rem}.stat-label{color:#92a0c5;font-size:.78rem;letter-spacing:.08em}.mudanza-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:18px 0}.rfid-box{background:#27376b14;border:1px solid #5863b052;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:20px}.primary-button{align-items:center;background:linear-gradient(135deg,#7e56d9,#6376f6);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;padding:12px 18px;transition:transform .2s ease,box-shadow .2s ease}.primary-button:hover{box-shadow:0 10px 24px #6376f652;transform:translateY(-1px)}.secondary-button{align-items:center;background:#0000;border:1px solid #6376f680;border-radius:10px;color:#5860d6;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:10px 16px;transition:background .2s ease,color .2s ease}.secondary-button:hover{background:#6376f614;color:#3b40b4}.badge{align-items:center;color:#5860d6;display:inline-flex;font-size:.8rem;font-weight:600;gap:6px}.section-title{align-items:center;display:flex;gap:12px;margin:0 0 10px}.section-title svg{font-size:1.2rem}.help-text{color:#6b7397;font-size:.95rem;margin:0}.card-grid-two{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.note-box{background:#ffffffbf;border:1px dashed #8e9ada80;border-radius:16px;color:#45507b;line-height:1.5;padding:20px}.note-box ul{margin:0;padding-left:18px}.note-box li{margin-bottom:6px}.hidden-input{display:none}.residentes-results{border-top:1px solid #8e9ada47;display:flex;flex-direction:column;gap:14px;margin-top:18px;padding-top:16px}.residentes-results-empty,.residentes-results-hint{color:#606a92;font-size:.9rem;margin:0}.residentes-results-error{color:#b91c1c;font-size:.9rem;font-weight:600;margin:0}.residentes-results-list{display:flex;flex-direction:column;gap:12px}.residente-result{align-items:flex-start;background:#ffffffeb;border:1px solid #8e9ada61;border-radius:16px;display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;padding:16px 18px}.residente-main{display:flex;flex-direction:column;gap:6px;min-width:200px}.residente-number{color:#4f2d7f;font-size:1.05rem;font-weight:700}.residente-name{color:#2b2f4a;font-weight:600}.residente-name.muted{color:#7b83a8;font-style:italic;font-weight:500}.residente-contact{color:#606a92;display:flex;flex-direction:column;font-size:.85rem;gap:2px}.residente-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.residente-pill{align-items:center;background:#6376f62e;border-radius:999px;color:#3942a2;display:inline-flex;font-size:.78rem;font-weight:700;gap:6px;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.residente-pill.moroso{background:#f871712e;color:#b91c1c}.residente-pill.corriente{background:#22c55e33;color:#047857}.residente-pill.disponible{background:#3b82f62e;color:#1d4ed8}.residente-pill.ocupada{background:#6366f133;color:#4338ca}.residente-pill.adeudo{background:#f59e0b33;color:#b45309;.residente-pill.saldo-favor{background:#10b98133;color:#059669}}.mail-modal-overlay{background:#181b3a8c;display:grid;inset:0;place-items:center;position:fixed;z-index:1000}.mail-modal{background:#fff;border-radius:14px;box-shadow:0 30px 80px #1f293759;overflow:hidden;width:min(720px,94vw)}.mail-modal-header{align-items:center;background:#f7f8fc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 18px}.mail-modal-header h3{font-weight:700;margin:0}.mail-close{background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:22px}.mail-modal-body{max-height:calc(90vh - 120px);overflow:auto;padding:16px 18px}.mail-field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.mail-field label{color:#374151;font-weight:600}.mail-field input[type=text],.mail-field textarea{border:1px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:.95rem;padding:10px 12px;width:100%}.mail-recipients{display:flex;flex-direction:column;gap:8px}.mail-bulk-selectors{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px;margin-bottom:4px}.mail-bulk-selectors label{align-items:center;cursor:pointer;display:inline-flex;font-weight:500;gap:4px}.mail-bulk-selectors input[type=checkbox]{accent-color:#6b7280;height:12px;width:12px}.mail-badge{background:#fee2e2;border-radius:6px;color:#b91c1c;font-size:.75rem;font-weight:700;padding:2px 6px}.mail-recipients-chips{display:flex;flex-wrap:wrap;gap:6px}.email-chip{align-items:center;background:#eef2ff;border-radius:999px;color:#4f46e5;display:inline-flex;font-size:.85rem;gap:6px;padding:6px 10px}.email-chip button{background:#0000;border:none;color:inherit;cursor:pointer}.mail-catalog{border:1px dashed #e5e7eb;border-radius:8px;max-height:170px;overflow:auto;padding:8px}.mail-catalog-item{align-items:center;cursor:pointer;display:flex;font-size:.85rem;gap:6px;padding:4px 6px}.mail-catalog-item:hover{background:#f9fafb}.mail-catalog-item input[type=checkbox]{cursor:pointer;flex-shrink:0;height:14px;margin:0;width:14px}.mail-catalog-item span{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-hint{color:#6b7280;font-size:.9rem;padding:8px}.mail-files{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px}.mail-error{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;padding:8px 10px}.mail-success{background:#d1fae5;border:1px solid #a7f3d0;border-radius:8px;color:#065f46;padding:8px 10px}.mail-modal-footer{background:#fafafa;border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end;padding:12px 18px}.btn-primary{background:#1d4ed8}.btn-primary,.btn-secondary{font-weight:600;padding:10px 16px}.btn-secondary{background:#f3f4f6;border:1px solid #e5e7eb;color:#1f2937}.mail-header-actions{align-items:center;display:flex;gap:8px}.mail-history-btn{background:#eef2ff;border:1px solid #e5e7eb;border-radius:8px;color:#4f46e5;cursor:pointer;font-weight:600;padding:6px 10px}.mail-history-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 24px 64px #0003;height:90vh;overflow:auto;padding:12px;position:fixed;right:2vw;top:5vh;width:min(360px,88vw);z-index:1100}.mail-history-header{font-weight:700;margin-bottom:8px}.mail-history-item{border-bottom:1px dashed #e5e7eb;padding:8px 4px}.mail-history-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:4px}.mail-history-subject{align-items:center;color:#374151;display:flex;flex:1 1;font-weight:600;gap:6px}.status-icon{flex-shrink:0;font-size:.9rem}.status-icon.success{color:#10b981}.status-icon.error{color:#ef4444}.btn-resend{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;color:#4f46e5;cursor:pointer;display:flex;font-size:.8rem;gap:4px;padding:4px 8px}.btn-resend:hover{background:#e0e7ff}.mail-history-meta{color:#6b7280;font-size:.85rem}.rp-modal-backdrop{align-items:center;-webkit-backdrop-filter:saturate(1.2) blur(1px);backdrop-filter:saturate(1.2) blur(1px);background:#14142366;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.rp-modal{background:#fff;border-radius:14px;box-shadow:0 24px 50px #1e0a3c42;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:min(900px,90vw)}.rp-header{background:linear-gradient(135deg,#6d28d9,#2563eb 65%,#0ea5e9);color:#fff;gap:16px;padding:18px 20px}.rp-avatar,.rp-header{align-items:center;display:flex}.rp-avatar{background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:50%;box-shadow:0 10px 20px #16a34a52;color:#064e3b;font-weight:700;height:56px;justify-content:center;width:56px}.rp-title-wrap{display:flex;flex:1 1;flex-direction:column}.rp-name{font-size:20px;font-weight:700}.rp-status{align-items:center;border-radius:999px;box-shadow:0 6px 14px #0000001f;display:inline-flex;font-size:13px;gap:6px;margin-top:4px;padding:4px 10px}.rp-status.ok{background:#22c55e29;color:#ecfdf3}.rp-status.ok:before{color:#bbf7d0;content:"\2022"}.rp-status.due{background:#ef444433;color:#fff0f0}.rp-status.due:before{color:#fecdd3;content:"\2022"}.rp-actions{display:flex;gap:8px}.rp-actions .rp-edit{background:#fff;border:1px solid #4338ca26;border-radius:10px;box-shadow:0 4px 12px #4338ca2e;color:#4338ca;font-weight:600;padding:8px 14px;transition:all .18s ease}.rp-actions .rp-edit:hover{box-shadow:0 8px 18px #4338ca38;transform:translateY(-1px)}.rp-actions .rp-save{background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:10px;box-shadow:0 10px 25px #16a34a47;color:#fff;font-weight:700;padding:8px 16px;transition:all .18s ease}.rp-actions .rp-save:hover{box-shadow:0 14px 28px #16a34a52;transform:translateY(-1px)}.rp-actions .rp-close{background:#ffffff29;border:none;border-radius:10px;color:#fff;font-size:18px;padding:4px 10px;transition:background .18s ease}.rp-actions .rp-close:hover{background:#ffffff47}.rp-tabs{background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px}.rp-tab-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#334155;display:flex;gap:8px;padding:8px 12px}.rp-tab-btn.active{background:#ede9fe;color:#4c1d95}.rp-body{overflow:auto;padding:16px}.rp-card-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.rp-card-grid.rp-accent{background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;padding:12px}.rp-field{display:flex;flex-direction:column;gap:6px}.rp-field label{color:#6b7280;font-size:12px}.rp-input{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;color:#111827;padding:8px 10px;transition:border-color .15s ease,box-shadow .15s ease}.rp-input:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed2e;outline:none}.rp-notes{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr}.rp-textarea{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;min-height:100px;padding:10px;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.rp-textarea:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed2e;outline:none}.rp-footer{align-items:center;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:12px 16px}.rp-close-link{background:#0000;border:none;border-radius:10px;color:#4c1d95;font-weight:600;padding:6px 10px;transition:color .15s ease,background .15s ease}.rp-close-link:hover{background:#ede9fe;color:#312e81}@media (max-width:700px){.rp-card-grid{grid-template-columns:1fr}.rp-modal{width:95vw}}.gestion-vigilancia-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:48px 24px 64px}.vigilancia-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1f;border:1px solid #ffffff38;border-radius:24px;color:#f7f8ff;margin-bottom:32px;padding:28px 32px}.vigilancia-header .section-title{align-items:center;color:#fff;display:flex;font-size:2rem;gap:12px;margin:0}.vigilancia-header .section-subtitle{color:#f7f8ff;font-size:1rem;margin:8px 0 0;opacity:.85}.vigilancia-content{background:#fffffff2;border:1px solid #8e9ada47;border-radius:20px;box-shadow:0 20px 40px #25356d2e;padding:28px}.search-box{align-items:center;background:#6376f61f;border:1px solid #6376f647;border-radius:16px;display:flex;gap:12px;margin-bottom:24px;padding:12px 18px}.search-box .search-icon{color:#5a63d8;flex-shrink:0;font-size:1.05rem}.search-box .search-input{background:#0000;border:none;color:#2b2f4a;flex:1 1;font-family:inherit;font-size:.95rem}.search-box .search-input::placeholder{color:#2b2f4a8a}.search-box .search-input:focus{outline:none}.error-message-box{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;color:#b91c1c;display:flex;font-weight:500;justify-content:space-between;margin-bottom:20px;padding:14px 18px}.error-message-box .close-error{background:none;border:none;color:#b91c1c;cursor:pointer;font-size:1.5rem;margin-left:12px;padding:0}.error-message-box .close-error:hover{opacity:.7}.loading-message{background:#fffffff2;border-radius:20px;color:#5a63d8;font-size:1.1rem;font-weight:500;padding:48px}.empty-state{color:#606a92;font-size:1.1rem;padding:48px 24px}.table-container{border:1px solid #8e9ada47;border-radius:12px;overflow-x:auto}.data-table{background:#fff;border-collapse:collapse;width:100%}.data-table thead{background:linear-gradient(135deg,#6376f61a,#774ba21a);border-bottom:2px solid #6376f633}.data-table th{color:#4a4f7d;font-size:.95rem;font-weight:600;padding:16px;text-align:left;white-space:nowrap}.data-table td{border-bottom:1px solid #8e9ada26;color:#1f2740;padding:16px}.data-table tbody tr{transition:background-color .2s ease}.data-table tbody tr:hover{background-color:#6376f60f}.cell-username{color:#5a63d8;font-family:Courier New,monospace;font-weight:600}.cell-username code{background:#6376f614;border-radius:6px;font-size:.9rem;padding:4px 8px}.cell-password{font-family:Courier New,monospace}.password-display{align-items:center;background:#6376f614;border-radius:8px;display:flex;gap:8px;padding:8px 12px;width:-webkit-fit-content;width:fit-content}.password-text{color:#1f2740;font-weight:500;letter-spacing:.1em;min-width:120px}.btn-toggle-password{align-items:center;background:none;border:none;border-radius:6px;color:#5a63d8;cursor:pointer;display:flex;flex-shrink:0;font-size:.95rem;justify-content:center;padding:4px 8px;transition:all .2s ease}.btn-toggle-password:hover{background:#6376f633;color:#4338ca}.status-badge{align-items:center;border:none;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:6px;padding:6px 12px;transition:all .2s ease}.status-badge.active{background:#22c55e26;color:#15803d}.status-badge.active:hover{background:#22c55e40;transform:translateY(-1px)}.status-badge.inactive{background:#94a3b826;color:#475569}.status-badge.inactive:hover{background:#94a3b840;transform:translateY(-1px)}.cell-actions{text-align:right}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:6px;padding:8px 14px;text-decoration:none;transition:all .2s ease}.delete-btn{background:#ef44441a;color:#dc2626}.delete-btn:hover{background:#ef444433;transform:translateY(-1px)}.modal-overlay{z-index:1000}.modal-content{animation:slideUp .3s ease;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:32px}.modal-content h2{color:#1f2740;font-size:1.3rem;margin:0 0 12px}.modal-content p{color:#606a92;line-height:1.5;margin:0 0 8px}.modal-warning{color:#d32f2f!important;font-size:.9rem;font-weight:500;margin-top:12px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .2s ease}.btn-secondary{background:#94a3b81a;color:#475569}.btn-secondary:hover{background:#94a3b833;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-danger:hover{box-shadow:0 8px 16px #ef44444d;transform:translateY(-1px)}@media (max-width:768px){.gestion-vigilancia-page{padding:24px 16px 40px}.vigilancia-header{padding:20px 24px}.vigilancia-header .section-title{font-size:1.5rem}.vigilancia-content{padding:20px}.data-table{font-size:.9rem}.data-table td,.data-table th{padding:12px}.password-display{flex-wrap:wrap;min-width:100%}.cell-actions{text-align:center}}.designado-box{background:#f5f7ff;border:1px solid #6376f647;border-radius:12px;margin-bottom:18px;padding:14px 16px}.designado-title{color:#2b2f4a;font-weight:700;margin-bottom:6px}.designado-details{grid-gap:10px;color:#3a3f66;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.designado-empty{color:#6b7280}.export-box{border-top:1px dashed #6376f659;margin-top:24px;padding-top:18px}.export-header{justify-content:space-between}.export-header,.export-range{align-items:center;display:flex;gap:10px}.export-range label{align-items:center;color:#374151;display:flex;gap:6px}.export-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.import-page{margin:2rem auto;max-width:900px}.import-page h2,.import-page p{text-align:center}.import-container{grid-gap:2rem;background:#fff;border-radius:12px;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-top:2rem;padding:2rem}.instructions,.upload-area{border:1px solid #eee;border-radius:8px;padding:1.5rem}.instructions ol{padding-left:20px}.btn-template{align-items:center;background:#1d6f42;border-radius:8px;color:#fff;display:inline-flex;gap:8px;padding:10px 15px;text-decoration:none}.upload-label{border:2px dashed #ccc;border-radius:8px;cursor:pointer;display:block;margin-bottom:1rem;padding:20px;text-align:center}.btn-import{align-items:center;background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;gap:8px;padding:10px 15px}.progress-bar-container{background:#eee;border-radius:4px;margin-top:1rem;width:100%}.progress-bar{background:#28a745;color:#fff;padding:4px 0;text-align:center;transition:width .4s ease}.processing-timer{background:#f0f8ff;border:2px solid #667eea;border-radius:8px;margin-top:1rem;padding:1rem;text-align:center}.timer-display{color:#667eea;font-size:2.5rem;font-weight:700;margin:.5rem 0}.timer-note{color:#666;font-size:.85rem;margin-top:.5rem}.feedback-text{font-weight:500;margin-top:1rem}.modal-overlay{background:#00000073;inset:0;padding:1rem;z-index:2000}.import-summary-modal{background:#fff;border-radius:12px;box-shadow:0 10px 35px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:900px;padding:1.5rem;position:relative;width:100%}.import-summary-modal>h3{margin-top:0}.import-summary-modal>div:not(.summary-actions){flex:1 1;overflow-y:auto;padding-right:.5rem}.import-summary-modal>div:not(.summary-actions)::-webkit-scrollbar{width:6px}.import-summary-modal>div:not(.summary-actions)::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.import-summary-modal>div:not(.summary-actions)::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.import-summary-modal>div:not(.summary-actions)::-webkit-scrollbar-thumb:hover{background:#555}.modal-close-btn{background:#0000;border:none;cursor:pointer;font-size:1.2rem;position:absolute;right:10px;top:10px;z-index:10}.summary-subtitle{color:#555;font-size:.9rem;margin:.5rem 0 1rem}.summary-stats{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:1rem 0}.stat-item{background:#f5f7ff;border:1px solid #eee;border-radius:8px;padding:.75rem;text-align:center}.stat-label{color:#666;display:block;font-size:.8rem;margin-bottom:.25rem;text-transform:uppercase}.stat-number{color:#667eea;display:block;font-size:1.8rem;font-weight:700}.summary-section{margin-top:1.5rem}.summary-section h4{color:#333;font-size:.95rem;margin:.5rem 0}.summary-table{border:1px solid #ddd;border-radius:6px;margin-top:.5rem;overflow:hidden}.table-header{background:#f9fafb;border-bottom:2px solid #e5e7eb;font-weight:600}.table-header,.table-row{grid-gap:1rem;display:grid;font-size:.85rem;gap:1rem;grid-template-columns:1fr 2fr 2fr;padding:.75rem 1rem}.table-row{border-bottom:1px solid #eee}.table-row:hover{background:#f9fafb}.table-row:last-child{border-bottom:none}.table-more{color:#999;font-size:.8rem;margin:.5rem 1rem}.summary-note{color:#666;font-size:.9rem;margin-bottom:0;margin-top:1rem}.summary-error{padding:1rem 0;text-align:center}.inline-template{align-items:center;display:inline-flex;font-size:.9rem;gap:6px;margin:.75rem 0}.validation-errors-section{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-top:1rem;padding:1rem;text-align:left}.validation-errors-section h4{color:#856404;margin-top:0}.errors-list{margin:1rem 0;max-height:300px;overflow-y:auto}.error-item{background:#fff;border-left:4px solid #dc3545;border-radius:4px;margin-bottom:.75rem;padding:.75rem}.error-item p{font-size:.9rem;margin:.25rem 0}.error-item code{background:#f8f9fa;border-radius:3px;color:#d32f2f;font-family:monospace;padding:.25rem .5rem}.error-instruction{color:#856404;font-size:.9rem;margin-bottom:0;margin-top:1rem}.summary-actions{border-top:1px solid #eee;display:flex;flex-shrink:0;justify-content:flex-end;margin-top:1rem;padding-top:1rem}.col{word-break:break-word}.modal-backdrop{align-items:center;background-color:#0009;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{animation:slide-down .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 5px 15px #0000004d;max-width:550px;padding:25px;width:90%}@keyframes slide-down{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid #eee;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.modal-header h2{color:#fff}.modal-header h2 svg{color:#fff;font-size:1.4rem}.btn-close-modal{background:none;border:none;color:#888;cursor:pointer;font-size:1.5em}.modal-body{padding:10px 0}.tipo-selector{display:flex;flex-direction:column;gap:15px}.tipo-selector button{align-items:center;background:#f9f9f9;border:2px solid #eee;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;padding:20px;text-align:center;transition:all .2s ease-in-out}.tipo-selector button:hover{background:#f3e8ff;border-color:#8a2be2;transform:translateY(-3px)}.tipo-selector svg{color:#8a2be2;font-size:2em;margin-bottom:10px}.tipo-selector span{font-size:1.1em;font-weight:700}.tipo-selector small{color:#666;margin-top:5px}.modal-footer{border-top:1px solid #eee;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:20px}.form-container{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:25px}.form-container .form-group{margin-bottom:20px}.form-container .form-group label{color:#495057;display:block;font-weight:700;margin-bottom:8px}.form-container .form-group input,.form-container .form-group textarea{background-color:#fff;border:1px solid #ced4da;border-radius:8px;color:#212529;font-size:1em;padding:12px 15px;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.form-container .form-group input:focus,.form-container .form-group textarea:focus{border-color:#8a2be2;box-shadow:0 0 0 3px #8a2be226;outline:none}.btn-primary{border:none;border-radius:8px;font-weight:700}.btn-primary,.btn-secondary{cursor:pointer;padding:10px 18px}.btn-secondary{background:none;border:1px solid #ccc;border-radius:8px;color:#333}.btn-cancel{background-color:#f1f1f1;border:1px solid #ccc;color:#333;padding:10px 18px}.avisos-page-container{grid-gap:30px;display:grid;gap:30px}.aviso-card{background:#fff;border-radius:20px;box-shadow:0 4px 12px #0000001a;padding:25px}.aviso-card h3{align-items:center;display:flex;gap:10px;margin-top:0}.category-list{list-style:none;margin:20px 0;padding:0}.category-list li{border-bottom:1px solid #f0f0f0;padding:10px 0}.category-list a{color:#333;font-weight:500;text-decoration:none}.btn-new{background-color:#8c5fb2;border-radius:10px;color:#fff;display:inline-block;padding:12px 20px;text-align:center;text-decoration:none}.comunidad-btn-primary{align-items:center;background:#8e2de2;border:none;border-radius:18px;box-shadow:0 2px 8px #8e2de214;color:#fff;cursor:pointer;display:inline-flex;font-size:1em;font-weight:700;gap:8px;padding:8px 22px;transition:background .2s}.comunidad-btn-primary:hover{background:#6d19b6}.comunidad-btn-secondary{align-items:center;background:#f1f1f1;border:1px solid #7047eb33;border-radius:8px;color:#7047eb;cursor:pointer;display:inline-flex;font-size:1em;font-weight:700;gap:8px;padding:8px 18px;transition:background .2s}.comunidad-btn-secondary:hover{background:#e2e3e3}.comunidad-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;gap:18px;margin-bottom:32px;padding-bottom:12px}.comunidad-header h1{color:#212529;font-size:2em;margin:0}.comunidad-header svg{color:#8a2be2;font-size:1.5em}.comunidad-card{background:#fff;border:1px solid #f1f3f5;border-radius:12px;box-shadow:0 4px 20px #00000012;margin-bottom:24px;padding:24px 28px;transition:box-shadow .2s}.comunidad-card:hover{box-shadow:0 8px 32px #8e2de21f}.comunidad-empty-state{background-color:#f8f9fa;border-radius:12px;padding:50px 20px;text-align:center}.comunidad-empty-icon{color:#ced4da;font-size:4em;margin-bottom:20px}.comunidad-empty-state h2{color:#495057;margin-bottom:10px}.comunidad-empty-state p{color:#6c757d;margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:400px}.crear-comunicado-page{background:#fff;border-radius:20px;margin:auto;max-width:700px;padding:30px}.comunicado-form-header{align-items:center;display:flex;gap:20px;margin-bottom:30px}.comunicado-form-header .header-title-group h2{color:#333;font-size:1.5rem;margin:0}.comunicado-form-header .header-title-group p{color:#6c757d;font-size:.9rem;margin:4px 0 0}.comunicado-form .form-group{margin-bottom:20px}.comunicado-form label{display:block}.comunicado-form input,.comunicado-form select,.comunicado-form textarea{border:1px solid #ddd;border-radius:8px;color:#333;font-size:1em;padding:12px;width:100%}.comunicado-form input:disabled,.comunicado-form select:disabled,.comunicado-form textarea:disabled{cursor:not-allowed;opacity:.7}.comunicado-event-toggle{margin-top:0}.comunicado-event-toggle .toggle-header{align-items:center;display:flex;font-weight:600;gap:12px}.comunicado-event-toggle input{width:auto}.comunicado-event-toggle .toggle-hint{color:#666;font-size:.9em;margin:6px 0 0}.morosos-checkbox{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-bottom:20px;padding:12px 16px}.morosos-checkbox label{color:#856404;font-weight:500}.morosos-checkbox input[type=checkbox]{margin:0;width:auto}.tooltip-icon{color:#8c5fb2;cursor:help;font-size:.9rem;margin-left:6px;vertical-align:middle}.tooltip-icon:hover{color:#6d4a8e}.warning-icon{color:#dc3545;font-size:1rem}.warning-tooltip{color:#dc3545}.warning-tooltip:hover{color:#c82333}.comunicado-form label{align-items:center;display:flex;font-weight:600;margin-bottom:5px}.comunicado-evento-fields{background:#faf8ff;border:1px solid #e1d5f5;border-radius:12px;margin-bottom:20px;padding:18px}.comunicado-evento-fields h4{font-size:1rem;margin:0 0 16px}.comunicado-evento-fields .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.comunicado-evento-fields .form-group{margin-bottom:0}.form-actions{flex-wrap:wrap}.form-actions-buttons{display:flex;gap:15px}.btn-cancel{background:#f0f0f0;border:none;border-radius:8px;cursor:pointer;font-weight:700;padding:12px 25px}.btn-cancel:disabled{cursor:not-allowed;opacity:.6}.btn-publish{align-items:center;background:#8c5fb2;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:700;gap:8px;padding:12px 25px}.btn-publish:disabled{cursor:progress;opacity:.7}.crear-aviso-container{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:20px auto;max-width:600px;padding:30px}.crear-aviso-form .form-group{margin-bottom:20px}.crear-aviso-form label{color:#333;display:block;font-weight:600;margin-bottom:8px}.crear-aviso-form input,.crear-aviso-form textarea{border:1px solid #ccc;border-radius:8px;color:#333;font-size:1em;padding:12px;transition:border-color .2s;width:100%}.crear-aviso-form input:focus,.crear-aviso-form textarea:focus{border-color:#667eea;outline:none}.btn-publicar{background-color:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;padding:15px;transition:background-color .2s,transform .1s;width:100%}.btn-publicar:hover{background-color:#5a6fd2}.btn-publicar:active{transform:scale(.98)}.mensaje-feedback{background-color:#e6f7ff;border:1px solid #91d5ff;border-radius:8px;color:#0050b3;font-weight:500;margin-top:20px;padding:10px;text-align:center}.lista-comunicados-page{margin:40px auto;max-width:900px;padding:0 20px}.comunicados-list{display:flex;flex-direction:column;gap:25px}.comunicado-card{align-items:flex-start;background:#fff;border:1px solid #f1f3f5;border-radius:12px;box-shadow:0 4px 20px #00000012;display:flex;gap:20px;justify-content:space-between;padding:25px 30px;transition:all .3s ease}.comunicado-card:hover{background:linear-gradient(135deg,#fff,#f8f7fc);border-color:#7b2ce8;box-shadow:0 8px 25px #7b2ce826;transform:translateY(-3px)}.comunicado-content{flex:1 1}.comunicado-card h2{color:#343a40;font-size:1.4em;margin-bottom:8px;margin-top:0}.comunicado-card p{color:#6c757d;line-height:1.6;margin-bottom:16px}.comunicado-card small{color:#adb5bd;font-size:.85em}.comunicado-actions{align-items:center;display:flex;gap:10px}.btn-delete,.btn-edit{align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1.1rem;justify-content:center;padding:10px;transition:all .2s ease}.btn-edit{color:#5a67d8}.btn-edit:hover{background:#eef2ff;color:#4c51bf}.btn-delete{color:#e53e3e}.btn-delete:hover{background:#fff5f5;color:#c53030}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-dialog{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%}.modal-dialog-header{border-bottom:1px solid #e9ecef;padding:20px 24px}.modal-dialog-header h3{color:#212529;font-size:1.4rem;margin:0}.modal-dialog-body{padding:24px}.modal-dialog-body p{color:#495057;line-height:1.6;margin:0 0 8px}.modal-dialog-footer{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.btn-delete-confirm{background:#e53e3e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .2s ease}.btn-delete-confirm:hover{background:#c53030}.no-comunicados{background-color:#f8f9fa;border:1px dashed #dee2e6;border-radius:12px;color:#6c757d;padding:60px 20px;text-align:center}.retorno-link svg{font-size:1em}.votaciones-page{display:flex;justify-content:center;padding:30px 20px}.modal-card{background:linear-gradient(180deg,#fff,#fbfbfe);border-radius:14px;box-shadow:0 24px 60px #140c2c61;display:flex;flex-direction:column;margin:0 auto;max-width:820px;min-height:360px;overflow:hidden;width:100%}.modal-card.center-vertical{justify-content:center;min-height:420px}.modal-header{align-items:center;background:linear-gradient(90deg,#7b2ce8,#5a16b8);color:#fff;display:flex;gap:16px;padding:22px 28px}.modal-header h2{font-size:1.25rem;font-weight:700;margin:0}.modal-body{align-items:flex-start;background:#fbfbfe;display:flex;justify-content:center;padding:28px}.form-section{background:#fff;border:1px solid #eef1f8;border-radius:12px;box-shadow:0 6px 18px #623eea0f;box-sizing:border-box;max-width:720px;padding:18px;width:100%}.modal-footer{background:linear-gradient(180deg,#fafafd99,#fff6);border-top:1px solid #e6e6f0cc;gap:14px;justify-content:space-between;padding:18px 28px}.footer-actions,.modal-footer{align-items:center;display:flex}.footer-actions{gap:12px}.modal-content-wrapper{max-width:720px;width:100%}.votaciones-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:center;margin-bottom:25px;min-height:54px;padding:0 48px 16px;position:relative}.votaciones-header h1{color:#212529;font-size:1.6rem;font-weight:700;margin:0;text-align:center}.header-back-btn,.header-create-btn{position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap}.header-back-btn{left:0}.header-create-btn{right:0}.votaciones-list{grid-gap:28px;display:grid;gap:28px}.votaciones-section{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}.votaciones-section:last-of-type{margin-bottom:0}.votaciones-section-title{color:#343a40;font-size:1.25rem;margin:0}.votaciones-section-expired .votacion-card{filter:grayscale(.1);opacity:.94}.form-section.info-state{background:#7b6ce614;border:1px dashed #7b6ce666;color:#4732a5;font-weight:500}.empty-state-votaciones{background-color:#f8f9fa;border-radius:12px;padding:60px 20px;text-align:center}.empty-state-icon{color:#ced4da;font-size:4em;margin-bottom:20px}.empty-state-votaciones h2{color:#495057;margin-bottom:10px}.empty-state-votaciones p{color:#6c757d;margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:400px}.votacion-card{background:linear-gradient(135deg,#6f47eb,#88d3ce);border-radius:20px;box-shadow:0 12px 35px #7047eb40;color:#fff;padding:28px;transition:transform .3s ease}.votacion-card:hover{transform:translateY(-4px)}.votacion-card.votado{opacity:.92}.card-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.card-header h3{font-size:1.55em;margin:0}.card-meta{color:#ffffffe0;display:flex;flex-wrap:wrap;font-size:.9em;gap:12px;margin-bottom:18px}.card-meta span{background:#0003;border-radius:999px;padding:6px 12px}.status-badge{border-radius:20px;font-size:.78em;font-weight:700;padding:6px 14px;text-transform:uppercase}.status-badge.badge-active{background:#4ade802e;border:1px solid #4ade8047;color:#c3f8d2}.status-badge.badge-upcoming{background:#38bdf82e;border:1px solid #38bdf842;color:#d2f0ff}.status-badge.badge-expired{background:#f871712e;border:1px solid #f871714d;color:#ffd7d7}.options-container{display:flex;flex-direction:column;gap:15px}.votacion-option{background:#ffffff1a;border:2px solid #0000;border-radius:12px;cursor:pointer;padding:16px 20px;transition:all .2s ease-in-out}.votacion-option:hover{background:#fff3}.votacion-option.selected{background:#ffffff4d;border-color:#fff}.votacion-option.disabled{cursor:not-allowed;opacity:.55}.votado .votacion-option{cursor:not-allowed;opacity:.7}.option-label{font-weight:700;gap:12px;margin-bottom:10px}.option-label,.option-result{align-items:center;display:flex}.option-result{gap:15px}.progress-bar-container{background:#00000038;border-radius:20px;flex-grow:1;height:10px;overflow:hidden}.progress-bar{border-radius:20px;height:100%;transition:width .5s ease-in-out}.progress-bar.green{background:#20c997}.progress-bar.red{background:#fa5252}.progress-bar.blue{background:#339af0}.percentage{font-weight:700;min-width:42px;text-align:right}.card-actions{align-items:center;gap:15px;margin-top:28px}.card-actions,.participation-summary{display:flex;flex-wrap:wrap;justify-content:space-between}.participation-summary{color:#ffffffe6;font-size:.95em;gap:12px;margin-top:18px}.participation-summary span{background:#0000002e;border-radius:10px;padding:6px 12px}.admin-review-status{align-items:center;border-radius:12px;display:inline-flex;font-size:.88em;font-weight:600;gap:8px;margin-top:10px;padding:6px 12px}.admin-review-status.pending{background:#ffc10752;border:1px solid #ffc10761;color:#fff5cc}.admin-review-status.done{background:#22c55e47;border:1px solid #22c55e4d;color:#d6f3e5}.card-actions .action-right{display:flex;gap:15px}.admin-actions{display:flex;gap:10px}.btn-danger,.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:12px 22px;transition:background-color .2s ease}.btn-primary{background-color:#8a2be2;color:#fff}.btn-primary:disabled{background-color:#bca0dc;color:#f8f9fa;cursor:not-allowed}.btn-secondary{background-color:#ffffff26;border:1px solid #ffffff73;color:#fff}.btn-danger{background-color:#ff525233;border:1px solid #ff8c8c8c;color:#ffe3e3}.btn-danger:hover{background-color:#ff525259}.card-actions .btn-primary{background-color:#fff;color:#7047eb}.card-actions .btn-primary:disabled{background-color:#f1f3f5;color:#adb5bd}.form-actions .btn-secondary{background-color:#f1f3f5;border:1px solid #d0d5dd;color:#343a40}.crear-votacion-page{align-items:flex-start;display:flex;justify-content:center;padding:40px 20px}.form-container{background:#fff;border-radius:16px;box-shadow:0 12px 28px #00000014;max-width:600px;padding:40px;width:100%}.form-header{align-items:center;display:flex;gap:16px;margin-bottom:28px}.form-container h2{margin:0}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;margin-bottom:8px}.form-group input,.form-group textarea{border:1px solid #ced4da;border-radius:8px;font-size:1rem;padding:12px;width:100%}.form-group textarea{min-height:120px;resize:vertical}.form-actions{gap:15px;justify-content:flex-end;margin-top:30px}.btn-back{background:none;border:none;color:#7047eb;font-size:1.1em;margin-bottom:20px}.btn-outline{background:#0000;border:1px solid #e6e9f2;border-radius:10px;color:#444;font-weight:600}.btn-gradient,.btn-outline{cursor:pointer;padding:12px 22px}.btn-gradient{background:linear-gradient(90deg,#6a2de2,#a45dfb);border:none;border-radius:10px;box-shadow:0 6px 18px #6a2de233;color:#fff;font-weight:700}.retorno-link{align-items:center;background:#5a16b80d;border-color:#5a16b847;color:#5a16b8;display:inline-flex;gap:6px;padding:10px 18px}.retorno-link:hover{background:#5a16b81f}.muted{color:#6c757d;font-size:.9rem}.votacion-details-panel{background:linear-gradient(180deg,#ffffff1f,#ffffff0f);border:1px solid #ffffff14;border-radius:12px;box-shadow:0 8px 24px #140c2c2e;color:#f7f7f9;margin-top:18px;padding:16px}.votacion-details-panel .details-row{color:#f1f1f3;font-size:.95rem;margin-bottom:8px}.votacion-details-panel .details-description{background:#ffffff08;border-radius:8px;color:#eef1f8;line-height:1.5;margin-top:8px;padding:10px}.votacion-details-panel .details-note{background:#0000000f;border-radius:8px;color:#e6e6ea;font-size:.9rem;margin-top:12px;padding:10px}@media (max-width:720px){.modal-card{margin:0 12px}.modal-body,.modal-header{padding:18px}.modal-footer{align-items:stretch;flex-direction:column;gap:10px;padding:12px 18px}.footer-actions{justify-content:flex-end}.form-container{padding:28px 20px}.form-header{align-items:flex-start;flex-direction:column;gap:12px}.votaciones-header{flex-direction:column;gap:8px;padding:0 0 12px}.votaciones-header h1{font-size:1.3rem}.header-back-btn,.header-create-btn{position:static;transform:none;width:100%}}.reportes-page{margin:36px auto 96px;max-width:900px;padding:0 20px 80px;position:relative}.reportes-header{background:linear-gradient(120deg,#6e45e21f,#88d3ce26);border-radius:18px;box-shadow:0 18px 40px #6a2de21f;justify-content:space-between;padding:22px 26px}.header-main,.reportes-header{align-items:center;display:flex;gap:18px}.header-icon{background:linear-gradient(135deg,#6a2de2,#8dd1ce);border-radius:16px;box-shadow:0 12px 24px #6a2de233;display:flex;font-size:1.6rem;height:58px;justify-content:center;width:58px}.header-cta,.header-icon{align-items:center;color:#fff}.header-cta{background:linear-gradient(120deg,#6a2de2,#a45dfb);border:none;border-radius:14px;box-shadow:0 14px 32px #6a2de24d;cursor:pointer;display:inline-flex;font-weight:700;gap:10px;padding:12px 16px;transition:transform .2s ease,box-shadow .2s ease}.header-cta:hover{box-shadow:0 18px 38px #6a2de25c;transform:translateY(-2px)}.header-cta svg{font-size:1rem}.reportes-header h1{color:#221f3b;font-size:1.9rem;margin:0}.reportes-header p{color:#5d5f6d;line-height:1.45;margin:6px 0 0}.reportes-filters{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 18px}.filter-pill{background:#6a2de214;color:#4b20a5;padding:8px 20px}.filter-pill:hover{background:#6a2de229}.filter-pill.active{background:linear-gradient(90deg,#6a2de2,#a45dfb);box-shadow:0 10px 24px #6a2de240}.reportes-list{display:flex;flex-direction:column;gap:18px}.reporte-card{background:#fff;border:1px solid #6a2de214;border-radius:20px;box-shadow:0 18px 45px #21183e14;padding:24px 28px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.reporte-card.reporte-unread{border-color:#ff83a459;box-shadow:0 22px 50px #ff83a42e;position:relative}.reporte-card.reporte-unread:before{background:#ff5c7a;border-radius:50%;content:"";height:10px;position:absolute;right:28px;top:24px;width:10px}.reporte-card:hover{box-shadow:0 24px 50px #21183e1f;transform:translateY(-4px)}.reporte-header-row{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.reporte-tags{display:flex;flex-wrap:wrap;gap:10px}.tag-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:700;gap:8px;letter-spacing:.05em;padding:6px 16px;text-transform:uppercase}.tag-incidencia{background:#ff83a42e;border:1px solid #ff83a452;color:#ff4d79}.tag-propuesta{background:#90cdf433;border:1px solid #90cdf452;color:#2f88ff}.tag-generic{background:#6e45e224;border:1px solid #6e45e233;color:#5c2ed8}.status-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:700;gap:6px;letter-spacing:.05em;padding:6px 14px;text-transform:uppercase}.status-pending{background:#ffe08a47;border:1px solid #ffe08a52;color:#a67607}.status-progress{background:#75bdff40;border:1px solid #75bdff52;color:#116dff}.status-resuelta{background:#86efac3d;border:1px solid #86efac4d;color:#087f39}.status-default{background:#94a3b833;border:1px solid #94a3b84d;color:#475569}.reporte-title{color:#1e2130;font-size:1.26rem;margin:0 0 8px}.reporte-description{color:#4b4e63;line-height:1.55;margin:0 0 18px}.reporte-meta{color:#5a5d72;display:flex;flex-wrap:wrap;gap:18px;margin-bottom:18px}.meta-item{align-items:center;display:inline-flex;font-weight:500;gap:8px}.meta-item svg{color:#6a2de2}.reporte-footer{align-items:center;color:#6c7188;display:flex;flex-wrap:wrap;font-weight:500;gap:16px;justify-content:space-between}.btn-toggle-read{align-items:center;border:none;border-radius:999px;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:8px 18px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.btn-toggle-read.mark-read{background:linear-gradient(120deg,#6a2de2,#a45dfb);box-shadow:0 10px 24px #6a2de240;color:#fff}.btn-toggle-read.mark-unread{background:#f0f1f6f2;box-shadow:0 8px 18px #21244014;color:#4b4f66}.btn-toggle-read:hover:not(:disabled){transform:translateY(-2px)}.btn-toggle-read:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.reporte-attachments{display:inline-flex;flex-wrap:wrap;gap:8px}.attachment-pill{align-items:center;background:#6e45e229;border-radius:12px;color:#5a16b8;display:inline-flex;height:34px;justify-content:center;width:34px}.attachment-pill svg{font-size:.95rem}.attachment-video{background:#3b82f62e;color:#1d4ed8}.attachment-audio{background:#f472b633;color:#be185d}.attachment-foto{background:#38bdf82e;color:#0369a1}.empty-state-reportes{background:#f8f9fdeb;border:1px dashed #6a2de233;border-radius:18px;color:#565b73;padding:70px 40px;text-align:center}.empty-state-reportes h3{color:#2f2d51;font-size:1.3rem;margin-top:0}.loading-message{color:#5c5f7a;font-weight:600;padding:48px 20px;text-align:center}.crear-reporte-page{background:linear-gradient(180deg,#f5f5ffb3,#fff0 45%);display:flex;justify-content:center;padding:40px 20px 80px}.crear-reporte-card{background:#fff;border:1px solid #6a2de214;border-radius:24px;box-shadow:0 28px 60px #21183e1f;max-width:820px;overflow:hidden;width:100%}.crear-reporte-hero{align-items:center;background:linear-gradient(120deg,#6e45e22e,#88d3ce38);color:#1f1c40;display:flex;gap:24px;padding:32px 42px;position:relative}.hero-text{display:flex;flex-direction:column;gap:6px}.crear-reporte-hero h1{font-size:2rem;margin:0}.crear-reporte-hero p{color:#1f1c40cc;margin:0}.hero-back{background:#ffffffe6;border:1px solid #4a1fad40;border-radius:999px;box-shadow:0 10px 24px #4a1fad2e;color:#4a1fad;cursor:pointer;font-weight:600;padding:8px 18px;transition:transform .2s ease,box-shadow .2s ease}.hero-back:hover{box-shadow:0 12px 28px #4a1fad42;transform:translateY(-1px)}.reporte-section{border-bottom:1px solid #e5e7f4b3;padding:26px 42px}.section-title{color:#211c46;font-size:1.1rem;margin:0 0 18px}.section-heading{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.section-hint{color:#6c6f86;font-size:.92rem}.tipo-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.tipo-card{background:#ffffffe6;border:2px solid #6a2de21f;border-radius:20px;box-shadow:0 12px 26px #6a2de214;cursor:pointer;padding:24px;text-align:left;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.tipo-card h3{color:#221f3b;margin:12px 0 6px}.tipo-card p{color:#5b5f74;margin:0}.tipo-card .tipo-icon{font-size:2.2rem}.tipo-card.active{background:#fff6f8d9;border-color:#ff63848c;box-shadow:0 16px 32px #ff63842e}.grid-2{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.control-label{color:#2b2e43;display:block;font-weight:600;margin-bottom:10px}.reporte-section input,.reporte-section textarea,.select-wrapper select{background:#fffffff2;border:1px solid #94a3b859;border-radius:14px;font-size:.98rem;padding:14px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.reporte-section textarea{min-height:160px;resize:vertical}.select-wrapper{position:relative}.select-wrapper:after{color:#5a5d72;content:"▾";position:absolute;right:18px;top:50%;transform:translateY(-50%)}.select-wrapper select{-webkit-appearance:none;appearance:none}.reporte-section input:focus,.reporte-section textarea:focus,.select-wrapper select:focus{border-color:#6a2de299;box-shadow:0 0 0 4px #6a2de22e;outline:none}.evidencia-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.evidencia-card{background:#6a2de20f;border:2px dashed #6a2de238;border-radius:16px;color:#5a16b8;cursor:pointer;padding:22px 16px;text-align:center;transition:border-color .2s ease,background .2s ease}.evidencia-card span{display:block;font-weight:600;margin-top:8px}.evidencia-card small{color:#5b6074;display:block;margin-top:6px}.evidencia-card:hover{background:#6a2de21f;border-color:#6a2de28c}.evidencia-card svg{font-size:1.6rem}.form-actions{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:26px 42px 40px}.btn-with-icon{align-items:center;display:inline-flex;gap:10px}@media (max-width:768px){.reportes-page{margin:24px auto 96px;padding:0 16px 96px}.reportes-header{align-items:flex-start;flex-direction:column;gap:14px;padding:20px}.reportes-header h1{font-size:1.6rem}.reporte-card{padding:20px 22px}.reporte-footer{align-items:flex-start;flex-direction:column}.fab-report{bottom:20px;right:20px}.crear-reporte-hero{align-items:flex-start;flex-direction:column;gap:16px;padding:28px 24px 32px}.reporte-section{padding:24px}.form-actions{align-items:stretch;flex-direction:column;padding:24px}.form-actions .btn-primary,.form-actions .btn-secondary{justify-content:center;width:100%}}.eventos-page{margin:36px auto 96px;max-width:960px;padding:0 20px 64px}.eventos-header{align-items:center;background:linear-gradient(120deg,#407bff29,#8edbd02e);border-radius:20px;box-shadow:0 18px 42px #407bff2e;display:flex;gap:24px;justify-content:space-between;padding:24px 28px}.eventos-header-left{align-items:center;display:flex;gap:18px}.eventos-icon{align-items:center;background:linear-gradient(135deg,#407bff,#7bd1c5);border-radius:18px;box-shadow:0 14px 30px #407bff47;color:#fff;display:flex;font-size:1.7rem;height:60px;justify-content:center;width:60px}.eventos-header h1{color:#1d2545;font-size:1.9rem;margin:0}.eventos-header p{color:#556078;line-height:1.45;margin:6px 0 0}.eventos-action-btn{align-items:center;background:linear-gradient(115deg,#407bff,#5d8bff);border:none;border-radius:999px;box-shadow:0 14px 36px #407bff47;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:10px;padding:12px 22px;transition:transform .2s ease,box-shadow .2s ease}.eventos-action-btn svg{font-size:.95rem}.eventos-action-btn:hover{box-shadow:0 18px 42px #407bff57;transform:translateY(-2px)}.calendar-card{background:#fff;border:1px solid #407bff1f;border-radius:24px;box-shadow:0 20px 48px #1e293b24;margin-top:28px;overflow:hidden}.calendar-toolbar{align-items:center;display:flex;justify-content:space-between;padding:20px 28px 10px}.calendar-nav-btn{align-items:center;background:#407bff1f;border:none;border-radius:12px;color:#2857d2;cursor:pointer;display:inline-flex;height:42px;justify-content:center;transition:background .2s ease,transform .2s ease;width:42px}.calendar-nav-btn:hover{background:#407bff33;transform:translateY(-1px)}.calendar-month-label{color:#1d2545;font-size:1.3rem;font-weight:700;text-transform:capitalize}.calendar-weekdays{grid-gap:0;color:#6c7289;display:grid;font-size:.78rem;font-weight:600;gap:0;grid-template-columns:repeat(7,1fr);letter-spacing:.06em;padding:0 24px 12px;text-transform:uppercase}.calendar-weekday{text-align:center}.calendar-grid{border-top:1px solid #e2e8f0e6;display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{background:linear-gradient(180deg,#f8faff73,#ffffffe6 45%);border-bottom:1px solid #e2e8f0cc;border-right:1px solid #e2e8f0cc;display:flex;flex-direction:column;gap:8px;min-height:120px;padding:12px 12px 14px;transition:background .2s ease}.calendar-day:nth-child(7n){border-right:none}.calendar-day-number{color:#1f2550;font-weight:700}.calendar-day.is-outside{background:#f9faff8c;color:#98a1b3}.calendar-day.is-outside .calendar-day-number{color:#a6aec0}.calendar-day.is-today{background:linear-gradient(180deg,#407bff26,#ffffffeb 60%);box-shadow:inset 0 0 0 1px #407bff59}.calendar-day.has-events{background:linear-gradient(180deg,#f5f9ff99,#fffffff2 60%)}.calendar-day-events{display:flex;flex:1 1;flex-direction:column;gap:6px}.calendar-event-pill{align-items:center;background:#407bff1f;border-radius:10px;color:#1f2550;display:inline-flex;font-size:.78rem;font-weight:600;overflow:hidden;padding:4px 10px;text-overflow:ellipsis;white-space:nowrap}.event-type-evento{background:#407bff2e;color:#1740c5}.event-type-cita{background:#38bd9438;color:#047857}.event-type-mantenimiento{background:#f9be6c3d;color:#b45309}.event-type-junta{background:#6ea5ff38;color:#1d4ed8}.calendar-event-more{background:#94a3b838;color:#475569}.calendar-empty,.calendar-loading{color:#5c637b;font-weight:600;padding:38px 28px;text-align:center}.next-events-section{background:#fff;border:1px solid #407bff1f;border-radius:24px;box-shadow:0 18px 42px #1e293b1f;margin-top:46px;padding:28px 30px 32px}.next-events-header{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.next-events-header h2{color:#1d2545;font-size:1.4rem;margin:0}.next-events-filters{display:inline-flex;flex-wrap:wrap;gap:10px}.filter-pill{background:#407bff1f;border:1px solid #0000;border-radius:999px;color:#2857d2;cursor:pointer;font-weight:600;padding:7px 18px;transition:all .2s ease}.filter-pill:hover{background:#407bff38}.filter-pill.active{background:linear-gradient(110deg,#407bff,#5d8bff);box-shadow:0 10px 24px #407bff47;color:#fff}.next-events-empty{background:#f3f6ffbf;border-radius:16px;color:#5c637b;font-weight:600;margin-top:24px;padding:36px 20px;text-align:center}.next-events-list{display:flex;flex-direction:column;gap:18px;margin-top:28px}.upcoming-event-card{border:1px solid #e2e8f0b3;border-radius:18px;box-shadow:inset 0 0 0 1px #fff6;padding:18px 22px;position:relative}.upcoming-event-title{font-size:1.05rem;font-weight:700;margin-bottom:10px}.upcoming-event-meta{color:#374151;display:flex;flex-wrap:wrap;font-weight:500;gap:14px 22px}.next-events-section .meta-item{align-items:center;display:inline-flex;gap:8px}.upcoming-event-meta .meta-item svg{color:inherit}.upcoming-event-card.event-type-evento{background:#3b82f61f;color:#1d4ed8}.upcoming-event-card.event-type-cita{background:#10b98126;color:#047857}.upcoming-event-card.event-type-mantenimiento{background:#f9b42d2e;color:#b45309}.upcoming-event-card.event-type-junta{background:#7dd3fc2e;color:#1d4ed8}.upcoming-event-card.event-type-cita .meta-item,.upcoming-event-card.event-type-evento .meta-item,.upcoming-event-card.event-type-junta .meta-item,.upcoming-event-card.event-type-mantenimiento .meta-item{color:#111827b8}.upcoming-event-overlay{background:#0000;border:none;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0}@media (max-width:900px){.calendar-grid,.calendar-weekdays,.eventos-header{overflow-x:auto}.calendar-grid{min-width:620px}.next-events-section{padding:24px 20px 28px}}.schedule-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a66;bottom:0;display:flex;justify-content:center;left:0;padding:30px 16px;position:fixed;right:0;top:0;z-index:80}.schedule-modal{background:#fff;border:1px solid #94a3b838;border-radius:24px;box-shadow:0 30px 70px #0f172a38;overflow:hidden;width:min(620px,100%)}.schedule-modal-header{align-items:center;background:linear-gradient(120deg,#407bff2e,#8edbd033);color:#1d2545;display:flex;justify-content:space-between;padding:22px 28px 18px}.schedule-modal-header h2{font-size:1.4rem;margin:0}.schedule-modal-close{background:#ffffffd9;border:none;border-radius:50%;box-shadow:0 10px 25px #0f172a2e;color:#334155;cursor:pointer;font-size:1.4rem;height:32px;line-height:1;width:32px}.schedule-modal-close:hover{transform:translateY(-1px)}.schedule-form{display:flex;flex-direction:column;gap:24px;padding:24px 28px 30px}.schedule-form-grid{display:flex;flex-direction:column;gap:20px}.schedule-field{color:#1f2937;display:flex;flex-direction:column;gap:8px}.schedule-field span{font-weight:600}.schedule-field input,.schedule-field textarea{border:1px solid #94a3b880;border-radius:14px;font-family:inherit;font-size:.95rem;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease}.schedule-field input:focus,.schedule-field textarea:focus{border-color:#407bff;box-shadow:0 0 0 3px #407bff2e;outline:none}.schedule-field textarea{resize:vertical}.schedule-field-inline{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.schedule-type-switch{display:inline-flex;flex-wrap:wrap;gap:10px}.type-pill{background:#407bff1f;border:1px solid #407bff33;border-radius:999px;color:#1e3a8a;cursor:pointer;font-weight:600;padding:8px 18px;transition:all .2s ease}.type-pill.active{background:linear-gradient(120deg,#407bff,#5d8bff);border-color:#0000;box-shadow:0 12px 24px #407bff40;color:#fff}.type-pill:hover{transform:translateY(-1px)}.schedule-form-actions{display:flex;gap:14px;justify-content:flex-end}.schedule-form-actions button{border:none;border-radius:999px;cursor:pointer;font-weight:600;padding:10px 22px}.schedule-form-actions .secondary{background:#94a3b82e;color:#475569}.schedule-form-actions .primary{background:linear-gradient(120deg,#407bff,#5d8bff);box-shadow:0 15px 30px #407bff47;color:#fff}.schedule-form-actions .primary:disabled{background:#94a3b873;box-shadow:none;cursor:not-allowed}@media (max-width:540px){.schedule-form{padding:20px 18px 24px}.schedule-field-inline{grid-template-columns:1fr}}.user-layout{background-color:#f4f7f6;display:flex;flex-direction:column;height:100vh}.user-header{background-color:#2c3e50;color:#fff;font-size:1.3rem;font-weight:600;padding:15px 0;text-align:center}.user-content{flex-grow:1;overflow-y:auto;padding:30px}.user-layout .main-nav{background-color:#34495e;border-radius:12px;box-shadow:0 2px 4px #0003;margin:12px auto;padding:6px;width:calc(100% - 48px)}.user-layout .nav-list{display:flex;flex-wrap:nowrap;justify-content:center;list-style:none;margin:0;overflow-x:auto;padding:0 6px}.user-layout .nav-link{align-items:center;border-radius:999px;color:#ecf0f1;display:flex;gap:8px;margin:0;padding:10px 16px;text-decoration:none;transition:background-color .2s,box-shadow .2s}.user-layout .nav-link:hover{background-color:#4a627a}.user-layout .nav-link.active{background-color:#1abc9c;box-shadow:0 4px 10px #1abc9c59;color:#fff;font-weight:600;transform:none}.restriccion-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px}.restriccion-loading .spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:48px;width:48px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.restriccion-bloqueada{align-items:center;background:linear-gradient(135deg,#f5f5f5,#e9e9e9);display:flex;justify-content:center;min-height:500px;padding:24px}.restriccion-card{background:#fff;border:2px solid #ffebee;border-radius:16px;box-shadow:0 8px 24px #0000001f;max-width:600px;padding:48px 40px;text-align:center}.restriccion-icon{animation:pulse 2s ease-in-out infinite;font-size:72px;margin-bottom:24px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.restriccion-card h2{color:#d32f2f;font-size:28px;font-weight:700;margin-bottom:16px}.restriccion-message{color:#555;font-size:18px;line-height:1.6;margin-bottom:32px}.restriccion-details{background:#fff3e0;border-left:4px solid #ff9800;border-radius:8px;margin-bottom:24px;padding:20px}.adeudo-info{align-items:center;display:flex;font-size:18px;justify-content:space-between}.adeudo-info strong{color:#333}.adeudo-amount{color:#d32f2f;font-size:24px;font-weight:700}.restriccion-help{color:#777;font-size:15px;line-height:1.6;margin-bottom:32px;padding:0 20px}.btn-volver{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 40px;transition:all .3s ease}.btn-volver:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.btn-volver:active{transform:translateY(0)}@media (max-width:768px){.restriccion-card{padding:32px 24px}.restriccion-icon{font-size:56px}.restriccion-card h2{font-size:24px}.restriccion-message{font-size:16px}.adeudo-amount{font-size:20px}.btn-volver{font-size:15px;padding:12px 32px}}.finanzas-usuario-page{margin:0 auto;max-width:1400px;padding:20px}.card-header-with-help{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.card-header-with-help h2{align-items:center;display:flex;gap:10px;margin:0}.section-icon{color:#667eea;font-size:1.3rem}.help-icon-wrapper{cursor:help;transition:transform .2s ease}.help-icon-wrapper:hover{transform:scale(1.2)}.help-icon{color:#6c757d;font-size:1.2rem;opacity:.7;transition:opacity .2s ease,color .2s ease}.help-icon-wrapper:hover .help-icon{color:#667eea;opacity:1}.config-financiera-card{background:#fff;border-left:4px solid #667eea;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.config-financiera-card h2{color:#2c3e50;font-size:1.4rem;font-weight:600}.config-content{display:flex;flex-direction:column;gap:16px}.config-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.config-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:16px;transition:all .2s ease}.config-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.config-label-with-icon{align-items:center;display:flex;gap:8px}.config-icon{color:#667eea;font-size:1rem}.config-icon.warning{color:#ff6b6b}.config-label{color:#6c757d;font-size:.85rem;font-weight:500;letter-spacing:.3px;text-transform:uppercase}.config-value{color:#2c3e50;font-size:1.1rem;font-weight:600;margin-left:28px}.config-value.highlight{color:#667eea;font-size:1.3rem}.config-value.warning{color:#ff6b6b}.config-value.disabled{color:#a0a0a0;font-style:italic}.config-note{background:#e7f3ff;border-left:3px solid #4dabf7;border-radius:6px;margin-top:8px;padding:12px 16px}.config-note small{color:#1971c2;font-size:.9rem;line-height:1.5}.config-item.clickable{transition:background-color .2s ease}.config-item.clickable:hover{background-color:#f8f9fa;border-radius:8px;margin:-8px;padding:8px}.multas-detalle-container{animation:slideDown .3s ease;background:#f8f9fa;border-left:3px solid #ff6b6b;border-radius:8px;margin-left:28px;margin-top:16px;padding:16px}.multas-detalle-header{color:#495057;font-size:.95rem;margin-bottom:12px}.multas-list{display:flex;flex-direction:column;gap:10px}.multa-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:12px;transition:box-shadow .2s ease}.multa-item:hover{box-shadow:0 2px 4px #0000001a}.multa-descripcion{align-items:center;display:flex;flex:1 1;gap:8px}.multa-numero{color:#ff6b6b;font-size:.9rem;font-weight:600}.multa-text{color:#495057;font-size:.95rem}.multa-monto{color:#ff6b6b;font-size:1.1rem;font-weight:600;margin-left:16px;white-space:nowrap}.estado-cuenta-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:32px;padding:24px}.estado-cuenta-card h2{color:#2c3e50;font-size:1.5rem;font-weight:600;margin-bottom:20px}.estado-cuenta-content{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:28px}.estado-info{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{display:flex;flex-direction:column;gap:8px}.info-label-with-icon{align-items:center;display:flex;gap:8px}.info-icon{font-size:1rem;opacity:.9}.info-label{font-size:.9rem;font-weight:500;opacity:.9}.info-value{font-size:1.3rem;font-weight:700}.adeudo-pendiente{color:#ff6b6b}.sin-adeudo{color:#51cf66}.saldo-favor{color:#10b981;font-weight:700}.meses-mora{color:#ff6b6b;font-weight:700}.sin-mora{color:#51cf66;font-weight:700}.estado-badge{border-radius:20px;display:inline-block;font-size:.95rem;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.estado-badge.al-corriente{background:#51cf6633;border:2px solid #51cf66;color:#51cf66}.estado-badge.moroso{background:#ff6b6b33;border:2px solid #ff6b6b;color:#ff6b6b}.notificaciones-pago-card{background:#fff;border-left:4px solid #51cf66;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:32px;padding:24px}.notificaciones-pago-card h2{color:#2c3e50;font-size:1.3rem;font-weight:600;margin-bottom:20px}.notif-badge{align-items:center;background:#51cf66;border-radius:50%;color:#fff;display:inline-block;display:flex;font-size:.9rem;font-weight:700;height:28px;justify-content:center;width:28px}.notificaciones-list{display:flex;flex-direction:column;gap:12px}.notificacion-item{align-items:flex-start;background:#f0f9f5;border:1px solid #c3fae8;border-radius:8px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.notificacion-item:hover{box-shadow:0 2px 8px #51cf6633;transform:translateX(4px)}.notificacion-item.pago-notif{border-left:3px solid #51cf66}.notif-icon{flex-shrink:0;font-size:1.5rem;line-height:1}.notif-content{flex:1 1}.notif-content h4{color:#2c3e50;font-size:1rem;margin:0 0 4px}.notif-content p{color:#495057;font-size:.95rem;margin:0 0 6px}.notif-content small{color:#6c757d;font-size:.85rem}.notif-amount{color:#51cf66;font-size:1.1rem;font-weight:700;white-space:nowrap}.recibos-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.pagos-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}@media (max-width:1100px){.pagos-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.pagos-grid{grid-template-columns:1fr}}.pagos-toggle-btn{align-items:center;background:#fff;border:1px solid #ced4da;border-radius:999px;box-shadow:0 2px 6px #00000014;color:#34495e;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;margin:16px auto 0;padding:10px 16px;transition:all .2s ease}.pagos-toggle-btn:hover{border-color:#667eea;box-shadow:0 4px 10px #0000001f;color:#3f51b5}.pagos-toggle-btn svg{font-size:1rem}.pago-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;padding:18px;transition:all .25s ease}.pago-card.ultimo-pago{background:linear-gradient(135deg,#f8fff9,#e8f5e9);border:2px solid #4caf50;box-shadow:0 4px 12px #4caf5026}.pago-card:hover{border-color:#667eea;box-shadow:0 8px 16px #0000001f;transform:translateY(-3px)}.pago-card.ultimo-pago:hover{border-color:#4caf50;box-shadow:0 8px 20px #4caf5040}.badge-ultimo{background:#4caf50;border-radius:12px;box-shadow:0 2px 4px #4caf504d;color:#fff;display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.pago-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.pago-header h3{color:#2c3e50;font-size:1.05rem;margin:0 0 4px}.pago-fecha{align-items:center;color:#6c757d;display:flex;font-size:.9rem;margin:0}.pago-card.ultimo-pago .pago-fecha{color:#2e7d32;font-weight:500}.pago-monto{color:#5c6cff;font-size:1.2rem;font-weight:800;white-space:nowrap}.pago-body{display:flex;flex-direction:column;gap:6px}.pago-detalle{color:#495057;display:flex;font-size:.95rem;justify-content:space-between}.pago-detalle .detalle-label{color:#6c757d}.pago-detalle.observaciones{align-items:flex-start;flex-direction:column;gap:4px}.pago-detalle.observaciones .detalle-value{color:#2c3e50}.recibos-section h2{align-items:center;color:#2c3e50;display:flex;font-size:1.5rem;font-weight:600;gap:12px;margin-bottom:24px}.recibos-section h2 svg{color:#667eea}.recibos-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.recibo-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;cursor:pointer;padding:20px;transition:all .3s ease}.recibo-card:hover{border-color:#667eea;box-shadow:0 8px 16px #00000026;transform:translateY(-4px)}.recibo-header{align-items:flex-start;border-bottom:2px solid #e9ecef;display:flex;gap:12px;margin-bottom:16px;padding-bottom:16px}.recibo-icon{color:#667eea;flex-shrink:0;font-size:2rem}.recibo-info h3{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0 0 4px}.recibo-fecha{color:#6c757d;font-size:.85rem;margin:0}.recibo-body{margin-bottom:16px}.recibo-detalle{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.recibo-detalle.total{border-top:2px solid #e9ecef;margin-top:8px;padding-top:12px}.detalle-label{color:#6c757d;font-size:.9rem;font-weight:500}.detalle-value{color:#2c3e50;font-size:1rem;font-weight:600}.detalle-value.monto{color:#495057}.detalle-value.descuento{color:#ff6b6b}.recibo-detalle.total .detalle-value{color:#667eea;font-size:1.3rem}.recibo-footer{display:flex;justify-content:center}.btn-ver-recibo{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.btn-ver-recibo:hover{box-shadow:0 4px 12px #667eea66;transform:scale(1.05)}.empty-state{color:#6c757d;padding:60px 20px;text-align:center}.empty-icon{color:#dee2e6;font-size:4rem;margin-bottom:16px}.empty-state p{color:#495057;font-size:1.2rem;margin-bottom:8px}.empty-state small{color:#6c757d;font-size:.9rem}.recibo-modal{max-height:90vh;max-width:800px;overflow-y:auto;padding:0}.recibo-preview{background:#fff;padding:32px}.recibo-preview-header{border-bottom:3px solid #667eea;margin-bottom:24px;padding-bottom:20px;text-align:center}.recibo-preview-header h2{color:#2c3e50;font-size:1.8rem;margin:0 0 8px}.recibo-numero{color:#6c757d;font-size:.95rem;margin:0}.recibo-preview-body{padding:20px 0}.preview-section{background:#f8f9fa;border-radius:8px;margin-bottom:24px;padding:16px}.preview-section h3{color:#667eea;font-size:1.1rem;font-weight:600;margin:0 0 12px}.preview-section p{color:#495057;font-size:.95rem;margin:8px 0}.preview-section.totales{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px}.preview-section.totales h3{color:#fff}.total-line{display:flex;font-size:1rem;justify-content:space-between;padding:8px 0}.total-line.descuento{color:#ffffffe6;font-size:.95rem}.total-line.final{border-top:2px solid #ffffff4d;font-size:1.3rem;font-weight:700;margin-top:12px;padding-top:12px}.recibo-actions{background:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:12px;padding:20px 32px}.btn-action{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .3s ease}.btn-print{background:#667eea;color:#fff}.btn-print:hover{background:#5568d3;box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-download{background:#51cf66;color:#fff}.btn-download:hover{background:#40c057;box-shadow:0 4px 12px #51cf664d;transform:translateY(-2px)}.loading-text{color:#6c757d;font-size:1.1rem;padding:40px;text-align:center}@media (max-width:768px){.finanzas-usuario-page{padding:12px}.estado-info,.recibos-grid{grid-template-columns:1fr}.recibo-actions{flex-direction:column}.recibo-preview{padding:20px}}@media print{.btn-ver-recibo,.modal-close,.recibo-actions{display:none!important}.recibo-preview{border:none;box-shadow:none}.modal-content,.modal-overlay{background:#fff;position:static}}.resident-va-page{display:flex;flex-direction:column;gap:24px;margin:0 auto;max-width:960px;padding:24px}.resident-va-hero{align-items:center;background:#f4f7ff;border-radius:20px;box-shadow:0 12px 30px #0d217b14;display:flex;gap:16px;padding:24px}.resident-va-hero-icon{align-items:center;background:linear-gradient(135deg,#4f7efc,#6aa8ff);border-radius:16px;color:#fff;display:flex;font-size:26px;height:56px;justify-content:center;width:56px}.resident-va-hero h1{color:#0f1c45;font-size:24px;margin:0}.resident-va-hero p{color:#54608c;font-size:15px;margin:4px 0 0}.resident-va-tabs{background:#eef1fb;border-radius:14px;display:inline-flex;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.resident-va-tabs button{background:#0000;border:none;border-radius:10px;color:#5060a3;cursor:pointer;font-weight:600;padding:10px 22px;transition:background .2s ease,color .2s ease}.resident-va-tabs .tab-badge{align-items:center;background:#ff5f6d;border-radius:999px;color:#fff;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;margin-left:8px;min-width:22px;padding:2px 8px}.resident-va-tabs button:hover{background:#fffc}.resident-va-tabs button.active{background:#fff;box-shadow:0 4px 16px #4c6ef52e;color:#1c3dd6}.resident-va-panel{background:#0000}.resident-va-empty{background:#fff;border-radius:18px;box-shadow:0 10px 30px #0f21500f;color:#5a688e;padding:36px;text-align:center}.resident-va-list{display:flex;flex-direction:column;gap:20px}.resident-va-vote-groups{display:flex;flex-direction:column;gap:28px}.resident-va-vote-group{display:flex;flex-direction:column;gap:16px}.resident-va-vote-group h2{color:#0f1c45;font-size:20px;margin:0}.resident-va-vote-group-list{grid-gap:20px;display:grid;gap:20px}.resident-va-info-card{background:#fff8f0;border:1px dashed #ffb266;border-radius:16px;color:#cc6400;font-weight:600;padding:18px;text-align:center}.resident-va-vote-card{background:#fff;border-radius:18px;box-shadow:0 16px 40px #3c56b31a;display:flex;flex-direction:column;gap:16px;padding:24px}.resident-va-vote-header{display:flex;gap:16px;justify-content:space-between}.resident-va-vote-header h3{color:#0f1c45;font-size:20px;margin:0}.resident-va-vote-header p{color:#4f5a7b;margin:8px 0 0}.resident-va-status{align-self:flex-start;border-radius:999px;font-size:13px;font-weight:600;padding:6px 14px}.resident-va-status-activa{background:#e2f8ec;color:#0c8c55}.resident-va-status-programada{background:#fff4d4;color:#c27602}.resident-va-status-vencida{background:#ffe1e1;color:#c73737}.resident-va-meta{color:#516197;display:flex;flex-wrap:wrap;font-size:14px;gap:24px}.resident-va-meta-item{align-items:center;display:inline-flex;gap:8px}.resident-va-progress{display:flex;flex-direction:column;gap:8px}.resident-va-progress-bar{background:#e4e9fb;border-radius:999px;height:10px;overflow:hidden}.resident-va-progress-fill{background:linear-gradient(90deg,#2e5bff,#5a8dff);border-radius:999px;height:100%;transition:width .3s ease}.resident-va-progress-label{color:#516197;font-size:13px;font-weight:600}.resident-va-options{display:flex;flex-wrap:wrap;gap:12px}.resident-va-option{align-items:center;border-radius:14px;display:inline-flex;flex:1 1 180px;font-weight:600;gap:10px;padding:12px 16px}.resident-va-option svg{font-size:18px}.resident-va-option.positive{background:#e8f9ef;color:#17833d}.resident-va-option.negative{background:#ffe9ec;color:#cc2f45}.resident-va-notice{align-items:flex-start;background:#fff;border-radius:18px;box-shadow:0 14px 36px #1a399f14;display:flex;gap:18px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.resident-va-notice.unread{border:1px solid #ff6f6159;box-shadow:0 18px 40px #ff6f6129}.resident-va-notice:hover{box-shadow:0 20px 46px #3f86ff40;transform:translateY(-6px)}.resident-va-notice-icon{align-items:center;border-radius:16px;color:#fff;display:flex;font-size:24px;height:56px;justify-content:center;width:56px}.resident-va-notice-icon.is-warning{background:linear-gradient(135deg,#ff9770,#ff5f6d)}.resident-va-notice-icon.is-info{background:linear-gradient(135deg,#8d9eff,#4d73ff)}.resident-va-notice-icon.is-default{background:linear-gradient(135deg,#6ac8ff,#3f86ff)}.resident-va-notice-body{display:flex;flex:1 1;flex-direction:column;gap:6px}.resident-va-notice-body header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.resident-va-notice-body h3{color:#10204e;font-size:18px;margin:0}.resident-va-notice-body p{color:#4f5a7b;font-size:14px;margin:0}.resident-va-notice-date{color:#7c88b2;font-size:13px}.resident-va-notice-category{color:#6c79a6;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.resident-va-notice-footer{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.resident-va-read-btn{background:linear-gradient(135deg,#4f7efc,#6aa8ff);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:8px 14px;transition:opacity .2s ease}.resident-va-read-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.resident-va-page{padding:16px}.resident-va-vote-header{align-items:flex-start;flex-direction:column}.resident-va-notice{align-items:stretch;flex-direction:column}.resident-va-notice-body header{align-items:flex-start;flex-direction:column}.resident-va-tabs{justify-content:space-between;width:100%}.resident-va-tabs button{flex:1 1;text-align:center}}.caseta-layout{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;min-height:100vh}.caseta-header{background:#fffffff2;border-bottom:3px solid #667eea;box-shadow:0 2px 10px #0000001a;color:#333;font-size:1.3rem;font-weight:700;padding:20px 30px;text-align:center}.caseta-content{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:1400px;padding:30px;width:100%}@media (max-width:768px){.caseta-header{font-size:1.1rem;padding:16px 20px}.caseta-content{padding:20px}}.App{height:100%;text-align:center}.App-header{background-color:#282c34;color:#fff;margin-bottom:30px;padding:20px}main{margin:0 auto;max-width:1600px;text-align:left;width:90%}.dashboard-container{display:flex;flex-wrap:wrap;gap:20px}.dashboard-card{background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a;flex:1 1;min-width:300px;padding:20px;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.dashboard-card:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-5px)}.notification-item,.summary-item{border-bottom:1px solid #eee;border-radius:4px;display:flex;justify-content:space-between;padding:12px 15px;transition:background-color .2s ease-in-out,transform .2s ease-in-out}.notification-item:last-child,.summary-item:last-child{border-bottom:none}.notification-item:hover,.summary-item:hover{background-color:#f8f9fa;transform:translateX(10px)}.notification-item{flex-direction:column}.notification-item p{color:#666;font-size:.9em;margin:5px 0 0}.summary-item.morosos span,.summary-item.morosos strong{color:#d9534f;font-weight:700}.main-nav{background-color:#333;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:10px}.nav-list{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;justify-content:center;list-style-type:none;margin:0;overflow-x:auto;overflow-y:hidden;padding:0 6px;scrollbar-color:#aab4c6 #0000;scrollbar-width:thin}.nav-item{flex:0 0 auto;margin:0}.nav-link{border-radius:6px;color:#fff;display:block;font-size:clamp(12px,.9vw + 8px,16px);font-weight:700;padding:10px 14px;text-decoration:none;transition:transform .2s ease-in-out,background-color .2s ease-in-out}.nav-link:hover{background-color:#ffffff1a;transform:scale(1.07)}.nav-link{align-items:center;display:flex;justify-content:center}.nav-list::-webkit-scrollbar{height:8px}.nav-list::-webkit-scrollbar-track{background:#0000}.nav-list::-webkit-scrollbar-thumb{background-color:#aab4c6b3;border-radius:10px}.dashboard-card h3{align-items:center;border-bottom:1px solid #eee;display:flex;margin-bottom:10px;padding-bottom:10px}.summary-item.summary-divider{border-top:2px solid #eee;margin-top:10px;padding-top:15px!important}.btn-back{align-items:center;background:#f0f2f5;border:1px solid #ddd;border-radius:50%;cursor:pointer;display:flex;font-size:1.5em;height:40px;justify-content:center;min-width:40px;transition:background-color .2s}.btn-back:hover{background-color:#e4e6e9}.section-page{background:linear-gradient(135deg,#5c6cff,#8d54ff);border-radius:28px;box-shadow:0 24px 48px #1610413d;box-sizing:border-box;margin:0;max-width:none;min-height:100vh;padding:48px 32px 64px;width:100%}.section-header{margin-bottom:32px;text-align:center}.section-page .section-header{color:#fff;margin-bottom:36px;text-align:center}.section-title{color:#1f2740;font-size:2.4rem;font-weight:700;margin:0}.section-subtitle{color:#5d6685;font-size:1.05rem;margin:8px 0 0}.section-page .section-title{color:#fff;font-size:2.6rem;letter-spacing:-.01em}.section-page .section-subtitle{color:#ffffffeb;font-size:1.1rem;margin-top:8px}@media (max-width:768px){.section-page{border-radius:22px;padding:32px 20px 48px}.section-title{font-size:2.1rem}.section-page .section-title{font-size:2.2rem}.section-page .section-subtitle{font-size:1rem}}.nav-item-restricted{opacity:.6;position:relative}.nav-link-restricted{background-color:#d32f2f1a!important;color:#ffcdd2!important;cursor:not-allowed!important;pointer-events:auto}.nav-link-restricted:hover{background-color:#d32f2f33!important;transform:scale(1.02)!important}.restricted-badge{font-size:.85em;margin-left:6px;opacity:.9}.nav-item-restricted[title]:hover:after{background:#000000e6;border-radius:6px;bottom:-40px;color:#fff;content:attr(title);font-size:12px;left:50%;padding:6px 12px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}.notification-bar{animation:slideDown .5s ease-out forwards;border-radius:10px;box-shadow:0 4px 15px #0003;color:#fff;font-size:1.1rem;font-weight:700;left:50%;letter-spacing:.4px;padding:18px 32px;position:fixed;text-align:center;top:20px;transform:translateX(-50%);z-index:9999}.notification-bar.success{background-color:#28a745}.notification-bar.error{background-color:#dc3545}.notification-bar.info{background-color:#2196f3}.notification-bar.warning{background-color:#ffb74d;box-shadow:0 6px 20px #ffb74d73;color:#1f1f1f}@keyframes slideDown{0%{opacity:0;top:-100px}to{opacity:1;top:20px}}.notification-bell-container{bottom:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;position:fixed;right:20px;z-index:999}.notification-bell-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:50%;box-shadow:0 4px 12px #10b98166;color:#fff;cursor:pointer;display:flex;font-size:24px;height:56px;justify-content:center;position:relative;transition:all .3s ease;width:56px}.notification-bell-button:hover{box-shadow:0 6px 16px #10b98199;transform:scale(1.1)}.notification-bell-button:active{transform:scale(.95)}.bell-icon{font-size:24px}.notification-badge{align-items:center;background:#ef4444;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;color:#fff;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:absolute;right:-5px;top:-5px;width:24px}.notification-panel{animation:slideUp .3s ease;background:#fff;border-radius:12px;bottom:80px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;max-height:500px;overflow:hidden;position:absolute;right:0;width:400px}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.notification-panel-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px}.notification-panel-header h3{color:#1f2937;font-size:16px;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;padding:0;transition:color .2s ease;width:24px}.close-btn:hover{color:#1f2937}.notification-panel-actions{background:#f0f9ff;border-bottom:1px solid #e5e7eb;padding:12px 16px}.mark-all-read-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 12px;transition:background .2s ease;width:100%}.mark-all-read-btn:hover{background:#2563eb}.notification-list{flex:1 1;max-height:400px;overflow-y:auto}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#f1f5f9}.notification-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.no-notifications{color:#6b7280;padding:40px 16px;text-align:center}.no-notifications p{font-size:14px;margin:0}.notification-item{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;justify-content:space-between;padding:12px 16px;transition:background .2s ease}.notification-item:hover{background:#f9fafb}.notification-item.unread{background:#f0f9ff}.notification-content{flex:1 1;min-width:0}.notification-actions{display:flex;flex-shrink:0;gap:8px}.notification-read-btn{background:none;border:none;color:#6b7280;cursor:pointer;flex-shrink:0;font-size:16px;padding:4px 8px;transition:color .2s ease}.notification-read-btn:hover{color:#3b82f6}.notification-navigate-btn{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;justify-content:center;padding:4px 8px;transition:all .2s ease}.notification-navigate-btn:hover{color:#10b981;transform:translateX(2px)}.notification-title{align-items:center;display:flex;gap:8px;margin-bottom:6px}.notification-title .icon{flex-shrink:0;font-size:18px}.notification-title .title-text{color:#1f2937;font-size:14px;font-weight:600;line-height:1.4;word-break:break-word}.notification-description{color:#4b5563;font-size:13px;line-height:1.5;margin:0 0 6px;word-break:break-word}.notification-time{color:#9ca3af;display:block;font-size:11px}@media (max-width:512px){.notification-bell-container{bottom:16px;right:16px}.notification-panel{max-height:70vh;max-width:400px;width:calc(100vw - 32px)}}
/*# sourceMappingURL=main.4dcd28f5.css.map*/