:root {
    --academy-ink: var(--erp-text, #17203a);
    --academy-muted: var(--erp-muted, #718096);
    --academy-purple: var(--erp-primary, #2563eb);
    --academy-purple-dark: var(--erp-primary, #2563eb);
    --academy-line: var(--erp-border, #e8eaf2);
    --academy-bg: var(--erp-bg, #f6f7fb);
    --academy-surface: var(--erp-surface, #fff);
    --academy-soft: color-mix(in srgb, var(--academy-surface) 88%, var(--academy-purple) 12%);
    --academy-shadow: 0 10px 30px rgba(15, 23, 42, .055);
}

.academy-module { font-family: var(--erp-font-family, inherit); font-size: var(--erp-font-size, 15px); color: var(--academy-ink); }
.academy-module .app-content { background: var(--academy-bg); min-width: 0; width: 100%; }
.academy-page { width: 100%; max-width: none; min-height: calc(100vh - 64px); padding: clamp(18px, 2.1vw, 34px); color: var(--academy-ink); }
.academy-loading { grid-column: 1 / -1; padding: 32px; text-align: center; color: #9298a8; font-size: 11px; }
.academy-api-alert { position:fixed; inset-block-start:18px; left:50%; z-index:1200; width:min(760px,calc(100vw - 32px)); transform:translateX(-50%); margin:0; padding-block:13px; padding-inline:16px 42px; border-radius:12px; font-size:11px; border:1px solid #f0cbd0; background:#fff0f2; color:#9f3542; box-shadow:0 16px 38px rgba(15,23,42,.18); cursor:pointer; }
.academy-api-alert::after { content:"×"; position:absolute; inset-block-start:50%; inset-inline-end:15px; transform:translateY(-52%); font-size:1.2rem; font-weight:800; opacity:.72; }
.academy-api-alert.success { border-color: #bfe6cf; background: #edf9f2; color: #23764b; }
.academy-api-alert.warning { border-color: #f2d49b; background: #fff8e8; color: #925f12; }
.academy-sidebar {
    --academy-sidebar-readable: #fff;
    --academy-sidebar-muted-readable: color-mix(in srgb, #fff 72%, transparent);
    width: var(--erp-unified-sidebar-width, 272px); min-width: var(--erp-unified-sidebar-width, 272px); padding: 14px 12px; color: var(--academy-sidebar-readable);
    background: var(--erp-sidebar, #0f172a) !important;
    display: flex; flex-direction: column; position: relative; overflow: hidden auto;
    border-inline-end: 1px solid color-mix(in srgb, #fff 10%, transparent);
    box-shadow: 10px 0 34px rgba(15, 23, 42, .08);
}
.academy-sidebar::before {
    content: ""; position: absolute; width: 210px; height: 210px; border-radius: 50%;
    background: color-mix(in srgb, var(--erp-sidebar-active, var(--erp-primary)) 18%, transparent); filter: blur(12px); top: -115px; right: -80px;
}
.academy-brand {
    display: flex; align-items: center; gap: 12px; padding: 4px 10px 23px; color: white;
    text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.09); position: relative;
}
.academy-brand:hover { color: white; }
.academy-brand-mark {
    width: 43px; height: 43px; border-radius: 13px; display: grid; place-items: center;
    font-size: 21px; background: linear-gradient(135deg, color-mix(in srgb, var(--erp-sidebar-active) 78%, #fff 10%), var(--erp-sidebar-active)); box-shadow: 0 9px 24px color-mix(in srgb, var(--erp-sidebar-active) 30%, transparent);
}
.academy-brand > span:last-child { display: grid; line-height: 1.05; }
.academy-brand strong { font-size: 15px; letter-spacing: .7px; }
.academy-brand small { color: var(--academy-sidebar-muted-readable); font-size: 11px; letter-spacing: 2.8px; margin-top: 5px; }
.academy-nav { display: grid; gap: 4px; padding: 14px 0; position: relative; }
.academy-nav-label { color: var(--academy-sidebar-muted-readable); padding: 12px 12px 5px; font-size: .68rem; font-weight: 800; letter-spacing: .4px; }
.academy-nav a, .academy-nav-soon {
    min-height: 43px; display: flex; align-items: center; gap: 11px; padding: 9px 12px;
    border-radius: 11px; color: var(--academy-sidebar-readable) !important; text-decoration: none; font-size: .88rem; transition: .18s ease;
}
.academy-nav a span,.academy-nav a i { color: inherit !important; }
.academy-nav a i, .academy-nav-soon i { width: 20px; text-align: center; font-size: 16px; }
.academy-nav a:hover { color: #fff !important; background: color-mix(in srgb, #fff 12%, transparent); transform: translateX(-2px); }
.academy-nav a.active { color: #fff !important; background: var(--erp-sidebar-active, var(--erp-primary)) !important; box-shadow: 0 7px 18px rgba(5,4,25,.18); }
.academy-nav-soon { color: var(--academy-sidebar-muted-readable); }
.academy-nav-soon b { margin-inline-start: auto; color: #908cc4; font-size: 8px; border: 1px solid #504d75; border-radius: 10px; padding: 2px 6px; }
.academy-sidebar-foot {
    margin-top: auto; display: flex; align-items: center; gap: 10px; padding: 14px 12px; border-radius: 13px;
    background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.07);
}
.academy-sidebar-foot > i { color: #f6c453; font-size: 20px; }
.academy-sidebar-foot span { display: grid; }
.academy-sidebar-foot strong { color: #fff; font-size: .78rem; }
.academy-sidebar-foot small { color: var(--academy-sidebar-muted-readable); font-size: .68rem; margin-top: 3px; }
.academy-mobile-menu { display: none; }

.academy-hero {
    min-height: 190px; border-radius: 22px; padding: 30px 34px; margin-bottom: 18px; overflow: hidden;
    background: linear-gradient(112deg, color-mix(in srgb, var(--erp-primary) 70%, #111827), var(--erp-primary) 57%, var(--erp-accent)); color: white;
    display: flex; justify-content: space-between; align-items: center; gap: 30px; position: relative;
    box-shadow: 0 14px 36px rgba(62, 48, 150, .18);
}
.academy-hero::before, .academy-hero::after { content:""; position:absolute; border: 1px solid rgba(255,255,255,.11); border-radius: 50%; }
.academy-hero::before { width: 330px; height: 330px; left: -90px; top: -180px; }
.academy-hero::after { width: 210px; height: 210px; left: 80px; bottom: -180px; }
.academy-hero > * { position: relative; z-index: 1; }
.academy-kicker { color: var(--academy-purple); font-size: 11px; font-weight: 800; letter-spacing: .25px; }
.academy-hero .academy-kicker { display: inline-flex; gap: 7px; align-items: center; color: #d8d4ff; background: rgba(255,255,255,.1); padding: 6px 10px; border-radius: 20px; }
.academy-hero h1 { font-size: clamp(25px, 3vw, 37px); margin: 14px 0 8px; font-weight: 800; }
.academy-hero p { color: #dedcf8; max-width: 650px; margin: 0; font-size: 14px; }
.academy-hero-actions { display: flex; gap: 9px; flex-wrap: wrap; }
.academy-inline-select {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border: 1px solid var(--academy-border);
    border-radius: 14px;
    background: var(--academy-surface);
    color: var(--academy-muted);
    box-shadow: var(--academy-shadow-soft);
}
.academy-inline-select span { font-size: .78rem; white-space: nowrap; }
.academy-inline-select select {
    min-width: 130px;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--academy-text);
    font: inherit;
}
.academy-start-guide,.live-entry-guide { margin-bottom:18px; }
.academy-flow-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.academy-flow-cards article {
    display:grid; gap:8px; align-content:start; min-height:150px; padding:18px;
    border:1px solid var(--academy-line); border-radius:18px;
    background:linear-gradient(180deg,color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)),var(--academy-surface));
}
.academy-flow-cards i { width:42px; height:42px; display:grid; place-items:center; border-radius:15px; color:#fff; background:var(--erp-primary); font-size:18px; }
.academy-flow-cards strong { color:var(--academy-ink); font-size:1rem; }
.academy-flow-cards small { color:var(--academy-muted); line-height:1.8; }
.academy-flow-cards a { justify-self:start; color:var(--erp-primary); font-weight:800; text-decoration:none; }
.academy-btn {
    min-height: 41px; display: inline-flex; justify-content: center; align-items: center; gap: 8px; padding: 9px 16px;
    border: 0; border-radius: 11px; font-weight: 700; font-size: 13px; line-height:1.2; text-decoration: none; transition: .18s ease;
    white-space: nowrap;
}
.academy-btn:hover { transform: translateY(-1px); }
.academy-btn i,.academy-btn span { color:inherit; }
.academy-btn-primary { color:#fff!important; background:var(--erp-action-save,var(--erp-primary)); box-shadow:0 8px 18px color-mix(in srgb,var(--erp-primary) 18%,transparent); }
.academy-btn-primary:hover { color:#fff!important; }
.academy-btn-primary > * { color:inherit!important; opacity:1; }
.academy-btn-primary:disabled { color:#fff!important; opacity:.72; }
.academy-btn-light { color: #4d43b8; background: #fff; }
.academy-btn-light:hover { color: #352b99; }
.academy-btn-muted { color: #5f6678; background: #eaecf2; }
.academy-btn-danger { color:#fff!important; background:var(--erp-danger); box-shadow:0 8px 18px color-mix(in srgb,var(--erp-danger) 18%,transparent); }
.academy-btn-danger:hover { color:#fff!important; }

.academy-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 13px; margin-bottom: 17px; }
.academy-kpis article {
    background: var(--academy-surface); border: 1px solid var(--academy-line); border-radius: var(--erp-radius, 16px); padding: 17px;
    display: flex; align-items: center; gap: 13px; box-shadow: var(--academy-shadow);
}
.kpi-icon { width: 45px; height: 45px; border-radius: 13px; display: grid; place-items: center; font-size: 19px; flex: 0 0 auto; }
.kpi-icon.violet,.kpi-icon.blue,.kpi-icon.cyan,.kpi-icon.green { background:color-mix(in srgb,var(--erp-primary) 9%,var(--academy-surface)); color:var(--erp-primary); }
.academy-kpis article > div { display:grid; }
.academy-kpis small { color: var(--academy-muted); font-size: 11px; }
.academy-kpis strong { font-size: 24px; line-height: 1.2; }
.academy-kpis em { color:#9aa1b1; font-size: 9px; font-style:normal; }

.academy-dashboard-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:15px; width:100%; }
.academy-span-12 { grid-column:span 12; }.academy-span-8 { grid-column:span 8; }.academy-span-7 { grid-column:span 7; }.academy-span-5 { grid-column:span 5; }.academy-span-4 { grid-column:span 4; }
.academy-panel { background:var(--academy-surface); border:1px solid var(--academy-line); border-radius:var(--erp-radius, 17px); padding:18px; box-shadow:var(--academy-shadow); min-width:0; }
.academy-panel-head { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-bottom:15px; }
.academy-panel-head h2 { margin:2px 0 0; font-size:16px; font-weight:800; }
.academy-panel-head > i { color:var(--erp-primary); font-size:20px; }
.academy-panel-head a { color:var(--erp-link); font-size:11px; text-decoration:none; font-weight:700; }
.panel-eyebrow { color:#9ba1b0; font-size:9px; font-weight:700; }
.batch-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:11px; }
.batch-card { padding:14px; border:1px solid var(--academy-line); background:var(--academy-surface); border-radius:14px; text-decoration:none; color:inherit; transition:.2s ease; }
.batch-card:hover { color:inherit; border-color:#cfc9f5; transform:translateY(-2px); box-shadow:0 7px 18px rgba(54,48,112,.07); }
.batch-card-top,.batch-meta,.occupancy-head { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.batch-code { color:var(--erp-muted); font-size:9px; font-weight:800; }
.batch-card h3 { font-size:13px; margin:12px 0 6px; }
.batch-card p { color:#808798; font-size:10px; margin:0 0 12px; }.batch-card p i { color:#7469d4; margin-inline-end:4px; }
.batch-meta { color:#838a9a; font-size:9px; border-top:1px solid #f0f1f5; padding-top:9px; }
.occupancy-head { margin:11px 0 5px; color:#7b8292; font-size:9px; }.occupancy-head strong { color:#373153; }
.academy-progress,.mini-progress { height:5px; border-radius:10px; background:#eeeff4; overflow:hidden; }
.academy-progress i,.mini-progress i { display:block; height:100%; border-radius:inherit; background:var(--erp-primary); }

.status { display:inline-flex; align-items:center; justify-content:center; padding:4px 8px; border-radius:20px; font-size:9px; white-space:nowrap; color:#4a5570; background:#eef0f5; font-weight:700; }
.status-running,.status-started,.status-confirmed,.status-completed { color:#21764b; background:#e7f7ee; }
.status-registration,.status-reserved { color:#2c68a1; background:#e8f3fc; }
.status-planning,.status-inquiry { color:#806516; background:#fff5d7; }
.status-cancelled,.status-closed { color:#a53d48; background:#fdebed; }
.finance-card { background:linear-gradient(145deg,#fff,#faf9ff); }
.finance-total { padding:17px; border-radius:14px; color:white; background:linear-gradient(120deg,#4d43ae,#7769df); margin-bottom:14px; }
.finance-total small { display:block; color:#dcd8ff; font-size:10px; }.finance-total strong { font-size:29px; margin-inline-end:5px; }.finance-total span { font-size:10px; }
.finance-meter { display:flex; justify-content:space-between; padding:12px 2px; border-bottom:1px dashed #e4e5ec; font-size:11px; color:#72798b; }
.finance-meter strong { color:#28324a; }.finance-meter strong.negative { color:#b53f4b; }
.finance-stats article:nth-child(2) strong { color:#168055; }.finance-stats article:nth-child(3) strong { color:#bf6c26; }
.status-value { font-size:14px!important; color:var(--erp-primary)!important; }
.academy-finance-note { display:flex; gap:8px; padding:11px; border-radius:10px; background:#f1efff; color:#6d6698; font-size:9px; margin-top:13px; }
.academy-document-stack { display:grid; gap:11px; }
.document-card { display:grid; grid-template-columns:42px minmax(0,1fr); gap:11px; padding:13px; border:1px solid var(--academy-line); border-radius:15px; background:var(--academy-surface); box-shadow:0 4px 14px rgba(15,23,42,.028); }
.document-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; color:var(--erp-primary); background:var(--academy-soft); font-size:18px; }
.document-card > div { min-width:0; }
.document-card strong { display:block; color:var(--academy-ink); font-size:.92rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.document-card small { display:block; color:var(--academy-muted); font-size:.76rem; margin-top:4px; }
.document-actions { grid-column:1/-1; display:flex; gap:7px; flex-wrap:wrap; justify-content:flex-end; padding-top:4px; }
.document-actions .academy-btn { min-height:34px; padding:7px 12px; border-radius:10px; font-size:.78rem; }
.receipt-context-card { display:grid; gap:12px; margin-bottom:14px; padding:13px; border:1px solid var(--academy-line); border-radius:15px; background:color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)); }
.receipt-context-head { display:grid; grid-template-columns:42px minmax(0,1fr); gap:10px; align-items:center; }
.receipt-context-head > span { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; color:#fff; background:var(--erp-primary); box-shadow:0 8px 18px color-mix(in srgb,var(--erp-primary) 16%,transparent); }
.receipt-context-head strong { display:block; font-size:.94rem; color:var(--academy-ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.receipt-context-head small { display:block; margin-top:3px; color:var(--academy-muted); font-size:.76rem; }
.receipt-context-lines { display:grid; gap:7px; }
.receipt-context-lines div { display:flex; justify-content:space-between; gap:10px; padding:8px 0; border-top:1px dashed color-mix(in srgb,var(--academy-line) 86%,transparent); color:var(--academy-muted); font-size:.78rem; }
.receipt-context-lines strong { color:var(--academy-ink); text-align:end; }
.receipt-voucher-dialog { width:min(820px,calc(100vw - 28px)); }
.receipt-voucher-dialog .receipt-context-card {
    margin:18px 22px 0;
    grid-template-columns:minmax(220px,.8fr) minmax(0,1.8fr);
    align-items:center;
}
.receipt-voucher-dialog .receipt-context-lines { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
.receipt-voucher-dialog .receipt-context-lines div { min-width:0; }
.receipt-voucher-dialog .receipt-context-lines strong { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.academy-table-wrap { overflow:auto; }
.academy-table { width:100%; border-collapse:collapse; font-size:11px; min-width:660px; }
.academy-table th { color:#8a91a1; background:#fafafd; font-size:9px; text-align:right; padding:10px 12px; border-block:1px solid #eef0f4; white-space:nowrap; }
.academy-table td { padding:12px; border-bottom:1px solid #eff0f4; color:#50596d; vertical-align:middle; }
.academy-table td > strong,.academy-table td strong { color:#283149; }
.table-sub { display:block; color:#9aa1af; font-size:9px; margin-top:3px; }
.student-cell { display:flex; align-items:center; gap:9px; }
.student-cell > i { width:31px; height:31px; flex:0 0 auto; border-radius:10px; display:grid; place-items:center; background:var(--academy-soft); color:var(--erp-primary); font-style:normal; font-weight:800; }
.student-cell > span { display:grid; }.student-cell small { color:#9ca2af; font-size:8px; }
.table-empty { text-align:center !important; color:#a1a6b2 !important; padding:32px !important; }
.money-positive { color:#168055 !important; font-weight:700; }.money-due { color:#bf6c26 !important; font-weight:700; }
.row-action { min-width:31px; height:31px; display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:0 8px; border:0; border-radius:8px; color:var(--erp-link); background:var(--academy-soft); text-decoration:none; white-space:nowrap; }
.row-actions { display:flex; gap:5px; flex-wrap:wrap; }
.row-action.primary,
.academy-module a.row-action.primary,
.academy-module button.row-action.primary {
    color:#fff !important;
    background:var(--erp-primary);
}
.row-action.primary i,
.row-action.primary::before,
.row-action.primary::after { color:inherit !important; }
.row-action.primary:hover,
.row-action.primary:focus-visible {
    color:#fff !important;
    background:color-mix(in srgb,var(--erp-primary) 84%,#000);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--erp-primary) 20%,transparent);
}
.row-action[title]::after { content:attr(title); font-size:.71rem; font-weight:800; line-height:1; }
.row-action.danger { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--academy-surface)); }
.instructor-payable-flow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:0 16px 14px; }
.instructor-payable-flow > span { display:grid; grid-template-columns:30px 1fr; gap:3px 9px; align-items:center; padding:10px 12px; border:1px solid var(--academy-line); border-radius:12px; color:var(--academy-ink); background:var(--academy-soft); font-size:.76rem; font-weight:800; }
.instructor-payable-flow b { grid-row:1/3; display:grid; place-items:center; width:30px; height:30px; border-radius:9px; color:#fff; background:var(--erp-primary); }
.instructor-payable-flow small { color:var(--academy-muted); font-size:.66rem; font-weight:600; }
.academy-workspace-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:12px; margin-bottom:15px; }
.academy-workspace-stats article { display:grid; padding:15px 17px; border:1px solid var(--academy-line); border-radius:14px; background:linear-gradient(180deg,color-mix(in srgb,var(--academy-surface) 96%,var(--erp-primary) 4%),var(--academy-surface)); box-shadow:0 4px 16px rgba(15,23,42,.035); }
.academy-workspace-stats small { color:#8b92a2; font-size:9px; }.academy-workspace-stats strong { font-size:22px; color:#302b5f; }
.batch-lifecycle-panel { margin-bottom:15px; padding:16px; border:1px solid var(--academy-line); border-radius:22px; background:linear-gradient(135deg,var(--academy-surface),color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface))); box-shadow:var(--academy-shadow-soft); }
.batch-lifecycle-head { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:14px; padding-bottom:14px; border-bottom:1px solid var(--academy-line); }
.batch-lifecycle-head > span { width:52px; height:52px; display:grid; place-items:center; border-radius:18px; color:var(--erp-primary); background:var(--academy-soft); font-size:1.25rem; }
.batch-lifecycle-head h2 { margin:2px 0 3px; color:var(--academy-ink); font-size:1.08rem; }
.batch-lifecycle-head small,.batch-lifecycle-head p { margin:0; color:var(--academy-muted); font-size:.78rem; line-height:1.65; }
.batch-lifecycle-head.lifecycle-running > span,.batch-lifecycle-head.lifecycle-closed > span { color:var(--erp-success); background:color-mix(in srgb,var(--erp-success) 12%,var(--academy-surface)); }
.batch-lifecycle-head.lifecycle-completed > span { color:#7c3aed; background:color-mix(in srgb,#7c3aed 10%,var(--academy-surface)); }
.batch-lifecycle-steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-top:14px; }
.batch-lifecycle-steps article { display:flex; gap:8px; align-items:flex-start; min-width:0; padding:10px; border:1px solid var(--academy-line); border-radius:14px; background:var(--academy-bg); opacity:.78; }
.batch-lifecycle-steps article i { width:24px; height:24px; display:grid; place-items:center; flex:0 0 auto; border-radius:999px; color:var(--academy-muted); background:var(--academy-surface); font-style:normal; font-size:.72rem; }
.batch-lifecycle-steps article strong { display:block; color:var(--academy-ink); font-size:.78rem; }
.batch-lifecycle-steps article small { display:block; color:var(--academy-muted); font-size:.68rem; line-height:1.45; }
.batch-lifecycle-steps article.done,.batch-lifecycle-steps article.active { opacity:1; border-color:color-mix(in srgb,var(--erp-primary) 20%,var(--academy-line)); background:color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)); }
.batch-lifecycle-steps article.done i,.batch-lifecycle-steps article.active i { color:#fff; background:var(--erp-primary); }
.batch-lifecycle-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; margin-top:14px; }
.academy-tabs { display:flex; gap:6px; padding:6px; margin-bottom:14px; border:1px solid var(--academy-line); border-radius:15px; background:var(--academy-surface); width:100%; max-width:100%; overflow:auto; box-shadow:var(--academy-shadow); }
.academy-tabs button { border:0; border-radius:11px; padding:10px 14px; background:transparent; color:#747b8d; font-size:11px; font-weight:700; white-space:nowrap; display:inline-flex;align-items:center;gap:7px; }
.academy-tabs button.active { background:var(--erp-primary); color:#fff; box-shadow:0 5px 12px color-mix(in srgb,var(--erp-primary) 18%,transparent); }
.academy-tab-panel { display:none; }.academy-tab-panel.active { display:block; }
.academy-workspace-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:15px; width:100%; }
.compact-form { display:grid; gap:11px; }.compact-form label { display:grid; gap:5px; color:#60687a; font-size:9px; font-weight:700; }
.compact-form input,.compact-form select,.compact-form textarea,.attendance-select,.attendance-note { width:100%; min-height:38px; padding:7px 9px; border:1px solid #dfe2ea; border-radius:9px; background:#fff; color:#394158; font-size:10px; }
.compact-form-row { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.session-timeline { display:grid; gap:9px; }
.session-item { display:grid; grid-template-columns:38px 1fr auto auto; align-items:center; gap:12px; padding:12px; border:1px solid var(--academy-line); border-radius:14px; background:var(--academy-surface); box-shadow:0 3px 12px rgba(15,23,42,.025); transition:.18s ease; }
.session-item:hover { transform:translateY(-1px); border-color:color-mix(in srgb,var(--erp-primary) 24%,var(--academy-line)); background:color-mix(in srgb,var(--erp-primary) 3%,var(--academy-surface)); }
.session-sequence { width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:var(--academy-soft);color:var(--erp-primary);font-weight:800; }
.session-item > div { display:grid; }.session-item > div strong { font-size:11px; }.session-item > div small { color:#9298a7;font-size:9px;margin-top:3px; }
.session-attendance { color:#70778a;font-size:9px; }.session-item > button { border:0;background:transparent;color:var(--erp-link);font-size:9px;font-weight:700; }
.attendance-session-list { display:grid;gap:7px; }.attendance-session-list > button { display:grid;grid-template-columns:31px 1fr auto;align-items:center;gap:8px;text-align:start;border:1px solid #e8e9ef;border-radius:12px;background:#fff;padding:10px;color:#4f5769; }
.attendance-session-list > button.active { border-color:var(--erp-primary);background:var(--academy-soft); }.attendance-session-list > button > span { width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:var(--academy-soft);color:var(--erp-primary);font-weight:800; }
.attendance-session-list > button div { display:grid; }.attendance-session-list > button strong { font-size:10px; }.attendance-session-list > button small,.attendance-session-list > button em { color:#969cab;font-size:8px;font-style:normal; }
.attendance-command-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:11px 14px; border-top:1px solid var(--academy-line); border-bottom:1px solid var(--academy-line); background:color-mix(in srgb,var(--erp-primary) 3%,var(--academy-surface)); }
.attendance-live-summary,.attendance-bulk-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.attendance-live-summary span { padding:6px 9px; border-radius:999px; color:var(--academy-muted); background:var(--academy-surface); font-size:.74rem; box-shadow:inset 0 0 0 1px var(--academy-line); }
.attendance-live-summary strong { color:var(--academy-ink); }
.attendance-bulk-actions button { min-height:34px; padding:6px 10px; border:1px solid var(--academy-line); border-radius:9px; color:var(--academy-ink); background:var(--academy-surface); font-size:.74rem; }
.instructor-portal-layout { display:grid; gap:18px; }
.instructor-batch-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(340px,1fr)); gap:14px; padding:16px; }
.instructor-batch-card { display:grid; gap:14px; min-width:0; padding:16px; border:1px solid var(--academy-line); border-radius:16px; background:var(--academy-surface); box-shadow:0 7px 22px rgba(15,23,42,.04); }
.instructor-batch-card > header { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; }
.instructor-batch-card > header span { color:var(--erp-primary); font-size:.72rem; font-weight:800; }
.instructor-batch-card h3 { margin:4px 0; color:var(--academy-ink); font-size:1rem; }
.instructor-batch-card header small { color:var(--academy-muted); font-size:.74rem; }
.instructor-batch-card > header > strong { display:grid; min-width:60px; text-align:center; color:var(--erp-primary); font-size:1.1rem; }
.instructor-batch-card > header > strong small { font-size:.65rem; }
.instructor-batch-card > section { display:grid; gap:8px; padding-top:11px; border-top:1px dashed var(--academy-line); }
.instructor-batch-card > section > b { color:var(--academy-ink); font-size:.8rem; }
.portal-chip-wrap,.instructor-student-list { display:flex; gap:7px; flex-wrap:wrap; }
.instructor-student-chip { display:grid; grid-template-columns:28px auto; column-gap:7px; align-items:center; padding:6px 9px; border:1px solid var(--academy-line); border-radius:11px; background:var(--academy-soft); }
.instructor-student-chip i { grid-row:1/3; width:27px; height:27px; display:grid; place-items:center; border-radius:9px; color:var(--erp-primary); background:var(--academy-surface); font-style:normal; font-weight:800; }
.instructor-student-chip b { color:var(--academy-ink); font-size:.73rem; }
.instructor-student-chip small { color:var(--academy-muted); font-size:.65rem; }
.exam-card-actions { display:flex; justify-content:flex-end; gap:7px; }
.exam-card-actions .academy-btn { min-height:34px; padding:7px 10px; }
.exam-live-readiness { grid-column:1/-1; display:flex; align-items:center; gap:10px; padding:10px 12px; border:1px solid var(--academy-line); border-radius:14px; background:var(--academy-bg); }
.exam-live-readiness > i { width:34px; height:34px; display:grid; place-items:center; flex:0 0 auto; border-radius:12px; color:var(--erp-primary); background:var(--academy-soft); }
.exam-live-readiness > span { display:grid; gap:2px; }
.exam-live-readiness strong { color:var(--academy-ink); font-size:.8rem; }
.exam-live-readiness small { color:var(--academy-muted); font-size:.72rem; }
.exam-live-readiness.is-blocked > i { color:var(--erp-warning); background:color-mix(in srgb,var(--erp-warning) 10%,var(--academy-surface)); }
.form-guidance { display:block; padding:9px 10px; border-radius:10px; color:var(--academy-muted); background:var(--academy-soft); line-height:1.7; font-size:.73rem; }
.academy-divider { border:0;border-top:1px solid #e8eaf0;margin:18px 0; }
.learning-card-list { display:grid;gap:9px; }.learning-card { display:grid;grid-template-columns:40px 1fr auto;gap:11px;align-items:center;padding:12px;border:1px solid var(--academy-line);border-radius:14px;background:var(--academy-surface);box-shadow:0 3px 12px rgba(15,23,42,.025); }
.learning-card:hover { border-color:color-mix(in srgb,var(--erp-primary) 24%,var(--academy-line));background:color-mix(in srgb,var(--erp-primary) 3%,var(--academy-surface)); }
.learning-icon,.learning-icon.exam { width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--academy-soft);color:var(--erp-primary);font-size:16px; }
.learning-card > div { display:grid; }.learning-card strong { font-size:11px; }.learning-card small { color:#9298a7;font-size:9px;margin-top:4px; }
.exam-card-detail { grid-template-columns:40px 1fr auto; }
.exam-question-list { grid-column:1/-1; display:grid; gap:7px; padding-top:10px; border-top:1px dashed var(--academy-line); }
.exam-question-row { display:grid; grid-template-columns:28px minmax(0,1fr); gap:8px; align-items:start; padding:8px; border-radius:10px; background:color-mix(in srgb,var(--academy-surface) 92%,var(--academy-bg)); }
.exam-question-row > b { width:26px;height:26px;display:grid;place-items:center;border-radius:9px;color:var(--erp-primary);background:var(--academy-soft);font-size:.76rem; }
.exam-question-row span { display:grid; min-width:0; }
.exam-question-row span strong { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.exam-grading-form { grid-column:1/-1; display:grid; gap:9px; padding-top:10px; border-top:1px dashed var(--academy-line); }
.exam-grading-form .exam-question-row { grid-template-columns:36px minmax(0,1fr) 120px; align-items:center; }
.exam-grading-form input.form-control { min-height:38px; text-align:center; }
.mini-progress { width:65px; margin-top:5px; height:4px; }
.upcoming-list { display:grid; gap:7px; }
.upcoming-list a { display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:10px; padding:9px; color:inherit; text-decoration:none; border-radius:11px; }
.upcoming-list a:hover { background:#f7f6fe; }
.upcoming-list time { display:grid; place-items:center; border-radius:10px; background:var(--academy-soft); color:var(--erp-primary); padding:5px; line-height:1; }
.upcoming-list time strong { font-size:15px; }.upcoming-list time small { font-size:8px; margin-top:3px; }
.upcoming-list > a > span { display:grid; }.upcoming-list > a > span strong { font-size:11px; }.upcoming-list > a > span small { color:#969cac; font-size:9px; }
.upcoming-list em { font-size:9px; font-style:normal; color:#6f7690; }

.academy-page-head {
    display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:20px;
    padding:20px 22px; border:1px solid var(--academy-line); border-radius:var(--erp-radius, 18px);
    background:linear-gradient(135deg, var(--academy-surface), var(--academy-soft));
    box-shadow:var(--academy-shadow);
}
.academy-page-head h1 { font-size:clamp(1.45rem, 1.8vw, 2rem); margin:5px 0 4px; font-weight:800; }
.academy-page-head p { margin:0; color:var(--academy-muted); font-size:.86rem; max-width:820px; }
.academy-page-head.compact { align-items:flex-start; }
.back-link { display:inline-flex; align-items:center; gap:5px; color:var(--erp-link); text-decoration:none; font-size:11px; font-weight:700; margin-bottom:7px; }
.academy-toolbar { display:flex; align-items:center; gap:8px; padding-bottom:16px; flex-wrap:wrap; width:100%; }
.academy-toolbar button { height:38px; padding:0 15px; border:0; border-radius:9px; color:white; background:var(--erp-primary); font-size:11px; }
.academy-toolbar select { height:38px; min-width:180px; padding:0 10px; border:1px solid #e1e4eb; border-radius:9px; color:#596176; background:white; font-size:11px; }
.academy-search { width:min(520px,100%); height:38px; display:flex; align-items:center; gap:8px; border:1px solid #e1e4eb; border-radius:9px; padding:0 11px; background:var(--academy-surface); }
.academy-search i { color:#9da3af; }.academy-search input { border:0; outline:0; width:100%; font-size:11px; background:transparent; }
.toolbar-count { margin-inline-start:auto; color:#9aa0ae; font-size:10px; }
.course-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:14px; }
.course-card { display:flex; flex-direction:column; padding:17px; border:1px solid var(--academy-line); background:var(--academy-surface); border-radius:15px; color:inherit; text-decoration:none; transition:.2s ease; position:relative; overflow:hidden; }
.course-card:hover { color:inherit; transform:translateY(-3px); box-shadow:0 10px 25px rgba(31,33,60,.07); border-color:#d7d3f2; }
.course-category { align-self:flex-start; color:var(--erp-primary); background:var(--academy-soft); padding:4px 8px; border-radius:14px; font-size:8px; font-weight:800; }
.course-icon { width:43px; height:43px; display:grid; place-items:center; border-radius:13px; color:var(--erp-primary); background:var(--academy-soft); font-size:19px; margin:16px 0 10px; }
.course-card h2 { font-size:15px; margin:0 0 6px; }.course-card p { color:#858b9a; font-size:10px; line-height:1.7; min-height:34px; }
.course-stats { display:flex; gap:12px; color:#757d90; font-size:9px; margin:11px 0 15px; }.course-stats i { color:var(--erp-primary); }
.course-card footer { margin-top:auto; padding-top:12px; border-top:1px solid #eef0f3; display:flex; justify-content:space-between; align-items:center; font-size:9px; color:#858b99; }
.course-card footer strong { color:#2f3850; font-size:12px; }
.portal-course-card { min-height:100%; }
.portal-course-sections { display:grid; gap:10px; margin:12px 0; }
.portal-course-sections section { display:grid; gap:7px; padding:10px; border:1px solid var(--academy-line); border-radius:12px; background:color-mix(in srgb,var(--academy-surface) 92%,var(--academy-bg)); }
.portal-course-sections section > strong { font-size:.82rem; color:var(--academy-ink); }
.portal-chip { display:inline-flex; align-items:center; gap:6px; width:100%; color:var(--academy-muted); font-size:.75rem; line-height:1.5; }
.portal-chip i { color:var(--erp-primary); }
.portal-empty-line { color:var(--academy-muted); font-size:.75rem; }
.portal-action-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; padding:8px; border-radius:10px; background:var(--academy-surface); border:1px solid color-mix(in srgb,var(--academy-line) 88%,transparent); }
.portal-action-row > span { display:grid; min-width:0; color:var(--academy-ink); font-weight:800; font-size:.78rem; }
.portal-action-row > span small { color:var(--academy-muted); font-weight:600; margin-top:3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.portal-action-row i { color:var(--erp-primary); margin-inline-end:4px; }
.portal-choice-list { display:grid; gap:8px; }
.portal-question > label { font-size:.9rem; line-height:1.7; }
.portal-exam-dialog { width:min(860px,calc(100vw - 28px)); }
.portal-evaluation-callout { border-color:color-mix(in srgb,var(--erp-primary) 18%,var(--academy-line)); background:color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)); }
.quality-score-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:12px; }
.quality-score-card { display:grid; grid-template-columns:42px minmax(0,1fr); gap:10px; align-items:center; padding:14px; border:1px solid var(--academy-line); border-radius:16px; background:linear-gradient(145deg,color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)),var(--academy-surface)); box-shadow:0 8px 22px rgba(15,23,42,.035); }
.quality-score-card > i { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; color:var(--erp-primary); background:color-mix(in srgb,var(--erp-primary) 10%,var(--academy-surface)); }
.quality-score-card span { display:grid; gap:3px; min-width:0; }
.quality-score-card small { color:var(--academy-muted); font-size:.72rem; font-weight:800; }
.quality-score-card strong { color:var(--academy-ink); font-size:1.35rem; line-height:1.1; }
.quality-score-card em { color:var(--academy-muted); font-size:.68rem; font-style:normal; line-height:1.6; }
.people-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:13px; }
.person-card { display:flex; flex-direction:column; align-items:center; text-align:center; padding:20px 14px 13px; border:1px solid var(--academy-line); background:var(--academy-surface); border-radius:15px; color:inherit; text-decoration:none; position:relative; transition:.2s; }
.person-card:hover { color:inherit; transform:translateY(-2px); box-shadow:0 8px 20px rgba(31,33,60,.06); }
.person-avatar { width:57px; height:57px; display:grid; place-items:center; border-radius:18px; background:linear-gradient(145deg,#e3deff,#f1efff); color:#5e52c6; font-size:22px; font-weight:800; }
.person-state { width:10px;height:10px;border-radius:50%;background:#bbb;position:absolute;top:62px;margin-inline-start:42px;border:2px solid white; }.person-state.active{background:#32ad72;}
.person-card h2 { font-size:14px; margin:11px 0 3px; }.person-card p { color:#8c92a1; font-size:9px; min-height:14px; }
.person-card > div { display:grid; grid-template-columns:1fr 1fr; width:100%; border-block:1px solid #eff0f3; margin:8px 0; }
.person-card > div span { display:grid; padding:9px 4px; }.person-card > div span+span { border-right:1px solid #eff0f3; }
.person-card > div i { color:#756ad5; }.person-card > div strong { font-size:12px; }.person-card > div small { color:#999fad; font-size:8px; }
.person-card footer { display:flex; justify-content:space-between; width:100%; color:#969ca9; font-size:9px; padding-top:4px; }.person-card footer i { color:var(--erp-link); }
.academy-empty { grid-column:1/-1; text-align:center; padding:38px; color:#9399a8; }
.academy-empty > i { font-size:32px; color:var(--erp-primary); }.academy-empty h3 { color:var(--academy-ink); font-size:16px; margin:10px 0 5px; }.academy-empty p { font-size:11px; }.academy-empty a { color:var(--erp-link); font-size:11px; font-weight:700; }

.academy-form { max-width:none; width:100%; }
.academy-form-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,340px); gap:18px; align-items:start; width:100%; }
.academy-form-layout:not(:has(.academy-options-panel:not([hidden]))) { grid-template-columns:1fr; }
.academy-form-main-panel { min-width:0; width:100%; overflow:hidden; }
.academy-options-panel { position:sticky; top:18px; padding:18px; background:linear-gradient(180deg,color-mix(in srgb,var(--academy-surface) 96%,var(--erp-primary) 4%),var(--academy-surface)); }
.academy-options-head { display:flex; gap:12px; align-items:center; padding-bottom:15px; margin-bottom:14px; border-bottom:1px solid var(--academy-line); }
.academy-options-head > span { width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--erp-primary);color:#fff;font-size:17px;box-shadow:0 10px 24px color-mix(in srgb,var(--erp-primary) 18%,transparent); }
.academy-options-head h2 { margin:0 0 3px;font-size:15px;font-weight:800; }
.academy-options-head p { margin:0;color:var(--academy-muted);font-size:.78rem;line-height:1.55; }
.academy-options-list { display:grid; gap:10px; }
.form-section-head { display:flex; gap:12px; align-items:center; padding-bottom:15px; border-bottom:1px solid #eef0f4; margin-bottom:18px; }
.form-section-head > span { width:41px;height:41px;border-radius:12px;display:grid;place-items:center;background:var(--academy-soft);color:var(--erp-primary);font-size:17px; }
.form-section-head h2 { font-size:15px;margin:0 0 3px; }.form-section-head p { color:#9197a5;font-size:9px;margin:0; }
.academy-form-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:17px; }
.field-wrap { display:flex; flex-direction:column; min-width:0; }.field-wide { grid-column:1/-1; }
.field-wrap > label { color:#4e5669; font-size:10px; font-weight:700; margin-bottom:6px; }.field-wrap > label b { color:#c64d58; }
.field-wrap .form-control,.field-wrap .form-select {
    min-height:42px; border:1px solid #dfe2ea; border-radius:10px; padding:9px 11px; font-size:11px; color:#394158; background-color:#fff;
}
.field-wrap textarea.form-control { min-height:90px; }.field-wrap select[multiple] { min-height:110px; }
.field-wrap .form-control:focus,.field-wrap .form-select:focus { border-color:var(--erp-primary); box-shadow:0 0 0 3px color-mix(in srgb,var(--erp-primary) 10%,transparent); }
.field-wrap > small { color:#9ba1af;font-size:8px;margin-top:4px; }.field-error { color:#b94450;font-size:9px;font-style:normal;margin-top:4px; }
.field-checkbox { justify-content:flex-end; }
.form-section-inline { grid-column:1/-1;border:1px solid rgba(20,83,45,.12);border-radius:18px;background:linear-gradient(135deg,rgba(236,253,245,.85),rgba(255,255,255,.92));padding:16px 18px; }
.form-section-inline h3 { margin:0 0 6px;font-size:1rem;color:#14532d; }
.form-section-inline p { margin:0;color:#64748b;font-size:.9rem; }
.switch-field { display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 13px;border:1px solid var(--academy-line);border-radius:10px;margin:0!important;min-height:44px;background:var(--academy-surface);cursor:pointer; }
.switch-field > span { min-width:0; line-height:1.5; }
.switch-field .form-check-input { flex:0 0 auto;margin:0;width:38px;height:20px;cursor:pointer; }
.option-card { min-height:58px;border-radius:16px;padding:13px 14px;background:var(--academy-surface);box-shadow:0 4px 14px rgba(15,23,42,.025); }
.option-card:hover { border-color:color-mix(in srgb,var(--erp-primary) 24%,var(--academy-line));background:color-mix(in srgb,var(--erp-primary) 3%,var(--academy-surface)); }
.option-card .form-check-input {
    appearance:none;-webkit-appearance:none;width:30px;height:30px;border-radius:999px;
    border:1px solid color-mix(in srgb,var(--academy-muted) 20%,var(--academy-line));
    background:color-mix(in srgb,var(--academy-muted) 6%,var(--academy-surface));
    display:grid;place-items:center;box-shadow:none;transition:.18s ease;
}
.option-card .form-check-input::before { content:""; width:10px;height:10px;border-radius:50%;background:transparent;transition:.18s ease; }
.option-card .form-check-input:checked {
    border-color:var(--erp-primary)!important;background:var(--erp-primary)!important;
    box-shadow:0 8px 18px color-mix(in srgb,var(--erp-primary) 18%,transparent);
}
.option-card .form-check-input:checked::before {
    content:"✓";width:auto;height:auto;background:transparent;color:#fff;font-size:15px;font-weight:900;line-height:1;
}
.option-card > span { font-weight:800;color:var(--academy-ink); }
[dir="rtl"] .switch-field > span { order:1; text-align:right; }
[dir="rtl"] .switch-field .form-check-input { order:2; margin-inline-start:auto; }
[dir="ltr"] .switch-field > span { order:1; text-align:left; }
[dir="ltr"] .switch-field .form-check-input { order:2; margin-inline-start:auto; }
.academy-module .form-check-input:checked { background-color:var(--erp-primary)!important;border-color:var(--erp-primary)!important; }
.switch-field:has(.form-check-input:focus) { border-color:var(--erp-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--erp-primary) 12%,transparent); }
.switch-field:has(.form-check-input:checked) { border-color:color-mix(in srgb,var(--erp-primary) 35%,var(--academy-line));background:color-mix(in srgb,var(--erp-primary) 5%,var(--academy-surface)); }
.form-alert { background:#fdebed;color:#9c3742;border-radius:10px;padding:12px;margin-bottom:12px;font-size:10px; }
.form-actions {
    display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;
    margin:22px -18px -18px;padding:14px 18px;
    border-top:1px solid var(--academy-line);
    background:color-mix(in srgb,var(--academy-surface) 94%,var(--academy-bg));
    border-radius:0 0 var(--erp-radius,17px) var(--erp-radius,17px);
    position:sticky;bottom:0;z-index:2;
}
.academy-form-layout:not(:has(.academy-options-panel:not([hidden]))) .academy-form-grid { grid-template-columns:repeat(auto-fit,minmax(360px,1fr)); }

.academy-head-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.report-actions { margin-inline-start:0; }

@media print {
    .academy-sidebar,.academy-mobile-menu,.academy-sidebar-backdrop,.academy-page-head,.academy-search,.report-actions { display:none!important; }
    .academy-module .app-content,.academy-page { background:#fff!important; padding:0!important; }
    .academy-panel,.academy-workspace-stats article { box-shadow:none!important; border-color:#d8dde8!important; }
    .academy-table { min-width:0; font-size:10px; }
}

/* Managed course taxonomy */
.taxonomy-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; width:100%; }
.reference-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; width:100%; }
.reference-panel,.taxonomy-panel {
    min-height:360px;
    padding:16px;
    background:linear-gradient(180deg,color-mix(in srgb,var(--academy-surface) 96%,var(--erp-primary) 4%),var(--academy-surface));
}
.taxonomy-heading {
    display:flex; align-items:center; justify-content:space-between; gap:14px; padding:0 0 14px; margin-bottom:12px;
    border-bottom:1px solid color-mix(in srgb,var(--academy-line) 82%,transparent);
}
.taxonomy-heading > div { display:grid; grid-template-columns:auto 1fr; column-gap:11px; align-items:center; min-width:0; }
.taxonomy-heading h2 { margin:0; font-size:1rem; color:var(--erp-title, var(--academy-ink)); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.taxonomy-heading p { grid-column:2; margin:3px 0 0; color:var(--academy-muted); font-size:.78rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.taxonomy-icon { grid-row:1/3; width:40px; height:40px; display:grid; place-items:center; border-radius:14px; color:var(--erp-primary); background:color-mix(in srgb,var(--erp-primary) 10%,var(--academy-surface)); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--erp-primary) 10%,transparent); }
.taxonomy-icon.level { color:var(--erp-primary); background:color-mix(in srgb,var(--erp-primary) 10%,var(--academy-surface)); }
.taxonomy-add-btn { min-width:92px; box-shadow:0 8px 18px color-mix(in srgb,var(--erp-primary) 14%,transparent); }
.taxonomy-search { width:100%; margin-bottom:12px; border-radius:12px; background:color-mix(in srgb,var(--academy-surface) 92%,var(--academy-bg)); }
.taxonomy-list { display:grid; gap:8px; align-content:start; max-height:min(460px,52vh); overflow:auto; padding-inline-end:2px; }
.taxonomy-row {
    display:grid; grid-template-columns:38px minmax(0,1fr) auto 30px; align-items:center; gap:11px; width:100%;
    padding:11px 12px; border:1px solid color-mix(in srgb,var(--academy-line) 88%,transparent); border-radius:14px;
    color:var(--academy-ink); background:var(--academy-surface); text-align:start; transition:.18s ease; box-shadow:0 3px 12px rgba(15,23,42,.025);
}
.taxonomy-row:hover,.taxonomy-row:focus-visible { border-color:color-mix(in srgb,var(--erp-primary) 30%,var(--academy-line)); background:color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)); transform:translateY(-1px); outline:0; }
.taxonomy-row-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:12px; color:var(--erp-primary); background:var(--academy-soft); font-size:15px; }
.taxonomy-row > span { display:grid; min-width:0; gap:2px; }
.taxonomy-row strong { font-size:.92rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.taxonomy-row small { color:var(--academy-muted); font-size:.74rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.taxonomy-row em { padding:4px 9px; border-radius:999px; color:var(--academy-muted); background:color-mix(in srgb,var(--academy-muted) 9%,var(--academy-surface)); font-size:.72rem; font-style:normal; font-weight:800; }
.taxonomy-row em.is-active { color:var(--erp-success); background:color-mix(in srgb,var(--erp-success) 10%,var(--academy-surface)); }
.taxonomy-edit-icon { width:30px; height:30px; display:grid; place-items:center; border-radius:10px; color:var(--erp-link); background:color-mix(in srgb,var(--erp-primary) 6%,var(--academy-surface)); }

.academy-dialog { width:min(720px,calc(100vw - 28px)); padding:0; border:1px solid var(--academy-line); border-radius:var(--erp-radius,16px); color:var(--academy-ink); background:var(--academy-surface); box-shadow:0 28px 80px rgba(15,23,42,.25); }
.academy-dialog::backdrop { background:rgba(15,23,42,.55); backdrop-filter:blur(3px); }
.academy-dialog form > header { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:20px 22px; border-bottom:1px solid var(--academy-line); }
.academy-dialog form > header h2 { margin:5px 0 0; font-size:1.2rem; }
.academy-dialog form > header button { width:36px; height:36px; border:0; border-radius:10px; color:var(--academy-muted); background:var(--academy-soft); }
.academy-dialog .academy-form-grid { padding:22px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.academy-dialog form > footer { display:flex; justify-content:flex-end; gap:9px; padding:16px 22px; border-top:1px solid var(--academy-line); }
.academy-dialog form > header p { margin:5px 0 0; color:var(--academy-muted); font-size:.82rem; }
.academy-panel-actions { display:flex; align-items:center; gap:9px; flex-wrap:wrap; }
.report-filter-bar { display:grid; grid-template-columns:repeat(4,minmax(150px,1fr)) auto auto; gap:10px; align-items:end; padding:16px; border-bottom:1px solid var(--academy-line); background:color-mix(in srgb,var(--erp-primary) 3%,var(--academy-surface)); }
.report-filter-bar label { display:grid; gap:6px; min-width:0; color:var(--academy-muted); font-size:.76rem; }
.report-filter-bar input,.report-filter-bar select { width:100%; min-height:42px; padding:8px 10px; border:1px solid var(--academy-line); border-radius:10px; color:var(--academy-ink); background:var(--academy-surface); }
.quality-analytics-shell { display:grid; gap:14px; margin-bottom:17px; }
.quality-analytics-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 22px; border:1px solid var(--academy-line); border-radius:20px; background:linear-gradient(135deg,color-mix(in srgb,var(--erp-primary) 7%,var(--academy-surface)),var(--academy-surface)); box-shadow:var(--academy-shadow); }
.quality-analytics-head h2 { margin:4px 0; color:var(--academy-ink); font-size:1.35rem; }.quality-analytics-head p { margin:0; color:var(--academy-muted); font-size:.78rem; }
.quality-live-badge { display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; padding:9px 12px; border-radius:999px; color:var(--erp-primary); background:color-mix(in srgb,var(--erp-primary) 9%,var(--academy-surface)); font-size:.72rem; font-weight:900; }
.quality-executive-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.quality-executive-kpis article { display:grid; gap:4px; padding:16px; border:1px solid var(--academy-line); border-radius:17px; background:var(--academy-surface); box-shadow:0 8px 22px rgba(15,23,42,.035); }
.quality-executive-kpis small { color:var(--academy-muted); font-size:.72rem; font-weight:800; }.quality-executive-kpis strong { color:var(--academy-ink); font-size:1.55rem; }.quality-executive-kpis em { color:var(--academy-muted); font-size:.66rem; font-style:normal; line-height:1.6; }
.quality-analytics-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.quality-trend-panel { grid-column:1/-1; }
.quality-trend-chart { display:grid; grid-template-columns:repeat(6,minmax(70px,1fr)); gap:12px; align-items:end; min-height:250px; padding:20px 18px 16px; overflow:auto; background:repeating-linear-gradient(to top,transparent 0 49px,color-mix(in srgb,var(--academy-line) 60%,transparent) 50px); }
.quality-trend-chart > article { display:grid; grid-template-rows:170px auto auto; gap:6px; min-width:70px; text-align:center; }
.quality-trend-bars { display:flex; align-items:end; justify-content:center; gap:6px; height:170px; }.quality-trend-bars i { width:18px; min-height:6px; border-radius:7px 7px 2px 2px; }
.quality-trend-bars .course { background:var(--erp-primary); }.quality-trend-bars .instructor { background:color-mix(in srgb,var(--erp-primary) 38%,var(--erp-success)); }
.quality-trend-chart strong { color:var(--academy-ink); font-size:.7rem; }.quality-trend-chart small { color:var(--academy-muted); font-size:.62rem; white-space:nowrap; }
.quality-ranking-list,.quality-alert-list { display:grid; gap:8px; padding:14px; }
.quality-ranking-row { display:grid; grid-template-columns:24px 36px minmax(0,1fr) auto; gap:9px; align-items:center; padding:10px; border:1px solid var(--academy-line); border-radius:13px; background:var(--academy-surface); }
.quality-ranking-row > b { color:var(--academy-muted); font-size:.72rem; text-align:center; }.quality-ranking-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:11px; color:var(--erp-primary); background:var(--academy-soft); }
.quality-ranking-row div { display:grid; min-width:0; }.quality-ranking-row div strong { color:var(--academy-ink); font-size:.77rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.quality-ranking-row div small { color:var(--academy-muted); font-size:.64rem; margin-top:3px; }
.quality-ranking-row > em { color:var(--erp-primary); font-size:.83rem; font-style:normal; font-weight:900; direction:ltr; }
.quality-alert-row { display:grid; grid-template-columns:38px minmax(0,1fr) auto auto; gap:10px; align-items:center; padding:11px; border:1px solid var(--academy-line); border-radius:14px; color:inherit!important; background:var(--academy-surface); text-decoration:none; cursor:pointer; }
.quality-alert-row > i { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:var(--erp-warning); background:color-mix(in srgb,var(--erp-warning) 10%,var(--academy-surface)); }
.quality-alert-row.severity-high > i { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--academy-surface)); }
.quality-alert-row > span { display:grid; min-width:0; }.quality-alert-row > span strong { color:var(--academy-ink); font-size:.77rem; }.quality-alert-row > span small { color:var(--academy-muted); font-size:.63rem; margin-top:3px; }
.quality-alert-row > em { display:grid; color:var(--academy-ink); font-size:.78rem; font-style:normal; font-weight:900; text-align:center; direction:ltr; }.quality-alert-row > em small { color:var(--academy-muted); font-size:.6rem; }
.quality-alert-row::after { content:"خطة تحسين"; padding:7px 9px; border-radius:9px; color:var(--erp-primary); background:color-mix(in srgb,var(--erp-primary) 9%,var(--academy-surface)); font-size:.66rem; font-weight:900; white-space:nowrap; }
.quality-plans-panel { grid-column:1/-1; }
.quality-plan-summary { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.quality-plan-summary span { padding:6px 9px; border-radius:999px; color:var(--academy-muted); background:var(--academy-soft); font-size:.65rem; font-weight:800; }
.quality-plan-summary span b { color:var(--academy-ink); }.quality-plan-summary .is-overdue b { color:var(--erp-danger); }
.quality-plan-list { display:grid; gap:8px; padding:14px; }
.quality-plan-row { width:100%; display:grid; grid-template-columns:42px minmax(0,1fr) auto 120px 18px; gap:11px; align-items:center; padding:12px; border:1px solid var(--academy-line); border-radius:14px; color:var(--academy-ink); background:var(--academy-surface); text-align:start; }
.quality-plan-row:hover { border-color:color-mix(in srgb,var(--erp-primary) 35%,var(--academy-line)); background:color-mix(in srgb,var(--erp-primary) 3%,var(--academy-surface)); }
.quality-plan-row.is-overdue { border-inline-start:3px solid var(--erp-danger); }
.quality-plan-status { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:var(--erp-primary); background:var(--academy-soft); font-size:1.05rem; }
.quality-plan-status.status-completed { color:var(--erp-success); background:color-mix(in srgb,var(--erp-success) 11%,var(--academy-surface)); }
.quality-plan-main { display:grid; gap:4px; min-width:0; }.quality-plan-main strong { overflow:hidden; font-size:.8rem; text-overflow:ellipsis; white-space:nowrap; }.quality-plan-main small { color:var(--academy-muted); font-size:.65rem; }
.quality-plan-priority { padding:6px 8px; border-radius:999px; color:var(--academy-muted); background:var(--academy-soft); font-size:.63rem; font-weight:900; }
.quality-plan-priority.priority-high,.quality-plan-priority.priority-critical { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--academy-surface)); }
.quality-plan-date { display:grid; gap:3px; color:var(--academy-ink); font-size:.7rem; font-weight:800; }.quality-plan-date small { color:var(--academy-muted); font-size:.61rem; }
.quality-plan-dialog { width:min(820px,calc(100vw - 28px)); }.quality-plan-dialog textarea { resize:vertical; }
.quality-plan-dialog [data-error] { min-height:14px; color:var(--erp-danger); font-size:.65rem; }

/* Academy evaluation command center */
.evaluation-center { display:grid; gap:15px; }
.evaluation-center-hero { position:relative; isolation:isolate; display:flex; align-items:center; justify-content:space-between; gap:22px; overflow:hidden; padding:26px 28px; border-radius:24px; color:#fff; background:linear-gradient(135deg,var(--erp-sidebar,#172554),color-mix(in srgb,var(--erp-sidebar,#172554) 62%,var(--erp-primary))); box-shadow:0 18px 42px color-mix(in srgb,var(--erp-primary) 15%,transparent); }
.evaluation-center-hero::before,.evaluation-center-hero::after { content:""; position:absolute; z-index:-1; border:1px solid rgba(255,255,255,.1); border-radius:50%; }
.evaluation-center-hero::before { width:320px; height:320px; inset-inline-end:-100px; top:-190px; }.evaluation-center-hero::after { width:220px; height:220px; inset-inline-end:80px; bottom:-175px; }
.evaluation-hero-copy { display:grid; gap:7px; max-width:800px; }.evaluation-center-hero .academy-kicker { color:color-mix(in srgb,#fff 76%,var(--erp-primary)); }
.evaluation-center-hero h1 { margin:0; color:#fff; font-size:clamp(1.65rem,3vw,2.35rem); }.evaluation-center-hero p { max-width:760px; margin:0; color:rgba(255,255,255,.76); font-size:.84rem; line-height:1.9; }
.evaluation-hero-pulse { display:flex; gap:9px 18px; flex-wrap:wrap; margin-top:5px; color:rgba(255,255,255,.7); font-size:.66rem; font-weight:800; }.evaluation-hero-pulse span { display:flex; align-items:center; gap:7px; }
.evaluation-hero-pulse i { width:7px; height:7px; border-radius:50%; background:var(--erp-success,#10b981); box-shadow:0 0 0 5px rgba(16,185,129,.15); }
.evaluation-hero-actions { display:flex; justify-content:flex-end; gap:8px; flex-wrap:wrap; min-width:300px; }.evaluation-center-hero .academy-btn-muted { border-color:rgba(255,255,255,.16); color:#fff; background:rgba(255,255,255,.1); }.evaluation-center-hero .academy-btn-primary { color:var(--erp-primary); background:#fff; }
.evaluation-filter-bar { display:grid; grid-template-columns:minmax(240px,1.6fr) repeat(4,minmax(135px,1fr)) auto auto; gap:9px; align-items:center; padding:13px; border:1px solid var(--academy-line); border-radius:17px; background:var(--academy-surface); box-shadow:var(--academy-shadow); }
.evaluation-filter-bar > input,.evaluation-filter-bar > select { width:100%; min-height:42px; padding:8px 10px; border:1px solid var(--academy-line); border-radius:11px; color:var(--academy-ink); background:var(--academy-surface); }
.evaluation-kpis { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
.evaluation-kpis article { display:grid; grid-template-columns:42px minmax(0,1fr); gap:10px; align-items:center; min-width:0; padding:15px; border:1px solid var(--academy-line); border-radius:17px; background:var(--academy-surface); box-shadow:0 8px 23px rgba(15,23,42,.035); }
.evaluation-kpi-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:var(--erp-primary); background:color-mix(in srgb,var(--erp-primary) 9%,var(--academy-surface)); font-size:1.05rem; }.evaluation-kpis article.warning .evaluation-kpi-icon { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--academy-surface)); }
.evaluation-kpis article > div { display:grid; gap:2px; min-width:0; }.evaluation-kpis small { color:var(--academy-muted); font-size:.65rem; font-weight:800; }.evaluation-kpis strong { color:var(--academy-ink); font-size:1.35rem; line-height:1.1; }.evaluation-kpis em { overflow:hidden; color:var(--academy-muted); font-size:.59rem; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }.evaluation-kpis em a { color:var(--erp-primary); }
.evaluation-center-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:14px; align-items:start; }.evaluation-center-main,.evaluation-center-side { display:grid; gap:14px; min-width:0; }
.evaluation-dimensions { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; padding:14px; }
.evaluation-dimensions article { display:grid; gap:8px; padding:13px; border:1px solid var(--academy-line); border-radius:14px; background:color-mix(in srgb,var(--erp-primary) 2.5%,var(--academy-surface)); }
.evaluation-dimensions article > div:first-child { display:flex; align-items:center; justify-content:space-between; gap:8px; }.evaluation-dimensions span { color:var(--academy-ink); font-size:.72rem; font-weight:850; }.evaluation-dimensions strong { color:var(--erp-primary); font-size:1rem; }.evaluation-dimensions strong small { font-size:.58rem; }.evaluation-dimensions article > small { color:var(--academy-muted); font-size:.6rem; }
.evaluation-meter { height:7px; overflow:hidden; border-radius:99px; background:var(--academy-soft); }.evaluation-meter i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,color-mix(in srgb,var(--erp-primary) 55%,var(--erp-success)),var(--erp-primary)); }
.evaluation-chart-grid { display:grid; grid-template-columns:1fr 1.25fr; gap:14px; }
.evaluation-distribution { height:230px; display:grid; grid-template-columns:repeat(5,1fr); gap:10px; align-items:end; padding:18px; }
.evaluation-distribution article { height:100%; display:grid; grid-template-rows:auto 1fr auto; gap:7px; align-items:end; text-align:center; }.evaluation-distribution article > div { height:100%; display:flex; align-items:end; justify-content:center; border-radius:10px; background:linear-gradient(to top,color-mix(in srgb,var(--erp-primary) 4%,transparent),transparent); }
.evaluation-distribution article > div i { width:min(30px,60%); min-height:5px; border-radius:8px 8px 3px 3px; background:var(--erp-primary); }.evaluation-distribution strong { color:var(--academy-ink); font-size:.72rem; }.evaluation-distribution span { color:var(--academy-muted); font-size:.66rem; }.evaluation-distribution span i { color:var(--erp-warning); }
.evaluation-batch-ranking { display:grid; gap:7px; padding:13px; }.evaluation-batch-ranking > a { display:grid; grid-template-columns:25px minmax(0,1fr) auto; gap:9px; align-items:center; padding:10px; border:1px solid var(--academy-line); border-radius:12px; color:inherit; background:var(--academy-surface); text-decoration:none; }
.evaluation-batch-ranking > a:hover { border-color:color-mix(in srgb,var(--erp-primary) 32%,var(--academy-line)); }.evaluation-batch-ranking b { color:var(--academy-muted); text-align:center; }.evaluation-batch-ranking span { display:grid; min-width:0; }.evaluation-batch-ranking span strong { overflow:hidden; color:var(--academy-ink); font-size:.75rem; text-overflow:ellipsis; white-space:nowrap; }.evaluation-batch-ranking small { color:var(--academy-muted); font-size:.6rem; margin-top:3px; }.evaluation-batch-ranking em { color:var(--erp-primary); font-size:.75rem; font-style:normal; font-weight:900; direction:ltr; }
.evaluation-table-panel .academy-panel-head { align-items:center; }.evaluation-table td { vertical-align:middle; }.evaluation-score { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; color:var(--erp-success); background:color-mix(in srgb,var(--erp-success) 10%,var(--academy-surface)); font-weight:900; }.evaluation-score.is-low { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 10%,var(--academy-surface)); }
.evaluation-answer-chips { display:flex; gap:4px; flex-wrap:wrap; min-width:210px; }.evaluation-answer-chips span { padding:4px 6px; border-radius:7px; color:var(--academy-muted); background:var(--academy-soft); font-size:.56rem; font-weight:800; }.evaluation-answer-chips span.is-low { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--academy-surface)); }.evaluation-pending-chip { color:var(--erp-warning)!important; background:color-mix(in srgb,var(--erp-warning) 9%,var(--academy-surface))!important; }
.evaluation-center-side { position:sticky; top:12px; }.evaluation-campaign-card { display:grid; justify-items:center; gap:9px; padding:20px; text-align:center; }.evaluation-side-icon { width:58px; height:58px; display:grid; place-items:center; border-radius:19px; color:#fff; background:linear-gradient(135deg,var(--erp-primary),color-mix(in srgb,var(--erp-primary) 58%,var(--erp-success))); box-shadow:0 12px 24px color-mix(in srgb,var(--erp-primary) 20%,transparent); font-size:1.35rem; }.evaluation-campaign-card h2 { margin:4px 0 0; color:var(--academy-ink); font-size:1rem; }.evaluation-campaign-card p { margin:0; color:var(--academy-muted); font-size:.68rem; line-height:1.8; }
.evaluation-campaign-stats { width:100%; display:grid; grid-template-columns:1fr 1fr; gap:7px; }.evaluation-campaign-stats span { display:grid; gap:2px; padding:9px; border-radius:11px; color:var(--academy-muted); background:var(--academy-soft); font-size:.59rem; }.evaluation-campaign-stats b { color:var(--academy-ink); font-size:.95rem; }
.evaluation-campaign-card .academy-btn { width:100%; justify-content:center; }.evaluation-low-list { display:grid; gap:7px; padding:12px; }.evaluation-low-list > a { display:grid; grid-template-columns:38px minmax(0,1fr) 14px; gap:8px; align-items:center; padding:9px; border:1px solid var(--academy-line); border-radius:12px; color:inherit; text-decoration:none; }.evaluation-low-score { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--academy-surface)); font-size:.76rem; font-weight:900; }.evaluation-low-list > a > span:nth-child(2) { display:grid; min-width:0; }.evaluation-low-list strong { overflow:hidden; color:var(--academy-ink); font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }.evaluation-low-list small { color:var(--academy-muted); font-size:.58rem; margin-top:2px; }
.evaluation-campaign-dialog { width:min(760px,calc(100vw - 28px)); }.evaluation-campaign-layout { display:grid; grid-template-columns:minmax(0,1fr) 230px; gap:0; }.evaluation-campaign-layout .academy-form-grid { grid-template-columns:1fr 1fr; }.evaluation-campaign-note { display:flex; gap:11px; margin:22px 22px 22px 0; padding:15px; border-radius:15px; color:var(--academy-ink); background:var(--academy-soft); }.evaluation-campaign-note > i { color:var(--erp-success); font-size:1.2rem; }.evaluation-campaign-note strong { font-size:.76rem; }.evaluation-campaign-note p { margin:5px 0 0; color:var(--academy-muted); font-size:.64rem; line-height:1.8; }
@media (max-width:1250px) { .evaluation-kpis { grid-template-columns:repeat(3,1fr); }.evaluation-dimensions { grid-template-columns:repeat(3,1fr); }.evaluation-filter-bar { grid-template-columns:repeat(3,1fr); }.evaluation-filter-bar .academy-search { grid-column:span 2; } }
@media (max-width:900px) { .evaluation-center-hero { align-items:flex-start; flex-direction:column; }.evaluation-hero-actions { min-width:0; justify-content:flex-start; }.evaluation-center-grid { grid-template-columns:1fr; }.evaluation-center-side { position:static; grid-template-columns:1fr 1fr; }.evaluation-chart-grid { grid-template-columns:1fr; }.evaluation-campaign-layout { grid-template-columns:1fr; }.evaluation-campaign-note { margin:0 22px 22px; } }
@media (max-width:640px) { .evaluation-kpis,.evaluation-dimensions,.evaluation-filter-bar,.evaluation-center-side { grid-template-columns:1fr; }.evaluation-filter-bar .academy-search { grid-column:auto; }.evaluation-campaign-layout .academy-form-grid { grid-template-columns:1fr; } }
@media print { .academy-sidebar,.evaluation-hero-actions,.evaluation-filter-bar,.evaluation-center-side,.evaluation-table th:last-child,.evaluation-table td:last-child { display:none!important; }.academy-page { padding:0!important; }.evaluation-center-hero { color:var(--academy-ink); background:#fff; box-shadow:none; border:1px solid #ddd; }.evaluation-center-hero h1 { color:#111; }.evaluation-center-grid { grid-template-columns:1fr; } }

/* Instructor and course historical performance */
.performance-page-head { background:linear-gradient(135deg,color-mix(in srgb,var(--erp-primary) 9%,var(--academy-surface)),var(--academy-surface)); }
.performance-filter-bar { display:flex; align-items:end; gap:10px; flex-wrap:wrap; padding:14px; margin-bottom:14px; }.performance-filter-bar label { display:grid; gap:5px; color:var(--academy-muted); font-size:.7rem; }.performance-filter-bar input { min-height:41px; padding:8px 10px; border:1px solid var(--academy-line); border-radius:10px; color:var(--academy-ink); background:var(--academy-surface); }
.performance-kpis { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin-bottom:14px; }.performance-kpis article { display:grid; gap:4px; padding:16px; border:1px solid var(--academy-line); border-radius:16px; background:var(--academy-surface); box-shadow:0 8px 22px rgba(15,23,42,.035); }.performance-kpis small { color:var(--academy-muted); font-size:.67rem; font-weight:850; }.performance-kpis strong { color:var(--academy-ink); font-size:1.45rem; }.performance-kpis em { color:var(--academy-muted); font-size:.59rem; font-style:normal; }
.performance-trend-panel { margin-bottom:14px; }.performance-trend { min-height:280px; display:grid; grid-template-columns:repeat(12,minmax(58px,1fr)); gap:9px; align-items:end; overflow:auto; padding:20px 18px 15px; background:repeating-linear-gradient(to top,transparent 0 49px,color-mix(in srgb,var(--academy-line) 55%,transparent) 50px); }.performance-trend article { min-width:58px; display:grid; grid-template-rows:190px auto auto; gap:5px; text-align:center; }.performance-trend-bars { display:flex; align-items:end; justify-content:center; gap:5px; height:190px; }.performance-trend-bars i { width:16px; min-height:5px; border-radius:7px 7px 2px 2px; }.performance-trend-bars .course { background:var(--erp-primary); }.performance-trend-bars .instructor { background:color-mix(in srgb,var(--erp-primary) 35%,var(--erp-success)); }.performance-trend strong { color:var(--academy-ink); font-size:.66rem; }.performance-trend small { color:var(--academy-muted); font-size:.55rem; white-space:nowrap; }
.performance-comparison-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }.performance-ranking { display:grid; gap:7px; padding:13px; }.performance-ranking > button { width:100%; display:grid; grid-template-columns:25px minmax(0,1fr) auto 14px; gap:9px; align-items:center; padding:10px; border:1px solid var(--academy-line); border-radius:12px; color:var(--academy-ink); background:var(--academy-surface); text-align:start; }.performance-ranking > button:hover { border-color:color-mix(in srgb,var(--erp-primary) 32%,var(--academy-line)); }.performance-ranking b { color:var(--academy-muted); text-align:center; }.performance-ranking span { display:grid; min-width:0; }.performance-ranking span strong { overflow:hidden; font-size:.75rem; text-overflow:ellipsis; white-space:nowrap; }.performance-ranking span small { color:var(--academy-muted); font-size:.59rem; margin-top:3px; }.performance-ranking em { display:grid; color:var(--erp-primary); font-size:.76rem; font-style:normal; font-weight:900; direction:ltr; }.performance-ranking em small { color:var(--academy-muted); font-size:.55rem; }
.performance-risks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:14px; }.performance-risks > button { display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:9px; align-items:center; padding:11px; border:1px solid color-mix(in srgb,var(--erp-warning) 25%,var(--academy-line)); border-radius:13px; color:var(--academy-ink); background:var(--academy-surface); text-align:start; }.performance-risks > button > i { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:var(--erp-warning); background:color-mix(in srgb,var(--erp-warning) 10%,var(--academy-surface)); }.performance-risks span { display:grid; }.performance-risks strong { font-size:.73rem; }.performance-risks span small { color:var(--academy-muted); font-size:.58rem; }.performance-risks em { display:grid; color:var(--academy-ink); font-size:.72rem; font-style:normal; font-weight:900; direction:ltr; }.performance-risks em small { color:var(--academy-muted); font-size:.54rem; }
.performance-profile-dialog { width:min(900px,calc(100vw - 28px)); }.performance-profile-list { display:grid; gap:8px; max-height:65vh; overflow:auto; padding:18px 22px; }.performance-profile-list > a { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(120px,.8fr) auto 18px; gap:10px; align-items:center; padding:12px; border:1px solid var(--academy-line); border-radius:13px; color:inherit; text-decoration:none; }.performance-profile-list span { display:grid; min-width:0; }.performance-profile-list strong { color:var(--academy-ink); font-size:.76rem; }.performance-profile-list small { color:var(--academy-muted); font-size:.59rem; margin-top:3px; }.performance-profile-list em { display:grid; color:var(--erp-primary); font-size:.75rem; font-style:normal; font-weight:900; direction:ltr; }
@media (max-width:1100px) { .performance-kpis { grid-template-columns:repeat(3,1fr); }.performance-risks { grid-template-columns:repeat(2,1fr); } }
@media (max-width:760px) { .performance-kpis,.performance-comparison-grid,.performance-risks { grid-template-columns:1fr; }.performance-profile-list > a { grid-template-columns:1fr auto; }.performance-profile-list > a > span:nth-child(2) { grid-column:1; } }
.instructor-payment-dialog { width:min(760px,calc(100vw - 28px)); }
.voucher-context-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; padding:18px 22px 0; }
.voucher-context-strip article { display:grid; gap:4px; min-width:0; padding:11px 12px; border:1px solid var(--academy-line); border-radius:13px; background:color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)); }
.voucher-context-strip span { color:var(--academy-muted); font-size:.72rem; }
.voucher-context-strip strong { overflow:hidden; color:var(--academy-ink); font-size:.86rem; text-overflow:ellipsis; white-space:nowrap; }
.registration-payment-heading { display:flex; align-items:center; gap:11px; padding:13px; border:1px solid var(--academy-line); border-radius:16px; background:var(--academy-bg); }
.registration-payment-heading > span { width:42px; height:42px; display:grid; place-items:center; flex:0 0 auto; border-radius:14px; color:var(--erp-primary); background:var(--academy-soft); }
.registration-payment-heading > div { display:grid; gap:3px; }
.registration-payment-heading strong { color:var(--academy-ink); }
.registration-payment-heading small { color:var(--academy-muted); }
.batch-financial-cycle { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:14px; padding:18px; }
.batch-financial-cycle h2 { margin:4px 0 5px; color:var(--academy-ink); font-size:1.08rem; }
.batch-financial-cycle p { margin:0; color:var(--academy-muted); font-size:.78rem; }
.batch-financial-cycle .academy-panel-actions { flex:0 0 auto; }
.financial-control-center { display:grid; gap:14px; margin-bottom:16px; }
.financial-control-head {
    display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:14px;
    padding:18px; border:1px solid var(--academy-line); border-radius:20px;
    background:var(--academy-surface); box-shadow:var(--academy-shadow);
}
.financial-control-head > span { width:50px; height:50px; display:grid; place-items:center; border-radius:17px; font-size:1.25rem; }
.financial-control-head > div { display:grid; gap:2px; }
.financial-control-head small,.financial-control-head p { margin:0; color:var(--academy-muted); font-size:.72rem; }
.financial-control-head h2 { margin:0; color:var(--academy-ink); font-size:1.08rem; }
.financial-control-head > strong { min-width:64px; display:grid; justify-items:center; color:var(--academy-ink); font-size:1.45rem; }
.financial-control-head > strong small { font-size:.65rem; font-weight:700; }
.financial-control-head.is-ready > span,.financial-control-head.is-closed > span { color:var(--erp-success); background:color-mix(in srgb,var(--erp-success) 11%,var(--academy-surface)); }
.financial-control-head.is-blocked > span { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--academy-surface)); }
.financial-control-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,360px); gap:14px; align-items:start; }
.financial-metric-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.financial-metric-grid article {
    min-height:126px; display:flex; align-items:flex-start; gap:11px; padding:15px;
    border:1px solid var(--academy-line); border-radius:18px; background:var(--academy-surface); box-shadow:var(--academy-shadow);
}
.financial-metric-grid article > span { width:40px; height:40px; display:grid; place-items:center; flex:0 0 auto; border-radius:14px; color:var(--erp-primary); background:var(--academy-soft); }
.financial-metric-grid article > div { min-width:0; display:grid; gap:4px; }
.financial-metric-grid small { color:var(--academy-muted); font-size:.7rem; }
.financial-metric-grid strong { color:var(--academy-ink); font-size:1.12rem; white-space:nowrap; }
.financial-metric-grid strong em { color:var(--academy-muted); font-size:.62rem; font-style:normal; }
.financial-metric-grid p { margin:0; color:var(--academy-muted); font-size:.68rem; line-height:1.55; }
.financial-readiness-panel { overflow:hidden; border:1px solid var(--academy-line); border-radius:20px; background:var(--academy-surface); box-shadow:var(--academy-shadow); }
.financial-readiness-panel > header { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:16px; border-bottom:1px solid var(--academy-line); }
.financial-readiness-panel header small { color:var(--academy-muted); font-size:.68rem; }
.financial-readiness-panel h3 { margin:2px 0 0; color:var(--academy-ink); font-size:.95rem; }
.financial-readiness-panel header b { padding:7px 10px; border-radius:12px; color:var(--erp-primary); background:var(--academy-soft); }
.financial-check-list,.financial-close-checks { display:grid; gap:7px; padding:10px; }
.financial-check-list article,.financial-close-checks article { display:flex; align-items:flex-start; gap:9px; padding:10px; border-radius:13px; background:var(--academy-bg); }
.financial-check-list article > i,.financial-close-checks article > i { margin-top:2px; flex:0 0 auto; }
.financial-check-list article > span,.financial-close-checks article > span { display:grid; gap:2px; min-width:0; }
.financial-check-list strong,.financial-close-checks strong { color:var(--academy-ink); font-size:.76rem; }
.financial-check-list small,.financial-close-checks small { color:var(--academy-muted); font-size:.67rem; line-height:1.55; }
.check-ready > i { color:var(--erp-success); }
.check-warning > i { color:var(--erp-warning); }
.check-blocked > i { color:var(--erp-danger); }
.financial-document-strip { display:flex; flex-wrap:wrap; gap:8px; padding:12px; border:1px solid var(--academy-line); border-radius:17px; background:var(--academy-surface); }
.financial-document-strip span { display:inline-flex; align-items:center; gap:6px; padding:7px 10px; border-radius:12px; color:var(--academy-muted); background:var(--academy-bg); font-size:.72rem; }
.financial-document-strip i { color:var(--erp-primary); }
.financial-document-strip strong { color:var(--academy-ink); }
.financial-close-dialog { width:min(820px,calc(100vw - 28px)); }
.financial-close-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; padding:16px 22px 0; }
.financial-close-summary article { display:grid; gap:3px; padding:11px; border:1px solid var(--academy-line); border-radius:13px; background:var(--academy-bg); }
.financial-close-summary span { color:var(--academy-muted); font-size:.7rem; }
.financial-close-summary strong { color:var(--academy-ink); font-size:.82rem; }
.financial-close-checks { max-height:360px; overflow:auto; margin:14px 20px; padding:0; }
.financial-close-confirmation { display:flex; align-items:flex-start; gap:10px; margin:0 20px 16px; padding:13px; border:1px solid color-mix(in srgb,var(--erp-primary) 20%,var(--academy-line)); border-radius:15px; color:var(--academy-ink); background:var(--academy-soft); font-size:.78rem; line-height:1.7; cursor:pointer; }
.financial-close-confirmation input { margin-top:4px; flex:0 0 auto; }
.enrollment-cancellation-dialog { width:min(860px,calc(100vw - 28px)); }
.cancellation-preview { display:grid; gap:9px; padding:16px 22px 0; }
.cancellation-preview-head { display:flex; align-items:center; gap:12px; padding:14px; border:1px solid var(--academy-line); border-radius:16px; background:var(--academy-bg); }
.cancellation-preview-head > span { width:46px; height:46px; display:grid; place-items:center; flex:0 0 auto; border-radius:15px; color:var(--erp-primary); background:var(--academy-soft); font-size:1.1rem; }
.cancellation-preview-head > div { display:grid; gap:2px; }
.cancellation-preview-head small,.cancellation-preview-head p { margin:0; color:var(--academy-muted); font-size:.72rem; }
.cancellation-preview-head strong { color:var(--academy-ink); }
.cancellation-blocker { display:flex; align-items:center; gap:8px; padding:10px 12px; border:1px solid color-mix(in srgb,var(--erp-danger) 24%,var(--academy-line)); border-radius:13px; color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 6%,var(--academy-surface)); font-size:.76rem; }
.cancellation-draft-notice { display:flex; align-items:flex-start; gap:9px; padding:11px 12px; border:1px solid color-mix(in srgb,var(--erp-info) 25%,var(--academy-line)); border-radius:13px; color:var(--erp-info); background:color-mix(in srgb,var(--erp-info) 7%,var(--academy-surface)); }
.cancellation-draft-notice > i { margin-top:2px; }.cancellation-draft-notice > span { display:grid; gap:2px; }
.cancellation-draft-notice strong { color:var(--academy-ink); font-size:.76rem; }.cancellation-draft-notice small { color:var(--academy-muted); font-size:.69rem; line-height:1.55; }
.cancellation-impact { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin:0 20px 14px; }
.cancellation-impact article { display:grid; gap:3px; padding:12px; border:1px solid var(--academy-line); border-radius:14px; background:var(--academy-bg); }
.cancellation-impact span { color:var(--academy-muted); font-size:.7rem; }
.cancellation-impact strong { color:var(--academy-ink); }
.cancellation-document { border-color:color-mix(in srgb,var(--erp-danger) 22%,var(--academy-line))!important; }
.cancellation-document .document-icon { color:var(--erp-danger)!important; background:color-mix(in srgb,var(--erp-danger) 8%,var(--academy-surface))!important; }
.batch-enrollment-dialog { width:min(780px,calc(100vw - 28px)); }
.post-ready-result-dialog { width:min(1040px,calc(100vw - 28px)); }
.post-ready-result-body { padding:20px 22px 22px; }
.post-ready-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.post-ready-stat { position:relative; overflow:hidden; min-height:86px; padding:16px; border:1px solid var(--academy-line); border-radius:18px; background:linear-gradient(135deg,var(--academy-surface),var(--academy-soft)); }
.post-ready-stat::after { content:""; position:absolute; inset:auto -18px -24px auto; width:76px; height:76px; border-radius:999px; opacity:.12; background:var(--erp-primary,#2563eb); }
.post-ready-stat small { display:block; color:var(--academy-muted); margin-bottom:8px; }
.post-ready-stat strong { font-size:1.45rem; color:var(--academy-ink); }
.post-ready-stat.posted::after { background:var(--erp-success,#16a34a); }
.post-ready-stat.skipped::after { background:#64748b; }
.post-ready-stat.failed::after { background:var(--erp-danger,#dc2626); }
.post-ready-result-table { max-height:52vh; }
.post-result-posted { color:var(--erp-success,#15803d); background:color-mix(in srgb,var(--erp-success,#16a34a) 12%,var(--academy-surface)); }
.post-result-skipped { color:#475569; background:color-mix(in srgb,#64748b 12%,var(--academy-surface)); }
.post-result-failed { color:var(--erp-danger,#b91c1c); background:color-mix(in srgb,var(--erp-danger,#dc2626) 10%,var(--academy-surface)); }
.batch-enrollment-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; padding:16px 22px 0; }
.batch-enrollment-summary article { display:grid; gap:3px; padding:11px 12px; border:1px solid var(--academy-line); border-radius:13px; background:color-mix(in srgb,var(--erp-primary) 4%,var(--academy-surface)); }
.batch-enrollment-summary span { color:var(--academy-muted); font-size:.74rem; }
.batch-enrollment-summary strong { color:var(--academy-ink); font-size:.9rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.row-highlight { animation: academy-row-pulse 1.8s ease; }
@keyframes academy-row-pulse {
    0%,100% { background:transparent; }
    30% { background:color-mix(in srgb,var(--erp-success) 12%,var(--academy-surface)); }
}
.color-field { display:grid; grid-template-columns:50px 1fr; gap:8px; }
.color-field input[type="color"] { width:50px; height:42px; padding:4px; border:1px solid var(--academy-line); border-radius:10px; background:var(--academy-surface); }

/* Searchable selects and the shared chart-of-accounts picker */
.academy-module .select2-container { width:100%!important; font-size:.88rem; }
.academy-module .select2-container .select2-selection--single { min-height:42px; border:1px solid var(--academy-line); border-radius:10px; background:var(--academy-surface); }
.academy-module .select2-container .select2-selection--single .select2-selection__rendered { line-height:40px; padding-inline:11px 34px; color:var(--academy-ink); }
.academy-module .select2-container .select2-selection--single .select2-selection__arrow { height:40px; }
.academy-module .select2-container .select2-selection--multiple { min-height:46px; border:1px solid var(--academy-line); border-radius:10px; background:var(--academy-surface); }
.academy-module .account-picker-results { color:var(--academy-ink); background:var(--academy-surface); border-color:var(--academy-line); }
.academy-module .account-picker-option { color:var(--academy-ink); background:var(--academy-surface); border-color:var(--academy-line); }
.academy-module .account-picker-option:hover,.academy-module .account-picker-option.is-active { background:var(--academy-soft); }

/* Academy colors are semantic aliases of the active system theme. */
.academy-module .status { color:var(--erp-text); background:color-mix(in srgb,var(--erp-muted) 10%,var(--erp-surface)); }
.academy-module .status-running,.academy-module .status-started,.academy-module .status-confirmed,.academy-module .status-completed { color:var(--erp-success); background:color-mix(in srgb,var(--erp-success) 10%,var(--erp-surface)); }
.academy-module .status-registration,.academy-module .status-reserved { color:var(--erp-info); background:color-mix(in srgb,var(--erp-info) 10%,var(--erp-surface)); }
.academy-module .status-planning,.academy-module .status-inquiry { color:var(--erp-warning); background:color-mix(in srgb,var(--erp-warning) 11%,var(--erp-surface)); }
.academy-module .status-cancelled,.academy-module .status-closed { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 9%,var(--erp-surface)); }
.academy-module .money-positive,.academy-module .finance-stats article:nth-child(2) strong { color:var(--erp-success)!important; }
.academy-module .money-due,.academy-module .finance-stats article:nth-child(3) strong { color:var(--erp-warning)!important; }
.academy-module .person-avatar,.academy-module .student-cell > i,.academy-module .taxonomy-icon,.academy-module .form-section-head > span { color:var(--erp-primary); background:var(--academy-soft); }
.academy-module .academy-btn-muted { color:var(--erp-text); background:color-mix(in srgb,var(--erp-muted) 12%,var(--erp-surface)); }
.academy-module .academy-btn-primary { color:#fff!important; }
.academy-module .academy-btn-primary * { color:inherit!important; }
.academy-module .academy-api-alert { color:var(--erp-danger); border-color:color-mix(in srgb,var(--erp-danger) 28%,var(--erp-border)); background:color-mix(in srgb,var(--erp-danger) 7%,var(--erp-surface)); }
.academy-module .academy-api-alert.success { color:var(--erp-success); border-color:color-mix(in srgb,var(--erp-success) 28%,var(--erp-border)); background:color-mix(in srgb,var(--erp-success) 7%,var(--erp-surface)); }
.academy-module .academy-api-alert.warning { color:#9a6a14; border-color:color-mix(in srgb,#f59e0b 28%,var(--erp-border)); background:color-mix(in srgb,#f59e0b 9%,var(--erp-surface)); }

/* Typography follows the system/user theme token instead of fixed tiny text. */
.academy-loading,.academy-api-alert,.academy-kicker,.academy-panel-head a,.academy-toolbar button,.academy-toolbar select,.academy-search input,.course-card p,.course-stats,.person-card p,.academy-table,.form-section-head p,.field-wrap > label,.field-error,.compact-form label,.compact-form input,.compact-form select,.compact-form textarea { font-size:max(.78rem,calc(var(--erp-font-size,15px) * .78)); }
.field-wrap .form-control,.field-wrap .form-select { font-size:max(.84rem,calc(var(--erp-font-size,15px) * .84)); }
.academy-page-head p,.form-section-inline p { font-size:max(.88rem,calc(var(--erp-font-size,15px) * .88)); }

/* Live exams: classroom command center + trainee phone */
.live-control-header {
    min-height:145px; display:flex; align-items:center; justify-content:space-between; gap:26px;
    margin-bottom:18px; padding:24px 28px; overflow:hidden; position:relative;
    border:1px solid color-mix(in srgb,var(--erp-primary) 15%,var(--academy-line)); border-radius:26px;
    color:var(--academy-ink);
    background:
        radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--erp-accent) 18%,transparent),transparent 26%),
        linear-gradient(112deg,color-mix(in srgb,var(--erp-primary) 10%,var(--academy-surface)),var(--academy-surface) 58%);
    box-shadow:var(--academy-shadow);
}
.live-control-header::after { content:""; width:180px; height:180px; position:absolute; inset-inline-end:-75px; inset-block-start:-95px; border:28px solid color-mix(in srgb,var(--erp-primary) 7%,transparent); border-radius:50%; }
.live-control-header > * { position:relative; z-index:1; }
.live-control-header h1 { margin:10px 0 7px; color:var(--academy-ink); font-size:clamp(1.55rem,2.6vw,2.35rem); font-weight:900; }
.live-control-header p { margin:0; color:var(--academy-muted); }
.live-control-kicker { display:inline-flex; align-items:center; gap:7px; color:var(--erp-primary); font-size:.76rem; font-weight:900; }
.live-control-layout { display:grid; grid-template-columns:minmax(255px,300px) minmax(440px,1fr) minmax(220px,255px); gap:16px; align-items:start; }
.live-join-card,.live-screen-board,.live-host-panel,.live-public-card { border:1px solid var(--academy-line); border-radius:24px; background:var(--academy-surface); box-shadow:var(--academy-shadow); }
.live-join-card,.live-host-panel { position:sticky; top:18px; display:grid; gap:14px; padding:18px; }
.live-join-card { text-align:center; }
.live-side-heading { display:flex; align-items:center; gap:10px; text-align:start; }
.live-side-heading > span { width:42px; height:42px; display:grid; place-items:center; flex:0 0 auto; border-radius:15px; color:var(--erp-primary); background:var(--academy-soft); font-size:1.05rem; }
.live-side-heading > div { display:grid; gap:2px; }
.live-side-heading small { color:var(--academy-muted); font-size:.7rem; }
.live-side-heading h2 { margin:0; color:var(--academy-ink); font-size:1rem; }
.live-status { display:inline-flex; justify-self:start; padding:6px 12px; border-radius:999px; color:var(--erp-primary); background:var(--academy-soft); font-size:.78rem; font-weight:900; }
.live-code { padding:18px; border-radius:20px; color:var(--erp-primary); background:color-mix(in srgb,var(--erp-primary) 8%,var(--academy-surface)); font-size:2.5rem; font-weight:900; letter-spacing:.15em; direction:ltr; }
.live-countdown { color:var(--academy-ink); font-size:2rem; font-weight:900; direction:ltr; line-height:1; }
.live-countdown.is-ending { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 8%,var(--academy-surface)); }
.live-join-card a { overflow:hidden; color:var(--erp-primary); text-overflow:ellipsis; white-space:nowrap; direction:ltr; }
.live-join-card p { margin:0; color:var(--academy-muted); font-size:.78rem; line-height:1.7; }
.live-qr-box { display:grid; place-items:center; min-height:210px; padding:12px; border:1px solid var(--academy-line); border-radius:22px; background:#fff; }
.live-qr-box img { display:block; width:min(198px,100%); aspect-ratio:1; object-fit:contain; }
.live-screen-board { display:grid; gap:16px; padding:18px; }
.live-waiting-stage { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,380px); align-items:center; gap:clamp(24px,4vw,64px); min-height:560px; padding:clamp(30px,5vw,70px); border-radius:25px; color:#fff; background:linear-gradient(138deg,color-mix(in srgb,var(--erp-sidebar) 94%,var(--erp-primary)),color-mix(in srgb,var(--erp-primary) 80%,var(--erp-sidebar-active))); isolation:isolate; }
.live-waiting-stage {
    --live-template-primary: var(--erp-primary);
    --live-template-accent: var(--erp-success);
    --live-template-bg: var(--erp-sidebar);
    --live-template-text: #fff;
    color: var(--live-template-text);
    background:
        radial-gradient(circle at 15% 18%, color-mix(in srgb, var(--live-template-primary) 58%, transparent), transparent 36%),
        linear-gradient(138deg, var(--live-template-bg), color-mix(in srgb, var(--live-template-primary) 76%, var(--live-template-bg)));
}
.live-waiting-stage[data-layout="CENTER_QR"] { grid-template-columns:1fr; justify-items:center; text-align:center; }
.live-waiting-stage[data-layout="CENTER_QR"] .waiting-stage-copy { justify-items:center; }
.live-waiting-stage[data-layout="CENTER_QR"] .waiting-stage-qr { order:-1; width:min(480px,100%); }
.live-waiting-stage[data-density="CENTER_STAGE"] {
    width:min(1180px,100%);
    margin-inline:auto;
    border-radius:34px;
}
.live-waiting-stage[data-density="CENTER_STAGE"][data-layout="SPLIT"] {
    grid-template-columns:minmax(300px,420px) minmax(0,1fr);
}
.live-waiting-stage[data-density="CENTER_STAGE"][data-layout="SPLIT"] .waiting-stage-qr {
    order:-1;
    justify-self:center;
    width:min(430px,100%);
}
.live-waiting-stage[data-density="FULL_STAGE"] {
    width:100%;
    min-height:calc(100vh - 220px);
}
.live-waiting-stage[data-layout="IMMERSIVE"] { grid-template-columns:minmax(0,.8fr) minmax(360px,520px); min-height:720px; }
.live-waiting-stage[data-qr-size="MEDIUM"] .waiting-qr-frame { width:min(260px,100%); }
.live-waiting-stage[data-qr-size="XL"] .waiting-qr-frame { width:min(430px,100%); }
.live-waiting-stage.hide-logo [data-live-template-logo],
.live-waiting-stage.hide-code .waiting-stage-code,
.live-waiting-stage.hide-participants .waiting-stage-participants,
.live-waiting-stage.hide-instructions [data-live-template-instructions] { display:none!important; }
.live-control-layout.hide-side-panels { grid-template-columns:minmax(0,1fr); }
.live-control-layout.hide-side-panels > .live-join-card,
.live-control-layout.hide-side-panels > .live-host-panel { display:none!important; }
.live-waiting-stage[hidden] { display:none!important; }
.live-results-section[hidden] { display:none!important; }
.waiting-stage-glow { position:absolute; z-index:-1; width:480px; height:480px; inset:-230px -170px auto auto; border:1px solid rgba(255,255,255,.11); border-radius:50%; box-shadow:0 0 0 75px rgba(255,255,255,.025),0 0 0 150px rgba(255,255,255,.018); }
.waiting-stage-copy { display:grid; justify-items:start; }
.waiting-stage-copy > span { display:inline-flex; align-items:center; gap:8px; padding:7px 12px; border:1px solid rgba(255,255,255,.15); border-radius:999px; color:rgba(255,255,255,.78); background:rgba(255,255,255,.08); font-size:.78rem; font-weight:900; }
.waiting-stage-copy h2 { margin:20px 0 14px; color:#fff; font-size:clamp(2.4rem,5vw,5.4rem); font-weight:950; line-height:.98; letter-spacing:-.04em; }
.waiting-stage-copy p { max-width:580px; margin:0; color:rgba(255,255,255,.68); font-size:clamp(.86rem,1.3vw,1.05rem); line-height:1.9; }
.waiting-stage-code { display:flex; align-items:center; gap:15px; margin-top:25px; padding:12px 16px; border:1px solid rgba(255,255,255,.14); border-radius:16px; background:rgba(255,255,255,.09); }
.waiting-stage-code small { color:rgba(255,255,255,.62); }.waiting-stage-code strong { color:#fff; font-size:1.65rem; letter-spacing:.16em; direction:ltr; }
.waiting-stage-participants { display:flex; align-items:center; gap:8px; margin-top:16px; color:rgba(255,255,255,.7); }.waiting-stage-participants i { font-size:1.1rem; }.waiting-stage-participants strong { color:#fff; font-size:1.2rem; }.waiting-stage-participants span { font-size:.8rem; }
.waiting-stage-qr { display:grid; justify-items:center; gap:9px; padding:24px; border:1px solid rgba(255,255,255,.16); border-radius:30px; background:rgba(255,255,255,.1); box-shadow:0 28px 70px rgba(0,0,0,.22); backdrop-filter:blur(16px); }
.waiting-qr-frame { position:relative; display:grid; place-items:center; width:min(330px,100%); aspect-ratio:1; padding:18px; border-radius:24px; background:#fff; box-shadow:0 18px 45px rgba(0,0,0,.2); }
.waiting-qr-frame img { display:block; width:100%; height:100%; object-fit:contain; }
.waiting-qr-frame i { position:absolute; width:34px; height:34px; border-color:var(--erp-primary); border-style:solid; }
.waiting-qr-frame i:nth-child(1){inset:8px auto auto 8px;border-width:4px 0 0 4px;border-radius:10px 0 0 0}.waiting-qr-frame i:nth-child(2){inset:8px 8px auto auto;border-width:4px 4px 0 0;border-radius:0 10px 0 0}.waiting-qr-frame i:nth-child(3){inset:auto auto 8px 8px;border-width:0 0 4px 4px;border-radius:0 0 0 10px}.waiting-qr-frame i:nth-child(4){inset:auto 8px 8px auto;border-width:0 4px 4px 0;border-radius:0 0 10px 0}
.waiting-stage-qr > strong { color:#fff; font-size:.9rem; }.waiting-stage-qr > small { color:rgba(255,255,255,.63); font-size:.72rem; }
.live-screen-board.is-waiting .live-command-card { display:none; }
.live-command-card {
    min-height:170px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px;
    border-radius:22px; color:#fff;
    background:linear-gradient(125deg,color-mix(in srgb,var(--erp-sidebar) 90%,var(--erp-primary)),color-mix(in srgb,var(--erp-primary) 78%,var(--erp-sidebar-active)));
    box-shadow:0 16px 38px color-mix(in srgb,var(--erp-primary) 16%,transparent);
}
.live-command-card .live-status { color:#fff; background:rgba(255,255,255,.14); }
.live-command-card h2 { margin:12px 0 7px; color:#fff; font-size:clamp(1.25rem,2vw,1.8rem); }
.live-command-card p { max-width:560px; margin:0; color:rgba(255,255,255,.76); line-height:1.7; }
.live-countdown-wrap { min-width:150px; display:grid; gap:7px; padding:18px; text-align:center; border:1px solid rgba(255,255,255,.13); border-radius:20px; background:rgba(255,255,255,.09); }
.live-countdown-wrap small { color:rgba(255,255,255,.72); }
.live-countdown-wrap .live-countdown { color:#fff; }
.live-countdown-wrap .live-countdown.is-ending { color:#fff; background:transparent; }
.live-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.live-metrics article { display:flex; align-items:center; gap:10px; padding:14px; border:1px solid var(--academy-line); border-radius:18px; background:var(--academy-bg); }
.live-metrics article > span { width:38px; height:38px; display:grid; place-items:center; flex:0 0 auto; border-radius:13px; color:var(--erp-primary); background:var(--academy-surface); }
.live-metrics article > div { display:grid; }
.live-metrics small { color:var(--academy-muted); }
.live-metrics strong { display:block; color:var(--academy-ink); font-size:1.35rem; }
.live-podium { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; align-items:end; }
.podium-rank { display:grid; gap:8px; justify-items:center; padding:18px 12px; border:1px solid var(--academy-line); border-radius:22px; background:linear-gradient(180deg,color-mix(in srgb,var(--erp-primary) 8%,var(--academy-surface)),var(--academy-surface)); }
.podium-rank span { display:grid; place-items:center; width:42px; height:42px; border-radius:16px; color:#fff; background:var(--erp-primary); font-weight:900; }
.podium-rank strong { color:var(--academy-ink); }
.podium-rank small { color:var(--academy-muted); }
.podium-1 { min-height:165px; }.podium-2 { min-height:135px; }.podium-3 { min-height:115px; }
.live-leaderboard,.live-question-stats { display:grid; gap:12px; padding:16px; border:1px solid var(--academy-line); border-radius:20px; background:var(--academy-bg); }
.live-host-panel { align-content:start; }
.live-flow-list { display:grid; gap:4px; margin:2px 0; padding:0; list-style:none; }
.live-flow-list li { display:flex; align-items:center; gap:9px; padding:10px; border-radius:14px; color:var(--academy-muted); }
.live-flow-list li > i { font-size:1.05rem; }
.live-flow-list li > span { display:grid; gap:2px; }
.live-flow-list strong { color:var(--academy-ink); font-size:.8rem; }
.live-flow-list small { font-size:.68rem; line-height:1.5; }
.live-flow-list li.is-active { color:var(--erp-primary); background:var(--academy-soft); }
.live-flow-list li.is-complete { color:var(--erp-success); }
.live-host-actions,.live-report-actions { display:grid; gap:8px; }
.live-host-actions .academy-btn,.live-report-actions .academy-btn { width:100%; }
.live-host-note { display:flex; align-items:flex-start; gap:8px; padding:11px; border-radius:14px; color:var(--academy-muted); background:var(--academy-bg); font-size:.7rem; line-height:1.7; }
.live-host-note i { color:var(--erp-primary); }
.live-leaderboard header,.live-question-stats header { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.live-leaderboard h2,.live-question-stats h2 { margin:0; color:var(--academy-ink); font-size:1.05rem; }
.live-leaderboard header span,.live-question-stats header span { color:var(--academy-muted); font-size:.8rem; }
.live-leaderboard-rows { display:grid; gap:8px; }
.live-leaderboard-rows article { display:grid; grid-template-columns:42px 1fr auto; gap:10px; align-items:center; padding:10px 12px; border:1px solid var(--academy-line); border-radius:14px; background:var(--academy-surface); }
.live-leaderboard-rows b { color:var(--erp-primary); }
.live-leaderboard-rows small { display:block; color:var(--academy-muted); }
.question-stat-row { position:relative; overflow:hidden; display:grid; grid-template-columns:1fr auto; gap:12px; padding:13px; border:1px solid var(--academy-line); border-radius:14px; background:var(--academy-surface); }
.question-stat-row > * { position:relative; z-index:1; }
.question-stat-row i { position:absolute; inset-block:0; inset-inline-start:0; z-index:0; background:color-mix(in srgb,var(--erp-success) 12%,transparent); }
.question-stat-row small { display:block; color:var(--academy-muted); }
.live-public-body { min-height:100vh; background:var(--academy-bg); }
.live-public-shell { display:grid; min-height:100vh; place-items:center; padding:20px; }
.live-public-card { display:grid; gap:16px; width:min(680px,100%); padding:26px; }
.live-public-card h1 { margin:0; color:var(--academy-ink); }
.live-join-form,.live-question-panel { display:grid; gap:12px; }
.live-answer-options { display:grid; gap:10px; }
.live-answer-options label { display:flex; align-items:center; gap:10px; padding:13px; border:1px solid var(--academy-line); border-radius:16px; background:var(--academy-bg); cursor:pointer; }
.live-answer-options input { width:18px; height:18px; accent-color:var(--erp-primary); }
.live-progress { justify-self:start; padding:6px 10px; border-radius:999px; color:var(--erp-primary); background:var(--academy-soft); font-weight:700; }
.live-question-topline { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.live-question-timer { padding:6px 10px; border-radius:999px; color:var(--academy-ink); background:var(--academy-bg); font-weight:900; direction:ltr; }
.live-question-timer.is-ending { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 8%,var(--academy-surface)); }
.live-session-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.live-session-options .option-card { min-height:86px; align-items:center; }
.live-session-exam-summary { display:flex; align-items:center; gap:12px; margin:0 20px 14px; padding:13px; border:1px solid var(--academy-line); border-radius:16px; background:var(--academy-bg); }
.live-session-exam-summary > span { width:42px; height:42px; display:grid; place-items:center; flex:0 0 auto; border-radius:14px; color:var(--erp-primary); background:var(--academy-soft); }
.live-session-exam-summary > div { display:grid; gap:2px; }
.live-session-exam-summary small,.live-session-exam-summary em { color:var(--academy-muted); font-size:.72rem; font-style:normal; }
.live-session-exam-summary strong { color:var(--academy-ink); font-size:.9rem; }
.live-filter-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.live-filter-options .field-caption { grid-column:1/-1; color:var(--academy-muted); font-size:.78rem; font-weight:800; }
.live-status-filter { min-width:180px; }
.live-session-index { display:grid; gap:12px; }
.live-session-card {
    display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px;
    padding:16px; border:1px solid var(--academy-line); border-radius:18px;
    background:var(--academy-surface); box-shadow:0 8px 22px rgba(15,23,42,.035);
}
.live-session-card-main { display:grid; gap:7px; min-width:0; }
.live-session-card-main > strong { color:var(--academy-ink); font-size:1.05rem; }
.live-session-card-main > small { color:var(--academy-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.live-session-card-main .status { justify-self:start; }
.live-session-meta { display:flex; gap:9px; flex-wrap:wrap; color:var(--academy-muted); font-size:.78rem; }
.live-session-meta span { display:inline-flex; align-items:center; gap:5px; padding:5px 9px; border-radius:999px; background:var(--academy-bg); }
.live-session-card-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.live-session-card-pro {
    position:relative;
    overflow:hidden;
    min-height:145px;
    padding:20px;
    border-radius:24px;
    background:
        radial-gradient(circle at 98% 0%, color-mix(in srgb,var(--erp-primary) 12%, transparent), transparent 30%),
        linear-gradient(180deg,var(--academy-surface),color-mix(in srgb,var(--academy-bg) 82%,var(--academy-surface)));
}
.live-session-card-pro::before {
    content:"";
    position:absolute;
    inset-block:18px;
    inset-inline-start:0;
    width:6px;
    border-radius:999px;
    background:var(--erp-primary);
}
.live-session-card-pro.is-running::before { background:var(--erp-success); }
.live-session-card-pro.is-finished::before { background:var(--academy-muted); }
.live-session-card-pro .live-session-card-main > strong {
    font-size:clamp(1.05rem,1.5vw,1.45rem);
}
.live-session-topline {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
}
.live-session-date {
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:var(--academy-muted);
    font-size:.76rem;
}
.live-session-card-pro .live-session-card-actions .academy-btn {
    min-height:40px;
    border-radius:14px;
}
.podium-rank em { color:var(--erp-primary); font-size:.72rem; font-style:normal; font-weight:900; }
.podium-rank.is-final { border-color:color-mix(in srgb,var(--erp-primary) 32%,var(--academy-line)); box-shadow:0 16px 38px color-mix(in srgb,var(--erp-primary) 10%,transparent); }
.live-print-report { display:grid; gap:18px; }
.live-print-summary { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.live-print-summary article { padding:15px; border:1px solid var(--academy-line); border-radius:18px; background:var(--academy-surface); box-shadow:var(--academy-shadow); }
.live-print-summary span { display:block; color:var(--academy-muted); font-size:.76rem; }
.live-print-summary strong { display:block; margin-top:5px; color:var(--academy-ink); font-size:1.18rem; }
.print-question-stats { display:grid; gap:10px; }
.academy-row-action {
    display:inline-flex; align-items:center; justify-content:center; gap:6px;
    min-height:30px; padding:6px 10px; border:1px solid var(--academy-line);
    border-radius:10px; color:var(--erp-primary); background:var(--academy-soft);
    text-decoration:none; font-size:.76rem; font-weight:800; white-space:nowrap;
}
.academy-row-action:hover { color:#fff; background:var(--erp-primary); border-color:var(--erp-primary); }
.person-card-actions {
    display:flex; align-items:center; justify-content:space-between; gap:8px;
}
.person-card-actions > span { margin-inline-end:auto; color:var(--academy-muted); font-weight:800; }
.batch-documents-dialog {
    width:min(1180px,calc(100vw - 34px));
}
.batch-documents-dialog form {
    max-height:min(86vh,820px);
}
.compact-stats {
    margin:0 20px 14px;
}
.document-ledger-filters {
    margin:0 20px 14px;
    padding:12px;
    border:1px solid var(--academy-line);
    border-radius:16px;
    background:var(--academy-bg);
}
.document-ledger-table {
    margin:0 20px;
    max-height:430px;
    overflow:auto;
    border:1px solid var(--academy-line);
    border-radius:16px;
}
.document-ledger-table .academy-table {
    margin:0;
}
.document-ledger-table thead th {
    position:sticky;
    top:0;
    z-index:1;
}
.financial-center-readiness { margin-bottom:16px; }
.financial-check-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:10px;
}
.financial-check-card {
    display:flex; align-items:flex-start; gap:10px;
    padding:12px; border:1px solid var(--academy-line);
    border-radius:16px; background:var(--academy-surface);
}
.financial-check-card > span {
    width:34px; height:34px; display:grid; place-items:center; flex:0 0 auto;
    border-radius:12px; background:var(--academy-bg); color:var(--academy-muted);
}
.financial-check-card strong { display:block; color:var(--academy-ink); font-size:.86rem; }
.financial-check-card small { display:block; margin-top:4px; color:var(--academy-muted); line-height:1.55; }
.financial-check-card.check-ready > span { color:var(--erp-success); background:color-mix(in srgb,var(--erp-success) 10%,var(--academy-bg)); }
.financial-check-card.check-warning > span { color:#b45309; background:#fff7ed; }
.financial-check-card.check-blocked > span { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 8%,var(--academy-bg)); }
.financial-center-table { max-height:560px; }
.aging-bucket-grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    margin:14px 0;
}
.aging-bucket-grid article {
    padding:14px;
    border:1px solid var(--academy-line);
    border-radius:16px;
    background:var(--academy-bg);
}
.aging-bucket-grid span,
.aging-bucket-grid small {
    display:block;
    color:var(--academy-muted);
    font-size:.76rem;
}
.aging-bucket-grid strong {
    display:block;
    margin:5px 0;
    color:var(--academy-ink);
    font-size:1rem;
}
.status-overdue { color:var(--erp-danger); background:color-mix(in srgb,var(--erp-danger) 8%,var(--academy-surface)); }

@media (max-width: 1100px) {
    .aging-bucket-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .academy-span-8,.academy-span-7 { grid-column:span 12; }.academy-span-4,.academy-span-5 { grid-column:span 6; }
    .academy-form-layout { grid-template-columns:1fr; }
    .academy-options-panel { position:static; order:-1; }
    .academy-options-list { grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); }
    .live-control-layout { grid-template-columns:minmax(250px,300px) minmax(0,1fr); }
    .live-host-panel { position:static; grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; }
    .live-host-panel .live-side-heading,.live-host-panel .live-host-note { grid-column:1/-1; }
    .financial-control-grid { grid-template-columns:1fr; }
}
@media (max-width: 800px) {
    .academy-page { padding:18px 14px 32px; }
    .academy-sidebar { position:fixed; inset:0 auto 0 0; z-index:1090; transform:translateX(-105%); transition:.2s ease; box-shadow:12px 0 35px rgba(0,0,0,.2); }
    [dir="rtl"] .academy-sidebar { inset:0 0 0 auto; transform:translateX(105%); }
    .academy-menu-open .academy-sidebar { transform:translateX(0); }
    .academy-sidebar-backdrop { display:none; position:fixed; inset:0; z-index:1080; background:rgba(14,13,32,.5); }
    .academy-menu-open .academy-sidebar-backdrop { display:block; }
    .academy-mobile-menu { display:flex; position:fixed; z-index:1070; bottom:18px; inset-inline-start:18px; border:0; border-radius:22px; padding:10px 14px; gap:7px; color:#fff; background:var(--erp-primary); box-shadow:0 8px 24px color-mix(in srgb,var(--erp-primary) 24%,transparent); font-size:11px; }
    .academy-hero,.academy-page-head { align-items:flex-start; flex-direction:column; }.academy-hero { padding:25px; }
    .academy-span-4,.academy-span-5 { grid-column:span 12; }
    .academy-workspace-grid > * { grid-column:span 12; }
    .taxonomy-layout { grid-template-columns:1fr; }
    .reference-grid { grid-template-columns:1fr; }
    .batch-enrollment-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .receipt-voucher-dialog .receipt-context-card { grid-template-columns:1fr; }
    .voucher-context-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .report-filter-bar { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .live-control-header { align-items:flex-start; flex-direction:column; padding:22px; }
    .live-control-layout { grid-template-columns:1fr; }
    .live-join-card,.live-host-panel { position:static; }
    .live-host-panel { grid-template-columns:1fr; }
    .live-command-card { align-items:flex-start; flex-direction:column; }
    .live-countdown-wrap { width:100%; }
    .batch-financial-cycle { align-items:flex-start; flex-direction:column; }
    .batch-financial-cycle .academy-panel-actions { width:100%; }
    .batch-lifecycle-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .financial-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .financial-close-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .post-ready-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .live-print-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .academy-flow-cards { grid-template-columns:1fr; }
    .live-session-card { grid-template-columns:1fr; }
    .live-session-card-actions { justify-content:flex-start; }
}
@media (max-width: 540px) {
    .academy-kpis,.course-grid,.people-grid,.academy-form-grid { grid-template-columns:1fr; }
    .field-wide { grid-column:auto; }.academy-kpis article { padding:14px; }
    .academy-hero-actions,.academy-hero-actions .academy-btn { width:100%; }.academy-toolbar { flex-wrap:wrap; }
    .batch-lifecycle-head { grid-template-columns:1fr; }
    .batch-lifecycle-steps { grid-template-columns:1fr; }
    .batch-lifecycle-actions,.batch-lifecycle-actions .academy-btn { width:100%; }
    .instructor-payable-flow { grid-template-columns:1fr; margin-inline:10px; }
    .academy-dialog .academy-form-grid { grid-template-columns:1fr; }
    .batch-enrollment-summary { grid-template-columns:1fr; }
    .post-ready-summary { grid-template-columns:1fr; }
    .receipt-voucher-dialog .receipt-context-lines { grid-template-columns:1fr; }
    .academy-panel-actions,.academy-panel-actions .academy-btn { width:100%; }
    .voucher-context-strip { grid-template-columns:1fr; }
    .report-filter-bar { grid-template-columns:1fr; }
    .instructor-batch-list { grid-template-columns:1fr; padding:10px; }
    .live-metrics,.live-podium { grid-template-columns:1fr; }
    .live-filter-options { grid-template-columns:1fr; }
    .live-print-summary { grid-template-columns:1fr; }
    .live-leaderboard header,.live-question-stats header { align-items:flex-start; flex-direction:column; }
    .financial-control-head { grid-template-columns:auto 1fr; }
    .financial-control-head > strong { grid-column:1/-1; justify-self:stretch; padding:8px; border-radius:12px; background:var(--academy-bg); }
    .financial-metric-grid,.financial-close-summary { grid-template-columns:1fr; }
    .cancellation-impact { grid-template-columns:1fr; }
    .aging-bucket-grid { grid-template-columns:1fr; }
}

body.live-presentation-mode .erp-navbar,
body.live-presentation-mode .academy-sidebar,
body.live-presentation-mode .academy-mobile-menu,
body.live-presentation-mode .live-host-panel,
body.live-presentation-mode .live-join-card,
body.live-presentation-mode .live-control-header { display:none!important; }
body.live-presentation-mode .app-content { padding:0!important; }
body.live-presentation-mode .academy-page { min-height:100vh; padding:0; }
body.live-presentation-mode .live-control-header .academy-actions a { display:none; }
body.live-presentation-mode .live-control-layout { grid-template-columns:minmax(0,1fr); min-height:100vh; }
body.live-presentation-mode .live-screen-board { min-height:100vh; border:0; border-radius:0; padding:0; }
body.live-presentation-mode .live-waiting-stage { min-height:100vh; border-radius:0; grid-template-columns:minmax(0,1fr) minmax(380px,32vw); }
body.live-presentation-mode .waiting-qr-frame { width:min(440px,100%); }
@media (max-width:900px) {
    .live-waiting-stage { grid-template-columns:1fr; text-align:center; }
    .waiting-stage-copy { justify-items:center; }.waiting-stage-copy p { text-align:center; }
    .waiting-stage-qr { width:min(440px,100%); justify-self:center; }
}

/* Academy command dashboard */
.academy-command-hero { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1.5fr) minmax(330px,.65fr); gap:24px; min-height:310px; margin-bottom:18px; padding:clamp(26px,3vw,48px); border-radius:30px; color:#fff; background:linear-gradient(128deg,color-mix(in srgb,var(--erp-sidebar) 92%,var(--erp-primary)),color-mix(in srgb,var(--erp-primary) 82%,var(--erp-sidebar-active))); box-shadow:0 24px 60px color-mix(in srgb,var(--erp-primary) 20%,transparent); }
.academy-command-hero::before { content:""; position:absolute; width:520px; height:520px; inset:-310px auto auto -170px; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018); }
.academy-command-copy,.academy-command-pulse { position:relative; z-index:1; }
.academy-command-copy { align-self:center; }
.academy-command-kicker { display:inline-flex; align-items:center; gap:8px; padding:7px 11px; border:1px solid rgba(255,255,255,.14); border-radius:999px; color:rgba(255,255,255,.84); background:rgba(255,255,255,.08); font-size:.76rem; font-weight:900; }
.academy-command-copy h1 { margin:17px 0 12px; color:#fff; font-size:clamp(2.1rem,4vw,4.25rem); font-weight:950; line-height:1.02; letter-spacing:-.035em; }
.academy-command-copy h1 em { color:color-mix(in srgb,#fff 68%,var(--erp-accent)); font-style:normal; }
.academy-command-copy p { max-width:720px; margin:0; color:rgba(255,255,255,.72); font-size:clamp(.88rem,1.2vw,1.05rem); line-height:1.9; }
.academy-command-actions { display:flex; gap:9px; flex-wrap:wrap; margin-top:24px; }
.academy-command-actions .academy-btn-light { color:#fff!important; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.09); backdrop-filter:blur(10px); }
.academy-command-actions .academy-btn-primary { color:var(--erp-primary)!important; background:#fff; }
.academy-command-pulse { position:relative; overflow:hidden; align-self:stretch; display:grid; align-content:space-between; min-height:230px; padding:22px; border:1px solid rgba(255,255,255,.16); border-radius:25px; background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.06)); backdrop-filter:blur(18px); }
.command-pulse-head { display:flex; justify-content:space-between; gap:12px; color:rgba(255,255,255,.68); font-size:.72rem; }
.command-pulse-head span { display:flex; align-items:center; gap:7px; font-weight:800; }
.command-pulse-head span i { width:8px; height:8px; border-radius:50%; background:#61e7a6; box-shadow:0 0 0 5px rgba(97,231,166,.14); }
.command-pulse-value { display:flex; align-items:end; gap:12px; margin:18px 0; }
.command-pulse-value strong { color:#fff; font-size:clamp(3.2rem,6vw,5.6rem); line-height:.8; }
.command-pulse-value span { color:rgba(255,255,255,.72); font-weight:800; }
.command-pulse-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.command-pulse-grid div { display:grid; gap:5px; padding:10px; border-radius:13px; background:rgba(255,255,255,.08); }
.command-pulse-grid small { color:rgba(255,255,255,.6); font-size:.65rem; }
.command-pulse-grid strong { color:#fff; font-size:1.05rem; }
.command-orbit { position:absolute; width:190px; height:190px; inset:auto -80px -100px auto; border:1px solid rgba(255,255,255,.12); border-radius:50%; }
.command-orbit i { position:absolute; width:7px; height:7px; border-radius:50%; background:#fff; }
.command-orbit i:nth-child(1){top:15%;left:20%}.command-orbit i:nth-child(2){top:45%;left:-2%}.command-orbit i:nth-child(3){top:4%;left:55%}
.academy-executive-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.academy-executive-kpis article { display:flex; align-items:center; gap:13px; min-width:0; padding:17px; border:1px solid var(--academy-line); border-radius:20px; background:var(--academy-surface); box-shadow:var(--academy-shadow); }
.academy-executive-kpis article > span { display:grid; place-items:center; flex:0 0 auto; width:45px; height:45px; border-radius:15px; color:var(--erp-primary); background:var(--academy-soft); font-size:1.1rem; }
.academy-executive-kpis article > div { display:grid; min-width:0; gap:3px; }
.academy-executive-kpis small,.academy-executive-kpis em { overflow:hidden; color:var(--academy-muted); font-size:.69rem; font-style:normal; white-space:nowrap; text-overflow:ellipsis; }
.academy-executive-kpis strong { color:var(--academy-ink); font-size:1.45rem; line-height:1.2; }
.academy-executive-kpis strong b { font:inherit; }.academy-executive-kpis sup { color:var(--academy-muted); font-size:.56rem; }
.academy-command-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:16px; }
.academy-command-card { min-width:0; padding:20px; border:1px solid var(--academy-line); border-radius:24px; background:var(--academy-surface); box-shadow:var(--academy-shadow); }
.academy-command-card > header { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:17px; }
.academy-command-card > header > div { display:grid; gap:3px; }.academy-command-card > header span { color:var(--erp-primary); font-size:.68rem; font-weight:900; }
.academy-command-card > header h2 { margin:0; color:var(--academy-ink); font-size:1.05rem; }.academy-command-card > header > i { color:var(--erp-primary); font-size:1.25rem; }
.academy-command-card > header a { color:var(--erp-primary); font-size:.75rem; font-weight:800; text-decoration:none; }
.academy-trend-card { grid-column:span 8; }.academy-health-card { grid-column:span 4; }.academy-active-card { grid-column:span 8; }.academy-alert-card { grid-column:span 4; }
.academy-top-courses { grid-column:span 5; }.academy-status-card { grid-column:span 3; }.academy-recent-card { grid-column:span 8; }.academy-upcoming-card { grid-column:span 4; }
.trend-legend { display:flex!important; grid-auto-flow:column; gap:10px!important; }.trend-legend span { display:flex; align-items:center; gap:5px; color:var(--academy-muted)!important; font-weight:700!important; }
.trend-legend i { width:8px; height:8px; border-radius:3px; }.trend-legend .registrations { background:var(--erp-primary); }.trend-legend .collections { background:color-mix(in srgb,var(--erp-success) 74%,var(--erp-primary)); }
.academy-trend-chart { display:grid; grid-template-columns:repeat(6,minmax(44px,1fr)); gap:12px; align-items:end; min-height:230px; padding:16px 12px 0; border-bottom:1px solid var(--academy-line); background:repeating-linear-gradient(to top,transparent 0 54px,color-mix(in srgb,var(--academy-line) 65%,transparent) 55px); }
.academy-trend-chart article { display:grid; justify-items:center; align-self:stretch; grid-template-rows:1fr auto auto; gap:5px; }
.trend-bars { display:flex; align-items:end; justify-content:center; gap:5px; width:100%; height:170px; }
.trend-bars i { display:block; width:min(17px,34%); min-height:8px; border-radius:6px 6px 2px 2px; transition:.35s ease; }
.trend-bars .registrations { background:linear-gradient(to top,var(--erp-primary),color-mix(in srgb,var(--erp-primary) 54%,#fff)); }
.trend-bars .collections { background:linear-gradient(to top,var(--erp-success),color-mix(in srgb,var(--erp-success) 48%,#fff)); }
.academy-trend-chart article > strong { color:var(--academy-ink); font-size:.69rem; direction:ltr; }.academy-trend-chart article > small { color:var(--academy-muted); font-size:.63rem; }
.academy-health-rings { display:grid; gap:14px; }
.academy-health-rings article { display:grid; grid-template-columns:58px 1fr; align-items:center; gap:12px; }
.academy-health-rings article > div { display:grid; place-items:center; width:58px; height:58px; border-radius:50%; background:conic-gradient(var(--erp-primary) var(--health-value,0deg),var(--academy-soft) 0); }
.academy-health-rings article > div::before { content:""; grid-area:1/1; width:44px; height:44px; border-radius:50%; background:var(--academy-surface); }
.academy-health-rings article > div strong { grid-area:1/1; z-index:1; color:var(--academy-ink); font-size:.72rem; }
.academy-health-rings article > span { display:grid; color:var(--academy-ink); font-weight:900; }.academy-health-rings article small { color:var(--academy-muted); font-size:.68rem; font-weight:600; }
.academy-mini-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin-top:18px; padding-top:15px; border-top:1px dashed var(--academy-line); }
.academy-mini-facts span { display:grid; justify-items:center; gap:3px; color:var(--academy-muted); font-size:.63rem; text-align:center; }.academy-mini-facts i { color:var(--erp-primary); }.academy-mini-facts b { color:var(--academy-ink); font-size:.9rem; }
.command-batch-list,.academy-alert-feed,.top-course-list,.command-upcoming-list { display:grid; gap:9px; }
.command-batch-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(130px,190px) auto; align-items:center; gap:16px; padding:14px; border:1px solid var(--academy-line); border-radius:16px; color:inherit!important; background:var(--academy-bg); text-decoration:none; transition:.18s ease; }
.command-batch-card:hover { transform:translateY(-2px); border-color:color-mix(in srgb,var(--erp-primary) 30%,var(--academy-line)); box-shadow:0 10px 24px rgba(15,23,42,.06); }
.command-batch-main { min-width:0; }.command-batch-main .batch-code { color:var(--erp-primary); font-size:.66rem; font-weight:900; }
.command-batch-main h3 { overflow:hidden; margin:4px 0; color:var(--academy-ink); font-size:.88rem; white-space:nowrap; text-overflow:ellipsis; }.command-batch-main p { display:flex; gap:5px; margin:0; color:var(--academy-muted); font-size:.68rem; }
.command-batch-progress { display:grid; grid-template-columns:1fr auto; gap:5px 8px; }.command-batch-progress strong { color:var(--academy-ink); }.command-batch-progress small { color:var(--academy-muted); font-size:.65rem; }.command-batch-progress .academy-progress { grid-column:1/-1; }
.academy-alert-item { display:grid; grid-template-columns:38px 1fr auto; align-items:center; gap:10px; padding:11px; border:1px solid var(--academy-line); border-radius:14px; color:inherit!important; background:var(--academy-bg); text-decoration:none; }
.academy-alert-item > i { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; color:var(--erp-primary); background:var(--academy-surface); }.academy-alert-item span { display:grid; }.academy-alert-item strong { color:var(--academy-ink); font-size:.76rem; }.academy-alert-item small { color:var(--academy-muted); font-size:.65rem; line-height:1.5; }.academy-alert-item > b { color:var(--academy-muted); }
.academy-alert-item.alert-warning > i { color:var(--erp-warning); }.academy-alert-item.alert-finance > i { color:var(--erp-danger); }.academy-alert-item.alert-live > i { color:var(--erp-success); }
.alert-report-link { display:flex; justify-content:center; gap:7px; margin-top:12px; padding:10px; border-radius:12px; color:var(--erp-primary)!important; background:var(--academy-soft); font-size:.73rem; font-weight:900; text-decoration:none; }
.academy-all-clear { display:grid; justify-items:center; gap:6px; padding:25px; color:var(--academy-muted); text-align:center; }.academy-all-clear i { color:var(--erp-success); font-size:1.8rem; }.academy-all-clear strong { color:var(--academy-ink); }
.top-course-list article { display:grid; grid-template-columns:30px 1fr; gap:3px 9px; align-items:center; }.top-course-list article > b { grid-row:1/3; color:color-mix(in srgb,var(--erp-primary) 55%,var(--academy-muted)); font-size:.72rem; }
.top-course-list article > span { display:grid; }.top-course-list strong { overflow:hidden; color:var(--academy-ink); font-size:.76rem; white-space:nowrap; text-overflow:ellipsis; }.top-course-list small { color:var(--academy-muted); font-size:.63rem; }
.top-course-list article > div { grid-column:2; height:5px; overflow:hidden; border-radius:999px; background:var(--academy-soft); }.top-course-list article > div i { display:block; height:100%; border-radius:inherit; background:var(--erp-primary); }
.batch-status-visual { display:grid; justify-items:center; gap:16px; }.status-donut { display:grid; place-items:center; width:150px; height:150px; border-radius:50%; }.status-donut::before { content:""; grid-area:1/1; width:104px; height:104px; border-radius:50%; background:var(--academy-surface); }.status-donut span { grid-area:1/1; z-index:1; display:grid; justify-items:center; }.status-donut strong { color:var(--academy-ink); font-size:1.65rem; }.status-donut small { color:var(--academy-muted); }
.status-legend { display:grid; width:100%; gap:7px; }.status-legend span { display:grid; grid-template-columns:8px 1fr auto; align-items:center; gap:7px; }.status-legend i { width:8px; height:8px; border-radius:3px; }.status-legend b { color:var(--academy-muted); font-size:.68rem; }.status-legend strong { color:var(--academy-ink); font-size:.75rem; }
.command-upcoming-list a { display:grid; grid-template-columns:48px 1fr auto; align-items:center; gap:10px; padding:10px; border-radius:14px; color:inherit!important; background:var(--academy-bg); text-decoration:none; }
.command-upcoming-list time { display:grid; justify-items:center; padding:6px; border-radius:11px; color:var(--erp-primary); background:var(--academy-surface); }.command-upcoming-list time strong { font-size:1.05rem; }.command-upcoming-list time small { font-size:.6rem; }
.command-upcoming-list a > span { display:grid; min-width:0; }.command-upcoming-list a > span strong { overflow:hidden; color:var(--academy-ink); font-size:.74rem; white-space:nowrap; text-overflow:ellipsis; }.command-upcoming-list a > span small { color:var(--academy-muted); font-size:.63rem; }.command-upcoming-list em { color:var(--erp-primary); font-size:.7rem; font-style:normal; font-weight:900; }
@media (max-width:1200px) {
    .academy-command-hero { grid-template-columns:1fr minmax(300px,.65fr); }
    .academy-trend-card,.academy-active-card,.academy-recent-card { grid-column:span 7; }
    .academy-health-card,.academy-alert-card,.academy-upcoming-card { grid-column:span 5; }
    .academy-top-courses { grid-column:span 7; }.academy-status-card { grid-column:span 5; }
}
@media (max-width:900px) {
    .academy-command-hero { grid-template-columns:1fr; }.academy-command-pulse { min-height:210px; }
    .academy-executive-kpis { grid-template-columns:repeat(2,1fr); }
    .academy-command-card { grid-column:1/-1!important; }
}
@media (max-width:600px) {
    .academy-command-hero { padding:24px; border-radius:22px; }.academy-command-copy h1 { font-size:2.15rem; }
    .academy-command-actions,.academy-command-actions .academy-btn { width:100%; }
    .academy-executive-kpis { grid-template-columns:1fr; }
    .command-batch-card { grid-template-columns:1fr auto; }.command-batch-progress { grid-column:1/-1; grid-row:2; }
    .academy-trend-chart { gap:5px; padding-inline:2px; }.trend-bars { gap:2px; }
}
.batch-completion-readiness {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .9rem 1rem;
    border-block: 1px solid var(--academy-border, #e5e7eb);
}
.batch-completion-readiness > div {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}
.session-item.is-completed {
    border-color: color-mix(in srgb, var(--success-color, #16a34a) 28%, transparent);
    background: color-mix(in srgb, var(--success-color, #16a34a) 5%, var(--academy-surface, #fff));
}
.late-enrollment-warning {
    grid-column: 1 / -1;
    border-color: color-mix(in srgb, var(--warning-color, #d97706) 35%, transparent) !important;
}
.question-library-toolbar {
    display: grid;
    grid-template-columns: minmax(220px, .8fr) minmax(280px, 1.4fr) auto auto;
    gap: .75rem;
    align-items: end;
}
.question-library-toolbar label {
    display: grid;
    gap: .4rem;
    color: var(--academy-text-muted, #64748b);
    font-size: .82rem;
}
.question-library-toolbar input,
.question-library-toolbar select {
    min-height: 42px;
    border: 1px solid var(--academy-border, #dbe2ea);
    border-radius: 12px;
    background: var(--academy-surface, #fff);
    color: var(--academy-text, #172033);
    padding-inline: .8rem;
}
.question-library-results {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: .85rem;
    margin-top: 1rem;
}
.question-source-card {
    border: 1px solid var(--academy-border, #e2e8f0);
    border-radius: 16px;
    overflow: hidden;
    background: var(--academy-surface, #fff);
}
.question-source-card > header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .8rem;
    padding: .85rem 1rem;
    background: color-mix(in srgb, var(--primary-color, #4f46e5) 6%, transparent);
}
.question-source-card header span,
.question-library-item span {
    display: grid;
    gap: .2rem;
}
.question-source-card small,
.question-library-item small {
    color: var(--academy-text-muted, #64748b);
}
.question-library-item {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .75rem 1rem;
    border-top: 1px solid var(--academy-border, #edf0f4);
    cursor: pointer;
}
.question-library-item:hover {
    background: color-mix(in srgb, var(--primary-color, #4f46e5) 4%, transparent);
}
.question-library-item input {
    margin-top: .2rem;
}
@media (max-width: 900px) {
    .question-library-toolbar {
        grid-template-columns: 1fr;
    }
}
/* Quick live exam studio */
.quick-exam-studio {
    overflow: hidden;
}

.quick-exam-layout {
    display: grid;
    grid-template-columns: minmax(280px, 0.9fr) minmax(420px, 1.45fr) minmax(260px, 0.75fr);
    gap: 1rem;
    align-items: start;
}

.quick-exam-card {
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 1.35rem;
    background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(248,250,252,0.92));
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06);
    padding: 1.1rem;
    display: grid;
    gap: 0.9rem;
}

.quick-exam-card h3 {
    margin: 0;
    font-size: 1rem;
}

.quick-exam-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.quick-builder-head,
.quick-import-toolbar {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.quick-question-form,
.quick-import-box,
.quick-question-list,
.quick-library-results {
    display: grid;
    gap: 0.75rem;
}

.quick-question-list article,
.quick-library-card,
.quick-exam-history-row {
    border: 1px solid rgba(148, 163, 184, 0.24);
    border-radius: 1rem;
    background: rgba(255,255,255,0.82);
}

.quick-question-list article {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.85rem;
}

.quick-question-list article span {
    width: 2rem;
    height: 2rem;
    display: grid;
    place-items: center;
    border-radius: 0.8rem;
    background: rgba(var(--academy-primary-rgb, 37, 99, 235), 0.1);
    color: var(--academy-primary, #2563eb);
    font-weight: 800;
}

.quick-library-card {
    padding: 0.85rem;
    display: grid;
    gap: 0.55rem;
}

.quick-library-card header {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    color: #334155;
}

.quick-library-card label {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 0.6rem;
    align-items: center;
    padding: 0.55rem 0;
    border-top: 1px dashed rgba(148, 163, 184, 0.24);
}

.quick-exam-history-row {
    width: 100%;
    text-align: inherit;
    padding: 0.8rem;
    display: grid;
    gap: 0.25rem;
    cursor: pointer;
    color: inherit;
}

.quick-exam-history-row:hover {
    border-color: rgba(var(--academy-primary-rgb, 37, 99, 235), 0.35);
    background: rgba(var(--academy-primary-rgb, 37, 99, 235), 0.05);
}

@media (max-width: 1200px) {
    .quick-exam-layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .quick-exam-grid,
    .quick-question-list article,
    .quick-library-card label {
        grid-template-columns: 1fr;
    }
}

.certificate-template-designer {
    display: grid;
    grid-template-columns: minmax(250px, .75fr) minmax(520px, 1.35fr) minmax(420px, 1fr);
    gap: 1rem;
    align-items: start;
}

.certificate-template-editor-panel .academy-form-grid {
    margin-bottom: 1rem;
}

.certificate-preview-stage {
    --cert-primary: var(--erp-primary);
    --cert-accent: #c9a227;
    --cert-bg: var(--academy-bg);
    --cert-text: var(--academy-ink);
    --cert-muted: var(--academy-muted);
    --cert-border: var(--academy-line);
    --cert-font: var(--erp-font-family, Tahoma, Arial, sans-serif);
    min-height: 620px;
    display: grid;
    place-items: center;
    padding: 1rem;
    border-radius: 1.4rem;
    background:
        radial-gradient(circle at 12% 12%, color-mix(in srgb, var(--cert-primary) 12%, transparent), transparent 34%),
        linear-gradient(145deg, var(--academy-bg), var(--academy-surface));
    overflow: auto;
}

.certificate-preview-paper {
    position: relative;
    width: min(100%, 720px);
    aspect-ratio: 1.414 / 1;
    display: grid;
    grid-template-rows: auto 1fr auto auto;
    gap: 1rem;
    padding: 2rem;
    border: 2px solid color-mix(in srgb, var(--cert-accent) 58%, var(--cert-border));
    border-radius: 2rem;
    color: var(--cert-text);
    font-family: var(--cert-font);
    text-align: center;
    background:
        radial-gradient(circle at 88% 10%, color-mix(in srgb, var(--cert-accent) 16%, transparent), transparent 26%),
        radial-gradient(circle at 8% 92%, color-mix(in srgb, var(--cert-primary) 12%, transparent), transparent 28%),
        linear-gradient(135deg, color-mix(in srgb, var(--cert-bg) 82%, white), white);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .14);
    overflow: hidden;
}

.certificate-preview-stage[data-orientation="PORTRAIT"] .certificate-preview-paper {
    width: min(100%, 440px);
    aspect-ratio: .707 / 1;
}

.cert-preview-watermark {
    position: absolute;
    inset-inline: 0;
    top: 38%;
    z-index: 0;
    color: color-mix(in srgb, var(--cert-primary) 7%, transparent);
    font-size: clamp(3rem, 8vw, 6rem);
    font-weight: 900;
    letter-spacing: .35rem;
    transform: rotate(-12deg);
    pointer-events: none;
}

.cert-preview-top,
.cert-preview-content,
.cert-preview-bottom,
.cert-preview-verify {
    position: relative;
    z-index: 1;
}

.cert-preview-top {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    color: var(--cert-primary);
    font-weight: 900;
    letter-spacing: .08em;
}

.cert-preview-logo {
    width: 3rem;
    height: 3rem;
    display: grid;
    place-items: center;
    border-radius: 1rem;
    color: #fff;
    background: linear-gradient(135deg, var(--cert-primary), color-mix(in srgb, var(--cert-primary) 74%, var(--cert-accent)));
}

.cert-preview-content {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: .45rem;
}

.cert-preview-title {
    display: inline-flex;
    padding: .35rem 1rem;
    border: 1px solid color-mix(in srgb, var(--cert-accent) 48%, transparent);
    border-radius: 999px;
    color: var(--cert-accent);
    font-weight: 900;
}

.cert-preview-content h3 {
    margin: .3rem 0;
    color: var(--cert-primary);
    font-size: clamp(2rem, 4vw, 3.25rem);
    line-height: 1.15;
}

.cert-preview-content h4 {
    margin: .2rem 0;
    color: var(--cert-text);
    font-size: clamp(1.3rem, 2.5vw, 2rem);
}

.cert-preview-intro,
.cert-preview-completion {
    margin: 0;
    color: var(--cert-muted);
    font-weight: 800;
}

.cert-preview-meta {
    display: flex;
    gap: .7rem;
    flex-wrap: wrap;
    justify-content: center;
    color: var(--cert-muted);
    font-size: .9rem;
}

.cert-preview-meta span {
    padding: .3rem .65rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--cert-primary) 7%, white);
}

.cert-preview-bottom {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 1rem;
    align-items: end;
}

.cert-preview-sign {
    min-height: 3.6rem;
    padding-top: .85rem;
    border-top: 1px solid var(--cert-border);
}

.cert-preview-sign strong,
.cert-preview-sign span {
    display: block;
}

.cert-preview-sign span {
    color: var(--cert-muted);
    font-size: .82rem;
}

.cert-preview-seal {
    width: 4.2rem;
    height: 4.2rem;
    display: grid;
    place-items: center;
    border: 2px solid var(--cert-accent);
    border-radius: 50%;
    color: var(--cert-accent);
    font-weight: 900;
    transform: rotate(-9deg);
}

.cert-preview-verify {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .6rem;
    color: var(--cert-muted);
    font-size: .82rem;
}

.cert-preview-qr {
    width: 2.3rem;
    height: 2.3rem;
    display: grid;
    place-items: center;
    border: 1px solid var(--cert-border);
    border-radius: .6rem;
    color: var(--cert-text);
    background: #fff;
}

.certificate-preview-stage.hide-logo .cert-preview-logo,
.certificate-preview-stage.hide-logo .cert-preview-academy,
.certificate-preview-stage.hide-qr .cert-preview-qr,
.certificate-preview-stage.hide-code .cert-preview-verify span,
.certificate-preview-stage.hide-grade .cert-preview-grade,
.certificate-preview-stage.hide-instructor .cert-preview-sign.instructor,
.certificate-preview-stage.hide-director .cert-preview-sign.director,
.certificate-preview-stage.hide-seal .cert-preview-seal {
    display: none;
}

.certificate-preview-stage[data-layout="CLASSIC"] .certificate-preview-paper {
    border-radius: .6rem;
    background: #fff;
}

.certificate-preview-stage[data-layout="MODERN"] .certificate-preview-paper {
    border: 0;
    border-inline-start: .65rem solid var(--cert-primary);
    border-radius: 1.2rem;
}

@media (max-width: 1400px) {
    .certificate-template-designer {
        grid-template-columns: 300px 1fr;
    }
    .certificate-preview-panel {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .certificate-template-designer {
        grid-template-columns: 1fr;
    }
}

/* Live exam public/mobile redesign */
.live-public-redesign {
    align-content: center;
    padding: max(18px, env(safe-area-inset-top)) 16px max(22px, env(safe-area-inset-bottom));
    background:
        radial-gradient(circle at 12% 8%, color-mix(in srgb, var(--erp-primary) 16%, transparent), transparent 30%),
        linear-gradient(180deg, color-mix(in srgb, var(--academy-bg) 86%, white), var(--academy-bg));
}

.live-entry-card,
.live-waiting-mobile,
.live-question-mobile {
    width: min(680px, 100%);
    border-radius: 30px;
    padding: clamp(22px, 5vw, 34px);
    border: 1px solid color-mix(in srgb, var(--academy-line) 76%, transparent);
    background: color-mix(in srgb, var(--academy-surface) 96%, white);
    box-shadow: 0 28px 80px rgba(15, 23, 42, .13);
}

.live-mobile-brand {
    display: flex;
    align-items: center;
    gap: .7rem;
    color: var(--erp-primary);
    font-weight: 950;
    letter-spacing: .02em;
}

.live-mobile-brand span,
.waiting-orb {
    width: 3rem;
    height: 3rem;
    display: grid;
    place-items: center;
    border-radius: 1rem;
    color: #fff;
    background: linear-gradient(135deg, var(--erp-primary), color-mix(in srgb, var(--erp-primary) 72%, #7c3aed));
}

.live-entry-hero {
    display: grid;
    gap: .55rem;
    margin-block: 1.4rem 1rem;
}

.live-entry-hero small {
    color: var(--academy-muted);
    font-weight: 850;
}

.live-entry-hero h1 {
    font-size: clamp(2rem, 8vw, 3.35rem);
    line-height: 1.15;
}

.live-entry-hero p,
.live-waiting-mobile p {
    margin: 0;
    color: var(--academy-muted);
    line-height: 1.8;
}

.live-join-modern {
    gap: 1rem;
}

.live-identity-field {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: .75rem;
    padding: .25rem .95rem;
    border: 1px solid var(--academy-line);
    border-radius: 1.1rem;
    background: var(--academy-bg);
}

.live-identity-field i {
    color: var(--erp-primary);
}

.live-identity-field .form-control {
    border: 0;
    background: transparent;
    min-height: 3.15rem;
    box-shadow: none;
    font-size: 1.05rem;
}

.live-identity-field .form-control.is-prefilled {
    border-radius: .9rem;
    background: linear-gradient(135deg, rgba(34, 197, 94, .09), rgba(255, 255, 255, .84));
}

.certificate-history-list {
    display: grid;
    gap: .75rem;
    min-height: 8rem;
    padding: 1rem 1.25rem;
}

.certificate-history-event {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: start;
    gap: .85rem;
    padding: 1rem;
    border: 1px solid var(--academy-line);
    border-radius: 1rem;
    background: var(--academy-bg);
}

.certificate-history-event > span {
    display: grid;
    place-items: center;
    width: 2.65rem;
    height: 2.65rem;
    border-radius: .9rem;
    color: var(--erp-primary);
    background: color-mix(in srgb, var(--erp-primary) 10%, white);
}

.certificate-history-event.is-revoked > span {
    color: #dc2626;
    background: #fef2f2;
}

.certificate-history-event strong,
.certificate-history-event small {
    display: block;
}

.certificate-history-event small {
    margin-top: .2rem;
    color: var(--academy-muted);
}

.certificate-history-event p {
    margin: .55rem 0 0;
    color: var(--academy-text);
}

.live-join-submit,
.live-answer-submit {
    justify-content: center;
    min-height: 3.25rem;
    border-radius: 1rem;
    font-weight: 950;
}

.live-public-message {
    padding: .85rem 1rem;
    border-radius: 1rem;
    font-weight: 850;
}

.live-public-message.is-danger {
    color: var(--erp-danger);
    background: color-mix(in srgb, var(--erp-danger) 9%, var(--academy-surface));
}

.live-waiting-mobile {
    justify-items: center;
    text-align: center;
    min-height: min(72vh, 620px);
    align-content: center;
}

.waiting-orb {
    width: 5rem;
    height: 5rem;
    border-radius: 1.6rem;
    font-size: 2rem;
    margin-bottom: 1rem;
    box-shadow: 0 18px 42px color-mix(in srgb, var(--erp-primary) 22%, transparent);
}

.waiting-orb.is-success {
    background: linear-gradient(135deg, var(--erp-success), #22c55e);
}

.live-waiting-mobile small {
    color: var(--erp-primary);
    font-weight: 900;
}

.live-waiting-mobile h2 {
    margin: .45rem 0;
    color: var(--academy-ink);
    font-size: clamp(1.8rem, 7vw, 3rem);
}

.waiting-pulse {
    display: flex;
    gap: .45rem;
    margin-top: 1.4rem;
}

.waiting-pulse span {
    width: .7rem;
    height: .7rem;
    border-radius: 50%;
    background: var(--erp-primary);
    animation: livePulse 1.15s infinite ease-in-out;
}

.waiting-pulse span:nth-child(2) { animation-delay: .16s; }
.waiting-pulse span:nth-child(3) { animation-delay: .32s; }

@keyframes livePulse {
    0%, 80%, 100% { transform: scale(.65); opacity: .35; }
    40% { transform: scale(1); opacity: 1; }
}

.live-question-mobile {
    gap: 1.3rem;
}

.live-question-mobile-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.live-question-mobile h2 {
    margin: .4rem 0 0;
    color: var(--academy-ink);
    font-size: clamp(1.75rem, 7vw, 2.9rem);
    line-height: 1.45;
}

.live-answer-modern {
    gap: .9rem;
}

.live-answer-modern label {
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
}

.live-answer-modern input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.live-answer-modern label span {
    display: grid;
    grid-template-columns: 2.35rem 1fr;
    align-items: center;
    gap: .85rem;
    min-height: 4.2rem;
    padding: .85rem 1rem;
    border: 1px solid var(--academy-line);
    border-radius: 1.25rem;
    color: var(--academy-ink);
    background: var(--academy-bg);
    font-size: clamp(1.05rem, 4.4vw, 1.45rem);
    font-weight: 850;
    line-height: 1.5;
}

.live-answer-modern label span b {
    width: 2.15rem;
    height: 2.15rem;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--academy-muted);
    background: var(--academy-surface);
}

.live-answer-modern input:checked + span {
    border-color: color-mix(in srgb, var(--erp-primary) 58%, var(--academy-line));
    background: color-mix(in srgb, var(--erp-primary) 9%, var(--academy-surface));
    box-shadow: 0 12px 28px color-mix(in srgb, var(--erp-primary) 12%, transparent);
}

.live-answer-modern input:checked + span b {
    color: #fff;
    background: var(--erp-primary);
}

.live-answer-row {
    display: grid;
    grid-template-columns: 2.7rem 1fr;
    gap: .8rem;
    align-items: center;
    padding: .9rem;
    border: 1px solid var(--academy-line);
    border-radius: 1rem;
    background: var(--academy-surface);
}

.live-answer-row > b {
    width: 2.35rem;
    height: 2.35rem;
    display: grid;
    place-items: center;
    border-radius: .85rem;
    color: #fff;
    background: var(--erp-primary);
}

.live-answer-main {
    display: grid;
    gap: .55rem;
}

.live-answer-main header,
.live-answer-main footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .55rem;
    flex-wrap: wrap;
}

.live-answer-main strong,
.live-answer-main small {
    display: block;
}

.live-answer-main small,
.live-answer-main footer {
    color: var(--academy-muted);
    font-size: .82rem;
}

.live-answer-main em {
    color: var(--erp-primary);
    font-style: normal;
    font-weight: 950;
}

.live-progress-track {
    height: .55rem;
    overflow: hidden;
    border-radius: 999px;
    background: var(--academy-line);
}

.live-progress-track i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--erp-primary), var(--erp-success));
}

.live-answer-main .is-correct { color: var(--erp-success); }
.live-answer-main .is-wrong { color: var(--erp-danger); }

.live-answer-monitor {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--academy-line);
    border-radius: 20px;
    background: var(--academy-bg);
}

.live-answer-monitor header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.live-answer-monitor h2 {
    margin: 0;
    color: var(--academy-ink);
    font-size: 1.05rem;
}

.live-answer-monitor header span {
    color: var(--academy-muted);
    font-size: .8rem;
}

@media (max-width: 680px) {
    .live-public-redesign {
        place-items: stretch;
        padding-inline: 10px;
    }
    .live-entry-card,
    .live-waiting-mobile,
    .live-question-mobile {
        width: 100%;
        min-height: calc(100vh - 28px);
        border-radius: 26px;
    }
}

@media (max-width: 900px) {
    .quality-analytics-head { align-items:flex-start; flex-direction:column; }
    .quality-executive-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .quality-analytics-grid { grid-template-columns:1fr; }
    .quality-trend-panel { grid-column:auto; }
}

@media (max-width: 560px) {
    .quality-executive-kpis { grid-template-columns:1fr; }
    .quality-ranking-row { grid-template-columns:22px 34px minmax(0,1fr); }
    .quality-ranking-row > em { grid-column:3; }
    .quality-alert-row { grid-template-columns:36px minmax(0,1fr); }
    .quality-alert-row > em { grid-column:2; justify-self:start; }
    .quality-alert-row::after { grid-column:2; justify-self:start; }
    .quality-plan-row { grid-template-columns:38px minmax(0,1fr) auto; }
    .quality-plan-row .quality-plan-date { grid-column:2; }
    .quality-plan-row > .bi-chevron-left { grid-column:3; grid-row:1; }
}

/* Live exam screen designer */
.live-template-designer {
    display: grid;
    grid-template-columns: minmax(250px, .72fr) minmax(620px, 1.65fr) minmax(360px, .95fr);
    grid-template-areas: "templates preview editor";
    gap: 1rem;
    align-items: start;
}

.live-template-list-panel { grid-area: templates; }
.live-template-preview-panel { grid-area: preview; }
.live-template-editor-panel { grid-area: editor; }

.live-template-list {
    display: grid;
    gap: .7rem;
}

.live-template-list-item {
    width: 100%;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .7rem;
    align-items: center;
    padding: .85rem;
    border: 1px solid var(--academy-line);
    border-radius: 1rem;
    background: var(--academy-bg);
    color: inherit;
    text-align: inherit;
}

.live-template-list-item span {
    grid-row: span 2;
    width: 2.4rem;
    height: 2.4rem;
    display: grid;
    place-items: center;
    border-radius: .9rem;
    color: var(--erp-primary);
    background: var(--academy-soft);
}

.live-template-list-item strong,
.live-template-list-item small {
    display: block;
}

.live-template-list-item small {
    color: var(--academy-muted);
    font-size: .75rem;
}

.live-template-list-item.is-active,
.live-template-list-item:hover {
    border-color: color-mix(in srgb, var(--erp-primary) 38%, var(--academy-line));
    background: color-mix(in srgb, var(--erp-primary) 6%, var(--academy-surface));
}

.live-template-form {
    display: grid;
    gap: 1rem;
}

.live-template-toggles {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .7rem;
}

.live-template-toggles label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    padding: .75rem;
    border: 1px solid var(--academy-line);
    border-radius: 1rem;
    background: var(--academy-bg);
    font-size: .82rem;
    font-weight: 800;
}

.live-template-toggles input {
    accent-color: var(--erp-primary);
}

.live-template-preview-stage {
    --live-template-primary: #6d3df5;
    --live-template-accent: #22c55e;
    --live-template-bg: #171633;
    --live-template-text: #fff;
    min-height: 680px;
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(220px, 320px);
    align-content: center;
    gap: 1.2rem;
    padding: clamp(1.35rem, 2.5vw, 2.4rem);
    border-radius: 1.5rem;
    color: var(--live-template-text);
    background:
        radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--live-template-primary) 55%, transparent), transparent 36%),
        linear-gradient(135deg, var(--live-template-bg), color-mix(in srgb, var(--live-template-primary) 72%, var(--live-template-bg)));
    box-shadow: 0 24px 70px rgba(15,23,42,.18);
    overflow: hidden;
}

.preview-brand {
    grid-column: 1/-1;
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: .55rem;
    padding: .45rem .7rem;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    background: rgba(255,255,255,.1);
    font-weight: 900;
}

.preview-copy {
    display: grid;
    align-content: center;
    gap: .9rem;
}

.preview-copy small {
    color: color-mix(in srgb, var(--live-template-text) 75%, transparent);
    font-weight: 900;
}

.preview-copy h3 {
    margin: 0;
    color: var(--live-template-text);
    font-size: clamp(2.8rem, 5vw, 5.8rem);
    font-weight: 950;
    line-height: 1.05;
}

.preview-copy p {
    margin: 0;
    color: color-mix(in srgb, var(--live-template-text) 72%, transparent);
    line-height: 1.8;
}

.preview-code {
    width: fit-content;
    padding: .75rem 1.1rem;
    border-radius: 1rem;
    background: rgba(255,255,255,.13);
    letter-spacing: .16em;
    direction: ltr;
}

.preview-participants {
    color: color-mix(in srgb, var(--live-template-text) 75%, transparent);
    font-style: normal;
}

.preview-qr {
    min-height: 320px;
    display: grid;
    place-items: center;
    align-self: center;
    border-radius: 1.35rem;
    background: #fff;
    color: #111827;
    font-size: 11rem;
    box-shadow: 0 24px 55px rgba(0,0,0,.23);
}

.live-template-preview-stage[data-layout="CENTER_QR"] {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
}

.live-template-preview-stage[data-layout="CENTER_QR"] .preview-qr {
    order: 2;
    width: min(460px, 100%);
}

.live-template-preview-stage[data-layout="IMMERSIVE"] {
    min-height: 760px;
    grid-template-columns: 1fr;
}

.live-template-preview-stage[data-layout="IMMERSIVE"] .preview-qr {
    width: min(520px, 100%);
    justify-self: center;
}

.live-template-preview-stage[data-density="FULL_STAGE"] { min-height: 780px; border-radius: 2rem; }
.live-template-preview-stage[data-qr-size="MEDIUM"] .preview-qr { min-height: 240px; font-size: 8rem; }
.live-template-preview-stage[data-qr-size="XL"] .preview-qr { min-height: 430px; font-size: 14rem; }
.live-template-preview-stage.hide-logo .preview-brand,
.live-template-preview-stage.hide-code .preview-code,
.live-template-preview-stage.hide-participants .preview-participants,
.live-template-preview-stage.hide-instructions .preview-copy p { display: none; }

@media (max-width: 1300px) {
    .live-template-designer {
        grid-template-columns: 1fr;
        grid-template-areas: "preview" "editor" "templates";
    }
}

@media (max-width: 840px) {
    .live-template-toggles,
    .live-template-preview-stage {
        grid-template-columns: 1fr;
    }
}

/* Daily operations center */
.operations-shell {
    display: grid;
    gap: 1rem;
}

.operations-kpis {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: .8rem;
}

.operations-kpis article {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .35rem .7rem;
    align-items: center;
    padding: 1rem;
    border: 1px solid var(--academy-line);
    border-radius: 1.2rem;
    background: linear-gradient(180deg, var(--academy-surface), color-mix(in srgb, var(--academy-bg) 72%, var(--academy-surface)));
    box-shadow: var(--academy-shadow);
}

.operations-kpis span {
    grid-row: span 2;
    width: 2.6rem;
    height: 2.6rem;
    display: grid;
    place-items: center;
    border-radius: .95rem;
    color: var(--erp-primary);
    background: var(--academy-soft);
}

.operations-kpis small {
    color: var(--academy-muted);
    font-weight: 800;
}

.operations-kpis strong {
    color: var(--academy-ink);
    font-size: 1.55rem;
    line-height: 1;
}

.operations-task-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
}

.operations-task-card {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: .85rem;
    align-items: center;
    padding: 1rem;
    border: 1px solid var(--academy-line);
    border-radius: 1.15rem;
    color: inherit;
    text-decoration: none;
    background: var(--academy-bg);
}

.operations-task-card > i {
    width: 2.8rem;
    height: 2.8rem;
    display: grid;
    place-items: center;
    border-radius: 1rem;
    color: var(--erp-primary);
    background: var(--academy-surface);
}

.operations-task-card strong,
.operations-task-card small {
    display: block;
}

.operations-task-card small {
    margin-top: .2rem;
    color: var(--academy-muted);
    line-height: 1.55;
}

.operations-task-card > b {
    min-width: 2.2rem;
    height: 2.2rem;
    display: grid;
    place-items: center;
    border-radius: .8rem;
    color: #fff;
    background: var(--erp-primary);
}

.operations-task-card.task-warning > b { background: var(--erp-warning); }
.operations-task-card.task-danger > b { background: var(--erp-danger); }
.operations-task-card.task-finance > b { background: var(--erp-info); }
.operations-task-card.task-live > b { background: var(--erp-primary); }

.operations-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .75fr);
    gap: 1rem;
    align-items: start;
}

.operations-wide-panel {
    grid-column: 1 / -1;
}

.operations-timeline,
.operations-list,
.operations-document-grid {
    display: grid;
    gap: .75rem;
}

.operations-session-row,
.operations-list-row,
.operations-batch-progress,
.operations-document-grid article a {
    display: grid;
    gap: .75rem;
    align-items: center;
    padding: .85rem;
    border: 1px solid var(--academy-line);
    border-radius: 1rem;
    background: var(--academy-bg);
    color: inherit;
    text-decoration: none;
}

.operations-session-row {
    grid-template-columns: 5.5rem 1fr auto;
}

.operations-session-row time {
    display: grid;
    gap: .2rem;
    padding: .65rem;
    border-radius: .9rem;
    background: var(--academy-surface);
    text-align: center;
    direction: ltr;
}

.operations-session-row time strong {
    color: var(--erp-primary);
}

.operations-session-row span strong,
.operations-session-row span small,
.operations-list-row span strong,
.operations-list-row span small,
.operations-batch-progress span strong,
.operations-batch-progress span small {
    display: block;
}

.operations-session-row small,
.operations-list-row small,
.operations-batch-progress small {
    color: var(--academy-muted);
    margin-top: .2rem;
}

.operations-list-row {
    grid-template-columns: auto 1fr auto;
}

.operations-list-row > i {
    width: 2.4rem;
    height: 2.4rem;
    display: grid;
    place-items: center;
    border-radius: .85rem;
    color: var(--erp-primary);
    background: var(--academy-surface);
}

.operations-list-row > b {
    color: var(--erp-primary);
    direction: ltr;
}

.operations-document-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.operations-document-grid article {
    display: grid;
    gap: .7rem;
    padding: .9rem;
    border: 1px solid var(--academy-line);
    border-radius: 1.15rem;
    background: var(--academy-bg);
}

.operations-document-grid article header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .6rem;
}

.operations-document-grid article header i {
    color: var(--erp-primary);
}

.operations-document-grid article header b {
    min-width: 1.8rem;
    height: 1.8rem;
    display: grid;
    place-items: center;
    border-radius: .65rem;
    color: #fff;
    background: var(--erp-primary);
}

.operations-document-grid article a {
    grid-template-columns: 1fr auto;
    background: var(--academy-surface);
}

.operations-document-grid article a em {
    color: var(--academy-ink);
    font-style: normal;
    font-weight: 900;
}

.operations-batch-progress {
    grid-template-columns: 1fr auto;
}

.operations-batch-progress > i {
    grid-column: 1 / -1;
    height: .55rem;
    overflow: hidden;
    border-radius: 999px;
    background: var(--academy-line);
}

.operations-batch-progress > i > em {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--erp-primary), var(--erp-success));
}

.operations-batch-progress > b {
    color: var(--erp-primary);
}

@media (max-width: 1300px) {
    .operations-kpis,
    .operations-task-grid,
    .operations-document-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .operations-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .operations-kpis,
    .operations-task-grid,
    .operations-document-grid,
    .operations-session-row,
    .operations-list-row {
        grid-template-columns: 1fr;
    }
}
