:root{--primary:#0c67c9;--primary-2:#0875df;--nav:#062e55;--nav-deep:#031f3b;--bg:#f4f7fb;--card:#fff;--text:#10223d;--muted:#6d7b91;--border:#e3e9f1;--danger:#c93030;--warning:#b56c00;--green:#19a968;--purple:#7a45d8;--orange:#ef9c23;--shadow:0 8px 24px rgba(25,50,85,.07)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.icon,.nav-svg,.metric-svg,.quick-svg,.action-icon,.top-icon,.brand-icon,.hero-logo-icon,.login-logo-icon,.input-icon,.btn-icon,.mini-icon,.empty-icon{display:block;width:1em;height:1em}.app-shell{min-height:100vh;display:flex}.sidebar{width:250px;position:fixed;inset:0 auto 0 0;background:linear-gradient(180deg,var(--nav) 0%,var(--nav-deep) 100%);color:#fff;padding:20px 12px;overflow:auto;box-shadow:8px 0 28px rgba(0,24,52,.13)}.brandbox{display:flex;gap:11px;align-items:center;padding:5px 9px 22px;border-bottom:1px solid rgba(255,255,255,.12)}.brandmark{width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.07)}.brand-icon{width:25px;height:25px}.brandname{font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:12px;font-weight:800;line-height:1.15;text-transform:uppercase;max-width:165px}.brandsub{font-size:11px;color:#bad0e8;margin-top:4px}.side-nav{display:grid;gap:3px;padding-top:13px}.side-nav a{min-height:39px;padding:9px 10px;border-radius:7px;display:flex;align-items:center;gap:10px;font-size:13px;color:#e2edf8;transition:.16s;position:relative}.side-nav a:hover,.side-nav a.active{background:#0875df;color:#fff}.nav-svg{width:16px;height:16px;flex:0 0 auto}.nav-count{margin-left:auto;background:#0875df;border:1px solid rgba(255,255,255,.24);min-width:20px;height:20px;padding:0 5px;border-radius:6px;display:grid;place-items:center;font-size:10px}.logout-link{margin-top:10px;border-top:1px solid rgba(255,255,255,.1);border-radius:0!important;padding-top:15px!important}.main-area{margin-left:250px;width:calc(100% - 250px)}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 25px;position:sticky;top:0;z-index:10}.topbar-left{display:flex;align-items:center;gap:12px}.page-title{font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:15px;font-weight:800}.top-subtitle{font-size:11px;color:var(--muted);margin-top:2px}.top-actions{display:flex;align-items:center;gap:13px}.icon-button{border:0;background:transparent;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;position:relative;color:var(--text);cursor:pointer}.icon-button:hover{background:#f2f6fb}.top-icon{width:17px;height:17px}.notify-dot{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:#e23b3b;border:1px solid #fff}.top-user{display:flex;align-items:center;gap:9px}.avatar{width:38px;height:38px;border-radius:50%;background:#e8f2ff;color:var(--primary);display:grid;place-items:center;font-weight:850;border:2px solid #fff;box-shadow:0 2px 8px rgba(15,63,115,.14)}.top-user strong{font-size:12px}.top-user small{display:block;color:var(--muted);text-transform:capitalize;font-size:10px;margin-top:1px}.content{padding:22px 24px 38px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.page-head h1{font-family:"Montserrat",Helvetica,Arial,sans-serif;margin:0 0 5px;font-size:24px;letter-spacing:-.02em}.muted{color:var(--muted)}.btn{font-family:"Montserrat",Helvetica,Arial,sans-serif;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:6px;background:linear-gradient(180deg,#0875df,#0564bf);color:#fff;padding:10px 14px;font-weight:700;font-size:12px;cursor:pointer;box-shadow:0 4px 10px rgba(12,103,201,.16)}.btn:hover{filter:brightness(.97)}.btn.secondary{background:#fff;color:var(--text);border:1px solid #d5deea;box-shadow:none}.btn.danger{background:#b42318}.btn.small{padding:7px 9px;font-size:12px}.btn-icon{width:15px;height:15px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric-card,.card{background:var(--card);border:1px solid var(--border);border-radius:9px;box-shadow:var(--shadow)}.metric-card{padding:16px}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.metric-label{font-size:11px;color:#26364d;margin-bottom:9px;font-weight:650}.metric-value{font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:27px;font-weight:850;letter-spacing:-.03em}.metric-value.compact{font-size:19px}.metric-state{margin:7px 0 8px}.metric-detail{font-size:10px;color:var(--muted);margin-top:6px}.metric-icon,.quick-icon{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto}.metric-svg,.quick-svg{width:20px;height:20px}.tone-green{background:#e5f8ef!important;color:var(--green)!important}.tone-blue{background:#eaf3ff!important;color:#1f73dc!important}.tone-purple{background:#f1eaff!important;color:var(--purple)!important}.tone-orange{background:#fff3df!important;color:var(--orange)!important}.dashboard-grid{display:grid;grid-template-columns:1.65fr .72fr;gap:14px}.member-grid{grid-template-columns:1.2fr .8fr}.card{padding:17px}.card h2{font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:15px;margin:0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick{border:1px solid var(--border);border-radius:8px;padding:12px;background:#fff;transition:.16s;display:flex;gap:10px;align-items:flex-start}.quick:hover{border-color:#b7cce6;background:#fbfdff}.quick strong{display:block;font-size:12px;margin-bottom:3px}.quick .muted{display:block;font-size:10px;line-height:1.35}.summary-list{display:grid}.summary-list div{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #edf1f5;font-size:12px}.summary-list div:last-child{border-bottom:0}.summary-list strong{font-size:13px}.text-warn{color:#c47500}.badge{display:inline-flex;align-items:center;border-radius:5px;padding:5px 8px;font-size:10px;font-weight:750;background:#e9f2ff;color:#175ca8}.badge.ok{background:#dcf6e9;color:#087443}.badge.warn{background:#fff0cc;color:#8b5a00}.badge.danger{background:#ffe2e0;color:#a5241c}.badge.gray{background:#edf0f4;color:#5b6471}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:13px}.toolbar input,.toolbar select{height:38px}.toolbar select{max-width:180px}.search-wrap,.input-icon-wrap{position:relative;display:flex;align-items:center}.search-wrap{flex:1;min-width:260px}.search-wrap .input-icon,.input-icon-wrap .input-icon{position:absolute;left:12px;width:16px;height:16px;color:#8794a7;pointer-events:none}.search-wrap input,.input-icon-wrap input{padding-left:38px!important}.table-card{padding:13px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--border);border-radius:7px}.table-wrap.no-shadow{box-shadow:none}.data-table{width:100%;border-collapse:collapse;min-width:920px}.data-table th{font-size:10px;color:#2b3b50;background:#f8fafc;font-weight:750}.data-table th,.data-table td{padding:12px 11px;text-align:left;border-bottom:1px solid #edf1f5}.data-table td{font-size:11px}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfdff}.row-actions{display:flex;gap:5px}.row-actions button{width:29px;height:29px;border:1px solid #dce4ee;border-radius:6px;background:#fff;display:grid;place-items:center;color:#263a54;cursor:pointer}.row-actions button:hover{background:#f3f7fb}.action-icon{width:14px;height:14px}.form-card{max-width:950px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field-gap{margin-top:14px}.field label{font-size:12px;font-weight:700}.field input,.field select,.field textarea,.toolbar input,.toolbar select{width:100%;border:1px solid #cfd8e6;background:#fff;border-radius:7px;padding:10px 11px;color:var(--text);outline:none}.field input:focus,.field select:focus,.field textarea:focus,.toolbar input:focus,.toolbar select:focus{border-color:#6f9bed;box-shadow:0 0 0 3px rgba(43,118,246,.1)}.field textarea{min-height:92px;resize:vertical}.check-row{display:flex;align-items:center;gap:9px;margin-top:8px}.check-row input{width:auto}.alert{padding:11px 13px;border-radius:7px;margin-bottom:14px;background:#fff0ef;color:#9f2721;border:1px solid #ffd2ce;font-size:12px}.success{background:#e9f8f0;color:#0b7144;border-color:#c7eed9}.member-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.member-quick-grid a{border:1px solid var(--border);border-radius:8px;padding:11px 7px;display:grid;place-items:center;text-align:center;gap:7px;min-height:94px}.member-quick-grid a:hover{background:#fbfdff;border-color:#bfd0e6}.member-quick-grid strong{font-size:10px}.empty-state{min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted);gap:8px}.empty-state strong{font-size:13px;color:var(--text)}.empty-state span{font-size:11px}.empty-icon{width:34px;height:34px;color:#91a0b5}.text-link{font-size:11px;color:var(--primary);font-weight:700}.login-page{min-height:100vh;display:grid;grid-template-columns:1.06fr .94fr;background:#f2f5f9}.login-hero{position:relative;display:flex;align-items:center;justify-content:center;padding:7vw 6vw;color:#fff;overflow:hidden;background:linear-gradient(135deg,#083664,#0a5ba5)}.login-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 85%,rgba(255,255,255,.14),transparent 30%),linear-gradient(120deg,transparent 45%,rgba(255,255,255,.07));}.login-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,29,59,.05),rgba(0,29,59,.2))}.login-content{position:relative;z-index:2;text-align:center;max-width:480px}.hero-logo{width:82px;height:82px;margin:0 auto 22px;border:2px solid rgba(255,255,255,.8);border-radius:22px;display:grid;place-items:center;background:rgba(255,255,255,.08)}.hero-logo-icon{width:50px;height:50px}.hero-kicker{font-size:14px;font-weight:800;letter-spacing:.08em}.login-hero h1{font-size:32px;line-height:1.18;margin:14px 0 12px}.login-hero p{color:#dbe9f6;font-size:15px}.hero-trust{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:27px}.hero-trust span{display:flex;align-items:center;gap:6px;font-size:11px;color:#e5f1fb}.mini-icon{width:14px;height:14px}.login-panel{display:flex;align-items:center;justify-content:center;padding:35px;background:#f7f9fc}.login-box{width:100%;max-width:430px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:31px;box-shadow:0 18px 50px rgba(25,55,96,.12)}.login-brandline{display:flex;align-items:center;gap:11px;margin-bottom:23px}.login-logo{width:48px;height:48px;border-radius:11px;background:#eaf3ff;color:var(--primary);display:grid;place-items:center}.login-logo-icon{width:27px;height:27px}.login-brandline strong{display:block;font-size:13px}.login-brandline span{font-size:10px;color:var(--muted)}.login-box h2{font-size:24px;margin:0 0 7px}.login-box>p{font-size:12px}.login-submit{width:100%;margin-top:15px;padding:12px}.login-links{display:flex;justify-content:space-between;margin-top:16px;font-size:11px;color:var(--primary);font-weight:650}.login-note{text-align:center;color:var(--muted);font-size:10px;margin-top:18px;border-top:1px solid var(--border);padding-top:15px;display:flex;align-items:center;justify-content:center;gap:5px}.mobile-toggle{display:none}.empty{padding:28px;text-align:center;color:var(--muted)}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.member-grid{grid-template-columns:1fr}.login-hero h1{font-size:29px}}@media(max-width:780px){.sidebar{transform:translateX(-100%);transition:.2s;z-index:30}.sidebar.open{transform:translateX(0)}.main-area{margin-left:0;width:100%}.mobile-toggle{display:block;border:0;background:none;font-size:22px}.topbar{padding:0 14px}.content{padding:18px 13px}.metrics{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.login-page{grid-template-columns:1fr}.login-hero{display:none}.page-head{flex-direction:column;align-items:flex-start}.top-user .who{display:none}.quick-grid{grid-template-columns:1fr}.member-quick-grid{grid-template-columns:repeat(2,1fr)}.login-panel{padding:17px}.login-box{padding:24px}.toolbar select{max-width:none;flex:1}.search-wrap{min-width:100%}}

/* v0.5 typography and demo refinements */
.side-nav a,.metric-label,.quick strong,.data-table th,.badge,.top-user strong{font-family:"Montserrat",Helvetica,Arial,sans-serif}.demo-strip{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 14px;margin-bottom:15px;border:1px solid #cfe1f6;background:#eff7ff;border-radius:8px;font-size:11px;color:#24527d}.demo-strip strong{font-family:"Montserrat",Helvetica,Arial,sans-serif}.demo-credentials{display:flex;gap:8px;flex-wrap:wrap}.demo-chip{background:#fff;border:1px solid #d5e4f4;border-radius:6px;padding:5px 8px}.member-payment-list{display:grid}.member-payment-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid #edf1f5}.member-payment-row:last-child{border-bottom:0}.member-payment-row strong{font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:12px}.member-payment-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.member-payment-amount{text-align:right}.login-box h2,.login-content h1,.hero-kicker,.login-brandline strong{font-family:"Montserrat",Helvetica,Arial,sans-serif}@media(max-width:700px){.demo-strip{align-items:flex-start;flex-direction:column}}

/* v0.6 payment methods and connected member shortcuts */
.page-actions{display:flex;gap:9px;flex-wrap:wrap}.payment-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.payment-option{display:flex;flex-direction:column;gap:15px}.payment-option-head{display:flex;align-items:center;gap:12px}.payment-option-head h2{margin:0 0 3px}.payment-ready p{font-size:12px;color:var(--muted)}.bank-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--border);border-radius:8px;overflow:hidden}.bank-data>div{position:relative;padding:12px;border-bottom:1px solid var(--border);background:#fbfcfe}.bank-data>div:nth-child(odd){border-right:1px solid var(--border)}.bank-data span,.profile-grid span{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.bank-data strong,.profile-grid strong{font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:12px;word-break:break-word}.copy-btn{margin-top:7px;border:1px solid #cfd8e6;background:#fff;border-radius:6px;padding:5px 8px;color:var(--primary);font-size:10px;font-weight:700;cursor:pointer}.copy-btn.copied{background:#e5f8ef;color:#087443}.viz-note{margin-top:14px;padding:11px 13px;border-left:3px solid var(--primary);background:#f3f8ff;border-radius:0 7px 7px 0;color:#3b506a;font-size:11px;line-height:1.5}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-grid>div{padding:13px;border:1px solid var(--border);border-radius:8px;background:#fbfcfe}.notice-list>div{display:flex;gap:12px;align-items:flex-start}.notice-list p{font-size:11px;color:var(--muted);margin:4px 0}.empty-state.compact{min-height:125px}.member-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:900px){.payment-method-grid{grid-template-columns:1fr}.member-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.bank-data,.profile-grid{grid-template-columns:1fr}.bank-data>div:nth-child(odd){border-right:0}.page-actions{width:100%}.page-actions .btn{flex:1}.member-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v0.7 medios de pago, seguridad y permisos */
.flash-alert{margin-bottom:14px}.settings-divider{height:1px;background:var(--border);margin:26px 0}.security-note{margin-top:15px;padding:12px 14px;border:1px solid #d7e5f7;background:#f5f9ff;border-radius:8px;color:#38516d;font-size:11px;line-height:1.55}.account-detail-list{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}.account-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;align-items:center;padding:13px 15px;border-bottom:1px solid var(--border)}.account-row:last-child{border-bottom:0}.account-row>span{color:var(--muted);font-size:11px;font-weight:650}.account-row strong{font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:12px;word-break:break-word}.account-copy>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.copy-btn{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;margin:0;border:1px solid #bdd1eb;background:#f6faff;border-radius:7px;padding:7px 10px;color:#075fb7;font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:10px;font-weight:700;cursor:pointer}.copy-btn:hover{background:#eaf4ff}.copy-icon{width:13px;height:13px}.copy-btn.copied{background:#e5f8ef;border-color:#bce9d3;color:#087443}.mp-account{margin-top:2px}.verification-warning{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border:1px solid #f4d69c;background:#fff9ed;border-radius:8px;color:#704b08}.verification-warning strong{display:block;font-family:"Montserrat",Helvetica,Arial,sans-serif;font-size:11px;margin-bottom:3px}.verification-warning span{display:block;font-size:10px;line-height:1.45}.warning-icon{width:18px;height:18px;flex:0 0 auto;color:#d48a00}.form-warning{margin-top:17px}.payment-option{min-width:0}.payment-option .btn{align-self:flex-start}.payment-settings-form{max-width:1000px}@media(max-width:650px){.account-row{grid-template-columns:1fr;gap:5px}.account-copy>div{align-items:flex-start;flex-direction:column}.copy-btn{width:100%;justify-content:center}.payment-option .btn{width:100%;justify-content:center}}

/* v0.8 - bandejas operativas */
.status-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.status-tabs a{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #dbe3ef;border-radius:10px;background:#fff;color:#40506a;text-decoration:none;font-weight:700;font-family:Montserrat,Arial,sans-serif}.status-tabs a span{min-width:24px;padding:2px 7px;border-radius:999px;background:#eef3fa;text-align:center;font-size:12px}.status-tabs a.active{background:#1f55a5;color:#fff;border-color:#1f55a5}.status-tabs a.active span{background:rgba(255,255,255,.18)}
.review-list{display:grid;gap:14px}.review-card{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:22px;padding:20px}.review-title{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.review-title>div{display:grid;gap:4px}.review-title strong{font:700 17px Montserrat,Arial,sans-serif;color:#17233a}.review-title span:not(.badge){font-size:13px;color:#738198}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.review-grid>div{padding:11px 12px;border:1px solid #e4e9f1;border-radius:10px;background:#fafbfd;display:grid;gap:4px}.review-grid small{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#7b8799}.review-grid strong{font-size:13px;overflow-wrap:anywhere}.review-side{display:flex;flex-direction:column;justify-content:center;gap:10px;border-left:1px solid #e5eaf1;padding-left:20px}.full-btn{width:100%;justify-content:center}.review-note,.review-result{margin-top:12px;padding:11px 13px;border-radius:9px;font-size:13px;line-height:1.45}.review-note{background:#f6f8fb;border:1px solid #e2e8f0}.review-result{background:#fff8e8;border:1px solid #f3dfaa}.review-result span{color:#68758a}
.badge.info{background:#e9f2ff;color:#245ca8}
.review-dialog{width:min(620px,calc(100% - 28px));border:0;border-radius:16px;padding:0;box-shadow:0 24px 80px rgba(18,32,56,.28)}.review-dialog::backdrop{background:rgba(12,22,40,.58)}.review-dialog form{padding:22px}.dialog-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.dialog-head h2{margin:0 0 5px;font:700 20px Montserrat,Arial,sans-serif}.dialog-head p{margin:0;color:#6f7c91}.dialog-close{border:0;background:#eef2f7;border-radius:50%;width:34px;height:34px;font-size:23px;line-height:1;cursor:pointer}.decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.decision-grid label{cursor:pointer}.decision-grid input{position:absolute;opacity:0;pointer-events:none}.decision{display:flex;align-items:center;justify-content:center;min-height:48px;border:2px solid #dfe5ed;border-radius:10px;font-weight:700}.decision-grid input:checked+.approved{border-color:#2d9b62;background:#eaf8f1;color:#207348}.decision-grid input:checked+.observed{border-color:#d99a22;background:#fff7e5;color:#986713}.decision-grid input:checked+.rejected{border-color:#d65252;background:#fff0f0;color:#a93434}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
@media(max-width:900px){.review-card{grid-template-columns:1fr}.review-side{border-left:0;border-top:1px solid #e5eaf1;padding:16px 0 0}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.review-grid,.decision-grid{grid-template-columns:1fr}.review-title{flex-direction:column}}

/* v0.9 - documentación y avisos */
.document-list,.notice-stack{display:grid;gap:14px}.document-card{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px;align-items:center}.document-main{display:flex;gap:14px;align-items:flex-start}.document-icon,.notice-symbol{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#eef5ff;color:#1f55a5;flex:0 0 auto}.document-main h2{margin:0 0 5px;font-size:16px}.document-main p{margin:0;color:var(--muted);font-size:12px}.required-star{display:inline-flex;margin-left:8px;padding:3px 7px;border-radius:999px;background:#fff0e8;color:#a84d1d;font-size:9px;text-transform:uppercase}.document-meta{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:10px;color:var(--muted);font-size:10px}.document-actions{display:grid;gap:9px}.document-actions form{display:grid;grid-template-columns:1fr auto;gap:8px}.file-picker input{position:absolute;opacity:0;pointer-events:none}.file-picker span{display:flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 12px;border:1px dashed #aabbd1;border-radius:8px;background:#f8fbff;color:#315b8c;font-weight:700;cursor:pointer;font-size:11px}.notice-card{display:flex;gap:14px;align-items:flex-start}.notice-card.unread{border-left:4px solid #1f55a5;background:#f8fbff}.notice-card.read{opacity:.78}.notice-body{flex:1}.notice-heading{display:flex;justify-content:space-between;gap:15px}.notice-heading strong{font-family:Montserrat,Arial,sans-serif}.notice-heading span{font-size:10px;color:var(--muted)}.notice-body p{margin:7px 0 10px;color:#526178;font-size:12px;line-height:1.55}.notice-body form{margin:0}.notice-body .text-link{border:0;background:none;padding:0;cursor:pointer}.bell-link{position:relative;text-decoration:none}.notify-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#db3c3c;color:#fff;font:700 10px/18px Montserrat,Arial,sans-serif;text-align:center;border:2px solid #fff}@media(max-width:800px){.document-card{grid-template-columns:1fr}.document-actions form{grid-template-columns:1fr}.notice-heading{flex-direction:column;gap:4px}}
/* v1.0 cierre panel matriculado */
.document-current,.document-submission{padding:14px;border:1px solid #dce5ef;border-radius:12px;margin:12px 0;display:flex;gap:8px;flex-direction:column}.document-current{background:#f3fbf7}.document-submission{background:#f7f9fc}.document-upload{display:grid;gap:12px;margin-top:14px}.dashboard-announcements{display:grid;gap:12px;margin-bottom:18px}.dashboard-announcement{display:flex;justify-content:space-between;gap:20px;padding:18px 20px;border-radius:14px;border-left:5px solid #3182ce;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.06)}.dashboard-announcement.priority-importante{border-left-color:#d69e2e;background:#fffdf5}.dashboard-announcement.priority-urgente{border-left-color:#e53e3e;background:#fff7f7}.dashboard-announcement h2{margin:8px 0 6px;font-size:18px}.dashboard-announcement p{margin:0 0 8px}.announcement-admin-list{display:grid;gap:12px}.announcement-admin-item{border:1px solid #e2e8f0;border-radius:12px;padding:14px;display:flex;justify-content:space-between;gap:15px}.announcement-admin-item strong{display:block;margin:8px 0}.receipt-actions{display:flex;justify-content:flex-end;gap:10px;margin-bottom:16px}.institutional-receipt{max-width:900px;margin:auto;background:#fff;padding:34px;border:1px solid #dfe6ee;border-radius:16px;box-shadow:0 12px 35px rgba(15,23,42,.08)}.receipt-header{display:flex;justify-content:space-between;gap:30px}.receipt-header h1{margin:8px 0 2px}.receipt-number{text-align:right;display:flex;flex-direction:column;gap:6px}.receipt-number strong{font-size:22px}.receipt-separator{height:2px;background:#19395f;margin:24px 0}.receipt-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.receipt-table{width:100%;border-collapse:collapse;margin:24px 0}.receipt-table th,.receipt-table td{padding:11px;border-bottom:1px solid #e5eaf0;text-align:left}.receipt-table th{width:220px;color:#52606d}.receipt-note{padding:14px;background:#f7f9fc;border-radius:10px;font-size:13px;color:#52606d}@media print{.sidebar,.topbar,.receipt-actions{display:none!important}.main-area,.content{margin:0!important;padding:0!important}.institutional-receipt{box-shadow:none;border:0;max-width:none}.app-shell{display:block}}@media(max-width:700px){.receipt-header,.receipt-columns,.announcement-admin-item,.dashboard-announcement{grid-template-columns:1fr;display:grid}.receipt-number{text-align:left}}
/* v1.1 */
.form-grid .span-2{grid-column:span 2}.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inline-form input,.inline-form select{min-width:105px;padding:8px 10px;border:1px solid #d7ddea;border-radius:8px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:8px 18px;margin-bottom:12px}.permission-grid label{font-size:13px}.alert.info{background:#eef6ff;border-color:#b9d8ff;color:#254b75}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid #e4e9f2;border-radius:14px;padding:18px;box-shadow:0 8px 24px rgba(26,42,70,.05)}.stat-card span{display:block;color:#6b7485;font-size:13px;margin-bottom:8px}.stat-card strong{font-family:Montserrat,sans-serif;font-size:22px;color:#10233f}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.quick-item{display:flex;flex-direction:column;gap:7px;padding:18px;border:1px solid #e3e8f1;border-radius:12px;text-decoration:none;color:#10233f}.quick-item:hover{border-color:#2d6cdf;transform:translateY(-1px)}.quick-icon{width:24px;height:24px}.quick-item span{font-size:13px;color:#6d7685}@media(max-width:900px){.stats-grid,.quick-grid{grid-template-columns:1fr 1fr}.permission-grid{grid-template-columns:1fr}}@media(max-width:600px){.stats-grid,.quick-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}}

/* v1.1.1 - mejora visual de cuotas y conceptos */
.billing-page-head{margin-bottom:18px}.billing-editor-card,.billing-generate-card{padding:0;overflow:hidden;margin-bottom:18px}.billing-section-heading{display:flex;align-items:flex-start;gap:13px;padding:20px 22px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#fff,#fbfdff)}.billing-section-heading h2{font-size:16px;margin:1px 0 5px}.billing-section-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.billing-section-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto}.billing-section-icon svg{width:21px;height:21px}.billing-form{padding:20px 22px}.billing-form-section{padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #edf1f6}.billing-form-section:last-of-type{margin-bottom:0}.billing-form-section-title{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.billing-form-section-title strong{font:750 13px Montserrat,Arial,sans-serif;color:var(--text)}.billing-form-section-title span{font-size:11px;color:var(--muted)}.billing-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px}.billing-form-grid .field{display:grid;gap:7px}.billing-form-grid .field.full{grid-column:1/-1}.billing-form-grid label{font-size:11px;font-weight:750;color:#2a3c55}.billing-form-grid label small{font-weight:500;color:var(--muted);margin-left:4px}.billing-form-grid input,.billing-form-grid select,.billing-form-grid textarea{width:100%;min-height:42px;border:1px solid #cfd9e7;background:#fff;border-radius:8px;padding:10px 12px;color:var(--text);outline:none;transition:.15s}.billing-form-grid textarea{min-height:92px;resize:vertical}.billing-form-grid input:focus,.billing-form-grid select:focus,.billing-form-grid textarea:focus{border-color:#6f9bed;box-shadow:0 0 0 3px rgba(43,118,246,.1)}.field-help{font-size:10px;color:var(--muted);line-height:1.4}.input-prefix,.input-suffix{position:relative;display:flex;align-items:center}.input-prefix>span,.input-suffix>span{position:absolute;color:#5c6c83;font-weight:700;font-size:12px;pointer-events:none}.input-prefix>span{left:12px}.input-prefix input{padding-left:29px}.input-suffix>span{right:12px}.input-suffix input{padding-right:31px}.billing-values-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.billing-status-preview{align-self:end;min-height:69px;border:1px solid #dce9e2;background:#f4fbf7;border-radius:9px;padding:11px 12px}.billing-status-preview p{margin:7px 0 0;font-size:10px;color:#5e6f67;line-height:1.4}.billing-form-actions{display:flex;justify-content:flex-end;padding-top:18px}.billing-form-actions .btn{min-width:150px}.billing-table-card{margin-bottom:18px}.billing-table-head{padding:3px 3px 12px;margin:0}.billing-table-head h2{margin-bottom:4px}.billing-table-head .muted{font-size:11px}.billing-count{font:700 10px Montserrat,Arial,sans-serif;padding:6px 9px;border-radius:999px;background:#eef4fb;color:#365c86}.billing-concepts-table td:first-child{min-width:240px}.billing-generate-card .billing-form-grid{padding:20px 22px}.billing-generate-grid{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end}.billing-generate-action{display:flex;align-items:flex-end}.billing-generate-action .btn{width:100%;min-height:42px}.billing-adjust-form input[name="reason"]{min-width:155px}.billing-adjust-form .btn{white-space:nowrap}
@media(max-width:1100px){.billing-values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-generate-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.billing-status-preview{align-self:stretch}}
@media(max-width:760px){.billing-form-grid,.billing-values-grid,.billing-generate-grid{grid-template-columns:1fr}.billing-form-grid .field.full{grid-column:auto}.billing-form-section-title{display:grid;gap:4px}.billing-section-heading{padding:17px}.billing-form,.billing-generate-card .billing-form-grid{padding:17px}.billing-form-actions .btn,.billing-generate-action .btn{width:100%}.billing-adjust-form{min-width:520px}}

/* Hotfix v1.1.2: limita iconos de Cuotas y conceptos */
.billing-section-heading > .billing-section-icon{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;min-height:42px!important;max-height:42px!important;overflow:hidden!important;}
.billing-section-heading > .billing-section-icon > svg{display:block!important;width:21px!important;height:21px!important;min-width:21px!important;max-width:21px!important;min-height:21px!important;max-height:21px!important;}


/* Registro público de nuevos matriculados */
.login-application-link{margin-top:16px;padding:14px;border:1px solid #dbe5f2;border-radius:10px;background:#f7faff;text-align:center;display:flex;flex-direction:column;gap:5px}
.login-application-link span{font-size:12px;color:#65748b}
.login-application-link a{font-family:Montserrat,Arial,sans-serif;font-size:13px;font-weight:700;color:#086fd3;text-decoration:none}
.login-application-link a:hover{text-decoration:underline}
.public-form-page{min-height:100vh;background:#f3f6fa;padding:32px 18px;display:flex;align-items:flex-start;justify-content:center}
.public-form-card{width:min(980px,100%);background:#fff;border:1px solid #dce4ee;border-radius:14px;padding:28px;box-shadow:0 18px 45px rgba(21,45,78,.08)}
.public-form-brand{display:flex;align-items:center;gap:12px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #e4eaf1}
.public-form-brand>div:last-child{display:flex;flex-direction:column;gap:3px}
.public-form-brand strong{font-family:Montserrat,Arial,sans-serif;color:#08224a}
.public-form-brand span{font-size:12px;color:#64748b}
.public-form-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.public-form-head h1,.application-success h1{margin:0 0 6px;color:#08224a}
.public-application-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.public-form-actions{display:flex;justify-content:flex-end;gap:10px}
.application-disclaimer{padding:13px 15px;border:1px solid #f1d49a;background:#fff9eb;color:#715318;border-radius:9px;font-size:13px;line-height:1.5}
.application-success{text-align:center;padding:36px 12px}
.application-success p{max-width:620px;margin:8px auto;color:#59687c;line-height:1.55}
.application-success .btn{margin-top:16px}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.approval-fields{display:none;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
@media(max-width:700px){
  .public-form-card{padding:20px 16px}
  .public-application-form .form-grid{grid-template-columns:1fr}
  .public-form-head{flex-direction:column}
  .public-form-actions{justify-content:stretch;flex-direction:column-reverse}
  .public-form-actions .btn{width:100%}
  .approval-fields{grid-template-columns:1fr}
}


.public-checkbox-label{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:auto!important;
  cursor:pointer;
}
.public-checkbox-label input[type="checkbox"]{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  flex:0 0 16px!important;
  margin:0!important;
  padding:0!important;
}
.public-checkbox-label span{
  display:inline!important;
  width:auto!important;
  margin:0!important;
}


/* Contador de altas pendientes en menú lateral */
.side-nav a .nav-count{
  margin-left:auto;
  min-width:22px;
  height:22px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#dc2626;
  color:#fff;
  font-family:Montserrat,Arial,sans-serif;
  font-size:11px;
  font-weight:800;
  line-height:1;
  flex:0 0 auto;
  box-shadow:0 0 0 2px rgba(255,255,255,.12);
}
.side-nav a.active .nav-count{
  background:#fff;
  color:#0b63ce;
  box-shadow:none;
}
