/* ==========================================================================
   TAXLIENT ACADEMY × LIUANTX DESIGN SYSTEM
   Theme: Executive Teal Green Light Mode & Glassmorphism Aesthetics
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root {
    /* Primary Teal Green Palette */
    --primary-teal: #0d9488;
    --primary-dark: #0f766e;
    --primary-darker: #134e4a;
    --primary-light: #14b8a6;
    --primary-soft: #99f6e4;
    --mint-bg: #f0fdfa;
    --mint-border: #ccfbf1;
    
    /* Emerald & Success Accents */
    --emerald-accent: #059669;
    --emerald-light: #d1fae5;
    
    /* Neutral Tone Palette */
    --bg-main: #f8fafc;
    --surface: #ffffff;
    --surface-hover: #f1f5f9;
    
    /* Typography Colors */
    --text-heading: #0f172a;
    --text-body: #334155;
    --text-muted: #64748b;
    --text-light: #94a3b8;
    
    /* Borders & Shadows */
    --border: #e2e8f0;
    --border-teal: rgba(13, 148, 136, 0.2);
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
    --shadow-md: 0 4px 6px -1px rgba(15, 23, 42, 0.08), 0 2px 4px -2px rgba(15, 23, 42, 0.05);
    --shadow-lg: 0 10px 25px -5px rgba(15, 23, 42, 0.1), 0 8px 10px -6px rgba(15, 23, 42, 0.04);
    --shadow-teal: 0 10px 25px -5px rgba(13, 148, 136, 0.25);
    
    /* Radii & Transitions */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 16px;
    --radius-full: 9999px;
    --transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Global Reset */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    background-color: var(--bg-main);
    color: var(--text-body);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

/* Header Navbar */
.app-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--border-teal);
    box-shadow: var(--shadow-sm);
}

.nav-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 76px;
}

.brand-wrapper .brand-logo {
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, var(--primary-teal), var(--primary-darker));
    color: #ffffff;
    font-weight: 800;
    font-size: 1.4rem;
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(13, 148, 136, 0.3);
}

.brand-wrapper .brand-text h1 {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--text-heading);
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.brand-wrapper .brand-text span {
    font-size: 0.75rem;
    color: var(--primary-teal);
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    list-style: none;
}

.nav-links a {
    text-decoration: none;
    color: var(--text-body);
    font-weight: 600;
    font-size: 0.95rem;
    transition: var(--transition);
    position: relative;
    padding: 0.5rem 0.25rem;
}

.nav-links a:hover {
    color: var(--primary-teal);
}

.nav-links a.active {
    color: var(--primary-teal);
}

.nav-links a.active::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--primary-teal);
    border-radius: var(--radius-full);
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-weight: 700;
    font-size: 0.95rem;
    padding: 0.65rem 1.35rem;
    border-radius: var(--radius-md);
    text-decoration: none;
    transition: var(--transition);
    cursor: pointer;
    border: 1px solid transparent;
}

.btn-primary {
    background: linear-gradient(135deg, var(--primary-teal), var(--primary-dark));
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(13, 148, 136, 0.35);
}

.btn-primary:hover {
    background: linear-gradient(135deg, var(--primary-dark), var(--primary-darker));
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(13, 148, 136, 0.45);
}

.btn-outline {
    background: #ffffff;
    color: var(--primary-dark);
    border-color: var(--border-teal);
    box-shadow: var(--shadow-sm);
}

.btn-outline:hover {
    background: var(--mint-bg);
    border-color: var(--primary-teal);
    transform: translateY(-2px);
    color: var(--primary-darker);
}

/* Badges */
.badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.75rem;
    border-radius: var(--radius-full);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.badge-teal {
    background-color: var(--mint-bg);
    color: var(--primary-darker);
    border: 1px solid var(--mint-border);
}

.badge-emerald {
    background-color: var(--emerald-light);
    color: #065f46;
}

/* Cards & Layout */
.card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 1.75rem;
    box-shadow: var(--shadow-md);
    transition: var(--transition);
    position: relative;
    overflow: hidden;
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
    border-color: var(--border-teal);
}

.course-card {
    border-top: 4px solid var(--primary-teal);
}

.stats-grid {
    display: grid;
    gap: 1.75rem;
}

/* Hero Section Styling */
.hero-wrapper {
    background: linear-gradient(135deg, #f0fdfa 0%, #e6fffa 50%, #ffffff 100%);
    border-bottom: 1px solid var(--border-teal);
    padding: 4.5rem 0;
    position: relative;
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 3.5rem;
    align-items: center;
}

.hero-banner-container {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-teal);
    border: 3px solid #ffffff;
}

.hero-banner-img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    display: block;
}

