/* Shell is unlayered and authoritative. Legacy project styles have lower priority. */
@layer globaltrainer {
/* GlobalTrainer: estilos propios fuera del shell Core. */

/* Pages/GestionRecuperacion.razor.css */
:host[b-m72qg698ke] { display:block; }
.gem-page-head[b-m72qg698ke] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gem-subtitle[b-m72qg698ke] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gem-toolbar-card[b-m72qg698ke],.gem-list-card[b-m72qg698ke] { margin-bottom:18px;overflow:visible; }
.gem-toolbar-card .card-body[b-m72qg698ke] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gem-tabs[b-m72qg698ke] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gem-tabs button[b-m72qg698ke] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gem-tabs button.active[b-m72qg698ke] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gem-tools[b-m72qg698ke] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gem-search[b-m72qg698ke] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gem-search > i[b-m72qg698ke] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gem-search input[b-m72qg698ke] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gem-search input:focus[b-m72qg698ke] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gem-list-head[b-m72qg698ke] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gem-list-head strong[b-m72qg698ke] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gem-list-head span[b-m72qg698ke] { color:var(--text-muted);font-size:12px; }
.gem-table-wrap[b-m72qg698ke] { overflow:auto; }
.gem-table[b-m72qg698ke] { min-width:760px; }
.gem-table td strong[b-m72qg698ke],.gem-table td small[b-m72qg698ke] { display:block; }
.gem-table td small[b-m72qg698ke] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gem-actions[b-m72qg698ke] { display:flex;gap:6px; }
.academic-form-grid[b-m72qg698ke] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-m72qg698ke] { min-width:0; }
.academic-field--span-2[b-m72qg698ke] { grid-column:1/-1; }
.academic-field label[b-m72qg698ke] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-m72qg698ke] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-m72qg698ke] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-m72qg698ke] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-m72qg698ke] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-m72qg698ke] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-m72qg698ke] { text-align:center; }
.academic-confirm > i[b-m72qg698ke] { color:var(--warning);font-size:34px; }
.gem-form-grid[b-m72qg698ke]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gem-span-2[b-m72qg698ke]{grid-column:1/-1}
.gem-kpis[b-m72qg698ke]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.gem-kpi[b-m72qg698ke]{padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.gem-kpi small[b-m72qg698ke]{display:block;color:var(--text-muted);font-size:11px;text-transform:uppercase}
.gem-kpi strong[b-m72qg698ke]{display:block;margin-top:6px;font-size:22px}
.gem-score[b-m72qg698ke]{font-weight:900;color:var(--brand)}
.gem-flag[b-m72qg698ke]{display:inline-flex;align-items:center;gap:6px}
.academic-audit[b-m72qg698ke]{display:grid;gap:4px;margin-top:14px;padding:12px;border-radius:12px;background:var(--surface-2);color:var(--text-muted);font-size:11px}

/* Recuperación: modal amplio y usable */
.recovery-modal[b-m72qg698ke]{
    width:min(1180px,calc(100vw - 30px));
    max-width:min(1180px,calc(100vw - 30px));
    height:min(760px,calc(100dvh - 34px));
    max-height:calc(100dvh - 34px);
}
.recovery-modal .gxModal__content[b-m72qg698ke]{
    height:100%;
    min-height:0;
}
.recovery-modal .gxModal__header[b-m72qg698ke]{
    flex:0 0 auto;
    min-height:82px;
    padding-right:92px;
}
.recovery-modal-eyebrow[b-m72qg698ke]{
    display:block;
    margin-bottom:4px;
    color:rgba(255,255,255,.72);
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.recovery-modal-body[b-m72qg698ke]{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    padding:22px 28px 28px;
}
.recovery-modal-footer[b-m72qg698ke]{
    flex:0 0 auto;
    border-top:1px solid var(--border);
}
.recovery-intro[b-m72qg698ke]{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:20px;
    padding:14px 16px;
    border:1px solid var(--border);
    border-radius:14px;
    background:var(--surface-2);
}
.recovery-intro>i[b-m72qg698ke]{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    flex:none;
    border-radius:12px;
    background:var(--brand-light);
    color:var(--brand);
}
.recovery-intro strong[b-m72qg698ke],.recovery-intro span[b-m72qg698ke]{display:block}
.recovery-intro span[b-m72qg698ke]{margin-top:3px;color:var(--text-muted);font-size:11.5px}
.recovery-form-grid[b-m72qg698ke]{gap:18px 20px}
.recovery-help[b-m72qg698ke]{display:block;margin-top:6px;color:var(--text-muted);font-size:10.5px}
.recovery-flag[b-m72qg698ke]{
    min-height:48px;
    padding:0 14px;
    border:1px solid var(--border);
    border-radius:12px;
    background:var(--surface-2);
}
.recovery-flag input[b-m72qg698ke]{width:17px;height:17px}

/* SearchableSelect es componente hijo: ::deep es necesario con CSS isolation. */
.recovery-modal[b-m72qg698ke]  .ssel{position:relative}
.recovery-modal[b-m72qg698ke]  .ssel-panel{
    z-index:250500;
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.recovery-modal[b-m72qg698ke]  .ssel-list{
    max-height:min(350px,38dvh);
}

/* La X debe quedar siempre visible en la esquina superior derecha. */
.recovery-modal .gxModal__content > button[aria-label="Cerrar"][b-m72qg698ke]{
    z-index:20;
    top:18px;
    right:20px;
}

@media(max-width:900px){
    .gem-kpis[b-m72qg698ke]{grid-template-columns:repeat(2,1fr)}
    .recovery-modal[b-m72qg698ke]{
        width:calc(100vw - 20px);
        max-width:calc(100vw - 20px);
        height:calc(100dvh - 100px);
        max-height:calc(100dvh - 100px);
    }
    .recovery-modal-body[b-m72qg698ke]{padding:18px 16px 22px}
}
@media(max-width:760px){
    .gem-page-head[b-m72qg698ke]{align-items:stretch;flex-direction:column}
    .gem-tools[b-m72qg698ke]{width:100%;flex-wrap:wrap}
    .gem-search[b-m72qg698ke]{min-width:100%;max-width:none}
    .academic-form-grid[b-m72qg698ke],.gem-form-grid[b-m72qg698ke]{grid-template-columns:1fr}
    .academic-field--span-2[b-m72qg698ke],.gem-span-2[b-m72qg698ke]{grid-column:auto}
    .gem-kpis[b-m72qg698ke]{grid-template-columns:1fr}
}

/* Pages/MarcacionAsistenciaEmpleado.razor.css */
:host[b-e0e5yua3l0]{display:block}.module-page[b-e0e5yua3l0]{display:grid;gap:16px}.module-hero[b-e0e5yua3l0],.module-card[b-e0e5yua3l0]{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm)}.module-hero[b-e0e5yua3l0]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.module-eyebrow[b-e0e5yua3l0]{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.module-hero h1[b-e0e5yua3l0]{margin:5px 0;font-size:clamp(25px,2vw,34px)}.module-hero p[b-e0e5yua3l0]{margin:0;color:var(--text-muted)}.module-actions[b-e0e5yua3l0]{display:flex;gap:8px;flex-wrap:wrap}.module-card[b-e0e5yua3l0]{padding:16px}.module-toolbar[b-e0e5yua3l0]{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.module-field[b-e0e5yua3l0]{display:grid;gap:5px;min-width:180px;flex:1}.module-field label[b-e0e5yua3l0]{font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.module-search[b-e0e5yua3l0]{min-width:260px}.module-table-wrap[b-e0e5yua3l0]{overflow:auto}.module-table[b-e0e5yua3l0]{width:100%;min-width:850px;border-collapse:collapse}.module-table th[b-e0e5yua3l0],.module-table td[b-e0e5yua3l0]{padding:11px;border-bottom:1px solid var(--border);vertical-align:middle}.module-table th[b-e0e5yua3l0]{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.module-table td small[b-e0e5yua3l0]{display:block;color:var(--text-muted)}.module-table .num[b-e0e5yua3l0]{text-align:right}.module-empty[b-e0e5yua3l0]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--text-muted)}.module-empty i[b-e0e5yua3l0]{font-size:26px}.module-summary[b-e0e5yua3l0]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.module-summary article[b-e0e5yua3l0]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.module-summary small[b-e0e5yua3l0]{display:block;color:var(--text-muted)}.module-summary strong[b-e0e5yua3l0]{font-size:22px}.module-modal[b-e0e5yua3l0]{width:min(980px,calc(100vw - 24px));max-height:calc(100vh - 28px);overflow:auto}.module-modal-sm[b-e0e5yua3l0]{width:min(560px,calc(100vw - 24px))}.module-form[b-e0e5yua3l0]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.module-form .span-2[b-e0e5yua3l0]{grid-column:span 2}.module-form .span-3[b-e0e5yua3l0]{grid-column:span 3}.module-form label[b-e0e5yua3l0]{display:block;margin-bottom:5px;font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.status-pill[b-e0e5yua3l0]{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:900;text-transform:uppercase}.status-pill.ok[b-e0e5yua3l0]{background:rgba(16,185,129,.14);color:var(--success)}.status-pill.bad[b-e0e5yua3l0]{background:rgba(225,29,72,.12);color:var(--danger)}.status-pill.warn[b-e0e5yua3l0]{background:rgba(245,158,11,.16);color:var(--danger)}@media(max-width:780px){.module-hero[b-e0e5yua3l0]{padding:17px;display:grid}.module-actions .btn[b-e0e5yua3l0]{flex:1}.module-summary[b-e0e5yua3l0]{grid-template-columns:repeat(2,1fr)}.module-form[b-e0e5yua3l0]{grid-template-columns:1fr}.module-form .span-2[b-e0e5yua3l0],.module-form .span-3[b-e0e5yua3l0]{grid-column:auto}.module-toolbar[b-e0e5yua3l0]{display:grid}.module-field[b-e0e5yua3l0],.module-search[b-e0e5yua3l0]{min-width:0}}
.attendance-grid[b-e0e5yua3l0]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.attendance-grid article[b-e0e5yua3l0]{padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}@media(max-width:760px){.attendance-grid[b-e0e5yua3l0]{grid-template-columns:1fr}}

/* Pages/GestionTipoCuentaEgresos.razor.css */
:host[b-r2algpb084] { display:block; }
.gem-page-head[b-r2algpb084] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gem-subtitle[b-r2algpb084] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gem-toolbar-card[b-r2algpb084],.gem-list-card[b-r2algpb084] { margin-bottom:18px;overflow:visible; }
.gem-toolbar-card .card-body[b-r2algpb084] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gem-tabs[b-r2algpb084] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gem-tabs button[b-r2algpb084] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gem-tabs button.active[b-r2algpb084] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gem-tools[b-r2algpb084] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gem-search[b-r2algpb084] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gem-search > i[b-r2algpb084] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gem-search input[b-r2algpb084] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gem-search input:focus[b-r2algpb084] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gem-list-head[b-r2algpb084] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gem-list-head strong[b-r2algpb084] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gem-list-head span[b-r2algpb084] { color:var(--text-muted);font-size:12px; }
.gem-table-wrap[b-r2algpb084] { overflow:auto; }
.gem-table[b-r2algpb084] { min-width:760px; }
.gem-table td strong[b-r2algpb084],.gem-table td small[b-r2algpb084] { display:block; }
.gem-table td small[b-r2algpb084] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gem-actions[b-r2algpb084] { display:flex;gap:6px; }
.academic-form-grid[b-r2algpb084] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-r2algpb084] { min-width:0; }
.academic-field--span-2[b-r2algpb084] { grid-column:1/-1; }
.academic-field label[b-r2algpb084] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-r2algpb084] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-r2algpb084] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-r2algpb084] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-r2algpb084] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-r2algpb084] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-r2algpb084] { text-align:center; }
.academic-confirm > i[b-r2algpb084] { color:var(--warning);font-size:34px; }

@media(max-width:760px){ .gem-page-head[b-r2algpb084]{align-items:stretch;flex-direction:column} .gem-tools[b-r2algpb084]{width:100%;flex-wrap:wrap} .gem-search[b-r2algpb084]{min-width:100%;max-width:none} .academic-form-grid[b-r2algpb084]{grid-template-columns:1fr} .academic-field--span-2[b-r2algpb084]{grid-column:auto} }
.academic-audit[b-r2algpb084]{display:grid;gap:4px;margin-top:14px;padding:12px;border-radius:12px;background:var(--surface-2);color:var(--text-muted);font-size:11px}.academic-audit span[b-r2algpb084]{display:block}

/* Pages/GestionAsignacionPolo.razor.css */
:host[b-00cv9hyibi] {
    display: block;
}

.asg-page[b-00cv9hyibi] {
    display: grid;
    gap: 1rem;
    padding-bottom: 2rem;
}

.asg-head[b-00cv9hyibi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.asg-head p[b-00cv9hyibi] {
    margin: .35rem 0 0;
    color: var(--text-muted);
}

.asg-summary[b-00cv9hyibi] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
}

.asg-stat[b-00cv9hyibi] {
    padding: .9rem 1rem;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--surface);
}

.asg-stat small[b-00cv9hyibi],
.asg-stat strong[b-00cv9hyibi] {
    display: block;
}

.asg-stat small[b-00cv9hyibi] {
    color: var(--text-muted);
}

.asg-stat strong[b-00cv9hyibi] {
    margin-top: .2rem;
    font-size: 1.3rem;
}

.asg-card[b-00cv9hyibi] {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
}

.asg-card .card-body[b-00cv9hyibi] {
    padding: 1rem;
}

.asg-toolbar[b-00cv9hyibi] {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-bottom: .8rem;
}

.asg-search[b-00cv9hyibi] {
    position: relative;
    flex: 1;
}

.asg-search i[b-00cv9hyibi] {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.asg-search input[b-00cv9hyibi] {
    min-height: 44px;
    padding-left: 42px;
    border-radius: 11px;
}

.asg-table-wrap[b-00cv9hyibi] {
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 14px;
}

.asg-table[b-00cv9hyibi] {
    min-width: 950px;
    margin: 0;
}

.asg-table th[b-00cv9hyibi] {
    padding: .75rem;
    border: 0;
    background: var(--text);
    color: var(--surface);
    font-size: .72rem;
    letter-spacing: .04em;
}

.asg-table td[b-00cv9hyibi] {
    padding: .75rem;
    vertical-align: middle;
}

.asg-row-actions[b-00cv9hyibi] {
    display: flex;
    gap: 7px;
}

.asg-row-actions .gvCmdBtn[b-00cv9hyibi] {
    margin: 0;
}

.asg-flags[b-00cv9hyibi] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.asg-flag[b-00cv9hyibi] {
    padding: .25rem .55rem;
    border-radius: 999px;
    background: var(--surface);
    color: var(--p);
    font-size: .7rem;
    font-weight: 800;
}

.asg-flag.ok[b-00cv9hyibi] {
    background: var(--surface);
    color: var(--success);
}

.asg-badge[b-00cv9hyibi] {
    display: inline-flex;
    padding: .25rem .58rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 850;
}

.asg-badge.complete[b-00cv9hyibi] {
    background: var(--surface);
    color: var(--success);
}

.asg-badge.pending[b-00cv9hyibi] {
    background: var(--surface);
    color: var(--danger);
}

.asg-pagination[b-00cv9hyibi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: .8rem;
    color: var(--text-muted);
    font-size: .8rem;
}

.asg-pagination div[b-00cv9hyibi] {
    display: flex;
    align-items: center;
    gap: .35rem;
}

.asg-pagination button[b-00cv9hyibi] {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: var(--surface);
}

.asg-form[b-00cv9hyibi] {
    display: grid;
    gap: .7rem;
}

.asg-check[b-00cv9hyibi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem;
    border: 1px solid var(--border);
    border-radius: 12px;
}

.asg-context[b-00cv9hyibi] {
    display: grid;
    gap: .45rem;
    margin-bottom: .9rem;
    padding: .85rem;
    border-radius: 12px;
    background: var(--surface-2);
}

.asg-context small[b-00cv9hyibi] {
    color: var(--text-muted);
}

.asg-notice[b-00cv9hyibi] {
    padding: .75rem .9rem;
    border-radius: 12px;
}

.asg-notice.error[b-00cv9hyibi] {
    background: var(--surface);
    color: var(--danger);
}

.asg-notice.success[b-00cv9hyibi] {
    background: var(--surface);
    color: var(--success);
}

.asg-empty[b-00cv9hyibi] {
    padding: 3rem;
    text-align: center;
    color: var(--text-muted);
}

.asg-loading[b-00cv9hyibi] {
    display: grid;
    min-height: 320px;
    place-content: center;
    justify-items: center;
    gap: .6rem;
}

@media (max-width: 720px) {
    .asg-head[b-00cv9hyibi],
    .asg-toolbar[b-00cv9hyibi],
    .asg-pagination[b-00cv9hyibi] {
        align-items: stretch;
        flex-direction: column;
    }

    .asg-summary[b-00cv9hyibi] {
        grid-template-columns: 1fr;
    }
}.asg-table[b-00cv9hyibi]{min-width:1150px}

/* Pages/GestionEstadoMatricula.razor.css */
:host[b-8xdqv55a4f] { display:block; }
.gem-page-head[b-8xdqv55a4f] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gem-subtitle[b-8xdqv55a4f] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gem-toolbar-card[b-8xdqv55a4f],.gem-list-card[b-8xdqv55a4f] { margin-bottom:18px;overflow:visible; }
.gem-toolbar-card .card-body[b-8xdqv55a4f] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gem-tabs[b-8xdqv55a4f] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gem-tabs button[b-8xdqv55a4f] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gem-tabs button.active[b-8xdqv55a4f] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gem-tools[b-8xdqv55a4f] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gem-search[b-8xdqv55a4f] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gem-search > i[b-8xdqv55a4f] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gem-search input[b-8xdqv55a4f] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gem-search input:focus[b-8xdqv55a4f] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gem-list-head[b-8xdqv55a4f] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gem-list-head strong[b-8xdqv55a4f] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gem-list-head span[b-8xdqv55a4f] { color:var(--text-muted);font-size:12px; }
.gem-table-wrap[b-8xdqv55a4f] { overflow:auto; }
.gem-table[b-8xdqv55a4f] { min-width:760px; }
.gem-table td strong[b-8xdqv55a4f],.gem-table td small[b-8xdqv55a4f] { display:block; }
.gem-table td small[b-8xdqv55a4f] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gem-actions[b-8xdqv55a4f] { display:flex;gap:6px; }
.academic-form-grid[b-8xdqv55a4f] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-8xdqv55a4f] { min-width:0; }
.academic-field--span-2[b-8xdqv55a4f] { grid-column:1/-1; }
.academic-field label[b-8xdqv55a4f] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-8xdqv55a4f] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-8xdqv55a4f] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-8xdqv55a4f] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-8xdqv55a4f] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-8xdqv55a4f] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-8xdqv55a4f] { text-align:center; }
.academic-confirm > i[b-8xdqv55a4f] { color:var(--warning);font-size:34px; }

@media(max-width:760px){ .gem-page-head[b-8xdqv55a4f]{align-items:stretch;flex-direction:column} .gem-tools[b-8xdqv55a4f]{width:100%;flex-wrap:wrap} .gem-search[b-8xdqv55a4f]{min-width:100%;max-width:none} .academic-form-grid[b-8xdqv55a4f]{grid-template-columns:1fr} .academic-field--span-2[b-8xdqv55a4f]{grid-column:auto} }

/* Pages/GestionModuloEducativo.razor.css */
:host[b-0zmtuo3twn] { display:block; }
.gme-page-head[b-0zmtuo3twn] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gme-subtitle[b-0zmtuo3twn] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gme-toolbar-card[b-0zmtuo3twn],.gme-list-card[b-0zmtuo3twn] { margin-bottom:18px;overflow:visible; }
.gme-toolbar-card .card-body[b-0zmtuo3twn] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gme-tabs[b-0zmtuo3twn] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gme-tabs button[b-0zmtuo3twn] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gme-tabs button.active[b-0zmtuo3twn] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gme-tools[b-0zmtuo3twn] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gme-search[b-0zmtuo3twn] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gme-search > i[b-0zmtuo3twn] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gme-search input[b-0zmtuo3twn] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gme-search input:focus[b-0zmtuo3twn] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gme-list-head[b-0zmtuo3twn] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gme-list-head strong[b-0zmtuo3twn] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gme-list-head span[b-0zmtuo3twn] { color:var(--text-muted);font-size:12px; }
.gme-table-wrap[b-0zmtuo3twn] { overflow:auto; }
.gme-table[b-0zmtuo3twn] { min-width:1320px; }
.gme-table td strong[b-0zmtuo3twn],.gme-table td small[b-0zmtuo3twn] { display:block; }
.gme-table td small[b-0zmtuo3twn] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gme-actions[b-0zmtuo3twn] { display:flex;gap:6px; }
.academic-form-grid[b-0zmtuo3twn] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-0zmtuo3twn] { min-width:0; }
.academic-field--span-2[b-0zmtuo3twn] { grid-column:1/-1; }
.academic-field label[b-0zmtuo3twn] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-0zmtuo3twn] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-0zmtuo3twn] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-0zmtuo3twn] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-0zmtuo3twn] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-0zmtuo3twn] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-0zmtuo3twn] { text-align:center; }
.academic-confirm > i[b-0zmtuo3twn] { color:var(--warning);font-size:34px; }

@media(max-width:760px){ .gme-page-head[b-0zmtuo3twn]{align-items:stretch;flex-direction:column} .gme-tools[b-0zmtuo3twn]{width:100%;flex-wrap:wrap} .gme-search[b-0zmtuo3twn]{min-width:100%;max-width:none} .academic-form-grid[b-0zmtuo3twn]{grid-template-columns:1fr} .academic-field--span-2[b-0zmtuo3twn]{grid-column:auto} }

/* Pages/GestionResultados.razor.css */
:host[b-pszi3scov4] { display:block; }
.gem-page-head[b-pszi3scov4] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gem-subtitle[b-pszi3scov4] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gem-toolbar-card[b-pszi3scov4],.gem-list-card[b-pszi3scov4] { margin-bottom:18px;overflow:visible; }
.gem-toolbar-card .card-body[b-pszi3scov4] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gem-tabs[b-pszi3scov4] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gem-tabs button[b-pszi3scov4] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gem-tabs button.active[b-pszi3scov4] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gem-tools[b-pszi3scov4] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gem-search[b-pszi3scov4] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gem-search > i[b-pszi3scov4] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gem-search input[b-pszi3scov4] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gem-search input:focus[b-pszi3scov4] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gem-list-head[b-pszi3scov4] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gem-list-head strong[b-pszi3scov4] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gem-list-head span[b-pszi3scov4] { color:var(--text-muted);font-size:12px; }
.gem-table-wrap[b-pszi3scov4] { overflow:auto; }
.gem-table[b-pszi3scov4] { min-width:760px; }
.gem-table td strong[b-pszi3scov4],.gem-table td small[b-pszi3scov4] { display:block; }
.gem-table td small[b-pszi3scov4] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gem-actions[b-pszi3scov4] { display:flex;gap:6px; }
.academic-form-grid[b-pszi3scov4] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-pszi3scov4] { min-width:0; }
.academic-field--span-2[b-pszi3scov4] { grid-column:1/-1; }
.academic-field label[b-pszi3scov4] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-pszi3scov4] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-pszi3scov4] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-pszi3scov4] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-pszi3scov4] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-pszi3scov4] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-pszi3scov4] { text-align:center; }
.academic-confirm > i[b-pszi3scov4] { color:var(--warning);font-size:34px; }

@media(max-width:760px){ .gem-page-head[b-pszi3scov4]{align-items:stretch;flex-direction:column} .gem-tools[b-pszi3scov4]{width:100%;flex-wrap:wrap} .gem-search[b-pszi3scov4]{min-width:100%;max-width:none} .academic-form-grid[b-pszi3scov4]{grid-template-columns:1fr} .academic-field--span-2[b-pszi3scov4]{grid-column:auto} }
.gem-form-grid[b-pszi3scov4]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gem-span-2[b-pszi3scov4]{grid-column:1/-1}.gem-kpis[b-pszi3scov4]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.gem-kpi[b-pszi3scov4]{padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.gem-kpi small[b-pszi3scov4]{display:block;color:var(--text-muted);font-size:11px;text-transform:uppercase}.gem-kpi strong[b-pszi3scov4]{display:block;margin-top:6px;font-size:22px}.gem-score[b-pszi3scov4]{font-weight:900;color:var(--brand)}.gem-flag[b-pszi3scov4]{display:inline-flex;align-items:center;gap:6px}.academic-audit[b-pszi3scov4]{display:grid;gap:4px;margin-top:14px;padding:12px;border-radius:12px;background:var(--surface-2);color:var(--text-muted);font-size:11px}@media(max-width:900px){.gem-kpis[b-pszi3scov4]{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.gem-form-grid[b-pszi3scov4]{grid-template-columns:1fr}.gem-span-2[b-pszi3scov4]{grid-column:auto}.gem-kpis[b-pszi3scov4]{grid-template-columns:1fr}}

/* Pages/GestionMarcacionEmpleado.razor.css */
:host[b-905reul4la]{display:block}.module-page[b-905reul4la]{display:grid;gap:16px}.module-hero[b-905reul4la],.module-card[b-905reul4la]{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm)}.module-hero[b-905reul4la]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.module-eyebrow[b-905reul4la]{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.module-hero h1[b-905reul4la]{margin:5px 0;font-size:clamp(25px,2vw,34px)}.module-hero p[b-905reul4la]{margin:0;color:var(--text-muted)}.module-actions[b-905reul4la]{display:flex;gap:8px;flex-wrap:wrap}.module-card[b-905reul4la]{padding:16px}.module-toolbar[b-905reul4la]{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.module-field[b-905reul4la]{display:grid;gap:5px;min-width:180px;flex:1}.module-field label[b-905reul4la]{font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.module-search[b-905reul4la]{min-width:260px}.module-table-wrap[b-905reul4la]{overflow:auto}.module-table[b-905reul4la]{width:100%;min-width:850px;border-collapse:collapse}.module-table th[b-905reul4la],.module-table td[b-905reul4la]{padding:11px;border-bottom:1px solid var(--border);vertical-align:middle}.module-table th[b-905reul4la]{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.module-table td small[b-905reul4la]{display:block;color:var(--text-muted)}.module-table .num[b-905reul4la]{text-align:right}.module-empty[b-905reul4la]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--text-muted)}.module-empty i[b-905reul4la]{font-size:26px}.module-summary[b-905reul4la]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.module-summary article[b-905reul4la]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.module-summary small[b-905reul4la]{display:block;color:var(--text-muted)}.module-summary strong[b-905reul4la]{font-size:22px}.module-modal[b-905reul4la]{width:min(980px,calc(100vw - 24px));max-height:calc(100vh - 28px);overflow:auto}.module-modal-sm[b-905reul4la]{width:min(560px,calc(100vw - 24px))}.module-form[b-905reul4la]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.module-form .span-2[b-905reul4la]{grid-column:span 2}.module-form .span-3[b-905reul4la]{grid-column:span 3}.module-form label[b-905reul4la]{display:block;margin-bottom:5px;font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.status-pill[b-905reul4la]{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:900;text-transform:uppercase}.status-pill.ok[b-905reul4la]{background:rgba(16,185,129,.14);color:var(--success)}.status-pill.bad[b-905reul4la]{background:rgba(225,29,72,.12);color:var(--danger)}.status-pill.warn[b-905reul4la]{background:rgba(245,158,11,.16);color:var(--danger)}@media(max-width:780px){.module-hero[b-905reul4la]{padding:17px;display:grid}.module-actions .btn[b-905reul4la]{flex:1}.module-summary[b-905reul4la]{grid-template-columns:repeat(2,1fr)}.module-form[b-905reul4la]{grid-template-columns:1fr}.module-form .span-2[b-905reul4la],.module-form .span-3[b-905reul4la]{grid-column:auto}.module-toolbar[b-905reul4la]{display:grid}.module-field[b-905reul4la],.module-search[b-905reul4la]{min-width:0}}

/* Pages/GestionMatricula.razor.css */
:host[b-jtc9wglyy1] { display:block; }

.gm-page-head[b-jtc9wglyy1]{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.gm-subtitle[b-jtc9wglyy1]{margin:6px 0 0;color:var(--text-muted);font-size:13px}
.gm-new[b-jtc9wglyy1]{display:inline-flex;align-items:center;justify-content:center;gap:8px}

.gm-alert[b-jtc9wglyy1]{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;border:1px solid;border-radius:var(--r-md);font-size:13px}
.gm-alert span[b-jtc9wglyy1]{flex:1}
.gm-alert button[b-jtc9wglyy1]{border:0;background:transparent;color:inherit;cursor:pointer}
.gm-alert--success[b-jtc9wglyy1]{border-color:rgba(var(--success-rgb),.24);background:var(--success-bg);color:var(--success)}
.gm-alert--danger[b-jtc9wglyy1]{border-color:rgba(var(--danger-rgb),.24);background:var(--danger-bg);color:var(--danger)}

.gm-toolbar[b-jtc9wglyy1]{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(180px,.7fr) auto minmax(260px,1fr) auto auto;align-items:center;gap:10px;margin:14px 0}
.gm-combo-filter[b-jtc9wglyy1]{min-width:0}
.gm-filter-mode[b-jtc9wglyy1]{display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}
.gm-filter-mode button[b-jtc9wglyy1]{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;padding:0 11px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-size:12px;font-weight:700;cursor:pointer}
.gm-filter-mode button.active[b-jtc9wglyy1]{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.gm-search[b-jtc9wglyy1]{position:relative}
.gm-search>i[b-jtc9wglyy1]{position:absolute;z-index:2;top:50%;left:13px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}
.gm-search input[b-jtc9wglyy1]{width:100%;padding-left:38px;padding-right:38px}
.gm-search button[b-jtc9wglyy1]{position:absolute;top:50%;right:6px;width:30px;height:30px;transform:translateY(-50%);border:0;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer}

.gm-loading[b-jtc9wglyy1]{display:flex;min-height:260px;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:var(--text-muted)}
.gm-loading i[b-jtc9wglyy1]{color:var(--brand);font-size:24px}
.gm-table-wrap[b-jtc9wglyy1]{overflow-x:auto}
.gm-table[b-jtc9wglyy1]{min-width:1320px}
.gm-table td strong[b-jtc9wglyy1],.gm-table td small[b-jtc9wglyy1]{display:block}
.gm-table td small[b-jtc9wglyy1]{margin-top:3px;color:var(--text-muted);font-size:11px}
.gm-actions[b-jtc9wglyy1]{display:flex;gap:6px}
.gm-concept[b-jtc9wglyy1]{display:block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gm-money[b-jtc9wglyy1]{text-align:right;font-variant-numeric:tabular-nums;font-weight:750}
.gm-money--pending[b-jtc9wglyy1]{color:var(--danger)}

.gm-status[b-jtc9wglyy1]{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 9px;border-radius:var(--r-full);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.gm-status--academic[b-jtc9wglyy1]{background:var(--brand-light);color:var(--brand)}
.gm-status--pending[b-jtc9wglyy1]{background:var(--warning-bg);color:var(--warning)}
.gm-status--paid[b-jtc9wglyy1]{background:var(--success-bg);color:var(--success)}
.gm-status--void[b-jtc9wglyy1]{background:var(--danger-bg);color:var(--danger)}

.gm-dialog[b-jtc9wglyy1]{width:min(1120px,calc(100vw - 36px));max-width:1120px;min-height:0;max-height:calc(100dvh - 28px);overflow:hidden}
.gm-modal-content[b-jtc9wglyy1]{display:flex;min-height:0;max-height:calc(100dvh - 28px);overflow:hidden;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-lg)}
.gm-modal-header[b-jtc9wglyy1]{display:flex;min-height:74px;flex:0 0 auto;align-items:center;gap:10px;padding:15px 18px 14px 20px;border-bottom:1px solid var(--border);background:var(--surface);color:var(--text)}
.gm-modal-heading[b-jtc9wglyy1]{min-width:0;flex:1}
.gm-modal-heading .eyebrow[b-jtc9wglyy1]{display:block;margin-bottom:4px;color:var(--brand);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.gm-modal-title[b-jtc9wglyy1]{margin:0;color:var(--text);font-size:20px;font-weight:800}
.gm-modal-close[b-jtc9wglyy1]{width:36px;height:36px;flex:0 0 36px}
.gm-modal-content[b-jtc9wglyy1]  form.gm-modal-form{display:flex;flex:1 1 auto;min-width:0;min-height:0;flex-direction:column;overflow:hidden}
.gm-modal-body[b-jtc9wglyy1]{flex:1 1 auto;min-width:0;min-height:0;padding:18px 20px 22px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.gm-modal-footer[b-jtc9wglyy1]{flex:0 0 auto;padding:14px 20px 16px;border-top:1px solid var(--border);background:var(--surface)}

.gm-audit[b-jtc9wglyy1]{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:14px;padding:11px 13px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-muted);font-size:11.5px}
.gm-audit i[b-jtc9wglyy1]{color:var(--brand)}
.gm-tabs[b-jtc9wglyy1]{position:sticky;z-index:5;top:-18px;display:flex;gap:7px;margin:0 -4px;padding:11px 4px;border-bottom:1px solid var(--border);background:var(--surface)}
.gm-tabs button[b-jtc9wglyy1]{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;padding:0 13px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-muted);font-weight:750;cursor:pointer}
.gm-tabs button.active[b-jtc9wglyy1]{border-color:rgba(var(--brand-rgb),.16);background:var(--brand-light);color:var(--brand)}
.gm-tab-count[b-jtc9wglyy1]{display:inline-grid;min-width:20px;height:20px;place-items:center;padding:0 5px;border-radius:var(--r-full);background:var(--surface);font-size:10px}

.gm-section[b-jtc9wglyy1]{margin-top:18px;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-xs)}
.gm-section-head[b-jtc9wglyy1]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.gm-section-head span[b-jtc9wglyy1]{display:block;color:var(--brand);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.gm-section-head h3[b-jtc9wglyy1]{margin:4px 0 0;color:var(--text);font-size:17px;font-weight:800}
.gm-section-head>i[b-jtc9wglyy1]{display:grid;width:42px;height:42px;place-items:center;border-radius:var(--r-md);background:var(--brand-light);color:var(--brand)}

.gm-form-grid[b-jtc9wglyy1]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.gm-field[b-jtc9wglyy1]{min-width:0}
.gm-field--span-2[b-jtc9wglyy1]{grid-column:span 2}
.gm-field label[b-jtc9wglyy1]{display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:650}
.gm-field small[b-jtc9wglyy1]{display:block;margin-top:5px;color:var(--text-muted);font-size:10px;text-align:right}
.gm-modal-body[b-jtc9wglyy1]  .form-control,.gm-modal-body[b-jtc9wglyy1]  .form-select,.gm-modal-body[b-jtc9wglyy1]  .ssel-trigger.form-control{box-sizing:border-box;width:100%;height:40px;min-height:40px;border-radius:var(--r-md)}
.gm-modal-body[b-jtc9wglyy1]  .gm-textarea.form-control{height:auto;min-height:96px;padding:10px 12px;resize:vertical}

.gm-add-grid[b-jtc9wglyy1]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gm-add-card[b-jtc9wglyy1]{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}
.gm-add-card>.btn[b-jtc9wglyy1]{justify-self:start}
.gm-price-add[b-jtc9wglyy1]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.gm-totals[b-jtc9wglyy1]{display:flex;flex-wrap:wrap;gap:10px}
.gm-totals span[b-jtc9wglyy1]{padding:7px 10px;border-radius:var(--r-md);background:var(--surface-2);color:var(--text-muted);font-size:11px;letter-spacing:0;text-transform:none}
.gm-totals strong[b-jtc9wglyy1]{margin-left:4px;color:var(--text)}

.gm-account-list[b-jtc9wglyy1]{display:grid;gap:10px}
.gm-account[b-jtc9wglyy1]{padding:14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}
.gm-account--void[b-jtc9wglyy1]{opacity:.72;background:var(--danger-bg)}
.gm-account-main[b-jtc9wglyy1]{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px}
.gm-account-main strong[b-jtc9wglyy1],.gm-account-main span[b-jtc9wglyy1]{display:block}
.gm-account-main>div>span[b-jtc9wglyy1]{margin-top:3px;color:var(--text-muted);font-size:11px}
.gm-account-icon[b-jtc9wglyy1]{display:grid;width:38px;height:38px;place-items:center;border-radius:var(--r-md);background:var(--brand-light);color:var(--brand)}
.gm-account-grid[b-jtc9wglyy1]{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(110px,.7fr)) 42px;align-items:end;gap:10px}
.gm-account-actions[b-jtc9wglyy1]{display:flex;align-items:flex-end;padding-bottom:1px}
.gm-delete[b-jtc9wglyy1]{color:var(--danger)}
.gm-undo[b-jtc9wglyy1]{color:var(--success)}
.gm-empty-small[b-jtc9wglyy1]{min-height:180px;padding-block:28px}
.gm-confirm-dialog[b-jtc9wglyy1]{width:min(480px,calc(100vw - 28px))}
.gm-confirm-body[b-jtc9wglyy1]{display:grid;justify-items:center;gap:12px;padding:24px;text-align:center}
.gm-confirm-body>i[b-jtc9wglyy1]{color:var(--brand);font-size:36px}
.gm-confirm-body p[b-jtc9wglyy1]{margin:0;color:var(--text-2);line-height:1.6}

@media(max-width:1020px){
  .gm-toolbar[b-jtc9wglyy1]{grid-template-columns:1fr 1fr}
  .gm-search[b-jtc9wglyy1]{grid-column:1/-1;grid-row:1}
  .gm-account-grid[b-jtc9wglyy1]{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gm-field--description[b-jtc9wglyy1]{grid-column:span 3}
}
@media(max-width:760px){
  .gm-page-head[b-jtc9wglyy1]{align-items:stretch;flex-direction:column}
  .gm-new[b-jtc9wglyy1]{width:100%}
  .gm-toolbar[b-jtc9wglyy1]{grid-template-columns:1fr}
  .gm-search[b-jtc9wglyy1]{grid-column:auto;grid-row:auto}
  .gm-filter-mode[b-jtc9wglyy1]{justify-content:stretch}
  .gm-filter-mode button[b-jtc9wglyy1]{flex:1}
  .gm-dialog[b-jtc9wglyy1]{width:100%;max-width:100%;max-height:calc(100dvh - 14px)}
  .gm-modal-content[b-jtc9wglyy1]{max-height:calc(100dvh - 14px);border-radius:18px}
  .gm-modal-header[b-jtc9wglyy1]{min-height:66px;padding:12px 13px 11px 15px}
  .gm-modal-body[b-jtc9wglyy1]{padding:14px 13px 18px}
  .gm-modal-footer[b-jtc9wglyy1]{display:grid;grid-template-columns:1fr;padding:12px 13px 14px}
  .gm-tabs[b-jtc9wglyy1]{top:-14px;overflow-x:auto;padding:9px 2px;scrollbar-width:none}
  .gm-tabs[b-jtc9wglyy1]::-webkit-scrollbar{display:none}
  .gm-form-grid[b-jtc9wglyy1],.gm-add-grid[b-jtc9wglyy1]{grid-template-columns:1fr}
  .gm-field--span-2[b-jtc9wglyy1]{grid-column:span 1}
  .gm-section[b-jtc9wglyy1]{padding:15px}
  .gm-section-head[b-jtc9wglyy1]{flex-direction:column}
  .gm-account-main[b-jtc9wglyy1]{grid-template-columns:36px minmax(0,1fr)}
  .gm-account-main>.gm-status[b-jtc9wglyy1]{grid-column:1/-1;justify-self:start}
  .gm-account-grid[b-jtc9wglyy1]{grid-template-columns:1fr 1fr}
  .gm-field--description[b-jtc9wglyy1]{grid-column:span 2}
  .gm-account-actions[b-jtc9wglyy1]{grid-column:1/-1;justify-content:flex-end}
}
@media(max-width:480px){
  .gm-account-grid[b-jtc9wglyy1]{grid-template-columns:1fr}
  .gm-field--description[b-jtc9wglyy1]{grid-column:span 1}
  .gm-price-add[b-jtc9wglyy1]{grid-template-columns:1fr}
}

/* Los filtros de mantenedores y fecha conservan la altura compacta de la grilla. */
.core-column-filters[b-jtc9wglyy1]  .ssel-trigger,
.core-column-filters .core-column-filter[type="date"][b-jtc9wglyy1] {
  box-sizing:border-box;
  width:100%;
  min-width:128px;
  height:36px;
  min-height:36px;
  font-size:12px;
}

/* GLOBALTRAINER_MATRICULA_FILTROS_GLOBAL_MOBILE_V2_CSS_20260921
   Desktop conserva la fila de filtros; móvil usa un panel accesible fuera de la tabla horizontal. */
.gm-mobile-column-filters[b-jtc9wglyy1]{display:none}

@media(max-width:760px){
  .gm-mobile-column-filters[b-jtc9wglyy1]{display:block;margin:12px 0 10px;position:relative;z-index:8}
  .gm-mobile-filter-panel[b-jtc9wglyy1]{overflow:visible;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-xs)}
  .gm-mobile-filter-panel>summary[b-jtc9wglyy1]{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;cursor:pointer;list-style:none;border-radius:14px;background:var(--surface-2);color:var(--text);font-size:12px;font-weight:800}
  .gm-mobile-filter-panel[open]>summary[b-jtc9wglyy1]{border-bottom:1px solid var(--border);border-radius:14px 14px 0 0}
  .gm-mobile-filter-panel>summary[b-jtc9wglyy1]::-webkit-details-marker{display:none}
  .gm-mobile-filter-panel>summary span[b-jtc9wglyy1]{display:inline-flex;align-items:center;gap:8px}
  .gm-mobile-filter-panel>summary i[b-jtc9wglyy1]{color:var(--brand)}
  .gm-mobile-filter-panel>summary small[b-jtc9wglyy1]{color:var(--text-muted);font-size:10px;font-weight:700}
  .gm-mobile-filter-grid[b-jtc9wglyy1]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;overflow:visible}
  .gm-mobile-filter-field[b-jtc9wglyy1]{display:grid;min-width:0;gap:5px;margin:0;overflow:visible}
  .gm-mobile-filter-field>span[b-jtc9wglyy1]{color:var(--text-2);font-size:10.5px;font-weight:750}
  .gm-mobile-filter-field .core-column-filter[b-jtc9wglyy1],
  .gm-mobile-filter-field[b-jtc9wglyy1]  .core-column-filter,
  .gm-mobile-filter-field[b-jtc9wglyy1]  .ssel-trigger{box-sizing:border-box;width:100%;min-width:0;min-height:38px;font-size:12px}
  .gm-mobile-filter-field[b-jtc9wglyy1]  .ssel{position:relative;z-index:20;overflow:visible}
  .gm-mobile-filter-field[b-jtc9wglyy1]  .ssel-menu,
  .gm-mobile-filter-field[b-jtc9wglyy1]  .ssel-dropdown{z-index:20050}
  .gm-mobile-filter-actions[b-jtc9wglyy1]{display:flex;justify-content:flex-end;padding:0 12px 12px}
  .gm-table thead .core-column-filters[b-jtc9wglyy1]{display:none}
}

@media(max-width:480px){
  .gm-mobile-filter-grid[b-jtc9wglyy1]{grid-template-columns:1fr}
  .gm-mobile-filter-panel>summary[b-jtc9wglyy1]{align-items:flex-start;flex-direction:column}
  .gm-mobile-filter-actions .btn[b-jtc9wglyy1]{width:100%;justify-content:center}
}


/* Pages/GestionAgendamientoPracticaVehicular.razor.css */
:host[b-u7lvvfw9yo]{display:block}.gt-page[b-u7lvvfw9yo]{display:grid;gap:1rem;padding-bottom:2rem}.gt-head[b-u7lvvfw9yo]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.gt-head p[b-u7lvvfw9yo]{margin:.35rem 0 0;color:var(--text-muted)}.gt-card[b-u7lvvfw9yo]{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 8px 24px rgba(15,23,42,.06)}.gt-card .card-body[b-u7lvvfw9yo]{padding:1rem}.gt-toolbar[b-u7lvvfw9yo]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.8rem}.gt-tabs[b-u7lvvfw9yo]{display:flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.gt-tabs button[b-u7lvvfw9yo]{padding:.55rem .9rem;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:800}.gt-tabs button.active[b-u7lvvfw9yo]{background:var(--surface);color:var(--text);box-shadow:0 2px 8px rgba(15,23,42,.08)}.gt-search[b-u7lvvfw9yo]{position:relative;flex:1}.gt-search i[b-u7lvvfw9yo]{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.gt-search input[b-u7lvvfw9yo]{min-height:44px;padding-left:42px;border-radius:11px}.gt-table-wrap[b-u7lvvfw9yo]{overflow:auto;border:1px solid var(--border);border-radius:14px}.gt-table[b-u7lvvfw9yo]{min-width:900px;margin:0}.gt-table th[b-u7lvvfw9yo]{padding:.75rem;border:0;background:var(--text);color:var(--surface);font-size:.72rem;letter-spacing:.04em}.gt-table td[b-u7lvvfw9yo]{padding:.75rem;vertical-align:middle}.gt-actions[b-u7lvvfw9yo]{display:flex;gap:7px;white-space:nowrap}.gt-actions .gvCmdBtn[b-u7lvvfw9yo]{margin:0}.gt-badge[b-u7lvvfw9yo]{display:inline-flex;padding:.25rem .58rem;border-radius:999px;font-size:.7rem;font-weight:850}.gt-badge.ok[b-u7lvvfw9yo]{background:var(--surface);color:var(--success)}.gt-badge.off[b-u7lvvfw9yo]{background:var(--surface);color:var(--danger)}.gt-badge.warn[b-u7lvvfw9yo]{background:var(--surface);color:var(--danger)}.gt-modal[b-u7lvvfw9yo]{width:min(820px,95vw);max-width:min(820px,95vw)}.gt-form[b-u7lvvfw9yo]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.gt-field.span-2[b-u7lvvfw9yo]{grid-column:span 2}.gt-field label[b-u7lvvfw9yo]{display:block;margin-bottom:.3rem;font-size:.77rem;font-weight:800}.gt-field .form-control[b-u7lvvfw9yo],.gt-field .form-select[b-u7lvvfw9yo]{min-height:43px;border-radius:10px}.gt-empty[b-u7lvvfw9yo]{padding:3rem;text-align:center;color:var(--text-muted)}.gt-loading[b-u7lvvfw9yo]{display:grid;min-height:320px;place-content:center;justify-items:center;gap:.6rem}.gt-notice[b-u7lvvfw9yo]{padding:.75rem .9rem;border-radius:12px}.gt-notice.success[b-u7lvvfw9yo]{background:var(--surface);color:var(--success)}.gt-notice.error[b-u7lvvfw9yo]{background:var(--surface);color:var(--danger)}.gt-stats[b-u7lvvfw9yo]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.gt-stat[b-u7lvvfw9yo]{padding:.9rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.gt-stat small[b-u7lvvfw9yo],.gt-stat strong[b-u7lvvfw9yo]{display:block}.gt-stat small[b-u7lvvfw9yo]{color:var(--text-muted)}.gt-stat strong[b-u7lvvfw9yo]{font-size:1.25rem}@media(max-width:760px){.gt-head[b-u7lvvfw9yo],.gt-toolbar[b-u7lvvfw9yo]{align-items:stretch;flex-direction:column}.gt-form[b-u7lvvfw9yo],.gt-stats[b-u7lvvfw9yo]{grid-template-columns:1fr}.gt-field.span-2[b-u7lvvfw9yo]{grid-column:auto}}.gt-table[b-u7lvvfw9yo]{min-width:1900px}.gt-table td small[b-u7lvvfw9yo]{display:block;color:var(--text-muted);margin-top:2px}

/* Pages/GestionMaterialClase.razor.css */
:host[b-h9mvq2apw5] { display:block; }
.gmc-page-head[b-h9mvq2apw5] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gmc-subtitle[b-h9mvq2apw5] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gmc-toolbar-card[b-h9mvq2apw5],.gmc-list-card[b-h9mvq2apw5] { margin-bottom:18px;overflow:visible; }
.gmc-toolbar-card .card-body[b-h9mvq2apw5] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gmc-tabs[b-h9mvq2apw5] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gmc-tabs button[b-h9mvq2apw5] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gmc-tabs button.active[b-h9mvq2apw5] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gmc-tools[b-h9mvq2apw5] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gmc-search[b-h9mvq2apw5] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gmc-search > i[b-h9mvq2apw5] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gmc-search input[b-h9mvq2apw5] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gmc-search input:focus[b-h9mvq2apw5] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gmc-list-head[b-h9mvq2apw5] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gmc-list-head strong[b-h9mvq2apw5] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gmc-list-head span[b-h9mvq2apw5] { color:var(--text-muted);font-size:12px; }
.gmc-table-wrap[b-h9mvq2apw5] { overflow:auto; }
.gmc-table[b-h9mvq2apw5] { min-width:1100px; }
.gmc-table td strong[b-h9mvq2apw5],.gmc-table td small[b-h9mvq2apw5] { display:block; }
.gmc-table td small[b-h9mvq2apw5] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gmc-actions[b-h9mvq2apw5] { display:flex;gap:6px; }
.academic-form-grid[b-h9mvq2apw5] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-h9mvq2apw5] { min-width:0; }
.academic-field--span-2[b-h9mvq2apw5] { grid-column:1/-1; }
.academic-field label[b-h9mvq2apw5] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-h9mvq2apw5] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-h9mvq2apw5] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-h9mvq2apw5] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-h9mvq2apw5] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-h9mvq2apw5] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-h9mvq2apw5] { text-align:center; }
.academic-confirm > i[b-h9mvq2apw5] { color:var(--warning);font-size:34px; }
.academic-file-name[b-h9mvq2apw5]{display:inline-flex;align-items:center;gap:6px}.academic-file-selected[b-h9mvq2apw5]{color:var(--success);font-weight:700}
@media(max-width:760px){ .gmc-page-head[b-h9mvq2apw5]{align-items:stretch;flex-direction:column} .gmc-tools[b-h9mvq2apw5]{width:100%;flex-wrap:wrap} .gmc-search[b-h9mvq2apw5]{min-width:100%;max-width:none} .academic-form-grid[b-h9mvq2apw5]{grid-template-columns:1fr} .academic-field--span-2[b-h9mvq2apw5]{grid-column:auto} }

/* Pages/GestionPagos.razor.css */
:host[b-1t98u58eip] {
    display: block;
}

.gp-page[b-1t98u58eip] {
    padding: 0;
}

.gp-loading[b-1t98u58eip],
.gp-access-denied[b-1t98u58eip],
.gp-welcome[b-1t98u58eip] {
    min-height: 360px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: .75rem;
    padding: 2rem;
    text-align: center;
    color: var(--text-muted);
}

.gp-loading i[b-1t98u58eip],
.gp-access-denied > i[b-1t98u58eip],
.gp-welcome > i[b-1t98u58eip] {
    font-size: 3rem;
    color: var(--brand);
}

.gp-access-denied h4[b-1t98u58eip],
.gp-welcome h4[b-1t98u58eip] {
    margin: .25rem 0 0;
    color: var(--text);
    font-weight: 850;
}

.gp-search-card[b-1t98u58eip],
.gp-student-card[b-1t98u58eip],
.gp-main-card[b-1t98u58eip] {
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    box-shadow: var(--shadow-sm, 0 8px 24px rgba(15, 23, 42, .07));
}

.gp-search-card[b-1t98u58eip] {
    position: relative;
    z-index: 15;
    padding: 1.15rem 1.25rem;
    margin-bottom: 1rem;
}

.gp-search-head[b-1t98u58eip],
.gp-toolbar[b-1t98u58eip],
.gp-student-card[b-1t98u58eip],
.gp-student-main[b-1t98u58eip],
.gp-head-actions[b-1t98u58eip],
.gp-actions[b-1t98u58eip],
.gp-student-meta[b-1t98u58eip],
.gp-tabs[b-1t98u58eip],
.gp-subactions[b-1t98u58eip],
.gp-input-action[b-1t98u58eip],
.gp-partial[b-1t98u58eip],
.gp-switch[b-1t98u58eip] {
    display: flex;
    align-items: center;
}

.gp-search-head[b-1t98u58eip],
.gp-toolbar[b-1t98u58eip],
.gp-student-card[b-1t98u58eip] {
    justify-content: space-between;
}

.gp-search-head[b-1t98u58eip] {
    gap: 1rem;
    margin-bottom: 1rem;
}

.gp-search-head h3[b-1t98u58eip],
.gp-student-main h3[b-1t98u58eip] {
    margin: .12rem 0 .25rem;
    color: var(--text);
    font-weight: 850;
}

.gp-search-head p[b-1t98u58eip] {
    margin: 0;
    color: var(--text-muted);
}

.gp-eyebrow[b-1t98u58eip] {
    display: block;
    color: var(--brand);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.gp-head-actions[b-1t98u58eip],
.gp-actions[b-1t98u58eip],
.gp-tabs[b-1t98u58eip],
.gp-subactions[b-1t98u58eip] {
    gap: .55rem;
}

.gp-student-search[b-1t98u58eip] {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: .65rem;
}

.gp-filter[b-1t98u58eip],
.gp-search-input input[b-1t98u58eip] {
    min-height: 44px;
    border-radius: 12px;
}

.gp-search-input[b-1t98u58eip] {
    position: relative;
}

.gp-search-input > i:first-child[b-1t98u58eip] {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.gp-search-input input[b-1t98u58eip] {
    padding-left: 42px;
    padding-right: 42px;
}

.gp-search-spinner[b-1t98u58eip] {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    color: var(--brand);
}

.gp-search-results[b-1t98u58eip] {
    position: absolute;
    left: 1.25rem;
    right: 1.25rem;
    top: calc(100% - 8px);
    max-height: 330px;
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--surface);
    box-shadow: 0 20px 48px rgba(15, 23, 42, .18);
}

.gp-search-results button[b-1t98u58eip] {
    width: 100%;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) 20px;
    align-items: center;
    gap: .8rem;
    padding: .8rem 1rem;
    border-bottom: 1px solid var(--border-lite);
    color: var(--text);
    text-align: left;
    transition: background .16s ease;
}

.gp-search-results button:last-child[b-1t98u58eip] {
    border-bottom: 0;
}

.gp-search-results button:hover[b-1t98u58eip] {
    background: var(--brand-light, rgba(29, 25, 76, .08));
}

.gp-search-results button span:nth-child(2)[b-1t98u58eip] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.gp-search-results button small[b-1t98u58eip] {
    overflow: hidden;
    color: var(--text-muted);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-result-avatar[b-1t98u58eip] {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--brand-light, rgba(29, 25, 76, .10));
    color: var(--brand);
}

.gp-result-empty[b-1t98u58eip] {
    padding: 1.25rem;
    color: var(--text-muted);
    text-align: center;
}

.gp-student-card[b-1t98u58eip] {
    gap: 1.2rem;
    padding: 1.1rem 1.25rem;
    margin-bottom: 1rem;
    background: linear-gradient(145deg, var(--surface), var(--surface-2));
}

.gp-student-main[b-1t98u58eip] {
    min-width: 280px;
    gap: .9rem;
}

.gp-avatar[b-1t98u58eip] {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: var(--brand-light, rgba(29, 25, 76, .10));
    color: var(--brand);
    font-size: 1.65rem;
}

.gp-student-meta[b-1t98u58eip] {
    flex-wrap: wrap;
    gap: .35rem .85rem;
    color: var(--text-muted);
    font-size: .8rem;
}

.gp-student-meta span[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    gap: .32rem;
}

.gp-academic[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(3, minmax(130px, 1fr));
    gap: .65rem;
    flex: 1;
    max-width: 720px;
}

.gp-academic > div[b-1t98u58eip] {
    min-width: 0;
    padding: .75rem .85rem;
    border: 1px solid var(--border);
    border-radius: 13px;
    background: var(--surface);
}

.gp-academic small[b-1t98u58eip],
.gp-academic strong[b-1t98u58eip] {
    display: block;
}

.gp-academic small[b-1t98u58eip] {
    margin-bottom: .2rem;
    color: var(--text-muted);
    font-size: .7rem;
}

.gp-academic strong[b-1t98u58eip] {
    overflow: hidden;
    color: var(--text);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-summary[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
}

.gp-summary-card[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 0;
    padding: .9rem 1rem;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: var(--surface);
    box-shadow: var(--shadow-xs, 0 2px 8px rgba(15, 23, 42, .05));
}

.gp-summary-card > span[b-1t98u58eip] {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    font-size: 1.05rem;
}

.gp-summary-card > div[b-1t98u58eip] {
    min-width: 0;
}

.gp-summary-card small[b-1t98u58eip],
.gp-summary-card strong[b-1t98u58eip] {
    display: block;
}

.gp-summary-card small[b-1t98u58eip] {
    color: var(--text-muted);
}

.gp-summary-card strong[b-1t98u58eip] {
    overflow: hidden;
    color: var(--text);
    font-size: 1.15rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-summary-card.debt > span[b-1t98u58eip] {
    background: var(--surface);
    color: var(--danger);
}

.gp-summary-card.pending > span[b-1t98u58eip] {
    background: var(--surface);
    color: var(--danger);
}

.gp-summary-card.receipts > span[b-1t98u58eip] {
    background: var(--surface);
    color: var(--p);
}

.gp-summary-card.selected > span[b-1t98u58eip] {
    background: var(--surface);
    color: var(--success);
}

.gp-main-card[b-1t98u58eip] {
    border: 0;
    overflow: hidden;
}

.gp-main-card .card-body[b-1t98u58eip] {
    padding: 1.15rem;
}

.gp-toolbar[b-1t98u58eip] {
    gap: 1rem;
    margin-bottom: 1rem;
}

.gp-tabs[b-1t98u58eip] {
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 3px;
    background: var(--surface-2);
}

.gp-tabs button[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .55rem .8rem;
    border-radius: 9px;
    color: var(--text-muted);
    font-weight: 750;
    white-space: nowrap;
}

.gp-tabs button.active[b-1t98u58eip] {
    background: var(--surface);
    color: var(--brand);
    box-shadow: var(--shadow-xs, 0 2px 7px rgba(15, 23, 42, .08));
}

.gp-tabs button span[b-1t98u58eip] {
    min-width: 21px;
    height: 21px;
    display: grid;
    place-items: center;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--brand-light, rgba(29, 25, 76, .10));
    font-size: .68rem;
}

.gp-table-wrap[b-1t98u58eip] {
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 14px;
}

.gp-table[b-1t98u58eip],
.gp-mini-table[b-1t98u58eip] {
    margin: 0;
    color: var(--text);
}

.gp-table[b-1t98u58eip] {
    min-width: 900px;
}

.gp-receipts-table[b-1t98u58eip] {
    min-width: 1320px;
}

.gp-mini-table[b-1t98u58eip] {
    min-width: 650px;
}

.gp-table thead th[b-1t98u58eip],
.gp-mini-table thead th[b-1t98u58eip] {
    padding: .72rem .75rem;
    border-bottom-width: 1px;  
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .04em;
    white-space: nowrap;
}

.gp-table td[b-1t98u58eip],
.gp-mini-table td[b-1t98u58eip] {
    padding: .72rem .75rem;
    vertical-align: middle;
}

.gp-table tbody tr[b-1t98u58eip] {
    cursor: pointer;
}

.gp-table td small[b-1t98u58eip] {
    display: block;
    margin-top: .15rem;
    color: var(--text-muted);
}

.gp-check-col[b-1t98u58eip] {
    width: 42px;
}

.gp-actions-cell[b-1t98u58eip] {
    width: 285px;
    min-width: 285px;
    white-space: nowrap;
}

.gp-row-cancelled[b-1t98u58eip] {
    opacity: .68;
    background: rgba(239, 68, 68, .035);
}

.gp-ellipsis[b-1t98u58eip] {
    display: block;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-secondary[b-1t98u58eip] {
    color: var(--text-muted);
    font-size: .76rem;
}

.gp-pill[b-1t98u58eip],
.gp-fe[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: .25rem .58rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 850;
    white-space: nowrap;
}

.gp-pill.pending[b-1t98u58eip],
.gp-pill.issued[b-1t98u58eip],
.gp-fe.pending[b-1t98u58eip] {
    background: var(--surface);
    color: var(--danger);
}

.gp-pill.overdue[b-1t98u58eip],
.gp-pill.cancelled[b-1t98u58eip],
.gp-fe.cancelled[b-1t98u58eip],
.gp-fe.rejected[b-1t98u58eip],
.gp-fe.error[b-1t98u58eip] {
    background: var(--surface);
    color: var(--danger);
}

.gp-fe.accepted[b-1t98u58eip] {
    background: var(--surface);
    color: var(--success);
}

.gp-fe.observed[b-1t98u58eip] {
    background: var(--surface);
    color: var(--warning);
}

.gp-empty[b-1t98u58eip] {
    min-height: 240px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: .7rem;
    color: var(--text-muted);
    text-align: center;
}

.gp-empty i[b-1t98u58eip] {
    font-size: 2.7rem;
    color: var(--brand);
}

.gp-modal-concept[b-1t98u58eip] {
    width: min(900px, 96vw);
}

.gp-modal-payment[b-1t98u58eip] {
    width: calc(100vw - 32px);
    max-width: calc(100vw - 32px);
}

.gp-modal-payment .gxModal__content[b-1t98u58eip] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-height: calc(100vh - 32px);
}

.gp-modal-payment .gp-payment-body[b-1t98u58eip] {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    overflow: auto;
}

.gp-modal-detail[b-1t98u58eip] {
    width: min(1020px, 96vw);
}

.gp-modal-confirm[b-1t98u58eip] {
    width: min(520px, 94vw);
}

.gp-modal-pdf[b-1t98u58eip] {
    width: min(1120px, 96vw);
}

.gp-payment-body[b-1t98u58eip] {
    max-height: 77vh;
    overflow: auto;
}

.gp-form-grid[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
}

.gp-form-grid.three[b-1t98u58eip] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gp-form-grid.concept[b-1t98u58eip] {
    grid-template-columns: 1.5fr .8fr .9fr 1.2fr;
}

.gp-form-grid.receiver[b-1t98u58eip] {
    grid-template-columns: .8fr 1.2fr;
    margin-top: .75rem;
}

.gp-field[b-1t98u58eip] {
    min-width: 0;
}

.gp-field.span-3[b-1t98u58eip] {
    grid-column: span 3;
}

.gp-field label[b-1t98u58eip] {
    display: block;
    margin-bottom: .35rem;
    color: var(--text-2);
    font-size: .77rem;
    font-weight: 800;
}

.gp-field .form-control[b-1t98u58eip],
.gp-field .form-select[b-1t98u58eip],
.gp-payment-row .form-control[b-1t98u58eip],
.gp-payment-row .form-select[b-1t98u58eip] {
    min-height: 40px;
    border-radius: 10px;
}

.gp-subactions[b-1t98u58eip] {
    justify-content: flex-end;
    margin-top: .8rem;
}

.gp-payment-layout[b-1t98u58eip] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 315px;
    align-items: start;
    gap: 1rem;
}

.gp-payment-main[b-1t98u58eip] {
    min-width: 0;
}

.gp-section[b-1t98u58eip] {
    padding: 1rem;
    margin-bottom: .85rem;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--surface);
}

.gp-section-title[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin-bottom: .85rem;
    color: var(--text);
    font-weight: 850;
}

.gp-section-title > span[b-1t98u58eip] {
    width: 27px;
    height: 27px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: var(--brand);
    color: var(--surface);
    font-size: .72rem;
}

.gp-partial[b-1t98u58eip],
.gp-switch[b-1t98u58eip] {
    gap: .5rem;
    color: var(--text-2);
    font-weight: 750;
}

.gp-partial[b-1t98u58eip] {
    margin: .75rem 0;
}

.gp-switch-field[b-1t98u58eip] {
    display: flex;
    align-items: end;
    padding-bottom: .65rem;
}

.gp-input-action[b-1t98u58eip] {
    gap: .4rem;
}

.gp-input-action input[b-1t98u58eip] {
    flex: 1;
}

.gp-payment-row[b-1t98u58eip] {
    display: grid;
    grid-template-columns: 1.25fr .65fr 1fr 42px;
    gap: .5rem;
    margin-bottom: .55rem;
}

.gp-payment-summary[b-1t98u58eip] {
    position: sticky;
    top: 0;
    padding: 1.15rem;
    border: 1px solid color-mix(in srgb, var(--brand) 18%, transparent);
    border-radius: 16px;
    background: linear-gradient(145deg, var(--brand-light), var(--surface));
}

.gp-payment-summary h4[b-1t98u58eip] {
    margin: .25rem 0 1rem;
    color: var(--text);
    font-weight: 850;
}

.gp-payment-summary > div:not(.gp-progress)[b-1t98u58eip] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    padding: .62rem 0;
    border-bottom: 1px solid var(--border);
}

.gp-payment-summary > div span[b-1t98u58eip],
.gp-payment-summary small[b-1t98u58eip] {
    color: var(--text-muted);
}

.gp-payment-summary strong[b-1t98u58eip] {
    color: var(--text);
}

.gp-payment-summary strong.ok[b-1t98u58eip] {
    color: var(--success);
}

.gp-payment-summary strong.warn[b-1t98u58eip] {
    color: var(--danger);
}

.gp-progress[b-1t98u58eip] {
    height: 7px;
    margin: 1rem 0;
    overflow: hidden;
    border-radius: 999px;
    background: var(--border);
}

.gp-progress span[b-1t98u58eip] {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--brand);
    transition: width .2s ease;
}

.gp-alert[b-1t98u58eip],
.gp-confirm-note[b-1t98u58eip],
.gp-detail-note[b-1t98u58eip] {
    padding: .75rem .85rem;
    border-radius: 11px;
}

.gp-alert[b-1t98u58eip] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    margin-bottom: .8rem;
}

.gp-alert.error[b-1t98u58eip] {
    border: 1px solid var(--warning);
    background: var(--surface);
    color: var(--danger);
}

.gp-alert.warning[b-1t98u58eip] {
    border: 1px solid var(--p);
    background: var(--surface);
    color: var(--danger);
}

.gp-confirm-icon[b-1t98u58eip] {
    width: 68px;
    height: 68px;
    display: grid;
    place-items: center;
    margin: 0 auto .8rem;
    border-radius: 50%;
    background: var(--surface);
    color: var(--success);
    font-size: 2rem;
}

.gp-confirm-note[b-1t98u58eip] {
    margin-top: .8rem;
    border-left: 4px solid var(--brand);
    background: var(--brand-light, rgba(29, 25, 76, .08));
    color: var(--text-2);
}

.gp-detail-grid[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .7rem;
    margin-bottom: 1rem;
}

.gp-detail-grid > div[b-1t98u58eip] {
    padding: .75rem;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface-2);
}

.gp-detail-grid small[b-1t98u58eip],
.gp-detail-grid strong[b-1t98u58eip] {
    display: block;
}

.gp-detail-grid small[b-1t98u58eip] {
    color: var(--text-muted);
}

.gp-detail-note[b-1t98u58eip] {
    margin-top: 1rem;
    background: var(--surface-2);
    color: var(--text-2);
}

.gp-fe-message[b-1t98u58eip] {
    white-space: pre-wrap;
    word-break: break-word;
}

.gp-pdf-body[b-1t98u58eip] {
    height: 72vh;
    padding: 0;
}

.gp-pdf-body iframe[b-1t98u58eip] {
    width: 100%;
    height: 100%;
    border: 0;
    background: var(--surface);
}

@media (max-width: 1120px) {
    .gp-student-card[b-1t98u58eip] {
        align-items: stretch;
        flex-direction: column;
    }

    .gp-academic[b-1t98u58eip] {
        width: 100%;
        max-width: none;
    }

    .gp-summary[b-1t98u58eip] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gp-payment-layout[b-1t98u58eip] {
        grid-template-columns: 1fr;
    }

    .gp-payment-summary[b-1t98u58eip] {
        position: static;
    }

    .gp-form-grid.concept[b-1t98u58eip] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .gp-search-head[b-1t98u58eip],
    .gp-toolbar[b-1t98u58eip] {
        align-items: stretch;
        flex-direction: column;
    }

    .gp-head-actions[b-1t98u58eip],
    .gp-actions[b-1t98u58eip] {
        flex-wrap: wrap;
    }

    .gp-student-search[b-1t98u58eip],
    .gp-academic[b-1t98u58eip],
    .gp-form-grid[b-1t98u58eip],
    .gp-form-grid.three[b-1t98u58eip],
    .gp-form-grid.concept[b-1t98u58eip],
    .gp-form-grid.receiver[b-1t98u58eip],
    .gp-detail-grid[b-1t98u58eip] {
        grid-template-columns: 1fr;
    }

    .gp-field.span-3[b-1t98u58eip] {
        grid-column: span 1;
    }

    .gp-summary[b-1t98u58eip] {
        grid-template-columns: 1fr;
    }

    .gp-payment-row[b-1t98u58eip] {
        grid-template-columns: 1fr 1fr;
    }

    .gp-payment-row > :nth-child(3)[b-1t98u58eip] {
        grid-column: span 1;
    }

    .gp-search-results[b-1t98u58eip] {
        left: .75rem;
        right: .75rem;
    }

    .gp-main-card .card-body[b-1t98u58eip],
    .gp-search-card[b-1t98u58eip],
    .gp-student-card[b-1t98u58eip] {
        padding: .85rem;
    }
}

@media (max-width: 480px) {
    .gp-summary-card[b-1t98u58eip] {
        padding: .75rem;
    }

    .gp-student-main[b-1t98u58eip] {
        align-items: flex-start;
    }

    .gp-avatar[b-1t98u58eip] {
        width: 50px;
        height: 50px;
        flex-basis: 50px;
        border-radius: 14px;
    }

    .gp-payment-row[b-1t98u58eip] {
        grid-template-columns: 1fr;
    }

    .gp-tabs[b-1t98u58eip] {
        width: 100%;
    }

    .gp-tabs button[b-1t98u58eip] {
        flex: 1;
        justify-content: center;
    }
}

@media print {
    body > *[b-1t98u58eip] {
        visibility: hidden;
    }

    .gp-print-area[b-1t98u58eip],
    .gp-print-area *[b-1t98u58eip] {
        visibility: visible;
    }

    .gp-print-area[b-1t98u58eip] {
        position: absolute;
        inset: 0 auto auto 0;
        width: 210mm;
        min-height: 297mm;
        margin: 0;
        padding: 12mm;
        border-radius: 0;
        box-shadow: none;
        background: var(--surface);
        color: var(--text);
    }

    .gp-no-print[b-1t98u58eip] {
        display: none;
    }

    .gp-table-wrap[b-1t98u58eip] {
        overflow: visible;
    }

    .gp-mini-table[b-1t98u58eip] {
        min-width: 0;
    }
}

/* =========================================================
   Acciones de comprobantes
   - Iconos explÃ­citos dentro del botÃ³n: evita pÃ©rdidas de glyph
     al aplicar las clases Font Awesome directamente al <button>.
   - Espacio fijo para las siete acciones del flujo original.
   ========================================================= */
.gp-actions-cell[b-1t98u58eip] {
    width: 326px;
    min-width: 326px;
    padding-inline: .55rem;
    white-space: nowrap;
}

.gp-actions-group[b-1t98u58eip] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 5px;
    min-width: max-content;
}

.gp-actions-group .gvCmdBtn[b-1t98u58eip] {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    margin: 0;
    padding: 0;
    border-radius: 10px;
}

.gp-actions-group .gvCmdBtn > i[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    font-size: 15px;
    line-height: 1;
    pointer-events: none;
}

.gp-action-view[b-1t98u58eip] {
    color: var(--p);
    background: rgba(59,130,246,.10);
    border: 1px solid rgba(59,130,246,.25);
}

.gp-action-print[b-1t98u58eip] {
    color: var(--text);
    background: rgba(17,24,39,.06);
    border: 1px solid rgba(17,24,39,.14);
}

.gp-action-edit[b-1t98u58eip] {
    color: var(--warning);
    background: rgba(245,158,11,.11);
    border: 1px solid rgba(245,158,11,.30);
}

.gp-action-verify[b-1t98u58eip] {
    color: var(--p);
    background: rgba(37,99,235,.10);
    border: 1px solid rgba(37,99,235,.25);
}

.gp-action-cancel[b-1t98u58eip] {
    color: var(--danger);
    background: rgba(239,68,68,.10);
    border: 1px solid rgba(239,68,68,.28);
}

.gp-action-message[b-1t98u58eip] {
    color: var(--p);
    background: rgba(124,58,237,.10);
    border: 1px solid rgba(124,58,237,.25);
}

.gp-action-resend[b-1t98u58eip] {
    color: var(--text);
    background: rgba(71,85,105,.09);
    border: 1px solid rgba(71,85,105,.22);
}

.gp-actions-group .gvCmdBtn:hover:not(:disabled)[b-1t98u58eip] {
    transform: translateY(-2px) scale(1.06);
    box-shadow: 0 5px 14px rgba(15,23,42,.16);
}

.gp-actions-group .gvCmdBtn:disabled[b-1t98u58eip] {
    opacity: .48;
    cursor: not-allowed;
    transform: none;
}

@media (max-width: 900px) {
    .gp-actions-cell[b-1t98u58eip] {
        width: 326px;
        min-width: 326px;
    }
}
/* =========================================================
   Funciones 2–15: filtros, paginación, descuentos y popups
   ========================================================= */
.gp-table-tools[b-1t98u58eip] {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 170px 155px 155px auto auto;
    gap: .55rem;
    align-items: center;
    padding: .75rem;
    margin: .75rem 0;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--surface-2);
}

.gp-table-tools--receipts[b-1t98u58eip] {
    grid-template-columns: minmax(280px, 1.6fr) repeat(7, minmax(145px, .75fr)) 150px 150px auto auto;
    overflow-x: auto;
}

.gp-tool-search[b-1t98u58eip] {
    position: relative;
    min-width: 0;
}

.gp-tool-search > i[b-1t98u58eip] {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 13px;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.gp-tool-search input[b-1t98u58eip] {
    padding-left: 38px;
}

.gp-table-tools .form-control[b-1t98u58eip],
.gp-table-tools .form-select[b-1t98u58eip],
.gp-table-tools .btn[b-1t98u58eip] {
    min-height: 40px;
    border-radius: 10px;
}

.gp-pager[b-1t98u58eip] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .75rem .2rem 0;
    color: var(--text-muted);
    font-size: .8rem;
}

.gp-pager > div[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.gp-pager strong[b-1t98u58eip] {
    color: var(--text);
}

.gp-receipts-table[b-1t98u58eip] {
    min-width: 1900px;
}

.gp-file-link[b-1t98u58eip] {
    width: 34px;
    height: 34px;
    display: inline-grid;
    place-items: center;
    border: 1px solid rgba(37, 99, 235, .22);
    border-radius: 10px;
    background: rgba(37, 99, 235, .08);
    color: var(--p);
}

.gp-file-link:hover[b-1t98u58eip] {
    transform: translateY(-1px);
    background: rgba(37, 99, 235, .14);
}

.gp-nc-badge[b-1t98u58eip] {
    min-width: 30px;
    min-height: 23px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 4px;
    padding: 2px 7px;
    border: 1px solid rgba(124, 58, 237, .24);
    border-radius: 999px;
    background: rgba(124, 58, 237, .10);
    color: var(--p);
    font-size: .65rem;
    font-weight: 900;
}

.gp-adjust-grid[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
    align-items: end;
    gap: .75rem;
    margin-top: .85rem;
}

.gp-adjust-grid small[b-1t98u58eip] {
    display: block;
    margin-top: .3rem;
    color: var(--text-muted);
    font-size: .72rem;
}

.gp-payment-detail-table[b-1t98u58eip] {
    min-width: 760px;
}

.gp-payment-detail-table th:first-child[b-1t98u58eip],
.gp-payment-detail-table td:first-child[b-1t98u58eip] {
    width: 46px;
}

.gp-progress-native[b-1t98u58eip] {
    width: 100%;
    height: 8px;
    margin: 1rem 0;
    overflow: hidden;
    border: 0;
    border-radius: 999px;
    background: var(--border);
    accent-color: var(--brand);
}

.gp-amount-words[b-1t98u58eip] {
    margin: .65rem 0;
    color: var(--text-2);
    font-size: .75rem;
    font-weight: 800;
    line-height: 1.4;
}

.gp-file-preview[b-1t98u58eip] {
    display: grid;
    gap: .65rem;
    margin-top: .85rem;
    padding: .75rem;
    border: 1px solid var(--border);
    border-radius: 13px;
    background: var(--surface-2);
}

.gp-file-preview > div[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.gp-file-preview > div strong[b-1t98u58eip] {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gp-file-preview iframe[b-1t98u58eip],
.gp-file-preview img[b-1t98u58eip] {
    width: 100%;
    height: 310px;
    border: 0;
    border-radius: 10px;
    background: var(--surface);
    object-fit: contain;
}

.gp-modal-review[b-1t98u58eip] {
    width: min(1080px, 96vw);
}

.gp-review-grid[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .65rem;
    margin-bottom: 1rem;
}

.gp-review-grid > div[b-1t98u58eip] {
    padding: .7rem .8rem;
    border: 1px solid var(--border);
    border-radius: 11px;
    background: var(--surface-2);
}

.gp-review-grid small[b-1t98u58eip],
.gp-review-grid strong[b-1t98u58eip] {
    display: block;
}

.gp-review-grid small[b-1t98u58eip] {
    color: var(--text-muted);
}

.gp-review-totals[b-1t98u58eip],
.gp-detail-totals[b-1t98u58eip] {
    width: min(420px, 100%);
    margin: .85rem 0 .85rem auto;
    padding: .75rem .9rem;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface-2);
}

.gp-review-totals > div[b-1t98u58eip],
.gp-detail-totals > div[b-1t98u58eip] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .32rem 0;
}

.gp-review-totals .grand[b-1t98u58eip],
.gp-detail-totals .grand[b-1t98u58eip] {
    margin-top: .35rem;
    padding-top: .6rem;
    border-top: 1px solid var(--text);
    font-size: 1.05rem;
}

.gp-detail-file[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin-top: .85rem;
    padding: .75rem .85rem;
    border: 1px solid rgba(37, 99, 235, .20);
    border-radius: 12px;
    background: rgba(37, 99, 235, .06);
    color: var(--p);
}

.gp-detail-file span[b-1t98u58eip] {
    flex: 1;
    font-weight: 750;
}

.gp-modal-constancia[b-1t98u58eip] {
    width: min(1040px, 96vw);
}

.gp-constancia-body[b-1t98u58eip] {
    height: 76vh;
    display: grid;
    place-items: center;
    padding: .75rem;
    background: var(--surface);
}

.gp-constancia-body iframe[b-1t98u58eip],
.gp-constancia-body img[b-1t98u58eip] {
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: 10px;
    background: var(--surface);
    object-fit: contain;
}

.gp-modal-report[b-1t98u58eip] {
    width: min(1180px, 98vw);
    max-width: min(1180px, 98vw);
}

.gp-report-body[b-1t98u58eip] {
    height: 80vh;
    padding: 0;
    overflow: hidden;
    background: var(--surface);
}

.gp-report-body iframe[b-1t98u58eip] {
    width: 100%;
    height: 100%;
    border: 0;
    background: var(--surface);
}

@media (max-width: 1180px) {
    .gp-table-tools[b-1t98u58eip],
    .gp-table-tools--receipts[b-1t98u58eip] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        overflow: visible;
    }

    .gp-tool-search[b-1t98u58eip] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .gp-table-tools[b-1t98u58eip],
    .gp-table-tools--receipts[b-1t98u58eip],
    .gp-adjust-grid[b-1t98u58eip],
    .gp-review-grid[b-1t98u58eip] {
        grid-template-columns: 1fr;
    }

    .gp-tool-search[b-1t98u58eip] {
        grid-column: auto;
    }

    .gp-pager[b-1t98u58eip] {
        align-items: stretch;
        flex-direction: column;
    }

    .gp-pager > div[b-1t98u58eip] {
        justify-content: space-between;
    }

    .gp-file-preview iframe[b-1t98u58eip],
    .gp-file-preview img[b-1t98u58eip] {
        height: 240px;
    }

    .gp-constancia-body[b-1t98u58eip],
    .gp-report-body[b-1t98u58eip] {
        height: 72vh;
    }
}

/* Sobrescribe el max-width global de gxModal para los popups amplios. */
.gp-modal-concept[b-1t98u58eip] { max-width: min(900px, 96vw); }
.gp-modal-review[b-1t98u58eip] { max-width: min(1080px, 96vw); }
.gp-modal-detail[b-1t98u58eip] { max-width: min(1020px, 96vw); }
.gp-modal-pdf[b-1t98u58eip] { max-width: min(1120px, 96vw); }
.gp-modal-constancia[b-1t98u58eip] { max-width: min(1040px, 96vw); }

/* Ajustes GlobalTrainer — Gestión de Pagos */
.gp-page[b-1t98u58eip] { padding-bottom: 48px; }
.gp-student-search[b-1t98u58eip] { grid-template-columns: minmax(0, 1fr) auto; }
.gp-student-card[b-1t98u58eip] { align-items: center; }
.gp-avatar[b-1t98u58eip],
.gp-result-avatar[b-1t98u58eip] {
    display: grid;
    place-items: center;
    font-family: var(--font-heading, "Sora", sans-serif);
    font-weight: 800;
}
.gp-audit[b-1t98u58eip] { display: grid; grid-template-columns: repeat(2, minmax(120px, 1fr)); gap: 12px; }
.gp-audit div[b-1t98u58eip] { padding: 12px 14px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-2); }
.gp-audit small[b-1t98u58eip], .gp-audit strong[b-1t98u58eip] { display: block; }
.gp-audit small[b-1t98u58eip] { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
.gp-summary article[b-1t98u58eip] { min-width: 0; }
.gp-filter-row[b-1t98u58eip] {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) minmax(160px, 220px) auto;
    gap: 12px;
    align-items: end;
    margin: 14px 0;
}
.gp-search-input.compact[b-1t98u58eip] { min-height: 40px; }
.gp-page-size[b-1t98u58eip] { display: flex; align-items: center; gap: 8px; }
.gp-page-size label[b-1t98u58eip] { margin: 0; color: var(--muted); font-size: 12px; }
.gp-page-size select[b-1t98u58eip] { min-width: 78px; }
.gp-table td > small[b-1t98u58eip],
.gp-table td > strong[b-1t98u58eip] { display: block; }
.gp-row-action[b-1t98u58eip], .gp-check[b-1t98u58eip] { width: 72px; text-align: center; }
.gp-actions-column[b-1t98u58eip] { width: 132px; }
.gp-actions-cell[b-1t98u58eip] { white-space: nowrap; }
.gp-row-actions[b-1t98u58eip] { display: inline-flex; align-items: center; gap: 6px; }
.gp-document-cell[b-1t98u58eip],
.gp-status-stack[b-1t98u58eip] { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
.gp-document-cell small[b-1t98u58eip],
.gp-table td small[b-1t98u58eip] { color: var(--muted); font-size: 11px; }
.gp-concepts[b-1t98u58eip] { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; max-width: 320px; }
.gp-balance[b-1t98u58eip] { font-variant-numeric: tabular-nums; }
.gp-balance.pending[b-1t98u58eip] { color: var(--danger); }
.gp-balance.zero[b-1t98u58eip] { color: var(--success); }
.gp-badge[b-1t98u58eip],
.gp-fe-badge[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: max-content;
    min-height: 25px;
    padding: 3px 9px;
    border-radius: 999px;
    border: 0;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
}
.gp-fe-badge[b-1t98u58eip] { cursor: pointer; }
.gp-badge.success[b-1t98u58eip], .gp-fe-badge.success[b-1t98u58eip] { color: var(--success); background: var(--surface); }
.gp-badge.warning[b-1t98u58eip], .gp-fe-badge.warning[b-1t98u58eip] { color: var(--danger); background: var(--surface); }
.gp-badge.danger[b-1t98u58eip], .gp-fe-badge.danger[b-1t98u58eip] { color: var(--danger); background: var(--surface); }
.gp-badge.info[b-1t98u58eip], .gp-fe-badge.info[b-1t98u58eip] { color: var(--p); background: var(--surface); }
.gp-badge.error[b-1t98u58eip], .gp-fe-badge.error[b-1t98u58eip] { color: var(--danger); background: var(--surface); }
.gp-pagination[b-1t98u58eip] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    padding: 14px 0 2px;
    color: var(--muted);
    font-size: 12px;
}
.gp-pagination > div[b-1t98u58eip] { display: flex; align-items: center; gap: 6px; }
.gp-pagination button[b-1t98u58eip] {
    width: 34px;
    height: 34px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: var(--surface);
    color: var(--text);
}
.gp-pagination button:disabled[b-1t98u58eip] { opacity: .4; cursor: not-allowed; }
.gp-action-overlay[b-1t98u58eip] { z-index: 1220; }
.gp-action-dialog[b-1t98u58eip] { width: min(520px, calc(100vw - 24px)); }
.gp-action-sheet[b-1t98u58eip] { display: grid; gap: 8px; }
.gp-action-sheet > button[b-1t98u58eip] {
    width: 100%;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    color: var(--text);
    text-align: left;
}
.gp-action-sheet > button:hover[b-1t98u58eip] { background: var(--surface-2); border-color: color-mix(in srgb, var(--brand) 30%, var(--line)); }
.gp-action-sheet > button > i[b-1t98u58eip] { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 11px; background: var(--surface-2); color: var(--brand); }
.gp-action-sheet span[b-1t98u58eip], .gp-action-sheet strong[b-1t98u58eip], .gp-action-sheet small[b-1t98u58eip] { display: block; }
.gp-action-sheet small[b-1t98u58eip] { margin-top: 2px; color: var(--muted); }
.gp-action-sheet > button.danger[b-1t98u58eip] { color: var(--danger); }
.gp-action-sheet > button.danger > i[b-1t98u58eip] { color: var(--danger); background: var(--surface); }
.gp-modal-close[b-1t98u58eip] {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 11px;
    background: transparent;
    color: inherit;
}
.gp-modal-close:hover[b-1t98u58eip] { background: rgba(148, 163, 184, .14); }
.gp-modal-medium[b-1t98u58eip] { width: min(680px, calc(100vw - 24px)); }
.gp-modal-wide[b-1t98u58eip] { width: min(980px, calc(100vw - 24px)); }
.gp-modal-payment[b-1t98u58eip] { width: min(1180px, calc(100vw - 24px)); }
.gp-modal-pdf[b-1t98u58eip] { width: min(1100px, calc(100vw - 24px)); height: min(90vh, 850px); }
.gp-modal-attachment[b-1t98u58eip] { width: min(960px, calc(100vw - 24px)); height: min(88vh, 820px); }
.gp-form-grid[b-1t98u58eip] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.gp-form-grid.compact[b-1t98u58eip] { gap: 10px; }
.gp-span-2[b-1t98u58eip] { grid-column: 1 / -1; }
.gp-field[b-1t98u58eip] { display: grid; gap: 6px; }
.gp-field label[b-1t98u58eip] { font-size: 12px; font-weight: 750; color: var(--muted); }
.gp-payment-layout[b-1t98u58eip] { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .72fr); gap: 22px; align-items: start; }
.gp-payment-form[b-1t98u58eip] { position: sticky; top: 0; padding: 16px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface-2); display: grid; gap: 12px; }
.gp-payment-lines[b-1t98u58eip] { display: grid; gap: 8px; }
.gp-payment-line[b-1t98u58eip] {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) 110px 110px 105px;
    gap: 10px;
    align-items: end;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
}
.gp-payment-line > div strong[b-1t98u58eip],
.gp-payment-line > div small[b-1t98u58eip] { display: block; }
.gp-payment-line > div small[b-1t98u58eip] { margin-top: 4px; color: var(--muted); }
.gp-payment-line label[b-1t98u58eip] { display: grid; gap: 4px; font-size: 10px; font-weight: 750; text-transform: uppercase; color: var(--muted); }
.gp-payment-line > strong[b-1t98u58eip] { align-self: center; text-align: right; color: var(--brand); }
.gp-payment-summary[b-1t98u58eip] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gp-amount-words[b-1t98u58eip] { margin: 12px 0 18px; padding: 11px 13px; border-radius: 12px; background: color-mix(in srgb, var(--brand) 7%, transparent); font-size: 12px; font-weight: 750; }
.gp-section-title[b-1t98u58eip] { margin: 4px 0 12px; font-weight: 800; }
.gp-switch[b-1t98u58eip] { display: flex; align-items: center; gap: 9px; font-weight: 750; }
.gp-receptor-box[b-1t98u58eip] { display: grid; gap: 10px; padding: 12px; border: 1px dashed color-mix(in srgb, var(--brand) 38%, var(--line)); border-radius: 14px; background: var(--surface); }
.gp-receptor-box strong[b-1t98u58eip], .gp-receptor-box small[b-1t98u58eip] { display: block; }
.gp-receptor-box small[b-1t98u58eip] { color: var(--muted); }
.gp-change[b-1t98u58eip] { color: var(--success); font-weight: 850; font-size: 18px; }
.gp-attachment-preview[b-1t98u58eip] { display: flex; align-items: center; gap: 10px; margin-top: 8px; }
.gp-attachment-preview img[b-1t98u58eip] { width: 84px; height: 64px; object-fit: cover; border-radius: 10px; border: 1px solid var(--line); }
.gp-detail-grid[b-1t98u58eip] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 18px; }
.gp-detail-grid > div[b-1t98u58eip] { padding: 12px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-2); }
.gp-detail-grid small[b-1t98u58eip], .gp-detail-grid strong[b-1t98u58eip] { display: block; }
.gp-detail-grid small[b-1t98u58eip] { margin-bottom: 4px; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .04em; }
.gp-note[b-1t98u58eip] { margin-top: 12px; padding: 12px; border-radius: 12px; background: var(--surface-2); }
.gp-warning-box[b-1t98u58eip], .gp-info-box[b-1t98u58eip] {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding: 14px;
    border-radius: 14px;
}
.gp-warning-box[b-1t98u58eip] { color: var(--danger); background: var(--surface); border: 1px solid var(--p); }
.gp-info-box[b-1t98u58eip] { color: var(--p); background: var(--surface); border: 1px solid var(--p); }
.gp-warning-box > i[b-1t98u58eip], .gp-info-box > i[b-1t98u58eip] { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; background: rgba(255,255,255,.7); }
.gp-warning-box strong[b-1t98u58eip], .gp-warning-box span[b-1t98u58eip] { display: block; }
.gp-warning-box span[b-1t98u58eip] { margin-top: 3px; }
.gp-fe-message[b-1t98u58eip] { white-space: pre-wrap; overflow-wrap: anywhere; padding: 14px; margin: 12px 0 0; border-radius: 14px; background: var(--text); color: var(--surface); max-height: 360px; overflow: auto; }
.gp-pdf-body[b-1t98u58eip], .gp-attachment-body[b-1t98u58eip] { min-height: 520px; padding: 0; overflow: hidden; }
.gp-pdf-body iframe[b-1t98u58eip], .gp-attachment-body iframe[b-1t98u58eip] { width: 100%; height: 100%; min-height: 540px; border: 0; background: var(--surface); }
.gp-attachment-body img[b-1t98u58eip] { display: block; max-width: 100%; max-height: 72vh; margin: auto; object-fit: contain; }
.gp-busy-overlay[b-1t98u58eip] {
    position: fixed;
    inset: 0;
    z-index: 1800;
    display: grid;
    place-items: center;
    background: rgba(15, 23, 42, .34);
    backdrop-filter: blur(4px);
}
.gp-busy-overlay > div[b-1t98u58eip] { display: grid; justify-items: center; gap: 6px; padding: 22px 26px; border-radius: 18px; background: var(--surface); box-shadow: 0 24px 60px rgba(15,23,42,.24); }
.gp-busy-overlay i[b-1t98u58eip] { font-size: 28px; color: var(--brand); }
.gp-busy-overlay span[b-1t98u58eip] { color: var(--muted); font-size: 12px; }

@media (max-width: 980px) {
    .gp-payment-layout[b-1t98u58eip] { grid-template-columns: 1fr; }
    .gp-payment-form[b-1t98u58eip] { position: static; }
    .gp-detail-grid[b-1t98u58eip] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gp-filter-row[b-1t98u58eip] { grid-template-columns: 1fr 1fr; }
    .gp-page-size[b-1t98u58eip] { grid-column: 1 / -1; }
    .gp-payment-line[b-1t98u58eip] { grid-template-columns: minmax(0, 1fr) 100px 100px; }
    .gp-payment-line > strong[b-1t98u58eip] { grid-column: 2 / 4; }
}

@media (max-width: 680px) {
    .gp-student-search[b-1t98u58eip],
    .gp-filter-row[b-1t98u58eip],
    .gp-form-grid[b-1t98u58eip],
    .gp-audit[b-1t98u58eip],
    .gp-detail-grid[b-1t98u58eip] { grid-template-columns: 1fr; }
    .gp-span-2[b-1t98u58eip] { grid-column: auto; }
    .gp-payment-summary[b-1t98u58eip] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gp-payment-line[b-1t98u58eip] { grid-template-columns: 1fr 1fr; }
    .gp-payment-line > div[b-1t98u58eip] { grid-column: 1 / -1; }
    .gp-payment-line > strong[b-1t98u58eip] { grid-column: 1 / -1; text-align: left; }
    .gp-pagination[b-1t98u58eip] { align-items: flex-start; flex-direction: column; }
    .gp-modal-payment[b-1t98u58eip], .gp-modal-wide[b-1t98u58eip], .gp-modal-medium[b-1t98u58eip], .gp-modal-pdf[b-1t98u58eip], .gp-modal-attachment[b-1t98u58eip] { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; }
    .gp-pdf-body iframe[b-1t98u58eip], .gp-attachment-body iframe[b-1t98u58eip] { min-height: calc(100dvh - 150px); }
}

.gp-export-btn[b-1t98u58eip] { white-space: nowrap; min-height: 40px; }
/* ==================================================================
   GESTIÓN DE PAGOS · FORMULARIO DE COBRO CLÁSICO
   Replica la jerarquía visual del formulario WebForms:
   conceptos → datos del pago → subtotal/IGV → total.
   ================================================================== */

.gp-payment-classic[b-1t98u58eip] {
    --gp-payment-accent: var(--brand);
    --gp-payment-accent-soft:
        color-mix(
            in srgb,
            var(--gp-payment-accent) 12%,
            var(--surface));
    width: min(1120px, calc(100vw - 28px));
}

.gp-payment-classic .gxModal__content[b-1t98u58eip] {
    max-height: calc(100dvh - 28px);
    overflow: hidden;
}

.gp-payment-classic .gxModal__header[b-1t98u58eip] {
    min-height: 72px;
    padding: 16px 20px;
    background: var(--brand);
    color: var(--surface);
}

.gp-payment-classic .gxModal__header .gxModal__title[b-1t98u58eip] {
    margin: 2px 0 0;
    color: var(--surface);
    font-size: clamp(17px, 1.8vw, 22px);
    font-weight: 900;
    text-transform: uppercase;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .12);
}

.gp-payment-classic-eyebrow[b-1t98u58eip] {
    display: block;
    color: rgba(255, 255, 255, .78);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
}

.gp-payment-classic .gxModal__header .gp-modal-close[b-1t98u58eip],
.gp-payment-classic .gxModal__header .popup-maximize-btn[b-1t98u58eip] {
    color: var(--surface);
}

.gp-payment-classic .gxModal__header .gp-modal-close[b-1t98u58eip] {
    background: rgba(255, 255, 255, .14);
    color: var(--surface);
}

.gp-payment-classic .gxModal__header .gp-modal-close:hover[b-1t98u58eip] {
    background: rgba(255, 255, 255, .24);
}

.gp-payment-classic-body[b-1t98u58eip] {
    display: grid;
    gap: 18px;
    max-height: calc(100dvh - 170px);
    padding: 20px 22px;
    overflow: auto;
    background: var(--surface);
}

.gp-classic-section[b-1t98u58eip] {
    min-width: 0;
}

.gp-classic-section-title[b-1t98u58eip] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 10px;
    padding-bottom: 9px;
    border-bottom: 1px solid var(--border);
}

.gp-classic-section-title > div[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.gp-classic-section-title i[b-1t98u58eip] {
    color: var(--gp-payment-accent);
}

.gp-classic-section-title span[b-1t98u58eip] {
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.gp-classic-count[b-1t98u58eip] {
    padding: 5px 9px;
    border-radius: 999px;
    background: var(--surface-2);
    color: var(--text-muted);
    font-size: 10px;
    letter-spacing: 0;
    text-transform: none;
}

.gp-classic-lock-note[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    padding: 8px 10px;
    border: 1px solid
        color-mix(
            in srgb,
            var(--brand) 13%,
            var(--border));
    border-radius: 10px;
    background: var(--surface-2);
    color: var(--text-muted);
    font-size: 11px;
}

.gp-classic-lock-note i[b-1t98u58eip],
.gp-classic-label-lock[b-1t98u58eip] {
    color: var(--text-muted);
}

.gp-classic-table-wrap[b-1t98u58eip] {
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--surface);
}

.gp-classic-table[b-1t98u58eip] {
    width: 100%;
    min-width: 700px;
    border-collapse: collapse;
}

.gp-classic-table th[b-1t98u58eip],
.gp-classic-table td[b-1t98u58eip] {
    padding: 12px 14px;
    border-bottom: 1px solid var(--border);
    vertical-align: middle;
}

.gp-classic-table thead th[b-1t98u58eip] {
    background: var(--brand);
    color: var(--surface);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.gp-classic-table tbody td[b-1t98u58eip] {
    color: var(--text);
    font-size: 13px;
}

.gp-classic-table tbody td strong[b-1t98u58eip],
.gp-classic-table tbody td small[b-1t98u58eip] {
    display: block;
}

.gp-classic-table tbody td small[b-1t98u58eip] {
    margin-top: 3px;
    color: var(--text-muted);
    font-size: 10px;
}

.gp-classic-table tbody tr:last-child td[b-1t98u58eip] {
    border-bottom: 0;
}

.gp-classic-table tfoot th[b-1t98u58eip] {
    border-top: 1px solid var(--border);
    border-bottom: 0;
    background: var(--surface-2);
    color: var(--text);
    font-size: 12px;
    font-weight: 900;
}

.gp-classic-readonly[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 90px;
    padding: 7px 9px;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: var(--surface-2);
    color: var(--text-2);
    font-weight: 750;
    font-variant-numeric: tabular-nums;
}

.gp-classic-line-total[b-1t98u58eip] {
    color: var(--text);
    font-size: 14px;
    font-variant-numeric: tabular-nums;
}

.gp-classic-form-grid[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px 16px;
}

.gp-classic-form-grid .gp-field[b-1t98u58eip] {
    align-content: start;
}

.gp-classic-form-grid .gp-field label[b-1t98u58eip] {
    color: var(--text);
    font-size: 12px;
    font-weight: 800;
    text-transform: none;
}

.gp-classic-form-grid .form-control[b-1t98u58eip],
.gp-classic-form-grid .form-select[b-1t98u58eip] {
    min-height: 44px;
    border-radius: 10px;
}

.gp-classic-static-field[b-1t98u58eip] {
    min-height: 44px;
    display: flex;
    align-items: center;
    padding: 9px 12px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface-2);
    color: var(--text);
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.gp-classic-check[b-1t98u58eip] {
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 10px;
    align-self: end;
    padding: 8px 11px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface);
    color: var(--text);
}

.gp-classic-check input[b-1t98u58eip] {
    width: 18px;
    height: 18px;
}

.gp-classic-check span[b-1t98u58eip],
.gp-classic-check strong[b-1t98u58eip],
.gp-classic-check small[b-1t98u58eip] {
    display: block;
}

.gp-classic-check strong[b-1t98u58eip] {
    font-size: 12px;
}

.gp-classic-check small[b-1t98u58eip] {
    color: var(--text-muted);
    font-size: 10px;
}

.gp-classic-observations[b-1t98u58eip],
.gp-classic-attachment[b-1t98u58eip] {
    grid-column: span 1;
}

.gp-classic-observations textarea[b-1t98u58eip] {
    min-height: 82px;
    resize: vertical;
}

.gp-classic-attachment .form-control[b-1t98u58eip] {
    min-height: 44px;
}

.gp-classic-receptor[b-1t98u58eip] {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) 180px minmax(260px, 1.2fr);
    gap: 14px;
    align-items: end;
    margin-top: 14px;
    padding: 14px;
    border: 1px dashed
        color-mix(
            in srgb,
            var(--brand) 35%,
            var(--border));
    border-radius: 13px;
    background: var(--surface-2);
}

.gp-classic-receptor > div:first-child[b-1t98u58eip] {
    align-self: center;
}

.gp-classic-receptor strong[b-1t98u58eip],
.gp-classic-receptor small[b-1t98u58eip] {
    display: block;
}

.gp-classic-receptor small[b-1t98u58eip] {
    margin-top: 4px;
    color: var(--text-muted);
    font-size: 10px;
}

.gp-classic-totals[b-1t98u58eip] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.gp-classic-totals article[b-1t98u58eip] {
    min-height: 78px;
    display: grid;
    align-content: center;
    gap: 5px;
    padding: 14px 18px;
    border: 1px solid var(--border);
    border-radius: 13px;
    background: var(--surface-2);
}

.gp-classic-totals span[b-1t98u58eip] {
    color: var(--text-muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.gp-classic-totals strong[b-1t98u58eip] {
    color: var(--text);
    font-size: 22px;
    font-variant-numeric: tabular-nums;
}

.gp-classic-total-bar[b-1t98u58eip] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .75fr);
    gap: 20px;
    align-items: center;
    padding: 16px 18px;
    border-radius: 14px;
    background: var(--brand);
    color: var(--surface);
    box-shadow:
        0 10px 24px
        color-mix(
            in srgb,
            var(--brand) 22%,
            transparent);
}

.gp-classic-total-main[b-1t98u58eip] {
    display: grid;
    gap: 2px;
}

.gp-classic-total-main > span[b-1t98u58eip] {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
}

.gp-classic-total-main > strong[b-1t98u58eip] {
    font-size: clamp(27px, 3vw, 38px);
    line-height: 1.05;
    font-variant-numeric: tabular-nums;
}

.gp-classic-total-main > small[b-1t98u58eip] {
    font-size: 10px;
    font-style: italic;
    text-transform: uppercase;
}

.gp-classic-cash[b-1t98u58eip] {
    display: grid;
    grid-template-columns: minmax(190px, 1fr) 140px;
    gap: 12px;
    align-items: end;
}

.gp-classic-cash .gp-field label[b-1t98u58eip] {
    color: var(--surface);
}

.gp-classic-cash .gp-field small[b-1t98u58eip] {
    color: rgba(255, 255, 255, .76);
    font-size: 9px;
}

.gp-classic-cash .form-control[b-1t98u58eip] {
    min-height: 46px;
    border: 2px solid rgba(17, 24, 39, .16);
    border-radius: 11px;
    background: var(--surface);
    color: var(--text);
    font-size: 17px;
    font-weight: 850;
}

.gp-editable-tag[b-1t98u58eip] {
    display: inline-flex;
    margin-left: 5px;
    padding: 2px 6px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .18);
    color: var(--surface);
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.gp-classic-change[b-1t98u58eip] {
    min-height: 70px;
    display: grid;
    align-content: center;
    gap: 3px;
    padding: 10px 12px;
    border-radius: 11px;
    background: rgba(255, 255, 255, .72);
}

.gp-classic-change span[b-1t98u58eip] {
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

.gp-classic-change strong[b-1t98u58eip] {
    color: var(--success);
    font-size: 21px;
    font-variant-numeric: tabular-nums;
}

.gp-classic-footer[b-1t98u58eip] {
    gap: 9px;
}

.gp-classic-footer .btn[b-1t98u58eip] {
    min-width: 140px;
}

@media (max-width: 980px) {
    .gp-classic-form-grid[b-1t98u58eip] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gp-classic-receptor[b-1t98u58eip],
    .gp-classic-total-bar[b-1t98u58eip] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .gp-payment-classic[b-1t98u58eip] {
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
    }

    .gp-payment-classic .gxModal__content[b-1t98u58eip] {
        height: 100dvh;
        max-height: 100dvh;
        border-radius: 0;
    }

    .gp-payment-classic-body[b-1t98u58eip] {
        max-height: none;
        padding: 14px;
    }

    .gp-classic-form-grid[b-1t98u58eip],
    .gp-classic-totals[b-1t98u58eip],
    .gp-classic-cash[b-1t98u58eip] {
        grid-template-columns: 1fr;
    }

    .gp-classic-check[b-1t98u58eip] {
        align-self: stretch;
    }

    .gp-classic-footer[b-1t98u58eip] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .gp-classic-footer .btn[b-1t98u58eip] {
        width: 100%;
    }
}

/* =========================================================
   CANON VISUAL GLOBALTRAINER
   Alinea Gestión de pagos con GestionCliente:
   - toolbar con btn-icon;
   - acciones de tabla con btn2/gvCmdBtn;
   - sin colores particulares por módulo.
   ========================================================= */
.gp-actions--canonical[b-1t98u58eip] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
}

.gp-actions--canonical .btn-icon[b-1t98u58eip],
.gp-export-btn.btn-icon[b-1t98u58eip],
.gp-head-actions .btn-icon[b-1t98u58eip] {
    width: 42px;
    min-width: 42px;
    height: 42px;
    display: inline-grid;
    place-items: center;
    padding: 0;
    border-radius: 11px;
}

.gp-actions--canonical .btn-icon > i[b-1t98u58eip],
.gp-export-btn.btn-icon > i[b-1t98u58eip],
.gp-head-actions .btn-icon > i[b-1t98u58eip] {
    margin: 0;
    line-height: 1;
}

.gp-actions-column[b-1t98u58eip] {
    width: 138px;
    min-width: 138px;
}

.gp-actions-cell[b-1t98u58eip] {
    width: 138px;
    min-width: 138px;
    padding-inline: .55rem;
    white-space: nowrap;
}

.gp-row-actions[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    min-width: max-content;
}

.gp-row-actions .gvCmdBtn[b-1t98u58eip] {
    flex: 0 0 auto;
}

.gp-row-action[b-1t98u58eip] {
    width: 64px;
    min-width: 64px;
    text-align: center;
}

.gp-pagination button.btn[b-1t98u58eip] {
    width: 36px;
    height: 36px;
    display: inline-grid;
    place-items: center;
    padding: 0;
    border-radius: 10px;
}

@media (max-width: 760px) {
    .gp-actions--canonical[b-1t98u58eip] {
        width: 100%;
    }

    .gp-actions-cell[b-1t98u58eip] {
        width: 138px;
        min-width: 138px;
    }
}/* Paridad con grilla Framework: Sede, Promoción, Kit y Producto visibles. */
.gp-table[b-1t98u58eip]{min-width:1650px}.gp-table-receipts[b-1t98u58eip]{min-width:1320px}
.gp-table tfoot td[b-1t98u58eip]{position:sticky;bottom:0;background:var(--surface);border-top:2px solid var(--border);font-size:12px;z-index:1}

/* Los filtros de mantenedores y fecha conservan la altura compacta de la grilla. */
.core-column-filters[b-1t98u58eip]  .ssel-trigger,
.core-column-filters .core-column-filter[type="date"][b-1t98u58eip] {
    box-sizing: border-box;
    width: 100%;
    min-width: 128px;
    height: 36px;
    min-height: 36px;
    font-size: 12px;
}
/* Resalta visualmente el campo "Monto a pagar" cuando el pago es parcial */
.gp-field-highlight[b-1t98u58eip] {
    position: relative;
    padding: 10px 12px 12px;
    border: 2px solid var(--warning);
    border-radius: 12px;
    background: color-mix(in srgb, var(--warning) 8%, var(--surface));
    box-shadow: 0 0 0 4px rgba(245, 158, 11, .10);
}

.gp-field-highlight label[b-1t98u58eip] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.gp-highlight-tag[b-1t98u58eip] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 8px;
    border-radius: 999px;
    background: var(--warning);
    color: var(--surface);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: none;
    animation: gp-pulse-highlight-b-1t98u58eip 1.6s ease-in-out infinite;
}

@keyframes gp-pulse-highlight-b-1t98u58eip {
    0%, 100% { opacity: 1; }
    50% { opacity: .55; }
}
/* =========================================================
   CHECKBOX PREMIUM — Gestión de pagos
   Reemplaza el checkbox nativo por uno custom, más grande,
   con animación de check y acento de marca.
   ========================================================= */
   .gp-check input[type="checkbox"][b-1t98u58eip],
   .gp-search-head input[type="checkbox"][b-1t98u58eip] {
       appearance: none;
       -webkit-appearance: none;
       position: relative;
       width: 22px;
       height: 22px;
       margin: 0;
       border: 2px solid var(--border);
       border-radius: 7px;
       background: var(--surface);
       cursor: pointer;
       flex-shrink: 0;
       transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .1s ease;
   }
   
   .gp-check input[type="checkbox"]:hover:not(:disabled)[b-1t98u58eip] {
       border-color: color-mix(in srgb, var(--brand) 55%, var(--border));
       box-shadow: 0 0 0 4px var(--brand-glow-hover, rgba(41,41,42,.10));
   }
   
   .gp-check input[type="checkbox"]:active:not(:disabled)[b-1t98u58eip] {
       transform: scale(.92);
   }
   
   .gp-check input[type="checkbox"]:focus-visible[b-1t98u58eip] {
       outline: none;
       box-shadow: 0 0 0 4px var(--brand-glow, rgba(41,41,42,.16));
   }
   
   .gp-check input[type="checkbox"]:checked[b-1t98u58eip] {
       border-color: var(--brand);
       background: var(--brand);
       box-shadow: 0 2px 8px var(--brand-glow, rgba(41,41,42,.16));
   }
   
   .gp-check input[type="checkbox"]:checked[b-1t98u58eip]::after {
       content: "";
       position: absolute;
       left: 6px;
       top: 2px;
       width: 6px;
       height: 11px;
       border: solid var(--surface);
       border-width: 0 2.5px 2.5px 0;
       transform: rotate(45deg);
       animation: gp-check-pop-b-1t98u58eip .16s ease-out;
   }
   
   .gp-check input[type="checkbox"]:disabled[b-1t98u58eip] {
       opacity: .45;
       cursor: not-allowed;
   }
   
   @keyframes gp-check-pop-b-1t98u58eip {
       from { transform: rotate(45deg) scale(.4); opacity: 0; }
       to   { transform: rotate(45deg) scale(1); opacity: 1; }
   }
   
   .gp-check[b-1t98u58eip] {
       padding-inline: 0;
       text-align: center;
   }
/* Pages/GestionPostulante.razor.css */
:host[b-6vrta9olht]{display:block}.gt-page[b-6vrta9olht]{display:grid;gap:1rem;padding-bottom:2rem}.gt-head[b-6vrta9olht]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.gt-head p[b-6vrta9olht]{margin:.35rem 0 0;color:var(--text-muted)}.gt-card[b-6vrta9olht]{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 8px 24px rgba(15,23,42,.06)}.gt-card .card-body[b-6vrta9olht]{padding:1rem}.gt-toolbar[b-6vrta9olht]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.8rem}.gt-tabs[b-6vrta9olht]{display:flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.gt-tabs button[b-6vrta9olht]{padding:.55rem .9rem;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:800}.gt-tabs button.active[b-6vrta9olht]{background:var(--surface);color:var(--text);box-shadow:0 2px 8px rgba(15,23,42,.08)}.gt-search[b-6vrta9olht]{position:relative;flex:1}.gt-search i[b-6vrta9olht]{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.gt-search input[b-6vrta9olht]{min-height:44px;padding-left:42px;border-radius:11px}.gt-table-wrap[b-6vrta9olht]{overflow:auto;border:1px solid var(--border);border-radius:14px}.gt-table[b-6vrta9olht]{min-width:900px;margin:0}.gt-table th[b-6vrta9olht]{padding:.75rem;border:0;background:var(--text);color:var(--surface);font-size:.72rem;letter-spacing:.04em}.gt-table td[b-6vrta9olht]{padding:.75rem;vertical-align:middle}.gt-actions[b-6vrta9olht]{display:flex;gap:7px;white-space:nowrap}.gt-actions .gvCmdBtn[b-6vrta9olht]{margin:0}.gt-badge[b-6vrta9olht]{display:inline-flex;padding:.25rem .58rem;border-radius:999px;font-size:.7rem;font-weight:850}.gt-badge.ok[b-6vrta9olht]{background:var(--surface);color:var(--success)}.gt-badge.off[b-6vrta9olht]{background:var(--surface);color:var(--danger)}.gt-badge.warn[b-6vrta9olht]{background:var(--surface);color:var(--danger)}.gt-modal[b-6vrta9olht]{width:min(820px,95vw);max-width:min(820px,95vw)}.gt-form[b-6vrta9olht]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.gt-field.span-2[b-6vrta9olht]{grid-column:span 2}.gt-field label[b-6vrta9olht]{display:block;margin-bottom:.3rem;font-size:.77rem;font-weight:800}.gt-field .form-control[b-6vrta9olht],.gt-field .form-select[b-6vrta9olht]{min-height:43px;border-radius:10px}.gt-empty[b-6vrta9olht]{padding:3rem;text-align:center;color:var(--text-muted)}.gt-loading[b-6vrta9olht]{display:grid;min-height:320px;place-content:center;justify-items:center;gap:.6rem}.gt-notice[b-6vrta9olht]{padding:.75rem .9rem;border-radius:12px}.gt-notice.success[b-6vrta9olht]{background:var(--surface);color:var(--success)}.gt-notice.error[b-6vrta9olht]{background:var(--surface);color:var(--danger)}.gt-stats[b-6vrta9olht]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.gt-stat[b-6vrta9olht]{padding:.9rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.gt-stat small[b-6vrta9olht],.gt-stat strong[b-6vrta9olht]{display:block}.gt-stat small[b-6vrta9olht]{color:var(--text-muted)}.gt-stat strong[b-6vrta9olht]{font-size:1.25rem}@media(max-width:760px){.gt-head[b-6vrta9olht],.gt-toolbar[b-6vrta9olht]{align-items:stretch;flex-direction:column}.gt-form[b-6vrta9olht],.gt-stats[b-6vrta9olht]{grid-template-columns:1fr}.gt-field.span-2[b-6vrta9olht]{grid-column:auto}}.gt-table[b-6vrta9olht]{min-width:1700px}.gt-table td small[b-6vrta9olht]{display:block;color:var(--text-muted)}

/* Pages/GestionAsignacionEPP.razor.css */
:host[b-mb67dqg90f] {
    display: block;
}

.asg-page[b-mb67dqg90f] {
    display: grid;
    gap: 1rem;
    padding-bottom: 2rem;
}

.asg-head[b-mb67dqg90f] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.asg-head p[b-mb67dqg90f] {
    margin: .35rem 0 0;
    color: var(--text-muted);
}

.asg-summary[b-mb67dqg90f] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
}

.asg-stat[b-mb67dqg90f] {
    padding: .9rem 1rem;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--surface);
}

.asg-stat small[b-mb67dqg90f],
.asg-stat strong[b-mb67dqg90f] {
    display: block;
}

.asg-stat small[b-mb67dqg90f] {
    color: var(--text-muted);
}

.asg-stat strong[b-mb67dqg90f] {
    margin-top: .2rem;
    font-size: 1.3rem;
}

.asg-card[b-mb67dqg90f] {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
}

.asg-card .card-body[b-mb67dqg90f] {
    padding: 1rem;
}

.asg-toolbar[b-mb67dqg90f] {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-bottom: .8rem;
}

.asg-search[b-mb67dqg90f] {
    position: relative;
    flex: 1;
}

.asg-search i[b-mb67dqg90f] {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.asg-search input[b-mb67dqg90f] {
    min-height: 44px;
    padding-left: 42px;
    border-radius: 11px;
}

.asg-table-wrap[b-mb67dqg90f] {
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 14px;
}

.asg-table[b-mb67dqg90f] {
    min-width: 950px;
    margin: 0;
}

.asg-table th[b-mb67dqg90f] {
    padding: .75rem;
    border: 0;
    background: var(--text);
    color: var(--surface);
    font-size: .72rem;
    letter-spacing: .04em;
}

.asg-table td[b-mb67dqg90f] {
    padding: .75rem;
    vertical-align: middle;
}

.asg-row-actions[b-mb67dqg90f] {
    display: flex;
    gap: 7px;
}

.asg-row-actions .gvCmdBtn[b-mb67dqg90f] {
    margin: 0;
}

.asg-flags[b-mb67dqg90f] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.asg-flag[b-mb67dqg90f] {
    padding: .25rem .55rem;
    border-radius: 999px;
    background: var(--surface);
    color: var(--p);
    font-size: .7rem;
    font-weight: 800;
}

.asg-flag.ok[b-mb67dqg90f] {
    background: var(--surface);
    color: var(--success);
}

.asg-badge[b-mb67dqg90f] {
    display: inline-flex;
    padding: .25rem .58rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 850;
}

.asg-badge.complete[b-mb67dqg90f] {
    background: var(--surface);
    color: var(--success);
}

.asg-badge.pending[b-mb67dqg90f] {
    background: var(--surface);
    color: var(--danger);
}

.asg-pagination[b-mb67dqg90f] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: .8rem;
    color: var(--text-muted);
    font-size: .8rem;
}

.asg-pagination div[b-mb67dqg90f] {
    display: flex;
    align-items: center;
    gap: .35rem;
}

.asg-pagination button[b-mb67dqg90f] {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: var(--surface);
}

.asg-form[b-mb67dqg90f] {
    display: grid;
    gap: .7rem;
}

.asg-check[b-mb67dqg90f] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem;
    border: 1px solid var(--border);
    border-radius: 12px;
}

.asg-context[b-mb67dqg90f] {
    display: grid;
    gap: .45rem;
    margin-bottom: .9rem;
    padding: .85rem;
    border-radius: 12px;
    background: var(--surface-2);
}

.asg-context small[b-mb67dqg90f] {
    color: var(--text-muted);
}

.asg-notice[b-mb67dqg90f] {
    padding: .75rem .9rem;
    border-radius: 12px;
}

.asg-notice.error[b-mb67dqg90f] {
    background: var(--surface);
    color: var(--danger);
}

.asg-notice.success[b-mb67dqg90f] {
    background: var(--surface);
    color: var(--success);
}

.asg-empty[b-mb67dqg90f] {
    padding: 3rem;
    text-align: center;
    color: var(--text-muted);
}

.asg-loading[b-mb67dqg90f] {
    display: grid;
    min-height: 320px;
    place-content: center;
    justify-items: center;
    gap: .6rem;
}

@media (max-width: 720px) {
    .asg-head[b-mb67dqg90f],
    .asg-toolbar[b-mb67dqg90f],
    .asg-pagination[b-mb67dqg90f] {
        align-items: stretch;
        flex-direction: column;
    }

    .asg-summary[b-mb67dqg90f] {
        grid-template-columns: 1fr;
    }
}.asg-table[b-mb67dqg90f]{min-width:1300px}

/* Pages/GestionCertificadosEntregados.razor.css */
.ce-page[b-vigqe1u9bx]{display:grid;gap:16px}.ce-hero[b-vigqe1u9bx]{display:flex;justify-content:space-between;align-items:flex-start;padding:22px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.ce-hero span[b-vigqe1u9bx]{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--primary)}.ce-hero h1[b-vigqe1u9bx]{margin:5px 0;font-size:clamp(24px,3vw,34px)}.ce-hero p[b-vigqe1u9bx]{margin:0;color:var(--text-muted)}.ce-card[b-vigqe1u9bx]{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}.ce-toolbar[b-vigqe1u9bx]{padding:14px;display:flex;gap:10px;justify-content:space-between;border-bottom:1px solid var(--border)}.ce-toolbar .input-group[b-vigqe1u9bx]{max-width:520px}.ce-table-wrap[b-vigqe1u9bx]{overflow:auto;max-height:calc(100vh - 300px)}.ce-table[b-vigqe1u9bx]{width:100%;min-width:1450px;border-collapse:collapse}.ce-table th[b-vigqe1u9bx],.ce-table td[b-vigqe1u9bx]{padding:11px 12px;border-bottom:1px solid var(--border);font-size:12px}.ce-table th[b-vigqe1u9bx]{position:sticky;top:0;background:var(--surface-2);z-index:1;text-transform:uppercase;font-size:10.5px}.ce-empty[b-vigqe1u9bx]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:9px;color:var(--text-muted)}.btn-icon[b-vigqe1u9bx]{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0}
/* Pages/SimuladorAulaVirtual.razor.css */
:host[b-atty8ug0qr]{display:block}.sav-page-head[b-atty8ug0qr]{margin-bottom:18px}.sav-subtitle[b-atty8ug0qr]{margin:6px 0 0;color:var(--text-muted);font-size:13px}.sav-filter-card[b-atty8ug0qr],.sav-frame[b-atty8ug0qr]{margin-bottom:18px}.sav-search-row[b-atty8ug0qr]{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:10px;align-items:end}.sav-field label[b-atty8ug0qr]{display:block;margin-bottom:5px;color:var(--text-2);font-size:12px;font-weight:600}.sav-search[b-atty8ug0qr]{position:relative}.sav-search>i[b-atty8ug0qr]{position:absolute;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted)}.sav-search input[b-atty8ug0qr]{box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text)}.sav-results[b-atty8ug0qr]{display:grid;gap:8px;margin-top:14px}.sav-result[b-atty8ug0qr]{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-align:left}.sav-result.active[b-atty8ug0qr],.sav-result:hover[b-atty8ug0qr]{border-color:rgba(var(--brand-rgb),.28);background:var(--brand-light)}.sav-avatar[b-atty8ug0qr]{display:grid;width:40px;height:40px;place-items:center;border-radius:11px;background:var(--surface-2);color:var(--brand)}.sav-result span:nth-child(2)[b-atty8ug0qr]{display:grid;gap:2px}.sav-result small[b-atty8ug0qr]{color:var(--text-muted)}.sav-frame[b-atty8ug0qr]{overflow:hidden}.sav-frame-head[b-atty8ug0qr]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border)}.sav-frame-head>div[b-atty8ug0qr]{display:grid;gap:2px}.sav-readonly[b-atty8ug0qr]{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--brand-light);color:var(--brand);font-weight:800}.sav-student-surface[b-atty8ug0qr]{padding:16px;background:var(--surface-2)}@media(max-width:720px){.sav-search-row[b-atty8ug0qr]{grid-template-columns:1fr}.sav-frame-head[b-atty8ug0qr]{align-items:flex-start;flex-direction:column}.sav-student-surface[b-atty8ug0qr]{padding:9px}}
/* Pages/ReporteVehiculoPractica.razor.css */
:host[b-k2rdtsjcqv] {
    display: block;
}

.rvp-page[b-k2rdtsjcqv] {
    display: grid;
    gap: 1rem;
}

.rvp-head[b-k2rdtsjcqv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.rvp-head p[b-k2rdtsjcqv] {
    margin: .4rem 0 0;
    color: var(--text-muted);
}

.rvp-head-icon[b-k2rdtsjcqv] {
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: var(--brand-light, rgba(29, 25, 76, .10));
    color: var(--brand);
    font-size: 1.65rem;
}

.rvp-loading[b-k2rdtsjcqv],
.rvp-empty[b-k2rdtsjcqv] {
    min-height: 320px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: .7rem;
    padding: 2rem;
    border: 1px dashed var(--border);
    border-radius: 18px;
    background: var(--surface);
    color: var(--text-muted);
    text-align: center;
}

.rvp-loading i[b-k2rdtsjcqv],
.rvp-empty > i[b-k2rdtsjcqv] {
    color: var(--brand);
    font-size: 2.8rem;
}

.rvp-empty h4[b-k2rdtsjcqv] {
    margin: .2rem 0 0;
    color: var(--text);
    font-weight: 850;
}

.rvp-empty p[b-k2rdtsjcqv] {
    max-width: 520px;
    margin: 0;
}

.rvp-filter-card[b-k2rdtsjcqv],
.rvp-viewer-card[b-k2rdtsjcqv] {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    box-shadow: var(--shadow-sm, 0 8px 24px rgba(15, 23, 42, .07));
}

.rvp-filter-card .card-body[b-k2rdtsjcqv] {
    padding: 1.15rem;
}

.rvp-filter-title[b-k2rdtsjcqv] {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-bottom: 1rem;
}

.rvp-filter-title > span[b-k2rdtsjcqv] {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--brand-light, rgba(29, 25, 76, .10));
    color: var(--brand);
}

.rvp-filter-title strong[b-k2rdtsjcqv],
.rvp-filter-title small[b-k2rdtsjcqv] {
    display: block;
}

.rvp-filter-title strong[b-k2rdtsjcqv] {
    color: var(--text);
    font-weight: 850;
}

.rvp-filter-title small[b-k2rdtsjcqv] {
    color: var(--text-muted);
}

.rvp-filter-grid[b-k2rdtsjcqv] {
    display: grid;
    grid-template-columns: minmax(190px, .7fr) minmax(280px, 1.5fr) auto;
    align-items: end;
    gap: .8rem;
}

.rvp-field label[b-k2rdtsjcqv] {
    display: block;
    margin-bottom: .35rem;
    color: var(--text-2);
    font-size: .77rem;
    font-weight: 800;
}

.rvp-field .form-control[b-k2rdtsjcqv],
.rvp-field .form-select[b-k2rdtsjcqv] {
    min-height: 44px;
    border-radius: 11px;
}

.rvp-actions[b-k2rdtsjcqv],
.rvp-viewer-actions[b-k2rdtsjcqv] {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.rvp-actions .btn[b-k2rdtsjcqv] {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    white-space: nowrap;
}

.rvp-notice[b-k2rdtsjcqv] {
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .75rem .9rem;
    border-radius: 12px;
    font-weight: 700;
}

.rvp-notice.success[b-k2rdtsjcqv] {
    border: 1px solid var(--success);
    background: var(--surface);
    color: var(--success);
}

.rvp-notice.error[b-k2rdtsjcqv] {
    border: 1px solid var(--warning);
    background: var(--surface);
    color: var(--danger);
}

.rvp-notice span[b-k2rdtsjcqv] {
    flex: 1;
}

.rvp-notice button[b-k2rdtsjcqv] {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: inherit;
}

.rvp-viewer-head[b-k2rdtsjcqv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .95rem 1.1rem;
    border-bottom: 1px solid var(--border);
    background: var(--surface-2);
}

.rvp-viewer-head h3[b-k2rdtsjcqv] {
    margin: .1rem 0 0;
    color: var(--text);
    font-weight: 850;
}

.rvp-viewer-actions .btn[b-k2rdtsjcqv] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
}

.rvp-pdf-frame[b-k2rdtsjcqv] {
    height: min(76vh, 860px);
    min-height: 520px;
    background: var(--surface);
}

.rvp-pdf-frame iframe[b-k2rdtsjcqv] {
    width: 100%;
    height: 100%;
    border: 0;
    background: var(--surface);
}

@media (max-width: 920px) {
    .rvp-filter-grid[b-k2rdtsjcqv] {
        grid-template-columns: 1fr 1fr;
    }

    .rvp-actions[b-k2rdtsjcqv] {
        grid-column: 1 / -1;
        justify-content: flex-end;
    }
}

@media (max-width: 680px) {
    .rvp-head[b-k2rdtsjcqv],
    .rvp-viewer-head[b-k2rdtsjcqv] {
        align-items: stretch;
        flex-direction: column;
    }

    .rvp-head-icon[b-k2rdtsjcqv] {
        display: none;
    }

    .rvp-filter-grid[b-k2rdtsjcqv] {
        grid-template-columns: 1fr;
    }

    .rvp-actions[b-k2rdtsjcqv] {
        grid-column: auto;
        flex-wrap: wrap;
    }

    .rvp-actions .btn[b-k2rdtsjcqv] {
        flex: 1;
        justify-content: center;
    }

    .rvp-viewer-actions[b-k2rdtsjcqv] {
        justify-content: flex-end;
    }

    .rvp-pdf-frame[b-k2rdtsjcqv] {
        min-height: 460px;
    }
}

/* Pages/GestionEmpresa.razor.css */
:host[b-ecbqv2sqm4]{display:block}.gt-page[b-ecbqv2sqm4]{display:grid;gap:1rem;padding-bottom:2rem}.gt-head[b-ecbqv2sqm4]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.gt-head p[b-ecbqv2sqm4]{margin:.35rem 0 0;color:var(--text-muted)}.gt-card[b-ecbqv2sqm4]{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 8px 24px rgba(15,23,42,.06)}.gt-card .card-body[b-ecbqv2sqm4]{padding:1rem}.gt-toolbar[b-ecbqv2sqm4]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.8rem}.gt-tabs[b-ecbqv2sqm4]{display:flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.gt-tabs button[b-ecbqv2sqm4]{padding:.55rem .9rem;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:800}.gt-tabs button.active[b-ecbqv2sqm4]{background:var(--surface);color:var(--text);box-shadow:0 2px 8px rgba(15,23,42,.08)}.gt-search[b-ecbqv2sqm4]{position:relative;flex:1}.gt-search i[b-ecbqv2sqm4]{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.gt-search input[b-ecbqv2sqm4]{min-height:44px;padding-left:42px;border-radius:11px}.gt-table-wrap[b-ecbqv2sqm4]{overflow:auto;border:1px solid var(--border);border-radius:14px}.gt-table[b-ecbqv2sqm4]{min-width:900px;margin:0}.gt-table th[b-ecbqv2sqm4]{padding:.75rem;border:0;background:var(--text);color:var(--surface);font-size:.72rem;letter-spacing:.04em}.gt-table td[b-ecbqv2sqm4]{padding:.75rem;vertical-align:middle}.gt-actions[b-ecbqv2sqm4]{display:flex;gap:7px;white-space:nowrap}.gt-actions .gvCmdBtn[b-ecbqv2sqm4]{margin:0}.gt-badge[b-ecbqv2sqm4]{display:inline-flex;padding:.25rem .58rem;border-radius:999px;font-size:.7rem;font-weight:850}.gt-badge.ok[b-ecbqv2sqm4]{background:var(--surface);color:var(--success)}.gt-badge.off[b-ecbqv2sqm4]{background:var(--surface);color:var(--danger)}.gt-badge.warn[b-ecbqv2sqm4]{background:var(--surface);color:var(--danger)}.gt-modal[b-ecbqv2sqm4]{width:min(820px,95vw);max-width:min(820px,95vw)}.gt-form[b-ecbqv2sqm4]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.gt-field.span-2[b-ecbqv2sqm4]{grid-column:span 2}.gt-field label[b-ecbqv2sqm4]{display:block;margin-bottom:.3rem;font-size:.77rem;font-weight:800}.gt-field .form-control[b-ecbqv2sqm4],.gt-field .form-select[b-ecbqv2sqm4]{min-height:43px;border-radius:10px}.gt-empty[b-ecbqv2sqm4]{padding:3rem;text-align:center;color:var(--text-muted)}.gt-loading[b-ecbqv2sqm4]{display:grid;min-height:320px;place-content:center;justify-items:center;gap:.6rem}.gt-notice[b-ecbqv2sqm4]{padding:.75rem .9rem;border-radius:12px}.gt-notice.success[b-ecbqv2sqm4]{background:var(--surface);color:var(--success)}.gt-notice.error[b-ecbqv2sqm4]{background:var(--surface);color:var(--danger)}.gt-stats[b-ecbqv2sqm4]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.gt-stat[b-ecbqv2sqm4]{padding:.9rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.gt-stat small[b-ecbqv2sqm4],.gt-stat strong[b-ecbqv2sqm4]{display:block}.gt-stat small[b-ecbqv2sqm4]{color:var(--text-muted)}.gt-stat strong[b-ecbqv2sqm4]{font-size:1.25rem}@media(max-width:760px){.gt-head[b-ecbqv2sqm4],.gt-toolbar[b-ecbqv2sqm4]{align-items:stretch;flex-direction:column}.gt-form[b-ecbqv2sqm4],.gt-stats[b-ecbqv2sqm4]{grid-template-columns:1fr}.gt-field.span-2[b-ecbqv2sqm4]{grid-column:auto}}.gt-table[b-ecbqv2sqm4]{min-width:1250px}.gt-table td small[b-ecbqv2sqm4]{display:block;color:var(--text-muted)}

/* Pages/ReporteCertificados.razor.css */
.rep-page[b-uwhhtzrr0l]{display:grid;gap:16px}.rep-hero[b-uwhhtzrr0l]{display:flex;justify-content:space-between;align-items:flex-start;padding:22px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.rep-hero span[b-uwhhtzrr0l]{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--primary)}.rep-hero h1[b-uwhhtzrr0l]{margin:5px 0;font-size:clamp(24px,3vw,34px)}.rep-hero p[b-uwhhtzrr0l]{margin:0;color:var(--text-muted)}.rep-card[b-uwhhtzrr0l]{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}.rep-filter[b-uwhhtzrr0l]{padding:16px;display:flex;gap:20px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}.rep-criteria[b-uwhhtzrr0l]{display:flex;gap:8px}.rep-criteria button[b-uwhhtzrr0l]{border:1px solid var(--border);padding:9px 14px;border-radius:10px;font-weight:800;color:var(--text-muted);cursor:pointer}.rep-criteria button.active[b-uwhhtzrr0l]{background:var(--primary);border-color:var(--primary);color:var(--surface)}.rep-params[b-uwhhtzrr0l]{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.rep-params>div[b-uwhhtzrr0l]{display:grid;gap:5px}.rep-params label[b-uwhhtzrr0l]{font-size:11px;font-weight:800;text-transform:uppercase}.rep-head[b-uwhhtzrr0l]{padding:14px 16px;border-bottom:1px solid var(--border)}.rep-head div[b-uwhhtzrr0l]{display:flex;gap:7px;align-items:baseline}.rep-head strong[b-uwhhtzrr0l]{font-size:20px}.rep-head span[b-uwhhtzrr0l]{font-size:12px;color:var(--text-muted)}.rep-table-wrap[b-uwhhtzrr0l]{overflow:auto;max-height:calc(100vh - 350px)}.rep-table[b-uwhhtzrr0l]{width:100%;min-width:2200px;border-collapse:collapse}.rep-table th[b-uwhhtzrr0l],.rep-table td[b-uwhhtzrr0l]{padding:10px 11px;border-bottom:1px solid var(--border);font-size:12px}.rep-table th[b-uwhhtzrr0l]{position:sticky;top:0;background:var(--surface-2);z-index:1;text-transform:uppercase;font-size:10.5px}.rep-table td small[b-uwhhtzrr0l]{display:block;color:var(--text-muted)}.rep-table td.num[b-uwhhtzrr0l]{text-align:right;font-variant-numeric:tabular-nums}.rep-empty[b-uwhhtzrr0l]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:10px;color:var(--text-muted)}
/* Pages/GestionPeriodo.razor.css */
:host[b-yzx20sd98t] { display:block; }
.gp-page-head[b-yzx20sd98t] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gp-subtitle[b-yzx20sd98t] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gp-toolbar-card[b-yzx20sd98t],.gp-list-card[b-yzx20sd98t] { margin-bottom:18px;overflow:visible; }
.gp-toolbar-card .card-body[b-yzx20sd98t] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gp-tabs[b-yzx20sd98t] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gp-tabs button[b-yzx20sd98t] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gp-tabs button.active[b-yzx20sd98t] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gp-tools[b-yzx20sd98t] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gp-search[b-yzx20sd98t] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gp-search > i[b-yzx20sd98t] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gp-search input[b-yzx20sd98t] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gp-search input:focus[b-yzx20sd98t] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gp-list-head[b-yzx20sd98t] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gp-list-head strong[b-yzx20sd98t] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gp-list-head span[b-yzx20sd98t] { color:var(--text-muted);font-size:12px; }
.gp-table-wrap[b-yzx20sd98t] { overflow:auto; }
.gp-table[b-yzx20sd98t] { min-width:980px; }
.gp-table td strong[b-yzx20sd98t],.gp-table td small[b-yzx20sd98t] { display:block; }
.gp-table td small[b-yzx20sd98t] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gp-actions[b-yzx20sd98t] { display:flex;gap:6px; }
.academic-form-grid[b-yzx20sd98t] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-yzx20sd98t] { min-width:0; }
.academic-field--span-2[b-yzx20sd98t] { grid-column:1/-1; }
.academic-field label[b-yzx20sd98t] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-yzx20sd98t] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-yzx20sd98t] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-yzx20sd98t] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-yzx20sd98t] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-yzx20sd98t] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-yzx20sd98t] { text-align:center; }
.academic-confirm > i[b-yzx20sd98t] { color:var(--warning);font-size:34px; }

@media(max-width:760px){ .gp-page-head[b-yzx20sd98t]{align-items:stretch;flex-direction:column} .gp-tools[b-yzx20sd98t]{width:100%;flex-wrap:wrap} .gp-search[b-yzx20sd98t]{min-width:100%;max-width:none} .academic-form-grid[b-yzx20sd98t]{grid-template-columns:1fr} .academic-field--span-2[b-yzx20sd98t]{grid-column:auto} }

/* Pages/GestionUsuariosClientes.razor.css */
.guc-page[b-3re03emzg5] {
    display: grid;
    gap: 16px;
    padding-bottom: 28px;
}

.guc-state[b-3re03emzg5] {
    min-height: 320px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 12px;
    color: var(--text-2);
    text-align: center;
}

.guc-state > i[b-3re03emzg5] {
    font-size: 34px;
    color: var(--brand);
}

.guc-state--denied h4[b-3re03emzg5],
.guc-state--denied p[b-3re03emzg5] {
    margin: 0;
}

.guc-hero[b-3re03emzg5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 24px 26px;
    border: 1px solid var(--border);
    border-radius: var(--r-xl, 22px);
    background:
        radial-gradient(circle at 90% 20%, rgba(var(--brand-rgb), .12), transparent 34%),
        var(--surface);
    box-shadow: var(--shadow-sm);
}

.guc-hero h2[b-3re03emzg5] {
    display: flex;
    align-items: center;
    gap: 11px;
    margin: 4px 0 7px;
    color: var(--text);
    font-family: 'Sora', sans-serif;
    font-size: clamp(1.35rem, 2vw, 1.85rem);
    font-weight: 800;
}

.guc-hero h2 i[b-3re03emzg5] {
    color: var(--brand);
}

.guc-hero p[b-3re03emzg5] {
    margin: 0;
    color: var(--text-2);
    font-size: 13.5px;
}

.guc-eyebrow[b-3re03emzg5] {
    display: block;
    color: var(--brand);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .13em;
}

.guc-notice[b-3re03emzg5] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid;
    border-radius: 13px;
    font-size: 13px;
}

.guc-notice span[b-3re03emzg5] {
    flex: 1;
}

.guc-notice button[b-3re03emzg5] {
    border: 0;
    background: transparent;
    color: inherit;
}

.guc-notice--success[b-3re03emzg5] {
    border-color: rgba(25, 135, 84, .23);
    background: rgba(25, 135, 84, .08);
    color: var(--success);
}

.guc-notice--error[b-3re03emzg5] {
    border-color: rgba(220, 53, 69, .22);
    background: rgba(220, 53, 69, .08);
    color: var(--danger);
}

.guc-toolbar-card[b-3re03emzg5] {
    border-radius: var(--r-xl, 20px);
}

.guc-toolbar-card .card-body[b-3re03emzg5] {
    padding: 16px;
}

.guc-toolbar[b-3re03emzg5] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.guc-filter-buttons[b-3re03emzg5] {
    display: flex;
    gap: 7px;
}

.guc-filter-buttons .btn3[b-3re03emzg5] {
    min-height: 38px;
    padding-inline: 15px;
}

.guc-filter-active[b-3re03emzg5] {
    box-shadow: 0 7px 18px rgba(var(--brand-rgb), .18);
}

.guc-search[b-3re03emzg5] {
    position: relative;
    flex: 1 1 340px;
    min-width: 220px;
}

.guc-search > i[b-3re03emzg5] {
    position: absolute;
    left: 13px;
    top: 50%;
    z-index: 1;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.guc-search .form-control[b-3re03emzg5] {
    min-height: 40px;
    padding-left: 38px;
    border-radius: 12px;
}

.guc-icon-button[b-3re03emzg5] {
    width: 40px;
    height: 40px;
    display: inline-grid;
    place-items: center;
    padding: 0;
    border-radius: 11px;
}

.guc-toolbar-summary[b-3re03emzg5] {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--border-lite);
    color: var(--text-muted);
    font-size: 12px;
}

.guc-toolbar-summary strong[b-3re03emzg5] {
    color: var(--text);
}

.guc-status-dot[b-3re03emzg5] {
    width: 8px;
    height: 8px;
    border-radius: 999px;
}

.guc-status-dot.is-active[b-3re03emzg5] { background: var(--success); }
.guc-status-dot.is-inactive[b-3re03emzg5] { background: var(--danger); }

.guc-cards[b-3re03emzg5] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
    gap: 14px;
}

.guc-user-card[b-3re03emzg5] {
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 17px;
    background: var(--surface);
    box-shadow: var(--shadow-sm);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.guc-user-card:hover[b-3re03emzg5] {
    transform: translateY(-2px);
    border-color: rgba(var(--brand-rgb), .22);
    box-shadow: var(--shadow-md);
}

.guc-user-card__head[b-3re03emzg5] {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
}

.guc-avatar[b-3re03emzg5] {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(var(--brand-rgb), .16);
    border-radius: 14px;
    background: var(--brand-light);
    color: var(--brand);
    font-weight: 800;
    letter-spacing: .03em;
}

.guc-user-card__identity[b-3re03emzg5] {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.guc-user-card__identity strong[b-3re03emzg5],
.guc-user-card__identity span[b-3re03emzg5] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.guc-user-card__identity strong[b-3re03emzg5] {
    color: var(--text);
    font-size: 14px;
}

.guc-user-card__identity span[b-3re03emzg5] {
    color: var(--text-muted);
    font-size: 12px;
}

.guc-status[b-3re03emzg5] {
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .05em;
}

.guc-status.is-active[b-3re03emzg5] {
    background: rgba(25, 135, 84, .10);
    color: var(--success);
}

.guc-status.is-inactive[b-3re03emzg5] {
    background: rgba(220, 53, 69, .10);
    color: var(--danger);
}

.guc-user-card__meta[b-3re03emzg5] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    margin: 14px 0;
    padding: 12px;
    border: 1px solid var(--border-lite);
    border-radius: 12px;
    background: var(--surface-2);
}

.guc-user-card__meta div[b-3re03emzg5] {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.guc-user-card__meta small[b-3re03emzg5] {
    color: var(--text-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.guc-user-card__meta strong[b-3re03emzg5] {
    overflow: hidden;
    color: var(--text-2);
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.guc-user-card__actions[b-3re03emzg5] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.guc-action[b-3re03emzg5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 32px;
    padding: 6px 10px;
    border: 1px solid transparent;
    border-radius: 9px;
    font-size: 11.5px;
    font-weight: 700;
    transition: filter .15s ease, transform .15s ease;
}

.guc-action:hover[b-3re03emzg5] {
    filter: brightness(.96);
    transform: translateY(-1px);
}

.guc-action--danger[b-3re03emzg5] {
    background: rgba(220, 53, 69, .09);
    color: var(--danger);
}

.guc-action--success[b-3re03emzg5] {
    background: rgba(25, 135, 84, .09);
    color: var(--success);
}

.guc-action--key[b-3re03emzg5] {
    background: var(--surface-2);
    border-color: var(--border);
    color: var(--text-2);
}

.guc-action--history[b-3re03emzg5] {
    background: rgba(var(--brand-rgb), .08);
    color: var(--brand);
}

.guc-empty[b-3re03emzg5] {
    min-height: 250px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 8px;
    padding: 28px;
    text-align: center;
}

.guc-empty i[b-3re03emzg5] {
    margin-bottom: 4px;
    color: var(--text-muted);
    font-size: 34px;
}

.guc-empty strong[b-3re03emzg5] { color: var(--text); }
.guc-empty span[b-3re03emzg5] { color: var(--text-muted); font-size: 12.5px; }

.guc-pagination-card[b-3re03emzg5] {
    padding: 3px 8px;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: var(--surface);
}

.guc-modal-small[b-3re03emzg5] {
    max-width: 470px;
}

.guc-modal-history[b-3re03emzg5] {
    width: min(1080px, calc(100vw - 30px));
    max-width: 1080px;
}

.guc-modal-heading[b-3re03emzg5] {
    display: flex;
    align-items: center;
    gap: 11px;
}

.guc-modal-icon[b-3re03emzg5] {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 12px;
}

.guc-modal-icon.is-success[b-3re03emzg5] { background: rgba(25, 135, 84, .10); color: var(--success); }
.guc-modal-icon.is-danger[b-3re03emzg5] { background: rgba(220, 53, 69, .10); color: var(--danger); }
.guc-modal-icon.is-key[b-3re03emzg5] { background: rgba(var(--brand-rgb), .10); color: var(--brand); }

.guc-close[b-3re03emzg5] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface);
    color: var(--text-muted);
}

.guc-audit-note[b-3re03emzg5] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 13px;
    padding: 11px 12px;
    border: 1px solid rgba(var(--brand-rgb), .13);
    border-radius: 11px;
    background: rgba(var(--brand-rgb), .05);
    color: var(--text-2);
    font-size: 12px;
}

.guc-selected-user[b-3re03emzg5] {
    display: grid;
    gap: 2px;
    margin-bottom: 15px;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 11px;
    background: var(--surface-2);
}

.guc-selected-user strong[b-3re03emzg5] { color: var(--text); }
.guc-selected-user span[b-3re03emzg5] { color: var(--text-muted); font-size: 12px; }

.guc-field-error[b-3re03emzg5] {
    margin-top: 6px;
    color: var(--danger);
    font-size: 12px;
}

.guc-history-body[b-3re03emzg5] {
    max-height: 66vh;
    overflow: auto;
}

.guc-history-loading[b-3re03emzg5],
.guc-history-empty[b-3re03emzg5] {
    min-height: 220px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 8px;
    color: var(--text-muted);
    text-align: center;
}

.guc-history-loading[b-3re03emzg5] {
    grid-auto-flow: column;
}

.guc-history-empty i[b-3re03emzg5] {
    font-size: 31px;
}

.guc-history-empty strong[b-3re03emzg5] { color: var(--text); }
.guc-history-empty span[b-3re03emzg5] { max-width: 420px; font-size: 12px; }

.guc-history-table-wrap[b-3re03emzg5] {
    min-width: 820px;
}

.guc-history-table[b-3re03emzg5] {
    margin: 0;
    font-size: 12px;
}

.guc-history-table th[b-3re03emzg5] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--surface-2);
    color: var(--text-muted);
    font-size: 10px;
    letter-spacing: .04em;
}

.guc-history-table td[b-3re03emzg5] {
    vertical-align: middle;
    color: var(--text-2);
}

.guc-history-table td strong[b-3re03emzg5],
.guc-history-table td small[b-3re03emzg5] {
    display: block;
}

.guc-history-table td small[b-3re03emzg5] {
    margin-top: 2px;
    color: var(--text-muted);
}

.guc-history-table code[b-3re03emzg5] {
    color: var(--text-2);
    font-size: 11px;
}

.guc-history-badge[b-3re03emzg5] {
    display: inline-flex;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
}

.guc-history-badge.is-activate[b-3re03emzg5] { background: rgba(25, 135, 84, .10); color: var(--success); }
.guc-history-badge.is-deactivate[b-3re03emzg5] { background: rgba(220, 53, 69, .10); color: var(--danger); }
.guc-history-badge.is-password[b-3re03emzg5] { background: rgba(var(--brand-rgb), .10); color: var(--brand); }

@media (max-width: 760px) {
    .guc-hero[b-3re03emzg5] {
        align-items: flex-start;
        padding: 19px;
    }

    .guc-hero p[b-3re03emzg5] {
        max-width: 90%;
    }

    .guc-hero > button[b-3re03emzg5] {
        width: 40px;
        height: 40px;
        overflow: hidden;
        padding: 0;
        font-size: 0;
    }

    .guc-hero > button i[b-3re03emzg5] {
        font-size: 14px;
    }

    .guc-filter-buttons[b-3re03emzg5],
    .guc-filter-buttons .btn3[b-3re03emzg5] {
        flex: 1 1 100%;
    }

    .guc-search[b-3re03emzg5] {
        flex-basis: 100%;
        order: 3;
    }

    .guc-cards[b-3re03emzg5] {
        grid-template-columns: 1fr;
    }

    .guc-user-card__head[b-3re03emzg5] {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .guc-status[b-3re03emzg5] {
        grid-column: 2;
        justify-self: start;
    }

    .guc-user-card__actions[b-3re03emzg5] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .guc-action[b-3re03emzg5] {
        width: 100%;
    }

    .guc-modal-history[b-3re03emzg5] {
        width: calc(100vw - 18px);
    }
}

@media (max-width: 430px) {
    .guc-user-card__meta[b-3re03emzg5] {
        grid-template-columns: 1fr;
    }

    .guc-user-card__actions[b-3re03emzg5] {
        grid-template-columns: 1fr;
    }
}

/* Pages/GestionConcepto.razor.css */
:host[b-51vtsgnioa]{display:block}.module-page[b-51vtsgnioa]{display:grid;gap:16px}.module-hero[b-51vtsgnioa],.module-card[b-51vtsgnioa]{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm)}.module-hero[b-51vtsgnioa]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.module-eyebrow[b-51vtsgnioa]{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.module-hero h1[b-51vtsgnioa]{margin:5px 0;font-size:clamp(25px,2vw,34px)}.module-hero p[b-51vtsgnioa]{margin:0;color:var(--text-muted)}.module-actions[b-51vtsgnioa]{display:flex;gap:8px;flex-wrap:wrap}.module-card[b-51vtsgnioa]{padding:16px}.module-toolbar[b-51vtsgnioa]{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.module-field[b-51vtsgnioa]{display:grid;gap:5px;min-width:180px;flex:1}.module-field label[b-51vtsgnioa]{font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.module-search[b-51vtsgnioa]{min-width:260px}.module-table-wrap[b-51vtsgnioa]{overflow:auto}.module-table[b-51vtsgnioa]{width:100%;min-width:850px;border-collapse:collapse}.module-table th[b-51vtsgnioa],.module-table td[b-51vtsgnioa]{padding:11px;border-bottom:1px solid var(--border);vertical-align:middle}.module-table th[b-51vtsgnioa]{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.module-table td small[b-51vtsgnioa]{display:block;color:var(--text-muted)}.module-table .num[b-51vtsgnioa]{text-align:right}.module-empty[b-51vtsgnioa]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--text-muted)}.module-empty i[b-51vtsgnioa]{font-size:26px}.module-summary[b-51vtsgnioa]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.module-summary article[b-51vtsgnioa]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.module-summary small[b-51vtsgnioa]{display:block;color:var(--text-muted)}.module-summary strong[b-51vtsgnioa]{font-size:22px}.module-modal[b-51vtsgnioa]{width:min(980px,calc(100vw - 24px));max-height:calc(100vh - 28px);overflow:auto}.module-modal-sm[b-51vtsgnioa]{width:min(560px,calc(100vw - 24px))}.module-form[b-51vtsgnioa]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.module-form .span-2[b-51vtsgnioa]{grid-column:span 2}.module-form .span-3[b-51vtsgnioa]{grid-column:span 3}.module-form label[b-51vtsgnioa]{display:block;margin-bottom:5px;font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.status-pill[b-51vtsgnioa]{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:900;text-transform:uppercase}.status-pill.ok[b-51vtsgnioa]{background:rgba(16,185,129,.14);color:var(--success)}.status-pill.bad[b-51vtsgnioa]{background:rgba(225,29,72,.12);color:var(--danger)}.status-pill.warn[b-51vtsgnioa]{background:rgba(245,158,11,.16);color:var(--danger)}@media(max-width:780px){.module-hero[b-51vtsgnioa]{padding:17px;display:grid}.module-actions .btn[b-51vtsgnioa]{flex:1}.module-summary[b-51vtsgnioa]{grid-template-columns:repeat(2,1fr)}.module-form[b-51vtsgnioa]{grid-template-columns:1fr}.module-form .span-2[b-51vtsgnioa],.module-form .span-3[b-51vtsgnioa]{grid-column:auto}.module-toolbar[b-51vtsgnioa]{display:grid}.module-field[b-51vtsgnioa],.module-search[b-51vtsgnioa]{min-width:0}}

.row-actions[b-51vtsgnioa]{display:flex;align-items:center;gap:5px;white-space:nowrap}.concept-detail-link[b-51vtsgnioa]{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--primary);font-weight:850}.concept-detail-link:disabled[b-51vtsgnioa]{opacity:.55}.detail-editor[b-51vtsgnioa]{display:grid;grid-template-columns:minmax(240px,1fr) 170px auto auto;gap:10px;align-items:end;margin-bottom:16px}.module-table tfoot th[b-51vtsgnioa]{background:var(--surface-2);font-size:11px}@media(max-width:820px){.detail-editor[b-51vtsgnioa]{grid-template-columns:1fr 1fr}.detail-editor .btn[b-51vtsgnioa]{width:100%}}@media(max-width:560px){.detail-editor[b-51vtsgnioa]{grid-template-columns:1fr}}

/* Pages/GestionCuentaEgresos.razor.css */
:host[b-2fcq7zz6tb] { display:block; }
.gem-page-head[b-2fcq7zz6tb] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gem-subtitle[b-2fcq7zz6tb] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gem-toolbar-card[b-2fcq7zz6tb],.gem-list-card[b-2fcq7zz6tb] { margin-bottom:18px;overflow:visible; }
.gem-toolbar-card .card-body[b-2fcq7zz6tb] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gem-tabs[b-2fcq7zz6tb] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gem-tabs button[b-2fcq7zz6tb] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gem-tabs button.active[b-2fcq7zz6tb] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gem-tools[b-2fcq7zz6tb] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gem-search[b-2fcq7zz6tb] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gem-search > i[b-2fcq7zz6tb] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gem-search input[b-2fcq7zz6tb] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gem-search input:focus[b-2fcq7zz6tb] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gem-list-head[b-2fcq7zz6tb] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gem-list-head strong[b-2fcq7zz6tb] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gem-list-head span[b-2fcq7zz6tb] { color:var(--text-muted);font-size:12px; }
.gem-table-wrap[b-2fcq7zz6tb] { overflow:auto; }
.gem-table[b-2fcq7zz6tb] { min-width:760px; }
.gem-table td strong[b-2fcq7zz6tb],.gem-table td small[b-2fcq7zz6tb] { display:block; }
.gem-table td small[b-2fcq7zz6tb] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gem-actions[b-2fcq7zz6tb] { display:flex;gap:6px; }
.academic-form-grid[b-2fcq7zz6tb] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-2fcq7zz6tb] { min-width:0; }
.academic-field--span-2[b-2fcq7zz6tb] { grid-column:1/-1; }
.academic-field label[b-2fcq7zz6tb] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-2fcq7zz6tb] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-2fcq7zz6tb] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-2fcq7zz6tb] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-2fcq7zz6tb] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-2fcq7zz6tb] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-2fcq7zz6tb] { text-align:center; }
.academic-confirm > i[b-2fcq7zz6tb] { color:var(--warning);font-size:34px; }

@media(max-width:760px){ .gem-page-head[b-2fcq7zz6tb]{align-items:stretch;flex-direction:column} .gem-tools[b-2fcq7zz6tb]{width:100%;flex-wrap:wrap} .gem-search[b-2fcq7zz6tb]{min-width:100%;max-width:none} .academic-form-grid[b-2fcq7zz6tb]{grid-template-columns:1fr} .academic-field--span-2[b-2fcq7zz6tb]{grid-column:auto} }
/* Pages/GestionPromocion.razor.css */
:host[b-o84mvtr375] { display:block; }
.gpr-page-head[b-o84mvtr375] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gpr-subtitle[b-o84mvtr375] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gpr-toolbar-card[b-o84mvtr375],.gpr-list-card[b-o84mvtr375] { margin-bottom:18px;overflow:visible; }
.gpr-toolbar-card .card-body[b-o84mvtr375] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gpr-tabs[b-o84mvtr375] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gpr-tabs button[b-o84mvtr375] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gpr-tabs button.active[b-o84mvtr375] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gpr-tools[b-o84mvtr375] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gpr-search[b-o84mvtr375] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gpr-search > i[b-o84mvtr375] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gpr-search input[b-o84mvtr375] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gpr-search input:focus[b-o84mvtr375] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gpr-list-head[b-o84mvtr375] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gpr-list-head strong[b-o84mvtr375] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gpr-list-head span[b-o84mvtr375] { color:var(--text-muted);font-size:12px; }
.gpr-table-wrap[b-o84mvtr375] { overflow:auto; }
.gpr-table[b-o84mvtr375] { min-width:1320px; }
.gpr-table td strong[b-o84mvtr375],.gpr-table td small[b-o84mvtr375] { display:block; }
.gpr-table td small[b-o84mvtr375] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gpr-actions[b-o84mvtr375] { display:flex;gap:6px; }
.academic-form-grid[b-o84mvtr375] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-o84mvtr375] { min-width:0; }
.academic-field--span-2[b-o84mvtr375] { grid-column:1/-1; }
.academic-field label[b-o84mvtr375] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-o84mvtr375] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-o84mvtr375] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-o84mvtr375] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-o84mvtr375] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-o84mvtr375] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-o84mvtr375] { text-align:center; }
.academic-confirm > i[b-o84mvtr375] { color:var(--warning);font-size:34px; }
.academic-audit[b-o84mvtr375]{display:flex;flex-wrap:wrap;gap:8px 16px;margin:14px 0;padding:11px 13px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--text-muted);font-size:11.5px}.academic-help[b-o84mvtr375]{color:var(--text-muted);font-size:12px;line-height:1.55}
@media(max-width:760px){ .gpr-page-head[b-o84mvtr375]{align-items:stretch;flex-direction:column} .gpr-tools[b-o84mvtr375]{width:100%;flex-wrap:wrap} .gpr-search[b-o84mvtr375]{min-width:100%;max-width:none} .academic-form-grid[b-o84mvtr375]{grid-template-columns:1fr} .academic-field--span-2[b-o84mvtr375]{grid-column:auto} }

/* Pages/ImpresionCertificado.razor.css */
html[b-twld2bwxpj],body[b-twld2bwxpj]{margin:0;width:100%;height:100%;overflow:hidden}.print-frame[b-twld2bwxpj]{display:block;width:100vw;height:100vh;border:0;background:var(--surface)}.print-state[b-twld2bwxpj]{width:100vw;height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--p);background:var(--surface)}
/* Pages/GestionComprobantes.razor.css */
.gc-page[b-cqbtn9kr20] {
    --gc-brand: var(--brand);
    --gc-brand-2: var(--p);
    --gc-orange: var(--c-orange);
    --gc-surface: var(--surface);
    --gc-surface-2: var(--surface-2);
    --gc-text: var(--text);
    --gc-text-2: var(--text-2);
    --gc-muted: var(--text-muted);
    --gc-border: var(--border);
    padding: 1.1rem 1.15rem 2rem;
    color: var(--gc-text);
}

.gc-state[b-cqbtn9kr20] {
    min-height: 58vh;
    display: grid;
    place-items: center;
    align-content: center;
    gap: .65rem;
    text-align: center;
    color: var(--gc-text-2);
}

.gc-state > i[b-cqbtn9kr20] {
    font-size: 2.4rem;
    color: var(--brand);
}

.gc-state h4[b-cqbtn9kr20],
.gc-state p[b-cqbtn9kr20] { margin: 0; }

.gc-hero[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.3rem 1.45rem;
    margin-bottom: 1rem;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--gc-brand) 18%, transparent);
    border-radius: 20px;
    background:
        radial-gradient(circle at 96% 10%, rgba(255,255,255,.22), transparent 22%),
        linear-gradient(135deg, var(--gc-brand), color-mix(in srgb, var(--gc-brand) 72%, var(--p)));
    color: var(--surface);
    box-shadow: 0 15px 36px rgba(29, 25, 76, .16);
}

.gc-hero h2[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin: .2rem 0 .3rem;
    font-size: clamp(1.35rem, 2vw, 1.9rem);
    font-weight: 900;
}

.gc-hero p[b-cqbtn9kr20] {
    margin: 0;
    opacity: .82;
}

.gc-eyebrow[b-cqbtn9kr20] {
    font-size: .69rem;
    font-weight: 900;
    letter-spacing: .14em;
    opacity: .76;
}

.gc-hero-actions .btn[b-cqbtn9kr20] {
    min-height: 42px;
    border: 0;
    border-radius: 12px;
    font-weight: 800;
}

.gc-notice[b-cqbtn9kr20] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .7rem;
    padding: .85rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid;
    border-radius: 14px;
    font-weight: 700;
}

.gc-notice button[b-cqbtn9kr20] {
    border: 0;
    background: transparent;
    color: inherit;
}

.gc-notice.info[b-cqbtn9kr20] { border-color: var(--success); background: var(--surface); color: var(--p); }
.gc-notice.success[b-cqbtn9kr20] { border-color: var(--success); background: var(--surface); color: var(--success); }
.gc-notice.warning[b-cqbtn9kr20] { border-color: var(--p); background: var(--surface); color: var(--danger); }
.gc-notice.error[b-cqbtn9kr20] { border-color: var(--warning); background: var(--surface); color: var(--danger); }

.gc-filter-card[b-cqbtn9kr20],
.gc-table-card[b-cqbtn9kr20] {
    border: 1px solid var(--gc-border);
    border-radius: 18px;
    background: var(--gc-surface);
    box-shadow: 0 10px 28px rgba(20, 25, 44, .06);
}

.gc-filter-card[b-cqbtn9kr20] {
    padding: 1rem;
    margin-bottom: 1rem;
}

.gc-filter-grid[b-cqbtn9kr20] {
    display: grid;
    grid-template-columns: 165px 165px minmax(260px, 1fr) auto;
    gap: .8rem;
    align-items: end;
}

.gc-field[b-cqbtn9kr20] { min-width: 0; }

.gc-field label[b-cqbtn9kr20],
.gc-page-size label[b-cqbtn9kr20] {
    display: block;
    margin-bottom: .35rem;
    color: var(--gc-text-2);
    font-size: .75rem;
    font-weight: 850;
}

.gc-field small[b-cqbtn9kr20] {
    display: block;
    margin-top: .3rem;
    color: var(--gc-muted);
    font-size: .72rem;
}

.gc-field .form-control[b-cqbtn9kr20],
.gc-field .form-select[b-cqbtn9kr20],
.gc-page-size .form-select[b-cqbtn9kr20] {
    min-height: 42px;
    border-color: var(--gc-border);
    border-radius: 11px;
}

.gc-search-input[b-cqbtn9kr20] {
    position: relative;
}

.gc-search-input > i[b-cqbtn9kr20] {
    position: absolute;
    z-index: 2;
    left: .85rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--gc-muted);
}

.gc-search-input input[b-cqbtn9kr20] { padding-left: 2.45rem; }

.gc-filter-submit .btn[b-cqbtn9kr20] {
    min-height: 42px;
    padding-inline: 1.1rem;
    border-radius: 11px;
    font-weight: 800;
}

.gc-bulk-actions[b-cqbtn9kr20] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem;
    padding-top: .9rem;
    margin-top: .9rem;
    border-top: 1px solid var(--gc-border);
}

.gc-bulk-actions .btn[b-cqbtn9kr20] {
    border-radius: 10px;
    font-size: .82rem;
    font-weight: 800;
}

.gc-bulk-progress[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin-left: auto;
    color: var(--gc-brand);
    font-size: .82rem;
    font-weight: 850;
}

.gc-summary[b-cqbtn9kr20] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .8rem;
    margin-bottom: 1rem;
}

.gc-summary article[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    gap: .8rem;
    min-width: 0;
    padding: .95rem 1rem;
    border: 1px solid var(--gc-border);
    border-radius: 16px;
    background: var(--gc-surface);
    box-shadow: 0 8px 24px rgba(20, 25, 44, .05);
}

.gc-summary-icon[b-cqbtn9kr20] {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 13px;
}

.gc-summary-icon.total[b-cqbtn9kr20] { background: var(--surface); color: var(--p); }
.gc-summary-icon.amount[b-cqbtn9kr20] { background: var(--surface); color: var(--success); }
.gc-summary-icon.pending[b-cqbtn9kr20] { background: var(--surface); color: var(--danger); }
.gc-summary-icon.cancelled[b-cqbtn9kr20] { background: var(--surface); color: var(--danger); }

.gc-summary small[b-cqbtn9kr20],
.gc-summary strong[b-cqbtn9kr20] { display: block; }
.gc-summary small[b-cqbtn9kr20] { color: var(--gc-muted); font-size: .72rem; }
.gc-summary strong[b-cqbtn9kr20] { margin-top: .1rem; color: var(--gc-text); font-size: 1.02rem; font-weight: 900; }

.gc-table-card[b-cqbtn9kr20] { overflow: visible; }

.gc-table-head[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .95rem 1rem;
    border-bottom: 1px solid var(--gc-border);
    background: transparent;
}

.gc-table-head h5[b-cqbtn9kr20] { margin: 0; font-weight: 900; }
.gc-table-head span[b-cqbtn9kr20] { color: var(--gc-muted); font-size: .75rem; }

.gc-page-size[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.gc-page-size label[b-cqbtn9kr20] { margin: 0; }
.gc-page-size .form-select[b-cqbtn9kr20] { min-width: 78px; min-height: 34px; }

.gc-table-wrap[b-cqbtn9kr20] {
    width: 100%;
    overflow: auto;
}

.gc-table-wrap.compact[b-cqbtn9kr20] { max-height: 280px; }

.gc-table[b-cqbtn9kr20] {
    min-width: 1750px;
    margin: 0;
}

.gc-table thead th[b-cqbtn9kr20],
.gc-detail-table thead th[b-cqbtn9kr20] {
    padding: .72rem .75rem;
    border-bottom: 1px solid var(--gc-border);
    background: var(--gc-surface-2);
    color: var(--gc-text-2);
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .045em;
    white-space: nowrap;
}

.gc-table tbody td[b-cqbtn9kr20] {
    padding: .7rem .75rem;
    border-color: var(--gc-border);
    vertical-align: middle;
    font-size: .78rem;
}

.gc-actions-column[b-cqbtn9kr20] { width: 150px; }

.gc-date-group td[b-cqbtn9kr20] {
    padding: .52rem .8rem;
    background: color-mix(in srgb, var(--gc-brand) 5%, var(--gc-surface-2));
    color: var(--gc-brand);
    font-size: .73rem;
    font-weight: 900;
    text-transform: capitalize;
}

.gc-date-group i[b-cqbtn9kr20] { margin-right: .45rem; }

.gc-row-cancelled[b-cqbtn9kr20] { opacity: .58; }
.gc-row-cancelled td:not(.gc-actions-cell)[b-cqbtn9kr20] { text-decoration: line-through; }

.gc-row-actions[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    gap: .3rem;
    white-space: nowrap;
}

.gc-row-actions .btn2[b-cqbtn9kr20] {
    width: 31px;
    height: 31px;
    display: inline-grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 9px;
    color: var(--surface);
    box-shadow: 0 5px 12px rgba(15, 23, 42, .12);
}

.gc-btn-view[b-cqbtn9kr20] { background: var(--success); }
.gc-btn-print[b-cqbtn9kr20] { background: var(--p); }
.gc-btn-edit[b-cqbtn9kr20] { background: var(--p); }
.gc-btn-more[b-cqbtn9kr20] { background: var(--text); }

.gc-more-wrap[b-cqbtn9kr20] { position: relative; }

.gc-action-menu[b-cqbtn9kr20] {
    position: absolute;
    z-index: 1005;
    top: calc(100% + 7px);
    left: 0;
    width: 230px;
    padding: .38rem;
    border: 1px solid var(--gc-border);
    border-radius: 13px;
    background: var(--gc-surface);
    box-shadow: 0 18px 38px rgba(15, 23, 42, .2);
}

.gc-action-menu[b-cqbtn9kr20]::before {
    content: "";
    position: absolute;
    top: -5px;
    left: 13px;
    width: 9px;
    height: 9px;
    border-left: 1px solid var(--gc-border);
    border-top: 1px solid var(--gc-border);
    background: var(--gc-surface);
    transform: rotate(45deg);
}

.gc-action-menu button[b-cqbtn9kr20] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .6rem .65rem;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: var(--gc-text-2);
    text-align: left;
    font-size: .76rem;
    font-weight: 750;
}

.gc-action-menu button:hover[b-cqbtn9kr20] { background: var(--gc-surface-2); color: var(--gc-brand); }
.gc-action-menu button.danger[b-cqbtn9kr20] { color: var(--danger); }
.gc-action-menu i[b-cqbtn9kr20] { width: 17px; text-align: center; }
.gc-menu-separator[b-cqbtn9kr20] { height: 1px; margin: .3rem .35rem; background: var(--gc-border); }

.gc-document-cell[b-cqbtn9kr20],
.gc-person-cell[b-cqbtn9kr20],
.gc-payment-cell[b-cqbtn9kr20],
.gc-date-cell[b-cqbtn9kr20],
.gc-status-stack[b-cqbtn9kr20] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .16rem;
    min-width: 0;
}

.gc-document-cell strong[b-cqbtn9kr20],
.gc-person-cell strong[b-cqbtn9kr20],
.gc-payment-cell strong[b-cqbtn9kr20],
.gc-date-cell strong[b-cqbtn9kr20] { color: var(--gc-text); font-weight: 850; }

.gc-document-cell small[b-cqbtn9kr20],
.gc-person-cell small[b-cqbtn9kr20],
.gc-payment-cell small[b-cqbtn9kr20],
.gc-date-cell small[b-cqbtn9kr20] { color: var(--gc-muted); }

.gc-person-cell > span[b-cqbtn9kr20] {
    max-width: 250px;
    overflow: hidden;
    color: var(--gc-text-2);
    font-size: .7rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gc-nc-badge[b-cqbtn9kr20] {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    padding: .13rem .38rem;
    border-radius: 999px;
    background: var(--p);
    color: var(--danger);
    font-size: .61rem;
    font-weight: 900;
}

.gc-amount[b-cqbtn9kr20] { color: var(--gc-text); font-size: .85rem; font-weight: 900; white-space: nowrap; }

.gc-pill[b-cqbtn9kr20],
.gc-fe-pill[b-cqbtn9kr20],
.gc-secondary[b-cqbtn9kr20] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: .18rem .52rem;
    border: 0;
    border-radius: 999px;
    font-size: .62rem;
    font-weight: 900;
    white-space: nowrap;
}

.gc-pill.issued[b-cqbtn9kr20] { background: var(--surface); color: var(--success); }
.gc-pill.cancelled[b-cqbtn9kr20] { background: var(--surface); color: var(--danger); }
.gc-fe-pill.accepted[b-cqbtn9kr20] { background: var(--border); color: var(--success); }
.gc-fe-pill.observed[b-cqbtn9kr20] { background: var(--p); color: var(--danger); }
.gc-fe-pill.rejected[b-cqbtn9kr20],
.gc-fe-pill.error[b-cqbtn9kr20] { background: var(--surface); color: var(--danger); }
.gc-fe-pill.pending[b-cqbtn9kr20] { background: var(--surface); color: var(--p); }
.gc-fe-pill.cancelled[b-cqbtn9kr20] { background: var(--surface); color: var(--text); }
.gc-secondary[b-cqbtn9kr20] { padding-inline: 0; color: var(--gc-muted); font-weight: 700; }

.gc-user[b-cqbtn9kr20] {
    display: inline-block;
    max-width: 150px;
    overflow: hidden;
    color: var(--gc-text-2);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gc-table-loading[b-cqbtn9kr20],
.gc-empty[b-cqbtn9kr20] {
    min-height: 260px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: .5rem;
    color: var(--gc-muted);
    text-align: center;
}

.gc-table-loading i[b-cqbtn9kr20],
.gc-empty > i[b-cqbtn9kr20] { font-size: 2rem; color: var(--gc-brand); }
.gc-empty strong[b-cqbtn9kr20] { color: var(--gc-text); }

.gc-pagination[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .75rem;
    border-top: 1px solid var(--gc-border);
    background: transparent;
}

.gc-pagination button[b-cqbtn9kr20] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 1px solid var(--gc-border);
    border-radius: 9px;
    background: var(--gc-surface);
    color: var(--gc-text-2);
}

.gc-pagination button:disabled[b-cqbtn9kr20] { opacity: .4; }
.gc-pagination span[b-cqbtn9kr20] { margin-inline: .35rem; color: var(--gc-muted); font-size: .76rem; }

.gc-modal-wide[b-cqbtn9kr20] { width: min(1000px, 96vw); }
.gc-modal-small[b-cqbtn9kr20] { width: min(610px, 94vw); }
.gc-modal-pdf[b-cqbtn9kr20] { width: min(1180px, 97vw); }

.gc-modal-close[b-cqbtn9kr20] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 9px;
    background: rgba(255,255,255,.13);
    color: inherit;
}

.gc-detail-grid[b-cqbtn9kr20] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .65rem;
    margin-bottom: 1rem;
}

.gc-detail-grid > div[b-cqbtn9kr20],
.gc-audit-box > div[b-cqbtn9kr20] {
    padding: .75rem;
    border: 1px solid var(--gc-border);
    border-radius: 12px;
    background: var(--gc-surface-2);
}

.gc-detail-grid small[b-cqbtn9kr20],
.gc-detail-grid strong[b-cqbtn9kr20],
.gc-audit-box small[b-cqbtn9kr20],
.gc-audit-box span[b-cqbtn9kr20] { display: block; }
.gc-detail-grid small[b-cqbtn9kr20],
.gc-audit-box small[b-cqbtn9kr20] { color: var(--gc-muted); font-size: .7rem; }
.gc-detail-grid strong[b-cqbtn9kr20] { margin-top: .2rem; color: var(--gc-text); font-size: .78rem; }

.gc-modal-section-title[b-cqbtn9kr20] {
    margin: 1rem 0 .5rem;
    color: var(--gc-text);
    font-weight: 900;
}

.gc-detail-table[b-cqbtn9kr20] { min-width: 640px; margin: 0; }
.gc-detail-table td[b-cqbtn9kr20] { padding: .55rem .65rem; border-color: var(--gc-border); font-size: .76rem; }

.gc-payment-chips[b-cqbtn9kr20] {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.gc-payment-chips > span[b-cqbtn9kr20] {
    padding: .45rem .65rem;
    border: 1px solid var(--gc-border);
    border-radius: 10px;
    background: var(--gc-surface-2);
    color: var(--gc-text-2);
    font-size: .72rem;
}

.gc-detail-note[b-cqbtn9kr20],
.gc-warning-box[b-cqbtn9kr20],
.gc-audit-box[b-cqbtn9kr20] {
    margin-top: .85rem;
    border-radius: 12px;
}

.gc-detail-note[b-cqbtn9kr20] {
    padding: .75rem;
    background: var(--gc-surface-2);
    color: var(--gc-text-2);
    white-space: pre-wrap;
}

.gc-edit-number[b-cqbtn9kr20] {
    margin-bottom: .8rem;
    color: var(--gc-brand);
    font-size: 1.05rem;
    font-weight: 900;
}

.gc-switch[b-cqbtn9kr20],
.gc-check-option[b-cqbtn9kr20] {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin-bottom: .85rem;
    color: var(--gc-text-2);
    font-weight: 800;
}

.gc-form-grid[b-cqbtn9kr20] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.gc-audit-box[b-cqbtn9kr20] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.gc-audit-box span[b-cqbtn9kr20] { margin-top: .2rem; color: var(--gc-text-2); font-size: .72rem; }

.gc-fe-message[b-cqbtn9kr20] {
    min-height: 160px;
    max-height: 58vh;
    margin: 0;
    overflow: auto;
    padding: 1rem;
    border: 1px solid var(--gc-border);
    border-radius: 12px;
    background: var(--text);
    color: var(--surface);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: .75rem;
    white-space: pre-wrap;
    word-break: break-word;
}

.gc-warning-box[b-cqbtn9kr20] {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    padding: .8rem;
    margin-bottom: .85rem;
    border: 1px solid var(--p);
    background: var(--surface);
    color: var(--danger);
}

.gc-warning-box > i[b-cqbtn9kr20] { margin-top: .15rem; }
.gc-warning-box strong[b-cqbtn9kr20],
.gc-warning-box span[b-cqbtn9kr20] { display: block; }
.gc-warning-box span[b-cqbtn9kr20] { margin-top: .18rem; font-size: .75rem; }

.gc-pdf-body[b-cqbtn9kr20] {
    height: min(76vh, 900px);
    padding: 0;
    background: var(--surface);
}

.gc-pdf-body iframe[b-cqbtn9kr20] {
    width: 100%;
    height: 100%;
    border: 0;
    background: var(--surface);
}

.gc-busy-overlay[b-cqbtn9kr20] {
    position: fixed;
    z-index: 2147483000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 1rem;
    background: rgba(15, 23, 42, .48);
    backdrop-filter: blur(3px);
}

.gc-busy-overlay > div[b-cqbtn9kr20] {
    min-width: 250px;
    display: grid;
    place-items: center;
    gap: .45rem;
    padding: 1.3rem;
    border-radius: 17px;
    background: var(--gc-surface);
    color: var(--gc-text);
    box-shadow: 0 25px 55px rgba(15, 23, 42, .3);
}

.gc-busy-overlay i[b-cqbtn9kr20] { color: var(--gc-brand); font-size: 1.8rem; }
.gc-busy-overlay span[b-cqbtn9kr20] { color: var(--gc-muted); font-size: .74rem; }

@media (max-width: 1100px) {
    .gc-filter-grid[b-cqbtn9kr20] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gc-search-field[b-cqbtn9kr20] { grid-column: 1 / -1; }
    .gc-filter-submit[b-cqbtn9kr20] { grid-column: 1 / -1; }
    .gc-filter-submit .btn[b-cqbtn9kr20] { width: 100%; }
    .gc-summary[b-cqbtn9kr20] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gc-detail-grid[b-cqbtn9kr20] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
    .gc-page[b-cqbtn9kr20] { padding: .7rem .55rem 1.5rem; }
    .gc-hero[b-cqbtn9kr20] { align-items: flex-start; flex-direction: column; padding: 1.05rem; border-radius: 16px; }
    .gc-hero-actions[b-cqbtn9kr20],
    .gc-hero-actions .btn[b-cqbtn9kr20] { width: 100%; }
    .gc-filter-grid[b-cqbtn9kr20] { grid-template-columns: 1fr; }
    .gc-search-field[b-cqbtn9kr20],
    .gc-filter-submit[b-cqbtn9kr20] { grid-column: auto; }
    .gc-bulk-actions .btn[b-cqbtn9kr20] { width: 100%; justify-content: center; }
    .gc-bulk-progress[b-cqbtn9kr20] { width: 100%; justify-content: center; margin-left: 0; }
    .gc-summary[b-cqbtn9kr20] { grid-template-columns: 1fr; }
    .gc-table-head[b-cqbtn9kr20] { align-items: flex-start; flex-direction: column; }
    .gc-page-size[b-cqbtn9kr20] { width: 100%; justify-content: space-between; }
    .gc-detail-grid[b-cqbtn9kr20],
    .gc-form-grid[b-cqbtn9kr20],
    .gc-audit-box[b-cqbtn9kr20] { grid-template-columns: 1fr; }
    .gc-modal-wide[b-cqbtn9kr20],
    .gc-modal-small[b-cqbtn9kr20],
    .gc-modal-pdf[b-cqbtn9kr20] { width: 98vw; }
    .gc-pdf-body[b-cqbtn9kr20] { height: 72vh; }
    .gc-pagination span[b-cqbtn9kr20] { font-size: .68rem; }
}

/* Menú de acciones fuera del contenedor con overflow de la tabla. */
.gc-action-sheet-overlay[b-cqbtn9kr20] {
    z-index: 2200;
}

.gc-action-sheet-dialog[b-cqbtn9kr20] {
    width: min(94vw, 720px);
    max-width: 720px;
}

.gc-action-sheet[b-cqbtn9kr20] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.gc-action-sheet > button[b-cqbtn9kr20] {
    min-width: 0;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    gap: .7rem;
    padding: .8rem;
    border: 1px solid var(--gc-border);
    border-radius: 13px;
    background: var(--gc-surface);
    color: var(--gc-text-2);
    text-align: left;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.gc-action-sheet > button:hover[b-cqbtn9kr20] {
    border-color: color-mix(in srgb, var(--gc-brand) 35%, var(--gc-border));
    box-shadow: 0 9px 22px rgba(15, 23, 42, .09);
    transform: translateY(-1px);
}

.gc-action-sheet > button > i[b-cqbtn9kr20] {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: color-mix(in srgb, var(--gc-brand) 9%, var(--gc-surface-2));
    color: var(--gc-brand);
}

.gc-action-sheet > button > span[b-cqbtn9kr20],
.gc-action-sheet > button strong[b-cqbtn9kr20],
.gc-action-sheet > button small[b-cqbtn9kr20] {
    min-width: 0;
    display: block;
}

.gc-action-sheet > button strong[b-cqbtn9kr20] {
    color: var(--gc-text);
    font-size: .78rem;
    font-weight: 900;
}

.gc-action-sheet > button small[b-cqbtn9kr20] {
    margin-top: .14rem;
    color: var(--gc-muted);
    font-size: .68rem;
    line-height: 1.35;
}

.gc-action-sheet > button.danger[b-cqbtn9kr20] {
    border-color: var(--warning);
    background: var(--surface);
}

.gc-action-sheet > button.danger > i[b-cqbtn9kr20] {
    background: var(--surface);
    color: var(--danger);
}

@media (max-width: 640px) {
    .gc-action-sheet[b-cqbtn9kr20] {
        grid-template-columns: 1fr;
    }
}
.gc-span-2[b-cqbtn9kr20] { grid-column: 1 / -1; }
.gc-sync-results[b-cqbtn9kr20] { margin: 1rem 0; padding: 1rem; background: var(--surface); border: 1px solid var(--border); border-radius: 1rem; }
.gc-sync-results progress[b-cqbtn9kr20] { width: 100%; accent-color: var(--brand); }
.gc-sync-results summary[b-cqbtn9kr20] { cursor: pointer; font-weight: 600; }
.gc-sync-scroll[b-cqbtn9kr20] { overflow: auto; max-height: 26rem; margin-top: .75rem; }
.gc-sync-scroll td[b-cqbtn9kr20] { overflow-wrap: anywhere; min-width: 9rem; }

/* Pages/GestionVideo.razor.css */
:host[b-yzz7h5su7k] { display:block; }
.gv-page-head[b-yzz7h5su7k] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gv-subtitle[b-yzz7h5su7k] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gv-toolbar-card[b-yzz7h5su7k],.gv-list-card[b-yzz7h5su7k] { margin-bottom:18px;overflow:visible; }
.gv-toolbar-card .card-body[b-yzz7h5su7k] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gv-tabs[b-yzz7h5su7k] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gv-tabs button[b-yzz7h5su7k] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gv-tabs button.active[b-yzz7h5su7k] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gv-tools[b-yzz7h5su7k] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gv-combo[b-yzz7h5su7k] { min-width:210px;flex:0 1 260px; }
.gv-search[b-yzz7h5su7k] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gv-search > i[b-yzz7h5su7k] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gv-search input[b-yzz7h5su7k] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gv-search input:focus[b-yzz7h5su7k] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gv-list-head[b-yzz7h5su7k] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gv-list-head strong[b-yzz7h5su7k] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gv-list-head span[b-yzz7h5su7k] { color:var(--text-muted);font-size:12px; }
.gv-table-wrap[b-yzz7h5su7k] { overflow:auto; }
.gv-table[b-yzz7h5su7k] { min-width:1220px; }
.gv-table td strong[b-yzz7h5su7k],.gv-table td small[b-yzz7h5su7k] { display:block; }
.gv-table td small[b-yzz7h5su7k] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gv-actions[b-yzz7h5su7k] { display:flex;gap:6px; }
.academic-form-grid[b-yzz7h5su7k] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-yzz7h5su7k] { min-width:0; }
.academic-field--span-2[b-yzz7h5su7k] { grid-column:1/-1; }
.academic-field label[b-yzz7h5su7k] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-yzz7h5su7k] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-yzz7h5su7k] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-yzz7h5su7k] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-yzz7h5su7k] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-yzz7h5su7k] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-yzz7h5su7k] { text-align:center; }
.academic-confirm > i[b-yzz7h5su7k] { color:var(--warning);font-size:34px; }
.academic-card-grid[b-yzz7h5su7k]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:13px}.academic-media-card[b-yzz7h5su7k]{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-xs)}.academic-media-cover[b-yzz7h5su7k]{position:relative;display:grid;height:150px;place-items:center;overflow:hidden;background:var(--surface-2);color:var(--text-muted);font-size:34px}.academic-media-cover img[b-yzz7h5su7k]{width:100%;height:100%;object-fit:cover}.academic-media-play[b-yzz7h5su7k]{position:absolute;display:grid;width:44px;height:44px;place-items:center;border:0;border-radius:50%;background:rgba(20,20,30,.72);color:var(--surface)}.academic-media-body[b-yzz7h5su7k]{padding:14px}.academic-media-body h3[b-yzz7h5su7k]{margin:8px 0 4px}.student-modal[b-yzz7h5su7k]{position:fixed;inset:0;z-index:250000;display:grid;place-items:center;padding:16px;background:rgba(10,12,24,.72)}.student-modal-card[b-yzz7h5su7k]{width:min(1100px,96vw);overflow:hidden;border-radius:18px;background:var(--surface);box-shadow:var(--shadow-lg)}.student-modal-head[b-yzz7h5su7k]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border)}.student-video-frame[b-yzz7h5su7k]{display:block;width:100%;height:min(72vh,720px);border:0}
@media(max-width:760px){ .gv-page-head[b-yzz7h5su7k]{align-items:stretch;flex-direction:column} .gv-tools[b-yzz7h5su7k]{width:100%;flex-wrap:wrap} .gv-combo[b-yzz7h5su7k],.gv-search[b-yzz7h5su7k]{min-width:100%;max-width:none;flex-basis:100%} .academic-form-grid[b-yzz7h5su7k]{grid-template-columns:1fr} .academic-field--span-2[b-yzz7h5su7k]{grid-column:auto} }

/* Pages/GestionVentas.razor.css */
.venta-page[b-3fuua9ceqp] {
    display: grid;
    gap: 16px;
}

.venta-hero[b-3fuua9ceqp],
.venta-card[b-3fuua9ceqp] {
    min-width: 0;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--surface);
    box-shadow: var(--shadow-sm);
}

.venta-hero[b-3fuua9ceqp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px;
}

.venta-hero h1[b-3fuua9ceqp] {
    margin: 4px 0;
    color: var(--text);
}

.venta-hero p[b-3fuua9ceqp] {
    margin: 0;
    color: var(--text-muted);
}

.venta-eyebrow[b-3fuua9ceqp],
.venta-section-eyebrow[b-3fuua9ceqp] {
    color: var(--brand);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.venta-hero-icon[b-3fuua9ceqp] {
    width: 54px;
    height: 54px;
    display: grid;
    place-content: center;
    flex: none;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--surface-2);
    color: var(--brand);
    font-size: 22px;
}

.venta-alert[b-3fuua9ceqp] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    border-radius: 14px;
}

.venta-alert span[b-3fuua9ceqp] {
    flex: 1;
}

.venta-alert button[b-3fuua9ceqp] {
    width: 32px;
    height: 32px;
    display: grid;
    place-content: center;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: inherit;
}

.venta-layout[b-3fuua9ceqp] {
    display: grid;
    grid-template-columns:
        minmax(0, 1.18fr)
        minmax(390px, .82fr);
    gap: 16px;
    align-items: start;
}

.venta-card[b-3fuua9ceqp] {
    padding: 18px;
}

.venta-section-head[b-3fuua9ceqp] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 16px;
}

.venta-section-head h3[b-3fuua9ceqp] {
    margin: 3px 0 4px;
    color: var(--text);
    font-size: 18px;
}

.venta-section-head p[b-3fuua9ceqp] {
    margin: 0;
    max-width: 620px;
    color: var(--text-muted);
    line-height: 1.5;
}

.venta-counter[b-3fuua9ceqp] {
    display: inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--surface-2);
    color: var(--text-muted);
    font-size: 10px;
    font-weight: 850;
    white-space: nowrap;
}

.field[b-3fuua9ceqp] {
    display: grid;
    gap: 6px;
    margin-bottom: 12px;
}

.field label[b-3fuua9ceqp] {
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.field small[b-3fuua9ceqp] {
    color: var(--text-muted);
    font-size: 10px;
    line-height: 1.45;
}

.venta-selected-client[b-3fuua9ceqp] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--success);
    font-weight: 750;
}

.client-options[b-3fuua9ceqp] {
    max-height: 220px;
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface);
}

.client-options button[b-3fuua9ceqp] {
    width: 100%;
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 11px;
    border: 0;
    border-bottom: 1px solid var(--border);
    background: transparent;
    color: var(--text);
    text-align: left;
}

.client-options button:last-child[b-3fuua9ceqp] {
    border-bottom: 0;
}

.client-options button:hover[b-3fuua9ceqp] {
    background: var(--surface-2);
}

.client-options small[b-3fuua9ceqp] {
    color: var(--text-muted);
}

.product-add[b-3fuua9ceqp] {
    display: grid;
    grid-template-columns:
        minmax(220px, 1fr)
        150px
        105px
        44px;
    gap: 9px;
    align-items: end;
}

.venta-editable-tag[b-3fuua9ceqp] {
    display: inline-flex;
    margin-left: 4px;
    padding: 2px 6px;
    border-radius: 999px;
    background:
        color-mix(
            in srgb,
            var(--brand) 10%,
            var(--surface));
    color: var(--brand);
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .03em;
}

.venta-add-button[b-3fuua9ceqp] {
    width: 44px;
    min-width: 44px;
    height: 44px;
    padding: 0;
}

.venta-items[b-3fuua9ceqp] {
    display: grid;
    gap: 8px;
    margin-top: 4px;
}

.venta-item[b-3fuua9ceqp] {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        auto
        38px;
    gap: 10px;
    align-items: center;
    padding: 11px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
}

.venta-item > div[b-3fuua9ceqp] {
    display: grid;
    gap: 3px;
}

.venta-item strong[b-3fuua9ceqp] {
    color: var(--text);
}

.venta-item small[b-3fuua9ceqp] {
    color: var(--text-muted);
}

.venta-item > span[b-3fuua9ceqp] {
    color: var(--text);
    font-weight: 850;
    font-variant-numeric: tabular-nums;
}

.venta-empty[b-3fuua9ceqp] {
    min-height: 190px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 8px;
    padding: 24px;
    border: 1px dashed var(--border);
    border-radius: 13px;
    background: var(--surface-2);
    color: var(--text-muted);
    text-align: center;
}

.venta-empty i[b-3fuua9ceqp] {
    color: var(--brand);
    font-size: 28px;
}

.venta-empty strong[b-3fuua9ceqp] {
    color: var(--text);
}

.venta-payment-card[b-3fuua9ceqp] {
    padding: 0;
    overflow: hidden;
}

.venta-payment-header[b-3fuua9ceqp] {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    background: var(--brand);
    color: var(--surface);
}

.venta-payment-header span[b-3fuua9ceqp] {
    display: block;
    color: rgba(255, 255, 255, .76);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
}

.venta-payment-header h3[b-3fuua9ceqp] {
    margin: 3px 0 0;
    color: var(--surface);
    font-size: 20px;
}

.venta-payment-header > i[b-3fuua9ceqp] {
    font-size: 24px;
    opacity: .78;
}

.venta-payment-body[b-3fuua9ceqp] {
    display: grid;
    gap: 16px;
    padding: 18px;
}

.venta-payment-section-title[b-3fuua9ceqp] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--border);
}

.venta-payment-section-title i[b-3fuua9ceqp] {
    color: var(--brand);
}

.venta-payment-section-title span[b-3fuua9ceqp] {
    color: var(--text-muted);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.form-grid[b-3fuua9ceqp] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 12px;
}

.field.full[b-3fuua9ceqp] {
    grid-column: 1 / -1;
}

.venta-static-field[b-3fuua9ceqp] {
    min-height: 46px;
    display: flex;
    align-items: center;
    padding: 9px 12px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface-2);
    color: var(--text);
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.venta-label-lock[b-3fuua9ceqp] {
    margin-left: 4px;
    color: var(--text-muted);
}

.venta-electronic-status[b-3fuua9ceqp] {
    min-height: 70px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface-2);
}

.venta-electronic-status > i[b-3fuua9ceqp] {
    width: 36px;
    height: 36px;
    display: grid;
    place-content: center;
    flex: none;
    border-radius: 10px;
    background:
        color-mix(
            in srgb,
            var(--brand) 10%,
            var(--surface));
    color: var(--brand);
}

.venta-electronic-status strong[b-3fuua9ceqp],
.venta-electronic-status small[b-3fuua9ceqp] {
    display: block;
}

.venta-electronic-status strong[b-3fuua9ceqp] {
    color: var(--text);
    font-size: 12px;
}

.venta-electronic-status small[b-3fuua9ceqp] {
    margin-top: 2px;
    color: var(--text-muted);
    font-size: 9px;
}

.venta-summary-cards[b-3fuua9ceqp] {
    display: grid;
    grid-template-columns:
        repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.venta-summary-cards article[b-3fuua9ceqp] {
    min-height: 76px;
    display: grid;
    align-content: center;
    gap: 5px;
    padding: 13px 15px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface-2);
}

.venta-summary-cards span[b-3fuua9ceqp] {
    color: var(--text-muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.venta-summary-cards strong[b-3fuua9ceqp] {
    color: var(--text);
    font-size: 21px;
    font-variant-numeric: tabular-nums;
}

.venta-total-bar[b-3fuua9ceqp] {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(260px, .95fr);
    gap: 16px;
    align-items: center;
    padding: 15px;
    border-radius: 13px;
    background: var(--brand);
    color: var(--surface);
    box-shadow:
        0 10px 24px
        color-mix(
            in srgb,
            var(--brand) 22%,
            transparent);
}

.venta-total-main[b-3fuua9ceqp] {
    display: grid;
    gap: 2px;
}

.venta-total-main > span[b-3fuua9ceqp] {
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
}

.venta-total-main > strong[b-3fuua9ceqp] {
    font-size: clamp(26px, 3vw, 36px);
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.venta-total-main > small[b-3fuua9ceqp] {
    color: rgba(255, 255, 255, .74);
    font-size: 9px;
}

.venta-cash-grid[b-3fuua9ceqp] {
    display: grid;
    grid-template-columns:
        minmax(160px, 1fr)
        120px;
    gap: 10px;
    align-items: end;
}

.venta-cash-grid .field[b-3fuua9ceqp] {
    margin: 0;
}

.venta-cash-grid .field label[b-3fuua9ceqp] {
    color: var(--surface);
}

.venta-cash-grid .field small[b-3fuua9ceqp] {
    color: rgba(255, 255, 255, .76);
}

.venta-cash-grid .form-control[b-3fuua9ceqp] {
    min-height: 46px;
    border: 2px solid rgba(255, 255, 255, .24);
    background: var(--surface);
    color: var(--text);
    font-size: 16px;
    font-weight: 850;
}

.venta-editable-tag--inverse[b-3fuua9ceqp] {
    background: rgba(255, 255, 255, .18);
    color: var(--surface);
}

.venta-change[b-3fuua9ceqp] {
    min-height: 67px;
    display: grid;
    align-content: center;
    gap: 3px;
    padding: 10px 11px;
    border-radius: 11px;
    background: rgba(255, 255, 255, .94);
}

.venta-change span[b-3fuua9ceqp] {
    color: var(--text);
    font-size: 9px;
    font-weight: 850;
    text-transform: uppercase;
}

.venta-change strong[b-3fuua9ceqp] {
    color: var(--success);
    font-size: 19px;
    font-variant-numeric: tabular-nums;
}

.venta-payment-footer[b-3fuua9ceqp] {
    display: flex;
    justify-content: flex-end;
    gap: 9px;
    padding: 13px 18px 16px;
    border-top: 1px solid var(--border);
    background: var(--surface-2);
}

.venta-payment-footer .btn[b-3fuua9ceqp] {
    min-width: 145px;
}

.venta-pdf[b-3fuua9ceqp] {
    width: min(1180px, 96vw);
    max-width: 96vw;
    height: min(850px, 92vh);
}

.pdf-body[b-3fuua9ceqp] {
    height: calc(92vh - 80px);
    padding: 0;
}

.pdf-body iframe[b-3fuua9ceqp] {
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 1100px) {
    .venta-layout[b-3fuua9ceqp] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .venta-hero[b-3fuua9ceqp] {
        align-items: flex-start;
        padding: 18px;
    }

    .venta-hero-icon[b-3fuua9ceqp] {
        display: none;
    }

    .venta-card[b-3fuua9ceqp] {
        padding: 14px;
    }

    .venta-payment-card[b-3fuua9ceqp] {
        padding: 0;
    }

    .product-add[b-3fuua9ceqp],
    .form-grid[b-3fuua9ceqp],
    .venta-summary-cards[b-3fuua9ceqp],
    .venta-total-bar[b-3fuua9ceqp],
    .venta-cash-grid[b-3fuua9ceqp] {
        grid-template-columns: 1fr;
    }

    .field.full[b-3fuua9ceqp] {
        grid-column: auto;
    }

    .venta-section-head[b-3fuua9ceqp] {
        flex-direction: column;
    }

    .venta-add-button[b-3fuua9ceqp] {
        width: 100%;
    }

    .venta-payment-footer[b-3fuua9ceqp] {
        display: grid;
        grid-template-columns: 1fr;
        padding: 12px 14px 14px;
    }

    .venta-payment-footer .btn[b-3fuua9ceqp] {
        width: 100%;
    }
}

/* Pages/GestionEmpleado.razor.css */
:host[b-otivpma7gs]{display:block}.module-page[b-otivpma7gs]{display:grid;gap:16px}.module-hero[b-otivpma7gs],.module-card[b-otivpma7gs]{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm)}.module-hero[b-otivpma7gs]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.module-eyebrow[b-otivpma7gs]{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.module-hero h1[b-otivpma7gs]{margin:5px 0;font-size:clamp(25px,2vw,34px)}.module-hero p[b-otivpma7gs]{margin:0;color:var(--text-muted)}.module-actions[b-otivpma7gs]{display:flex;gap:8px;flex-wrap:wrap}.module-card[b-otivpma7gs]{padding:16px}.module-toolbar[b-otivpma7gs]{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.module-field[b-otivpma7gs]{display:grid;gap:5px;min-width:180px;flex:1}.module-field label[b-otivpma7gs]{font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.module-search[b-otivpma7gs]{min-width:260px}.module-table-wrap[b-otivpma7gs]{overflow:auto}.module-table[b-otivpma7gs]{width:100%;min-width:850px;border-collapse:collapse}.module-table th[b-otivpma7gs],.module-table td[b-otivpma7gs]{padding:11px;border-bottom:1px solid var(--border);vertical-align:middle}.module-table th[b-otivpma7gs]{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.module-table td small[b-otivpma7gs]{display:block;color:var(--text-muted)}.module-table .num[b-otivpma7gs]{text-align:right}.module-empty[b-otivpma7gs]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--text-muted)}.module-empty i[b-otivpma7gs]{font-size:26px}.module-summary[b-otivpma7gs]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.module-summary article[b-otivpma7gs]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.module-summary small[b-otivpma7gs]{display:block;color:var(--text-muted)}.module-summary strong[b-otivpma7gs]{font-size:22px}.module-modal[b-otivpma7gs]{width:min(980px,calc(100vw - 24px));max-height:calc(100vh - 28px);overflow:auto}.module-modal-sm[b-otivpma7gs]{width:min(560px,calc(100vw - 24px))}.module-form[b-otivpma7gs]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.module-form .span-2[b-otivpma7gs]{grid-column:span 2}.module-form .span-3[b-otivpma7gs]{grid-column:span 3}.module-form label[b-otivpma7gs]{display:block;margin-bottom:5px;font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.status-pill[b-otivpma7gs]{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:900;text-transform:uppercase}.status-pill.ok[b-otivpma7gs]{background:rgba(16,185,129,.14);color:var(--success)}.status-pill.bad[b-otivpma7gs]{background:rgba(225,29,72,.12);color:var(--danger)}.status-pill.warn[b-otivpma7gs]{background:rgba(245,158,11,.16);color:var(--danger)}@media(max-width:780px){.module-hero[b-otivpma7gs]{padding:17px;display:grid}.module-actions .btn[b-otivpma7gs]{flex:1}.module-summary[b-otivpma7gs]{grid-template-columns:repeat(2,1fr)}.module-form[b-otivpma7gs]{grid-template-columns:1fr}.module-form .span-2[b-otivpma7gs],.module-form .span-3[b-otivpma7gs]{grid-column:auto}.module-toolbar[b-otivpma7gs]{display:grid}.module-field[b-otivpma7gs],.module-search[b-otivpma7gs]{min-width:0}}

.row-actions[b-otivpma7gs]{display:flex;align-items:center;gap:5px;white-space:nowrap}.form-section-title[b-otivpma7gs]{margin:18px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--primary)}.module-table tfoot th[b-otivpma7gs]{background:var(--surface-2);font-size:11px}

/* Pages/GestionAsignacionSeguro.razor.css */
:host[b-xmkokqqihe] {
    display: block;
}

.asg-page[b-xmkokqqihe] {
    display: grid;
    gap: 1rem;
    padding-bottom: 2rem;
}

.asg-head[b-xmkokqqihe] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.asg-head p[b-xmkokqqihe] {
    margin: .35rem 0 0;
    color: var(--text-muted);
}

.asg-summary[b-xmkokqqihe] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
}

.asg-stat[b-xmkokqqihe] {
    padding: .9rem 1rem;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: var(--surface);
}

.asg-stat small[b-xmkokqqihe],
.asg-stat strong[b-xmkokqqihe] {
    display: block;
}

.asg-stat small[b-xmkokqqihe] {
    color: var(--text-muted);
}

.asg-stat strong[b-xmkokqqihe] {
    margin-top: .2rem;
    font-size: 1.3rem;
}

.asg-card[b-xmkokqqihe] {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
}

.asg-card .card-body[b-xmkokqqihe] {
    padding: 1rem;
}

.asg-toolbar[b-xmkokqqihe] {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-bottom: .8rem;
}

.asg-search[b-xmkokqqihe] {
    position: relative;
    flex: 1;
}

.asg-search i[b-xmkokqqihe] {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.asg-search input[b-xmkokqqihe] {
    min-height: 44px;
    padding-left: 42px;
    border-radius: 11px;
}

.asg-table-wrap[b-xmkokqqihe] {
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 14px;
}

.asg-table[b-xmkokqqihe] {
    min-width: 950px;
    margin: 0;
}

.asg-table th[b-xmkokqqihe] {
    padding: .75rem;
    border: 0;
    background: var(--text);
    color: var(--surface);
    font-size: .72rem;
    letter-spacing: .04em;
}

.asg-table td[b-xmkokqqihe] {
    padding: .75rem;
    vertical-align: middle;
}

.asg-row-actions[b-xmkokqqihe] {
    display: flex;
    gap: 7px;
}

.asg-row-actions .gvCmdBtn[b-xmkokqqihe] {
    margin: 0;
}

.asg-flags[b-xmkokqqihe] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.asg-flag[b-xmkokqqihe] {
    padding: .25rem .55rem;
    border-radius: 999px;
    background: var(--surface);
    color: var(--p);
    font-size: .7rem;
    font-weight: 800;
}

.asg-flag.ok[b-xmkokqqihe] {
    background: var(--surface);
    color: var(--success);
}

.asg-badge[b-xmkokqqihe] {
    display: inline-flex;
    padding: .25rem .58rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 850;
}

.asg-badge.complete[b-xmkokqqihe] {
    background: var(--surface);
    color: var(--success);
}

.asg-badge.pending[b-xmkokqqihe] {
    background: var(--surface);
    color: var(--danger);
}

.asg-pagination[b-xmkokqqihe] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: .8rem;
    color: var(--text-muted);
    font-size: .8rem;
}

.asg-pagination div[b-xmkokqqihe] {
    display: flex;
    align-items: center;
    gap: .35rem;
}

.asg-pagination button[b-xmkokqqihe] {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: var(--surface);
}

.asg-form[b-xmkokqqihe] {
    display: grid;
    gap: .7rem;
}

.asg-check[b-xmkokqqihe] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem;
    border: 1px solid var(--border);
    border-radius: 12px;
}

.asg-context[b-xmkokqqihe] {
    display: grid;
    gap: .45rem;
    margin-bottom: .9rem;
    padding: .85rem;
    border-radius: 12px;
    background: var(--surface-2);
}

.asg-context small[b-xmkokqqihe] {
    color: var(--text-muted);
}

.asg-notice[b-xmkokqqihe] {
    padding: .75rem .9rem;
    border-radius: 12px;
}

.asg-notice.error[b-xmkokqqihe] {
    background: var(--surface);
    color: var(--danger);
}

.asg-notice.success[b-xmkokqqihe] {
    background: var(--surface);
    color: var(--success);
}

.asg-empty[b-xmkokqqihe] {
    padding: 3rem;
    text-align: center;
    color: var(--text-muted);
}

.asg-loading[b-xmkokqqihe] {
    display: grid;
    min-height: 320px;
    place-content: center;
    justify-items: center;
    gap: .6rem;
}

@media (max-width: 720px) {
    .asg-head[b-xmkokqqihe],
    .asg-toolbar[b-xmkokqqihe],
    .asg-pagination[b-xmkokqqihe] {
        align-items: stretch;
        flex-direction: column;
    }

    .asg-summary[b-xmkokqqihe] {
        grid-template-columns: 1fr;
    }
}.asg-table[b-xmkokqqihe]{min-width:1650px}

/* Pages/GestionProducto.razor.css */
:host[b-bgmbury4r0] {
    display: block;
}

.gpr-page[b-bgmbury4r0] {
    display: grid;
    gap: 1rem;
    padding-bottom: 2.5rem;
}

.gpr-head[b-bgmbury4r0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.gpr-head p[b-bgmbury4r0] {
    margin: .4rem 0 0;
    color: var(--text-muted);
}

.gpr-head .btn[b-bgmbury4r0] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    white-space: nowrap;
}

.gpr-loading[b-bgmbury4r0],
.gpr-empty[b-bgmbury4r0] {
    min-height: 360px;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: .75rem;
    text-align: center;
    color: var(--text-muted);
}

.gpr-loading i[b-bgmbury4r0],
.gpr-empty > i[b-bgmbury4r0] {
    color: var(--brand);
    font-size: 3rem;
}

.gpr-notice[b-bgmbury4r0] {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .8rem .95rem;
    border-radius: 12px;
    font-weight: 750;
}

.gpr-notice span[b-bgmbury4r0] {
    flex: 1;
}

.gpr-notice button[b-bgmbury4r0] {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: inherit;
}

.gpr-notice.success[b-bgmbury4r0] {
    border: 1px solid var(--success);
    background: var(--surface);
    color: var(--success);
}

.gpr-notice.error[b-bgmbury4r0] {
    border: 1px solid var(--warning);
    background: var(--surface);
    color: var(--danger);
}

.gpr-summary[b-bgmbury4r0] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
}

.gpr-stat[b-bgmbury4r0] {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 0;
    padding: .9rem 1rem;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: var(--surface);
    box-shadow: var(--shadow-xs, 0 2px 8px rgba(15, 23, 42, .05));
}

.gpr-stat > span[b-bgmbury4r0] {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--surface);
    color: var(--p);
}

.gpr-stat.warning > span[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--danger);
}

.gpr-stat.value > span[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--success);
}

.gpr-stat div[b-bgmbury4r0] {
    min-width: 0;
}

.gpr-stat small[b-bgmbury4r0],
.gpr-stat strong[b-bgmbury4r0] {
    display: block;
}

.gpr-stat small[b-bgmbury4r0] {
    color: var(--text-muted);
}

.gpr-stat strong[b-bgmbury4r0] {
    overflow: hidden;
    color: var(--text);
    font-size: 1.12rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gpr-card[b-bgmbury4r0] {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    box-shadow: var(--shadow-sm, 0 8px 24px rgba(15, 23, 42, .07));
}

.gpr-card .card-body[b-bgmbury4r0] {
    padding: 1rem;
}

.gpr-toolbar[b-bgmbury4r0],
.gpr-status-tabs[b-bgmbury4r0],
.gpr-row-actions[b-bgmbury4r0],
.gpr-pagination[b-bgmbury4r0],
.gpr-pagination > div[b-bgmbury4r0] {
    display: flex;
    align-items: center;
}

.gpr-toolbar[b-bgmbury4r0] {
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .85rem;
}

.gpr-toolbar .btn[b-bgmbury4r0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}

.gpr-export-button[b-bgmbury4r0] {
    width: 40px;
    min-width: 40px;
    height: 40px;
    padding: 0;
    border-radius: 11px;
}

.gpr-status-tabs[b-bgmbury4r0] {
    gap: .35rem;
    padding: 3px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface-2);
}

.gpr-status-tabs button[b-bgmbury4r0] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .55rem .85rem;
    border-radius: 9px;
    color: var(--text-muted);
    font-weight: 800;
}

.gpr-status-tabs button.active[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--brand);
    box-shadow: var(--shadow-xs, 0 2px 7px rgba(15, 23, 42, .08));
}

.gpr-filters[b-bgmbury4r0] {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(170px, 230px) minmax(170px, 230px) auto;
    gap: .7rem;
    align-items: center;
    margin-bottom: .85rem;
}

.gpr-search[b-bgmbury4r0] {
    position: relative;
}

.gpr-search i[b-bgmbury4r0] {
    position: absolute;
    top: 50%;
    left: 14px;
    z-index: 2;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.gpr-search input[b-bgmbury4r0] {
    min-height: 42px;
    padding-left: 41px;
    border-radius: 11px;
}

.gpr-filters .form-select[b-bgmbury4r0] {
    min-height: 42px;
    border-radius: 11px;
}

.gpr-page-size[b-bgmbury4r0] {
    display: flex;
    align-items: center;
    gap: .45rem;
}

.gpr-page-size label[b-bgmbury4r0] {
    margin: 0;
    color: var(--text-muted);
    font-size: .76rem;
    font-weight: 750;
}

.gpr-page-size select[b-bgmbury4r0] {
    width: 78px;
}

.gpr-table-wrap[b-bgmbury4r0] {
    overflow: auto;
    border: 1px solid var(--border);
    border-radius: 14px;
}

.gpr-table[b-bgmbury4r0],
.gpr-movement-table[b-bgmbury4r0] {
    margin: 0;
    color: var(--text);
}

.gpr-table[b-bgmbury4r0] {
    min-width: 1080px;
}

.gpr-table th[b-bgmbury4r0],
.gpr-movement-table th[b-bgmbury4r0] {
    padding: .72rem;
    border-bottom-width: 1px;
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .04em;
    white-space: nowrap;
}

.gpr-table td[b-bgmbury4r0],
.gpr-movement-table td[b-bgmbury4r0] {
    padding: .72rem;
    vertical-align: middle;
}

.gpr-actions-column[b-bgmbury4r0],
.gpr-actions-cell[b-bgmbury4r0] {
    width: 220px;
    min-width: 220px;
}

.gpr-row-actions[b-bgmbury4r0] {
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

/*
   Los botones reutilizan exactamente el contrato visual global:
   gvCmdBtn + btn2 + btn-modify / btn-delete / btn-success / btn-view.
   No se redefinen colores ni tamaños locales.
*/
.gpr-row-actions .gvCmdBtn[b-bgmbury4r0] {
    flex: 0 0 auto;
    margin-right: 0;
}

.gpr-row-actions .gvCmdBtn i[b-bgmbury4r0] {
    line-height: 1;
    pointer-events: none;
}

.gpr-row-actions .gvCmdBtn:disabled[b-bgmbury4r0] {
    opacity: .45;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.gpr-product-cell[b-bgmbury4r0] {
    min-width: 260px;
    display: flex;
    align-items: center;
    gap: .7rem;
}

.gpr-product-cell strong[b-bgmbury4r0],
.gpr-product-cell small[b-bgmbury4r0] {
    display: block;
}

.gpr-product-cell small[b-bgmbury4r0] {
    color: var(--text-muted);
    font-size: .72rem;
}

.gpr-thumb[b-bgmbury4r0] {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 11px;
    background: var(--surface-2);
    color: var(--brand);
}

.gpr-thumb img[b-bgmbury4r0] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gpr-stock[b-bgmbury4r0] {
    display: inline-flex;
    min-width: 44px;
    justify-content: center;
    padding: .25rem .5rem;
    border-radius: 999px;
}

.gpr-stock.ok[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--success);
}

.gpr-stock.low[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--danger);
}

.gpr-stock.empty[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--danger);
}

.gpr-stock.neutral[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--text);
}

.gpr-badge[b-bgmbury4r0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 25px;
    padding: .25rem .58rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 850;
    white-space: nowrap;
}

.gpr-badge.active[b-bgmbury4r0],
.gpr-badge.income[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--success);
}

.gpr-badge.inactive[b-bgmbury4r0],
.gpr-badge.output[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--danger);
}

.gpr-badge.sale[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--p);
}

.gpr-no-data[b-bgmbury4r0] {
    padding: 3rem;
    color: var(--text-muted);
    text-align: center;
}

.gpr-pagination[b-bgmbury4r0] {
    justify-content: space-between;
    gap: 1rem;
    padding-top: .85rem;
    color: var(--text-muted);
    font-size: .8rem;
}

.gpr-pagination > div[b-bgmbury4r0] {
    gap: .35rem;
}

.gpr-pagination button[b-bgmbury4r0] {
    width: 31px;
    height: 31px;
    display: grid;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 9px;
    background: var(--surface);
    color: var(--text);
}

.gpr-pagination button:disabled[b-bgmbury4r0] {
    opacity: .45;
}

.gpr-modal-editor[b-bgmbury4r0] {
    width: min(980px, 96vw);
    max-width: min(980px, 96vw);
}

.gpr-modal-stock[b-bgmbury4r0] {
    width: min(640px, 94vw);
    max-width: min(640px, 94vw);
}

.gpr-modal-movements[b-bgmbury4r0] {
    width: min(980px, 96vw);
    max-width: min(980px, 96vw);
}

.gpr-modal-confirm[b-bgmbury4r0] {
    width: min(470px, 92vw);
    max-width: min(470px, 92vw);
}

.gpr-modal-close[b-bgmbury4r0] {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: var(--text-muted);
}

.gpr-editor-body[b-bgmbury4r0],
.gpr-movement-body[b-bgmbury4r0] {
    max-height: 72vh;
    overflow: auto;
}

.gpr-audit[b-bgmbury4r0] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .7rem;
    margin-bottom: 1rem;
}

.gpr-audit > div[b-bgmbury4r0] {
    padding: .75rem .85rem;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface-2);
}

.gpr-audit small[b-bgmbury4r0],
.gpr-audit strong[b-bgmbury4r0] {
    display: block;
}

.gpr-audit small[b-bgmbury4r0] {
    margin-bottom: .2rem;
    color: var(--text-muted);
    font-size: .7rem;
    text-transform: uppercase;
}

.gpr-editor-layout[b-bgmbury4r0] {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    align-items: start;
    gap: 1rem;
}

.gpr-image-panel[b-bgmbury4r0] {
    display: grid;
    justify-items: center;
    gap: .65rem;
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: var(--surface-2);
}

.gpr-image-preview[b-bgmbury4r0] {
    width: 190px;
    height: 190px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px dashed var(--border);
    border-radius: 16px;
    background: var(--surface);
    color: var(--text-muted);
}

.gpr-image-preview img[b-bgmbury4r0] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.gpr-image-preview i[b-bgmbury4r0] {
    font-size: 2.2rem;
}

.gpr-image-preview span[b-bgmbury4r0] {
    font-size: .78rem;
}

.gpr-upload-button[b-bgmbury4r0] {
    position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
}

.gpr-upload-button input[b-bgmbury4r0] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.gpr-image-panel > small[b-bgmbury4r0] {
    color: var(--text-muted);
    text-align: center;
}

.gpr-form-grid[b-bgmbury4r0] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
}

.gpr-form-grid.stock[b-bgmbury4r0] {
    margin-top: 1rem;
}

.gpr-field[b-bgmbury4r0] {
    min-width: 0;
}

.gpr-field.span-2[b-bgmbury4r0] {
    grid-column: span 2;
}

.gpr-field label[b-bgmbury4r0] {
    display: block;
    margin-bottom: .35rem;
    color: var(--text-2);
    font-size: .77rem;
    font-weight: 800;
}

.gpr-field .form-control[b-bgmbury4r0],
.gpr-field .form-select[b-bgmbury4r0] {
    min-height: 42px;
    border-radius: 10px;
}

.gpr-field textarea.form-control[b-bgmbury4r0] {
    min-height: 92px;
}

.gpr-field small[b-bgmbury4r0] {
    display: block;
    margin-top: .3rem;
    color: var(--text-muted);
}

.gpr-stock-product[b-bgmbury4r0] {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .85rem;
    border-radius: 13px;
    background: var(--surface-2);
}

.gpr-stock-product > span[b-bgmbury4r0] {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--brand-light, rgba(29, 25, 76, .10));
    color: var(--brand);
}

.gpr-stock-product strong[b-bgmbury4r0],
.gpr-stock-product small[b-bgmbury4r0] {
    display: block;
}

.gpr-stock-product small[b-bgmbury4r0] {
    color: var(--text-muted);
}

.gpr-confirm-body[b-bgmbury4r0] {
    display: grid;
    justify-items: center;
    gap: .65rem;
    padding: 2rem;
    text-align: center;
}

.gpr-confirm-body > span[b-bgmbury4r0] {
    width: 66px;
    height: 66px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    font-size: 2rem;
}

.gpr-confirm-body > span.activate[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--success);
}

.gpr-confirm-body > span.deactivate[b-bgmbury4r0] {
    background: var(--surface);
    color: var(--danger);
}

.gpr-confirm-body h4[b-bgmbury4r0],
.gpr-confirm-body p[b-bgmbury4r0] {
    margin: 0;
}

.gpr-busy-overlay[b-bgmbury4r0] {
    position: fixed;
    inset: 0;
    z-index: 1900;
    display: grid;
    place-items: center;
    background: rgba(15, 23, 42, .34);
    backdrop-filter: blur(4px);
}

.gpr-busy-overlay > div[b-bgmbury4r0] {
    display: grid;
    justify-items: center;
    gap: .5rem;
    padding: 1.25rem 1.6rem;
    border-radius: 16px;
    background: var(--surface);
    box-shadow: 0 24px 60px rgba(15, 23, 42, .24);
}

.gpr-busy-overlay i[b-bgmbury4r0] {
    color: var(--brand);
    font-size: 1.8rem;
}

@media (max-width: 1100px) {
    .gpr-summary[b-bgmbury4r0] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gpr-filters[b-bgmbury4r0] {
        grid-template-columns: 1fr 1fr;
    }

    .gpr-search[b-bgmbury4r0] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .gpr-head[b-bgmbury4r0],
    .gpr-toolbar[b-bgmbury4r0],
    .gpr-pagination[b-bgmbury4r0] {
        align-items: stretch;
        flex-direction: column;
    }

    .gpr-summary[b-bgmbury4r0],
    .gpr-filters[b-bgmbury4r0],
    .gpr-audit[b-bgmbury4r0],
    .gpr-editor-layout[b-bgmbury4r0],
    .gpr-form-grid[b-bgmbury4r0] {
        grid-template-columns: 1fr;
    }

    .gpr-search[b-bgmbury4r0],
    .gpr-field.span-2[b-bgmbury4r0] {
        grid-column: auto;
    }

    .gpr-head .btn[b-bgmbury4r0] {
        justify-content: center;
    }

    .gpr-status-tabs[b-bgmbury4r0] {
        width: 100%;
    }

    .gpr-status-tabs button[b-bgmbury4r0] {
        flex: 1;
        justify-content: center;
    }

    .gpr-page-size[b-bgmbury4r0] {
        justify-content: space-between;
    }

    .gpr-pagination > div[b-bgmbury4r0] {
        justify-content: space-between;
    }

    .gpr-image-panel[b-bgmbury4r0] {
        order: 2;
    }

    .gpr-modal-editor[b-bgmbury4r0],
    .gpr-modal-stock[b-bgmbury4r0],
    .gpr-modal-movements[b-bgmbury4r0] {
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
    }
}

/* Pages/FacturacionElectronicaDashboard.razor.css */
:host[b-5r6f4qoda9]{display:block}.fe-dash-card[b-5r6f4qoda9]{grid-column:1/-1}.fe-dash-kpis[b-5r6f4qoda9]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.fe-dash-kpis article[b-5r6f4qoda9]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.fe-dash-kpis small[b-5r6f4qoda9]{display:block;color:var(--text-muted);font-size:9px;font-weight:800;text-transform:uppercase}.fe-dash-kpis strong[b-5r6f4qoda9]{display:block;margin-top:4px;font-size:22px}.fe-dash-kpis .ok strong[b-5r6f4qoda9]{color:var(--success)}.fe-dash-kpis .pending strong[b-5r6f4qoda9],.fe-dash-kpis .obs strong[b-5r6f4qoda9]{color:var(--warning)}.fe-dash-kpis .bad strong[b-5r6f4qoda9]{color:var(--danger)}.fe-dash-warning[b-5r6f4qoda9],.fe-dash-ok[b-5r6f4qoda9]{display:flex;align-items:center;gap:12px;margin-top:14px;padding:13px 15px;border-radius:14px}.fe-dash-warning[b-5r6f4qoda9]{background:rgba(245,158,11,.12);color:var(--text)}.fe-dash-warning>div[b-5r6f4qoda9]{display:grid;flex:1}.fe-dash-warning span[b-5r6f4qoda9]{color:var(--text-muted);font-size:11px}.fe-dash-ok[b-5r6f4qoda9]{background:rgba(16,185,129,.11);color:var(--success);font-weight:700}@media(max-width:1100px){.fe-dash-kpis[b-5r6f4qoda9]{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.fe-dash-kpis[b-5r6f4qoda9]{grid-template-columns:repeat(2,1fr)}.fe-dash-warning[b-5r6f4qoda9]{align-items:flex-start;flex-wrap:wrap}}

/* Pages/GestionMuro.razor.css */
:host[b-sjxskp3q3i] { display:block; }
.gm-page-head[b-sjxskp3q3i] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gm-subtitle[b-sjxskp3q3i] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gm-toolbar-card[b-sjxskp3q3i],.gm-list-card[b-sjxskp3q3i] { margin-bottom:18px;overflow:visible; }
.gm-toolbar-card .card-body[b-sjxskp3q3i] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gm-tabs[b-sjxskp3q3i] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gm-tabs button[b-sjxskp3q3i] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gm-tabs button.active[b-sjxskp3q3i] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gm-tools[b-sjxskp3q3i] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gm-search[b-sjxskp3q3i] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gm-search > i[b-sjxskp3q3i] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gm-search input[b-sjxskp3q3i] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gm-search input:focus[b-sjxskp3q3i] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gm-list-head[b-sjxskp3q3i] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gm-list-head strong[b-sjxskp3q3i] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gm-list-head span[b-sjxskp3q3i] { color:var(--text-muted);font-size:12px; }
.gm-table-wrap[b-sjxskp3q3i] { overflow:auto; }
.gm-table[b-sjxskp3q3i] { min-width:1080px; }
.gm-table td strong[b-sjxskp3q3i],.gm-table td small[b-sjxskp3q3i] { display:block; }
.gm-table td small[b-sjxskp3q3i] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gm-actions[b-sjxskp3q3i] { display:flex;gap:6px; }
.academic-form-grid[b-sjxskp3q3i] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-sjxskp3q3i] { min-width:0; }
.academic-field--span-2[b-sjxskp3q3i] { grid-column:1/-1; }
.academic-field label[b-sjxskp3q3i] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-sjxskp3q3i] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-sjxskp3q3i] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-sjxskp3q3i] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-sjxskp3q3i] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-sjxskp3q3i] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-sjxskp3q3i] { text-align:center; }
.academic-confirm > i[b-sjxskp3q3i] { color:var(--warning);font-size:34px; }
.academic-card-grid[b-sjxskp3q3i]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:13px}.academic-content-card[b-sjxskp3q3i]{padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-xs)}.academic-content-card-head[b-sjxskp3q3i]{display:flex;justify-content:space-between;gap:10px}.academic-html-preview[b-sjxskp3q3i]{max-height:120px;overflow:hidden;color:var(--text-2)}
@media(max-width:760px){ .gm-page-head[b-sjxskp3q3i]{align-items:stretch;flex-direction:column} .gm-tools[b-sjxskp3q3i]{width:100%;flex-wrap:wrap} .gm-search[b-sjxskp3q3i]{min-width:100%;max-width:none} .academic-form-grid[b-sjxskp3q3i]{grid-template-columns:1fr} .academic-field--span-2[b-sjxskp3q3i]{grid-column:auto} }

/* Pages/GestionCliente.razor.css */
/* =====================================================================
   GESTIÓN DE CLIENTES — INTEGRACIÓN VISUAL CON EL TEMPLATE ADMINISTRATIVO
   ===================================================================== */

:host[b-jbzh0jrj3a] {
    display: block;
}

/* Encabezado de página */
.gc-page-head[b-jbzh0jrj3a] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.gc-subtitle[b-jbzh0jrj3a] {
    margin: 6px 0 0;
    color: var(--text-muted);
    font-size: 13px;
}

.gc-new[b-jbzh0jrj3a] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

/* Contenedor principal */
.gc-card[b-jbzh0jrj3a] {
    overflow: visible;
}

.gc-alert[b-jbzh0jrj3a] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 14px;
    padding: 12px 14px;
    border: 1px solid;
    border-radius: var(--r-md, 12px);
    font-size: 13px;
}

.gc-alert > span[b-jbzh0jrj3a] {
    flex: 1;
}

.gc-alert > button[b-jbzh0jrj3a] {
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.gc-alert--success[b-jbzh0jrj3a] {
    border-color: var(--success);
    background: var(--surface);
    color: var(--success);
}

.gc-alert--danger[b-jbzh0jrj3a] {
    border-color: var(--warning);
    background: var(--surface);
    color: var(--danger);
}

/* Filtros */
.gc-toolbar[b-jbzh0jrj3a] {
    display: grid;
    grid-template-columns: minmax(190px, .7fr) minmax(190px, .7fr) auto minmax(260px, 1fr) auto;
    align-items: center;
    gap: 12px;
    margin: 14px 0;
}

.gc-combo-filter[b-jbzh0jrj3a] {
    min-width: 0;
}

.gc-filter-mode[b-jbzh0jrj3a] {
    display: flex;
    padding: 4px;
    border: 1px solid var(--border);
    border-radius: var(--r-md, 12px);
    background: var(--surface-2);
}

.gc-filter-mode button[b-jbzh0jrj3a] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 36px;
    padding: 0 12px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: var(--text-muted);
    font-weight: 700;
    cursor: pointer;
}

.gc-filter-mode button.active[b-jbzh0jrj3a] {
    background: var(--surface);
    color: var(--brand);
    box-shadow: var(--shadow-sm);
}

.gc-search[b-jbzh0jrj3a] {
    position: relative;
    display: block;
}

.gc-search > i[b-jbzh0jrj3a] {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: var(--text-muted);
    pointer-events: none;
}

.gc-search input[b-jbzh0jrj3a] {
    box-sizing: border-box;
    width: 100%;
    min-height: 44px;
    padding: 0 42px;
    border: 1px solid var(--border);
    border-radius: var(--r-md, 12px);
    background: var(--surface);
    color: var(--text);
    outline: none;
}

.gc-search input:focus[b-jbzh0jrj3a] {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px rgba(var(--brand-rgb), .12);
}

.gc-search button[b-jbzh0jrj3a] {
    position: absolute;
    top: 50%;
    right: 8px;
    width: 30px;
    height: 30px;
    transform: translateY(-50%);
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
}

/* Tabla */
.gc-table-wrap[b-jbzh0jrj3a] {
    overflow-x: auto;
}

.gc-table[b-jbzh0jrj3a] {
    min-width: 1480px;
}

.gc-table td strong[b-jbzh0jrj3a],
.gc-table td small[b-jbzh0jrj3a] {
    display: block;
}

.gc-table td small[b-jbzh0jrj3a] {
    margin-top: 3px;
    color: var(--text-muted);
    font-size: 11px;
}

.gc-doc[b-jbzh0jrj3a] {
    font-weight: 800;
    letter-spacing: .04em;
}

.gc-actions[b-jbzh0jrj3a] {
    display: flex;
    gap: 6px;
}

.gc-alert-pills[b-jbzh0jrj3a] {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.gc-pill[b-jbzh0jrj3a] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
}

.gc-pill--warning[b-jbzh0jrj3a] {
    background: var(--surface);
    color: var(--warning);
}

.gc-pill--info[b-jbzh0jrj3a] {
    background: var(--surface);
    color: var(--p);
}

.gc-pill--action[b-jbzh0jrj3a] {
    min-height: 26px;
    border: 1px solid transparent;
    font: inherit;
    line-height: 1;
    cursor: pointer;
    appearance: none;
    transition:
        transform .15s ease,
        box-shadow .15s ease,
        border-color .15s ease,
        filter .15s ease;
}

.gc-pill--action:hover[b-jbzh0jrj3a] {
    transform: translateY(-1px);
    filter: brightness(.98);
    box-shadow: 0 6px 14px rgba(15, 23, 42, .1);
}

.gc-pill--action:focus-visible[b-jbzh0jrj3a] {
    outline: 3px solid rgba(var(--brand-rgb), .18);
    outline-offset: 2px;
}

.gc-pill--action.gc-pill--warning[b-jbzh0jrj3a] {
    border-color: rgba(245, 158, 11, .22);
}

.gc-pill--action.gc-pill--info[b-jbzh0jrj3a] {
    border-color: rgba(14, 116, 144, .2);
}

.gc-pill-chevron[b-jbzh0jrj3a] {
    margin-left: 1px;
    font-size: 8px;
    opacity: .58;
    transition: transform .15s ease;
}

.gc-pill--action:hover .gc-pill-chevron[b-jbzh0jrj3a] {
    transform: translateX(2px);
}

/* =====================================================================
   VISTA RÁPIDA — CONDICIÓN Y CONTACTO DE EMERGENCIA
   El detalle se consulta únicamente al pulsar el badge.
   ===================================================================== */

.gc-quick-dialog[b-jbzh0jrj3a] {
    width: min(720px, calc(100vw - 32px));
    max-width: 720px;
    max-height: min(760px, calc(100dvh - 32px));
}

.gc-quick-content[b-jbzh0jrj3a] {
    display: flex;
    min-height: 0;
    max-height: min(760px, calc(100dvh - 32px));
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 22px;
    background: var(--surface);
    box-shadow:
        0 30px 80px rgba(15, 23, 42, .24),
        0 8px 28px rgba(15, 23, 42, .12);
}

.gc-quick-dialog .gc-quick-header[b-jbzh0jrj3a] {
    display: flex;
    min-height: 82px;
    flex: 0 0 auto;
    align-items: center;
    gap: 13px;
    padding: 17px 18px 16px 20px;
    border-bottom: 1px solid var(--border);
    background:
        radial-gradient(
            circle at 0 0,
            rgba(var(--brand-rgb), .1),
            transparent 44%
        ),
        var(--surface);
    color: var(--text);
    cursor: default;
}

.gc-quick-header-icon[b-jbzh0jrj3a] {
    display: grid;
    width: 43px;
    height: 43px;
    flex: 0 0 43px;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 13px;
    font-size: 16px;
}

.gc-quick-header-icon--warning[b-jbzh0jrj3a] {
    border-color: rgba(245, 158, 11, .22);
    background: var(--surface);
    color: var(--warning);
}

.gc-quick-header-icon--info[b-jbzh0jrj3a] {
    border-color: rgba(14, 116, 144, .2);
    background: var(--surface);
    color: var(--p);
}

.gc-quick-heading[b-jbzh0jrj3a] {
    min-width: 0;
    flex: 1;
}

.gc-quick-heading .eyebrow[b-jbzh0jrj3a] {
    display: block;
    margin-bottom: 4px;
    color: var(--brand);
    font-size: 9.5px;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.gc-quick-title[b-jbzh0jrj3a] {
    margin: 0;
    color: var(--text);
    font-family: "Sora", sans-serif;
    font-size: clamp(18px, 2vw, 22px);
    font-weight: 800;
    line-height: 1.25;
}

.gc-quick-close[b-jbzh0jrj3a] {
    display: inline-flex;
    width: 37px;
    height: 37px;
    flex: 0 0 37px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--border);
    border-radius: 11px;
    background: var(--surface-2);
    color: var(--text-muted);
}

.gc-quick-close:hover[b-jbzh0jrj3a] {
    border-color: rgba(var(--brand-rgb), .25);
    background: var(--brand-light);
    color: var(--brand);
}

.gc-quick-body[b-jbzh0jrj3a] {
    flex: 1 1 auto;
    min-height: 0;
    padding: 18px 20px 20px;
    overflow-x: hidden;
    overflow-y: auto;
    background:
        linear-gradient(
            180deg,
            color-mix(in srgb, var(--surface-2) 42%, transparent),
            transparent 180px
        ),
        var(--surface);
    overscroll-behavior: contain;
}

.gc-quick-loading[b-jbzh0jrj3a] {
    display: flex;
    min-height: 280px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 8px;
    color: var(--text-muted);
    text-align: center;
}

.gc-quick-loading strong[b-jbzh0jrj3a] {
    color: var(--text);
    font-size: 14px;
}

.gc-quick-loading p[b-jbzh0jrj3a] {
    max-width: 360px;
    margin: 0;
    font-size: 12px;
    line-height: 1.5;
}

.gc-quick-spinner[b-jbzh0jrj3a] {
    display: grid;
    width: 48px;
    height: 48px;
    margin-bottom: 5px;
    place-items: center;
    border-radius: 15px;
    background: var(--brand-light);
    color: var(--brand);
    font-size: 18px;
}

.gc-quick-error[b-jbzh0jrj3a] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 15px;
    border: 1px solid var(--warning);
    border-radius: 14px;
    background: var(--surface);
    color: var(--danger);
}

.gc-quick-error > i[b-jbzh0jrj3a] {
    margin-top: 2px;
}

.gc-quick-error strong[b-jbzh0jrj3a],
.gc-quick-error p[b-jbzh0jrj3a] {
    display: block;
}

.gc-quick-error p[b-jbzh0jrj3a] {
    margin: 4px 0 0;
    font-size: 12px;
    line-height: 1.55;
}

.gc-quick-person[b-jbzh0jrj3a] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 13px;
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--surface);
    box-shadow: var(--shadow-xs);
}

.gc-quick-avatar[b-jbzh0jrj3a] {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 15px;
    background:
        linear-gradient(
            135deg,
            var(--brand),
            color-mix(in srgb, var(--brand) 72%, var(--text))
        );
    color: var(--surface);
    font-family: "Sora", sans-serif;
    font-size: 14px;
    font-weight: 850;
    letter-spacing: .04em;
    box-shadow: 0 9px 20px rgba(var(--brand-rgb), .18);
}

.gc-quick-person-main[b-jbzh0jrj3a] {
    min-width: 0;
}

.gc-quick-person-main strong[b-jbzh0jrj3a] {
    display: block;
    overflow: hidden;
    color: var(--text);
    font-size: 14px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gc-quick-person-main span[b-jbzh0jrj3a],
.gc-quick-person-meta span[b-jbzh0jrj3a] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--text-muted);
    font-size: 11px;
}

.gc-quick-person-main span[b-jbzh0jrj3a] {
    margin-top: 5px;
}

.gc-quick-person-meta[b-jbzh0jrj3a] {
    display: grid;
    justify-items: end;
    gap: 7px;
}

.gc-quick-switch[b-jbzh0jrj3a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin-top: 14px;
    padding: 5px;
    border: 1px solid var(--border);
    border-radius: 13px;
    background: var(--surface-2);
}

.gc-quick-switch button[b-jbzh0jrj3a] {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 12px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    color: var(--text-muted);
    font: inherit;
    font-size: 12px;
    font-weight: 750;
    cursor: pointer;
}

.gc-quick-switch button:hover[b-jbzh0jrj3a] {
    color: var(--text);
}

.gc-quick-switch button.active[b-jbzh0jrj3a] {
    border-color: var(--border);
    background: var(--surface);
    box-shadow: var(--shadow-sm);
}

.gc-quick-switch button.active.warning[b-jbzh0jrj3a] {
    color: var(--warning);
}

.gc-quick-switch button.active.info[b-jbzh0jrj3a] {
    color: var(--p);
}

.gc-quick-card[b-jbzh0jrj3a] {
    margin-top: 14px;
    padding: 17px;
    border: 1px solid var(--border);
    border-radius: 17px;
    background: var(--surface);
    box-shadow: var(--shadow-xs);
}

.gc-quick-card--warning[b-jbzh0jrj3a] {
    border-color: rgba(245, 158, 11, .23);
    background:
        linear-gradient(
            180deg,
            rgba(255, 247, 230, .62),
            var(--surface) 132px
        );
}

.gc-quick-card--info[b-jbzh0jrj3a] {
    border-color: rgba(14, 116, 144, .2);
    background:
        linear-gradient(
            180deg,
            rgba(236, 254, 255, .58),
            var(--surface) 132px
        );
}

.gc-quick-card-head[b-jbzh0jrj3a] {
    display: flex;
    align-items: center;
    gap: 11px;
}

.gc-quick-card-icon[b-jbzh0jrj3a] {
    display: grid;
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    place-items: center;
    border-radius: 12px;
    background: var(--surface);
    color: var(--brand);
    box-shadow: var(--shadow-xs);
}

.gc-quick-card-head > div[b-jbzh0jrj3a] {
    min-width: 0;
    flex: 1;
}

.gc-quick-card-head div > span[b-jbzh0jrj3a] {
    display: block;
    color: var(--text-muted);
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.gc-quick-card-head h3[b-jbzh0jrj3a] {
    margin: 3px 0 0;
    overflow: hidden;
    color: var(--text);
    font-size: 14px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gc-quick-relation[b-jbzh0jrj3a] {
    display: inline-flex;
    min-height: 25px;
    align-items: center;
    padding: 3px 9px;
    border: 1px solid rgba(14, 116, 144, .18);
    border-radius: 999px;
    background: var(--surface);
    color: var(--p);
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.gc-quick-observation[b-jbzh0jrj3a] {
    margin: 15px 0 0;
    padding: 14px 15px;
    border: 1px solid rgba(245, 158, 11, .18);
    border-radius: 13px;
    background: var(--surface);
    color: var(--text-2);
    font-size: 13px;
    line-height: 1.65;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.gc-quick-grid[b-jbzh0jrj3a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 15px 0 0;
}

.gc-quick-grid > div[b-jbzh0jrj3a] {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
}

.gc-quick-grid .gc-quick-grid--full[b-jbzh0jrj3a] {
    grid-column: 1 / -1;
}

.gc-quick-grid dt[b-jbzh0jrj3a] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    color: var(--text-muted);
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.gc-quick-grid dd[b-jbzh0jrj3a] {
    margin: 6px 0 0;
    color: var(--text);
    font-size: 12.5px;
    font-weight: 650;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.gc-quick-empty[b-jbzh0jrj3a] {
    display: flex;
    min-height: 110px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 8px;
    margin-top: 14px;
    padding: 18px;
    border: 1px dashed var(--border);
    border-radius: 13px;
    color: var(--text-muted);
    font-size: 12px;
    text-align: center;
}

.gc-quick-empty i[b-jbzh0jrj3a] {
    font-size: 21px;
    opacity: .72;
}

.gc-quick-footer[b-jbzh0jrj3a] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 13px 18px 15px;
    border-top: 1px solid var(--border);
    background: var(--surface);
}

.gc-quick-footer > span[b-jbzh0jrj3a] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--text-muted);
    font-size: 10.5px;
}

.gc-quick-footer .btn[b-jbzh0jrj3a] {
    min-width: 100px;
}

[data-theme="dark"] .gc-quick-header-icon--warning[b-jbzh0jrj3a],
[data-theme="dark"] .gc-quick-card--warning[b-jbzh0jrj3a] {
    background: rgba(245, 158, 11, .08);
}

[data-theme="dark"] .gc-quick-header-icon--info[b-jbzh0jrj3a],
[data-theme="dark"] .gc-quick-card--info[b-jbzh0jrj3a],
[data-theme="dark"] .gc-quick-relation[b-jbzh0jrj3a] {
    background: rgba(14, 116, 144, .1);
}

[data-theme="dark"] .gc-quick-error[b-jbzh0jrj3a] {
    border-color: rgba(244, 63, 94, .24);
    background: rgba(244, 63, 94, .09);
    color: var(--warning);
}

@media (max-width: 640px) {
    .gc-quick-dialog[b-jbzh0jrj3a] {
        width: calc(100vw - 18px);
        max-height: calc(100dvh - 18px);
        margin: 0;
    }

    .gc-quick-content[b-jbzh0jrj3a] {
        max-height: calc(100dvh - 18px);
        border-radius: 18px;
    }

    .gc-quick-dialog .gc-quick-header[b-jbzh0jrj3a] {
        min-height: 72px;
        padding: 13px 12px 12px 14px;
    }

    .gc-quick-header-icon[b-jbzh0jrj3a] {
        width: 39px;
        height: 39px;
        flex-basis: 39px;
    }

    .gc-quick-body[b-jbzh0jrj3a] {
        padding: 14px 13px 16px;
    }

    .gc-quick-person[b-jbzh0jrj3a] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .gc-quick-person-meta[b-jbzh0jrj3a] {
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        justify-items: start;
        width: 100%;
        padding-top: 10px;
        border-top: 1px solid var(--border);
    }

    .gc-quick-grid[b-jbzh0jrj3a] {
        grid-template-columns: 1fr;
    }

    .gc-quick-grid .gc-quick-grid--full[b-jbzh0jrj3a] {
        grid-column: auto;
    }

    .gc-quick-card-head[b-jbzh0jrj3a] {
        align-items: flex-start;
    }

    .gc-quick-relation[b-jbzh0jrj3a] {
        margin-left: auto;
    }
}

@media (max-width: 420px) {
    .gc-quick-switch[b-jbzh0jrj3a] {
        grid-template-columns: 1fr;
    }

    .gc-quick-footer[b-jbzh0jrj3a] {
        align-items: stretch;
        flex-direction: column;
    }

    .gc-quick-footer .btn[b-jbzh0jrj3a] {
        width: 100%;
    }
}

/* =====================================================================
   MODAL PREMIUM
   Se respetan gxModal, data-popup-panel y data-popup-header.
   ===================================================================== */

.gc-dialog[b-jbzh0jrj3a] {
    width: min(1080px, calc(100vw - 40px));
    max-width: 1080px;
    max-height: calc(100dvh - 32px);
}

.gc-confirm-dialog[b-jbzh0jrj3a] {
    width: min(480px, calc(100vw - 32px));
}

.gc-modal-content[b-jbzh0jrj3a] {
    max-height: calc(100dvh - 32px);
    border: 1px solid var(--border);
    border-radius: var(--r-xl);
    background: var(--surface);
    box-shadow: var(--shadow-lg);
}

/* Sobrescribe cualquier regla heredada que pinte el encabezado de negro. */
.gc-dialog .gc-modal-header[b-jbzh0jrj3a] {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    min-height: 76px;
    padding: 16px 18px 14px 20px;
    border-bottom: 1px solid var(--border);
    background:
        linear-gradient(
            135deg,
            rgba(var(--brand-rgb), .075),
            transparent 58%
        ),
        var(--surface);
    color: var(--text);
    cursor: move;
}

.gc-modal-heading[b-jbzh0jrj3a] {
    min-width: 0;
    flex: 1;
}

.gc-modal-heading .eyebrow[b-jbzh0jrj3a] {
    display: block;
    margin-bottom: 4px;
    color: var(--brand);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.gc-dialog .gc-modal-title[b-jbzh0jrj3a] {
    margin: 0;
    color: var(--text);
    font-family: "Sora", sans-serif;
    font-size: clamp(17px, 2vw, 21px);
    font-weight: 800;
    line-height: 1.2;
}

/* El botón cerrar pertenece al encabezado, no debe quedar en flujo vertical. */
.gc-modal-close[b-jbzh0jrj3a] {
    order: 3;
    display: inline-flex;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface-2);
    color: var(--text-muted);
}

.gc-modal-close:hover[b-jbzh0jrj3a] {
    border-color: rgba(var(--brand-rgb), .28);
    background: var(--brand-light);
    color: var(--brand);
}

/* El botón maximizar es inyectado por shell.js y no recibe atributo b-*.
   ::deep es obligatorio para alcanzarlo desde CSS isolation. */
.gc-dialog[b-jbzh0jrj3a]  .popup-toolbar-btn {
    order: 2;
    display: inline-flex;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    align-items: center;
    justify-content: center;
    margin: 0;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface-2);
    color: var(--text-muted);
    font-size: 14px;
}

.gc-dialog[b-jbzh0jrj3a]  .popup-toolbar-btn:hover {
    border-color: rgba(var(--brand-rgb), .28);
    background: var(--brand-light);
    color: var(--brand);
}

.gc-modal-body[b-jbzh0jrj3a] {
    flex: 1 1 auto;
    min-height: 0;
    max-height: none;
    padding: 18px 20px 20px;
    overflow-x: hidden;
    overflow-y: auto;
    background: var(--surface);
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.gc-modal-footer[b-jbzh0jrj3a] {
    padding: 14px 20px 16px;
    border-top: 1px solid var(--border);
    background: var(--surface);
    box-shadow: 0 -8px 24px rgba(15, 23, 42, .035);
}

.gc-dialog .gc-modal-footer .btn[b-jbzh0jrj3a] {
    min-height: 40px;
    padding-inline: 18px;
    border-radius: 11px;
    font-weight: 750;
}

.gc-dialog .gc-modal-footer .btn-primary[b-jbzh0jrj3a] {
    border-color: var(--brand);
    background: var(--brand);
    color: var(--surface);
    box-shadow: 0 7px 18px rgba(var(--brand-rgb), .18);
}

.gc-dialog .gc-modal-footer .btn-primary:hover[b-jbzh0jrj3a] {
    filter: brightness(1.06);
    transform: translateY(-1px);
}

.gc-dialog .gc-modal-footer .btn-light[b-jbzh0jrj3a] {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text-2);
}

/* Auditoría */
.gc-audit[b-jbzh0jrj3a] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
    margin: 0 0 14px;
    padding: 11px 13px;
    border: 1px solid var(--border);
    border-radius: 11px;
    background: var(--surface-2);
    color: var(--text-muted);
    font-size: 11.5px;
}

.gc-audit i[b-jbzh0jrj3a] {
    color: var(--brand);
}

/* Pestañas */
.gc-tabs[b-jbzh0jrj3a] {
    position: sticky;
    z-index: 4;
    top: -18px;
    display: flex;
    gap: 7px;
    margin: 0 -4px;
    padding: 12px 4px;
    border-bottom: 1px solid var(--border);
    background: color-mix(in srgb, var(--surface) 94%, transparent);
    backdrop-filter: blur(10px);
}

.gc-tabs button[b-jbzh0jrj3a] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 38px;
    padding: 0 13px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    color: var(--text-muted);
    font-weight: 750;
    cursor: pointer;
    white-space: nowrap;
}

.gc-tabs button:hover[b-jbzh0jrj3a] {
    border-color: var(--border);
    background: var(--surface-2);
    color: var(--text);
}

.gc-tabs button.active[b-jbzh0jrj3a] {
    border-color: rgba(var(--brand-rgb), .16);
    background: var(--brand-light);
    color: var(--brand);
}

/* Secciones */
.gc-section[b-jbzh0jrj3a] {
    margin-top: 18px;
    padding: 20px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--surface);
    box-shadow: var(--shadow-xs);
}

.gc-section-head[b-jbzh0jrj3a] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.gc-section-head span[b-jbzh0jrj3a] {
    display: block;
    color: var(--brand);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.gc-section-head h3[b-jbzh0jrj3a] {
    margin: 4px 0 0;
    color: var(--text);
    font-size: 17px;
    font-weight: 800;
}

.gc-section-head > i[b-jbzh0jrj3a] {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: var(--surface);
    color: var(--warning);
}

.gc-help[b-jbzh0jrj3a] {
    margin: -5px 0 16px;
    color: var(--text-muted);
    font-size: 12px;
    line-height: 1.55;
}

.gc-form-grid[b-jbzh0jrj3a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
}

.gc-form-grid--3[b-jbzh0jrj3a] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* =====================================================================
   CAMPOS GENERADOS POR RenderTreeBuilder
   Esos nodos no reciben b-xxxx. Todas las reglas deben anclarse a un
   elemento literal que sí tenga el scope: .gc-modal-body.
   ===================================================================== */

.gc-modal-body[b-jbzh0jrj3a]  .gc-field {
    min-width: 0;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field--span-2 {
    grid-column: span 2;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field--span-3 {
    grid-column: span 3;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field label {
    display: block;
    margin-bottom: 6px;
    color: var(--text);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.3;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field input,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field select,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field textarea,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .form-control,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .ssel-trigger {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: 43px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 11px;
    background: var(--surface);
    color: var(--text);
    font: inherit;
    font-size: 13px;
    outline: none;
    box-shadow: none;
    transition:
        border-color .15s ease,
        box-shadow .15s ease,
        background-color .15s ease;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field select {
    padding-right: 34px;
    cursor: pointer;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field textarea {
    min-height: 96px;
    padding: 11px 12px;
    line-height: 1.5;
    resize: vertical;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field input::placeholder,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field textarea::placeholder,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .ssel-trigger-text.placeholder {
    color: var(--text-muted);
    opacity: .78;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field input:focus,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field select:focus,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field textarea:focus,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .form-control:focus,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .ssel-trigger:focus {
    border-color: var(--brand);
    background: var(--surface);
    box-shadow: 0 0 0 3px rgba(var(--brand-rgb), .12);
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field input:disabled,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field select:disabled,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field textarea:disabled {
    background: var(--surface-2);
    color: var(--text-muted);
    cursor: not-allowed;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field small {
    display: block;
    margin-top: 5px;
    color: var(--text-muted);
    font-size: 10px;
    text-align: right;
}

/* Documento / RUC con botón de búsqueda */
.gc-modal-body[b-jbzh0jrj3a]  .gc-field--lookup > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 43px;
    gap: 8px;
    align-items: stretch;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field--lookup button {
    display: inline-flex;
    width: 43px;
    min-width: 43px;
    min-height: 43px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--brand);
    border-radius: 11px;
    background: var(--brand);
    color: var(--surface);
    cursor: pointer;
    box-shadow: 0 6px 14px rgba(var(--brand-rgb), .16);
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field--lookup button:hover {
    filter: brightness(1.07);
    transform: translateY(-1px);
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field--lookup button:disabled {
    opacity: .55;
    cursor: not-allowed;
    transform: none;
}

/* SearchableSelect */
.gc-modal-body[b-jbzh0jrj3a]  .ssel,
.gc-modal-body[b-jbzh0jrj3a]  .ssel-trigger {
    width: 100%;
}

.gc-modal-body[b-jbzh0jrj3a]  .ssel {
    position: relative;
}

.gc-modal-body[b-jbzh0jrj3a]  .ssel-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 7px 11px;
    text-align: left;
}

.gc-modal-body[b-jbzh0jrj3a]  .ssel-panel {
    z-index: 250500;
    min-width: 300px;
    max-width: min(460px, calc(100vw - 40px));
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
    box-shadow: var(--shadow-lg);
}

/* Emergencia y condición */
.gc-emergency[b-jbzh0jrj3a] {
    border-color: rgba(14, 116, 144, .22);
    background:
        linear-gradient(180deg, var(--surface), rgba(236, 254, 255, .34));
}

.gc-special[b-jbzh0jrj3a] {
    border-color: rgba(245, 158, 11, .28);
    background:
        linear-gradient(180deg, var(--surface), rgba(255, 247, 230, .5));
}

/* Tema oscuro */
[data-theme="dark"] .gc-dialog .gc-modal-header[b-jbzh0jrj3a] {
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .035),
            transparent 58%
        ),
        var(--surface);
}

[data-theme="dark"] .gc-alert--success[b-jbzh0jrj3a] {
    border-color: rgba(16, 185, 129, .25);
    background: rgba(16, 185, 129, .1);
    color: var(--success);
}

[data-theme="dark"] .gc-alert--danger[b-jbzh0jrj3a] {
    border-color: rgba(244, 63, 94, .26);
    background: rgba(244, 63, 94, .1);
    color: var(--warning);
}

/* Responsive */
@media (max-width: 1100px) {
    .gc-dialog[b-jbzh0jrj3a] {
        width: min(980px, calc(100vw - 28px));
    }
}

@media (max-width: 980px) {
    .gc-toolbar[b-jbzh0jrj3a] {
        grid-template-columns: 1fr;
    }

    .gc-form-grid--3[b-jbzh0jrj3a] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gc-modal-body[b-jbzh0jrj3a]  .gc-field--span-3 {
        grid-column: span 2;
    }
}

@media (max-width: 720px) {
    .gc-page-head[b-jbzh0jrj3a] {
        align-items: stretch;
        flex-direction: column;
    }

    .gc-new[b-jbzh0jrj3a] {
        width: 100%;
    }

    .gc-dialog[b-jbzh0jrj3a] {
        width: 100%;
        max-width: 100%;
        max-height: calc(100dvh - 18px);
        margin: 0;
    }

    .gc-modal-content[b-jbzh0jrj3a] {
        max-height: calc(100dvh - 18px);
        border-radius: 18px;
    }

    .gc-dialog .gc-modal-header[b-jbzh0jrj3a] {
        min-height: 68px;
        padding: 13px 12px 12px 15px;
    }

    .gc-modal-body[b-jbzh0jrj3a] {
        padding: 14px 13px 16px;
    }

    .gc-modal-footer[b-jbzh0jrj3a] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        padding: 12px 13px 14px;
    }

    .gc-tabs[b-jbzh0jrj3a] {
        top: -14px;
        overflow-x: auto;
        padding: 10px 2px;
        scrollbar-width: none;
    }

    .gc-tabs[b-jbzh0jrj3a]::-webkit-scrollbar {
        display: none;
    }

    .gc-form-grid[b-jbzh0jrj3a],
    .gc-form-grid--3[b-jbzh0jrj3a] {
        grid-template-columns: 1fr;
    }

    .gc-modal-body[b-jbzh0jrj3a]  .gc-field--span-2,
    .gc-modal-body[b-jbzh0jrj3a]  .gc-field--span-3 {
        grid-column: span 1;
    }

    .gc-section[b-jbzh0jrj3a] {
        padding: 15px;
    }
}

@media (max-width: 480px) {
    .gc-dialog .gc-modal-title[b-jbzh0jrj3a] {
        font-size: 17px;
    }

    .gc-dialog[b-jbzh0jrj3a]  .popup-toolbar-btn,
    .gc-modal-close[b-jbzh0jrj3a] {
        width: 34px;
        height: 34px;
        flex-basis: 34px;
    }

    .gc-modal-footer[b-jbzh0jrj3a] {
        grid-template-columns: 1fr;
    }

    .gc-modal-footer .btn-primary[b-jbzh0jrj3a] {
        order: 1;
    }

    .gc-modal-footer .btn-light[b-jbzh0jrj3a] {
        order: 2;
    }
}

/* =====================================================================
   NORMALIZACIÓN FINAL CON EL ESTÁNDAR GLOBAL DEL TEMPLATE
   shell.css define:
     .form-control, .form-select, .btn { height: 40px; }
   Esta sección evita que controles nativos o estilos del navegador
   cambien la altura y conserva el mismo ritmo visual en todo el formulario.
   ===================================================================== */

.gc-modal-body[b-jbzh0jrj3a] {
    --gc-control-height: 40px;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field .form-control,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .form-select,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field input.form-control,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field select.form-select,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .ssel-trigger.form-control {
    box-sizing: border-box;
    width: 100%;
    height: var(--gc-control-height);
    min-height: var(--gc-control-height);
    margin: 0;
    padding: 0 12px;
    border: 1.5px solid var(--border);
    border-radius: var(--r-md);
    background-color: var(--surface);
    color: var(--text);
    font-family: "DM Sans", sans-serif;
    font-size: 13.5px;
    line-height: normal;
    vertical-align: middle;
    box-shadow: none;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field select.form-select {
    padding-right: 34px;
    appearance: auto;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field input[type="date"].form-control {
    padding-right: 10px;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field .form-control:focus,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .form-select:focus,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field .ssel-trigger.form-control:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 3px var(--brand-glow-hover);
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-textarea.form-control {
    height: auto;
    min-height: 96px;
    padding: 11px 12px;
    line-height: 1.5;
    resize: vertical;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-textarea--special.form-control {
    min-height: 118px;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field--lookup > div {
    grid-template-columns: minmax(0, 1fr) var(--gc-control-height);
    gap: 8px;
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-lookup-button.btn {
    box-sizing: border-box;
    width: var(--gc-control-height);
    min-width: var(--gc-control-height);
    height: var(--gc-control-height);
    min-height: var(--gc-control-height);
    padding: 0;
    border-radius: var(--r-md);
}

.gc-modal-body[b-jbzh0jrj3a]  .gc-field > .form-label,
.gc-modal-body[b-jbzh0jrj3a]  .gc-field label.form-label {
    display: block;
    min-height: 16px;
    margin: 0 0 5px;
    color: var(--text-2);
    font-size: 12px;
    font-weight: 600;
    line-height: 16px;
    letter-spacing: .3px;
}

/* El trigger de SearchableSelect ya usa form-control. Se neutralizan
   reglas internas que pudieran alterar su altura. */
.gc-modal-body[b-jbzh0jrj3a]  .ssel-trigger.form-control {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

/* =====================================================================
   SEMÁFORO COMERCIAL DE CLIENTES
   Recupera el comportamiento del formulario WebForms original:
   T = TOP (ámbar), C = CLIENTE (turquesa), F = REGULAR (gris).
   ===================================================================== */

.gc-client-cell[b-jbzh0jrj3a] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.gc-client-cell > strong[b-jbzh0jrj3a] {
    max-width: 100%;
    overflow: hidden;
    color: var(--text);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gc-category-chip[b-jbzh0jrj3a] {
    --gc-category-color: var(--text-muted);
    --gc-category-bg: var(--surface-2);
    --gc-category-border: var(--border);

    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 24px;
    padding: 3px 9px;
    border: 1px solid var(--gc-category-border);
    border-radius: var(--r-full);
    background: var(--gc-category-bg);
    color: var(--gc-category-color);
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .055em;
    text-transform: uppercase;
    white-space: nowrap;
}

.gc-category-dot[b-jbzh0jrj3a] {
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: var(--gc-category-color);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--gc-category-color) 15%, transparent);
}

.gc-category-chip--top[b-jbzh0jrj3a] {
    --gc-category-color: var(--warning);
    --gc-category-bg: var(--warning-bg);
    --gc-category-border: rgba(var(--warning-rgb), .28);
}

.gc-category-chip--client[b-jbzh0jrj3a] {
    --gc-category-color: var(--success);
    --gc-category-bg: var(--success-bg);
    --gc-category-border: rgba(var(--success-rgb), .25);
}

.gc-category-chip--regular[b-jbzh0jrj3a],
.gc-category-chip--undefined[b-jbzh0jrj3a] {
    --gc-category-color: var(--text-muted);
    --gc-category-bg: var(--surface-2);
    --gc-category-border: var(--border);
}

/* Acento de fila: la barra vive solo en el primer td, nunca en todos. */
.gc-table tbody tr.gc-row--top > td[b-jbzh0jrj3a] {
    background: rgba(var(--warning-rgb), .045);
}

.gc-table tbody tr.gc-row--client > td[b-jbzh0jrj3a] {
    background: rgba(var(--success-rgb), .04);
}

.gc-table tbody tr.gc-row--regular > td[b-jbzh0jrj3a] {
    background: rgba(100, 116, 139, .035);
}

.gc-table tbody tr.gc-row--top > td:first-child[b-jbzh0jrj3a],
.gc-table tbody tr.gc-row--client > td:first-child[b-jbzh0jrj3a],
.gc-table tbody tr.gc-row--regular > td:first-child[b-jbzh0jrj3a] {
    position: relative;
}

.gc-table tbody tr.gc-row--top > td:first-child[b-jbzh0jrj3a] {
    box-shadow: inset 4px 0 0 var(--warning);
}

.gc-table tbody tr.gc-row--client > td:first-child[b-jbzh0jrj3a] {
    box-shadow: inset 4px 0 0 var(--success);
}

.gc-table tbody tr.gc-row--regular > td:first-child[b-jbzh0jrj3a] {
    box-shadow: inset 4px 0 0 var(--p);
}

.gc-table tbody tr.gc-row--top:hover > td[b-jbzh0jrj3a] {
    background: rgba(var(--warning-rgb), .085);
}

.gc-table tbody tr.gc-row--client:hover > td[b-jbzh0jrj3a] {
    background: rgba(var(--success-rgb), .075);
}

.gc-table tbody tr.gc-row--regular:hover > td[b-jbzh0jrj3a] {
    background: rgba(100, 116, 139, .065);
}

[data-theme="dark"] .gc-table tbody tr.gc-row--top > td[b-jbzh0jrj3a] {
    background: rgba(var(--warning-rgb), .055);
}

[data-theme="dark"] .gc-table tbody tr.gc-row--client > td[b-jbzh0jrj3a] {
    background: rgba(var(--success-rgb), .05);
}

[data-theme="dark"] .gc-table tbody tr.gc-row--regular > td[b-jbzh0jrj3a] {
    background: rgba(148, 163, 184, .035);
}

@media (max-width: 720px) {
    .gc-category-chip[b-jbzh0jrj3a] {
        min-height: 22px;
        padding-inline: 8px;
        font-size: 9.5px;
    }
}

/* =====================================================================
   PUENTE DE SCROLL PARA EditForm
   El shell define el scroll en .gxModal__body, pero EditForm genera un
   <form> intermedio. Ese form debe continuar la cadena flex del modal.
   ===================================================================== */

.gc-dialog[b-jbzh0jrj3a] {
    min-height: 0;
    overflow: hidden;
}

.gc-modal-content[b-jbzh0jrj3a] {
    display: flex;
    min-height: 0;
    overflow: hidden;
}

/* EditForm renderiza este nodo como <form class="gc-modal-form">. */
.gc-modal-content[b-jbzh0jrj3a]  form.gc-modal-form {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    flex-direction: column;
    overflow: hidden;
}

/* Header y footer nunca deben encogerse. */
.gc-dialog .gc-modal-header[b-jbzh0jrj3a],
.gc-dialog .gc-modal-footer[b-jbzh0jrj3a] {
    flex: 0 0 auto;
}

/* Única zona desplazable del popup. */
.gc-dialog .gc-modal-body[b-jbzh0jrj3a] {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    touch-action: pan-y;
}

/* Si shell.js maximiza o asigna una altura inline al panel,
   toda la cadena interna ocupa esa altura y conserva el scroll. */
.gc-dialog[style*="height"] .gc-modal-content[b-jbzh0jrj3a],
.gc-dialog.is-maximized .gc-modal-content[b-jbzh0jrj3a],
.gc-dialog.popup-maximized .gc-modal-content[b-jbzh0jrj3a] {
    height: 100%;
    max-height: 100%;
}

.gc-dialog[style*="height"][b-jbzh0jrj3a]  form.gc-modal-form,
.gc-dialog.is-maximized[b-jbzh0jrj3a]  form.gc-modal-form,
.gc-dialog.popup-maximized[b-jbzh0jrj3a]  form.gc-modal-form {
    height: 100%;
}

/* Barra discreta, coherente con el shell. */
.gc-dialog .gc-modal-body[b-jbzh0jrj3a]::-webkit-scrollbar {
    width: 9px;
}

.gc-dialog .gc-modal-body[b-jbzh0jrj3a]::-webkit-scrollbar-track {
    background: transparent;
}

.gc-dialog .gc-modal-body[b-jbzh0jrj3a]::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 999px;
    background: color-mix(in srgb, var(--text-muted) 38%, transparent);
    background-clip: padding-box;
}

.gc-dialog .gc-modal-body[b-jbzh0jrj3a]::-webkit-scrollbar-thumb:hover {
    background: color-mix(in srgb, var(--text-muted) 58%, transparent);
    background-clip: padding-box;
}

/* Los filtros de mantenedores y fecha conservan la altura compacta de la grilla. */
.core-column-filters[b-jbzh0jrj3a]  .ssel-trigger,
.core-column-filters .core-column-filter[type="date"][b-jbzh0jrj3a] {
    box-sizing: border-box;
    width: 100%;
    min-width: 128px;
    height: 36px;
    min-height: 36px;
    font-size: 12px;
}

/* Pages/ReporteMarcacionAsistencia.razor.css */
:host[b-5rhh9hmmmg]{display:block}.module-page[b-5rhh9hmmmg]{display:grid;gap:16px}.module-hero[b-5rhh9hmmmg],.module-card[b-5rhh9hmmmg]{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm)}.module-hero[b-5rhh9hmmmg]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.module-eyebrow[b-5rhh9hmmmg]{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.module-hero h1[b-5rhh9hmmmg]{margin:5px 0;font-size:clamp(25px,2vw,34px)}.module-hero p[b-5rhh9hmmmg]{margin:0;color:var(--text-muted)}.module-actions[b-5rhh9hmmmg]{display:flex;gap:8px;flex-wrap:wrap}.module-card[b-5rhh9hmmmg]{padding:16px}.module-toolbar[b-5rhh9hmmmg]{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.module-field[b-5rhh9hmmmg]{display:grid;gap:5px;min-width:180px;flex:1}.module-field label[b-5rhh9hmmmg]{font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.module-search[b-5rhh9hmmmg]{min-width:260px}.module-table-wrap[b-5rhh9hmmmg]{overflow:auto}.module-table[b-5rhh9hmmmg]{width:100%;min-width:850px;border-collapse:collapse}.module-table th[b-5rhh9hmmmg],.module-table td[b-5rhh9hmmmg]{padding:11px;border-bottom:1px solid var(--border);vertical-align:middle}.module-table th[b-5rhh9hmmmg]{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.module-table td small[b-5rhh9hmmmg]{display:block;color:var(--text-muted)}.module-table .num[b-5rhh9hmmmg]{text-align:right}.module-empty[b-5rhh9hmmmg]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--text-muted)}.module-empty i[b-5rhh9hmmmg]{font-size:26px}.module-summary[b-5rhh9hmmmg]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.module-summary article[b-5rhh9hmmmg]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.module-summary small[b-5rhh9hmmmg]{display:block;color:var(--text-muted)}.module-summary strong[b-5rhh9hmmmg]{font-size:22px}.module-modal[b-5rhh9hmmmg]{width:min(980px,calc(100vw - 24px));max-height:calc(100vh - 28px);overflow:auto}.module-modal-sm[b-5rhh9hmmmg]{width:min(560px,calc(100vw - 24px))}.module-form[b-5rhh9hmmmg]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.module-form .span-2[b-5rhh9hmmmg]{grid-column:span 2}.module-form .span-3[b-5rhh9hmmmg]{grid-column:span 3}.module-form label[b-5rhh9hmmmg]{display:block;margin-bottom:5px;font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.status-pill[b-5rhh9hmmmg]{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:900;text-transform:uppercase}.status-pill.ok[b-5rhh9hmmmg]{background:rgba(16,185,129,.14);color:var(--success)}.status-pill.bad[b-5rhh9hmmmg]{background:rgba(225,29,72,.12);color:var(--danger)}.status-pill.warn[b-5rhh9hmmmg]{background:rgba(245,158,11,.16);color:var(--danger)}@media(max-width:780px){.module-hero[b-5rhh9hmmmg]{padding:17px;display:grid}.module-actions .btn[b-5rhh9hmmmg]{flex:1}.module-summary[b-5rhh9hmmmg]{grid-template-columns:repeat(2,1fr)}.module-form[b-5rhh9hmmmg]{grid-template-columns:1fr}.module-form .span-2[b-5rhh9hmmmg],.module-form .span-3[b-5rhh9hmmmg]{grid-column:auto}.module-toolbar[b-5rhh9hmmmg]{display:grid}.module-field[b-5rhh9hmmmg],.module-search[b-5rhh9hmmmg]{min-width:0}}
.module-table tfoot th[b-5rhh9hmmmg]{background:var(--surface-2)}

/* Pages/Dashboard.razor.css */
:host[b-cna72kwz2p]{display:block}.dash-page[b-cna72kwz2p]{display:grid;gap:18px;min-width:0}.dash-head[b-cna72kwz2p]{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.dash-head p[b-cna72kwz2p]{margin:6px 0 0;color:var(--text-muted);font-size:12px}.dash-refresh[b-cna72kwz2p]{white-space:nowrap}.dash-loading[b-cna72kwz2p],.dash-tab-loading[b-cna72kwz2p]{min-height:320px;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--text-muted)}.dash-tab-loading[b-cna72kwz2p]{min-height:220px;border:1px dashed var(--border);border-radius:18px;background:var(--surface)}.dash-loading i[b-cna72kwz2p],.dash-tab-loading i[b-cna72kwz2p]{font-size:30px;color:var(--brand)}.dash-notice[b-cna72kwz2p]{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.dash-notice>i[b-cna72kwz2p]{font-size:24px}.dash-notice>div[b-cna72kwz2p]{display:grid;gap:2px;flex:1}.dash-notice span[b-cna72kwz2p]{color:var(--text-muted)}.dash-notice--danger[b-cna72kwz2p]{border-color:rgba(239,68,68,.25);background:rgba(239,68,68,.07);color:var(--danger)}.dash-tabs[b-cna72kwz2p]{display:flex;gap:6px;padding:5px;border:1px solid var(--border);border-radius:15px;background:var(--surface);overflow-x:auto;scrollbar-width:thin}.dash-tabs button[b-cna72kwz2p]{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border:0;border-radius:11px;background:transparent;color:var(--text-muted);font-weight:800;white-space:nowrap;transition:.2s ease}.dash-tabs button:hover[b-cna72kwz2p]{background:var(--surface-2);color:var(--text)}.dash-tabs button.active[b-cna72kwz2p]{background:var(--brand);color:var(--surface);box-shadow:0 8px 20px rgba(var(--brand-rgb),.22)}.dash-kpis[b-cna72kwz2p]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dash-kpis article[b-cna72kwz2p],.dash-card[b-cna72kwz2p]{border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.dash-kpis article[b-cna72kwz2p]{position:relative;padding:18px;overflow:hidden;min-height:164px}.dash-kpis small[b-cna72kwz2p]{display:block;margin-top:14px;color:var(--text-muted);font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.4px}.dash-kpis strong[b-cna72kwz2p]{display:block;margin:4px 0 8px;font-family:'Sora',sans-serif;font-size:clamp(20px,2vw,27px);line-height:1.15}.ico[b-cna72kwz2p]{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:rgba(var(--brand-rgb),.12);color:var(--brand)}.ico.success[b-cna72kwz2p]{background:rgba(1,184,26,.1);color:var(--success)}.ico.blue[b-cna72kwz2p]{background:rgba(55,138,221,.12);color:var(--p)}.ico.warning[b-cna72kwz2p]{background:rgba(250,139,12,.12);color:var(--warning)}.ico.danger[b-cna72kwz2p]{background:rgba(239,68,68,.11);color:var(--danger)}.delta[b-cna72kwz2p]{font-size:10px;font-weight:900}.delta.up[b-cna72kwz2p]{color:var(--success)}.delta.down[b-cna72kwz2p]{color:var(--danger)}.delta.neutral[b-cna72kwz2p]{color:var(--text-muted)}.dash-grid[b-cna72kwz2p]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.dash-card[b-cna72kwz2p]{padding:18px;min-width:0;overflow:hidden}.dash-card--wide[b-cna72kwz2p]{grid-column:span 2}.dash-card--full[b-cna72kwz2p]{grid-column:1/-1}.dash-card>header[b-cna72kwz2p]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.dash-card header span[b-cna72kwz2p]{color:var(--brand);font-size:10px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}.dash-card h2[b-cna72kwz2p]{margin:4px 0 0;font-size:16px}.dash-card header b[b-cna72kwz2p]{white-space:nowrap;font-size:12px;color:var(--text-muted)}.dash-empty[b-cna72kwz2p]{padding:28px;text-align:center;color:var(--text-muted)}.metric-list[b-cna72kwz2p]{display:grid;gap:11px}.metric-list article[b-cna72kwz2p]{display:grid;grid-template-columns:minmax(90px,1fr) minmax(80px,1.4fr) auto;align-items:center;gap:10px;font-size:11px}.metric-list article>span[b-cna72kwz2p]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted)}.metric-list article>div[b-cna72kwz2p],.payment-track[b-cna72kwz2p],.amount-track[b-cna72kwz2p],.attempt-list article>div[b-cna72kwz2p]{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}.metric-list article>div i[b-cna72kwz2p],.payment-track i[b-cna72kwz2p],.amount-track i[b-cna72kwz2p],.attempt-list article>div i[b-cna72kwz2p]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--warning))}.metric-list b[b-cna72kwz2p]{font-size:11px;text-align:right}.column-chart[b-cna72kwz2p]{display:flex;align-items:stretch;gap:7px;height:240px;overflow-x:auto;padding:10px 4px 0}.column-item[b-cna72kwz2p]{display:grid;grid-template-rows:24px minmax(120px,1fr) 24px;align-items:end;justify-items:center;min-width:28px;flex:1}.column-item>span[b-cna72kwz2p]{font-size:8px;font-weight:800;color:var(--text-muted);white-space:nowrap;transform:rotate(-35deg);transform-origin:center}.column-item>div[b-cna72kwz2p]{width:100%;height:100%;display:flex;align-items:flex-end;border-radius:8px;background:linear-gradient(180deg,transparent,var(--surface-2));overflow:hidden}.column-item>div i[b-cna72kwz2p]{display:block;width:100%;min-height:2px;border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,var(--warning),var(--brand))}.column-chart--expense .column-item>div i[b-cna72kwz2p]{background:linear-gradient(180deg,var(--warning),var(--danger))}.column-item small[b-cna72kwz2p]{font-size:8px;color:var(--text-muted);white-space:nowrap}.compare-grid[b-cna72kwz2p]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compare-grid article[b-cna72kwz2p]{padding:14px;border-radius:14px;background:var(--surface-2)}.compare-grid small[b-cna72kwz2p],.compare-grid span[b-cna72kwz2p]{display:block;color:var(--text-muted);font-size:10px}.compare-grid strong[b-cna72kwz2p]{display:block;margin:5px 0;font-size:16px}.compare-track[b-cna72kwz2p]{display:grid;gap:3px;margin-top:10px}.compare-track i[b-cna72kwz2p]{display:block;height:4px;border-radius:99px}.compare-track .actual[b-cna72kwz2p]{background:var(--brand)}.compare-track .previous[b-cna72kwz2p]{background:var(--text-2)}.funnel-months[b-cna72kwz2p]{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.funnel-months>article[b-cna72kwz2p]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.funnel-months h3[b-cna72kwz2p]{margin:0 0 12px;font-size:13px}.funnel-row[b-cna72kwz2p]{display:grid;grid-template-columns:94px 1fr 34px;align-items:center;gap:8px;margin-top:8px;font-size:10px}.funnel-row>div[b-cna72kwz2p]{height:7px;border-radius:99px;background:var(--surface);overflow:hidden}.funnel-row i[b-cna72kwz2p]{display:block;height:100%;border-radius:inherit}.funnel-row.blue i[b-cna72kwz2p]{background:var(--p)}.funnel-row.purple i[b-cna72kwz2p]{background:var(--p)}.funnel-row.teal i[b-cna72kwz2p]{background:var(--success)}.heat-card[b-cna72kwz2p]{padding-bottom:14px}.heat-scroll[b-cna72kwz2p]{overflow-x:auto;padding-bottom:5px}.heat-grid[b-cna72kwz2p]{display:grid;grid-template-columns:42px repeat(24,minmax(26px,1fr));gap:3px;min-width:820px}.heat-hour[b-cna72kwz2p],.heat-day[b-cna72kwz2p],.heat-cell[b-cna72kwz2p]{display:grid;place-items:center;min-height:25px;border-radius:5px;font-size:8px}.heat-hour[b-cna72kwz2p]{color:var(--text-muted);font-weight:800}.heat-day[b-cna72kwz2p]{justify-content:start;color:var(--text-muted);font-size:9px}.heat-cell[b-cna72kwz2p]{background:var(--surface-2);color:var(--text-muted)}.heat-cell.has-value[b-cna72kwz2p]{background:rgba(var(--brand-rgb),var(--heat-alpha));color:var(--text);font-weight:900}.segment-wrap[b-cna72kwz2p]{display:grid;gap:18px}.segment-bar[b-cna72kwz2p]{display:flex;height:20px;border-radius:999px;overflow:hidden;background:var(--surface-2)}.segment-bar i[b-cna72kwz2p]{display:block;height:100%}.segment-0[b-cna72kwz2p]{background:var(--p)}.segment-1[b-cna72kwz2p]{background:var(--success)}.segment-2[b-cna72kwz2p]{background:var(--p)}.segment-3[b-cna72kwz2p]{background:var(--warning)}.segment-4[b-cna72kwz2p]{background:var(--text-2)}.segment-legend[b-cna72kwz2p]{display:grid;gap:9px}.segment-legend article[b-cna72kwz2p]{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;font-size:11px}.segment-legend article i[b-cna72kwz2p]{width:10px;height:10px;border-radius:50%}.payment-list[b-cna72kwz2p],.amount-list[b-cna72kwz2p]{display:grid;gap:13px}.payment-list article[b-cna72kwz2p],.amount-list article[b-cna72kwz2p]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.payment-list article>div:first-child[b-cna72kwz2p],.amount-list article>div:first-child[b-cna72kwz2p]{display:grid;gap:2px}.payment-list strong[b-cna72kwz2p],.amount-list strong[b-cna72kwz2p]{font-size:11px}.payment-list span[b-cna72kwz2p],.amount-list span[b-cna72kwz2p]{font-size:9px;color:var(--text-muted)}.payment-list b[b-cna72kwz2p],.amount-list b[b-cna72kwz2p]{font-size:11px}.payment-track[b-cna72kwz2p],.amount-track[b-cna72kwz2p]{grid-column:1/-1}.mora-grid[b-cna72kwz2p]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mora-grid article[b-cna72kwz2p]{padding:15px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2)}.mora-grid span[b-cna72kwz2p],.mora-grid small[b-cna72kwz2p]{display:block;color:var(--text-muted);font-size:10px}.mora-grid strong[b-cna72kwz2p]{display:block;margin:5px 0;font-size:17px}.mora-grid article>div[b-cna72kwz2p]{height:7px;margin-top:12px;border-radius:999px;background:var(--surface);overflow:hidden}.mora-grid article>div i[b-cna72kwz2p]{display:block;height:100%;border-radius:inherit}.mora-grid .notice i[b-cna72kwz2p]{background:var(--warning)}.mora-grid .warning i[b-cna72kwz2p]{background:var(--warning)}.mora-grid .danger i[b-cna72kwz2p]{background:var(--danger)}.mora-grid .critical i[b-cna72kwz2p]{background:var(--danger)}.academic-list[b-cna72kwz2p]{display:grid;gap:13px}.academic-list article[b-cna72kwz2p]{display:grid;grid-template-columns:minmax(140px,1.2fr) minmax(110px,1.7fr) 58px;align-items:center;gap:12px}.academic-list article>div:first-child[b-cna72kwz2p]{display:grid;gap:2px}.academic-list strong[b-cna72kwz2p]{font-size:11px}.academic-list span[b-cna72kwz2p]{font-size:9px;color:var(--text-muted)}.academic-track[b-cna72kwz2p]{height:10px;border-radius:999px;background:var(--surface-2);overflow:hidden}.academic-track i[b-cna72kwz2p]{display:block;height:100%;border-radius:inherit}.academic-track i.good[b-cna72kwz2p]{background:var(--success)}.academic-track i.warning[b-cna72kwz2p]{background:var(--warning)}.academic-track i.bad[b-cna72kwz2p]{background:var(--danger)}.academic-list b[b-cna72kwz2p]{font-size:11px;text-align:right}.academic-list b.good[b-cna72kwz2p]{color:var(--success)}.academic-list b.warning[b-cna72kwz2p]{color:var(--warning)}.academic-list b.bad[b-cna72kwz2p]{color:var(--danger)}.attempt-list[b-cna72kwz2p]{display:grid;gap:12px}.attempt-list article[b-cna72kwz2p]{display:grid;grid-template-columns:minmax(90px,1fr) minmax(80px,1.2fr) 30px;align-items:center;gap:8px;font-size:10px}.attempt-list article>span[b-cna72kwz2p]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attempt-list article>div i[b-cna72kwz2p]{background:linear-gradient(90deg,var(--p),var(--p))}.cert-funnel[b-cna72kwz2p]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.cert-funnel>article[b-cna72kwz2p]{display:grid;justify-items:center;gap:5px;padding:16px 12px;border:1px solid var(--border);border-radius:15px;background:var(--surface-2);text-align:center}.cert-funnel>article>i[b-cna72kwz2p]{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:rgba(var(--brand-rgb),.13);color:var(--brand)}.cert-funnel strong[b-cna72kwz2p]{font-size:20px}.cert-funnel span[b-cna72kwz2p]{font-size:10px;font-weight:800}.cert-funnel small[b-cna72kwz2p]{color:var(--text-muted)}.cert-funnel>article>div[b-cna72kwz2p]{width:100%;height:6px;border-radius:99px;background:var(--surface);overflow:hidden}.cert-funnel>article>div i[b-cna72kwz2p]{display:block;height:100%;border-radius:inherit;background:var(--brand)}.alert-kpis[b-cna72kwz2p]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.alert-card[b-cna72kwz2p]{padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.alert-card>i[b-cna72kwz2p]{font-size:20px}.alert-card strong[b-cna72kwz2p]{display:block;margin:12px 0 4px;font-size:28px}.alert-card h2[b-cna72kwz2p]{margin:0;font-size:14px}.alert-card p[b-cna72kwz2p]{margin:7px 0 0;color:var(--text-muted);font-size:10px}.alert-card.danger[b-cna72kwz2p]{border-top:4px solid var(--danger)}.alert-card.danger>i[b-cna72kwz2p],.alert-card.danger strong[b-cna72kwz2p]{color:var(--danger)}.alert-card.warning[b-cna72kwz2p]{border-top:4px solid var(--warning)}.alert-card.warning>i[b-cna72kwz2p],.alert-card.warning strong[b-cna72kwz2p]{color:var(--warning)}.alert-card.success[b-cna72kwz2p]{border-top:4px solid var(--success)}.alert-card.success>i[b-cna72kwz2p],.alert-card.success strong[b-cna72kwz2p]{color:var(--success)}.risk-table-card[b-cna72kwz2p]{padding-bottom:8px}.risk-table[b-cna72kwz2p]{width:100%;border-collapse:collapse;font-size:11px}.risk-table th[b-cna72kwz2p]{padding:11px 10px;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:9px;text-transform:uppercase;letter-spacing:.5px;text-align:left}.risk-table td[b-cna72kwz2p]{padding:12px 10px;border-bottom:1px solid var(--border)}.risk-table tbody tr:hover[b-cna72kwz2p]{background:var(--surface-2)}.text-end[b-cna72kwz2p]{text-align:right}.money-badge[b-cna72kwz2p]{display:inline-flex;padding:5px 8px;border-radius:8px;background:rgba(239,68,68,.1);color:var(--danger);font-weight:900}.ranking-list[b-cna72kwz2p]{display:grid;gap:12px;margin:0;padding:0;list-style:none;counter-reset:item}.ranking-list li[b-cna72kwz2p]{display:grid;grid-template-columns:28px minmax(0,1fr) 34px;align-items:center;gap:10px}.ranking-list li>span[b-cna72kwz2p]{display:grid;width:27px;height:27px;place-items:center;border-radius:9px;background:var(--surface-2);font-size:10px;font-weight:900}.ranking-list li>div[b-cna72kwz2p]{display:grid;gap:5px;min-width:0}.ranking-list strong[b-cna72kwz2p]{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ranking-list li>div>div[b-cna72kwz2p]{height:7px;border-radius:99px;background:var(--surface-2);overflow:hidden}.ranking-list li>div>div i[b-cna72kwz2p]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--warning))}.ranking-list b[b-cna72kwz2p]{text-align:right;color:var(--brand)}[data-theme="dark"] .heat-cell.has-value[b-cna72kwz2p]{color:var(--text)}[data-theme="dark"] .money-badge[b-cna72kwz2p]{color:var(--warning)}@media(max-width:1200px){.dash-grid[b-cna72kwz2p]{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-card--wide[b-cna72kwz2p]{grid-column:span 2}.dash-kpis[b-cna72kwz2p],.alert-kpis[b-cna72kwz2p]{grid-template-columns:repeat(2,minmax(0,1fr))}.mora-grid[b-cna72kwz2p]{grid-template-columns:repeat(2,minmax(0,1fr))}.cert-funnel[b-cna72kwz2p]{grid-template-columns:repeat(3,minmax(0,1fr))}.compare-grid[b-cna72kwz2p]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.dash-head[b-cna72kwz2p]{align-items:stretch;flex-direction:column}.dash-head .btn[b-cna72kwz2p]{width:100%}.dash-kpis[b-cna72kwz2p],.alert-kpis[b-cna72kwz2p],.dash-grid[b-cna72kwz2p],.mora-grid[b-cna72kwz2p],.cert-funnel[b-cna72kwz2p],.compare-grid[b-cna72kwz2p]{grid-template-columns:1fr}.dash-card--wide[b-cna72kwz2p],.dash-card--full[b-cna72kwz2p]{grid-column:auto}.dash-kpis article[b-cna72kwz2p]{min-height:145px}.metric-list article[b-cna72kwz2p]{grid-template-columns:minmax(80px,1fr) minmax(70px,1fr) auto}.column-chart[b-cna72kwz2p]{height:210px}.academic-list article[b-cna72kwz2p]{grid-template-columns:1fr 54px}.academic-list article>div:first-child[b-cna72kwz2p]{grid-column:1/-1}.academic-track[b-cna72kwz2p]{grid-column:1}.funnel-months[b-cna72kwz2p]{grid-template-columns:1fr}.risk-table[b-cna72kwz2p]{min-width:650px}.dash-tabs button span[b-cna72kwz2p]{display:none}.dash-tabs button[b-cna72kwz2p]{min-width:42px;justify-content:center;padding:0 12px}}@media(prefers-reduced-motion:reduce){.dash-tabs button[b-cna72kwz2p]{transition:none}.fa-spin[b-cna72kwz2p]{animation:none}}

/* Pages/GestionVehiculoPractica.razor.css */
.admin-page[b-tako5a3l2f]{display:grid;gap:16px}.admin-hero[b-tako5a3l2f],.admin-card[b-tako5a3l2f]{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm)}.admin-hero[b-tako5a3l2f]{padding:22px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.admin-hero h1[b-tako5a3l2f]{margin:4px 0 5px;font-size:clamp(25px,2vw,34px)}.admin-hero p[b-tako5a3l2f]{margin:0;color:var(--text-muted)}.admin-eyebrow[b-tako5a3l2f]{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.admin-card[b-tako5a3l2f]{padding:15px}.admin-toolbar[b-tako5a3l2f]{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.admin-toggle[b-tako5a3l2f]{display:flex;background:var(--surface-2);padding:4px;border-radius:12px}.admin-toggle button[b-tako5a3l2f]{border:0;background:transparent;padding:9px 14px;border-radius:9px;font-weight:800;color:var(--text-muted)}.admin-toggle button.active[b-tako5a3l2f]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.admin-filter[b-tako5a3l2f]{display:flex;gap:8px;flex-wrap:wrap}.practice-catalog-filters[b-tako5a3l2f]{margin-bottom:16px}.admin-filter--catalogs[b-tako5a3l2f]{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));width:100%}.admin-table-wrap[b-tako5a3l2f]{overflow:auto;border:1px solid var(--border);border-radius:14px;max-height:62vh}.admin-table[b-tako5a3l2f]{width:100%;min-width:1550px;border-collapse:collapse}.admin-table th[b-tako5a3l2f],.admin-table td[b-tako5a3l2f]{padding:11px 12px;border-bottom:1px solid var(--border);font-size:12px;text-align:left}.admin-table th[b-tako5a3l2f]{position:sticky;top:0;background:var(--surface-2);z-index:2;font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}.admin-actions[b-tako5a3l2f]{display:flex;gap:5px;white-space:nowrap}.admin-empty[b-tako5a3l2f]{min-height:220px;display:grid;place-content:center;justify-items:center;color:var(--text-muted);gap:9px}.editor-dialog[b-tako5a3l2f]{max-width:min(820px,96vw)}.editor-grid[b-tako5a3l2f]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.editor-field[b-tako5a3l2f]{display:grid;gap:6px}.editor-field.full[b-tako5a3l2f]{grid-column:1/-1}.editor-field label[b-tako5a3l2f]{font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.modal-footer-actions[b-tako5a3l2f]{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.audit[b-tako5a3l2f]{padding:10px;border-radius:10px;background:var(--surface-2);font-size:12px;color:var(--text-muted)}.client-options[b-tako5a3l2f]{max-height:230px;overflow:auto;border:1px solid var(--border);border-radius:10px}.client-options button[b-tako5a3l2f]{width:100%;border:0;background:transparent;color:var(--text);display:flex;justify-content:space-between;padding:9px 11px;text-align:left}.client-options button:hover[b-tako5a3l2f]{background:var(--surface-2)}@media(max-width:900px){.admin-filter--catalogs[b-tako5a3l2f]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.admin-hero[b-tako5a3l2f]{padding:17px}.editor-grid[b-tako5a3l2f]{grid-template-columns:1fr}.admin-filter[b-tako5a3l2f]{width:100%;display:grid;grid-template-columns:1fr auto}.admin-filter--catalogs[b-tako5a3l2f]{grid-template-columns:1fr}.admin-filter input[b-tako5a3l2f]{min-width:0}}

/* Pages/GestionBalotario.razor.css */
:host[b-ezmwbrqw1x] { display:block; }
.gb-page-head[b-ezmwbrqw1x] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.gb-subtitle[b-ezmwbrqw1x] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.gb-toolbar-card[b-ezmwbrqw1x],.gb-list-card[b-ezmwbrqw1x] { margin-bottom:18px;overflow:visible; }
.gb-toolbar-card .card-body[b-ezmwbrqw1x] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.gb-tabs[b-ezmwbrqw1x] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.gb-tabs button[b-ezmwbrqw1x] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.gb-tabs button.active[b-ezmwbrqw1x] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.gb-tools[b-ezmwbrqw1x] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.gb-search[b-ezmwbrqw1x] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.gb-search > i[b-ezmwbrqw1x] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.gb-search input[b-ezmwbrqw1x] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.gb-search input:focus[b-ezmwbrqw1x] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.gb-list-head[b-ezmwbrqw1x] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.gb-list-head strong[b-ezmwbrqw1x] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.gb-list-head span[b-ezmwbrqw1x] { color:var(--text-muted);font-size:12px; }
.gb-table-wrap[b-ezmwbrqw1x] { overflow:auto; }
.gb-table[b-ezmwbrqw1x] { min-width:1120px; }
.gb-table td strong[b-ezmwbrqw1x],.gb-table td small[b-ezmwbrqw1x] { display:block; }
.gb-table td small[b-ezmwbrqw1x] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.gb-actions[b-ezmwbrqw1x] { display:flex;gap:6px; }
.academic-form-grid[b-ezmwbrqw1x] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-ezmwbrqw1x] { min-width:0; }
.academic-field--span-2[b-ezmwbrqw1x] { grid-column:1/-1; }
.academic-field label[b-ezmwbrqw1x] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-ezmwbrqw1x] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-ezmwbrqw1x] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-ezmwbrqw1x] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-ezmwbrqw1x] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-ezmwbrqw1x] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-ezmwbrqw1x] { text-align:center; }
.academic-confirm > i[b-ezmwbrqw1x] { color:var(--warning);font-size:34px; }
.assessment-manager[b-ezmwbrqw1x]{display:grid;grid-template-columns:320px minmax(0,1fr);height:100%;min-height:0}.assessment-question-list[b-ezmwbrqw1x]{padding:16px;overflow:auto;border-right:1px solid var(--border);background:var(--surface-2)}.assessment-editor[b-ezmwbrqw1x]{padding:18px 20px;overflow:auto}.assessment-pane-head[b-ezmwbrqw1x]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.assessment-question[b-ezmwbrqw1x]{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;width:100%;margin-bottom:7px;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);text-align:left}.assessment-question.active[b-ezmwbrqw1x]{border-color:rgba(var(--brand-rgb),.28);background:var(--brand-light)}.assessment-option-form[b-ezmwbrqw1x]{display:grid;grid-template-columns:80px minmax(0,1fr) auto auto;gap:9px;align-items:center}.assessment-option-list[b-ezmwbrqw1x]{display:grid;gap:8px;margin-top:12px}.assessment-option[b-ezmwbrqw1x]{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:11px}.assessment-option.correct[b-ezmwbrqw1x]{border-color:rgba(var(--success-rgb),.28);background:var(--success-bg)}
@media(max-width:760px){ .gb-page-head[b-ezmwbrqw1x]{align-items:stretch;flex-direction:column} .gb-tools[b-ezmwbrqw1x]{width:100%;flex-wrap:wrap} .gb-search[b-ezmwbrqw1x]{min-width:100%;max-width:none} .academic-form-grid[b-ezmwbrqw1x]{grid-template-columns:1fr} .academic-field--span-2[b-ezmwbrqw1x]{grid-column:auto} }

/* Pages/GestionCertificado.razor.css */
.cert-page[b-q999cf60wy]{display:grid;gap:16px}
.cert-hero[b-q999cf60wy]{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px;border-radius:18px;background:linear-gradient(135deg,var(--surface),var(--surface-2));border:1px solid var(--border)}
.cert-hero h1[b-q999cf60wy]{margin:4px 0 6px;font-size:clamp(24px,3vw,36px)}
.cert-hero p[b-q999cf60wy]{margin:0;color:var(--text-muted)}
.cert-eyebrow[b-q999cf60wy]{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}
.cert-hero-actions[b-q999cf60wy]{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.cert-card[b-q999cf60wy]{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm);overflow:hidden}
.cert-filter-card[b-q999cf60wy]{padding:14px}
.cert-toolbar[b-q999cf60wy],.cert-summary[b-q999cf60wy]{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.cert-toggle[b-q999cf60wy]{display:flex;padding:3px;background:var(--surface-2);border-radius:11px}
.cert-toggle button[b-q999cf60wy]{border:0;background:transparent;padding:8px 16px;border-radius:8px;color:var(--text-muted);font-weight:800}
.cert-toggle button.active[b-q999cf60wy]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}
.cert-filter-controls[b-q999cf60wy]{display:flex;gap:8px;flex:1;justify-content:flex-end}
.cert-filter-controls .form-select[b-q999cf60wy]{max-width:170px}
.cert-filter-controls .form-control[b-q999cf60wy]{max-width:360px}
.cert-summary[b-q999cf60wy]{padding:14px 16px;border-bottom:1px solid var(--border)}
.cert-summary>div[b-q999cf60wy]{display:flex;gap:7px;align-items:baseline}
.cert-summary strong[b-q999cf60wy]{font-size:20px}
.cert-summary span[b-q999cf60wy]{color:var(--text-muted);font-size:12px}
.cert-table-wrap[b-q999cf60wy]{overflow:auto;max-height:calc(100vh - 330px)}
.cert-table[b-q999cf60wy]{width:100%;min-width:2110px;border-collapse:collapse}
.cert-table th[b-q999cf60wy],.cert-table td[b-q999cf60wy]{padding:10px 11px;border-bottom:1px solid var(--border);font-size:12px;vertical-align:middle}
.cert-table th[b-q999cf60wy]{position:sticky;top:0;background:var(--surface-2);z-index:2;text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;white-space:nowrap}
.cert-table td small[b-q999cf60wy]{display:block;color:var(--text-muted);margin-top:3px}
.cert-table td.num[b-q999cf60wy]{text-align:center;font-variant-numeric:tabular-nums}
.cert-actions[b-q999cf60wy]{white-space:nowrap;position:sticky;left:0;background:var(--surface);z-index:1}
.cert-progress[b-q999cf60wy]{width:95px;height:7px;background:var(--surface-2);border-radius:999px;overflow:hidden}
.cert-progress span[b-q999cf60wy]{display:block;height:100%;background:var(--primary);border-radius:inherit}
.cert-status[b-q999cf60wy]{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:10.5px;font-weight:800}
.cert-status.pending[b-q999cf60wy]{background:rgba(245,158,11,.15);color:var(--danger)}
.cert-status.generated[b-q999cf60wy]{background:rgba(59,130,246,.14);color:var(--p)}
.cert-status.printed[b-q999cf60wy]{background:rgba(124,58,237,.14);color:var(--p)}
.cert-status.delivered[b-q999cf60wy]{background:rgba(16,185,129,.14);color:var(--success)}
.cert-status.registered[b-q999cf60wy]{background:rgba(14,165,233,.14);color:var(--p)}
.cert-empty[b-q999cf60wy]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:10px;color:var(--text-muted)}
.cert-empty i[b-q999cf60wy]{font-size:30px}
.cert-editor-dialog[b-q999cf60wy]{max-width:900px}
.cert-check[b-q999cf60wy]{display:flex;align-items:center;gap:9px;font-weight:700}
.cert-pdf-dialog[b-q999cf60wy]{max-width:min(1200px,96vw);height:92vh}
.cert-pdf-dialog .gxModal__content[b-q999cf60wy]{height:100%;display:flex;flex-direction:column}
.cert-pdf-body[b-q999cf60wy]{flex:1;padding:0}
.cert-pdf-body iframe[b-q999cf60wy]{width:100%;height:100%;border:0;background:var(--surface)}
.cert-alert[b-q999cf60wy]{margin:0}
.btn-icon[b-q999cf60wy]{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0}

.cert-electronic-dialog[b-q999cf60wy]{max-width:min(820px,95vw)}
.cert-electronic-client[b-q999cf60wy]{display:flex;align-items:baseline;gap:10px;margin-bottom:16px;padding:13px 15px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}
.cert-electronic-client strong[b-q999cf60wy]{font-size:16px}
.cert-electronic-client span[b-q999cf60wy]{color:var(--text-muted);font-size:12px}

.cert-books-dialog[b-q999cf60wy]{width:min(1120px,96vw);max-width:min(1120px,96vw)}
.cert-books-layout[b-q999cf60wy]{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:18px}
.cert-book-editor[b-q999cf60wy],.cert-book-list[b-q999cf60wy]{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:16px}
.cert-book-editor h6[b-q999cf60wy]{margin:0 0 14px;font-weight:850}
.cert-book-editor-actions[b-q999cf60wy]{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.cert-book-list-head[b-q999cf60wy]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.cert-books-table-wrap[b-q999cf60wy]{overflow:auto;max-height:410px;border:1px solid var(--border);border-radius:12px}
.cert-books-table[b-q999cf60wy]{margin:0;min-width:620px}
.cert-books-table th[b-q999cf60wy]{position:sticky;top:0;font-size:10px;text-transform:uppercase;letter-spacing:.05em;z-index:1}
.cert-books-table th[b-q999cf60wy],.cert-books-table td[b-q999cf60wy]{padding:10px 11px;vertical-align:middle}
.cert-books-empty[b-q999cf60wy]{display:grid;place-content:center;min-height:180px;color:var(--text-muted)}

@media(max-width:900px){
    .cert-hero[b-q999cf60wy]{flex-direction:column}
    .cert-filter-controls[b-q999cf60wy]{justify-content:flex-start;flex-wrap:wrap}
    .cert-filter-controls .form-control[b-q999cf60wy]{max-width:none;flex:1 1 230px}
    .cert-table-wrap[b-q999cf60wy]{max-height:none}
    .cert-hero-actions[b-q999cf60wy]{width:100%;justify-content:flex-end}
    .cert-books-layout[b-q999cf60wy]{grid-template-columns:1fr}
}

/* Pages/ConsultarNumeroOperacion.razor.css */
:host[b-fzg7wy80w9]{display:block}.module-page[b-fzg7wy80w9]{display:grid;gap:16px}.module-hero[b-fzg7wy80w9],.module-card[b-fzg7wy80w9]{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm)}.module-hero[b-fzg7wy80w9]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px;background:linear-gradient(135deg,var(--surface),var(--surface-2))}.module-eyebrow[b-fzg7wy80w9]{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}.module-hero h1[b-fzg7wy80w9]{margin:5px 0;font-size:clamp(25px,2vw,34px)}.module-hero p[b-fzg7wy80w9]{margin:0;color:var(--text-muted)}.module-actions[b-fzg7wy80w9]{display:flex;gap:8px;flex-wrap:wrap}.module-card[b-fzg7wy80w9]{padding:16px}.module-toolbar[b-fzg7wy80w9]{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.module-field[b-fzg7wy80w9]{display:grid;gap:5px;min-width:180px;flex:1}.module-field label[b-fzg7wy80w9]{font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.module-search[b-fzg7wy80w9]{min-width:260px}.module-table-wrap[b-fzg7wy80w9]{overflow:auto}.module-table[b-fzg7wy80w9]{width:100%;min-width:850px;border-collapse:collapse}.module-table th[b-fzg7wy80w9],.module-table td[b-fzg7wy80w9]{padding:11px;border-bottom:1px solid var(--border);vertical-align:middle}.module-table th[b-fzg7wy80w9]{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap}.module-table td small[b-fzg7wy80w9]{display:block;color:var(--text-muted)}.module-table .num[b-fzg7wy80w9]{text-align:right}.module-empty[b-fzg7wy80w9]{min-height:220px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--text-muted)}.module-empty i[b-fzg7wy80w9]{font-size:26px}.module-summary[b-fzg7wy80w9]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.module-summary article[b-fzg7wy80w9]{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.module-summary small[b-fzg7wy80w9]{display:block;color:var(--text-muted)}.module-summary strong[b-fzg7wy80w9]{font-size:22px}.module-modal[b-fzg7wy80w9]{width:min(980px,calc(100vw - 24px));max-height:calc(100vh - 28px);overflow:auto}.module-modal-sm[b-fzg7wy80w9]{width:min(560px,calc(100vw - 24px))}.module-form[b-fzg7wy80w9]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.module-form .span-2[b-fzg7wy80w9]{grid-column:span 2}.module-form .span-3[b-fzg7wy80w9]{grid-column:span 3}.module-form label[b-fzg7wy80w9]{display:block;margin-bottom:5px;font-size:11px;font-weight:850;text-transform:uppercase;color:var(--text-muted)}.status-pill[b-fzg7wy80w9]{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:900;text-transform:uppercase}.status-pill.ok[b-fzg7wy80w9]{background:rgba(16,185,129,.14);color:var(--success)}.status-pill.bad[b-fzg7wy80w9]{background:rgba(225,29,72,.12);color:var(--danger)}.status-pill.warn[b-fzg7wy80w9]{background:rgba(245,158,11,.16);color:var(--danger)}@media(max-width:780px){.module-hero[b-fzg7wy80w9]{padding:17px;display:grid}.module-actions .btn[b-fzg7wy80w9]{flex:1}.module-summary[b-fzg7wy80w9]{grid-template-columns:repeat(2,1fr)}.module-form[b-fzg7wy80w9]{grid-template-columns:1fr}.module-form .span-2[b-fzg7wy80w9],.module-form .span-3[b-fzg7wy80w9]{grid-column:auto}.module-toolbar[b-fzg7wy80w9]{display:grid}.module-field[b-fzg7wy80w9],.module-search[b-fzg7wy80w9]{min-width:0}}
.operation-search[b-fzg7wy80w9]{display:flex;align-items:end;gap:10px}.operation-result[b-fzg7wy80w9]{display:flex;gap:14px;align-items:center;padding:18px;border-radius:14px}.operation-result i[b-fzg7wy80w9]{font-size:32px}.operation-result div[b-fzg7wy80w9]{display:grid;gap:4px}.operation-result.free[b-fzg7wy80w9]{background:rgba(16,185,129,.12);color:var(--success)}.operation-result.used[b-fzg7wy80w9]{background:rgba(245,158,11,.16);color:var(--danger)}@media(max-width:650px){.operation-search[b-fzg7wy80w9]{display:grid}}
.module-table[b-fzg7wy80w9]{min-width:1650px}

/* Pages/GestionEvaluacion.razor.css */
:host[b-wrmhq3qvoc] { display:block; }
.ge-page-head[b-wrmhq3qvoc] { display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px; }
.ge-subtitle[b-wrmhq3qvoc] { margin:6px 0 0;color:var(--text-muted);font-size:13px; }
.ge-toolbar-card[b-wrmhq3qvoc],.ge-list-card[b-wrmhq3qvoc] { margin-bottom:18px;overflow:visible; }
.ge-toolbar-card .card-body[b-wrmhq3qvoc] { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.ge-tabs[b-wrmhq3qvoc] { display:flex;padding:4px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface-2); }
.ge-tabs button[b-wrmhq3qvoc] { display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:700;cursor:pointer; }
.ge-tabs button.active[b-wrmhq3qvoc] { background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm); }
.ge-tools[b-wrmhq3qvoc] { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1; }
.ge-search[b-wrmhq3qvoc] { position:relative;display:block;min-width:280px;max-width:520px;flex:1; }
.ge-search > i[b-wrmhq3qvoc] { position:absolute;z-index:2;top:50%;left:14px;transform:translateY(-50%);color:var(--text-muted);pointer-events:none; }
.ge-search input[b-wrmhq3qvoc] { box-sizing:border-box;width:100%;min-height:44px;padding:0 14px 0 42px;border:1px solid var(--border);border-radius:var(--r-md,12px);background:var(--surface);color:var(--text);outline:none; }
.ge-search input:focus[b-wrmhq3qvoc] { border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12); }
.ge-list-head[b-wrmhq3qvoc] { display:flex;align-items:baseline;gap:7px;margin-bottom:12px; }
.ge-list-head strong[b-wrmhq3qvoc] { color:var(--text);font-family:'Sora',sans-serif;font-size:22px;font-weight:800; }
.ge-list-head span[b-wrmhq3qvoc] { color:var(--text-muted);font-size:12px; }
.ge-table-wrap[b-wrmhq3qvoc] { overflow:auto; }
.ge-table[b-wrmhq3qvoc] { min-width:1160px; }
.ge-table td strong[b-wrmhq3qvoc],.ge-table td small[b-wrmhq3qvoc] { display:block; }
.ge-table td small[b-wrmhq3qvoc] { margin-top:3px;color:var(--text-muted);font-size:11px; }
.ge-actions[b-wrmhq3qvoc] { display:flex;gap:6px; }
.academic-form-grid[b-wrmhq3qvoc] { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.academic-field[b-wrmhq3qvoc] { min-width:0; }
.academic-field--span-2[b-wrmhq3qvoc] { grid-column:1/-1; }
.academic-field label[b-wrmhq3qvoc] { display:block;margin:0 0 5px;color:var(--text-2);font-size:12px;font-weight:600; }
.modal-footer-actions[b-wrmhq3qvoc] { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border); }
.academic-modal-sm[b-wrmhq3qvoc] { width:min(480px,calc(100vw - 32px)); }
.academic-modal-lg[b-wrmhq3qvoc] { width:min(880px,calc(100vw - 32px)); }
.academic-modal-xl[b-wrmhq3qvoc] { width:min(1060px,calc(100vw - 24px)); }
.academic-modal-full[b-wrmhq3qvoc] { width:min(1380px,calc(100vw - 20px));height:min(900px,calc(100dvh - 20px)); }
.academic-confirm[b-wrmhq3qvoc] { text-align:center; }
.academic-confirm > i[b-wrmhq3qvoc] { color:var(--warning);font-size:34px; }
.assessment-manager[b-wrmhq3qvoc]{display:grid;grid-template-columns:320px minmax(0,1fr);height:100%;min-height:0}.assessment-question-list[b-wrmhq3qvoc]{padding:16px;overflow:auto;border-right:1px solid var(--border);background:var(--surface-2)}.assessment-editor[b-wrmhq3qvoc]{padding:18px 20px;overflow:auto}.assessment-pane-head[b-wrmhq3qvoc]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.assessment-question[b-wrmhq3qvoc]{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;width:100%;margin-bottom:7px;padding:10px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--text);text-align:left}.assessment-question.active[b-wrmhq3qvoc]{border-color:rgba(var(--brand-rgb),.28);background:var(--brand-light)}.assessment-option-form[b-wrmhq3qvoc]{display:grid;grid-template-columns:80px minmax(0,1fr) auto auto;gap:9px;align-items:center}.assessment-option-list[b-wrmhq3qvoc]{display:grid;gap:8px;margin-top:12px}.assessment-option[b-wrmhq3qvoc]{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:11px}.assessment-option.correct[b-wrmhq3qvoc]{border-color:rgba(var(--success-rgb),.28);background:var(--success-bg)}
@media(max-width:760px){ .ge-page-head[b-wrmhq3qvoc]{align-items:stretch;flex-direction:column} .ge-tools[b-wrmhq3qvoc]{width:100%;flex-wrap:wrap} .ge-search[b-wrmhq3qvoc]{min-width:100%;max-width:none} .academic-form-grid[b-wrmhq3qvoc]{grid-template-columns:1fr} .academic-field--span-2[b-wrmhq3qvoc]{grid-column:auto} }

/* Pages/RegularizacionComprobantes.razor.css */
:host[b-cj57o84mki]{display:block}
.regfe-page[b-cj57o84mki]{display:grid;gap:18px}
.regfe-head p[b-cj57o84mki]{margin:6px 0 0;color:var(--text-muted);font-size:12px}
.regfe-filter-card[b-cj57o84mki],.regfe-list-card[b-cj57o84mki]{overflow:visible}
.regfe-filters[b-cj57o84mki]{display:grid;grid-template-columns:160px 160px minmax(240px,1fr) auto auto;gap:10px;align-items:end}
.regfe-field[b-cj57o84mki]{min-width:0}
.regfe-filters label[b-cj57o84mki]{display:block;margin-bottom:5px;color:var(--text-muted);font-size:10px;font-weight:800;text-transform:uppercase}
.regfe-field-emision small[b-cj57o84mki]{display:block;margin-top:6px;color:var(--text-muted);font-size:10.5px;line-height:1.35}
.regfe-selection-summary[b-cj57o84mki]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-lite)}
.regfe-summary-item[b-cj57o84mki]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.regfe-summary-item span[b-cj57o84mki]{color:var(--text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.regfe-summary-item strong[b-cj57o84mki]{color:var(--text);font-size:15px;font-weight:800;white-space:nowrap}
.regfe-summary-date[b-cj57o84mki]{border-color:rgba(var(--brand-rgb),.24);background:var(--brand-light)}
.regfe-list-head[b-cj57o84mki]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.regfe-list-head strong[b-cj57o84mki]{font-family:'Sora',sans-serif;font-size:20px;font-weight:800;color:var(--text)}
.regfe-list-head span[b-cj57o84mki]{color:var(--text-muted);font-size:12px}
.regfe-list-selected[b-cj57o84mki]{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:var(--brand-light);color:var(--brand-dark);font-size:11px;font-weight:800}
.regfe-row-selected td[b-cj57o84mki]{background:rgba(var(--brand-rgb),.035)}
.regfe-state[b-cj57o84mki]{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;background:var(--surface-2)}
.regfe-state.ok[b-cj57o84mki]{color:var(--success);background:rgba(16,185,129,.12)}
.regfe-state.pending[b-cj57o84mki]{color:var(--warning);background:rgba(245,158,11,.14)}
.regfe-state.bad[b-cj57o84mki]{color:var(--danger);background:rgba(239,68,68,.13)}
.regfe-state.warn[b-cj57o84mki]{color:var(--text-2)}
.regfe-confirm-dialog[b-cj57o84mki]{width:min(620px,calc(100vw - 32px))}
.regfe-confirm-summary[b-cj57o84mki]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.regfe-confirm-summary>div[b-cj57o84mki]{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.regfe-confirm-summary span[b-cj57o84mki],.regfe-confirm-summary strong[b-cj57o84mki]{display:block}
.regfe-confirm-summary span[b-cj57o84mki]{color:var(--text-muted);font-size:10px;font-weight:800;text-transform:uppercase}
.regfe-confirm-summary strong[b-cj57o84mki]{margin-top:4px;color:var(--text);font-size:15px}
.regfe-confirm-warning[b-cj57o84mki]{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;border:1px solid rgba(245,158,11,.28);border-radius:12px;background:var(--warning-bg)}
.regfe-confirm-warning>i[b-cj57o84mki]{margin-top:2px;color:var(--warning);font-size:18px}
.regfe-confirm-warning strong[b-cj57o84mki],.regfe-confirm-warning span[b-cj57o84mki]{display:block}
.regfe-confirm-warning strong[b-cj57o84mki]{color:var(--text);font-size:12px}
.regfe-confirm-warning span[b-cj57o84mki]{margin-top:4px;color:var(--text-2);font-size:11.5px;line-height:1.45}
@media(max-width:1100px){.regfe-filters[b-cj57o84mki]{grid-template-columns:1fr 1fr 1fr}.regfe-filters .btn[b-cj57o84mki]{width:100%}.regfe-selection-summary[b-cj57o84mki]{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.regfe-filters[b-cj57o84mki],.regfe-selection-summary[b-cj57o84mki],.regfe-confirm-summary[b-cj57o84mki]{grid-template-columns:1fr}.regfe-list-head[b-cj57o84mki]{align-items:flex-start;flex-direction:column}}

/* Components/Security/PortalRouteGuard.razor.css */
.portal-guard-state[b-npwxdmc66n] {
    min-height: 100vh;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 12px;
    background: var(--surface);
    color: var(--text);
}

.portal-guard-state span[b-npwxdmc66n] {
    width: 38px;
    height: 38px;
    border: 4px solid var(--surface);
    border-top-color: var(--p);
    border-radius: 50%;
    animation: portal-guard-spin-b-npwxdmc66n .8s linear infinite;
}

@keyframes portal-guard-spin-b-npwxdmc66n {
    to { transform: rotate(360deg); }
}
/* Components/Reportes/IngresosTable.razor.css */
.ri-table-wrap[b-zmtz5xbnr4]{overflow:auto;border:1px solid var(--border);border-radius:14px;max-height:62vh}.ri-table[b-zmtz5xbnr4]{width:100%;min-width:1700px;border-collapse:collapse;background:var(--surface)}.ri-table th[b-zmtz5xbnr4],.ri-table td[b-zmtz5xbnr4]{padding:10px 12px;border-bottom:1px solid var(--border);font-size:12px;text-align:left}.ri-table th[b-zmtz5xbnr4]{position:sticky;top:0;z-index:2;background:var(--surface-2);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em}.ri-table tfoot td[b-zmtz5xbnr4]{position:sticky;bottom:0;background:var(--surface-2);font-weight:800}.ri-table td.num[b-zmtz5xbnr4]{text-align:right;font-variant-numeric:tabular-nums}.ri-table td.total[b-zmtz5xbnr4]{font-weight:900}.ri-badge[b-zmtz5xbnr4]{display:inline-flex;padding:4px 9px;border-radius:999px;font-weight:800;font-size:11px}.ri-badge.ok[b-zmtz5xbnr4]{background:rgba(16,185,129,.14);color:var(--success)}.ri-badge.bad[b-zmtz5xbnr4]{background:rgba(239,68,68,.13);color:var(--danger)}.ri-badge.neutral[b-zmtz5xbnr4]{background:var(--surface-2);color:var(--text-muted)}

/* =========================================================
   GLOBALTRAINER — REPORTES DE INGRESOS / FILTROS GLOBALES
   Las opciones se construyen con todas las filas del grid.
   El footer totaliza todas las filas filtradas, no la página.
   ========================================================= */
.ri-grid-toolbar[b-zmtz5xbnr4]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .65rem}.ri-grid-toolbar>div[b-zmtz5xbnr4]{display:flex;align-items:baseline;gap:.4rem;color:var(--text-muted)}.ri-grid-toolbar strong[b-zmtz5xbnr4]{color:var(--text);font-size:1rem}.ri-column-filters th[b-zmtz5xbnr4]{top:34px;z-index:4;padding:6px 8px;background:var(--surface-2)}.ri-column-filters .core-column-filter[b-zmtz5xbnr4]{min-width:104px}.ri-column-filters[b-zmtz5xbnr4]  .ssel,.ri-column-filters[b-zmtz5xbnr4]  .ssel-trigger{width:100%;min-width:104px}.ri-table thead tr:first-child th[b-zmtz5xbnr4]{top:0;z-index:5}.ri-table tfoot td[b-zmtz5xbnr4]{z-index:3}.ri-table-wrap[b-zmtz5xbnr4]{overflow:auto}
@media(max-width:760px){.ri-grid-toolbar[b-zmtz5xbnr4]{align-items:stretch;flex-direction:column}.ri-grid-toolbar .btn[b-zmtz5xbnr4]{align-self:flex-start}.ri-column-filters .core-column-filter[b-zmtz5xbnr4]{min-width:118px}}

/* Components/Dashboard/DashboardHeatmap.razor.css */
.db-heat-card[b-626cd3l1af]{grid-column:1/-1;padding:18px 18px 14px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.db-heat-card header[b-626cd3l1af]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.db-heat-card header span[b-626cd3l1af]{color:var(--brand);font-size:10px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}.db-heat-card h2[b-626cd3l1af]{margin:4px 0 0;font-size:16px}.db-heat-card header b[b-626cd3l1af]{font-size:12px;color:var(--text-muted)}.db-heat-scroll[b-626cd3l1af]{overflow-x:auto;padding-bottom:5px}.db-heat-grid[b-626cd3l1af]{display:grid;grid-template-columns:42px repeat(24,minmax(26px,1fr));gap:3px;min-width:820px}.db-hour[b-626cd3l1af],.db-day[b-626cd3l1af],.db-cell[b-626cd3l1af]{display:grid;place-items:center;min-height:25px;border-radius:5px;font-size:8px}.db-hour[b-626cd3l1af]{color:var(--text-muted);font-weight:800}.db-day[b-626cd3l1af]{justify-content:start;color:var(--text-muted);font-size:9px}.db-cell[b-626cd3l1af]{background:var(--surface-2);color:var(--text-muted)}.db-cell.has-value[b-626cd3l1af]{background:rgba(var(--brand-rgb),var(--heat-alpha));color:var(--text);font-weight:900}[data-theme="dark"] .db-cell.has-value[b-626cd3l1af]{color:var(--text)}

/* Components/Dashboard/DashboardCertFunnel.razor.css */
.db-cert-funnel[b-t14nxfbnww]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.db-cert-funnel>article[b-t14nxfbnww]{display:grid;justify-items:center;gap:5px;padding:16px 12px;border:1px solid var(--border);border-radius:15px;background:var(--surface-2);text-align:center}.db-cert-funnel>article>i[b-t14nxfbnww]{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:rgba(var(--brand-rgb),.13);color:var(--brand)}.db-cert-funnel strong[b-t14nxfbnww]{font-size:20px}.db-cert-funnel span[b-t14nxfbnww]{font-size:10px;font-weight:800}.db-cert-funnel small[b-t14nxfbnww]{color:var(--text-muted)}.db-cert-funnel>article>div[b-t14nxfbnww]{width:100%;height:6px;border-radius:99px;background:var(--surface);overflow:hidden}.db-cert-funnel>article>div i[b-t14nxfbnww]{display:block;height:100%;border-radius:inherit;background:var(--brand)}@media(max-width:1200px){.db-cert-funnel[b-t14nxfbnww]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.db-cert-funnel[b-t14nxfbnww]{grid-template-columns:1fr}}

/* Components/Dashboard/DashboardMetricList.razor.css */
.db-empty[b-7tefadrv7w]{padding:28px;text-align:center;color:var(--text-muted)}.db-metric-list[b-7tefadrv7w]{display:grid;gap:12px}.db-metric-list article[b-7tefadrv7w]{display:grid;grid-template-columns:minmax(90px,1fr) minmax(80px,1.35fr) auto;align-items:center;gap:10px}.db-metric-copy[b-7tefadrv7w]{display:grid;gap:2px;min-width:0}.db-metric-copy strong[b-7tefadrv7w]{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-metric-copy span[b-7tefadrv7w]{font-size:9px;color:var(--text-muted)}.db-metric-track[b-7tefadrv7w]{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}.db-metric-track i[b-7tefadrv7w]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--warning))}.db-metric-list--blue .db-metric-track i[b-7tefadrv7w]{background:linear-gradient(90deg,var(--p),var(--p))}.db-metric-list--purple .db-metric-track i[b-7tefadrv7w]{background:linear-gradient(90deg,var(--p),var(--p))}.db-metric-list--teal .db-metric-track i[b-7tefadrv7w]{background:linear-gradient(90deg,var(--success),var(--success))}.db-metric-list--danger .db-metric-track i[b-7tefadrv7w]{background:linear-gradient(90deg,var(--danger),var(--warning))}.db-metric-list b[b-7tefadrv7w]{font-size:11px;text-align:right;white-space:nowrap}@media(max-width:720px){.db-metric-list article[b-7tefadrv7w]{grid-template-columns:minmax(80px,1fr) minmax(65px,1fr) auto}}

/* Components/Dashboard/DashboardRanking.razor.css */
.db-empty[b-mk3adw5jc6]{padding:28px;text-align:center;color:var(--text-muted)}.db-ranking[b-mk3adw5jc6]{display:grid;gap:12px;margin:0;padding:0;list-style:none}.db-ranking li[b-mk3adw5jc6]{display:grid;grid-template-columns:28px minmax(0,1fr) 34px;align-items:center;gap:10px}.db-ranking li>span[b-mk3adw5jc6]{display:grid;width:27px;height:27px;place-items:center;border-radius:9px;background:var(--surface-2);font-size:10px;font-weight:900}.db-ranking li>div[b-mk3adw5jc6]{display:grid;gap:5px;min-width:0}.db-ranking strong[b-mk3adw5jc6]{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.db-ranking li>div>div[b-mk3adw5jc6]{height:7px;border-radius:99px;background:var(--surface-2);overflow:hidden}.db-ranking li>div>div i[b-mk3adw5jc6]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--warning))}.db-ranking b[b-mk3adw5jc6]{text-align:right;color:var(--brand)}

/* Components/Dashboard/DashboardSegmented.razor.css */
.db-empty[b-yortey010b]{padding:28px;text-align:center;color:var(--text-muted)}.db-segment-wrap[b-yortey010b]{display:grid;gap:18px}.db-segment-bar[b-yortey010b]{display:flex;height:20px;border-radius:999px;overflow:hidden;background:var(--surface-2)}.db-segment-bar i[b-yortey010b]{display:block;height:100%}.segment-0[b-yortey010b]{background:var(--p)}.segment-1[b-yortey010b]{background:var(--success)}.segment-2[b-yortey010b]{background:var(--p)}.segment-3[b-yortey010b]{background:var(--warning)}.segment-4[b-yortey010b]{background:var(--text-2)}.db-segment-legend[b-yortey010b]{display:grid;gap:9px}.db-segment-legend article[b-yortey010b]{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;font-size:11px}.db-segment-legend article i[b-yortey010b]{width:10px;height:10px;border-radius:50%}

.gt-inline-84c17a6c70d6{display:flex}
.gt-inline-579b1af212eb{max-width:520px}
.gt-inline-905008530ca9{text-align:center}
.gt-inline-49d89bbf02c3{font-size:34px}
.gt-inline-22c8dfe86002{display:flex;}
.gt-inline-a277c0166bed{grid-column:1 / -1;}
.gt-inline-92c18f6bdac1{margin-top:16px}
.gt-inline-7c3b052fb8fd{align-items:end;flex-wrap:wrap}
.gt-inline-2d2038de80ea{display:flex;gap:8px;align-items:center;padding-bottom:10px}
.gt-inline-66ee08ff0461{width:min(900px,96vw);max-width:min(900px,96vw)}
.gt-inline-71e6f32ace76{margin:0 0 1rem;}
.gt-inline-d5155bd5b520{display:block;width:100%;margin:.5rem 0;}
.gt-select-compat{border:0;padding:0;margin:0;min-width:0;}

/* GlobalTrainer shared layouts from the previous shell */
.gt-page{display:grid;gap:1rem;padding-bottom:2rem}
.gt-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.gt-head p{margin:.35rem 0 0;color:var(--text-muted)}
.gt-card .card-body{padding:1rem}
.gt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.8rem}
.gt-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.gt-tabs button{padding:.55rem .9rem;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:800}
.gt-tabs button.active{background:var(--p-soft);color:var(--p-text);box-shadow:0 2px 8px rgba(15,23,42,.08)}
.gt-search{position:relative;flex:1}
.gt-search i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}
.gt-search input{min-height:44px;padding-left:42px;border-radius:11px}
.gt-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:14px}
.gt-actions{display:flex;gap:7px;white-space:nowrap}
.gt-actions .gvCmdBtn{margin:0}
.gt-badge{display:inline-flex;padding:.25rem .58rem;border-radius:999px;font-size:.7rem;font-weight:850}
.gt-badge.ok{background:var(--success-bg);color:var(--success)}
.gt-badge.off{background:var(--danger-bg);color:var(--danger)}
.gt-badge.warn{background:var(--warning-bg);color:var(--warning)}
.gt-modal{width:min(820px,95vw);max-width:min(820px,95vw)}
.gt-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.gt-field.span-2{grid-column:span 2}
.gt-field label{display:block;margin-bottom:.3rem;font-size:.77rem;font-weight:800}
.gt-field .form-control,.gt-field .form-select{min-height:43px;border-radius:10px}
.gt-empty{padding:3rem;text-align:center;color:var(--text-muted)}
.gt-loading{display:grid;min-height:320px;place-content:center;justify-items:center;gap:.6rem}
.gt-notice{padding:.75rem .9rem;border-radius:12px}
.gt-notice.success{background:var(--success-bg);color:var(--success)}
.gt-notice.error{background:var(--danger-bg);color:var(--danger)}
.gt-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.gt-stat{padding:.9rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text)}
.gt-stat small,.gt-stat strong{display:block}
.gt-stat small{color:var(--text-muted)}
.gt-stat strong{font-size:1.25rem}
@media(max-width:760px){.gt-head,.gt-toolbar{align-items:stretch;flex-direction:column}
.gt-form,.gt-stats{grid-template-columns:1fr}
.gt-field.span-2{grid-column:auto}}
.gt-page{display:grid;gap:1rem;padding-bottom:2rem}
.gt-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.gt-head p{margin:.35rem 0 0;color:var(--text-muted)}
.gt-card .card-body{padding:1rem}
.gt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.8rem}
.gt-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.gt-tabs button{padding:.55rem .9rem;border:0;border-radius:9px;background:transparent;color:var(--text-muted);font-weight:800}
.gt-tabs button.active{background:var(--p-soft);color:var(--p-text);box-shadow:0 2px 8px rgba(15,23,42,.08)}
.gt-search{position:relative;flex:1}
.gt-search i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}
.gt-search input{min-height:44px;padding-left:42px;border-radius:11px}
.gt-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:14px}
.gt-actions{display:flex;gap:7px;white-space:nowrap}
.gt-actions .gvCmdBtn{margin:0}
.gt-badge{display:inline-flex;padding:.25rem .58rem;border-radius:999px;font-size:.7rem;font-weight:850}
.gt-badge.ok{background:var(--success-bg);color:var(--success)}
.gt-badge.off{background:var(--danger-bg);color:var(--danger)}
.gt-badge.warn{background:var(--warning-bg);color:var(--warning)}
.gt-modal{width:min(820px,95vw);max-width:min(820px,95vw)}
.gt-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.gt-field.span-2{grid-column:span 2}
.gt-field label{display:block;margin-bottom:.3rem;font-size:.77rem;font-weight:800}
.gt-field .form-control,.gt-field .form-select{min-height:43px;border-radius:10px}
.gt-empty{padding:3rem;text-align:center;color:var(--text-muted)}
.gt-loading{display:grid;min-height:320px;place-content:center;justify-items:center;gap:.6rem}
.gt-notice{padding:.75rem .9rem;border-radius:12px}
.gt-notice.success{background:var(--success-bg);color:var(--success)}
.gt-notice.error{background:var(--danger-bg);color:var(--danger)}
.gt-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.gt-stat{padding:.9rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text)}
.gt-stat small,.gt-stat strong{display:block}
.gt-stat small{color:var(--text-muted)}
.gt-stat strong{font-size:1.25rem}
@media(max-width:760px){.gt-head,.gt-toolbar{align-items:stretch;flex-direction:column}
.gt-form,.gt-stats{grid-template-columns:1fr}
.gt-field.span-2{grid-column:auto}}
.gt-table td small{display:block;color:var(--text-muted)}

}
/* New calendar component, scoped exclusively to .gt-date; no Core class overrides. */
.gt-date{position:fixed;z-index:2147483000;width:min(368px,calc(100vw - 16px));box-sizing:border-box;padding:18px;border:1px solid var(--border);border-top:3px solid var(--brand);border-radius:20px;background:var(--surface);color:var(--text);box-shadow:0 18px 60px rgba(0,0,0,.2);font-family:inherit;overflow:auto;overscroll-behavior:contain;}
.gt-date *{box-sizing:border-box;}
.gt-date__heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
.gt-date__eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--p-text);margin-bottom:3px;}
.gt-date__label{display:block;font-size:15px;font-weight:750;line-height:1.3;overflow-wrap:anywhere;}
.gt-date__button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--text);font:inherit;font-size:13px;font-weight:650;line-height:1;cursor:pointer;touch-action:manipulation;}
.gt-date__button:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 10%,var(--surface));color:var(--p-text);}
.gt-date__button:focus-visible,.gt-date select:focus-visible,.gt-date input:focus-visible{outline:2px solid var(--brand);outline-offset:2px;}
.gt-date__button:disabled{opacity:.35;cursor:default;}
.gt-date__close{font-size:24px;width:36px;min-height:36px;padding:0;flex-shrink:0;background:var(--surface-2);}
.gt-date__nav{display:grid;grid-template-columns:36px minmax(0,1fr) 76px 36px;align-items:center;gap:5px;padding:7px 0 12px;}
.gt-date__arrow{padding:0;font-size:26px;min-height:36px;}
.gt-date__month,.gt-date__year{width:100%;min-width:0;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);font-family:inherit;font-size:14px;font-weight:700;padding:5px 7px;color-scheme:inherit;}
.gt-date__week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-bottom:3px;}
.gt-date__weekday{padding:8px 0;text-align:center;color:var(--text-muted);font-size:11px;font-weight:750;}
.gt-date__day{position:relative;min-width:0;min-height:42px;padding:0;font-size:14px;font-variant-numeric:tabular-nums;font-weight:600;}
.gt-date__day.is-outside{color:var(--text-muted);font-weight:400;}
.gt-date__day.is-today{border-color:color-mix(in srgb,var(--brand) 50%,var(--border));color:var(--p-text);font-weight:800;}
.gt-date__day.is-selected,.gt-date__day.is-selected:hover:not(:disabled){background:var(--brand);border-color:var(--p-text);color:var(--p-contrast, #fff);font-weight:800;box-shadow:0 3px 10px color-mix(in srgb,var(--brand) 28%,transparent);}
.gt-date__footer{display:flex;align-items:center;gap:7px;padding-top:12px;border-top:1px solid var(--border);}
.gt-date__today{color:var(--p-text);background:color-mix(in srgb,var(--brand) 9%,var(--surface));}
.gt-date__clear{color:var(--text-muted);margin-right:auto;}
.gt-date__apply{background:var(--brand);color:var(--p-contrast, #fff);}
.gt-date__apply:hover:not(:disabled){background:var(--brand);color:var(--p-contrast, #fff);filter:brightness(1.08);}
.gt-date__time{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 4px;font-size:13px;font-weight:700;}
.gt-date__time input{min-height:40px;max-width:160px;border:1px solid var(--border);border-radius:10px;padding:5px 10px;background:var(--surface-2);color:var(--text);font-family:inherit;font-size:15px;}
.gt-date__error{margin:8px 0;color:var(--danger);font-size:12px;line-height:1.4;}
.gt-date__error:empty{margin:6px 0;}
[data-theme="dark"] .gt-date{box-shadow:0 18px 60px rgba(0,0,0,.5);color-scheme:dark;}
@media(max-width:380px){.gt-date{padding:12px;border-radius:16px;}.gt-date__day{min-height:38px;}.gt-date__nav{grid-template-columns:32px minmax(0,1fr) 70px 32px;gap:3px;}}



/* GlobalTrainer dashboard components: project-only selectors, no Core overrides. */
.gt-income-card .principal-section-title,.fe-dash-card .principal-section-title{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}
.gt-income-card .principal-section-title>div,.fe-dash-card .principal-section-title>div{min-width:0}
.gt-income-card .principal-section-title h3,.fe-dash-card .principal-section-title h3{margin:4px 0 0;font-size:17px;font-weight:750;line-height:1.35;color:var(--text)}
.gt-income-card .principal-section-title>a,.fe-dash-card .principal-section-title>a{flex-shrink:0;align-self:center;color:var(--p-text);font-size:12px;font-weight:700;text-decoration:none}
.gt-income-card .principal-section-title>a:hover,.fe-dash-card .principal-section-title>a:hover{text-decoration:underline}
.principal-bars{display:grid;gap:14px;min-width:0;padding:4px 0}
.principal-bars>div{display:grid;grid-template-columns:52px minmax(0,1fr) minmax(78px,max-content);align-items:center;gap:14px;font-size:12px;line-height:1.5;min-width:0}
.principal-bars>div>span{color:var(--text-muted);font-variant-numeric:tabular-nums}
.principal-bars>div>i{display:block;height:10px;min-width:2px;max-width:100%;border-radius:99px;background:var(--brand, #FFC20E);box-shadow:var(--shadow-sm)}
.principal-bars>div>strong{text-align:right;color:var(--text);font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.fe-dash-card .principal-loading{display:grid;min-height:100px;place-content:center;color:var(--text-muted);font-size:13px}
@media(max-width:600px){.principal-bars>div{grid-template-columns:42px minmax(0,1fr) 76px;gap:8px;font-size:11px}.principal-bars{gap:12px}.gt-income-card .principal-section-title,.fe-dash-card .principal-section-title{gap:8px;margin-bottom:14px}}

/* Shared administrative styles restored after Core migration, 2026-10-22. */
.cad-page{
    display: grid;
    gap: 1rem;
    padding-bottom: 2rem;
}
.cad-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}
.cad-head p{
    margin: .35rem 0 0;
    color: var(--text-muted, #8a8fa3);
}
.cad-card{
    overflow: hidden;
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 18px;
    background: var(--surface, #fff);
}
.cad-card .card-body{
    padding: 1rem;
}
.cad-toolbar{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .8rem;
}
.cad-tabs{
    display: flex;
    gap: 4px;
    padding: 4px;
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
    background: var(--surface-2, #f7f8fb);
}
.cad-tabs button{
    padding: .55rem .9rem;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: var(--text-muted, #8a8fa3);
    font-weight: 800;
}
.cad-tabs button.active{
    background: var(--surface, #fff);
    color: var(--text, #202438);
    box-shadow: 0 2px 8px rgba(15, 23, 42, .08);
}
.cad-actions-top{
    display: flex;
    align-items: center;
    gap: .5rem;
}
.cad-actions-top .btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}
.cad-search{
    position: relative;
    flex: 1;
    margin-bottom: .8rem;
}
.cad-search i{
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    color: var(--text-muted, #8a8fa3);
}
.cad-search input{
    min-height: 44px;
    padding-left: 42px;
    border-radius: 11px;
}
.cad-table-wrap{
    overflow: auto;
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 14px;
}
.cad-table{
    min-width: 780px;
    margin: 0;
}
.cad-table th{
    padding: .75rem;
    border: 0;
    background: var(--surface-2);
    color:var(--text-2);
    font-size: .72rem;
    letter-spacing: .04em;
}
.cad-table td{
    padding: .75rem;
    vertical-align: middle;
}
.cad-row-actions{
    display: flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap;
}
.cad-row-actions .gvCmdBtn{
    flex: 0 0 auto;
    margin: 0 ;
}
.cad-badge{
    display: inline-flex;
    padding: .25rem .58rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 850;
}
.cad-badge.active{
    background: var(--success-bg);
    color: var(--success);
}
.cad-badge.inactive{
    background: var(--danger-bg);
    color: var(--danger);
}
.cad-pagination{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: .8rem;
    color: var(--text-muted, #8a8fa3);
    font-size: .8rem;
}
.cad-pagination div{
    display: flex;
    align-items: center;
    gap: .35rem;
}
.cad-pagination button{
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 9px;
    background: var(--surface, #fff);
}
.cad-modal{
    width: min(720px, 94vw);
    max-width: min(720px, 94vw) ;
}
.cad-form{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
}
.cad-field.span-2,
.cad-check.span-2{
    grid-column: span 2;
}
.cad-field label{
    display: block;
    margin-bottom: .3rem;
    font-size: .77rem;
    font-weight: 800;
}
.cad-field .form-control,
.cad-field .form-select{
    min-height: 43px;
    border-radius: 10px;
}
.cad-check{
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .8rem;
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
}
.cad-check span,
.cad-check strong,
.cad-check small{
    display: block;
}
.cad-check small{
    color: var(--text-muted, #8a8fa3);
}
.cad-audit{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .6rem;
    margin-bottom: .9rem;
}
.cad-audit div{
    padding: .7rem;
    border-radius: 11px;
    background: var(--surface-2, #f7f8fb);
}
.cad-audit small,
.cad-audit strong{
    display: block;
}
.cad-audit small{
    color: var(--text-muted, #8a8fa3);
}
.cad-notice{
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .75rem .9rem;
    border-radius: 12px;
}
.cad-notice.error{
    background: var(--danger-bg);
    color: var(--danger);
}
.cad-notice.success{
    background: var(--success-bg);
    color: var(--success);
}
.cad-empty{
    padding: 3rem ;
    text-align: center;
    color: var(--text-muted, #8a8fa3);
}
.cad-loading{
    display: grid;
    min-height: 320px;
    place-content: center;
    justify-items: center;
    gap: .6rem;
}
@media (max-width: 720px){
.cad-head,
.cad-toolbar,
.cad-pagination{
        align-items: stretch;
        flex-direction: column;
    }
.cad-form,
.cad-audit{
        grid-template-columns: 1fr;
    }
.cad-field.span-2,
.cad-check.span-2{
        grid-column: auto;
    }
.cad-actions-top .btn{
        flex: 1;
    }
}
.rc-dialog{
    width:min(1420px,96vw);
    max-width:96vw;
    max-height:92vh;
}
.rc-dialog .gxModal__content{
    max-height:92vh;
    display:flex;
    flex-direction:column;
}
.rc-dialog .gxModal__body{
    overflow:auto;
    padding:22px 26px 28px;
}
.rc-eyebrow{
    font-size:11px;
    font-weight:850;
    letter-spacing:.13em;
    text-transform:uppercase;
    color:var(--p);
}
.rc-tabs{
    display:flex;
    gap:8px;
    overflow:auto;
    padding-bottom:14px;
    border-bottom:1px solid var(--border);
    margin-bottom:18px;
    scrollbar-width:thin;
}
.rc-tabs button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    border:1px solid var(--border);
    background:var(--surface);
    color:var(--text-muted);
    padding:9px 16px;
    border-radius:12px;
    white-space:nowrap;
    font-weight:750;
    transition:transform .18s ease,background .18s ease,color .18s ease;
}
.rc-tabs button:hover{
    transform:translateY(-1px);
    color:var(--text);
}
.rc-tabs button.active{
    background:var(--p);
    border-color:var(--p);
    color:var(--on-p);
    box-shadow:0 8px 18px rgba(17,24,39,.16);
}
.rc-table-wrap{
    overflow:auto;
    max-height:58vh;
    border:1px solid var(--border);
    border-radius:14px;
    background:var(--surface);
}
.rc-table{
    width:100%;
    border-collapse:collapse;
    min-width:760px;
}
.rc-table th,
.rc-table td{
    padding:11px 13px;
    border-bottom:1px solid var(--border);
    text-align:left;
    font-size:12.5px;
    vertical-align:middle;
}
.rc-table th{
    position:sticky;
    top:0;
    background:var(--surface-2);
    z-index:2;
    font-size:10.5px;
    text-transform:uppercase;
    letter-spacing:.055em;
    color:var(--text-muted);
}
.rc-table tbody tr:last-child td{
    border-bottom:0;
}
.rc-table tbody tr:hover td{
    background:color-mix(in srgb,var(--p) 4%,transparent);
}
.rc-table .num{
    text-align:right;
    font-variant-numeric:tabular-nums;
}
.rc-badge{
    display:inline-flex;
    padding:4px 9px;
    border-radius:999px;
    font-size:10.5px;
    font-weight:850;
}
.rc-badge.ok{
    background:var(--success-bg);
    color:var(--success);
}
.rc-badge.bad{
    background:var(--danger-bg);
    color:var(--danger);
}
.rc-badge.warning{
    background:var(--warning-bg);
    color:var(--warning);
}
.rc-badge.neutral{
    background:var(--surface-2);
    color:var(--text-muted);
}
.rc-empty{
    min-height:220px;
    display:grid;
    place-content:center;
    justify-items:center;
    gap:10px;
    color:var(--text-muted);
    text-align:center;
}
.rc-empty i{
    font-size:30px;
    color:var(--p);
}
.rc-empty strong{
    color:var(--text);
}
.rc-empty span{
    max-width:560px;
    line-height:1.55;
}
.rc-alert{
    display:flex;
    align-items:center;
    gap:9px;
    margin:0;
}
.rc-results-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:14px;
}
.rc-section-kicker{
    display:block;
    margin-bottom:4px;
    color:var(--p);
    font-size:10.5px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.rc-results-head h6{
    margin:0 0 5px;
    color:var(--text);
    font-size:20px;
    font-weight:850;
}
.rc-results-head p{
    margin:0;
    color:var(--text-muted);
    line-height:1.5;
}
.rc-module-count{
    display:inline-flex;
    align-items:center;
    gap:8px;
    flex:none;
    padding:8px 12px;
    border:1px solid var(--border);
    border-radius:999px;
    background:var(--surface-2);
    color:var(--text-muted);
    font-size:11px;
    font-weight:800;
}
.rc-result-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-bottom:14px;
}
.rc-result-stats article{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:86px;
    padding:14px;
    border:1px solid var(--border);
    border-radius:14px;
    background:var(--surface);
}
.rc-result-stats article>i{
    width:42px;
    height:42px;
    display:grid;
    place-content:center;
    border-radius:12px;
    background:var(--surface-2);
    color:var(--p);
    font-size:17px;
}
.rc-result-stats article.evaluation>i{
    background:var(--p-soft);
    color:var(--p-text);
}
.rc-result-stats article.ballot>i{
    background:var(--p-soft);
    color:var(--p-text);
}
.rc-result-stats article div{
    display:grid;
    gap:1px;
}
.rc-result-stats article span,
.rc-result-stats article small{
    color:var(--text-muted);
    font-size:11px;
}
.rc-result-stats article strong{
    color:var(--text);
    font-size:22px;
    line-height:1;
}
.rc-result-sections{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.rc-result-panel{
    min-width:0;
    border:1px solid var(--border);
    border-radius:16px;
    background:var(--surface);
    overflow:hidden;
}
.rc-result-panel>header{
    display:flex;
    align-items:center;
    gap:11px;
    padding:14px 15px;
    border-bottom:1px solid var(--border);
    background:var(--surface-2);
}
.rc-result-panel>header div:last-child{
    display:grid;
    gap:2px;
}
.rc-result-panel>header span{
    color:var(--text);
    font-weight:850;
}
.rc-result-panel>header strong{
    color:var(--text-muted);
    font-size:11px;
    font-weight:700;
}
.rc-result-icon{
    width:38px;
    height:38px;
    display:grid;
    place-content:center;
    border-radius:11px;
}
.rc-result-panel.evaluation .rc-result-icon{
    background:var(--p-soft);
    color:var(--p-text);
}
.rc-result-panel.ballot .rc-result-icon{
    background:var(--p-soft);
    color:var(--p-text);
}
.rc-result-table-wrap{
    max-height:390px;
    border:0;
    border-radius:0;
}
.rc-result-table{
    min-width:590px;
}
.rc-result-empty{
    min-height:220px;
    display:grid;
    place-content:center;
    justify-items:center;
    gap:7px;
    padding:24px;
    text-align:center;
    color:var(--text-muted);
}
.rc-result-empty i{
    font-size:28px;
}
.rc-result-empty strong{
    color:var(--text);
}
.rc-result-empty span{
    max-width:360px;
    font-size:12px;
    line-height:1.5;
}
.rc-module-name{
    color:var(--text);
    font-weight:750;
}
.rc-score{
    color:var(--text);
    font-size:14px;
}
.rc-attempt{
    display:inline-grid;
    min-width:28px;
    height:28px;
    place-content:center;
    border-radius:9px;
    background:var(--surface-2);
    color:var(--text);
    font-weight:850;
}
.rc-empty-results{
    min-height:180px;
    margin-top:14px;
    border:1px dashed var(--border);
    border-radius:14px;
    background:var(--surface-2);
}
@media(max-width:980px){
.rc-result-sections{
        grid-template-columns:1fr;
    }
}
@media(max-width:760px){
.rc-dialog{
        width:100%;
        max-width:100%;
        max-height:calc(100dvh - 12px);
    }
.rc-dialog .gxModal__content{
        max-height:calc(100dvh - 12px);
        border-radius:18px;
    }
.rc-dialog .gxModal__body{
        padding:15px 13px 20px;
    }
.rc-tabs{
        margin-inline:-2px;
    }
.rc-tabs button{
        min-height:40px;
        padding:8px 12px;
    }
.rc-results-head{
        flex-direction:column;
    }
.rc-result-stats{
        grid-template-columns:1fr;
    }
.rc-table-wrap{
        max-height:none;
    }
}
.rc-practice-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:14px;
}
.rc-practice-head h6{
    margin:0 0 5px;
    color:var(--text);
    font-size:20px;
    font-weight:850;
}
.rc-practice-head p{
    margin:0;
    color:var(--text-muted);
    line-height:1.5;
}
.rc-practice-stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-bottom:14px;
}
.rc-practice-stats article{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:86px;
    padding:14px;
    border:1px solid var(--border);
    border-radius:14px;
    background:var(--surface);
}
.rc-practice-stats article>i{
    width:42px;
    height:42px;
    display:grid;
    place-content:center;
    flex:none;
    border-radius:12px;
    background:var(--surface-2);
    color:var(--p);
    font-size:17px;
}
.rc-practice-stats article.sessions>i{
    background:var(--p-soft);
    color:var(--p-text);
}
.rc-practice-stats article.evaluated>i{
    background:var(--success-bg);
    color:var(--success);
}
.rc-practice-stats article.upcoming>i{
    background:var(--warning-bg);
    color:var(--warning);
}
.rc-practice-stats article div{
    display:grid;
    gap:2px;
    min-width:0;
}
.rc-practice-stats article span,
.rc-practice-stats article small{
    overflow:hidden;
    color:var(--text-muted);
    font-size:11px;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.rc-practice-stats article strong{
    color:var(--text);
    font-size:22px;
    line-height:1;
    font-variant-numeric:tabular-nums;
}
.rc-practice-table tfoot th{
    position:sticky;
    bottom:0;
    z-index:2;
    border-top:1px solid var(--border);
    background:var(--surface-2);
    font-size:11px;
    font-weight:900;
}
.rc-session-value{
    display:block;
    color:var(--text);
    font-size:14px;
    font-variant-numeric:tabular-nums;
}
.rc-session-value+small{
    display:block;
    margin-top:2px;
    color:var(--text-muted);
    font-size:10px;
}
@media(max-width:1080px){
.rc-practice-stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:760px){
.rc-practice-head{
        flex-direction:column;
    }
.rc-practice-stats{
        grid-template-columns:1fr;
    }
}
.rc-tabs button{
    position:relative;
}
.rc-tabs button>span:first-of-type{
    line-height:1;
}
.rc-tab-count{
    display:inline-grid;
    min-width:22px;
    height:22px;
    place-content:center;
    margin-left:2px;
    padding:0 6px;
    border-radius:999px;
    background:var(--surface-2);
    color:var(--text-muted);
    font-size:10px;
    font-weight:900;
    font-variant-numeric:tabular-nums;
}
.rc-tabs button.active .rc-tab-count{
    background:rgba(255,255,255,.18);
    color:var(--on-p);
}
.rc-section-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:14px;
}
.rc-section-head h6{
    margin:0 0 5px;
    color:var(--text);
    font-size:20px;
    font-weight:850;
}
.rc-section-head p{
    margin:0;
    max-width:720px;
    color:var(--text-muted);
    line-height:1.5;
}
.rc-kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-bottom:14px;
}
.rc-kpi-grid article{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
    min-height:88px;
    padding:14px;
    border:1px solid var(--border);
    border-radius:14px;
    background:var(--surface);
}
.rc-kpi-grid article>i{
    width:42px;
    height:42px;
    display:grid;
    place-content:center;
    flex:none;
    border-radius:12px;
    background:var(--surface-2);
    color:var(--p);
    font-size:17px;
}
.rc-kpi-grid article.primary>i{
    background:var(--p-soft);
    color:var(--p-text);
}
.rc-kpi-grid article.success>i{
    background:var(--success-bg);
    color:var(--success);
}
.rc-kpi-grid article.warning>i{
    background:var(--warning-bg);
    color:var(--warning);
}
.rc-kpi-grid article.danger>i{
    background:var(--danger-bg);
    color:var(--danger);
}
.rc-kpi-grid article.neutral>i{
    background:var(--surface-2);
    color:var(--text-2);
}
.rc-kpi-grid article div{
    display:grid;
    gap:2px;
    min-width:0;
}
.rc-kpi-grid article span,
.rc-kpi-grid article small{
    overflow:hidden;
    color:var(--text-muted);
    font-size:11px;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.rc-kpi-grid article strong{
    color:var(--text);
    font-size:22px;
    line-height:1;
    font-variant-numeric:tabular-nums;
}
.rc-table tfoot th{
    position:sticky;
    bottom:0;
    z-index:2;
    border-top:1px solid var(--border);
    background:var(--surface-2);
    color:var(--text);
    font-size:11px;
    font-weight:900;
}
.rc-result-stats{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.rc-practice-stats{
    grid-template-columns:repeat(5,minmax(0,1fr));
}
.rc-practice-stats article.vehicles>i{
    background:var(--p-soft);
    color:var(--p-text);
}
@media(max-width:1180px){
.rc-kpi-grid,
.rc-result-stats,
.rc-practice-stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:760px){
.rc-section-head{
        flex-direction:column;
    }
.rc-kpi-grid,
.rc-result-stats,
.rc-practice-stats{
        grid-template-columns:1fr;
    }
}
.client-options{max-height:230px;overflow:auto;border:1px solid var(--border);border-radius:10px}
.client-options button{width:100%;border:0;background:transparent;color:var(--text);display:flex;justify-content:space-between;padding:9px 11px;text-align:left}
.client-options button:hover{background:var(--surface-2)}
.rgc-page{
    display:grid;
    gap:16px;
    padding:0;
}
.rgc-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}
.rgc-subtitle{
    margin:5px 0 0;
    color:var(--text-muted);
    line-height:1.55;
}
.rgc-head-icon{
    width:54px;
    height:54px;
    flex:none;
    display:grid;
    place-content:center;
    border:1px solid var(--border);
    border-radius:16px;
    background:var(--surface-2);
    color:var(--p);
    font-size:22px;
}
.rgc-filter-card,
.rgc-results-card{
    margin:0;
}
.rgc-filter-grid{
    display:grid;
    grid-template-columns:170px minmax(280px,1fr) auto;
    align-items:end;
    gap:12px;
}
.rgp-filter-grid{
    grid-template-columns:minmax(300px,560px) auto;
    justify-content:start;
}
.rgc-field{
    display:grid;
    gap:6px;
}
.rgc-field label{
    margin:0;
    color:var(--text-muted);
    font-size:10.5px;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
}
.rgc-search-box{
    position:relative;
}
.rgc-search-box>i{
    position:absolute;
    left:13px;
    top:50%;
    transform:translateY(-50%);
    color:var(--text-muted);
    pointer-events:none;
}
.rgc-search-box .form-control{
    padding-left:38px;
}
.rgc-actions{
    display:flex;
    align-items:center;
    gap:8px;
}
.rgc-actions .btn{
    min-height:40px;
}
.rgc-alert{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0;
    border-radius:14px;
}
.rgc-alert span{
    flex:1;
}
.rgc-alert button{
    width:32px;
    height:32px;
    display:grid;
    place-content:center;
    border:0;
    border-radius:9px;
    background:transparent;
    color:inherit;
}
.rgc-stats{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
}
.rgc-stats article{
    position:relative;
    min-height:96px;
    padding:16px;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:16px;
    background:var(--surface);
    box-shadow:var(--shadow-sm);
}
.rgc-stats article span{
    display:block;
    margin-bottom:7px;
    color:var(--text-muted);
    font-size:10.5px;
    font-weight:850;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.rgc-stats article strong{
    color:var(--text);
    font-size:clamp(20px,2vw,27px);
    font-variant-numeric:tabular-nums;
}
.rgc-stats article>i{
    position:absolute;
    right:14px;
    top:14px;
    color:var(--p);
    opacity:.14;
    font-size:30px;
}
.rgc-empty{
    min-height:260px;
    padding:32px;
}
.rgc-empty i{
    font-size:34px;
    color:var(--p);
}
.rgc-empty span{
    max-width:560px;
    text-align:center;
}
.rgc-table-wrap{
    overflow:auto;
    max-height:calc(100vh - 350px);
    min-height:240px;
}
.rgc-table{
    width:100%;
    min-width:1180px;
    margin:0;
}
.rgc-table th,
.rgc-table td{
    padding:12px 13px;
    vertical-align:middle;
}
.rgc-table thead th{
    position:sticky;
    top:0;
    z-index:2;
    background:var(--surface-2);
    color:var(--text-muted);
    font-size:10px;
    letter-spacing:.055em;
}
.rgc-table tfoot th{
    position:sticky;
    bottom:0;
    z-index:2;
    border-top:1px solid var(--border);
    background:var(--surface-2);
    font-size:11px;
    font-weight:900;
}
.rgc-client{
    display:grid;
    gap:3px;
    min-width:210px;
}
.rgc-client strong{
    color:var(--text);
    font-size:12.5px;
}
.rgc-client small{
    color:var(--text-muted);
    font-size:10.5px;
}
.rgc-money{
    white-space:nowrap;
    font-weight:800;
    font-variant-numeric:tabular-nums;
}
.rgc-money--warning{
    color:var(--warning);
}
.rgc-money--success{
    color:var(--success);
}
.rgc-progress-row{
    display:flex;
    align-items:center;
    gap:9px;
    min-width:150px;
}
.rgc-progress{
    flex:1;
    height:8px;
    overflow:hidden;
    border-radius:999px;
    background:var(--surface-2);
}
.rgc-progress span{
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,var(--p),var(--success));
}
.rgc-progress-row small{
    width:54px;
    color:var(--text-muted);
    font-variant-numeric:tabular-nums;
    text-align:right;
}
.rgc-action-col{
    width:74px;
    text-align:center;
    white-space:nowrap;
}
@media(max-width:1180px){
.rgc-stats{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}
@media(max-width:820px){
.rgc-head{
        align-items:flex-start;
    }
.rgc-filter-grid,
.rgp-filter-grid{
        grid-template-columns:1fr;
    }
.rgc-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
    }
.rgc-stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
.rgc-table-wrap{
        max-height:none;
    }
}
@media(max-width:540px){
.rgc-head-icon{
        display:none;
    }
.rgc-actions{
        grid-template-columns:1fr;
    }
.rgc-stats{
        grid-template-columns:1fr;
    }
}
.report-page{display:grid;gap:16px}
.report-hero,
.report-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm)}
.report-hero{display:flex;align-items:flex-start;justify-content:space-between;padding:22px}
.report-hero h1{margin:4px 0 5px;font-size:clamp(25px,2vw,34px)}
.report-hero p{margin:0;color:var(--text-muted)}
.report-eyebrow{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--p)}
.report-card{padding:16px}
.report-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap}
.report-field{display:grid;gap:5px;min-width:180px;flex:1}
.report-field label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:var(--text-muted)}
.report-actions{display:flex;gap:8px}
.report-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.report-summary strong{font-size:22px}
.report-empty{min-height:240px;display:grid;place-content:center;justify-items:center;gap:10px;color:var(--text-muted)}
.client-results{position:relative}
.client-options{position:absolute;z-index:10;left:0;right:0;top:100%;max-height:260px;overflow:auto;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:12px}
.client-options button{width:100%;display:flex;justify-content:space-between;text-align:left;border:0;background:transparent;padding:10px 12px;color:var(--text)}
.client-options button:hover{background:var(--surface-2)}
@media(max-width:720px){
.report-hero{padding:17px}
.report-filter{display:grid}
.report-field{min-width:0}
.report-actions{width:100%}
.report-actions .btn{flex:1}
}

/* Restored shared project components. Scoped selectors preserve shell palette/controls. */
.rc-dialog,.cad-page,.rgc-page,.report-page{font-size:14px;line-height:1.5}
.cad-table th{background:var(--surface-2);color:var(--text-2)}
.rc-tabs button.active .rc-tab-count{background:var(--surface);color:var(--text-2)}
.rc-dialog.gxModal__dialog{width:min(1420px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);min-width:0;min-height:0}
.rc-dialog .gxModal__content{display:flex;flex-direction:column;max-height:calc(100dvh - 32px);min-width:0;min-height:0;overflow:hidden}
.rc-dialog .gxModal__header{flex:0 0 auto;min-width:0}
.rc-dialog .gxModal__title{overflow-wrap:anywhere}
.rc-dialog .gxModal__body{flex:1 1 auto;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}
.rc-dialog .gxModal__footer{flex:0 0 auto}
.rc-tabs{display:flex;flex-wrap:wrap;gap:8px;overflow:visible}
.rc-tabs button{font:inherit;font-size:14px;min-height:42px;line-height:1.4;cursor:pointer}
.rc-tabs button.active{background:var(--p-soft);color:var(--text);border-color:var(--p-line);box-shadow:inset 0 -2px 0 var(--p)}
.rc-tabs button:focus-visible,.cad-tabs button:focus-visible{outline:2px solid var(--p);outline-offset:2px}
.rc-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:2px 6px;border-radius:var(--r-full);background:var(--surface);color:var(--text-2);font-size:12px;line-height:1.4}
.rc-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.rc-dialog :is(.rc-stats,.rc-stat,.rc-section-head,.rc-profile,.rc-attempt,.rc-module-count){min-width:0}
.rc-dialog :is(.rc-stat,.rc-section-head,.rc-profile) :is(strong,h6,p){overflow-wrap:anywhere}
.rc-table-wrap{width:100%;max-width:100%;overflow:auto;max-height:none}
.rc-table{font-size:14px}
.rc-table :is(th,td){font-size:14px;line-height:1.5;padding:12px}
.rc-table th{font-size:12px;color:var(--text-2)}
.rc-eyebrow,.rc-section-kicker,.report-eyebrow{color:var(--text-2)}
.cad-tabs button.active{background:var(--p-soft);color:var(--text);border:1px solid var(--p-line)}
.cad-tabs button{font:inherit;font-weight:650;line-height:1.4;min-height:40px;cursor:pointer}
.cad-search input{padding-left:42px}
.cad-search i{pointer-events:none}
.cad-table :is(th,td){font-size:14px;line-height:1.5}
.cad-table th{font-size:12px}
.rgc-field,.report-field{min-width:0}
.rgc-field label,.report-field label{font-size:13px;color:var(--text-2)}
.rgc-filter-grid :is(input,select,.form-control,.form-select){min-width:0;width:100%;box-sizing:border-box}
.rgc-search i{pointer-events:none}
.rgc-table-wrap{max-width:100%;overflow:auto}
.rgc-table :is(th,td){font-size:14px;line-height:1.5;padding:12px}
.rgc-table th{font-size:12px}
.rgc-actions,.report-actions,.cad-actions-top{display:flex;flex-wrap:wrap;gap:8px}
.rgc-table :is(.gvCmdBtn,button),.cad-table .gvCmdBtn{opacity:1;visibility:visible}
.academic-count-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--r-full);background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);font-size:13px;font-weight:650}
.academic-hero-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.academic-cell-sub{display:block;margin-top:3px;color:var(--text-muted);font-size:12px;line-height:1.4}
.academic-status{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:650}
.academic-status.active{background:var(--success-bg);color:var(--success)}
.assessment-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;margin:14px 0}
.assessment-options{display:grid;gap:14px;margin-top:20px;padding-top:18px;border-top:1px solid var(--border);min-width:0}
.assessment-item-input{width:100%;min-width:0}
.assessment-empty{padding:28px;text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:var(--r-md);background:var(--surface)}
.rich-html-editor{width:100%;min-width:0;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text);overflow:hidden}
.rich-html-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:8px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.rich-html-toolbar button{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-2);font:inherit;cursor:pointer}
.rich-html-toolbar button:hover{background:var(--p-soft);color:var(--text)}
.rich-html-toolbar button:focus-visible{outline:2px solid var(--p);outline-offset:2px}
.rich-html-content{min-height:160px;max-height:360px;overflow:auto;padding:12px;line-height:1.6;overflow-wrap:anywhere;outline:none}
.rich-html-content:focus{box-shadow:inset 0 0 0 2px var(--p-line)}
.rich-html-content:empty::before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}
.gc-quick-overlay{overscroll-behavior:contain}
.gc-state-loading,.gc-state-denied{display:grid;justify-items:center;gap:10px;padding:28px;color:var(--text-muted);text-align:center}
.gem-money{font-variant-numeric:tabular-nums;white-space:nowrap}
.principal-chart-title{margin:4px 0 0;font-size:18px;font-weight:750;line-height:1.4;color:var(--text)}
.cert-electronic-observation{padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);line-height:1.5;overflow-wrap:anywhere}
@media(max-width:760px){.rc-dialog.gxModal__dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 32px)}.rc-dialog .gxModal__content{max-height:calc(100dvh - 32px)}.rc-dialog .gxModal__body{padding:14px}.rc-tabs button{flex:1 1 auto;padding:8px 10px}.rc-stats{grid-template-columns:minmax(0,1fr)}.rc-section-head{align-items:flex-start;flex-wrap:wrap}.report-filter{display:grid;grid-template-columns:minmax(0,1fr)}.report-field{min-width:0}.report-actions{width:100%}}

/* Core-like presentation for administrative data tables, including legacy tables
   without .table. Annotation does not alter row content or Blazor event handlers. */
.gt-admin-grid{width:100%;border-collapse:separate;border-spacing:0;margin-bottom:0;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:14px;font-size:14px;line-height:1.5}
.gt-admin-grid>thead>tr>th{padding:12px 14px;background:color-mix(in oklab,var(--p) 10%,var(--surface-2));color:color-mix(in oklab,var(--p) 45%,var(--text-2));font-size:12px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;border-bottom:1px solid var(--border);vertical-align:middle}
.gt-admin-grid>tbody>tr>td{padding:12px 14px;border-bottom:1px solid var(--border-lite);color:var(--text);background:var(--surface);vertical-align:middle;font-size:14px;line-height:1.5}
.gt-admin-grid>tbody>tr:hover>td{background:var(--p-soft)}
.gt-admin-grid>tfoot>tr>:is(th,td){padding:12px 14px;border-top:1px solid var(--border);background:var(--surface-2);color:var(--text);font-weight:750;font-size:14px}
.gt-admin-grid>thead>tr:is(.core-column-filters,.column-filter-row)>th{padding:6px 8px;background:var(--surface-2);letter-spacing:normal;text-transform:none}
.gt-admin-grid>thead :is(input,select,.ssel-trigger){font-size:13px;min-height:34px}
.gt-admin-grid>tbody>tr>td:is(.num,.text-end){font-variant-numeric:tabular-nums}
[data-theme="dark"] .gt-admin-grid>thead>tr>th{background:var(--surface-2);color:var(--text-2)}
.ri-table.gt-admin-grid>tbody>tr>td:nth-child(3){min-width:210px}
.gt-grid-scroll-host{max-width:100%;overflow-x:auto;scrollbar-width:auto;scrollbar-color:var(--text-muted) var(--surface-2);overscroll-behavior-x:contain}
.gt-grid-scroll-host.gt-grid-has-overflow{margin-bottom:54px}
.gt-grid-scroll-host::-webkit-scrollbar{height:14px;width:12px}
.gt-grid-scroll-host::-webkit-scrollbar-track{background:var(--surface-2);border-radius:8px}
.gt-grid-scroll-host::-webkit-scrollbar-thumb{background:var(--text-muted);border:3px solid var(--surface-2);border-radius:8px}
.gt-grid-scroll-host::-webkit-scrollbar-thumb:hover{background:var(--text-2)}
.gt-grid-scrollbar{position:fixed;z-index:200100;display:flex;align-items:center;gap:8px;box-sizing:border-box;height:44px;padding:5px 8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-md);font:600 12px/1.3 var(--font)}
.gt-grid-scrollbar[hidden]{display:none}
.gt-grid-scrollbar__label{flex:0 0 auto;white-space:nowrap}
.gt-grid-scrollbar button{flex:0 0 32px;display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font:700 21px/1 var(--font);cursor:pointer}
.gt-grid-scrollbar button:hover:not(:disabled){background:var(--p-soft);border-color:var(--p-line)}
.gt-grid-scrollbar button:disabled{opacity:.4;cursor:default}
.gt-grid-scrollbar input[type="range"]{flex:1 1 auto;min-width:40px;height:28px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:ew-resize;accent-color:var(--text-2)}
.gt-grid-scrollbar input[type="range"]::-webkit-slider-runnable-track{height:10px;border:1px solid var(--border);border-radius:99px;background:var(--surface-3)}
.gt-grid-scrollbar input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:32px;height:22px;margin-top:-7px;border:1px solid var(--text-muted);border-radius:8px;background:var(--text-2)}
.gt-grid-scrollbar input[type="range"]::-moz-range-track{height:10px;border:1px solid var(--border);border-radius:99px;background:var(--surface-3)}
.gt-grid-scrollbar input[type="range"]::-moz-range-thumb{width:32px;height:22px;border:1px solid var(--text-muted);border-radius:8px;background:var(--text-2)}
.gt-grid-scrollbar :is(button,input):focus-visible{outline:2px solid var(--p);outline-offset:2px}
.gt-grid-scrollbar__value{flex:0 0 34px;text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted)}
@media(max-width:520px){.gt-grid-scrollbar{gap:6px}.gt-grid-scrollbar__label{font-size:11px}.gt-grid-scrollbar__value{display:none}}
@media print{.gt-grid-scrollbar{display:none}.gt-grid-scroll-host{margin-bottom:0}}

/* Multiple employees, preserving existing per-profile report authorization. */
.rie-users{position:relative;min-width:220px;max-width:100%}
.rie-users summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;min-height:42px}
.rie-users summary::-webkit-details-marker{display:none}
.rie-users summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rie-users summary[aria-disabled="true"]{cursor:default;opacity:.65}
.rie-users summary:focus-visible{outline:2px solid var(--p);outline-offset:2px}
.rie-users__panel{position:absolute;z-index:1005;top:calc(100% + 6px);left:0;width:min(380px,calc(100vw - 40px));min-width:100%;padding:12px;display:grid;gap:8px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg)}
.rie-users:not([open])>.rie-users__panel{display:none}
.rie-users__actions{display:flex;gap:8px;flex-wrap:wrap}
.rie-users__list{max-height:260px;overflow-y:auto;overscroll-behavior:contain;display:grid;gap:3px}
.rie-users__option{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--r-sm);font-size:14px;font-weight:500;color:var(--text);text-transform:none;letter-spacing:normal;cursor:pointer}
.rie-users__option:hover{background:var(--p-soft)}
.rie-users__option input{flex:0 0 18px;width:18px;height:18px;accent-color:var(--text-2)}
.rie-users__panel small,.rie-users__empty{font-size:12px;color:var(--text-muted)}
@media(max-width:720px){.rie-users{min-width:0;width:100%}.rie-users__panel{width:100%;min-width:0}}