.hero-badge-overlay {
    position: absolute;
    bottom: 1.25rem;
    left: 1.25rem;
    right: 1.25rem;
    background: rgba(15, 23, 42, 0.85);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 1rem 1.25rem;
    border-radius: var(--radius-md);
    color: #ffffff;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Footer Styling */
.app-footer {
    background: #0f172a;
    color: #94a3b8;
    padding: 4rem 0 2.5rem 0;
    border-top: 4px solid var(--primary-teal);
}

.app-footer a {
    color: #cbd5e1;
    text-decoration: none;
    transition: var(--transition);
}

.app-footer a:hover {
    color: var(--primary-soft);
}

/* Responsive Controls */
@media (max-width: 992px) {
    .hero-grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}

/* Admin control centre */
.admin-body { font-family: Inter, sans-serif; background: #f6f8fa; color: #0f172a; min-width: 320px; }
.admin-body h1,.admin-body h2,.admin-body h3,.admin-brand { font-family: "Plus Jakarta Sans", sans-serif; }
.skip-link:not(:focus) { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.skip-link:focus { position: fixed !important; top: 1rem !important; left: 1rem !important; z-index: 9999 !important; padding: .7rem 1rem !important; background: #0f172a !important; color: #ffffff !important; border-radius: 8px !important; box-shadow: 0 10px 25px rgba(0,0,0,0.2) !important; }
.admin-shell { min-height:100vh; display:grid; grid-template-columns:276px minmax(0,1fr); }
.admin-sidebar { position:fixed; inset:0 auto 0 0; width:276px; z-index:1200; display:flex; flex-direction:column; background:linear-gradient(180deg,#092525,#0b3030); color:#d6efeb; border-right:1px solid rgba(255,255,255,.07); transition:transform .2s ease; }
.admin-brand { height:76px; display:flex; align-items:center; gap:.75rem; padding:0 1rem; text-decoration:none; color:#fff; border-bottom:1px solid rgba(255,255,255,.08); }
.admin-brand-mark { display:grid; place-items:center; width:38px; height:38px; border-radius:10px; background:linear-gradient(135deg,#14b8a6,#059669); font-size:1.15rem; font-weight:800; box-shadow:0 8px 20px rgba(20,184,166,.22); }
.admin-brand strong { display:block; line-height:1.1; font-size:1.02rem; }
.admin-brand small { display:block; color:#8dbbb6; font-size:.66rem; margin-top:3px; letter-spacing:.04em; text-transform:uppercase; }
.admin-nav { flex:1; overflow-y:auto; padding:.7rem .65rem 1rem; scrollbar-width:thin; }
.admin-nav-group { margin:0 0 .75rem; }
.admin-nav-group h2 { margin:0; padding:.45rem .72rem .3rem; color:#6faaa4; font:800 .62rem/1.2 Inter,sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.admin-nav a { display:flex; align-items:center; gap:.75rem; min-height:38px; margin:2px 0; padding:.5rem .7rem; border-radius:8px; color:#a9cac6; text-decoration:none; font-size:.82rem; font-weight:600; }
.admin-nav a span:first-child { width:20px; text-align:center; font-size:1rem; color:#70aaa4; }
.admin-nav a:hover { color:#fff; background:rgba(255,255,255,.06); }
.admin-nav a.active { color:#fff; background:#0f766e; box-shadow:inset 3px 0 #5eead4; }
.admin-nav a.active span:first-child { color:#ccfbf1; }
.admin-nav-group:not(:last-child) { padding-bottom:.5rem; border-bottom:1px solid rgba(255,255,255,.055); }
.admin-sidebar-footer { display:flex; align-items:center; gap:.7rem; padding:.85rem 1rem; border-top:1px solid rgba(255,255,255,.08); font-size:.73rem; }
.admin-sidebar-footer strong,.admin-sidebar-footer small { display:block; }.admin-sidebar-footer small{color:#7da9a5}
.security-dot,.status-dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:#34d399; box-shadow:0 0 0 4px rgba(52,211,153,.12); }
.admin-workspace { grid-column:2; min-width:0; }
.admin-topbar { position:sticky; top:0; z-index:900; height:76px; display:flex; align-items:center; gap:1rem; padding:0 1.5rem; background:rgba(255,255,255,.96); backdrop-filter:blur(12px); border-bottom:1px solid #dbe5e4; }
.icon-button { display:grid; place-items:center; width:38px; height:38px; border:1px solid #dbe5e4; border-radius:9px; background:#fff; color:#475569; text-decoration:none; cursor:pointer; }
.sidebar-toggle { display:none; }
.global-search { flex:1; max-width:520px; height:40px; display:flex; align-items:center; gap:.6rem; padding:0 .75rem; border:1px solid #dbe5e4; border-radius:9px; background:#f8fafc; }
.global-search:focus-within { border-color:#0d9488; box-shadow:0 0 0 3px rgba(13,148,136,.12); }
.global-search input { flex:1; min-width:0; border:0; outline:0; background:transparent; font:inherit; font-size:.85rem; }
.global-search kbd { padding:1px 6px; border:1px solid #cbd5e1; border-radius:4px; background:#fff; color:#64748b; font-size:.7rem; }
.admin-context { margin-left:auto; display:flex; align-items:center; gap:.65rem; position:relative; }
.context-chip { display:flex; align-items:center; gap:.55rem; height:38px; padding:0 .8rem; border:1px solid #dbe5e4; background:#fff; border-radius:9px; font-size:.75rem; color:#475569; }
.context-chip .status-dot{width:7px;height:7px}
.global-create-button{height:38px;padding:0 .8rem;border:1px solid #0f766e;border-radius:8px;background:#0f766e;color:#fff;font:700 .73rem Inter;cursor:pointer}.create-menu{right:176px;display:grid;grid-template-columns:1fr 1fr;width:300px}.create-menu[hidden]{display:none}
.profile-button { display:flex; align-items:center; gap:.55rem; padding:.2rem .4rem .2rem .2rem; border:0; background:transparent; cursor:pointer; text-align:left; }
.profile-button>span:first-child { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; color:#fff; background:#0f766e; font-weight:800; }
.profile-copy strong,.profile-copy small { display:block; white-space:nowrap; }.profile-copy strong{font-size:.78rem}.profile-copy small{font-size:.66rem;color:#64748b}
.profile-menu { position:absolute; top:48px; right:0; width:190px; padding:.45rem; background:#fff; border:1px solid #dbe5e4; border-radius:10px; box-shadow:0 14px 30px rgba(15,23,42,.14); }
.profile-menu.create-menu{right:176px;width:300px}
.profile-menu a { display:block; padding:.65rem .7rem; border-radius:7px; color:#334155; text-decoration:none; font-size:.82rem; }.profile-menu a:hover{background:#f0fdfa;color:#0f766e}
.admin-main { max-width:1540px; margin:0 auto; padding:1.6rem; outline:0; }
.page-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:1.5rem; margin-bottom:1.3rem; }
.page-heading h1 { margin:.2rem 0 .25rem; color:#0f172a; font-size:1.65rem; letter-spacing:-.035em; }
.page-heading p { max-width:760px; color:#64748b; font-size:.86rem; }
.page-actions { display:flex; gap:.6rem; flex-shrink:0; }
.breadcrumb { display:flex; align-items:center; gap:.45rem; color:#94a3b8; font-size:.72rem; }
.breadcrumb a,.breadcrumb span { color:#94a3b8; text-decoration:none; }.breadcrumb strong{color:#0f766e}
.admin-body .btn { min-height:38px; padding:.52rem .9rem; border-radius:8px; font-size:.78rem; box-shadow:none; }
.admin-body .btn:hover { transform:none; }
.btn-quiet { background:#fff; border-color:#dbe5e4; color:#475569; }
.notice { margin-bottom:1rem; padding:.75rem 1rem; border:1px solid; border-radius:9px; font-size:.82rem; }.notice.success{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}
.notice.error{color:#991b1b;background:#fef2f2;border-color:#fecaca}
.kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.8rem; margin-bottom:.9rem; }
.kpi-card { position:relative; min-height:134px; padding:1rem; background:#fff; border:1px solid #dbe5e4; border-radius:12px; color:inherit; text-decoration:none; box-shadow:0 1px 2px rgba(15,23,42,.03); }
.kpi-card:hover { border-color:#99d8d2; box-shadow:0 8px 20px rgba(15,118,110,.08); }
.kpi-icon { position:absolute; right:1rem; top:1rem; display:grid; place-items:center; width:32px; height:32px; color:#0f766e; background:#f0fdfa; border-radius:8px; font-weight:800; }
.kpi-label { display:block; max-width:75%; color:#64748b; font-size:.73rem; font-weight:600; }.kpi-card>strong{display:block;margin:.55rem 0 .2rem;font:800 1.55rem "Plus Jakarta Sans";color:#0f172a}.kpi-card small{font-size:.66rem;color:#64748b}.kpi-card small span{color:#0d9488}
.dashboard-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:.9rem; }
.span-7{grid-column:span 7}.span-5{grid-column:span 5}
.admin-card { padding:1.1rem; background:#fff; border:1px solid #dbe5e4; border-radius:12px; box-shadow:0 1px 2px rgba(15,23,42,.03); }
.card-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.card-heading h2 { margin-top:.1rem; color:#0f172a; font-size:.95rem; }.card-heading>a{color:#0f766e;text-decoration:none;font-size:.72rem;font-weight:700}
.eyebrow { color:#0d9488; font-size:.62rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.funnel-list { display:grid; gap:.72rem; }
.funnel-row { display:grid; grid-template-columns:120px minmax(120px,1fr) 42px; align-items:center; gap:.7rem; font-size:.72rem; }
.funnel-row span:first-child{color:#475569}.funnel-track{height:16px;background:#eef4f3;border-radius:5px;overflow:hidden}.funnel-track i{display:block;height:100%;background:linear-gradient(90deg,#0f766e,#2dd4bf);border-radius:5px}.funnel-row strong{text-align:right}
.accessible-summary { margin-top:.8rem; color:#94a3b8; font-size:.62rem; }
.queue-list { display:grid; }.queue-list a{display:grid;grid-template-columns:8px 1fr auto 10px;align-items:center;gap:.6rem;padding:.63rem 0;border-bottom:1px solid #edf2f1;color:#334155;text-decoration:none;font-size:.71rem}.queue-list a:last-child{border:0}.queue-indicator{width:7px;height:7px;border-radius:50%}.queue-indicator.warning{background:#f59e0b}.queue-indicator.info{background:#3b82f6}.queue-indicator.danger{background:#ef4444}.queue-list strong{padding:.1rem .45rem;border-radius:99px;background:#f1f5f9}
.finance-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:.6rem; }
.finance-summary div { padding:.75rem; border:1px solid #e8efee; border-radius:8px; }.finance-summary span,.finance-summary strong{display:block}.finance-summary span{font-size:.63rem;color:#64748b}.finance-summary strong{margin-top:.2rem;font-size:.85rem}.finance-summary .finance-total{background:#f0fdfa;border-color:#bfece6}
.split-bar { display:flex; margin-top:.8rem; height:30px; overflow:hidden; border-radius:7px; color:#fff; font-size:.63rem; font-weight:700; }.split-bar span{display:flex;align-items:center;justify-content:center;background:#0f766e}.split-bar span:last-child{background:#059669;border-left:2px solid #fff}
.activity-list{list-style:none;display:grid;gap:.65rem;max-height:255px;overflow:auto}.activity-list li{display:grid;grid-template-columns:10px 1fr;gap:.55rem}.activity-mark{width:8px;height:8px;margin-top:.25rem;border-radius:50%;background:#14b8a6;box-shadow:0 0 0 4px #f0fdfa}.activity-list strong{display:block;font-size:.68rem;text-transform:capitalize}.activity-list p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#64748b;font-size:.65rem}.activity-list small{color:#94a3b8;font-size:.6rem}
.empty-inline,.empty-state{text-align:center;color:#64748b}.empty-inline{padding:1.6rem}.empty-inline span,.empty-state>span{display:block;color:#0d9488;font-size:1.5rem}.empty-inline strong{font-size:.8rem}.empty-inline p{font-size:.7rem}
.metric-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); margin-bottom:.9rem; background:#fff; border:1px solid #dbe5e4; border-radius:11px; overflow:hidden; }
.metric-strip div { padding:.85rem 1rem; border-right:1px solid #e7eeed; }.metric-strip div:last-child{border:0}.metric-strip span,.metric-strip strong{display:block}.metric-strip span{color:#64748b;font-size:.66rem}.metric-strip strong{margin-top:.15rem;font:750 1.15rem "Plus Jakarta Sans";color:#0f172a}
.table-card { padding:0; overflow:hidden; }
.table-toolbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.8rem 1rem; border-bottom:1px solid #e7eeed; }
.table-search{display:flex;align-items:center;gap:.5rem;width:min(380px,100%);height:36px;padding:0 .65rem;background:#f8fafc;border:1px solid #dbe5e4;border-radius:8px}.table-search input{width:100%;border:0;outline:0;background:transparent;font:inherit;font-size:.76rem}.toolbar-actions{display:flex;gap:.5rem}
.filter-panel{display:flex;align-items:flex-end;gap:.7rem;padding:.75rem 1rem;background:#f8fafc;border-bottom:1px solid #e7eeed}.filter-panel[hidden]{display:none}.filter-panel label{display:grid;gap:.25rem;color:#64748b;font-size:.65rem;font-weight:700}.filter-panel select{min-width:190px;padding:.52rem;border:1px solid #cfdcda;border-radius:7px;background:#fff}
.admin-table-wrap { overflow:auto; max-width:100%; }
.admin-table { width:100%; border-collapse:collapse; font-size:.72rem; white-space:nowrap; }
.admin-table th { padding:.68rem .85rem; background:#f8fafc; border-bottom:1px solid #dbe5e4; color:#64748b; text-align:left; font-size:.63rem; font-weight:800; letter-spacing:.035em; text-transform:uppercase; }
.admin-table td { max-width:320px; padding:.72rem .85rem; border-bottom:1px solid #edf2f1; color:#334155; overflow:hidden; text-overflow:ellipsis; }
.admin-table tbody tr:hover{background:#fbfefd}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table td>strong{color:#0f172a}.cell-subtitle{display:block;margin-top:.14rem;color:#94a3b8}.code-text{font-family:ui-monospace,monospace;font-size:.69rem;color:#0f766e!important}
.status-badge { display:inline-flex;align-items:center;gap:.35rem;padding:.22rem .48rem;border:1px solid #dbe5e4;border-radius:99px;background:#f8fafc;color:#475569;font-size:.62rem;font-weight:700}.status-badge i{width:6px;height:6px;border-radius:50%;background:#94a3b8}
.status-published,.status-active,.status-resolved,.status-closed,.status-valid,.status-enabled,.status-ready,.status-approved,.status-posted,.status-completed{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.status-published i,.status-active i,.status-resolved i,.status-closed i,.status-valid i,.status-enabled i,.status-ready i,.status-approved i,.status-posted i,.status-completed i{background:#22c55e}
.status-pending,.status-awaiting-second-approval,.status-under-review,.status-required,.status-high,.status-urgent,.status-scheduled{background:#fffbeb;border-color:#fde68a;color:#92400e}.status-pending i,.status-awaiting-second-approval i,.status-under-review i,.status-required i,.status-high i,.status-urgent i,.status-scheduled i{background:#f59e0b}
.status-planned,.status-draft,.status-open{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.status-planned i,.status-draft i,.status-open i{background:#3b82f6}
.row-action{border:0;background:transparent;color:#64748b;cursor:pointer;font-weight:800;letter-spacing:1px}.table-footer{display:flex;justify-content:space-between;padding:.7rem 1rem;border-top:1px solid #e7eeed;color:#94a3b8;font-size:.63rem}
.action-cell{display:flex;align-items:center;gap:.35rem}.table-action-button{padding:.3rem .5rem;border:1px solid #cfdcda;border-radius:6px;background:#fff;color:#0f766e;font:700 .62rem Inter;cursor:pointer}.table-action-button:hover{background:#f0fdfa;border-color:#5eead4}.table-action-button.danger{color:#b91c1c}.table-action-button.approve{color:#047857}.muted-action{color:#94a3b8;font-size:.62rem}
.empty-state{padding:4rem 1rem}.empty-state h2{margin:.6rem 0 .25rem;color:#334155;font-size:.95rem}.empty-state p{font-size:.72rem}.empty-state.compact{padding:2rem}
.empty-action{margin-top:1rem}
.admin-dialog { width:min(650px,calc(100% - 2rem)); max-height:calc(100vh - 2rem); padding:0; border:0; border-radius:14px; box-shadow:0 30px 80px rgba(15,23,42,.28); }.admin-dialog.wide{width:min(780px,calc(100% - 2rem))}.admin-dialog.small{width:min(500px,calc(100% - 2rem))}.admin-dialog::backdrop{background:rgba(15,23,42,.58);backdrop-filter:blur(2px)}.admin-dialog form{padding:1.25rem}
.dialog-heading{display:flex;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #e7eeed}.dialog-heading h2{margin:.15rem 0;font-size:1.15rem}.dialog-heading p{color:#64748b;font-size:.72rem}.dialog-heading button{align-self:flex-start;border:0;background:transparent;font-size:1.5rem;color:#64748b;cursor:pointer}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;padding:1.1rem 0}.form-grid label{display:grid;gap:.3rem;color:#334155;font-size:.7rem;font-weight:700}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:.62rem .7rem;border:1px solid #cfdcda;border-radius:8px;background:#fff;color:#0f172a;font:400 .78rem Inter}.form-grid textarea{resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:0;border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.1)}.form-grid label small{color:#94a3b8;font-size:.61rem;font-weight:400}
.dialog-actions{display:flex;justify-content:flex-end;gap:.6rem;padding-top:1rem;border-top:1px solid #e7eeed}.step-indicator{display:flex;margin-top:1rem;border-radius:7px;overflow:hidden;background:#f1f5f9}.step-indicator span{flex:1;padding:.55rem;text-align:center;color:#94a3b8;font-size:.62rem;font-weight:700}.step-indicator .active{background:#0f766e;color:#fff}
.btn-danger{background:#b91c1c;color:#fff;border-color:#b91c1c}.btn-danger:hover{background:#991b1b}.checkbox-label{display:flex!important;grid-column:auto;grid-template-columns:auto 1fr!important;align-items:center;align-self:end;padding:.6rem 0}.checkbox-label input{width:auto}
.health-banner{display:flex;align-items:center;gap:.8rem;margin-bottom:.9rem;padding:1rem 1.1rem;border:1px solid #a7f3d0;border-radius:11px;background:#ecfdf5}.health-banner strong{font-size:.85rem;color:#065f46}.health-banner p{font-size:.68rem;color:#047857}.health-pulse{width:10px;height:10px;border-radius:50%;background:#10b981;box-shadow:0 0 0 5px rgba(16,185,129,.13)}
.settings-heading{align-items:center}.settings-access-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .7rem;border:1px solid #99d8d2;border-radius:99px;background:#f0fdfa;color:#0f766e;font-size:.67rem;font-weight:800;white-space:nowrap}
.settings-metrics strong{font-size:1rem!important}.settings-shell{display:grid;grid-template-columns:260px minmax(0,1fr);align-items:start;gap:.9rem}.settings-nav{position:sticky;top:92px;padding:.55rem}.settings-nav-title{display:flex;justify-content:space-between;align-items:flex-end;padding:.65rem .65rem .8rem;border-bottom:1px solid #e7eeed}.settings-nav-title strong{font-size:.76rem}.settings-nav-title small{color:#94a3b8;font-size:.57rem}.settings-nav>a{display:grid;grid-template-columns:25px minmax(0,1fr) 12px;align-items:center;gap:.55rem;padding:.65rem;margin:.22rem 0;border-radius:8px;color:#475569;text-decoration:none}.settings-nav>a:hover{background:#f8fafc}.settings-nav>a.active{background:#f0fdfa;color:#0f766e}.settings-nav>a>span:first-child{display:grid;place-items:center;width:25px;height:25px;border-radius:6px;background:#f1f5f9;font-size:.72rem}.settings-nav>a.active>span:first-child{background:#ccfbf1}.settings-nav>a strong,.settings-nav>a small{display:block}.settings-nav>a strong{font-size:.69rem}.settings-nav>a small{margin-top:.08rem;color:#94a3b8;font-size:.54rem;line-height:1.25}.settings-nav>a>span:last-child{text-align:right;color:#94a3b8}
.settings-content{display:grid;gap:.9rem}.settings-form{padding:0;overflow:hidden}.settings-section-heading{display:flex;gap:.8rem;padding:1.15rem 1.25rem;border-bottom:1px solid #e7eeed}.settings-section-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:9px;background:#f0fdfa;color:#0f766e;font-weight:800}.settings-section-heading h2{margin:.1rem 0 .15rem;font-size:1.08rem}.settings-section-heading p{color:#64748b;font-size:.69rem}.settings-warning{display:flex;gap:.65rem;margin:1rem 1.25rem 0;padding:.75rem;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;color:#92400e}.settings-warning>span{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;background:#fef3c7;font-weight:900}.settings-warning strong{font-size:.69rem}.settings-warning p{margin-top:.1rem;font-size:.61rem}
.settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1.25rem}.setting-field{display:grid;align-content:start;gap:.35rem}.setting-field>label,.settings-reason{color:#334155;font-size:.68rem;font-weight:750}.setting-field>small,.settings-reason small{color:#94a3b8;font-size:.58rem;line-height:1.35}.setting-input{display:flex;align-items:stretch}.setting-input input,.setting-input select,.settings-reason textarea{width:100%;min-width:0;padding:.62rem .7rem;border:1px solid #cfdcda;border-radius:8px;background:#fff;color:#0f172a;font:400 .75rem Inter}.setting-input input:focus,.setting-input select:focus,.settings-reason textarea:focus{outline:0;border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.1)}.setting-input.has-affix>span{display:flex;align-items:center;padding:0 .58rem;border:1px solid #cfdcda;background:#f8fafc;color:#64748b;font-size:.65rem}.setting-input.has-affix>span:first-child{border-right:0;border-radius:8px 0 0 8px}.setting-input.has-affix>span:last-child{border-left:0;border-radius:0 8px 8px 0}.setting-input.has-affix input{border-radius:0}.setting-input.has-affix input:first-child{border-radius:8px 0 0 8px}.secret-saved{color:#047857!important}
.toggle-field{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:61px;padding:.7rem .75rem;border:1px solid #e7eeed;border-radius:9px;background:#fbfefd}.toggle-field>div>label,.toggle-field>div>small{display:block}.toggle-field>div>label{font-size:.68rem;font-weight:750}.toggle-field>div>small{margin-top:.2rem;color:#94a3b8;font-size:.57rem}.switch{display:flex;align-items:center;gap:.45rem;cursor:pointer}.switch input{position:absolute;opacity:0;pointer-events:none}.switch>span{position:relative;width:36px;height:20px;border-radius:99px;background:#cbd5e1;transition:.18s}.switch>span::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.25);transition:.18s}.switch input:checked+span{background:#0d9488}.switch input:checked+span::after{transform:translateX(16px)}.switch input:focus-visible+span{outline:3px solid rgba(13,148,136,.2)}.switch em{min-width:18px;color:#64748b;font-size:.59rem;font-style:normal;font-weight:800}
.settings-reason{display:grid;gap:.35rem;margin:0 1.25rem 1.25rem}.settings-reason textarea{resize:vertical}.settings-actions{display:flex;justify-content:flex-end;align-items:center;gap:1rem;padding:.85rem 1.25rem;border-top:1px solid #e7eeed;background:#fbfefd}.settings-actions>span{margin-right:auto;color:#94a3b8;font-size:.59rem}.settings-history-list{display:grid}.settings-history-list article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:.55rem;padding:.62rem 0;border-bottom:1px solid #edf2f1}.settings-history-list article:last-child{border:0}.settings-history-list strong{font-size:.66rem}.settings-history-list p{margin-top:.12rem;color:#64748b;font-size:.59rem}.settings-history-list time{color:#94a3b8;font-size:.57rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media (max-width:1100px){.admin-shell{grid-template-columns:1fr}.admin-workspace{grid-column:1}.admin-sidebar{transform:translateX(-100%);box-shadow:14px 0 30px rgba(15,23,42,.18)}.admin-sidebar.open{transform:translateX(0)}.sidebar-toggle{display:grid}.kpi-grid{grid-template-columns:repeat(2,1fr)}.span-7,.span-5{grid-column:1/-1}.context-chip{display:none}}
@media (max-width:720px){.admin-topbar{height:64px;padding:0 .75rem}.admin-main{padding:1rem}.global-search{max-width:none}.global-search kbd,.profile-copy,.notification-button{display:none}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:1.4rem}.page-actions{width:100%;flex-wrap:wrap}.page-actions .btn{flex:1}.kpi-grid{grid-template-columns:1fr 1fr}.kpi-card{min-height:120px}.metric-strip{grid-template-columns:1fr 1fr}.metric-strip div:nth-child(2n){border-right:0}.table-toolbar{align-items:stretch;flex-direction:column}.table-search{width:100%}.toolbar-actions .btn{flex:1}.finance-summary{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.step-indicator span:not(.active){display:none}.admin-table-wrap{padding:.7rem;background:#f8fafc}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{display:block;width:100%;white-space:normal}.admin-table thead{display:none}.admin-table tbody{display:grid;gap:.7rem}.admin-table tbody tr{padding:.4rem .75rem;background:#fff;border:1px solid #dbe5e4;border-radius:9px;box-shadow:0 1px 2px rgba(15,23,42,.03)}.admin-table td{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;max-width:none;padding:.5rem 0;border-bottom:1px solid #edf2f1;text-align:right}.admin-table td::before{content:attr(data-label);flex:0 0 42%;color:#64748b;text-align:left;font-size:.62rem;font-weight:800;text-transform:uppercase}.admin-table td:last-child{border:0}.admin-table .action-cell{justify-content:flex-end}.admin-table .action-cell::before{display:none}.filter-panel{align-items:stretch;flex-direction:column}.filter-panel select{width:100%}}
@media (max-width:440px){.kpi-grid{grid-template-columns:1fr}.metric-strip{grid-template-columns:1fr}.metric-strip div{border-right:0;border-bottom:1px solid #e7eeed}.finance-summary{grid-template-columns:1fr}.split-bar{height:auto;flex-direction:column}.split-bar span{width:100%!important;padding:.5rem}.profile-button>span:last-child{display:none}}
@media (max-width:900px){.settings-shell{grid-template-columns:1fr}.settings-nav{position:static;display:flex;overflow-x:auto;padding:.45rem}.settings-nav-title{display:none}.settings-nav>a{flex:0 0 150px}.settings-nav>a>span:last-child,.settings-nav>a small{display:none}}
@media (max-width:720px){.settings-access-badge{display:none}.settings-fields{grid-template-columns:1fr;padding:1rem}.settings-section-heading{padding:1rem}.settings-warning{margin:1rem 1rem 0}.settings-reason{margin:0 1rem 1rem}.settings-actions{align-items:stretch;flex-direction:column;padding:1rem}.settings-actions>span{margin:0}.settings-actions .btn{width:100%}.settings-nav>a{flex-basis:125px}.settings-metrics{grid-template-columns:1fr 1fr!important}.global-create-button{display:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Student learning workspace */
.student-body{margin:0;background:#f8fafc;color:#0f172a;font-family:Inter,system-ui,sans-serif}.student-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.student-sidebar{position:fixed;inset:0 auto 0 0;z-index:1000;display:grid;grid-template-rows:auto 1fr auto;width:245px;background:#073b39;color:#b8d8d5}.student-brand{display:flex;align-items:center;gap:.7rem;height:76px;padding:0 1.1rem;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;text-decoration:none}.student-brand>span:first-child{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#14b8a6,#0d9488);font:800 1.05rem "Plus Jakarta Sans"}.student-brand strong,.student-brand small{display:block}.student-brand strong{max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.student-brand small{margin-top:.08rem;color:#79aaa5;font-size:.58rem}.student-nav{overflow-y:auto;padding:.7rem}.student-nav a{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:.55rem;padding:.55rem .65rem;border-radius:8px;color:#a8cdca;text-decoration:none;font-size:.68rem;font-weight:650}.student-nav a:hover{background:rgba(255,255,255,.055);color:#fff}.student-nav a.active{background:#0f766e;color:#fff;box-shadow:inset 3px 0 #5eead4}.student-nav a span:first-child{color:#71b6b0}.student-security{display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border-top:1px solid rgba(255,255,255,.08)}.student-security strong,.student-security small{display:block}.student-security strong{color:#d7ecea;font-size:.62rem}.student-security small{margin-top:.1rem;color:#75a6a2;font-size:.55rem}
.student-workspace{grid-column:2;min-width:0}.student-topbar{position:sticky;top:0;z-index:800;display:flex;align-items:center;gap:.7rem;height:76px;padding:0 1.25rem;background:rgba(255,255,255,.96);border-bottom:1px solid #dbe5e4;backdrop-filter:blur(12px)}.student-menu-button{display:none}.student-program-switcher{display:flex;align-items:center;gap:.5rem;max-width:290px;height:38px;padding:0 .65rem;border:1px solid #dbe5e4;border-radius:9px;background:#fff}.student-program-switcher select{min-width:0;max-width:250px;border:0;outline:0;background:transparent;color:#334155;font:650 .65rem Inter}.student-search{display:flex;align-items:center;gap:.45rem;flex:1;max-width:440px;height:38px;padding:0 .7rem;border:1px solid #dbe5e4;border-radius:9px;background:#f8fafc}.student-search input{width:100%;border:0;outline:0;background:transparent;font:.7rem Inter}.student-top-actions{position:relative;display:flex;align-items:center;gap:.45rem;margin-left:auto}.student-icon-button{position:relative;display:grid;place-items:center;width:36px;height:36px;border:1px solid #dbe5e4;border-radius:9px;background:#fff;color:#475569;text-decoration:none;cursor:pointer}.student-icon-button b{position:absolute;right:-4px;top:-5px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border:2px solid #fff;border-radius:99px;background:#ef4444;color:#fff;font-size:.48rem}.student-profile-chip{display:flex;align-items:center;gap:.5rem;color:#334155;text-decoration:none}.student-profile-chip>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#0f766e;color:#fff;font-weight:800}.student-profile-chip strong,.student-profile-chip small{display:block}.student-profile-chip strong{font-size:.66rem}.student-profile-chip small{max-width:120px;overflow:hidden;text-overflow:ellipsis;color:#94a3b8;font-size:.53rem;white-space:nowrap}.student-notifications{position:absolute;right:115px;top:46px;width:min(380px,calc(100vw - 2rem));max-height:470px;overflow:auto;border:1px solid #dbe5e4;border-radius:12px;background:#fff;box-shadow:0 18px 50px rgba(15,23,42,.18)}.student-notifications[hidden]{display:none}.student-notifications>header{display:flex;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid #e7eeed}.student-notifications>header strong{font-size:.72rem}.student-notifications>header a{color:#0f766e;font-size:.6rem;text-decoration:none}.student-notifications article{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid #edf2f1}.student-notifications article.unread{background:#f0fdfa}.student-notifications article span{color:#0d9488;font-size:.52rem;font-weight:800;text-transform:uppercase}.student-notifications article strong{display:block;margin:.12rem 0;font-size:.64rem}.student-notifications article p{color:#64748b;font-size:.57rem;line-height:1.4}.student-notifications article button{border:0;background:transparent;color:#0f766e;cursor:pointer}.student-empty-mini{padding:1.25rem;color:#64748b;text-align:center;font-size:.65rem}
.student-main{max-width:1460px;margin:0 auto;padding:1.5rem;outline:0}.student-notice{margin-bottom:1rem;padding:.75rem 1rem;border:1px solid;border-radius:9px;font-size:.72rem}.student-notice.success{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}.student-notice.error{border-color:#fecaca;background:#fef2f2;color:#991b1b}.student-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.15rem}.student-page-heading h1{margin:.12rem 0 .18rem;font:800 1.55rem "Plus Jakarta Sans";letter-spacing:-.035em}.student-page-heading p{max-width:780px;color:#64748b;font-size:.72rem}.student-eyebrow{color:#0d9488;font-size:.55rem;font-weight:850;letter-spacing:.085em;text-transform:uppercase}.student-heading-meta{text-align:right}.student-heading-meta span,.student-heading-meta strong{display:block}.student-heading-meta span{color:#94a3b8;font-size:.55rem}.student-heading-meta strong{margin-top:.15rem;font-size:.66rem}.student-alert{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:.7rem;margin-bottom:.9rem;padding:.75rem 1rem;border:1px solid;border-radius:10px;color:inherit;text-decoration:none}.student-alert>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:900}.student-alert strong{font-size:.68rem}.student-alert p{margin-top:.1rem;font-size:.59rem}.student-alert b{font-size:.61rem}.student-alert.warning{border-color:#fde68a;background:#fffbeb;color:#92400e}.student-alert.warning>span{background:#fef3c7}.student-alert.danger{border-color:#fecaca;background:#fef2f2;color:#991b1b}.student-alert.danger>span{background:#fee2e2}
.student-card{padding:1rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.03)}.student-card h2{font-size:.9rem}.student-card h3{font-size:.78rem}.student-card p{color:#64748b;font-size:.64rem;line-height:1.5}.student-card a:not(.btn){color:#0f766e;font-size:.61rem;font-weight:750;text-decoration:none}.student-card-top,.student-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.student-card-top>span:last-child{color:#94a3b8;font-size:.55rem}.student-card-heading{margin-bottom:.8rem}.student-card-heading h2{margin-top:.12rem}.student-card-heading>a{font-size:.58rem}.student-status{display:inline-flex;align-items:center;width:max-content;padding:.2rem .45rem;border:1px solid #dbe5e4;border-radius:99px;background:#f8fafc;color:#475569;font-size:.53rem;font-weight:800}.student-status.completed,.student-status.active,.student-status.available,.student-status.present,.student-status.valid,.student-status.published,.student-status.graded,.student-status.submitted,.student-status.resubmitted,.student-status.posted,.student-status.approved{border-color:#bbf7d0;background:#ecfdf5;color:#166534}.student-status.pending,.student-status.scheduled,.student-status.under-review,.student-status.due-soon,.student-status.late,.student-status.resubmission-requested{border-color:#fde68a;background:#fffbeb;color:#92400e}.student-status.absent,.student-status.rejected,.student-status.revoked,.student-status.failed,.student-status.cancelled{border-color:#fecaca;background:#fef2f2;color:#991b1b}.student-status.locked,.student-status.draft,.student-status.not-started,.student-status.paused{border-color:#cbd5e1;background:#f1f5f9;color:#475569}
.student-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.8rem}.student-continue{grid-column:span 7;grid-row:span 2;display:flex;flex-direction:column;min-height:240px;background:linear-gradient(135deg,#fff 50%,#f0fdfa)}.student-continue h2{margin:.75rem 0 .25rem;font-size:1.2rem}.student-continue>p{max-width:540px}.student-continue footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:1rem}.student-continue footer>span{color:#64748b;font-size:.58rem}.student-progress-row{display:flex;align-items:center;gap:.6rem;margin:.8rem 0}.student-progress-row>div{flex:1;height:7px;overflow:hidden;border-radius:99px;background:#e7eeed}.student-progress-row>div>span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#0f766e,#2dd4bf)}.student-progress-row>strong{font-size:.61rem}.student-ring-card{grid-column:span 5;display:flex;align-items:center;gap:1rem}.student-progress-ring{--progress:0;display:grid;place-items:center;flex:0 0 72px;height:72px;border-radius:50%;background:conic-gradient(#0d9488 calc(var(--progress)*1%),#e7eeed 0);position:relative}.student-progress-ring::after{content:"";position:absolute;width:55px;height:55px;border-radius:50%;background:#fff}.student-progress-ring span{position:relative;z-index:1;font-size:.67rem;font-weight:850}.student-progress-ring.score{background:conic-gradient(#059669 calc(var(--progress)*1%),#e7eeed 0)}.student-ring-card h3{margin:.15rem 0}.student-ring-card p{margin-bottom:.25rem}.student-quick-card{grid-column:span 4;min-height:120px}.student-quick-card h3{margin:.5rem 0 .15rem}.student-quick-card p{min-height:38px}.student-lower-grid{display:grid;grid-template-columns:2fr 1fr;gap:.8rem;margin-top:.8rem}.student-week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:.45rem}.student-week-strip div{display:grid;gap:.28rem;padding:.65rem .35rem;border:1px solid #e7eeed;border-radius:8px;text-align:center}.student-week-strip span{color:#64748b;font-size:.54rem}.student-week-strip strong{font-size:.57rem}.student-week-strip i{color:#0d9488;font-size:.62rem;font-style:normal}.student-week-strip .today{border-color:#5eead4;background:#f0fdfa}.student-week-strip .holiday{background:#f8fafc;color:#94a3b8}.student-activity-list{display:grid;gap:.6rem}.student-activity-list>div{display:grid;grid-template-columns:8px 1fr;gap:.5rem}.student-activity-list>div>span{width:7px;height:7px;margin-top:.25rem;border-radius:50%;background:#14b8a6;box-shadow:0 0 0 4px #f0fdfa}.student-activity-list strong,.student-activity-list small{display:block}.student-activity-list strong{font-size:.61rem}.student-activity-list small{margin-top:.12rem;color:#94a3b8;font-size:.53rem}
.student-empty{grid-column:1/-1;padding:3.5rem 1rem;border:1px dashed #cfdcda;border-radius:12px;background:#fff;text-align:center}.student-empty>span,.student-empty-inline>span{display:block;color:#0d9488;font-size:1.6rem}.student-empty h2{margin:.6rem 0 .25rem;font-size:.95rem}.student-empty p{max-width:520px;margin:0 auto 1rem;color:#64748b;font-size:.68rem;line-height:1.5}.student-empty>div{display:flex;justify-content:center;gap:.6rem}.student-empty-inline{padding:2rem;text-align:center}.student-empty-inline h3{margin:.4rem 0}.student-empty-inline p{color:#64748b;font-size:.63rem}
.student-tabs{display:flex;gap:.35rem;overflow-x:auto;margin-bottom:.8rem;padding:.3rem;border:1px solid #dbe5e4;border-radius:9px;background:#fff}.student-tabs button{flex:0 0 auto;padding:.45rem .7rem;border:0;border-radius:6px;background:transparent;color:#64748b;font:700 .59rem Inter;cursor:pointer}.student-tabs button.active{background:#0f766e;color:#fff}.student-card-grid,.student-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.program-card{display:flex;flex-direction:column;min-height:300px}.program-card h2{margin:.8rem 0 .3rem;font-size:1rem}.program-card dl{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:1rem 0}.program-card dt{color:#94a3b8;font-size:.52rem}.program-card dd{margin:.12rem 0 0;font-size:.61rem;font-weight:700}.program-card footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;color:#64748b;font-size:.55rem}.student-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.student-filter{display:flex;gap:.4rem}.student-filter select{padding:.48rem;border:1px solid #dbe5e4;border-radius:8px;background:#fff;font:.6rem Inter}.student-agenda{padding:0}.student-agenda article{display:grid;grid-template-columns:65px 10px 1fr auto auto;align-items:center;gap:.7rem;padding:.8rem 1rem;border-bottom:1px solid #edf2f1}.student-agenda article:last-child{border:0}.agenda-date strong,.agenda-date span{display:block}.agenda-date strong{font-size:.61rem}.agenda-date span{color:#94a3b8;font-size:.51rem}.agenda-dot{width:8px;height:8px;border-radius:50%;background:#0d9488;box-shadow:0 0 0 4px #f0fdfa}.agenda-dot.project{background:#059669}.student-agenda h3{margin:.12rem 0;font-size:.67rem}.student-agenda p{color:#64748b;font-size:.55rem}.student-holiday{padding:5rem 1rem;border:1px solid #bae6fd;border-radius:12px;background:linear-gradient(180deg,#f0f9ff,#fff);text-align:center}.student-holiday>span{font-size:2rem}.student-holiday h2{margin:.7rem 0 .3rem}.student-holiday p{margin-bottom:1rem;color:#64748b;font-size:.7rem}.student-timeline{display:grid;gap:.75rem;position:relative}.student-timeline article{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.8rem}.student-timeline article>b{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#0f766e;color:#fff}.student-timeline h2{margin:.2rem 0}.task-card{display:flex;flex-direction:column}.task-card h2{margin:.7rem 0 .25rem}.task-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;margin:.8rem 0}.task-meta>span{padding:.5rem;border:1px solid #e7eeed;border-radius:7px}.task-meta small,.task-meta strong{display:block}.task-meta small{color:#94a3b8;font-size:.5rem}.task-meta strong{margin-top:.12rem;font-size:.57rem}.student-feedback{margin:.6rem 0;padding:.65rem;border-left:3px solid #14b8a6;border-radius:0 7px 7px 0;background:#f0fdfa}.student-feedback strong{font-size:.62rem}.student-feedback p{margin-top:.15rem}.task-submit{margin-top:auto;padding-top:.7rem;border-top:1px solid #edf2f1}.task-submit summary{color:#0f766e;font-size:.62rem;font-weight:800;cursor:pointer}.task-submit form{display:grid;gap:.6rem;margin-top:.7rem}.task-submit label,.attendance-code-form label{display:grid;gap:.25rem;font-size:.58rem;font-weight:700}.task-submit textarea,.task-submit input,.attendance-code-form input,.student-record-list textarea{width:100%;padding:.55rem;border:1px solid #cfdcda;border-radius:7px;font:.64rem Inter}.task-submit form>div{display:flex;justify-content:flex-end;gap:.4rem}.session-card h2{margin:.7rem 0 .25rem}.session-mentor{display:flex;align-items:center;gap:.5rem;margin:.8rem 0}.session-mentor>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#f0fdfa;color:#0f766e;font-weight:800}.session-mentor small,.session-mentor strong{display:block}.session-mentor small{color:#94a3b8;font-size:.5rem}.session-mentor strong{font-size:.6rem}.session-card>form:not(.attendance-code-form){display:inline-block}.attendance-code-form{display:flex;align-items:flex-end;gap:.4rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid #edf2f1}.attendance-code-form label{flex:1}.attendance-code-form input{letter-spacing:.2em}.student-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.7rem;margin-bottom:.8rem}.student-metric-grid article{padding:.8rem 1rem;border:1px solid #dbe5e4;border-radius:10px;background:#fff}.student-metric-grid span,.student-metric-grid strong,.student-metric-grid small{display:block}.student-metric-grid span{color:#64748b;font-size:.55rem}.student-metric-grid strong{margin:.2rem 0;font:800 1.1rem "Plus Jakarta Sans"}.student-metric-grid small{color:#94a3b8;font-size:.5rem}.student-record-list{padding:0;overflow:hidden}.student-record-list>.student-card-heading{padding:1rem;margin:0;border-bottom:1px solid #e7eeed}.student-record-list>article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.8rem;padding:.7rem 1rem;border-bottom:1px solid #edf2f1}.student-record-list>article>div>strong,.student-record-list>article>div>small{display:block}.student-record-list>article>div>strong{font-size:.62rem}.student-record-list>article>div>small{margin-top:.12rem;color:#94a3b8;font-size:.52rem}.student-record-list details summary{color:#0f766e;font-size:.55rem;font-weight:750;cursor:pointer}.student-record-list details form{display:grid;gap:.4rem;margin-top:.5rem;min-width:250px}.grade-card .grade-score{display:block;margin:.8rem 0;font:850 1.6rem "Plus Jakarta Sans";color:#0f766e}.grade-score small{color:#94a3b8;font-size:.7rem}.student-section-title{margin:1rem 0 .7rem;font-size:.85rem}.aptitude-card>span,.document-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#f0fdfa;color:#0f766e}.aptitude-card h2{margin:.65rem 0 .2rem}.aptitude-card .btn{margin-top:.8rem}.document-card h2{margin:.7rem 0 .25rem}.document-card code{color:#0f766e;font-size:.58rem}.document-card>p{margin:.6rem 0}.document-card footer{display:flex;justify-content:flex-end;gap:.4rem}.student-payment-summary{display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:.8rem;margin-bottom:.8rem;padding:1rem;border:1px solid #99d8d2;border-radius:12px;background:#f0fdfa}.student-payment-summary span,.student-payment-summary strong,.student-payment-summary small{display:block}.student-payment-summary span{color:#64748b;font-size:.53rem}.student-payment-summary strong{margin:.2rem 0;font-size:.9rem}.student-payment-summary small{color:#64748b;font-size:.5rem}.announcement-card h2{margin:.7rem 0 .3rem}.announcement-card time{color:#94a3b8;font-size:.52rem}.student-support-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:.8rem}.student-form{display:grid;gap:.75rem}.student-form label{display:grid;gap:.3rem;color:#334155;font-size:.6rem;font-weight:750}.student-form input,.student-form select,.student-form textarea{width:100%;padding:.58rem .65rem;border:1px solid #cfdcda;border-radius:8px;background:#fff;font:.65rem Inter}.student-form input:focus,.student-form select:focus,.student-form textarea:focus{outline:0;border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.1)}.ticket-list details{border-bottom:1px solid #edf2f1}.ticket-list summary{display:flex;justify-content:space-between;gap:.6rem;padding:.7rem 0;cursor:pointer}.ticket-list summary strong,.ticket-list summary small{display:block}.ticket-list summary strong{font-size:.6rem}.ticket-list summary small{margin-top:.15rem;color:#94a3b8;font-size:.51rem}.ticket-conversation{display:grid;gap:.5rem;padding:.3rem 0 .8rem}.ticket-conversation>div{max-width:85%;padding:.55rem .65rem;border-radius:8px;background:#f1f5f9}.ticket-conversation .student-message{justify-self:end;background:#f0fdfa}.ticket-conversation strong{font-size:.54rem}.ticket-conversation p{margin:.15rem 0}.ticket-conversation small{color:#94a3b8;font-size:.48rem}.ticket-conversation form{display:flex;gap:.4rem}.ticket-conversation textarea{flex:1;padding:.5rem;border:1px solid #cfdcda;border-radius:7px;font:.6rem Inter}.student-profile-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;margin-bottom:.8rem}.profile-avatar-large{display:grid;place-items:center;width:58px;height:58px;border-radius:14px;background:#0f766e;color:#fff;font-size:1.2rem;font-weight:850}.student-profile-header h2{margin:.1rem 0}.student-profile-header>div:last-child{text-align:right}.student-profile-header>div:last-child span,.student-profile-header>div:last-child strong{display:block}.student-profile-header>div:last-child span{color:#94a3b8;font-size:.52rem}.student-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.student-form-grid .full{grid-column:1/-1}.profile-form footer,.preferences-form footer{display:flex;justify-content:flex-end;align-items:center;gap:.8rem;padding-top:.8rem;border-top:1px solid #edf2f1}.profile-form footer span,.preferences-form footer span{margin-right:auto;color:#94a3b8;font-size:.53rem}.student-preference{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem;border:1px solid #e7eeed;border-radius:9px}.student-preference strong{font-size:.62rem}.student-preference p{margin-top:.15rem}.student-search-page{display:flex;gap:.5rem;margin-bottom:.8rem}.student-search-page input{flex:1;padding:.65rem .8rem;border:1px solid #cfdcda;border-radius:8px;font:.7rem Inter}.student-search-results{padding:0}.student-search-results>a{display:grid!important;grid-template-columns:70px 1fr auto;align-items:center;gap:.7rem;padding:.75rem 1rem;border-bottom:1px solid #edf2f1}.student-search-results>a>span{color:#0d9488;font-size:.53rem;font-weight:800;text-transform:uppercase}.student-search-results>a strong{font-size:.63rem}.student-search-results>a p{margin-top:.1rem}.student-search-results>a>b{font-size:1rem}
.student-viewer-heading{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;margin-bottom:1rem}.student-viewer-heading>a{color:#0f766e;font-size:.62rem;font-weight:700;text-decoration:none}.student-viewer-heading h1{margin:.12rem 0;font-size:1.1rem}.student-viewer-heading p{color:#64748b;font-size:.6rem}.pdf-viewer-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:620px;overflow:hidden;border-radius:12px;background:#16211f;color:#fff}.pdf-viewer-shell aside{padding:1.1rem;border-right:1px solid rgba(255,255,255,.1);background:#0e1917}.pdf-viewer-shell aside h2{font-size:.8rem}.pdf-viewer-shell aside dl{display:grid;gap:.65rem;margin:1rem 0}.pdf-viewer-shell aside dt{color:#7da9a5;font-size:.5rem}.pdf-viewer-shell aside dd{margin:.12rem 0 0;font-size:.6rem}.pdf-viewer-shell aside p{color:#a8c7c4;font-size:.58rem;line-height:1.5}.watermark-note{margin-top:1rem;padding:.65rem;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#75a6a2;font-size:.52rem;line-height:1.5}.pdf-stage{display:grid;grid-template-rows:auto 1fr auto;padding:1rem}.pdf-toolbar{display:flex;justify-content:center;align-items:center;gap:.6rem;padding-bottom:.8rem}.pdf-toolbar button{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.15);border-radius:6px;background:#20302d;color:#fff}.pdf-toolbar span{font-size:.55rem}.pdf-page{position:relative;display:grid;place-items:center;min-height:500px;overflow:hidden;border-radius:3px;background:#fff;color:#0f172a;box-shadow:0 10px 40px rgba(0,0,0,.3)}.pdf-page>div{max-width:600px;padding:3rem;text-align:center}.pdf-page>div>span{color:#0d9488;font-size:.55rem;font-weight:800;text-transform:uppercase}.pdf-page h2{margin:.8rem 0;font:800 1.5rem "Plus Jakarta Sans"}.pdf-page p{color:#475569;font-size:.72rem;line-height:1.8}.pdf-watermark{position:absolute;transform:rotate(-28deg);color:rgba(15,118,110,.09);font-size:1rem;font-weight:800;white-space:nowrap}.pdf-file-note{margin-top:1.5rem!important;padding:.8rem;border:1px dashed #99d8d2;border-radius:8px;background:#f0fdfa}.pdf-progress{height:5px;margin-top:.8rem;overflow:hidden;border-radius:99px;background:#31433f}.pdf-progress span{display:block;height:100%;background:#2dd4bf}.viewer-complete{position:sticky;bottom:.7rem;display:flex;align-items:center;justify-content:flex-end;gap:1rem;margin:.8rem auto 0;padding:.65rem .8rem;border:1px solid #dbe5e4;border-radius:9px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(15,23,42,.12)}.viewer-complete span{margin-right:auto;color:#64748b;font-size:.58rem}
.student-mobile-nav,.student-more-sheet{display:none}
@media(max-width:1100px){.student-shell{grid-template-columns:1fr}.student-sidebar{transform:translateX(-100%);transition:.2s;box-shadow:14px 0 30px rgba(15,23,42,.2)}.student-sidebar.open{transform:translateX(0)}.student-workspace{grid-column:1}.student-menu-button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #dbe5e4;border-radius:8px;background:#fff}.student-dashboard-grid{grid-template-columns:repeat(6,1fr)}.student-continue{grid-column:span 4}.student-ring-card{grid-column:span 2}.student-quick-card{grid-column:span 2}.student-support-layout{grid-template-columns:1fr}.student-profile-chip>span:last-child{display:none}}
@media(max-width:720px){.student-topbar{height:62px;padding:0 .7rem}.student-program-switcher{flex:1}.student-program-switcher select{max-width:calc(100vw - 200px)}.student-search,.student-top-actions>a:first-child,.student-profile-chip{display:none}.student-notifications{position:fixed;left:1rem;right:1rem;top:70px;width:auto}.student-main{padding:1rem 1rem 5.2rem}.student-page-heading{align-items:flex-start;flex-direction:column}.student-page-heading h1{font-size:1.3rem}.student-heading-meta{display:none}.student-dashboard-grid,.student-lower-grid,.student-card-grid,.student-list-grid{grid-template-columns:1fr}.student-continue,.student-ring-card,.student-quick-card{grid-column:1}.student-continue{min-height:230px}.student-continue footer{align-items:stretch;flex-direction:column}.student-week-strip{grid-template-columns:repeat(4,1fr)}.student-toolbar{display:block}.student-filter{margin-bottom:.8rem}.student-agenda article{grid-template-columns:55px 8px 1fr auto}.student-agenda article>.student-status{display:none}.student-agenda article>a{grid-column:3}.student-timeline article{grid-template-columns:32px 1fr}.student-timeline article>.btn{grid-column:2;width:100%}.task-meta{grid-template-columns:1fr 1fr}.student-payment-summary{grid-template-columns:1fr 1fr}.student-payment-summary>.btn{grid-column:1/-1}.student-record-list>article{grid-template-columns:1fr auto}.student-record-list details{grid-column:1/-1}.student-profile-header{grid-template-columns:auto 1fr}.student-profile-header>div:last-child{grid-column:1/-1;text-align:left}.student-form-grid{grid-template-columns:1fr}.student-form-grid .full{grid-column:1}.profile-form footer,.preferences-form footer{align-items:stretch;flex-direction:column}.profile-form footer span,.preferences-form footer span{margin:0}.student-search-results>a{grid-template-columns:55px 1fr auto}.pdf-viewer-shell{grid-template-columns:1fr;min-height:560px}.pdf-viewer-shell aside{display:none}.pdf-stage{padding:.6rem}.pdf-page{min-height:450px}.pdf-page>div{padding:1.5rem}.viewer-complete{align-items:stretch;flex-direction:column}.viewer-complete span{margin:0}.student-mobile-nav{position:fixed;z-index:1100;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);height:64px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #dbe5e4;background:#fff;box-shadow:0 -5px 20px rgba(15,23,42,.08)}.student-mobile-nav a,.student-mobile-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.15rem;border:0;background:transparent;color:#64748b;font:650 .49rem Inter;text-decoration:none}.student-mobile-nav span{font-size:.88rem}.student-mobile-nav .active{color:#0f766e}.student-more-sheet{position:fixed;z-index:1200;left:0;right:0;bottom:0;max-height:72vh;overflow:auto;padding:.7rem 1rem calc(1rem + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;background:#fff;box-shadow:0 -20px 60px rgba(15,23,42,.22)}.student-more-sheet.open{display:grid;grid-template-columns:1fr 1fr;gap:.3rem}.student-more-sheet header{grid-column:1/-1;display:flex;justify-content:space-between;padding:.5rem 0 .8rem}.student-more-sheet header button{border:0;background:transparent;font-size:1.3rem}.student-more-sheet>a{display:flex;align-items:center;gap:.55rem;padding:.7rem;border-radius:8px;background:#f8fafc;color:#334155;text-decoration:none;font-size:.62rem}.student-more-sheet>a span{color:#0f766e}}
.completion-checklist{margin:.2rem 0 .8rem;padding:.55rem .65rem;border:1px solid #e7eeed;border-radius:8px}.completion-checklist summary{color:#0f766e;font-size:.57rem;font-weight:800;cursor:pointer}.completion-checklist>div{display:grid;gap:.35rem;margin-top:.55rem}.completion-checklist p{display:flex;justify-content:space-between;gap:.7rem}.completion-checklist p span{color:#334155}.completion-checklist p small{color:#94a3b8}.task-lock-note,.document-processing{margin-top:auto;padding:.55rem;border-radius:7px;background:#f8fafc;color:#64748b!important}.password-form,.refund-card{margin-top:.8rem}.password-form footer{display:flex;justify-content:flex-end;align-items:center;gap:.8rem;padding-top:.8rem;border-top:1px solid #edf2f1}.password-form footer span{margin-right:auto;color:#94a3b8;font-size:.53rem}.policy-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.policy-check input{width:auto!important}
.pdf-page iframe{width:100%;height:100%;min-height:500px;border:0}.pdf-watermark{z-index:2;pointer-events:none}
.draft-autosave-status{color:#0d9488;font-size:.52rem}
.student-alert.info{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.student-alert.info>span{background:#dbeafe}
.student-tabs a{flex:0 0 auto;padding:.45rem .7rem;border-radius:6px;color:#64748b;font-size:.59rem;font-weight:700;text-decoration:none}.student-tabs a.active{background:#0f766e;color:#fff}.student-calendar-month{padding:0;overflow:hidden}.student-calendar-month>header{display:grid;grid-template-columns:repeat(7,1fr);background:#f8fafc;border-bottom:1px solid #dbe5e4}.student-calendar-month>header strong{padding:.6rem;text-align:center;color:#64748b;font-size:.52rem;text-transform:uppercase}.student-calendar-month>div{display:grid;grid-template-columns:repeat(7,1fr)}.student-calendar-month article{min-height:115px;padding:.6rem;border-right:1px solid #edf2f1;border-bottom:1px solid #edf2f1}.student-calendar-month article>span,.student-calendar-month article>strong,.student-calendar-month article>small{display:block}.student-calendar-month article>span{color:#94a3b8;font-size:.5rem}.student-calendar-month article>strong{margin:.35rem 0;font-size:.58rem;line-height:1.35}.student-calendar-month article>small{color:#0d9488;font-size:.5rem}.calendar-week-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.calendar-week-nav strong{font-size:.7rem}.student-calendar-week{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem}.student-calendar-week h2{min-height:55px;margin:.6rem 0}
@media(max-width:720px){.student-calendar-month{overflow-x:auto}.student-calendar-month>header,.student-calendar-month>div{min-width:760px}.student-calendar-week{grid-template-columns:1fr}.password-form footer{align-items:stretch;flex-direction:column}.password-form footer span{margin:0}}
.aptitude-heading{position:sticky;top:76px;z-index:20;padding:.7rem 0;background:#f8fafc}.aptitude-timer{padding:.5rem .7rem;border:1px solid #99d8d2;border-radius:8px;background:#f0fdfa;color:#0f766e;font:800 .8rem ui-monospace,monospace}.aptitude-timer.warning{border-color:#fde68a;background:#fffbeb;color:#92400e}.student-aptitude-attempt{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:start;gap:.8rem}.question-palette{position:sticky;top:145px}.question-palette>div{display:grid;grid-template-columns:repeat(5,1fr);gap:.35rem;margin:.7rem 0}.question-palette>div button{aspect-ratio:1;border:1px solid #dbe5e4;border-radius:6px;background:#f8fafc;color:#475569;font:700 .56rem Inter;cursor:pointer}.question-palette>div button.answered{border-color:#99d8d2;background:#f0fdfa;color:#0f766e}.question-palette>div button.review{border-color:#fde68a;background:#fffbeb;color:#92400e}.question-palette>p{display:flex;align-items:center;gap:.3rem;margin-bottom:.7rem;color:#64748b;font-size:.5rem}.question-palette>p span{width:7px;height:7px;border-radius:50%;background:#0d9488}.question-palette>p span:nth-child(2){margin-left:.4rem;background:#f59e0b}.question-palette>.btn{width:100%}.aptitude-question-list{display:grid;gap:.8rem}.aptitude-question h2{margin:.7rem 0 1rem;font-size:.82rem;line-height:1.5}.aptitude-options{display:grid;gap:.5rem}.aptitude-options label{cursor:pointer}.aptitude-options input{position:absolute;opacity:0}.aptitude-options label>span{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border:1px solid #dbe5e4;border-radius:8px;color:#334155;font-size:.62rem}.aptitude-options label>span b{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:6px;background:#f1f5f9}.aptitude-options input:checked+span{border-color:#5eead4;background:#f0fdfa;color:#0f766e}.aptitude-options input:checked+span b{background:#0f766e;color:#fff}.aptitude-question footer{display:flex;justify-content:space-between;margin-top:.8rem;padding-top:.7rem;border-top:1px solid #edf2f1}.aptitude-question footer button{border:0;background:transparent;color:#64748b;font:650 .55rem Inter;cursor:pointer}.aptitude-question footer label{display:flex;align-items:center;gap:.3rem;color:#64748b;font-size:.55rem}.aptitude-submit-dialog{width:min(430px,calc(100% - 2rem));padding:1.2rem;border:0;border-radius:12px;box-shadow:0 25px 70px rgba(15,23,42,.3)}.aptitude-submit-dialog::backdrop{background:rgba(15,23,42,.55)}.aptitude-submit-dialog h2{font-size:1rem}.aptitude-submit-dialog p{margin:.4rem 0 1rem;color:#64748b;font-size:.65rem}.aptitude-submit-dialog div{display:flex;justify-content:flex-end;gap:.5rem}.aptitude-result-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;margin-bottom:.8rem}.aptitude-result-hero h2{margin:.15rem 0}.aptitude-result-hero dl{display:flex;gap:.5rem}.aptitude-result-hero dl div{min-width:75px;padding:.55rem;border:1px solid #e7eeed;border-radius:7px;text-align:center}.aptitude-result-hero dt{color:#94a3b8;font-size:.5rem}.aptitude-result-hero dd{margin:.15rem 0 0;font-size:.75rem;font-weight:800}.aptitude-review{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.aptitude-review article.correct{border-top:3px solid #10b981}.aptitude-review article.incorrect{border-top:3px solid #ef4444}.aptitude-review h2{margin:.7rem 0 .3rem}.aptitude-review details{margin-top:.6rem}.aptitude-review summary{color:#64748b;font-size:.55rem;cursor:pointer}.aptitude-review details form{margin-top:.6rem}
@media(max-width:800px){.student-aptitude-attempt{grid-template-columns:1fr}.question-palette{position:static}.aptitude-question-list{grid-template-columns:1fr}.aptitude-result-hero{grid-template-columns:auto 1fr}.aptitude-result-hero dl{grid-column:1/-1}.aptitude-review{grid-template-columns:1fr}}

/* Student usability and responsive safeguards */
.switch{position:relative;flex:0 0 auto}.switch input{left:0;top:50%;width:1px!important;height:1px!important;margin:0;transform:translateY(-50%)}.filter-empty{grid-column:1/-1;padding:2rem 1rem;border:1px dashed #cfdcda;border-radius:10px;background:#fff;color:#64748b;text-align:center;font-size:.66rem}.payment-proof-card{margin-bottom:.8rem}.payment-proof-card>summary{color:#0f766e;font-size:.68rem;font-weight:800;cursor:pointer}.payment-proof-card[open]>summary{margin-bottom:.9rem}.form-submit-row{display:flex;justify-content:flex-end}.student-sidebar-backdrop{display:none}.student-tabs button,.student-tabs a{min-height:38px}.student-card a:not(.btn){display:inline-flex;align-items:center;min-height:32px}.task-submit summary,.student-record-list details summary,.ticket-list summary,.payment-proof-card>summary{min-height:40px}.task-submit label small,.payment-proof-card label small{color:#64748b;font-size:.54rem;font-weight:500}.student-form input,.student-form select,.student-form textarea,.student-search-page input{font-size:max(16px,.65rem)}
.student-accessibility-mode *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.student-accessibility-mode :focus-visible{outline:3px solid #0f766e!important;outline-offset:3px!important;box-shadow:0 0 0 5px rgba(20,184,166,.2)!important}.student-accessibility-mode .student-card,.student-accessibility-mode .student-tabs,.student-accessibility-mode .student-topbar{border-color:#94a3b8}.student-accessibility-mode .student-card p,.student-accessibility-mode .student-page-heading p{color:#475569}
@media(max-width:720px){.student-sidebar-backdrop{position:fixed;inset:0;z-index:900;border:0;background:rgba(15,23,42,.42)}.student-sidebar-backdrop:not([hidden]){display:block}.student-tabs button,.student-tabs a{min-height:42px;padding:.6rem .8rem}.student-filter select{min-height:42px;font-size:.68rem}.student-program-switcher select{height:36px;font-size:.68rem}.student-card a:not(.btn){min-height:40px}.student-agenda article>a{width:100%;padding:.3rem 0}.student-more-sheet>a{min-height:44px}.student-more-sheet header button{min-width:44px;min-height:44px}.attendance-code-form{align-items:stretch;flex-direction:column}.attendance-code-form .btn{width:100%}.ticket-conversation form{align-items:stretch;flex-direction:column}.ticket-conversation form .btn{width:100%}.student-search-page{align-items:stretch;flex-direction:column}.student-search-page .btn{width:100%}.form-submit-row .btn{width:100%}}

/* Mentor delivery workspace */
.mentor-body{margin:0;background:#f6f9f8;color:#102a2a;font-family:Inter,system-ui,sans-serif}.mentor-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.mentor-sidebar{position:fixed;inset:0 auto 0 0;z-index:1000;display:grid;grid-template-rows:auto 1fr auto;width:250px;background:#062f2e;color:#a9cfcb}.mentor-brand{display:flex;align-items:center;gap:.7rem;height:76px;padding:0 1.05rem;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;text-decoration:none}.mentor-brand>span:first-child{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:linear-gradient(145deg,#2dd4bf,#0f766e);font:800 1.05rem "Plus Jakarta Sans";box-shadow:0 8px 20px rgba(20,184,166,.18)}.mentor-brand strong,.mentor-brand small{display:block}.mentor-brand strong{max-width:165px;overflow:hidden;text-overflow:ellipsis;font-size:.8rem;white-space:nowrap}.mentor-brand small{margin-top:.08rem;color:#79aaa5;font-size:.56rem}.mentor-nav{overflow-y:auto;padding:.65rem}.mentor-nav a{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:.55rem;min-height:37px;padding:.5rem .62rem;border-radius:8px;color:#a8cdca;text-decoration:none;font-size:.65rem;font-weight:650}.mentor-nav a:hover{background:rgba(255,255,255,.06);color:#fff}.mentor-nav a.active{background:#0d6f69;color:#fff;box-shadow:inset 3px 0 #5eead4}.mentor-nav a span:first-child{color:#73bdb6}.mentor-nav a b{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:99px;background:#ef4444;color:#fff;font-size:.48rem}.mentor-security{display:flex;align-items:center;gap:.55rem;padding:.8rem 1rem;border-top:1px solid rgba(255,255,255,.08)}.mentor-security strong,.mentor-security small{display:block}.mentor-security strong{color:#d8efec;font-size:.6rem}.mentor-security small{color:#72a49f;font-size:.52rem}.mentor-security .security-dot,.mentor-batch-switcher .status-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.12)}
.mentor-workspace{grid-column:2;min-width:0}.mentor-topbar{position:sticky;top:0;z-index:800;display:flex;align-items:center;gap:.7rem;height:76px;padding:0 1.25rem;border-bottom:1px solid #d9e5e3;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.mentor-menu-button{display:none}.mentor-batch-switcher{display:flex;align-items:center;gap:.45rem;max-width:270px;height:38px;padding:0 .65rem;border:1px solid #d9e5e3;border-radius:9px;background:#fff}.mentor-batch-switcher select{min-width:0;max-width:230px;border:0;outline:0;background:transparent;color:#334155;font:650 .63rem Inter}.mentor-search{display:flex;align-items:center;gap:.45rem;flex:1;max-width:430px;height:38px;padding:0 .7rem;border:1px solid #d9e5e3;border-radius:9px;background:#f8fafc}.mentor-search input{width:100%;border:0;outline:0;background:transparent;font:.67rem Inter}.mentor-top-actions{display:flex;align-items:center;gap:.45rem;margin-left:auto}.mentor-create-session{white-space:nowrap}.mentor-icon-button{position:relative;display:grid;place-items:center;width:36px;height:36px;border:1px solid #d9e5e3;border-radius:9px;background:#fff;color:#475569;text-decoration:none}.mentor-icon-button b{position:absolute;right:-5px;top:-6px;display:grid;place-items:center;min-width:17px;height:17px;border:2px solid #fff;border-radius:99px;background:#ef4444;color:#fff;font-size:.46rem}.mentor-profile-chip{display:flex;align-items:center;gap:.5rem;color:#334155;text-decoration:none}.mentor-profile-chip>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#0f766e;color:#fff;font-weight:800}.mentor-profile-chip strong,.mentor-profile-chip small{display:block}.mentor-profile-chip strong{font-size:.63rem}.mentor-profile-chip small{max-width:115px;overflow:hidden;color:#94a3b8;font-size:.5rem;text-overflow:ellipsis;white-space:nowrap}
.mentor-main{max-width:1500px;margin:0 auto;padding:1.5rem;outline:0}.mentor-notice{margin-bottom:1rem;padding:.75rem 1rem;border:1px solid;border-radius:9px;font-size:.68rem}.mentor-notice.success{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}.mentor-notice.error{border-color:#fecaca;background:#fef2f2;color:#991b1b}.mentor-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}.mentor-page-heading h1{margin:.12rem 0 .18rem;font:800 1.58rem "Plus Jakarta Sans";letter-spacing:-.035em}.mentor-page-heading p{max-width:850px;color:#64748b;font-size:.7rem}.mentor-eyebrow{display:block;color:#0d9488;font-size:.53rem;font-weight:850;letter-spacing:.085em;text-transform:uppercase}.mentor-back-link{display:block;width:max-content;margin-bottom:.55rem;color:#0f766e;font-size:.6rem;font-weight:750;text-decoration:none}.mentor-heading-meta{text-align:right}.mentor-heading-meta span,.mentor-heading-meta strong{display:block;font-size:.57rem}.mentor-heading-meta strong{font-size:.66rem}.mentor-alert{display:flex;gap:.7rem;margin-bottom:.8rem;padding:.75rem 1rem;border:1px solid;border-radius:10px;text-decoration:none}.mentor-alert.warning{border-color:#fde68a;background:#fffbeb;color:#92400e}.mentor-alert.danger{border-color:#fecaca;background:#fef2f2;color:#991b1b}.mentor-alert.info{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.mentor-alert strong{font-size:.65rem}.mentor-alert p{font-size:.58rem}
.mentor-card{padding:1rem;border:1px solid #d9e5e3;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.035)}.mentor-card h2{font-size:.88rem}.mentor-card h3{margin:.9rem 0 .35rem;font-size:.7rem}.mentor-card p{color:#64748b;font-size:.62rem;line-height:1.5}.mentor-card a:not(.btn){color:#0f766e;font-size:.59rem;font-weight:750;text-decoration:none}.mentor-card-top,.mentor-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.mentor-card-heading{margin-bottom:.8rem}.mentor-card-heading h2{margin-top:.1rem}.mentor-card-top>span:last-child{color:#94a3b8;font-size:.53rem}.mentor-status{display:inline-flex;align-items:center;width:max-content;padding:.2rem .45rem;border:1px solid #dbe5e4;border-radius:99px;background:#f8fafc;color:#475569;font-size:.51rem;font-weight:800}.mentor-status.active,.mentor-status.accepted,.mentor-status.completed,.mentor-status.published,.mentor-status.submitted,.mentor-status.graded,.mentor-status.present,.mentor-status.live,.mentor-status.valid,.mentor-status.window-open{border-color:#a7f3d0;background:#ecfdf5;color:#166534}.mentor-status.pending,.mentor-status.proposed,.mentor-status.scheduled,.mentor-status.draft,.mentor-status.monitor,.mentor-status.medium,.mentor-status.rescheduled,.mentor-status.under-review{border-color:#fde68a;background:#fffbeb;color:#92400e}.mentor-status.high,.mentor-status.critical,.mentor-status.cancelled,.mentor-status.absent,.mentor-status.declined{border-color:#fecaca;background:#fef2f2;color:#991b1b}.mentor-status.locked,.mentor-status.final-locked{border-color:#c7d2fe;background:#eef2ff;color:#4338ca}
.mentor-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.8rem}.mentor-dashboard-grid>.mentor-card{grid-column:span 6}.mentor-today-card{grid-column:span 7!important}.mentor-queue-card{grid-column:span 5!important}.mentor-metric-card{grid-column:span 3!important}.mentor-lower-grid,.mentor-two-column,.mentor-detail-columns,.mentor-evaluation-layout{display:grid;grid-template-columns:1.25fr 1fr;align-items:start;gap:.8rem;margin-top:.8rem}.mentor-card-heading+form{margin-top:.3rem}.mentor-timeline,.mentor-queue-list,.mentor-record-list,.mentor-progress-list,.mentor-note-list{display:grid}.mentor-timeline article,.mentor-queue-list>a{display:grid;grid-template-columns:65px 1fr auto;align-items:center;gap:.6rem;padding:.65rem 0;border-bottom:1px solid #edf2f1;color:inherit;text-decoration:none}.mentor-timeline time{font-size:.58rem;font-weight:800}.mentor-timeline strong,.mentor-queue-list strong{display:block;font-size:.62rem}.mentor-timeline small,.mentor-queue-list small{color:#94a3b8;font-size:.51rem}.mentor-metric-card span,.mentor-metric-card strong,.mentor-metric-card small{display:block}.mentor-metric-card>span{color:#64748b;font-size:.55rem}.mentor-metric-card>strong{margin:.3rem 0;font-size:1.3rem}.mentor-metric-card>small{color:#94a3b8;font-size:.5rem}.mentor-health-grid,.mentor-mini-metrics,.mentor-final-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.mentor-health-grid div,.mentor-mini-metrics div,.mentor-final-summary div{padding:.6rem;border:1px solid #e8efee;border-radius:8px;background:#fbfdfd}.mentor-health-grid span,.mentor-health-grid strong,.mentor-mini-metrics span,.mentor-mini-metrics strong,.mentor-final-summary span,.mentor-final-summary strong{display:block}.mentor-health-grid span,.mentor-mini-metrics span,.mentor-final-summary span{color:#94a3b8;font-size:.49rem}.mentor-health-grid strong,.mentor-mini-metrics strong,.mentor-final-summary strong{margin-top:.15rem;font-size:.65rem}.mentor-activity-list article{padding:.55rem 0;border-bottom:1px solid #edf2f1}.mentor-activity-list strong,.mentor-activity-list small{display:block}.mentor-activity-list strong{font-size:.6rem}.mentor-activity-list small{color:#94a3b8;font-size:.49rem}.mentor-empty,.mentor-empty-inline{grid-column:1/-1;padding:2rem;text-align:center}.mentor-empty>span{display:grid;place-items:center;width:40px;height:40px;margin:0 auto .6rem;border-radius:50%;background:#f0fdfa;color:#0f766e}.mentor-empty h2{font-size:.82rem}.mentor-empty p,.mentor-empty-inline p{margin-top:.25rem}
.mentor-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.assignment-card,.batch-card,.session-card,.submission-card{display:grid;gap:.7rem}.mentor-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.mentor-detail-grid dt{color:#94a3b8;font-size:.49rem}.mentor-detail-grid dd{margin:.1rem 0 0;color:#334155;font-size:.59rem;font-weight:700}.assignment-card details,.session-card details,.mentor-resubmission{padding:.6rem;border:1px solid #e7eeed;border-radius:8px}.assignment-card summary,.session-card summary,.mentor-resubmission summary,.mentor-create-panel>summary{color:#0f766e;font-size:.58rem;font-weight:800;cursor:pointer}.batch-card footer,.submission-card footer,.session-actions,.mentor-record-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem}.batch-card footer small{margin-right:auto;color:#94a3b8;font-size:.5rem}.mentor-progress{height:6px;overflow:hidden;border-radius:99px;background:#edf2f1}.mentor-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#2dd4bf)}
.mentor-tabs{display:flex;gap:.25rem;margin-bottom:.8rem;overflow-x:auto;padding:.25rem;border:1px solid #d9e5e3;border-radius:9px;background:#fff}.mentor-tabs button,.mentor-tabs a{flex:0 0 auto;min-height:34px;padding:.42rem .65rem;border:0;border-radius:6px;background:transparent;color:#64748b;font:700 .56rem Inter;text-decoration:none;cursor:pointer}.mentor-tabs .active{background:#0f766e;color:#fff}.mentor-toolbar{display:flex;align-items:start;justify-content:space-between;gap:.8rem}.mentor-filter{display:flex;gap:.5rem}.mentor-filter select{height:38px;padding:0 .65rem;border:1px solid #cfdcda;border-radius:8px;background:#fff;font:.6rem Inter}.mentor-agenda{padding:0}.mentor-agenda article{display:grid;grid-template-columns:50px 8px 1fr auto;align-items:center;gap:.7rem;padding:.75rem 1rem;border-bottom:1px solid #edf2f1}.mentor-agenda article>div:first-child{text-align:center}.mentor-agenda article>div:first-child strong,.mentor-agenda article>div:first-child span{display:block}.mentor-agenda article>div:first-child strong{font-size:.78rem}.mentor-agenda article>div:first-child span{color:#94a3b8;font-size:.5rem}.mentor-agenda article>i{width:7px;height:7px;border-radius:50%;background:#14b8a6}.mentor-agenda h2{margin:.12rem 0}.mentor-agenda article>a{color:#0f766e;font-size:.57rem;font-weight:750;text-decoration:none}
.mentor-create-panel{margin-bottom:.8rem}.mentor-create-panel>summary{font-size:.66rem}.mentor-create-panel[open]>summary{margin-bottom:1rem;padding-bottom:.7rem;border-bottom:1px solid #edf2f1}.mentor-form{display:grid;gap:.7rem}.mentor-form label{display:grid;gap:.3rem;color:#334155;font-size:.58rem;font-weight:750}.mentor-form label span,.mentor-form label small{color:#64748b;font-size:.5rem}.mentor-form input,.mentor-form select,.mentor-form textarea,.mentor-search-page input,.mentor-attendance-row input,.mentor-attendance-row select{width:100%;padding:.56rem .62rem;border:1px solid #cfdcda;border-radius:8px;background:#fff;color:#1e293b;font:400 max(16px,.62rem) Inter}.mentor-form input:focus,.mentor-form select:focus,.mentor-form textarea:focus,.mentor-search-page input:focus,.mentor-attendance-row input:focus,.mentor-attendance-row select:focus{outline:0;border-color:#0d9488;box-shadow:0 0 0 3px rgba(13,148,136,.1)}.mentor-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mentor-form-grid .full{grid-column:1/-1}.mentor-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.mentor-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding-top:.75rem;border-top:1px solid #edf2f1}.mentor-form-actions>span{margin-right:auto;color:#94a3b8;font-size:.51rem}.btn-danger-outline{border-color:#fecaca!important;background:#fff!important;color:#b91c1c!important}.btn-warning-outline{border:1px solid #fde68a;background:#fffbeb;color:#92400e}.mentor-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-bottom:.8rem}.mentor-metric-grid article{padding:.8rem;border:1px solid #d9e5e3;border-radius:10px;background:#fff}.mentor-metric-grid span,.mentor-metric-grid strong,.mentor-metric-grid small{display:block}.mentor-metric-grid span{color:#64748b;font-size:.52rem}.mentor-metric-grid strong{margin:.22rem 0;font-size:1rem}.mentor-metric-grid small{color:#94a3b8;font-size:.48rem}.mentor-section-title{margin:1.1rem 0 .6rem;font-size:.78rem}
.mentor-student-list{display:grid;gap:.5rem}.student-row{display:grid;grid-template-columns:auto minmax(160px,1.5fr) repeat(3,minmax(80px,1fr)) auto auto;align-items:center;gap:.7rem;color:inherit;text-decoration:none}.student-row>div span,.student-row>div strong,.student-row>div small{display:block}.student-row>div>span,.student-row>div>small{color:#94a3b8;font-size:.49rem}.student-row>div>strong{font-size:.61rem}.mentor-avatar,.mentor-avatar-large{display:grid;place-items:center;border-radius:10px;background:#0f766e;color:#fff;font-weight:800}.mentor-avatar{width:34px;height:34px;font-size:.65rem}.mentor-avatar-large{width:60px;height:60px;font-size:1.2rem}.mentor-record-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.65rem 0;border-bottom:1px solid #edf2f1}.mentor-record-list>article:last-child{border-bottom:0}.mentor-record-list strong,.mentor-record-list small{display:block}.mentor-record-list strong{font-size:.6rem}.mentor-record-list small{margin-top:.12rem;color:#94a3b8;font-size:.49rem}.mentor-record-list>article>p,.mentor-record-actions{grid-column:1/-1}.mentor-profile-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;margin-bottom:.8rem}.mentor-profile-header>div:last-child{text-align:right}.mentor-profile-header>div:last-child span,.mentor-profile-header>div:last-child strong,.mentor-profile-header>div:last-child small{display:block;font-size:.52rem}.mentor-check{display:flex!important;align-items:center!important;grid-template-columns:auto 1fr!important}.mentor-check input{width:auto!important}.availability-grid{display:grid;gap:.45rem}.availability-grid>div{display:grid;grid-template-columns:1fr 110px 110px;align-items:center;gap:.45rem;padding:.5rem;border:1px solid #e7eeed;border-radius:8px}.mentor-info-box{padding:.65rem!important;border-radius:8px;background:#f0fdfa!important;color:#0f766e!important}.mentor-setting{display:flex!important;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem;border:1px solid #e7eeed;border-radius:8px}.mentor-setting input{width:auto!important}.report-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.mentor-search-page{display:flex;gap:.5rem;margin-bottom:.8rem}.mentor-search-page input{flex:1}.mentor-search-results{padding:0}.mentor-search-results>a{display:grid!important;grid-template-columns:60px 1fr auto;align-items:center;gap:.7rem;padding:.75rem 1rem;border-bottom:1px solid #edf2f1}.mentor-search-results>a>span{color:#0d9488;font-size:.5rem;font-weight:800;text-transform:uppercase}
.mentor-detail-columns{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr)}.mentor-detail-main,.mentor-detail-aside{display:grid;gap:.8rem}.mentor-progress-list>div{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.55rem 0;border-bottom:1px solid #edf2f1;font-size:.58rem}.mentor-note-list article{padding:.65rem 0;border-bottom:1px solid #edf2f1}.mentor-note-list header{display:flex;justify-content:space-between;margin-bottom:.35rem}.mentor-note-list strong{font-size:.6rem}.mentor-final-evaluation{margin-top:.8rem}.mentor-final-summary{grid-template-columns:repeat(3,1fr);margin-bottom:.8rem}.mentor-rating-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:.7rem}.mentor-evaluation-layout{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr)}.mentor-submission-panel{position:sticky;top:92px;max-height:calc(100vh - 110px);overflow:auto}.mentor-submission-text{max-height:360px;overflow:auto;padding:.7rem;border:1px solid #e7eeed;border-radius:8px;background:#f8fafc;color:#334155;font-size:.61rem;line-height:1.65}.mentor-score-total{text-align:right}.mentor-score-total strong{font-size:1.15rem}.mentor-score-total span{color:#94a3b8;font-size:.58rem}.mentor-criterion{padding:.7rem;border:1px solid #d9e5e3;border-radius:9px}.mentor-criterion legend{padding:0 .25rem;color:#102a2a;font-size:.62rem;font-weight:800}.mentor-criterion legend span{color:#0f766e;font-size:.52rem}.mentor-criterion>div{display:grid;grid-template-columns:90px 1fr;gap:.6rem;margin-top:.55rem}.mentor-resubmission[open] summary{margin-bottom:.6rem}.mentor-attendance-window{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.mentor-code{text-align:center}.mentor-code strong{display:block;color:#0f766e;font:800 1.7rem ui-monospace,monospace;letter-spacing:.22em}.mentor-code span{color:#64748b;font-size:.52rem}.mentor-attendance-roster{padding:1rem}.mentor-attendance-table{overflow-x:auto}.mentor-attendance-head,.mentor-attendance-row{display:grid;grid-template-columns:minmax(190px,1.25fr) minmax(130px,.85fr) 130px minmax(190px,1fr);align-items:center;gap:.65rem;min-width:760px;padding:.6rem}.mentor-attendance-head{border-radius:7px;background:#f8fafc;color:#64748b;font-size:.5rem;font-weight:800;text-transform:uppercase}.mentor-attendance-row{border-bottom:1px solid #edf2f1}.mentor-attendance-row>div:first-child{display:flex;align-items:center;gap:.55rem}.mentor-attendance-row strong,.mentor-attendance-row small{display:block}.mentor-attendance-row strong{font-size:.58rem}.mentor-attendance-row small{color:#94a3b8;font-size:.48rem}.mentor-evidence{display:block;font-size:.51rem;font-weight:750}.mentor-evidence.valid{color:#047857}.mentor-evidence.none{color:#94a3b8}.mentor-mobile-nav,.mentor-more-sheet{display:none}.mentor-sidebar-backdrop{display:none}.mentor-accessibility-mode *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.mentor-accessibility-mode :focus-visible{outline:3px solid #0f766e!important;outline-offset:3px!important}
@media(max-width:1120px){.mentor-shell{grid-template-columns:1fr}.mentor-sidebar{transform:translateX(-100%);transition:.2s;box-shadow:14px 0 30px rgba(15,23,42,.2)}.mentor-sidebar.open{transform:translateX(0)}.mentor-workspace{grid-column:1}.mentor-menu-button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #d9e5e3;border-radius:8px;background:#fff}.mentor-profile-chip>span:last-child{display:none}.mentor-dashboard-grid>.mentor-card{grid-column:span 6}.mentor-detail-columns,.mentor-evaluation-layout{grid-template-columns:1fr}.mentor-submission-panel{position:static;max-height:none}}
@media(max-width:760px){.mentor-topbar{height:62px;padding:0 .7rem}.mentor-batch-switcher{flex:1}.mentor-batch-switcher select{max-width:calc(100vw - 210px)}.mentor-search,.mentor-create-session,.mentor-profile-chip{display:none}.mentor-main{padding:1rem 1rem 5.2rem}.mentor-page-heading{align-items:flex-start;flex-direction:column}.mentor-page-heading h1{font-size:1.3rem}.mentor-dashboard-grid,.mentor-lower-grid,.mentor-two-column,.mentor-list-grid{grid-template-columns:1fr}.mentor-dashboard-grid>.mentor-card,.mentor-today-card,.mentor-queue-card,.mentor-metric-card{grid-column:1!important}.mentor-metric-grid{grid-template-columns:1fr 1fr}.mentor-health-grid,.mentor-mini-metrics{grid-template-columns:1fr 1fr}.mentor-toolbar{display:block}.mentor-filter{margin-bottom:.8rem}.mentor-agenda article{grid-template-columns:45px 8px 1fr}.mentor-agenda article>a{grid-column:3}.student-row{grid-template-columns:auto 1fr auto}.student-row>div:nth-of-type(n+2){display:none}.mentor-form-grid,.mentor-inline-fields,.mentor-rating-grid{grid-template-columns:1fr}.mentor-form-grid .full{grid-column:1}.mentor-form-actions{align-items:stretch;flex-direction:column}.mentor-form-actions>span{margin:0}.mentor-form-actions .btn{width:100%}.mentor-profile-header{grid-template-columns:auto 1fr}.mentor-profile-header>div:last-child{grid-column:1/-1;text-align:left}.availability-grid>div{grid-template-columns:1fr 1fr}.availability-grid>div label{grid-column:1/-1}.report-panel,.mentor-attendance-window{align-items:stretch;flex-direction:column}.mentor-final-summary{grid-template-columns:1fr}.mentor-criterion>div{grid-template-columns:1fr}.mentor-sidebar-backdrop{position:fixed;inset:0;z-index:900;border:0;background:rgba(15,23,42,.42)}.mentor-sidebar-backdrop:not([hidden]){display:block}.mentor-mobile-nav{position:fixed;z-index:1100;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);height:64px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #d9e5e3;background:#fff;box-shadow:0 -5px 20px rgba(15,23,42,.08)}.mentor-mobile-nav a,.mentor-mobile-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.15rem;border:0;background:transparent;color:#64748b;font:650 .48rem Inter;text-decoration:none}.mentor-mobile-nav span{font-size:.86rem}.mentor-mobile-nav .active{color:#0f766e}.mentor-more-sheet{position:fixed;z-index:1200;left:0;right:0;bottom:0;max-height:74vh;overflow:auto;padding:.7rem 1rem calc(1rem + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;background:#fff;box-shadow:0 -20px 60px rgba(15,23,42,.22)}.mentor-more-sheet.open{display:grid;grid-template-columns:1fr 1fr;gap:.3rem}.mentor-more-sheet header{grid-column:1/-1;display:flex;justify-content:space-between;padding:.5rem 0 .8rem}.mentor-more-sheet header button{min-width:44px;min-height:44px;border:0;background:transparent;font-size:1.3rem}.mentor-more-sheet>a{display:flex;align-items:center;gap:.55rem;min-height:44px;padding:.7rem;border-radius:8px;background:#f8fafc;color:#334155;text-decoration:none;font-size:.6rem}.mentor-more-sheet>a span{color:#0f766e}}
@media(max-width:430px){.mentor-metric-grid{grid-template-columns:1fr}.mentor-health-grid,.mentor-mini-metrics{grid-template-columns:1fr}.mentor-top-actions .mentor-icon-button:last-child{display:none}}

/* Focused mentor operations: assigned work, sessions, grading and payouts only. */
.mentor-focus-metrics>a{display:block;padding:.9rem;border:1px solid #d9e5e3;border-radius:11px;background:#fff;color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.mentor-focus-metrics>a:hover{transform:translateY(-2px);border-color:#8dd8d0;box-shadow:0 10px 24px rgba(15,118,110,.08)}
.mentor-focus-metrics>a span,.mentor-focus-metrics>a strong,.mentor-focus-metrics>a small{display:block}
.mentor-focus-metrics>a span{color:#64748b;font-size:.54rem}
.mentor-focus-metrics>a strong{margin:.22rem 0;color:#0f172a;font-size:1.08rem}
.mentor-focus-metrics>a small{color:#8493a5;font-size:.49rem;line-height:1.5}
.mentor-focused-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}
.mentor-focused-dashboard>.mentor-card{grid-column:auto!important}
.mentor-timeline>div{display:grid;grid-template-columns:72px 10px 1fr auto;align-items:center;gap:.55rem;padding:.7rem 0;border-bottom:1px solid #edf2f1}
.mentor-timeline>div time small{display:block;margin-top:.12rem;color:#94a3b8}
.session-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}
.session-actions form{margin:0}
.mentor-record-list article>div p{margin-top:.25rem;color:#64748b;font-size:.52rem}
.mentor-withdrawal-history{margin-top:.8rem}
.mentor-earnings-layout{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr)}
.mentor-availability-layout{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr)}
.mentor-availability-side{display:grid;gap:.8rem}
.mentor-live-availability>div{grid-template-columns:minmax(110px,1fr) 105px auto 105px}
.mentor-live-availability>div>span{color:#94a3b8;font-size:.5rem;text-align:center}
.mentor-availability-history{margin-top:.8rem}
.mentor-form button:disabled,.btn:disabled{cursor:not-allowed;opacity:.55}

/* Admin mentor assignment and withdrawal operations. */
.admin-mentor-payment-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:1rem;margin-bottom:1rem}
.admin-operation-form,.admin-operation-guide{padding:1rem}
.admin-card-heading h2,.table-toolbar h2{margin:.15rem 0;font-size:.9rem}
.admin-card-heading p,.admin-operation-guide p,.table-toolbar p{color:#64748b;font-size:.65rem}
.admin-operation-guide{background:linear-gradient(145deg,#f0fdfa,#f8fafc)}
.admin-operation-guide h2{margin:.25rem 0 .8rem;font-size:.92rem}
.admin-operation-guide ol{display:grid;gap:.65rem;padding-left:1.15rem;color:#334155;font-size:.68rem;line-height:1.55}
.admin-operation-guide a{color:#0f766e;font-weight:800}
.admin-table td>strong,.admin-table td>small{display:block}
.admin-table td>small{margin-top:.15rem;color:#8190a2;font-size:.61rem}
.admin-inline-payment-form,.admin-withdrawal-action{display:grid;grid-template-columns:110px 100px 100px auto;gap:.35rem;min-width:430px}
.admin-withdrawal-action{grid-template-columns:minmax(140px,1fr) auto auto;min-width:360px}
.admin-withdrawal-action.transfer{grid-template-columns:120px 150px 130px minmax(130px,1fr) auto;min-width:720px}
.admin-inline-payment-form input,.admin-inline-payment-form select,.admin-withdrawal-action input{min-height:34px;padding:.42rem .5rem;border:1px solid #d7e2e0;border-radius:7px;background:#fff;color:#1e293b;font:500 .62rem Inter}

@media(max-width:900px){
  .mentor-focused-dashboard,.mentor-earnings-layout,.admin-mentor-payment-grid{grid-template-columns:1fr}
  .mentor-focused-dashboard>.mentor-card{grid-column:1!important}
}
@media(max-width:760px){
  .mentor-mobile-nav{grid-template-columns:repeat(6,1fr)}
  .mentor-live-availability>div{grid-template-columns:1fr auto 1fr}
  .mentor-live-availability>div label{grid-column:1/-1}
}

/* Complete public website */
.public-body{margin:0;background:#fff;color:#0f172a;font-family:Inter,system-ui,sans-serif}.public-container{width:min(1180px,calc(100% - 2.5rem));margin-inline:auto}.public-readable{max-width:820px}.public-announcement{display:flex;align-items:center;justify-content:center;gap:1rem;min-height:36px;padding:.4rem 1rem;background:#073b39;color:#d9f7f3;font-size:.72rem}.public-announcement>div{display:flex;align-items:center;justify-content:center;gap:.7rem;flex-wrap:wrap}.public-announcement span{color:#a6d8d3}.public-announcement a{color:#5eead4;font-weight:750}.public-announcement button{border:0;background:transparent;color:#fff;font-size:1rem;cursor:pointer}.public-header{position:sticky;top:0;z-index:900;border-bottom:1px solid #dbe5e4;background:rgba(255,255,255,.97);backdrop-filter:blur(14px)}.public-header-inner{display:flex;align-items:center;gap:1rem;width:min(1320px,calc(100% - 2rem));height:72px;margin:auto}.public-brand{display:flex;align-items:center;gap:.6rem;color:#0f172a;text-decoration:none}.public-brand>span:first-child{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(145deg,#14b8a6,#0f766e);color:#fff;font-weight:850}.public-brand strong,.public-brand small{display:block;white-space:nowrap}.public-brand strong{font:800 .75rem "Plus Jakarta Sans"}.public-brand small{margin-top:.08rem;color:#64748b;font-size:.47rem}.public-nav{display:flex;align-items:center;justify-content:center;gap:.15rem;flex:1}.public-nav a{padding:.55rem .48rem;border-radius:7px;color:#475569;font-size:.56rem;font-weight:700;text-decoration:none;white-space:nowrap}.public-nav a:hover,.public-nav a.active{background:#f0fdfa;color:#0f766e}.public-actions{display:flex;align-items:center;gap:.45rem}.public-actions .btn{padding:.55rem .75rem;font-size:.58rem}.public-login-link{color:#0f766e;font-size:.59rem;font-weight:750;text-decoration:none}.public-search-toggle,.public-menu-toggle{display:grid;place-items:center;width:36px;height:36px;border:1px solid #dbe5e4;border-radius:8px;background:#fff;color:#334155;cursor:pointer}.public-menu-toggle{display:none}.public-search-panel{display:flex;gap:.5rem;width:min(780px,calc(100% - 2rem));margin:0 auto;padding:.7rem}.public-search-panel[hidden]{display:none}.public-search-panel input{flex:1;padding:.65rem .75rem;border:1px solid #cfdcda;border-radius:8px;font:500 .7rem Inter}.public-flash{width:min(1180px,calc(100% - 2.5rem));margin:1rem auto;padding:.75rem 1rem;border:1px solid #a7f3d0;border-radius:9px;background:#ecfdf5;color:#065f46;font-size:.68rem}.public-flash.error{border-color:#fecaca;background:#fef2f2;color:#991b1b}
.public-kicker{display:block;color:#0d9488;font-size:.61rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.public-hero{overflow:hidden;padding:4.8rem 0 4rem;background:radial-gradient(circle at 85% 15%,rgba(45,212,191,.16),transparent 32%),linear-gradient(180deg,#f8fffd,#fff)}.public-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:4rem}.public-hero h1{max-width:750px;margin:.6rem 0 1.1rem;font:800 clamp(2.25rem,4.8vw,4.25rem)/1.04 "Plus Jakarta Sans";letter-spacing:-.055em}.public-hero p{max-width:700px;color:#475569;font-size:1rem;line-height:1.75}.public-hero>div>div>small{display:block;margin-top:.8rem;color:#64748b;font-weight:700}.public-hero-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1.6rem}.public-text-link{color:#0f766e;font-size:.7rem;font-weight:800;text-decoration:none}.public-trust-row{display:flex;gap:.65rem 1rem;flex-wrap:wrap;margin-top:1.5rem}.public-trust-row span{color:#334155;font-size:.6rem;font-weight:700}.public-hero-visual{position:relative}.public-hero-visual img{display:block;width:100%;aspect-ratio:1.18;object-fit:cover;border:10px solid #fff;border-radius:26px;box-shadow:0 28px 70px rgba(15,118,110,.2)}.public-hero-visual>div{position:absolute;left:-20px;bottom:25px;padding:.8rem 1rem;border:1px solid #ccfbf1;border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(15,23,42,.12)}.public-hero-visual strong,.public-hero-visual span{display:block}.public-hero-visual strong{font-size:.78rem}.public-hero-visual span{color:#64748b;font-size:.53rem}
.public-section{padding:4.2rem 0}.public-tint{border-block:1px solid #e5efed;background:#f5fbfa}.public-dark{background:#082f2e;color:#fff}.public-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:2rem}.public-section-heading.centered{justify-content:center;text-align:center}.public-section-heading h2{margin:.35rem 0 0;font:800 clamp(1.55rem,3vw,2.35rem) "Plus Jakarta Sans";letter-spacing:-.035em}.public-section-heading p{margin-top:.35rem;color:#64748b;font-size:.75rem}.public-section-heading>a{color:#0f766e;font-size:.65rem;font-weight:800;text-decoration:none}.public-dark .public-section-heading h2{color:#fff}.public-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.public-program-card{display:flex;overflow:hidden;flex-direction:column;border:1px solid #dbe5e4;border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(15,23,42,.045);transition:.2s}.public-program-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(15,118,110,.12)}.public-card-media{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:1rem;background:linear-gradient(135deg,#0f766e,#0d9488);color:#fff}.public-card-media span,.public-card-media b{font-size:.55rem;text-transform:uppercase}.public-card-media b{padding:.25rem .45rem;border-radius:99px;background:#fff;color:#0f766e}.public-card-body{display:flex;flex:1;flex-direction:column;padding:1rem}.public-card-body>small{color:#0d9488;font-size:.52rem;font-weight:800}.public-card-body h3{margin:.45rem 0;font-size:.88rem;line-height:1.35}.public-card-body p{flex:1;color:#64748b;font-size:.62rem;line-height:1.55}.public-card-body dl{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-top:1rem}.public-card-body dl div{padding:.5rem;border-radius:7px;background:#f8fafc}.public-card-body dt{color:#94a3b8;font-size:.44rem}.public-card-body dd{margin:.12rem 0 0;font-size:.53rem;font-weight:750}.public-program-card footer{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:1rem;border-top:1px solid #edf2f1}.public-program-card footer span,.public-program-card footer strong,.public-program-card footer small{display:block}.public-program-card footer span,.public-program-card footer small{color:#94a3b8;font-size:.45rem}.public-program-card footer strong{font-size:.82rem}.public-program-card footer .btn{padding:.5rem .7rem;font-size:.55rem}
.public-batch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.public-batch-card{display:flex;flex-direction:column;padding:1rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff}.public-batch-card>span{color:#0d9488;font-size:.5rem;font-weight:850;text-transform:uppercase}.public-batch-card h2,.public-batch-card h3{margin:.5rem 0 .25rem;font-size:.78rem}.public-batch-card p{color:#64748b;font-size:.56rem}.public-batch-card dl{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:1rem 0}.public-batch-card dt{color:#94a3b8;font-size:.44rem}.public-batch-card dd{margin:.1rem 0 0;font-size:.52rem;font-weight:750}.public-batch-card .btn{margin-top:auto}.public-process{display:grid;grid-template-columns:repeat(5,1fr);padding:0;list-style:none}.public-process li{position:relative;display:grid;justify-items:center;gap:.35rem;padding:0 1rem;text-align:center}.public-process li:not(:last-child)::after{content:"";position:absolute;top:20px;left:65%;width:70%;height:1px;background:#99d8d2}.public-process b{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;border:1px solid #99d8d2;border-radius:50%;background:#f0fdfa;color:#0f766e}.public-process strong{font-size:.65rem}.public-process span{color:#64748b;font-size:.52rem}.public-process.compact{margin-top:1rem}.public-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem}.public-benefit-grid div{display:flex;align-items:center;gap:.55rem;padding:.8rem;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:rgba(255,255,255,.04);color:#d9f7f3;font-size:.6rem;font-weight:700}.public-benefit-grid span{color:#5eead4}.public-mentor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.public-mentor-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff}.public-avatar{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:12px;background:linear-gradient(145deg,#0f766e,#14b8a6);color:#fff;font-weight:850}.public-avatar.large{flex-basis:70px;height:70px;font-size:1.25rem}.public-avatar.xl{flex-basis:94px;height:94px;font-size:1.7rem}.public-mentor-card h3{font-size:.72rem}.public-mentor-card p{margin:.12rem 0;color:#64748b;font-size:.57rem}.public-mentor-card small{display:block;color:#475569;font-size:.5rem}.public-mentor-card a{display:inline-block;margin-top:.5rem;color:#0f766e;font-size:.53rem;font-weight:800;text-decoration:none}.public-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.public-stats div{padding:1.3rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff;text-align:center}.public-stats strong,.public-stats span{display:block}.public-stats strong{color:#0f766e;font:800 1.6rem "Plus Jakarta Sans"}.public-stats span{margin-top:.3rem;color:#64748b;font-size:.54rem}.public-story-card,.public-resource-card{padding:1rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff}.public-story-card p,.public-story-card blockquote{color:#334155;font-size:.68rem;line-height:1.65}.public-story-card footer{margin-top:1rem}.public-story-card strong,.public-story-card span{display:block}.public-story-card strong{font-size:.6rem}.public-story-card span{color:#0d9488;font-size:.48rem}.public-resource-card>span{color:#0d9488;font-size:.5rem;font-weight:850;text-transform:uppercase}.public-resource-card h2,.public-resource-card h3{margin:.55rem 0;font-size:.78rem}.public-resource-card p{color:#64748b;font-size:.59rem;line-height:1.55}.public-resource-card small{display:block;margin-top:.8rem;color:#94a3b8;font-size:.48rem}.public-resource-card a{display:inline-flex;margin-top:1rem;color:#0f766e;font-size:.56rem;font-weight:800;text-decoration:none}.public-verify-cta>.public-container,.public-final-cta>.public-container,.public-inquiry-cta{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:2rem;border-radius:18px;background:#ecfdf8}.public-verify-cta h2,.public-final-cta h2,.public-inquiry-cta h2{margin:.35rem 0;font-size:1.4rem}.public-verify-cta p,.public-final-cta p,.public-inquiry-cta p{color:#475569;font-size:.66rem}.public-final-cta{padding:1.5rem 0 4rem}.public-final-cta>.public-container{display:block;text-align:center;background:linear-gradient(135deg,#073b39,#0f766e);color:#fff}.public-final-cta p{color:#b6d7d4}.public-final-cta>div>div{display:flex;justify-content:center;gap:.6rem;margin-top:1rem}.public-faq-list{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.public-faq-list details{padding:.8rem 1rem;border:1px solid #dbe5e4;border-radius:10px;background:#fff}.public-faq-list summary{display:flex;justify-content:space-between;gap:1rem;cursor:pointer;font-size:.62rem;font-weight:750}.public-faq-list p{padding-top:.65rem;color:#64748b;font-size:.58rem;line-height:1.55}
.public-page-hero{padding:3.4rem 0;border-bottom:1px solid #dbe5e4;background:linear-gradient(180deg,#f0fdfa,#fff)}.public-page-hero h1{margin:.4rem 0 .55rem;font:800 clamp(2rem,4vw,3.3rem) "Plus Jakarta Sans";letter-spacing:-.045em}.public-page-hero p{max-width:780px;color:#475569;font-size:.82rem;line-height:1.7}.public-page-hero strong{display:block;margin-top:.7rem;color:#0f766e;font-size:.68rem}.public-catalog>.public-container{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:start;gap:1rem}.public-catalog-filters{position:sticky;top:90px;display:grid;gap:.65rem;padding:1rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff}.public-catalog-filters label,.public-inline-filters label,.public-contact-form label,.public-auth-card label{display:grid;gap:.3rem;color:#334155;font-size:.55rem;font-weight:750}.public-catalog-filters input,.public-catalog-filters select,.public-inline-filters input,.public-inline-filters select,.public-contact-form input,.public-contact-form select,.public-contact-form textarea,.public-auth-card input,.public-verify-form input,.public-search-page input{width:100%;padding:.6rem .65rem;border:1px solid #cfdcda;border-radius:8px;background:#fff;font:500 max(16px,.62rem) Inter}.public-catalog-filters>a{color:#0f766e;text-align:center;font-size:.55rem}.public-catalog-summary{display:flex;justify-content:space-between;margin-bottom:.7rem;color:#64748b;font-size:.55rem}.public-catalog-summary button{display:none}.public-pagination{display:flex;justify-content:center;gap:.35rem;margin-top:1.2rem}.public-pagination a{display:grid;place-items:center;width:34px;height:34px;border:1px solid #dbe5e4;border-radius:7px;color:#475569;text-decoration:none}.public-pagination a.active{background:#0f766e;color:#fff}.public-inline-filters{display:grid;grid-template-columns:repeat(4,1fr) auto;align-items:end;gap:.6rem;margin-bottom:1.2rem;padding:.8rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff}
.public-program-hero{padding:2rem 0 2.8rem;background:linear-gradient(135deg,#eefbf8,#fff)}.public-breadcrumb{display:flex;gap:.45rem;margin-bottom:1.5rem;color:#64748b;font-size:.52rem}.public-breadcrumb a{color:#0f766e;text-decoration:none}.public-program-hero-grid{display:grid;grid-template-columns:1fr 290px;align-items:start;gap:3rem}.public-program-hero h1{margin:.5rem 0 .8rem;font:800 clamp(2rem,4vw,3.4rem) "Plus Jakarta Sans";letter-spacing:-.045em}.public-program-hero p{color:#475569;font-size:.78rem;line-height:1.7}.public-program-hero aside{padding:1.2rem;border:1px solid #99d8d2;border-radius:14px;background:#fff;box-shadow:0 15px 35px rgba(15,118,110,.1)}.public-program-hero aside span,.public-program-hero aside strong,.public-program-hero aside small,.public-program-hero aside b{display:block}.public-program-hero aside span{color:#64748b;font-size:.52rem}.public-program-hero aside strong{margin:.2rem 0;font-size:1.5rem}.public-program-hero aside small{color:#0f766e;font-size:.5rem}.public-program-hero aside hr{margin:1rem 0;border:0;border-top:1px solid #e5efed}.public-program-hero aside b{margin-top:.25rem;font-size:.65rem}.public-program-hero aside p{margin-top:1rem;padding:.55rem;border-radius:7px;background:#f0fdfa;color:#0f766e;font-size:.52rem}.public-program-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:1rem}.public-program-layout>article{display:grid;gap:1rem}.public-content-card{padding:1.3rem;border:1px solid #dbe5e4;border-radius:13px;background:#fff}.public-content-card h2{margin:.35rem 0 .65rem;font-size:1.1rem}.public-content-card p,.public-content-card li{color:#475569;font-size:.65rem;line-height:1.65}.public-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-top:1rem}.public-facts div{padding:.65rem;border-radius:8px;background:#f8fafc}.public-facts span,.public-facts strong{display:block}.public-facts span{color:#94a3b8;font-size:.46rem}.public-facts strong{margin-top:.2rem;font-size:.56rem}.public-chip-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.8rem}.public-chip-list span{padding:.3rem .5rem;border:1px solid #ccfbf1;border-radius:99px;background:#f0fdfa;color:#0f766e;font-size:.5rem;font-weight:700}.public-two-copy{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.public-curriculum{display:grid;gap:.45rem;margin-top:1rem}.public-curriculum details{border:1px solid #e5efed;border-radius:9px}.public-curriculum summary{display:grid;grid-template-columns:65px 1fr auto;gap:.6rem;padding:.7rem;cursor:pointer}.public-curriculum summary span{color:#0d9488;font-size:.52rem;font-weight:800}.public-curriculum summary strong{font-size:.6rem}.public-curriculum details>div{padding:.3rem .8rem .8rem;border-top:1px solid #edf2f1}.public-curriculum details p{padding:.25rem 0}.public-curriculum details small{color:#94a3b8;font-size:.5rem}.public-batch-selector{display:grid;gap:.6rem;margin-top:1rem}.public-batch-selector article{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.8rem;border:1px solid #e5efed;border-radius:9px}.public-batch-selector h3{margin:.3rem 0;font-size:.65rem}.public-batch-selector p,.public-batch-selector small{font-size:.52rem}.public-status{padding:.2rem .4rem;border-radius:99px;background:#ecfdf5;color:#166534;font-size:.47rem;font-weight:800}.public-sticky-enroll{position:sticky;top:92px;display:grid;gap:.45rem;padding:1rem;border:1px solid #99d8d2;border-radius:13px;background:#fff}.public-sticky-enroll>span{color:#0d9488;font-size:.5rem;font-weight:800}.public-sticky-enroll h2{font-size:.78rem}.public-sticky-enroll>strong{font-size:1.3rem}.public-sticky-enroll>small,.public-sticky-enroll>p{color:#64748b;font-size:.5rem}.public-sticky-enroll>a:not(.btn){color:#0f766e;text-align:center;font-size:.5rem}.public-mobile-apply{display:none}
.public-search-page{display:flex;gap:.5rem;max-width:780px;margin-top:1.2rem}.public-search-page input{flex:1}.public-search-groups{display:grid;gap:1.2rem}.public-search-groups section{border:1px solid #dbe5e4;border-radius:12px;background:#fff}.public-search-groups h2{display:flex;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid #edf2f1;font-size:.75rem}.public-search-groups h2 span{color:#0d9488}.public-search-groups section>a,.public-link-list>a{display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:.7rem;padding:.75rem 1rem;border-bottom:1px solid #edf2f1;color:inherit;text-decoration:none}.public-search-groups section>a>span,.public-link-list>a>span{color:#0d9488;font-size:.48rem;font-weight:800;text-transform:uppercase}.public-search-groups strong,.public-link-list strong{font-size:.61rem}.public-search-groups p{margin-top:.12rem;color:#64748b;font-size:.53rem}.public-mentor-directory{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.public-mentor-profile-card{display:flex;gap:1rem;padding:1.1rem;border:1px solid #dbe5e4;border-radius:13px;background:#fff}.public-mentor-profile-card h2{margin:.3rem 0;font-size:.85rem}.public-mentor-profile-card p,.public-mentor-profile-card small{display:block;color:#64748b;font-size:.55rem}.public-mentor-profile-card .btn{margin-top:.8rem}.public-mentor-hero{display:flex;align-items:center;gap:1rem}.public-mentor-hero a{display:block;margin-bottom:.4rem;color:#0f766e;font-size:.55rem;text-decoration:none}.public-story-copy>p:first-child{font-size:.85rem}.public-values{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:1.2rem 0}.public-values div{padding:.8rem;border-radius:9px;background:#f0fdfa}.public-values strong,.public-values span{display:block}.public-values strong{font-size:.65rem}.public-values span{margin-top:.25rem;color:#64748b;font-size:.54rem}
.public-article header,.public-policy header{padding:3.5rem 0;border-bottom:1px solid #dbe5e4;background:#f5fbfa}.public-article h1,.public-policy h1{margin:.5rem 0;font:800 clamp(2rem,4vw,3.2rem) "Plus Jakarta Sans";letter-spacing:-.045em}.public-article header p{color:#475569;font-size:.78rem;line-height:1.65}.public-article header>div>div,.public-policy header>div>div{display:flex;gap:1rem;margin-top:1rem;color:#64748b;font-size:.52rem}.public-article-body,.public-policy-body{padding-block:2.5rem}.public-article-body>p,.public-policy-body>p{margin-bottom:1.1rem;color:#334155;font-size:.72rem;line-height:1.8}.public-article-body aside{margin:2rem 0;padding:1.2rem;border-radius:12px;background:#f0fdfa}.public-article-body section{margin-top:2rem}.public-policy-body h2{margin:1.4rem 0 .6rem}.public-policy-body a{color:#0f766e}.public-contact-layout{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start;gap:1rem}.public-contact-layout>aside{display:grid;gap:.7rem}.public-contact-layout>aside article{padding:1rem;border:1px solid #dbe5e4;border-radius:11px;background:#fff}.public-contact-layout>aside h2{margin:.4rem 0;font-size:.68rem}.public-contact-layout>aside p{color:#64748b;font-size:.55rem}.public-contact-form{padding:1.2rem;border:1px solid #dbe5e4;border-radius:13px;background:#fff}.public-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.public-form-grid .full{grid-column:1/-1}.public-consent{display:flex!important;align-items:flex-start!important;grid-template-columns:auto 1fr!important}.public-consent input{width:auto!important;margin-top:.15rem}.public-consent span{font-weight:500}.public-consent a{color:#0f766e}.public-honeypot{position:absolute!important;left:-9999px}.public-form-notice{margin-bottom:.8rem;padding:.7rem;border:1px solid #a7f3d0;border-radius:8px;background:#ecfdf5;color:#065f46;font-size:.6rem}.public-form-notice.error{border-color:#fecaca;background:#fef2f2;color:#991b1b}.public-auth-page{display:grid;grid-template-columns:1fr 430px;align-items:center;gap:4rem;width:min(1000px,calc(100% - 2rem));min-height:650px;margin:auto;padding:3rem 0}.public-auth-copy h1{margin:.5rem 0;font:800 2.6rem "Plus Jakarta Sans";letter-spacing:-.045em}.public-auth-copy p,.public-auth-copy li{color:#64748b;font-size:.72rem;line-height:1.65}.public-auth-copy ul{margin:1rem 0;padding-left:1.2rem}.public-auth-card{display:grid;gap:.75rem;padding:1.4rem;border:1px solid #dbe5e4;border-radius:14px;background:#fff;box-shadow:0 18px 50px rgba(15,118,110,.1)}.public-auth-card h2{margin:.25rem 0;font-size:1.2rem}.public-auth-card small{color:#64748b;font-size:.52rem}.public-auth-card>a{color:#0f766e;font-size:.56rem;font-weight:700}.public-auth-links{display:flex;justify-content:space-between}.public-auth-links a{color:#0f766e;font-size:.54rem;text-decoration:none}.public-info-note{padding:.8rem;border:1px solid #99d8d2!important;border-radius:9px;background:#f0fdfa!important}.public-info-note strong{font-size:.6rem}.public-system-page{display:grid;place-items:center;min-height:600px;padding:2rem;text-align:center}.public-system-page>div{max-width:620px}.public-system-page>div>span{color:#0d9488;font:800 4rem "Plus Jakarta Sans"}.public-system-page h1{font-size:1.6rem}.public-system-page p{margin:.6rem 0 1.2rem;color:#64748b;font-size:.7rem}.public-system-page>div>div{display:flex;justify-content:center;align-items:center;gap:.6rem}.public-system-page a:not(.btn){color:#0f766e;font-size:.6rem}.public-empty{grid-column:1/-1;padding:2.5rem;border:1px dashed #cfdcda;border-radius:12px;background:#fff;text-align:center}.public-empty h2,.public-empty h3{font-size:.8rem}.public-empty p{margin:.3rem 0 1rem;color:#64748b;font-size:.6rem}
.public-test-info,.public-result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin-bottom:1rem}.public-test-info div,.public-result-grid article{padding:1rem;border:1px solid #dbe5e4;border-radius:10px;background:#fff;text-align:center}.public-test-info strong,.public-test-info span,.public-result-grid span,.public-result-grid strong,.public-result-grid small{display:block}.public-test-info strong,.public-result-grid strong{font-size:.8rem}.public-test-info span,.public-result-grid span,.public-result-grid small{margin-top:.2rem;color:#64748b;font-size:.5rem}.public-test-shell{width:min(1100px,calc(100% - 2rem));margin:auto;padding:2rem 0}.public-test-shell>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.public-test-shell>header a{color:#0f766e;font-size:.55rem;text-decoration:none}.public-test-shell h1{margin:.25rem 0;font-size:1.3rem}.public-test-shell>header p{color:#64748b;font-size:.55rem}.public-test-timer{padding:.55rem .7rem;border:1px solid #99d8d2;border-radius:8px;background:#f0fdfa;color:#0f766e;font:800 .85rem ui-monospace,monospace}.public-test-timer.warning{border-color:#fde68a;background:#fffbeb;color:#92400e}.public-test-shell form{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:start;gap:.8rem}.public-test-shell form>aside{position:sticky;top:90px;padding:1rem;border:1px solid #dbe5e4;border-radius:11px;background:#fff}.public-test-shell form>aside>strong{font-size:.65rem}.public-test-shell form>aside>div{display:grid;grid-template-columns:repeat(5,1fr);gap:.3rem;margin:.7rem 0}.public-test-shell form>aside>div button{aspect-ratio:1;border:1px solid #dbe5e4;border-radius:6px;background:#f8fafc;color:#475569;font-size:.52rem}.public-test-shell form>aside>div button.answered{border-color:#99d8d2;background:#f0fdfa;color:#0f766e}.public-test-shell form>aside>div button.review{border-color:#fde68a;background:#fffbeb;color:#92400e}.public-test-shell form>aside>p{display:flex;gap:.3rem;color:#64748b;font-size:.47rem}.public-test-shell form>aside>.btn{width:100%;margin-top:.7rem}.public-test-shell main{display:grid;gap:.8rem}.public-test-shell main>article{padding:1.1rem;border:1px solid #dbe5e4;border-radius:12px;background:#fff}.public-test-shell main>article>span{color:#0d9488;font-size:.5rem;font-weight:800}.public-test-shell main h2{margin:.5rem 0 1rem;font-size:.78rem}.public-test-shell main>article>div{display:grid;gap:.45rem}.public-test-shell main>article>div label input{position:absolute;opacity:0}.public-test-shell main>article>div label span{display:flex;align-items:center;gap:.6rem;padding:.65rem;border:1px solid #dbe5e4;border-radius:8px;font-size:.58rem;cursor:pointer}.public-test-shell main>article>div label b{display:grid;place-items:center;width:25px;height:25px;border-radius:6px;background:#f1f5f9}.public-test-shell main>article>div label input:checked+span{border-color:#5eead4;background:#f0fdfa;color:#0f766e}.public-test-shell main>article footer{display:flex;justify-content:space-between;margin-top:.8rem;padding-top:.7rem;border-top:1px solid #edf2f1}.public-test-shell main>article footer button{border:0;background:transparent;color:#64748b;font-size:.5rem}.public-test-shell main>article footer label{font-size:.5rem}.public-test-submit{justify-self:end}.public-answer-review details{border-bottom:1px solid #edf2f1}.public-answer-review summary{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:.5rem;padding:.7rem 0;cursor:pointer}.public-answer-review summary>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fee2e2;color:#b91c1c}.public-answer-review summary>span.correct{background:#dcfce7;color:#166534}.public-answer-review summary strong{font-size:.6rem}.public-answer-review summary small{color:#64748b;font-size:.5rem}.public-answer-review details>div{padding:0 0 .8rem 36px}.public-verify-form{display:flex;gap:.5rem;margin-top:1.2rem}.public-verify-form input{flex:1}.public-verification-result{overflow:hidden;border:1px solid;border-radius:14px}.public-verification-result header{display:flex;align-items:center;gap:.7rem;padding:1rem}.public-verification-result header>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:1.1rem;font-weight:900}.public-verification-result header strong{font-size:.75rem}.public-verification-result header p{margin-top:.1rem;font-size:.55rem}.public-verification-result.valid{border-color:#86efac;background:#f0fdf4}.public-verification-result.valid header>span{background:#dcfce7;color:#166534}.public-verification-result.invalid{border-color:#fecaca;background:#fef2f2}.public-verification-result.invalid header>span{background:#fee2e2;color:#991b1b}.public-verification-result.warning{border-color:#fde68a;background:#fffbeb}.public-verification-result dl{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;padding:1rem;background:#fff}.public-verification-result dt{color:#94a3b8;font-size:.48rem}.public-verification-result dd{margin:.15rem 0 0;font-size:.6rem;font-weight:700}.public-privacy-note{margin-top:.8rem;color:#64748b;font-size:.52rem}
.public-help-float,.public-scroll-top{position:fixed;z-index:850;right:18px;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:#0f766e;color:#fff;box-shadow:0 10px 25px rgba(15,118,110,.28);font-weight:850;text-decoration:none;cursor:pointer}.public-help-float{bottom:70px}.public-scroll-top{bottom:18px}.public-footer{padding:3rem 0 1rem;border-top:1px solid #dbe5e4;background:#f8fafc}.public-footer-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:2rem;width:min(1180px,calc(100% - 2.5rem));margin:auto}.footer-brand{margin-bottom:.8rem}.public-footer section>p{max-width:280px;color:#64748b;font-size:.56rem;line-height:1.55}.public-footer section>small{color:#0f766e;font-size:.5rem}.public-footer h2{margin-bottom:.6rem;font-size:.63rem}.public-footer section>a:not(.public-brand){display:block;padding:.2rem 0;color:#64748b;font-size:.52rem;text-decoration:none}.public-footer section>a:hover{color:#0f766e}.public-footer-bottom{display:flex;justify-content:space-between;gap:1rem;width:min(1180px,calc(100% - 2.5rem));margin:2rem auto 0;padding-top:1rem;border-top:1px solid #dbe5e4;color:#94a3b8;font-size:.48rem}
@media(max-width:1100px){.public-nav{position:fixed;inset:72px 0 auto;display:none;grid-template-columns:repeat(2,1fr);padding:1rem;border-bottom:1px solid #dbe5e4;background:#fff;box-shadow:0 15px 30px rgba(15,23,42,.12)}.public-nav.open{display:grid}.public-nav a{padding:.75rem}.public-menu-toggle{display:grid}.public-hero-grid{gap:2rem}.public-card-grid{grid-template-columns:repeat(2,1fr)}.public-batch-grid{grid-template-columns:repeat(2,1fr)}.public-footer-grid{grid-template-columns:1.5fr repeat(2,1fr)}}
@media(max-width:760px){.public-container{width:min(100% - 2rem,1180px)}.public-announcement span{display:none}.public-header-inner{height:62px}.public-nav{inset:62px 0 auto}.public-brand strong{font-size:.68rem}.public-brand small{max-width:150px;overflow:hidden;text-overflow:ellipsis}.public-actions .btn,.public-login-link{display:none}.public-hero{padding:2.8rem 0}.public-hero-grid{grid-template-columns:1fr}.public-hero h1{font-size:2.35rem}.public-hero-visual{max-width:520px}.public-section{padding:2.8rem 0}.public-section-heading{align-items:flex-start;flex-direction:column}.public-card-grid,.public-batch-grid,.public-mentor-grid,.public-mentor-directory{grid-template-columns:1fr}.public-process{grid-template-columns:1fr;gap:.7rem}.public-process li{grid-template-columns:45px 1fr;text-align:left;justify-items:start}.public-process li:not(:last-child)::after{display:none}.public-process span{grid-column:2}.public-benefit-grid,.public-stats{grid-template-columns:1fr 1fr}.public-faq-list{grid-template-columns:1fr}.public-verify-cta>.public-container,.public-inquiry-cta{align-items:flex-start;flex-direction:column}.public-final-cta>div>div{align-items:stretch;flex-direction:column}.public-catalog>.public-container{grid-template-columns:1fr}.public-catalog-filters{position:static;display:none}.public-catalog-filters.open{display:grid}.public-catalog-summary button{display:block;border:0;background:transparent;color:#0f766e;font-weight:800}.public-inline-filters{grid-template-columns:1fr 1fr}.public-inline-filters .btn{grid-column:1/-1}.public-program-hero-grid,.public-program-layout{grid-template-columns:1fr}.public-program-hero aside{display:none}.public-facts{grid-template-columns:1fr 1fr}.public-two-copy{grid-template-columns:1fr}.public-sticky-enroll{display:none}.public-mobile-apply{position:fixed;z-index:850;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));border-top:1px solid #dbe5e4;background:#fff;box-shadow:0 -10px 30px rgba(15,23,42,.12)}.public-mobile-apply span,.public-mobile-apply strong{display:block}.public-mobile-apply span{color:#94a3b8;font-size:.45rem}.public-mobile-apply strong{font-size:.75rem}.public-batch-selector article{align-items:flex-start;flex-direction:column}.public-search-page,.public-verify-form{align-items:stretch;flex-direction:column}.public-search-groups section>a,.public-link-list>a{grid-template-columns:70px 1fr auto}.public-values{grid-template-columns:1fr}.public-contact-layout{grid-template-columns:1fr}.public-form-grid{grid-template-columns:1fr}.public-form-grid .full{grid-column:1}.public-auth-page{grid-template-columns:1fr;gap:1.5rem;min-height:auto;padding:2rem 0}.public-auth-copy h1{font-size:2rem}.public-test-info,.public-result-grid{grid-template-columns:1fr 1fr}.public-test-shell form{grid-template-columns:1fr}.public-test-shell form>aside{position:static}.public-test-submit{width:100%}.public-verification-result dl{grid-template-columns:1fr}.public-footer{padding-bottom:5rem}.public-footer-grid{grid-template-columns:1fr 1fr;gap:1.3rem}.public-footer-grid section:first-child{grid-column:1/-1}.public-footer-bottom{align-items:flex-start;flex-direction:column}.public-help-float{bottom:78px}.public-scroll-top{display:none!important}}
@media(max-width:430px){.public-benefit-grid,.public-stats,.public-inline-filters,.public-test-info,.public-result-grid{grid-template-columns:1fr}.public-card-body dl{grid-template-columns:1fr 1fr}.public-footer-grid{grid-template-columns:1fr}.public-footer-grid section:first-child{grid-column:1}.public-brand small{max-width:110px}}
@media print{.public-header,.public-announcement,.public-footer,.public-help-float,.public-scroll-top,.public-policy-body .btn{display:none!important}.public-policy header{padding:1rem 0}.public-policy-body{padding:1rem 0}}

/* ==========================================================================
   PUBLIC WEBSITE V2 — PROFESSIONAL MULTI-COLOUR SYSTEM
   Larger readable typography, richer hierarchy, and balanced brand accents.
   ========================================================================== */
.public-body {
    --public-ink: #172033;
    --public-copy: #465168;
    --public-muted: #68758c;
    --public-blue: #2563eb;
    --public-blue-dark: #1d4ed8;
    --public-violet: #7c3aed;
    --public-coral: #f97316;
    --public-pink: #db2777;
    --public-cyan: #0891b2;
    --public-teal: #0f766e;
    --public-amber: #f59e0b;
    --public-border: #dfe5ef;
    --public-canvas: #f7f9fd;
    background: var(--public-canvas);
    color: var(--public-ink);
    font-size: 16px;
    line-height: 1.6;
}
.public-body * { box-sizing: border-box; }
.public-body main { overflow: clip; }
.public-container { width: min(1240px, calc(100% - 3rem)); }
.public-readable { max-width: 880px; }
.public-body h1,.public-body h2,.public-body h3 { color: var(--public-ink); }
.public-body p { color: var(--public-copy); }
.public-body .btn {
    min-height: 44px;
    padding: .72rem 1.15rem;
    border-radius: 11px;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.2;
}
.public-body .btn-primary {
    border-color: transparent;
    background: linear-gradient(135deg, var(--public-blue), var(--public-violet));
    color: #fff;
    box-shadow: 0 10px 24px rgba(37,99,235,.2);
}
.public-body .btn-primary:hover { background: linear-gradient(135deg, var(--public-blue-dark), #6d28d9); transform: translateY(-1px); }
.public-body .btn-outline { border-color: #cbd5e1; background: #fff; color: var(--public-ink); }
.public-body .btn-outline:hover { border-color: var(--public-blue); color: var(--public-blue); }
.public-body a:focus-visible,.public-body button:focus-visible,.public-body input:focus-visible,.public-body select:focus-visible,.public-body textarea:focus-visible {
    outline: 3px solid rgba(37,99,235,.32);
    outline-offset: 3px;
}

.public-announcement {
    min-height: 44px;
    background: linear-gradient(90deg,#18234a,#312e81 48%,#701a75);
    color: #fff;
    font-size: .86rem;
}
.public-announcement span { color: #e0e7ff; }
.public-announcement a { color: #fde68a; }
.public-header {
    border-bottom-color: rgba(203,213,225,.8);
    background: rgba(255,255,255,.94);
    box-shadow: 0 8px 30px rgba(30,41,59,.06);
}
.public-header-inner { width: min(1440px,calc(100% - 2rem)); height: 92px; }
.public-brand { gap: .72rem; }
.public-brand>span:first-child {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    background: linear-gradient(145deg,var(--public-blue),var(--public-violet) 62%,var(--public-pink));
    box-shadow: 0 9px 22px rgba(99,102,241,.23);
    font-size: 1.15rem;
}
.public-brand strong { font-size: .98rem; letter-spacing: -.02em; }
.public-brand small { margin-top: .05rem; color: var(--public-muted); font-size: .67rem; }
.public-brand-final { flex: 0 0 auto; gap: .7rem; }
.public-brand-final>img {
    display: block;
    width: 70px;
    height: 70px;
    flex: 0 0 70px;
    object-fit: contain;
    border-radius: 50%;
    background: #fff;
}
.public-powered-lockup {
    display: grid;
    gap: .16rem;
    padding-left: .72rem;
    border-left: 1px solid #d7deea;
}
.public-powered-lockup>small {
    color: #64748b;
    font-size: .62rem;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1;
    text-transform: uppercase;
}
.public-powered-lockup>strong {
    display: flex;
    align-items: center;
    gap: .34rem;
    color: #0b2554;
    font: 800 .68rem/1.25 "Plus Jakarta Sans",sans-serif;
    letter-spacing: .02em;
    white-space: nowrap;
}
.public-powered-lockup b { font: inherit; }
.public-powered-lockup b:last-child { color: #0f8f89; }
.public-powered-lockup i { color: #94a3b8; font-style: normal; }
.public-collab-badge {
    display: none;
    align-items: center;
    gap: .25rem;
    padding: .38rem .62rem;
    border: 1px solid #ddd6fe;
    border-radius: 999px;
    background: #f5f3ff;
    color: #6b7280;
    font-size: .7rem;
    white-space: nowrap;
}
.public-collab-badge strong { color: var(--public-violet); }
.public-nav { gap: .08rem; }
.public-nav a { padding: .58rem .42rem; color: #475569; font-size: .78rem; }
.public-nav a:hover,.public-nav a.active { background: #eef2ff; color: var(--public-blue); }
.public-nav a.active { box-shadow: inset 0 -2px var(--public-violet); }
.public-login-link { color: var(--public-blue); font-size: .86rem; }
.public-actions .btn { padding-inline: .9rem; font-size: .82rem; }
.public-search-toggle,.public-menu-toggle { width: 42px; height: 42px; border-radius: 11px; font-size: 1.15rem; }
.public-search-panel { width: min(900px,calc(100% - 2rem)); padding: .9rem; }
.public-search-panel input { min-height: 46px; padding: .75rem 1rem; font-size: 1rem; }
.public-flash { padding: .9rem 1.1rem; font-size: .95rem; }

.public-kicker {
    color: var(--public-violet);
    font-size: .78rem;
    letter-spacing: .13em;
}
.public-hero {
    padding: 5.5rem 0 5rem;
    background:
        radial-gradient(circle at 5% 5%,rgba(249,115,22,.13),transparent 27%),
        radial-gradient(circle at 93% 18%,rgba(124,58,237,.17),transparent 30%),
        radial-gradient(circle at 70% 88%,rgba(8,145,178,.12),transparent 28%),
        linear-gradient(145deg,#fff7ed 0%,#f8faff 46%,#f5f3ff 100%);
}
.public-hero-grid { gap: 4.5rem; }
.public-hero h1 { margin: .8rem 0 1.25rem; font-size: clamp(2.9rem,5vw,4.85rem); line-height: 1.04; }
.public-hero h1::selection { background: #fde68a; }
.public-hero p { max-width: 720px; color: #465168; font-size: 1.12rem; line-height: 1.75; }
.public-powered-line {
    display: inline-flex!important;
    align-items: center;
    gap: .45rem;
    margin-top: 1.15rem!important;
    padding: .5rem .75rem;
    border: 1px solid #d8dff1;
    border-radius: 999px;
    background: rgba(255,255,255,.8);
    color: #64748b!important;
    font-size: .8rem!important;
}
.public-powered-line strong:first-of-type { color: var(--public-blue); }
.public-powered-line strong:last-of-type { color: var(--public-violet); }
.public-powered-line i { width: 1px; height: 14px; background: #cbd5e1; }
.public-collaboration-note {
    margin: .65rem 0 0!important;
    color: #5b6477!important;
    font-size: .84rem!important;
    line-height: 1.5!important;
}
.public-collaboration-note strong { color: var(--public-violet); }
.public-collaboration-note span { padding-inline: .25rem; color: #cbd5e1; }
.public-text-link { color: var(--public-violet); font-size: .93rem; }
.public-trust-row { gap: .7rem; }
.public-trust-row span {
    padding: .38rem .65rem;
    border: 1px solid #dce3f0;
    border-radius: 999px;
    background: rgba(255,255,255,.75);
    color: #3e4a61;
    font-size: .82rem;
}
.public-hero-visual img {
    border-color: rgba(255,255,255,.92);
    box-shadow: 0 32px 80px rgba(67,56,202,.19);
}
.public-hero-visual::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: -22px 18px 28px -18px;
    border-radius: 36px;
    background: linear-gradient(135deg,#fbbf24,#f97316 32%,#8b5cf6 68%,#22d3ee);
    opacity: .32;
    transform: rotate(3deg);
}
.public-hero-visual>div { border-color: #ddd6fe; box-shadow: 0 16px 38px rgba(76,29,149,.16); }
.public-hero-visual strong { font-size: 1rem; }
.public-hero-visual span { font-size: .78rem; }

.public-section { padding: 5rem 0; }
.public-tint {
    border-color: #e3e8f2;
    background:
        radial-gradient(circle at 0 100%,rgba(14,165,233,.09),transparent 25%),
        linear-gradient(135deg,#f8fbff,#f7f4ff);
}
.public-dark {
    background:
        radial-gradient(circle at 15% 20%,rgba(37,99,235,.28),transparent 28%),
        radial-gradient(circle at 88% 80%,rgba(219,39,119,.2),transparent 30%),
        linear-gradient(135deg,#111936,#27245c);
}
.public-section-heading { margin-bottom: 2.4rem; }
.public-section-heading h2 { font-size: clamp(2rem,3vw,2.8rem); line-height: 1.15; }
.public-section-heading p { max-width: 720px; color: var(--public-copy); font-size: 1rem; }
.public-section-heading>a { color: var(--public-blue); font-size: .92rem; }
.public-card-grid { gap: 1.35rem; }
.public-program-card,.public-resource-card,.public-story-card,.public-mentor-card,.public-mentor-profile-card,.public-batch-card,.public-content-card {
    border-color: var(--public-border);
    border-radius: 18px;
    box-shadow: 0 8px 28px rgba(30,41,59,.07);
}
.public-program-card:hover { box-shadow: 0 22px 48px rgba(67,56,202,.16); }
.public-card-media { min-height: 92px; padding: 1.25rem; background: linear-gradient(135deg,#2563eb,#4f46e5); }
.public-card-grid>.public-program-card:nth-child(3n+2) .public-card-media { background: linear-gradient(135deg,#7c3aed,#db2777); }
.public-card-grid>.public-program-card:nth-child(3n+3) .public-card-media { background: linear-gradient(135deg,#ea580c,#f59e0b); }
.public-card-media span,.public-card-media b { font-size: .77rem; }
.public-card-body { padding: 1.3rem; }
.public-card-body>small { color: var(--public-violet); font-size: .78rem; }
.public-card-body h3 { margin: .65rem 0; font-size: 1.18rem; line-height: 1.4; }
.public-card-body p { color: var(--public-copy); font-size: .94rem; line-height: 1.65; }
.public-card-body dl { gap: .6rem; }
.public-card-body dl div { padding: .7rem; background: #f5f7fb; }
.public-card-body dt { color: var(--public-muted); font-size: .7rem; }
.public-card-body dd { font-size: .82rem; }
.public-program-card footer { padding: 1.1rem 1.3rem; }
.public-program-card footer span,.public-program-card footer small { font-size: .7rem; }
.public-program-card footer strong { font-size: 1.05rem; }
.public-program-card footer .btn { font-size: .82rem; }

.public-batch-grid { gap: 1rem; }
.public-batch-card { padding: 1.25rem; border-top: 4px solid var(--public-blue); }
.public-batch-card:nth-child(4n+2) { border-top-color: var(--public-violet); }
.public-batch-card:nth-child(4n+3) { border-top-color: var(--public-coral); }
.public-batch-card:nth-child(4n+4) { border-top-color: var(--public-cyan); }
.public-batch-card>span { color: var(--public-violet); font-size: .74rem; }
.public-batch-card h2,.public-batch-card h3 { font-size: 1.05rem; }
.public-batch-card p { color: var(--public-copy); font-size: .88rem; }
.public-batch-card dt { font-size: .7rem; }
.public-batch-card dd { font-size: .82rem; }

.public-process { gap: .7rem; }
.public-process li { padding: 0 .7rem; }
.public-process b {
    width: 54px;
    height: 54px;
    border: 0;
    background: linear-gradient(135deg,var(--public-blue),var(--public-violet));
    color: #fff;
    box-shadow: 0 8px 22px rgba(79,70,229,.22);
}
.public-process li:nth-child(2) b { background: linear-gradient(135deg,#7c3aed,#db2777); }
.public-process li:nth-child(3) b { background: linear-gradient(135deg,#ea580c,#f59e0b); }
.public-process li:nth-child(4) b { background: linear-gradient(135deg,#0891b2,#2563eb); }
.public-process li:nth-child(5) b { background: linear-gradient(135deg,#059669,#0f766e); }
.public-process li:not(:last-child)::after { top: 27px; background: linear-gradient(90deg,#c7d2fe,#fbcfe8); }
.public-process strong { font-size: .98rem; }
.public-process span { color: var(--public-muted); font-size: .82rem; line-height: 1.45; }
.public-benefit-grid { gap: .85rem; }
.public-benefit-grid div { padding: 1rem; border-color: rgba(255,255,255,.17); background: rgba(255,255,255,.08); font-size: .9rem; }
.public-benefit-grid div:nth-child(4n+1) span { color: #67e8f9; }
.public-benefit-grid div:nth-child(4n+2) span { color: #c4b5fd; }
.public-benefit-grid div:nth-child(4n+3) span { color: #f9a8d4; }
.public-benefit-grid div:nth-child(4n+4) span { color: #fcd34d; }

.public-mentor-card { padding: 1.25rem; }
.public-avatar { flex-basis: 52px; height: 52px; background: linear-gradient(145deg,var(--public-blue),var(--public-violet)); }
.public-mentor-card:nth-child(even) .public-avatar { background: linear-gradient(145deg,var(--public-coral),var(--public-pink)); }
.public-mentor-card h3 { font-size: 1.05rem; }
.public-mentor-card p { font-size: .9rem; }
.public-mentor-card small { font-size: .8rem; }
.public-mentor-card a { color: var(--public-blue); font-size: .84rem; }
.public-stats div { padding: 1.6rem; border-color: #dce3f0; border-radius: 16px; box-shadow: 0 8px 25px rgba(30,41,59,.05); }
.public-stats div:nth-child(1) strong { color: var(--public-blue); }
.public-stats div:nth-child(2) strong { color: var(--public-violet); }
.public-stats div:nth-child(3) strong { color: var(--public-coral); }
.public-stats div:nth-child(4) strong { color: var(--public-cyan); }
.public-stats strong { font-size: 2.1rem; }
.public-stats span { font-size: .86rem; }
.public-story-card,.public-resource-card { padding: 1.3rem; }
.public-story-card p,.public-story-card blockquote { font-size: 1rem; }
.public-story-card strong { font-size: .92rem; }
.public-story-card span { color: var(--public-violet); font-size: .76rem; }
.public-resource-card { border-top: 4px solid var(--public-violet); }
.public-resource-card:nth-child(3n+2) { border-top-color: var(--public-coral); }
.public-resource-card:nth-child(3n+3) { border-top-color: var(--public-cyan); }
.public-resource-card>span { color: var(--public-violet); font-size: .76rem; }
.public-resource-card h2,.public-resource-card h3 { font-size: 1.08rem; }
.public-resource-card p { font-size: .92rem; }
.public-resource-card small { font-size: .76rem; }
.public-resource-card a { color: var(--public-blue); font-size: .86rem; }

.public-verify-cta>.public-container,.public-final-cta>.public-container,.public-inquiry-cta {
    padding: 2.4rem;
    border: 1px solid #fed7aa;
    background:
        radial-gradient(circle at 95% 0,rgba(124,58,237,.15),transparent 32%),
        linear-gradient(135deg,#fff7ed,#fefce8 55%,#f5f3ff);
}
.public-verify-cta h2,.public-final-cta h2,.public-inquiry-cta h2 { font-size: 1.8rem; }
.public-verify-cta p,.public-final-cta p,.public-inquiry-cta p { font-size: .98rem; }
.public-final-cta>.public-container {
    border: 0;
    background:
        radial-gradient(circle at 10% 30%,rgba(249,115,22,.28),transparent 27%),
        radial-gradient(circle at 90% 70%,rgba(219,39,119,.22),transparent 30%),
        linear-gradient(135deg,#172554,#312e81 52%,#581c87);
}
.public-final-cta h2 { color: #fff; }
.public-faq-list { gap: .8rem; }
.public-faq-list details { padding: 1rem 1.15rem; border-color: var(--public-border); border-radius: 13px; box-shadow: 0 5px 18px rgba(30,41,59,.04); }
.public-faq-list summary { font-size: .94rem; }
.public-faq-list p { font-size: .9rem; line-height: 1.7; }

.public-page-hero,.public-program-hero,.public-article header,.public-policy header {
    border-bottom-color: #dfe5ef;
    background:
        radial-gradient(circle at 10% 20%,rgba(249,115,22,.11),transparent 26%),
        radial-gradient(circle at 92% 30%,rgba(124,58,237,.14),transparent 30%),
        linear-gradient(135deg,#fff,#f5f7ff);
}
.public-page-hero { padding: 4.2rem 0; }
.public-page-hero h1,.public-program-hero h1,.public-article h1,.public-policy h1 { font-size: clamp(2.55rem,4.5vw,4rem); line-height: 1.08; }
.public-page-hero p,.public-program-hero p,.public-article header p { color: var(--public-copy); font-size: 1.08rem; }
.public-page-hero strong { color: var(--public-blue); font-size: .92rem; }
.public-breadcrumb { font-size: .82rem; }
.public-breadcrumb a { color: var(--public-blue); }

.public-catalog>.public-container { grid-template-columns: 270px minmax(0,1fr); gap: 1.4rem; }
.public-catalog-filters,.public-inline-filters,.public-contact-form,.public-auth-card {
    border-color: var(--public-border);
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(30,41,59,.06);
}
.public-catalog-filters { padding: 1.25rem; }
.public-catalog-filters label,.public-inline-filters label,.public-contact-form label,.public-auth-card label { font-size: .86rem; }
.public-catalog-filters input,.public-catalog-filters select,.public-inline-filters input,.public-inline-filters select,.public-contact-form input,.public-contact-form select,.public-contact-form textarea,.public-auth-card input,.public-verify-form input,.public-search-page input {
    min-height: 46px;
    padding: .72rem .8rem;
    border-color: #cbd5e1;
    border-radius: 10px;
    font-size: 1rem;
}
.public-catalog-filters>a,.public-catalog-summary { font-size: .84rem; }
.public-inline-filters { padding: 1rem; }
.public-pagination a { width: 42px; height: 42px; border-radius: 10px; font-size: .9rem; }
.public-pagination a.active { background: linear-gradient(135deg,var(--public-blue),var(--public-violet)); }

.public-program-hero { padding: 3.2rem 0 3.7rem; }
.public-program-hero-grid { grid-template-columns: minmax(0,1fr) 340px; gap: 3.5rem; }
.public-program-hero aside {
    padding: 1.5rem;
    border-color: #c7d2fe;
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(79,70,229,.14);
}
.public-program-hero aside span { font-size: .8rem; }
.public-program-hero aside strong { color: var(--public-blue); font-size: 2rem; }
.public-program-hero aside small { color: var(--public-violet); font-size: .78rem; }
.public-program-hero aside b { font-size: .98rem; }
.public-program-hero aside p { padding: .75rem; background: #eef2ff; color: #4338ca; font-size: .82rem; }
.public-program-layout { grid-template-columns: minmax(0,1fr) 320px; gap: 1.35rem; }
.public-program-layout>article { gap: 1.35rem; }
.public-content-card { padding: 1.6rem; }
.public-content-card h2 { font-size: 1.4rem; }
.public-content-card p,.public-content-card li { color: var(--public-copy); font-size: .98rem; }
.public-facts div { padding: .85rem; background: #f5f7fb; }
.public-facts span { font-size: .72rem; }
.public-facts strong { font-size: .88rem; }
.public-chip-list span { padding: .4rem .7rem; border-color: #ddd6fe; background: #f5f3ff; color: #6d28d9; font-size: .78rem; }
.public-curriculum details { border-color: var(--public-border); }
.public-curriculum summary { padding: .9rem; }
.public-curriculum summary span { color: var(--public-violet); font-size: .8rem; }
.public-curriculum summary strong { font-size: .92rem; }
.public-curriculum details small { font-size: .78rem; }
.public-batch-selector article { padding: 1rem; }
.public-batch-selector h3 { font-size: 1rem; }
.public-batch-selector p,.public-batch-selector small { font-size: .82rem; }
.public-status { padding: .28rem .55rem; font-size: .72rem; }
.public-sticky-enroll { padding: 1.3rem; border-color: #c7d2fe; border-radius: 16px; box-shadow: 0 12px 32px rgba(79,70,229,.1); }
.public-sticky-enroll>span { color: var(--public-violet); font-size: .76rem; }
.public-sticky-enroll h2 { font-size: 1.08rem; }
.public-sticky-enroll>strong { color: var(--public-blue); font-size: 1.75rem; }
.public-sticky-enroll>small,.public-sticky-enroll>p,.public-sticky-enroll>a:not(.btn) { font-size: .78rem; }

.public-search-groups { gap: 1.35rem; }
.public-search-groups section,.public-link-list { border-color: var(--public-border); border-radius: 16px; box-shadow: 0 8px 26px rgba(30,41,59,.05); }
.public-search-groups h2 { padding: 1rem 1.2rem; font-size: 1.1rem; }
.public-search-groups section>a,.public-link-list>a { padding: 1rem 1.2rem; }
.public-search-groups section>a>span,.public-link-list>a>span { color: var(--public-violet); font-size: .74rem; }
.public-search-groups strong,.public-link-list strong { font-size: .94rem; }
.public-search-groups p { font-size: .84rem; }
.public-mentor-directory { gap: 1.2rem; }
.public-mentor-profile-card { padding: 1.35rem; }
.public-mentor-profile-card h2 { font-size: 1.2rem; }
.public-mentor-profile-card p,.public-mentor-profile-card small { font-size: .88rem; }
.public-mentor-hero a { color: var(--public-blue); font-size: .86rem; }
.public-story-copy>p:first-child { font-size: 1.08rem; }
.public-values { gap: 1rem; }
.public-values div { padding: 1rem; background: #f5f3ff; }
.public-values div:nth-child(2) { background: #fff7ed; }
.public-values div:nth-child(3) { background: #eff6ff; }
.public-values div:nth-child(4) { background: #ecfeff; }
.public-values strong { font-size: 1rem; }
.public-values span { font-size: .88rem; }

.public-article header>div>div,.public-policy header>div>div { font-size: .82rem; }
.public-article-body,.public-policy-body { padding-block: 3.2rem; }
.public-article-body>p,.public-policy-body>p { font-size: 1.05rem; line-height: 1.9; }
.public-article-body aside { background: linear-gradient(135deg,#eef2ff,#faf5ff); }
.public-contact-layout { grid-template-columns: 340px minmax(0,1fr); gap: 1.4rem; }
.public-contact-layout>aside { gap: 1rem; }
.public-contact-layout>aside article { padding: 1.25rem; border-color: var(--public-border); border-radius: 15px; box-shadow: 0 7px 22px rgba(30,41,59,.05); }
.public-contact-layout>aside article:nth-child(1) { border-top: 4px solid var(--public-blue); }
.public-contact-layout>aside article:nth-child(2) { border-top: 4px solid var(--public-violet); }
.public-contact-layout>aside article:nth-child(3) { border-top: 4px solid var(--public-coral); }
.public-contact-layout>aside h2 { font-size: 1rem; }
.public-contact-layout>aside p { font-size: .9rem; }
.public-contact-form { padding: 1.5rem; }
.public-form-grid { gap: 1rem; }
.public-form-notice { font-size: .9rem; }

.public-auth-page { grid-template-columns: 1fr 470px; gap: 5rem; min-height: 720px; }
.public-auth-page::before {
    content: "";
    position: fixed;
    z-index: -1;
    inset: 0;
    background: radial-gradient(circle at 10% 35%,rgba(37,99,235,.1),transparent 28%),radial-gradient(circle at 90% 65%,rgba(219,39,119,.1),transparent 30%);
}
.public-auth-copy h1 { font-size: 3.15rem; line-height: 1.08; }
.public-auth-copy p,.public-auth-copy li { font-size: 1rem; }
.public-auth-card { gap: 1rem; padding: 1.7rem; }
.public-auth-card h2 { font-size: 1.5rem; }
.public-auth-card small { font-size: .8rem; }
.public-auth-card>a,.public-auth-links a { color: var(--public-blue); font-size: .84rem; }
.public-info-note strong { font-size: .9rem; }
.public-system-page h1 { font-size: 2.2rem; }
.public-system-page p { font-size: 1rem; }
.public-system-page a:not(.btn) { color: var(--public-blue); font-size: .88rem; }
.public-empty h2,.public-empty h3 { font-size: 1.15rem; }
.public-empty p { font-size: .9rem; }

.public-test-info strong,.public-result-grid strong { font-size: 1.15rem; }
.public-test-info span,.public-result-grid span,.public-result-grid small { font-size: .8rem; }
.public-test-shell { width: min(1160px,calc(100% - 2.5rem)); padding: 2.7rem 0; }
.public-test-shell>header a { color: var(--public-blue); font-size: .84rem; }
.public-test-shell h1 { font-size: 1.8rem; }
.public-test-shell>header p { font-size: .84rem; }
.public-test-timer { font-size: 1.05rem; }
.public-test-shell form { grid-template-columns: 240px minmax(0,1fr); gap: 1.1rem; }
.public-test-shell form>aside>strong { font-size: .95rem; }
.public-test-shell form>aside>div button { font-size: .8rem; }
.public-test-shell form>aside>p { font-size: .72rem; }
.public-test-shell main>article { padding: 1.35rem; }
.public-test-shell main>article>span { color: var(--public-violet); font-size: .76rem; }
.public-test-shell main h2 { font-size: 1.08rem; }
.public-test-shell main>article>div label span { padding: .8rem; font-size: .92rem; }
.public-test-shell main>article footer button,.public-test-shell main>article footer label { font-size: .8rem; }
.public-answer-review summary strong { font-size: .92rem; }
.public-answer-review summary small { font-size: .76rem; }
.public-verification-result header { padding: 1.3rem; }
.public-verification-result header strong { font-size: 1.05rem; }
.public-verification-result header p { font-size: .84rem; }
.public-verification-result dl { gap: 1rem; padding: 1.3rem; }
.public-verification-result dt { font-size: .75rem; }
.public-verification-result dd { font-size: .92rem; }
.public-privacy-note { font-size: .82rem; }

.public-help-float,.public-scroll-top {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg,var(--public-blue),var(--public-violet));
    box-shadow: 0 12px 28px rgba(79,70,229,.28);
}
.public-footer {
    padding: 4rem 0 1.4rem;
    border-top: 0;
    background: linear-gradient(145deg,#121a33,#1e1b4b);
    color: #fff;
}
.public-footer-grid,.public-footer-bottom { width: min(1240px,calc(100% - 3rem)); }
.public-footer .public-brand strong,.public-footer h2 { color: #fff; }
.public-footer .public-brand small,.public-footer section>p { color: #cbd5e1; }
.public-footer .public-brand-final>img { width: 92px; height: 92px; flex-basis: 92px; }
.public-footer .public-powered-lockup { border-left-color: rgba(255,255,255,.2); }
.public-footer .public-powered-lockup>small { color: #94a3b8; }
.public-footer .public-powered-lockup>strong { align-items: flex-start; flex-direction: column; gap: .12rem; color: #fff; white-space: normal; }
.public-footer .public-powered-lockup i { display: none; }
.public-footer .public-powered-lockup b:last-child { color: #5eead4; }
.public-footer section>p { font-size: .9rem; line-height: 1.7; }
.public-footer section>small { color: #fcd34d; font-size: .78rem; }
.public-footer h2 { font-size: .98rem; }
.public-footer section>a:not(.public-brand) { padding: .28rem 0; color: #cbd5e1; font-size: .84rem; }
.public-footer section>a:hover { color: #fcd34d; }
.public-footer-bottom { border-top-color: rgba(255,255,255,.12); color: #94a3b8; font-size: .78rem; }

@media(max-width:1280px) {
    .public-nav {
        position: fixed;
        inset: 92px 0 auto;
        display: none;
        grid-template-columns: repeat(2,1fr);
        padding: 1rem;
        border-bottom: 1px solid var(--public-border);
        background: #fff;
        box-shadow: 0 18px 38px rgba(30,41,59,.14);
    }
    .public-nav.open { display: grid; }
    .public-nav a { padding: .85rem; font-size: .9rem; }
    .public-menu-toggle { display: grid; }
}
@media(max-width:900px) {
    .public-hero-grid { grid-template-columns: 1fr; gap: 3rem; }
    .public-hero-visual { max-width: 680px; }
    .public-batch-grid { grid-template-columns: repeat(2,1fr); }
    .public-benefit-grid { grid-template-columns: repeat(2,1fr); }
    .public-process { grid-template-columns: 1fr; gap: .9rem; }
    .public-process li { grid-template-columns: 56px 1fr; justify-items: start; text-align: left; }
    .public-process li:not(:last-child)::after { display: none; }
    .public-process span { grid-column: 2; }
    .public-program-hero-grid,.public-program-layout { grid-template-columns: 1fr; }
    .public-program-hero aside { display: block; }
    .public-sticky-enroll { position: static; }
    .public-catalog>.public-container { grid-template-columns: 1fr; }
    .public-catalog-filters { position: static; }
    .public-contact-layout { grid-template-columns: 1fr; }
    .public-auth-page { grid-template-columns: 1fr; gap: 2rem; }
}
@media(max-width:760px) {
    .public-container { width: min(100% - 2rem,1240px); }
    .public-header-inner { height: 76px; }
    .public-nav { inset: 76px 0 auto; }
    .public-brand-final { gap: .45rem; }
    .public-brand-final>img { width: 54px; height: 54px; flex-basis: 54px; }
    .public-powered-lockup { gap: .12rem; padding-left: .48rem; }
    .public-powered-lockup>small { font-size: .48rem; }
    .public-powered-lockup>strong { gap: .22rem; font-size: .5rem; }
    .public-brand>span:first-child { width: 42px; height: 42px; }
    .public-brand strong { font-size: .88rem; }
    .public-brand small { max-width: 180px; font-size: .62rem; }
    .public-collab-badge { display: none; }
    .public-hero { padding: 3.8rem 0; }
    .public-hero h1 { font-size: clamp(2.4rem,12vw,3.25rem); }
    .public-hero p { font-size: 1rem; }
    .public-powered-line { align-items: flex-start; flex-wrap: wrap; border-radius: 14px; }
    .public-section { padding: 3.7rem 0; }
    .public-section-heading h2 { font-size: 2rem; }
    .public-card-grid,.public-batch-grid,.public-mentor-grid,.public-mentor-directory { grid-template-columns: 1fr; }
    .public-stats { grid-template-columns: 1fr 1fr; }
    .public-inline-filters { grid-template-columns: 1fr; }
    .public-inline-filters .btn { grid-column: auto; }
    .public-program-hero aside { display: block; }
    .public-sticky-enroll { display: none; }
    .public-mobile-apply strong { font-size: 1rem; }
    .public-search-groups section>a,.public-link-list>a { grid-template-columns: 1fr auto; }
    .public-search-groups section>a>span,.public-link-list>a>span { grid-column: 1/-1; }
    .public-auth-copy h1 { font-size: 2.5rem; }
    .public-test-shell form { grid-template-columns: 1fr; }
    .public-footer-grid { grid-template-columns: 1fr 1fr; }
}
@media(max-width:480px) {
    .public-container { width: min(100% - 1.35rem,1240px); }
    .public-brand small { max-width: 130px; }
    .public-brand-final>img { width: 48px; height: 48px; flex-basis: 48px; }
    .public-powered-lockup>strong { display: grid; gap: 0; }
    .public-powered-lockup i { display: none; }
    .public-hero h1 { font-size: 2.25rem; }
    .public-hero-actions { align-items: stretch; flex-direction: column; }
    .public-hero-actions .btn { width: 100%; }
    .public-stats,.public-benefit-grid,.public-facts,.public-values,.public-test-info,.public-result-grid { grid-template-columns: 1fr; }
    .public-footer-grid { grid-template-columns: 1fr; }
    .public-footer-grid section:first-child { grid-column: 1; }
}

/* Homepage constant logo with independently floating learning topics */
@keyframes taxlient-topic-float {
    0%,100% { transform: translate3d(0,0,0); }
    50% { transform: translate3d(0,-10px,0); }
}
.public-logo-float-stage {
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 610px;
    isolation: isolate;
}
.public-logo-float-stage::before {
    inset: 7%;
    border-radius: 50%;
    background: radial-gradient(circle,rgba(255,255,255,.9) 0 48%,rgba(124,58,237,.1) 70%,rgba(37,99,235,.04) 100%);
    filter: blur(4px);
    transform: none;
}
.public-logo-float-stage .public-logo-constant {
    position: relative;
    z-index: 2;
    display: block;
    width: min(82%,510px);
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
    border: 0;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 30px 72px rgba(34,49,102,.17);
}
.public-floating-topics {
    position: absolute!important;
    z-index: 3;
    inset: 0!important;
    left: 0!important;
    bottom: 0!important;
    padding: 0!important;
    border: 0!important;
    background: transparent!important;
    box-shadow: none!important;
    pointer-events: none;
}
.public-floating-topics>span {
    position: absolute;
    display: inline-flex!important;
    align-items: center;
    gap: .42rem;
    padding: .52rem .78rem;
    border: 1px solid rgba(203,213,225,.86);
    border-radius: 999px;
    background: rgba(255,255,255,.94);
    color: #26334d;
    box-shadow: 0 10px 25px rgba(30,41,59,.11);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .01em;
    white-space: nowrap;
    animation: taxlient-topic-float 4.8s ease-in-out infinite;
    backdrop-filter: blur(8px);
}
.public-floating-topics>span::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--topic-color,#2563eb);
    box-shadow: 0 0 0 4px color-mix(in srgb,var(--topic-color,#2563eb) 14%,transparent);
}
.topic-learning { --topic-color:#2563eb; top: 7%; left: 5%; animation-delay: -.4s!important; }
.topic-tax { --topic-color:#0f766e; top: 16%; right: 3%; animation-delay: -2.1s!important; }
.topic-finance { --topic-color:#7c3aed; top: 43%; right: -2%; animation-delay: -1.2s!important; }
.topic-business { --topic-color:#f97316; right: 4%; bottom: 18%; animation-delay: -3.3s!important; }
.topic-growth { --topic-color:#059669; right: 33%; bottom: 3%; animation-delay: -1.8s!important; }
.topic-mentorship { --topic-color:#db2777; left: -1%; bottom: 18%; animation-delay: -2.7s!important; }
.topic-aptitude { --topic-color:#0891b2; top: 44%; left: -3%; animation-delay: -.8s!important; }
.topic-credentials { --topic-color:#f59e0b; top: 3%; right: 30%; animation-delay: -3.8s!important; }
@media(max-width:900px) {
    .public-logo-float-stage { width: min(100%,650px); margin-inline: auto; }
}
@media(max-width:560px) {
    .public-logo-float-stage { min-height: 480px; }
    .public-logo-float-stage .public-logo-constant { width: min(78%,390px); }
    .public-floating-topics>span { padding: .4rem .6rem; font-size: .66rem; }
    .topic-learning { left: 2%; }
    .topic-finance { right: 0; }
    .topic-aptitude { left: 0; }
    .topic-mentorship { left: 1%; }
}
@media(prefers-reduced-motion:reduce) {
    .public-floating-topics>span { animation: none; }
}

/* Focused student enrollment, learning and payment lifecycle */
.student-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 1rem;
}
.student-section-heading h2,.student-section-title { margin: .2rem 0 .35rem; color: #10253f; }
.student-section-heading p { margin: 0; color: #64748b; }
.student-program-catalog { margin-bottom: 2.25rem; }
.student-mode-card { display: flex; flex-direction: column; gap: .8rem; }
.student-mode-card>p { min-height: 3em; }
.student-mode-card>form { display: grid; gap: .9rem; margin-top: auto; }
.student-mode-options { display: grid; gap: .65rem; }
.student-mode-options label {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: .7rem;
    padding: .8rem;
    border: 1px solid #d9e3ec;
    border-radius: 12px;
    background: #f8fafc;
    cursor: pointer;
}
.student-mode-options label:has(input:checked) { border-color: #0f9d8a; background: #effcf9; box-shadow: 0 0 0 2px rgba(15,157,138,.1); }
.student-mode-options input { width: 18px; height: 18px; accent-color: #0f9d8a; }
.student-mode-options span { display: grid; gap: .1rem; }
.student-mode-options small { color: #64748b; font-weight: 500; }
.student-mode-options b { color: #0f766e; white-space: nowrap; }
.student-learning-hub { display: grid; gap: .85rem; }
.student-learning-hub>.student-section-title { margin-top: 1rem; }
.learning-hub-row {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: 1rem;
}
.learning-hub-row>div { display: grid; gap: .25rem; }
.learning-hub-row>div small { color: #0f766e; }
.learning-hub-row>div p { margin: 0; color: #64748b; }
.learning-hub-row.locked { opacity: .72; background: #f8fafc; }
.student-activation-card {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    align-items: center;
    gap: 1.2rem;
    padding: 1.5rem;
    border-left: 5px solid #f59e0b;
}
.student-activation-card>span {
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    border-radius: 14px;
    background: #fff7ed;
    color: #c2410c;
    font-size: 1.45rem;
    font-weight: 900;
}
.student-activation-card h2 { margin: 0 0 .3rem; }
.student-activation-card p { margin: 0 0 .3rem; color: #64748b; }
.student-qr-checkout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 220px;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.2rem;
    background: linear-gradient(135deg,#ffffff,#effcf9);
}
.student-qr-checkout dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
.student-qr-checkout dl div { padding: .75rem; border-radius: 10px; background: rgba(255,255,255,.82); }
.student-qr-checkout dt { color: #64748b; font-size: .75rem; }
.student-qr-checkout dd { margin: .15rem 0 0; color: #10253f; font-weight: 800; }
.student-qr-checkout>a { display: grid; justify-items: center; gap: .45rem; color: #0f766e; font-weight: 800; text-decoration: none; }
.student-qr-checkout img { width: 190px; height: 190px; padding: 8px; border: 1px solid #d9e3ec; border-radius: 16px; background: #fff; }
.student-dashboard-focused { align-items: stretch; }

/* Program pricing and completion controls */
.program-pricing-manager { margin-bottom: 1.5rem; }
.program-pricing-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .65rem; }
.program-pricing-grid label { display: grid; gap: .3rem; color: #475569; font-size: .78rem; font-weight: 700; }
.program-pricing-grid input { width: 100%; }
.completion-issue-form { display: flex; align-items: center; gap: .5rem; min-width: 300px; }
.completion-issue-form input { min-width: 190px; }
.public-mode-prices { display: grid; gap: .45rem; margin: .6rem 0; }
.public-mode-prices p { display: flex; justify-content: space-between; gap: 1rem; margin: 0; padding: .65rem .75rem; border-radius: 10px; background: rgba(255,255,255,.75); }
.public-mode-prices strong { color: var(--public-violet); }

@media(max-width:760px) {
    .learning-hub-row,.student-activation-card,.student-qr-checkout { grid-template-columns: 1fr; }
    .learning-hub-row>.btn,.student-activation-card>.btn { width: 100%; }
    .student-qr-checkout>a { justify-self: center; }
    .student-qr-checkout dl,.program-pricing-grid { grid-template-columns: 1fr; }
    .completion-issue-form { align-items: stretch; flex-direction: column; min-width: 220px; }
}

/* ==========================================================================
   Cross-panel visibility, contrast and colour correction
   ========================================================================== */
:root {
    --ui-ink: #10213a;
    --ui-copy: #34445d;
    --ui-muted: #5f6f86;
    --ui-border: #cdd8e5;
    --ui-canvas: #f4f7fb;
    --ui-blue: #2563eb;
    --ui-violet: #7c3aed;
    --ui-teal: #0f766e;
    --ui-success: #166534;
    --ui-warning: #854d0e;
    --ui-danger: #991b1b;
}

body { color: var(--ui-copy); }
input,select,textarea,button { font-family: Inter,system-ui,sans-serif; }
input::placeholder,textarea::placeholder { color:#6b7b91; opacity:1; }
.btn { min-height:42px; font-size:.88rem; }
.btn:focus-visible,
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
    outline:3px solid rgba(37,99,235,.32)!important;
    outline-offset:2px!important;
}

/* Administrator and all manager roles */
.admin-body { background:var(--ui-canvas); color:var(--ui-copy); font-size:16px; }
.admin-sidebar { background:linear-gradient(180deg,#10243f 0%,#0c2f3b 55%,#083b3b 100%); }
.admin-brand { min-height:82px; height:auto; padding-block:.8rem; }
.admin-brand small { color:#b8c9dc; font-size:.69rem; line-height:1.35; letter-spacing:.02em; text-transform:none; }
.admin-nav-group h2 { color:#aebed1; font-size:.67rem; }
.admin-nav a { min-height:43px; color:#d5dfeb; font-size:.86rem; }
.admin-nav a span:first-child { color:#91c9d1; }
.admin-nav a:hover { background:rgba(255,255,255,.1); }
.admin-nav a.active {
    background:linear-gradient(90deg,#0f766e,#0d9488);
    box-shadow:inset 4px 0 #fbbf24,0 6px 16px rgba(0,0,0,.12);
}
.admin-sidebar-footer { color:#e2e8f0; font-size:.78rem; }
.admin-sidebar-footer small { color:#b8c9dc; }
.admin-topbar { border-bottom-color:#cbd7e3; box-shadow:0 4px 18px rgba(15,23,42,.05); }
.global-search,.context-chip,.icon-button { border-color:#bfcddb; }
.global-search input { color:var(--ui-ink); font-size:.88rem; }
.profile-copy strong { color:var(--ui-ink); font-size:.82rem; }
.profile-copy small { color:var(--ui-muted); font-size:.72rem; }
.admin-main { color:var(--ui-copy); }
.page-heading h1 { color:var(--ui-ink); font-size:1.85rem; }
.page-heading p { color:var(--ui-muted); font-size:.9rem; line-height:1.65; }
.breadcrumb { color:var(--ui-muted); font-size:.76rem; }
.breadcrumb strong { color:var(--ui-teal); }
.admin-card,.kpi-card,.metric-strip {
    border-color:#ccd7e2;
    box-shadow:0 5px 18px rgba(30,41,59,.055);
}
.kpi-card { border-top:3px solid #2563eb; }
.kpi-card:nth-child(2n) { border-top-color:#7c3aed; }
.kpi-card:nth-child(3n) { border-top-color:#0d9488; }
.kpi-card:nth-child(4n) { border-top-color:#f97316; }
.kpi-label,.metric-strip span { color:var(--ui-muted); font-size:.76rem; }
.kpi-card>strong,.metric-strip strong { color:var(--ui-ink); }
.kpi-card small { color:#52647c; font-size:.72rem; }
.card-heading h2,.admin-card-heading h2,.table-toolbar h2 { color:var(--ui-ink); font-size:1.05rem; }
.card-heading>a,.admin-operation-guide a { color:#075e9e; font-size:.8rem; }
.admin-card-heading p,.admin-operation-guide p,.table-toolbar p { color:var(--ui-muted); font-size:.82rem; line-height:1.55; }
.admin-table { color:var(--ui-copy); font-size:.82rem; }
.admin-table th { background:#edf3f8; color:#40516a; font-size:.7rem; }
.admin-table td { border-bottom-color:#dfe7ef; color:#33445d; }
.admin-table tbody tr:nth-child(even) { background:#fbfcfe; }
.admin-table tbody tr:hover { background:#eef8f7; }
.admin-table td>strong { color:var(--ui-ink); }
.admin-table td>small,.cell-subtitle { color:#607188; font-size:.72rem; }
.table-footer,.muted-action { color:#5f7087; font-size:.72rem; }
.table-action-button { min-height:34px; border-color:#aebfce; color:#075e59; font-size:.75rem; }
.table-search { min-height:42px; border-color:#b9c8d7; background:#fff; }
.table-search input { color:var(--ui-ink); font-size:.86rem; }
.form-grid label,.admin-operation-form label,.settings-fields label { color:#263850; font-size:.78rem; }
.form-grid input,.form-grid select,.form-grid textarea,
.admin-operation-form input,.admin-operation-form select,.admin-operation-form textarea,
.settings-fields input,.settings-fields select,.settings-fields textarea,
.admin-inline-payment-form input,.admin-inline-payment-form select,.admin-withdrawal-action input,
.completion-issue-form input {
    min-height:42px;
    border-color:#aebdcb;
    background:#fff;
    color:var(--ui-ink);
    font-size:.86rem;
}
.notice { font-size:.86rem; }
.status-badge { font-size:.72rem; }

/* Student panel: a clearer blue learning identity */
.student-body { background:#f4f7fc; color:var(--ui-ink); font-size:16px; }
.student-sidebar { background:linear-gradient(180deg,#102a43,#143a5a 60%,#164e63); color:#e2edf8; }
.student-brand { min-height:78px; height:auto; }
.student-brand>span:first-child { background:linear-gradient(135deg,#2563eb,#7c3aed); box-shadow:0 8px 22px rgba(37,99,235,.3); }
.student-brand strong { font-size:.9rem; }
.student-brand small { color:#c4d4e6; font-size:.69rem; }
.student-nav a { min-height:44px; color:#d7e5f3; font-size:.84rem; }
.student-nav a span:first-child { color:#93c5fd; }
.student-nav a:hover { background:rgba(255,255,255,.1); }
.student-nav a.active { background:linear-gradient(90deg,#2563eb,#4f46e5); box-shadow:inset 4px 0 #fbbf24; }
.student-security strong { color:#fff; font-size:.75rem; }
.student-security small { color:#c1d4e6; font-size:.68rem; }
.student-topbar { border-bottom-color:#cbd7e5; box-shadow:0 4px 16px rgba(30,41,59,.045); }
.student-program-switcher { min-height:42px; border-color:#b7c6d6; }
.student-program-switcher select { color:var(--ui-ink); font-size:.84rem; }
.student-profile-chip strong { color:var(--ui-ink); font-size:.82rem; }
.student-profile-chip small { color:#64748b; font-size:.7rem; }
.student-page-heading h1 { color:var(--ui-ink); font-size:1.75rem; }
.student-page-heading p { color:var(--ui-muted); font-size:.9rem; line-height:1.65; }
.student-eyebrow { color:#1d4ed8; font-size:.69rem; }
.student-heading-meta span { color:#64748b; font-size:.7rem; }
.student-heading-meta strong { color:var(--ui-ink); font-size:.82rem; }
.student-card {
    border-color:#cbd7e4;
    box-shadow:0 5px 16px rgba(30,41,59,.05);
}
.student-card:hover { border-color:#a9bed4; box-shadow:0 9px 24px rgba(30,64,175,.08); }
.student-card h2 { color:var(--ui-ink); font-size:1.05rem; }
.student-card h3 { color:var(--ui-ink); font-size:.94rem; }
.student-card p { color:#52647c; font-size:.84rem; line-height:1.65; }
.student-card a:not(.btn) { color:#1d4ed8; font-size:.8rem; }
.student-card-top>span:last-child { color:#64748b; font-size:.7rem; }
.student-status { padding:.3rem .58rem; color:#334155; font-size:.68rem; }
.student-continue { border-top:4px solid #2563eb; background:linear-gradient(135deg,#fff 52%,#eef2ff); }
.student-ring-card { border-top:4px solid #7c3aed; }
.student-quick-card:nth-of-type(3n) { border-top:4px solid #f97316; }
.student-quick-card:nth-of-type(3n+1) { border-top:4px solid #0891b2; }
.student-quick-card:nth-of-type(3n+2) { border-top:4px solid #059669; }
.student-alert strong { font-size:.86rem; }
.student-alert p { font-size:.78rem; }
.student-alert b { font-size:.78rem; }
.student-tabs button,.student-tabs a { color:#475569; font-size:.78rem; }
.student-tabs button.active,.student-tabs a.active { background:#2563eb; }
.student-form label,.task-submit label,.attendance-code-form label { color:#263850; font-size:.78rem; }
.student-form input,.student-form select,.student-form textarea,
.task-submit textarea,.task-submit input,.attendance-code-form input,
.student-record-list textarea,.ticket-conversation textarea {
    min-height:42px;
    border-color:#aebdcb;
    color:var(--ui-ink);
    font-size:.88rem;
}
.student-metric-grid span,.student-payment-summary span { color:#5a6c83; font-size:.72rem; }
.student-metric-grid small,.student-payment-summary small { color:#64748b; font-size:.69rem; }
.student-record-list>article>div>strong,.ticket-list summary strong { font-size:.82rem; }
.student-record-list>article>div>small,.ticket-list summary small { color:#607188; font-size:.7rem; }
.student-empty p,.student-empty-inline p { color:#52647c; font-size:.84rem; }
.student-mobile-nav { border-top-color:#cbd7e5; }
.student-mobile-nav a,.student-mobile-nav button { color:#52647c; font-size:.68rem; }
.student-mobile-nav .active { color:#1d4ed8; }

/* Mentor panel: professional emerald teaching identity */
.mentor-body { background:#f3f8f6; color:var(--ui-ink); font-size:16px; }
.mentor-sidebar { background:linear-gradient(180deg,#12352f,#0f453d 60%,#075e54); }
.mentor-brand strong { font-size:.9rem; }
.mentor-brand small { color:#c6ddd8; font-size:.69rem; }
.mentor-nav a { min-height:44px; color:#d7eae6; font-size:.84rem; }
.mentor-nav a span:first-child { color:#99f6e4; }
.mentor-nav a:hover { background:rgba(255,255,255,.1); }
.mentor-nav a.active { background:linear-gradient(90deg,#0f766e,#059669); box-shadow:inset 4px 0 #fbbf24; }
.mentor-security strong { color:#fff; font-size:.74rem; }
.mentor-security small { color:#c0dbd6; font-size:.67rem; }
.mentor-page-heading h1 { color:var(--ui-ink); font-size:1.75rem; }
.mentor-page-heading p { color:var(--ui-muted); font-size:.9rem; line-height:1.65; }
.mentor-eyebrow { color:#047857; font-size:.7rem; }
.mentor-card {
    border-color:#c8d8d3;
    box-shadow:0 5px 16px rgba(15,79,70,.05);
}
.mentor-card:hover { border-color:#9fc7bd; box-shadow:0 9px 23px rgba(5,150,105,.08); }
.mentor-card h2 { color:var(--ui-ink); font-size:1.05rem; }
.mentor-card h3 { color:var(--ui-ink); font-size:.94rem; }
.mentor-card p { color:#52647c; font-size:.84rem; line-height:1.65; }
.mentor-card a:not(.btn) { color:#047857; font-size:.8rem; }
.mentor-focus-metrics>a { border-top:4px solid #059669; }
.mentor-focus-metrics>a:nth-child(2n) { border-top-color:#0891b2; }
.mentor-focus-metrics>a:nth-child(3n) { border-top-color:#f97316; }
.mentor-focus-metrics>a span { color:#596b80; font-size:.72rem; }
.mentor-focus-metrics>a small { color:#607188; font-size:.69rem; }
.mentor-metric-grid span { color:#5a6c83; font-size:.72rem; }
.mentor-metric-grid small { color:#64748b; font-size:.68rem; }
.mentor-form label,.mentor-criterion legend { color:#263850; font-size:.78rem; }
.mentor-form input,.mentor-form select,.mentor-form textarea,
.mentor-criterion input,.mentor-criterion textarea {
    min-height:42px;
    border-color:#aebdcb;
    color:var(--ui-ink);
    font-size:.88rem;
}
.mentor-record-list strong,.student-row>div>strong { font-size:.81rem; }
.mentor-record-list small,.student-row>div>small,.student-row>div>span { color:#607188; font-size:.69rem; }
.mentor-submission-text { color:#33445d; font-size:.82rem; }
.mentor-attendance-head { color:#40516a; font-size:.7rem; }
.mentor-attendance-row strong { font-size:.8rem; }
.mentor-attendance-row small { color:#607188; font-size:.68rem; }
.mentor-mobile-nav a,.mentor-mobile-nav button { color:#52647c; font-size:.65rem; }
.mentor-mobile-nav .active { color:#047857; }

/* Applicant, Evaluator and any remaining specialist workspace */
.app-body {
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    width:min(1320px,calc(100% - 2rem));
    min-height:620px;
    margin:2rem auto;
    overflow:hidden;
    border:1px solid #ccd7e2;
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 45px rgba(30,41,59,.09);
}
.app-body>.sidebar {
    padding:1.35rem 1rem;
    background:linear-gradient(180deg,#172554,#1e3a5f);
    color:#e2e8f0;
}
.sidebar-menu { display:grid; gap:.35rem; padding:0; list-style:none; }
.sidebar-item a {
    display:block;
    min-height:42px;
    padding:.68rem .78rem;
    border-radius:9px;
    color:#dbeafe;
    font-size:.84rem;
    font-weight:700;
    text-decoration:none;
}
.sidebar-item a:hover,.sidebar-item.active a { background:#2563eb; color:#fff; }
.app-body>.main-content { min-width:0; padding:2rem; }
.app-body>.main-content h1 { color:var(--ui-ink)!important; }
.card { border-color:#ccd7e2; }
.card h3 { color:var(--ui-ink)!important; font-size:1.05rem; }
.card p { color:#52647c!important; font-size:.84rem!important; }
.stats-grid { gap:1rem; }
.stat-card { border-top:4px solid #2563eb; }
.stat-card:nth-child(2n) { border-top-color:#7c3aed; }
.stat-card:nth-child(3n) { border-top-color:#0d9488; }
.stat-lbl { color:#5a6c83; font-size:.76rem; }
.stat-val { color:var(--ui-ink); }
.table-responsive { overflow:auto; border:1px solid #d6e0ea; border-radius:10px; }
.table { width:100%; border-collapse:collapse; color:#34445d; font-size:.82rem; }
.table th { padding:.72rem .8rem; background:#edf3f8; color:#40516a; font-size:.7rem; text-align:left; text-transform:uppercase; letter-spacing:.04em; }
.table td { padding:.75rem .8rem; border-top:1px solid #dfe7ef; }
.table tbody tr:nth-child(even) { background:#fbfcfe; }
.form-control { min-height:42px; border:1px solid #aebdcb; color:var(--ui-ink); font-size:.86rem; }
.form-label { color:#263850; font-size:.78rem; }
.badge { font-size:.72rem; }

.applicant-workspace {
    width:min(1080px,calc(100% - 2rem));
    min-height:620px;
    margin:2.5rem auto;
}
.applicant-heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:1.5rem;
    margin-bottom:1.2rem;
    padding:1.7rem;
    border:1px solid #cdd8e5;
    border-radius:18px;
    background:
        radial-gradient(circle at 92% 10%,rgba(124,58,237,.16),transparent 30%),
        linear-gradient(135deg,#eff6ff,#fff 55%,#f5f3ff);
}
.applicant-heading h1 { margin:.3rem 0;color:var(--ui-ink);font-size:2rem; }
.applicant-heading p { color:#52647c;font-size:.95rem; }
.applicant-summary {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:.8rem;
    margin-bottom:1rem;
}
.applicant-summary>div {
    padding:1rem 1.1rem;
    border:1px solid #cdd8e5;
    border-top:4px solid #2563eb;
    border-radius:12px;
    background:#fff;
    box-shadow:0 5px 16px rgba(30,41,59,.05);
}
.applicant-summary>div:nth-child(2) { border-top-color:#f59e0b; }
.applicant-summary>div:nth-child(3) { border-top-color:#059669; }
.applicant-summary span,.applicant-summary strong { display:block; }
.applicant-summary span { color:#5a6c83;font-size:.78rem; }
.applicant-summary strong { margin-top:.25rem;color:var(--ui-ink);font-size:1.45rem; }
.applicant-proof-card { padding:1.2rem; }
.applicant-card-heading { margin-bottom:1rem; }
.applicant-card-heading h2 { margin-top:.2rem;color:var(--ui-ink);font-size:1.2rem; }
.applicant-proof-card td small { display:block;margin-top:.16rem;color:#607188;font-size:.72rem; }
.applicant-empty { padding:3.5rem 1rem;text-align:center; }
.applicant-empty>span { display:grid;place-items:center;width:52px;height:52px;margin:0 auto;border-radius:14px;background:#eef2ff;color:#4f46e5;font-size:1.4rem;font-weight:900; }
.applicant-empty h3 { margin:.7rem 0 .25rem; }
.applicant-empty p { margin-bottom:1rem; }

.admin-main small,.student-main small,.mentor-main small { font-size:max(.72rem,.86em); }
.eyebrow,.mentor-eyebrow,.student-eyebrow { line-height:1.4; }

/* Public visibility refinements */
.public-body { color:var(--ui-ink); }
.public-nav a { color:#3e4d63; font-size:.84rem; }
.public-powered-lockup>small { color:#52647c; }
.public-powered-lockup>strong { font-size:.72rem; }
.public-body p { color:#46566d; }
.public-status { font-size:.76rem; }
.public-card-body p,.public-resource-card p,.public-content-card p { color:#4c5d74; }
.public-inline-filters input,.public-inline-filters select,
.public-contact-form input,.public-contact-form select,.public-contact-form textarea,
.public-auth-card input {
    min-height:44px;
    border-color:#aebdcb;
    color:var(--ui-ink);
    font-size:.92rem;
}

@media(max-width:900px) {
    .app-body { grid-template-columns:1fr; margin:1rem auto; }
    .app-body>.sidebar { padding:1rem; }
    .sidebar-menu { grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
}
@media(max-width:720px) {
    .admin-table td::before { color:#40516a; font-size:.7rem; }
    .admin-main,.student-main,.mentor-main { padding:1rem; }
    .student-page-heading h1,.mentor-page-heading h1,.page-heading h1 { font-size:1.45rem; }
    .student-card-grid,.student-list-grid { grid-template-columns:1fr; }
    .student-card p,.mentor-card p { font-size:.86rem; }
    .app-body { width:calc(100% - 1rem); border-radius:12px; }
    .app-body>.main-content { padding:1.1rem; }
    .table th,.table td { padding:.65rem; }
    .applicant-heading { align-items:stretch;flex-direction:column; }
    .applicant-heading .btn { width:100%; }
    .applicant-summary { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) {
    *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}

/* Program imagery and secure email configuration */
.public-card-media.has-image{min-height:170px;background-position:center;background-size:cover;align-items:flex-start}
.public-program-cover{display:block;width:100%;max-height:340px;margin:0 0 1.25rem;object-fit:cover;border:1px solid #dbeafe;border-radius:20px;box-shadow:0 18px 42px rgba(30,41,59,.16)}
.program-admin-thumb{display:grid;place-items:center;width:62px;height:46px;overflow:hidden;border:1px solid #cbd5e1;border-radius:10px;background:#eff6ff;color:#2563eb}
.program-admin-thumb img{width:100%;height:100%;object-fit:cover}
.student-program-image{width:calc(100% + 2rem);height:170px;margin:-1rem -1rem 1rem;object-fit:cover;border-bottom:1px solid #dbeafe}
.email-verification-panel{display:grid;gap:.85rem;margin:0 0 1rem;padding:1rem;border:1px solid #bfdbfe;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#f5f3ff)}
.email-verification-panel p{margin:.2rem 0;color:#334155}
.email-verification-panel form{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.email-verification-panel .local-otp{padding:.45rem .65rem;border-radius:8px;background:#fff;color:#1e3a8a;font-weight:800;letter-spacing:.14em}
.setting-field[data-provider-field][hidden]{display:none!important}
.settings-otp-field{padding:1rem;border:1px solid #f59e0b;border-radius:12px;background:#fffbeb}
.settings-otp-field input{max-width:220px;font-size:1.05rem!important;font-weight:800;letter-spacing:.25em;text-align:center}
.public-text-button{border:0;background:transparent;color:#4338ca;font:800 .82rem Inter,sans-serif;text-decoration:underline;cursor:pointer}

/* Focused homepage and public feedback */
.home-focused-hero{min-height:calc(100vh - 92px);display:flex;align-items:center}
.home-focused-hero .public-hero-grid{width:100%}
.home-pathways{padding-block:5rem}
.home-pathway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem}
.home-pathway-grid>a{position:relative;overflow:hidden;min-height:265px;padding:1.6rem;border:1px solid #dbeafe;border-radius:20px;background:linear-gradient(145deg,#fff,#eff6ff);color:#0f172a;text-decoration:none;box-shadow:0 12px 32px rgba(30,64,175,.08);transition:.2s}
.home-pathway-grid>a:nth-child(2){border-color:#ddd6fe;background:linear-gradient(145deg,#fff,#f5f3ff)}
.home-pathway-grid>a:nth-child(3){border-color:#fed7aa;background:linear-gradient(145deg,#fff,#fff7ed)}
.home-pathway-grid>a:hover{transform:translateY(-5px);box-shadow:0 22px 45px rgba(30,64,175,.15)}
.home-pathway-grid>a>span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#2563eb;color:#fff;font-weight:900}
.home-pathway-grid>a:nth-child(2)>span{background:#7c3aed}.home-pathway-grid>a:nth-child(3)>span{background:#ea580c}
.home-pathway-grid h3{margin:1.5rem 0 .65rem;font:850 1.45rem "Plus Jakarta Sans",sans-serif}
.home-pathway-grid p{color:#475569;font-size:.9rem;line-height:1.7}.home-pathway-grid strong{display:block;margin-top:1.25rem;color:#1d4ed8}
.home-featured{padding-block:5rem}
.home-compact-process{padding-block:5rem;background:#0f172a;color:#fff}
.home-compact-process>.public-container{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:4rem}
.home-process-copy h2{margin:.45rem 0 1rem;color:#fff;font:850 clamp(1.8rem,3.5vw,3rem)/1.08 "Plus Jakarta Sans",sans-serif}
.home-process-copy p{color:#cbd5e1;font-size:.95rem;line-height:1.75}.home-process-copy .public-text-link{display:inline-block;margin-top:1.25rem;color:#93c5fd}
.home-compact-process ol{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;list-style:none}
.home-compact-process li{display:flex;align-items:center;gap:.9rem;padding:1.15rem;border:1px solid #334155;border-radius:16px;background:#1e293b}
.home-compact-process li>b{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#7c3aed)}
.home-compact-process li strong,.home-compact-process li small{display:block}.home-compact-process li small{margin-top:.18rem;color:#cbd5e1;line-height:1.4}
.home-feedback-section{padding-block:5rem}
.home-feedback-layout{display:grid;grid-template-columns:1fr .9fr;gap:3rem;align-items:start}
.home-feedback-copy>h2{margin:.45rem 0 .75rem;font:850 clamp(1.7rem,3vw,2.6rem) "Plus Jakarta Sans",sans-serif}.home-feedback-copy>p{max-width:680px;color:#475569;font-size:.92rem;line-height:1.75}
.home-feedback-list{display:grid;gap:.75rem;margin-top:1.4rem}
.home-feedback-slider{margin-top:1.4rem}
.home-feedback-slider .home-feedback-list{margin-top:0;min-height:230px}
.home-feedback-list>[data-feedback-slide][hidden]{display:none!important}
.home-feedback-list>[data-feedback-slide]{animation:feedback-slide-in .35s ease}
@keyframes feedback-slide-in{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:translateX(0)}}
.home-feedback-list>blockquote{padding:1rem 1.1rem;border:1px solid #dbeafe;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(30,64,175,.06)}
.home-feedback-list>blockquote>div{color:#f59e0b;letter-spacing:.08em}.home-feedback-list>blockquote>div span{color:#cbd5e1}
.home-feedback-list>blockquote>p{margin:.55rem 0;color:#334155;font-size:.86rem;line-height:1.6}
.home-feedback-list footer{display:flex;justify-content:space-between;gap:.75rem}.home-feedback-list footer small{color:#64748b}
.home-feedback-list aside{margin-top:.75rem;padding:.7rem;border-left:3px solid #2563eb;background:#eff6ff}.home-feedback-list aside p{margin:.2rem 0 0;color:#334155}
.home-feedback-controls{display:grid;grid-template-columns:42px 1fr auto 42px;align-items:center;gap:.65rem;margin-top:.8rem}
.home-feedback-controls>button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #c7d2fe;border-radius:50%;background:#fff;color:#3730a3;font-size:1.05rem;font-weight:900;cursor:pointer}
.home-feedback-controls>button:hover,.home-feedback-controls>button:focus-visible{border-color:#4f46e5;background:#eef2ff;outline:3px solid rgba(79,70,229,.16)}
.home-feedback-controls>[data-feedback-dots]{display:flex;align-items:center;gap:.4rem}
.home-feedback-controls>[data-feedback-dots] button{width:9px;height:9px;padding:0;border:0;border-radius:99px;background:#cbd5e1;cursor:pointer;transition:.2s}
.home-feedback-controls>[data-feedback-dots] button[aria-current="true"]{width:26px;background:#4f46e5}
.home-feedback-controls>[data-feedback-counter]{color:#475569;font-size:.78rem;font-weight:800}
.home-feedback-empty{display:grid;gap:.3rem;margin-top:1.4rem;padding:1rem;border:1px dashed #93c5fd;border-radius:14px;background:#fff}.home-feedback-empty span{color:#64748b}
.home-feedback-form{display:grid;gap:.9rem;padding:1.4rem;border:1px solid #c7d2fe;border-radius:22px;background:#fff;box-shadow:0 22px 55px rgba(67,56,202,.12)}
.home-feedback-form h3{margin:.2rem 0;font:850 1.35rem "Plus Jakarta Sans",sans-serif}
.home-feedback-form>label,.feedback-form-row label{display:grid;gap:.35rem;color:#1e293b;font-size:.82rem;font-weight:800}
.home-feedback-form input,.home-feedback-form select,.home-feedback-form textarea{width:100%;min-height:44px;padding:.72rem .78rem;border:1px solid #94a3b8;border-radius:10px;background:#fff;color:#0f172a;font:500 .9rem Inter,sans-serif}
.home-feedback-form textarea{min-height:125px;resize:vertical}.home-feedback-form input:focus,.home-feedback-form select:focus,.home-feedback-form textarea:focus{outline:3px solid rgba(37,99,235,.18);border-color:#2563eb}
.feedback-form-row{display:grid;grid-template-columns:.7fr 1.3fr;gap:.8rem}.home-feedback-form .public-consent{display:flex;align-items:flex-start;font-weight:600;line-height:1.5}.home-feedback-form .public-consent input{width:18px;min-height:18px;margin-top:.15rem}
.public-honeypot{position:absolute!important;left:-10000px!important}.home-final-cta{padding-block:4.5rem}
@media(max-width:900px){.home-focused-hero{min-height:auto}.home-pathway-grid,.home-feedback-layout,.home-compact-process>.public-container{grid-template-columns:1fr}.home-compact-process>.public-container{gap:2rem}.home-feedback-layout{gap:2rem}}
@media(max-width:600px){.home-pathways,.home-featured,.home-compact-process,.home-feedback-section{padding-block:3.5rem}.home-compact-process ol,.feedback-form-row{grid-template-columns:1fr}.home-pathway-grid>a{min-height:auto}}

/* ==========================================================================
   Antigravity Admin UX & Dark Mode Design System Additions
   ========================================================================== */

/* Light / Dark Mode Variables for Admin Shell */
:root {
  --admin-bg: #f6f8fa;
  --admin-card-bg: #ffffff;
  --admin-border: #dbe5e4;
  --admin-border-subtle: #edf2f1;
  --admin-text-main: #0f172a;
  --admin-text-muted: #64748b;
  --admin-text-subtle: #94a3b8;
  --admin-table-head-bg: #f8fafc;
  --admin-table-hover-bg: #fbfefd;
  --admin-topbar-bg: rgba(255, 255, 255, 0.96);
  --admin-input-bg: #ffffff;
  --admin-input-border: #cfdcda;
  --admin-accent-teal: #0f766e;
  --admin-accent-glow: rgba(13, 148, 136, 0.12);
  --admin-modal-backdrop: rgba(15, 23, 42, 0.58);
  --admin-chip-bg: #ffffff;
}

[data-theme="dark"] .admin-body,
.admin-body.dark-mode {
  --admin-bg: #0b1324;
  --admin-card-bg: #111c35;
  --admin-border: #1e293b;
  --admin-border-subtle: #1e293b;
  --admin-text-main: #f8fafc;
  --admin-text-muted: #94a3b8;
  --admin-text-subtle: #64748b;
  --admin-table-head-bg: #1e293b;
  --admin-table-hover-bg: #182442;
  --admin-topbar-bg: rgba(17, 28, 53, 0.96);
  --admin-input-bg: #182442;
  --admin-input-border: #334155;
  --admin-accent-teal: #14b8a6;
  --admin-accent-glow: rgba(20, 184, 166, 0.25);
  --admin-modal-backdrop: rgba(2, 6, 23, 0.75);
  --admin-chip-bg: #182442;
  background-color: var(--admin-bg) !important;
  color: var(--admin-text-main) !important;
}

[data-theme="dark"] .admin-card,
.admin-body.dark-mode .admin-card,
[data-theme="dark"] .admin-topbar,
.admin-body.dark-mode .admin-topbar,
[data-theme="dark"] .kpi-card,
.admin-body.dark-mode .kpi-card,
[data-theme="dark"] .metric-strip,
.admin-body.dark-mode .metric-strip {
  background-color: var(--admin-card-bg) !important;
  border-color: var(--admin-border) !important;
  color: var(--admin-text-main) !important;
}

[data-theme="dark"] .admin-main h1,
.admin-body.dark-mode .admin-main h1,
[data-theme="dark"] .admin-main h2,
.admin-body.dark-mode .admin-main h2,
[data-theme="dark"] .admin-main strong,
.admin-body.dark-mode .admin-main strong,
[data-theme="dark"] .admin-table th,
.admin-body.dark-mode .admin-table th,
[data-theme="dark"] .admin-table td,
.admin-body.dark-mode .admin-table td {
  color: var(--admin-text-main) !important;
}

[data-theme="dark"] .admin-table th,
.admin-body.dark-mode .admin-table th {
  background-color: var(--admin-table-head-bg) !important;
  border-color: var(--admin-border) !important;
}

[data-theme="dark"] .admin-table td,
.admin-body.dark-mode .admin-table td {
  border-color: var(--admin-border-subtle) !important;
}

[data-theme="dark"] .admin-table tbody tr:hover,
.admin-body.dark-mode .admin-table tbody tr:hover {
  background-color: var(--admin-table-hover-bg) !important;
}

[data-theme="dark"] .global-search,
.admin-body.dark-mode .global-search,
[data-theme="dark"] .context-chip,
.admin-body.dark-mode .context-chip,
[data-theme="dark"] .icon-button,
.admin-body.dark-mode .icon-button,
[data-theme="dark"] .profile-menu,
.admin-body.dark-mode .profile-menu {
  background-color: var(--admin-card-bg) !important;
  border-color: var(--admin-border) !important;
  color: var(--admin-text-main) !important;
}

[data-theme="dark"] .global-search input,
.admin-body.dark-mode .global-search input,
[data-theme="dark"] .form-grid input,
.admin-body.dark-mode .form-grid input,
[data-theme="dark"] .form-grid select,
.admin-body.dark-mode .form-grid select,
[data-theme="dark"] .form-grid textarea,
.admin-body.dark-mode .form-grid textarea {
  background-color: var(--admin-input-bg) !important;
  border-color: var(--admin-input-border) !important;
  color: var(--admin-text-main) !important;
}

/* Notification Bell Counter Badge */
.notification-button {
  position: relative;
}
.notification-badge {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 99px;
  background: #ef4444;
  color: #ffffff;
  font-size: 0.6rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 5px rgba(239, 68, 68, 0.4);
}

/* Global Command Palette Dialog */
.admin-command-dialog {
  width: min(640px, calc(100vw - 2rem));
  border: 0;
  border-radius: 16px;
  padding: 0;
  background: var(--admin-card-bg, #ffffff);
  box-shadow: 0 25px 60px rgba(15, 23, 42, 0.35);
  overflow: hidden;
}
.admin-command-dialog::backdrop {
  background: var(--admin-modal-backdrop, rgba(15, 23, 42, 0.58));
  backdrop-filter: blur(4px);
}
.command-header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem 1.2rem;
  border-bottom: 1px solid var(--admin-border, #e7eeed);
}
.command-header span {
  font-size: 1.2rem;
  color: #0d9488;
}
.command-header input {
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 0.95rem;
  color: var(--admin-text-main, #0f172a);
}
.command-header kbd {
  padding: 2px 6px;
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  background: #f8fafc;
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 700;
}
.command-body {
  max-height: 380px;
  overflow-y: auto;
  padding: 0.5rem;
}
.command-group-title {
  padding: 0.5rem 0.75rem 0.25rem;
  font-size: 0.62rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #0d9488;
}
.command-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem 0.75rem;
  border-radius: 8px;
  color: var(--admin-text-main, #334155);
  text-decoration: none;
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 600;
  transition: background 0.15s ease;
}
.command-item:hover,
.command-item.selected {
  background: #f0fdfa;
  color: #0f766e;
}
[data-theme="dark"] .command-item:hover,
[data-theme="dark"] .command-item.selected {
  background: #1e293b;
  color: #2dd4bf;
}
.command-item-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.command-item-icon {
  width: 24px;
  text-align: center;
  color: #0d9488;
  font-size: 1rem;
}
.command-badge {
  padding: 2px 7px;
  border-radius: 99px;
  background: #f1f5f9;
  color: #64748b;
  font-size: 0.62rem;
  font-weight: 700;
}

/* Keyboard Shortcuts Dialog */
.keyboard-shortcuts-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.8rem;
  padding: 1.25rem;
}
.shortcut-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--admin-border, #e7eeed);
  border-radius: 8px;
  background: var(--admin-card-bg, #ffffff);
}
.shortcut-row label {
  font-size: 0.76rem;
  font-weight: 600;
  color: var(--admin-text-main, #334155);
}
.kbd-key {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 3px 7px;
  border: 1px solid #cbd5e1;
  border-radius: 5px;
  background: #f8fafc;
  color: #334155;
  font-family: ui-monospace, monospace;
  font-size: 0.72rem;
  font-weight: 700;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

/* Interactive Table Enhancements */
.admin-table th[data-sortable] {
  cursor: pointer;
  user-select: none;
  position: relative;
}
.admin-table th[data-sortable]:hover {
  background: #f1f5f9;
}
[data-theme="dark"] .admin-table th[data-sortable]:hover {
  background: #334155;
}
.sort-indicator {
  display: inline-block;
  margin-left: 0.35rem;
  font-size: 0.65rem;
  opacity: 0.4;
  transition: opacity 0.15s ease;
}
.admin-table th.sort-asc .sort-indicator,
.admin-table th.sort-desc .sort-indicator {
  opacity: 1;
  color: #0d9488;
}

/* Active Filter Chips Bar */
.active-filters-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem;
  padding: 0.5rem 1rem;
  background: #f8fafc;
  border-bottom: 1px solid var(--admin-border, #e7eeed);
}
[data-theme="dark"] .active-filters-bar {
  background: #182442;
}
.filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.2rem 0.55rem;
  border-radius: 99px;
  background: #e0f2fe;
  color: #0369a1;
  font-size: 0.68rem;
  font-weight: 700;
}
.filter-chip-remove {
  border: 0;
  background: transparent;
  color: #0369a1;
  font-weight: 800;
  cursor: pointer;
  padding: 0 2px;
}

/* Bulk Selection Bar */
.bulk-actions-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.6rem 1rem;
  background: #f0fdfa;
  border-bottom: 1px solid #bfece6;
  color: #0f766e;
  font-size: 0.76rem;
  font-weight: 700;
}

/* Password Toggle Wrapper */
.password-toggle-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.password-toggle-wrapper input {
  padding-right: 2.2rem !important;
}
.password-toggle-btn {
  position: absolute;
  right: 0.6rem;
  border: 0;
  background: transparent;
  color: #64748b;
  cursor: pointer;
  font-size: 0.9rem;
}

