:root{--navy:#071a34;--navy2:#0c294d;--gold:#cda434;--paper:#f5f7fa;--ink:#142033}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}header{height:88px;padding:10px 5vw;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(110deg,var(--navy),var(--navy2));border-bottom:3px solid var(--gold)}.brand{display:flex;gap:12px;align-items:center;color:white;text-decoration:none}.brand img{width:64px;height:64px;object-fit:contain}.brand span{display:flex;flex-direction:column;letter-spacing:.08em}.brand small{color:#e6c768;margin-top:4px}nav{display:flex;gap:26px;align-items:center}nav a{color:#fff;text-decoration:none;font-weight:700}.login,.primary,.secondary{border-radius:6px;padding:12px 18px}.login,.primary{background:var(--gold);color:#071a34!important}.hero{min-height:520px;padding:70px 8vw;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;color:white;background:radial-gradient(circle at 75% 40%,#174b7d 0,#0b2b51 28%,#06172d 70%)}.hero h1,.course h1{font-family:Georgia,serif;font-size:54px;line-height:1.05;margin:8px 0 18px}.hero p{font-size:20px;line-height:1.6;max-width:720px}.hero img{width:min(390px,100%);justify-self:center;filter:drop-shadow(0 18px 22px #0008)}.eyebrow{font-size:13px!important;letter-spacing:.2em;font-weight:800;color:var(--gold)}.primary,.secondary{display:inline-block;text-decoration:none;font-weight:800;border:0;font-size:16px}.section{padding:70px 7vw}.sectionhead{text-align:center;max-width:760px;margin:auto auto 38px}.sectionhead h2,.band h2{font-family:Georgia,serif;font-size:38px;margin:6px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:white;border-radius:10px;padding:28px;box-shadow:0 8px 28px #14203316;border-top:4px solid var(--gold)}.card h3{font-family:Georgia,serif;font-size:25px;min-height:60px}.badge{font-size:11px;font-weight:800;letter-spacing:.08em;color:#8a6712}.meta{border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:14px 0;margin:20px 0}.secondary{border:1px solid var(--gold);color:#76570b}.band{padding:55px 8vw;text-align:center;background:var(--navy);color:white}.course{max-width:950px;margin:auto;padding:65px 6vw 100px}.course .lead{font-size:20px;line-height:1.7}.back{color:#76570b;text-decoration:none;font-weight:bold}.coursebox{display:grid;grid-template-columns:repeat(3,1fr);background:white;margin:32px 0;padding:22px;border-radius:8px;box-shadow:0 6px 20px #0001}.coursebox div{display:flex;flex-direction:column;gap:7px}.coursebox span{color:#586477}.note{font-size:14px;color:#657080;max-width:700px}footer{text-align:center;padding:24px;background:#041225;color:#aeb9c8}@media(max-width:800px){header{height:auto;align-items:flex-start}.brand span{font-size:12px}nav a:not(.login){display:none}.hero{grid-template-columns:1fr;text-align:center;padding:50px 7vw}.hero h1,.course h1{font-size:38px}.hero img{width:260px;margin-top:30px}.grid{grid-template-columns:1fr}.coursebox{grid-template-columns:1fr;gap:20px}}
.checkout-form{background:#fff;padding:28px;border-radius:10px;box-shadow:0 8px 28px #14203316}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.form-grid label{font-weight:700;display:flex;flex-direction:column;gap:7px}.form-grid input{font:inherit;padding:12px;border:1px solid #cbd2da;border-radius:5px}.checkout-summary{display:flex;justify-content:space-between;gap:20px;margin:26px 0;padding:18px;background:#f3f5f7;border-left:4px solid var(--gold)}.form-errors{padding:14px 18px;margin:18px 0;background:#fff1f1;border-left:4px solid #a52a2a;color:#731b1b}@media(max-width:800px){.form-grid{grid-template-columns:1fr}}
.academy-shell{max-width:1100px;margin:0 auto;padding:32px 20px}.academy-shell label{display:block;margin:14px 0}.academy-shell input{padding:10px;max-width:480px;width:100%}.academy-shell button,.academy-button{display:inline-block;padding:11px 18px;border:0;border-radius:6px;text-decoration:none;cursor:pointer}.course-card{padding:20px;margin:18px 0;border:1px solid #d7dce2;border-radius:10px}.lesson-row{padding:12px 0;border-bottom:1px solid #e4e7eb}.lesson-content{line-height:1.65;margin:24px 0}
.assessment-form{margin-top:24px}.question{background:#fff;border:1px solid #d7dce2;border-radius:10px;padding:22px;margin:18px 0}.answer-option{display:block!important;padding:9px 0;margin:0!important;font-weight:400!important}.answer-option input{width:auto!important;margin-right:8px}.question textarea{width:100%;padding:12px;font:inherit;border:1px solid #cbd2da;border-radius:6px}.assessment-result{padding:18px;border-radius:8px;margin:20px 0;background:#eef2f6;border-left:5px solid #657080}.assessment-result.pass{background:#eef8f0;border-left-color:#347a43}.assessment-result.fail{background:#fff4e8;border-left-color:#b46b14}.certificate-card{background:#fff;border:8px double var(--gold);padding:60px 40px;margin:35px auto;text-align:center;max-width:900px;box-shadow:0 8px 28px #14203316}.certificate-card h1{font-family:Georgia,serif;font-size:46px}.certificate-card h2{font-family:Georgia,serif;font-size:30px;color:var(--navy2)}.certificate-verify{background:#fff;border-left:5px solid var(--gold);padding:20px;margin-top:25px}
.print-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.academy-table{width:100%;border-collapse:collapse}.academy-table th,.academy-table td{padding:12px;border-bottom:1px solid #d9dee7;text-align:left}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:24px 0}.stat,.grading-card{background:#fff;border:1px solid #dfe4ec;border-radius:12px;padding:18px}.stat strong{font-size:28px;display:block}.stat span{opacity:.7}.grading-card{margin:16px 0}.grading-card pre{white-space:pre-wrap;background:#f5f7fa;padding:12px;border-radius:8px}.transcript,.branded-certificate{background:#fff;border:2px solid #17243a;padding:32px}.certificate-brand{text-align:center;font-weight:800;letter-spacing:.12em;margin-bottom:28px}.certificate-brand span{font-size:.8em}.narrow{max-width:560px}.error{color:#9b1c1c}@media print{nav,.print-actions,button,.academy-button{display:none!important}.academy-shell{max-width:none;margin:0;padding:0}.certificate-card,.transcript{box-shadow:none;border:2px solid #000;break-inside:avoid}}
.admin-nav{display:flex;gap:.55rem;flex-wrap:wrap;margin:1rem 0 1.5rem}.admin-nav a,.button{display:inline-block;padding:.6rem .9rem;border:1px solid #c7cbd1;border-radius:6px;text-decoration:none}.academy-form{display:grid;gap:.9rem;max-width:900px}.academy-form label{display:grid;gap:.35rem;font-weight:600}.academy-form input,.academy-form select,.academy-form textarea{padding:.65rem;border:1px solid #bbb;border-radius:5px;font:inherit}.admin-module{border:1px solid #ddd;border-radius:8px;padding:1rem;margin:1rem 0}.admin-lesson{padding:.5rem 0;border-top:1px solid #eee}@media print{.admin-nav,button,.button,form{display:none!important}}
.admin-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:end}.admin-actions form,.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-actions select,.inline-form select{padding:10px;border:1px solid #bbb;border-radius:5px}.student-note{background:#fff;border-left:4px solid var(--gold);padding:14px 18px;margin:12px 0}.success{background:#edf8ef;border-left:4px solid #347a43;padding:12px 16px}
.progress-track{height:14px;background:#e1e5ea;border-radius:8px;overflow:hidden;margin:14px 0}.progress-track span{display:block;height:100%;background:var(--gold)}@media(max-width:800px){.academy-table{display:block;overflow-x:auto;white-space:nowrap}.admin-module{overflow:hidden}}
.report-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:16px 0}.report-filter label{display:flex;flex-direction:column;gap:5px}.report-filter select,.report-filter input{min-width:180px}
@media print{.admin-nav,.report-filter button,.report-filter .button{display:none!important}}
.certificate-signature{margin:42px auto 0;padding-top:10px;border-top:1px solid #555;max-width:320px}.certificate-signature span{font-size:.9em}.communication-status{font-weight:700;text-transform:capitalize}
.signature-preview{margin:12px 0;padding:12px;border:1px solid #d9d9d9;border-radius:8px;background:#fff}.signature-preview img{display:block;max-width:360px;max-height:100px;object-fit:contain;margin-bottom:8px}.certificate-signature-image{margin:24px auto 2px;text-align:center}.certificate-signature-image img{max-width:320px;max-height:90px;object-fit:contain}.academy-form fieldset{border:1px solid #d9d9d9;border-radius:8px;padding:16px;margin:12px 0}.academy-form legend{font-weight:700;padding:0 6px}
/* Batch 28: student learning experience */
.student-nav{background:var(--navy);padding:12px 16px;border-radius:8px;display:flex;gap:18px;flex-wrap:wrap}.student-nav a{color:#fff}.progress-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.lesson-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.lesson-row>div{display:flex;flex-direction:column;gap:4px}.lesson-row small{color:#657080}.status-pill{display:inline-block;padding:5px 9px;border-radius:999px;background:#e6e9ee;font-size:12px;font-weight:700;white-space:nowrap}.status-completed{background:#e4f3e7;color:#256335}.status-in_progress{background:#fff0d7;color:#875a0b}.status-available{background:#e6eef9;color:#244f83}.status-locked{background:#eceef1;color:#6c737c}.table-wrap{overflow-x:auto}@media(max-width:800px){.progress-summary{grid-template-columns:repeat(2,1fr)}.lesson-row{align-items:flex-start}.student-nav{gap:12px}}@media(max-width:480px){.progress-summary{grid-template-columns:1fr}.lesson-row{flex-direction:column}.status-pill{align-self:flex-start}}

/* Batch 41: VISTA commercial UI refresh */
body{background:#f4f6fa;color:#18243a}.academy-shell{max-width:1280px;padding:34px 28px}.academy-shell>h1{font-family:Georgia,serif;color:var(--navy);font-size:34px;margin:0 0 8px}.admin-nav{background:linear-gradient(135deg,#06172d,#0c315c);padding:12px;border-radius:14px;box-shadow:0 10px 30px #06172d20;position:sticky;top:10px;z-index:20}.admin-nav a{border:0;color:#eaf0f8;padding:.72rem .9rem;border-radius:9px;font-size:13px;font-weight:700}.admin-nav a:hover{background:#ffffff18;color:#f0c65c}.admin-stats{gap:18px}.stat{border:0;border-top:4px solid var(--gold);box-shadow:0 8px 26px #17243a12;padding:22px}.stat strong{color:var(--navy);font-size:34px}.academy-table{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 22px #17243a0d}.academy-table th{background:#eef2f7;color:#243552;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.academy-table td,.academy-table th{padding:14px 16px}.academy-form{background:#fff;padding:24px;border-radius:14px;box-shadow:0 8px 28px #17243a0e}.academy-form input,.academy-form select,.academy-form textarea{border:1px solid #cfd6e1;border-radius:8px;background:#fbfcfe}.academy-form input:focus,.academy-form select:focus,.academy-form textarea:focus{outline:2px solid #d7b14c55;border-color:#b98b21}.academy-form button,button,.button,.academy-button{background:var(--navy);color:#fff;border:0;border-radius:8px;font-weight:700;padding:11px 16px}.academy-form button:hover,button:hover,.button:hover,.academy-button:hover{filter:brightness(1.12)}.primary{background:var(--gold);color:var(--navy)!important}.course-card,.admin-module,.grading-card,.student-note{background:#fff;box-shadow:0 6px 22px #17243a0c;border:1px solid #e2e7ee;border-radius:14px}.progress-track{height:12px;background:#e5eaf1}.brand-preview{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e1e5eb;border-radius:10px;background:#f8fafc}.brand-preview img{width:42px;height:42px;object-fit:contain}.narrow{max-width:620px}.narrow form{background:#fff;padding:28px;border-radius:14px;box-shadow:0 14px 40px #17243a18}.narrow h1{text-align:center}@media(max-width:800px){.academy-shell{padding:22px 14px}.admin-nav{position:static;overflow-x:auto;flex-wrap:nowrap}.admin-nav a{white-space:nowrap}.academy-shell>h1{font-size:29px}}


/* Batch 42: Student Experience & Course Player */
.student-topbar{background:linear-gradient(120deg,#06172d,#0b315b);border-bottom:3px solid var(--gold);padding:12px max(20px,5vw);display:flex;align-items:center;justify-content:space-between;gap:24px;color:#fff}.student-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.student-brand img{width:54px;height:54px;object-fit:contain}.student-brand strong{display:block;letter-spacing:.04em}.student-brand small{display:block;color:#e3c56a;margin-top:3px}.student-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.student-links a{color:#eef4fb;text-decoration:none;padding:9px 12px;border-radius:8px;font-size:14px;font-weight:700}.student-links a:hover{background:#ffffff16}.student-links .student-signout{border:1px solid #ffffff30}.dashboard-hero{background:linear-gradient(135deg,#071a34,#0d3b6d);color:#fff;border-radius:18px;padding:30px 32px;margin:0 0 26px;box-shadow:0 16px 40px #071a3420;position:relative;overflow:hidden}.dashboard-hero:after{content:"V";position:absolute;right:24px;top:-40px;font:700 170px Georgia,serif;color:#ffffff08}.dashboard-hero .eyebrow{margin:0 0 8px}.dashboard-hero h1{font:700 36px Georgia,serif;margin:0 0 8px;color:#fff}.dashboard-hero p{margin:0;color:#d8e3f1}.student-section-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:28px 0 14px}.student-section-title h2{font:700 27px Georgia,serif;color:var(--navy);margin:0}.student-section-title p{margin:0;color:#667386}.student-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.student-course-card{background:#fff;border:1px solid #e2e7ee;border-radius:16px;overflow:hidden;box-shadow:0 8px 28px #17243a0e}.student-course-accent{height:7px;background:linear-gradient(90deg,var(--gold),#f0d176)}.student-course-body{padding:24px}.student-course-card h3{font:700 23px Georgia,serif;color:var(--navy);margin:0 0 9px}.student-course-meta{display:flex;justify-content:space-between;gap:12px;color:#657080;font-size:14px;margin:12px 0}.student-course-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.academy-button.secondary{background:#fff;color:var(--navy);border:1px solid #ccd5e1}.announcement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.announcement-card{background:#fff;border-left:4px solid var(--gold);border-radius:12px;padding:18px 20px;box-shadow:0 6px 20px #17243a0b}.announcement-card h3{margin:0 0 7px;color:var(--navy)}.course-player-head{background:linear-gradient(135deg,#071a34,#0c3767);color:#fff;border-radius:18px;padding:26px 28px;margin:20px 0 24px}.course-player-head h1{color:#fff!important;font-size:32px!important;margin:4px 0 8px!important}.course-player-head p{margin:0;color:#d6e2f0}.module-card{background:#fff;border:1px solid #e1e7ef;border-radius:15px;margin:16px 0;overflow:hidden;box-shadow:0 6px 22px #17243a0b}.module-title{margin:0;padding:18px 20px;background:#f0f4f9;color:var(--navy);font:700 20px Georgia,serif;border-bottom:1px solid #dfe6ef}.module-lessons{padding:0 20px}.lesson-row{padding:16px 2px}.lesson-row a{font-weight:700;color:#174b7d;text-decoration:none}.lesson-row a:hover{text-decoration:underline}.lesson-index{width:34px;height:34px;border-radius:50%;background:#eef2f7;color:#53647a;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.lesson-main{display:flex!important;flex-direction:row!important;align-items:center;gap:12px!important;flex:1}.lesson-copy{display:flex;flex-direction:column;gap:3px}.lesson-actions{display:flex;align-items:center;gap:10px}.catalog-empty{grid-column:1/-1;background:#fff;border:1px dashed #cbd4df;border-radius:14px;padding:38px;text-align:center;color:#667386}.catalog-empty strong{display:block;color:var(--navy);font-size:20px;margin-bottom:8px}.vista-public-brand{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none}.vista-public-brand img{width:150px;max-height:62px;object-fit:contain}.public-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:28px 7vw;background:#fff}.trust-item{text-align:center;padding:12px}.trust-item strong{display:block;color:var(--navy);font-size:17px}.trust-item span{font-size:13px;color:#667386}.hero .hero-points{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.hero .hero-points span{font-size:13px;padding:7px 10px;border:1px solid #ffffff30;border-radius:999px;background:#ffffff0c}.card{transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-3px);box-shadow:0 14px 34px #14203320}@media(max-width:800px){.student-topbar{align-items:flex-start;flex-direction:column}.student-links{width:100%;overflow-x:auto;flex-wrap:nowrap}.student-links a{white-space:nowrap}.student-course-grid,.announcement-grid{grid-template-columns:1fr}.dashboard-hero{padding:25px 22px}.dashboard-hero h1{font-size:30px}.lesson-row{flex-wrap:wrap}.lesson-actions{width:100%;padding-left:46px}.public-trust{grid-template-columns:1fr;padding:20px}.vista-public-brand img{width:125px}}

/* Batch 45: polished lesson, assessment, checkout and completion journey */
.lesson-page,.assessment-page{max-width:1000px}.lesson-hero,.assessment-hero{background:linear-gradient(135deg,#071a34,#0d3b6d);color:#fff;border-radius:18px;padding:28px 32px;margin:18px 0 22px;box-shadow:0 14px 38px #071a3420}.lesson-hero h1,.assessment-hero h1{font:700 34px Georgia,serif;color:#fff;margin:4px 0 10px}.lesson-meta{display:flex;gap:10px;flex-wrap:wrap}.lesson-meta span{padding:6px 10px;border-radius:999px;background:#ffffff12;border:1px solid #ffffff24;font-size:13px}.lesson-reading{background:#fff;border:1px solid #e1e7ef;border-radius:16px;padding:34px 38px;box-shadow:0 8px 28px #17243a0d;font-size:17px;line-height:1.8}.lesson-reading h2,.lesson-reading h3{font-family:Georgia,serif;color:var(--navy)}.lesson-complete{margin:20px 0;background:#fff;border-radius:14px;padding:20px;border:1px solid #e1e7ef}.assessment-hero p{color:#dce7f4}.assessment-form{counter-reset:q}.question{position:relative;padding:26px 26px 26px 64px;box-shadow:0 6px 20px #17243a0a}.question:before{counter-increment:q;content:counter(q);position:absolute;left:20px;top:22px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800}.answer-option{border:1px solid #e1e6ed;border-radius:9px;padding:11px 12px!important;margin:8px 0!important;background:#fafbfd}.answer-option:hover{border-color:#d0aa43;background:#fffdf6}.assessment-submit{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#fff;padding:18px;border-radius:12px;border:1px solid #e1e7ef}.assessment-submit span{font-size:13px;color:#667386}.checkout-page{max-width:1120px}.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.checkout-form fieldset{border:1px solid #dbe2eb;border-radius:10px;margin:22px 0;padding:18px}.checkout-form legend{font-weight:800;color:var(--navy)}.checkout-assurance{background:var(--navy);color:#fff;border-radius:14px;padding:24px;box-shadow:0 10px 30px #071a3420;position:sticky;top:22px}.checkout-assurance strong{font:700 22px Georgia,serif;color:#f0cc67}.checkout-assurance p{line-height:1.55;color:#dbe5f1}.checkout-assurance div{padding:10px 0;border-top:1px solid #ffffff18;font-size:14px}.payment-success-page{text-align:center;max-width:720px;background:#fff;margin-top:60px;margin-bottom:80px;border-radius:18px;box-shadow:0 14px 42px #17243a14}.success-mark{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#e8f6ec;color:#28713b;font-size:38px;font-weight:800}.branded-certificate{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff,#fbfcff)}.certificate-corner{position:absolute;width:100px;height:100px;border-color:var(--gold)}.certificate-corner.tl{left:14px;top:14px;border-left:3px solid var(--gold);border-top:3px solid var(--gold)}.certificate-corner.br{right:14px;bottom:14px;border-right:3px solid var(--gold);border-bottom:3px solid var(--gold)}@media(max-width:800px){.lesson-hero,.assessment-hero{padding:22px}.lesson-reading{padding:24px 20px}.question{padding:22px}.question:before{position:static;margin-bottom:12px}.checkout-layout{grid-template-columns:1fr}.checkout-assurance{position:static}}

/* Batch 46: VISTA Administration workspace */
.admin-page-head{display:flex;justify-content:space-between;gap:24px;align-items:center;background:linear-gradient(135deg,#071a34,#0c3767);color:#fff;border-radius:18px;padding:26px 30px;margin-bottom:18px;box-shadow:0 14px 36px #071a341c}.admin-page-head h1{color:#fff!important;margin:3px 0 5px!important;font:700 34px Georgia,serif}.admin-page-head p{margin:0;color:#dbe6f2}.admin-kicker{color:#e3c56a!important;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800}.admin-user-chip{min-width:170px;padding:11px 14px;border:1px solid #ffffff25;background:#ffffff0c;border-radius:11px;text-align:right}.admin-user-chip span,.admin-user-chip small{display:block}.admin-user-chip small{color:#e3c56a;margin-top:3px}.admin-nav-v2{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important;background:#fff!important;padding:14px!important;border:1px solid #e0e6ee!important;border-radius:14px!important;box-shadow:0 6px 22px #17243a0a!important;position:static!important}.admin-nav-group>span{display:block;padding:0 8px 7px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;color:#7b8797}.admin-nav-group>div{display:flex;gap:5px;flex-wrap:wrap}.admin-nav-v2 a{padding:7px 9px!important;border:0!important;border-radius:7px!important;color:#30445f!important;background:transparent!important;font-size:12px!important}.admin-nav-v2 a:hover,.admin-nav-v2 a.active{background:#071a34!important;color:#fff!important}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.admin-metric{background:#fff;border:1px solid #e0e6ee;border-radius:14px;padding:20px;box-shadow:0 6px 20px #17243a0a}.admin-metric small{display:block;text-transform:uppercase;letter-spacing:.08em;color:#758295;font-weight:800;font-size:10px}.admin-metric strong{display:block;color:#071a34;font:700 30px Georgia,serif;margin:8px 0 2px}.admin-metric a{color:#76570b;font-size:12px;font-weight:800;text-decoration:none}.admin-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.7fr);gap:20px;margin-top:20px}.admin-panel{background:#fff;border:1px solid #e0e6ee;border-radius:14px;padding:20px;box-shadow:0 6px 22px #17243a0a}.admin-panel h2{font:700 22px Georgia,serif;color:#071a34;margin:0 0 14px}.admin-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-quick-grid a{display:block;padding:14px;border:1px solid #e0e6ee;border-radius:10px;text-decoration:none;color:#173b64;font-weight:800;background:#fbfcfe}.admin-quick-grid a:hover{border-color:#cda434;background:#fffdf7}.status-badge{display:inline-block;padding:5px 8px;border-radius:999px;background:#edf1f6;color:#46566b;font-size:11px;font-weight:800;text-transform:capitalize}.status-badge.published,.status-badge.paid,.status-badge.active,.status-badge.issued,.status-badge.completed{background:#e7f5ea;color:#276238}.admin-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:18px 0}.admin-toolbar form{display:flex;gap:8px;flex:1}.admin-toolbar input{max-width:360px;padding:10px 12px;border:1px solid #ccd5e1;border-radius:8px}.admin-table-card{background:#fff;border:1px solid #e0e6ee;border-radius:14px;overflow:hidden;box-shadow:0 6px 22px #17243a0a}.admin-table-card .academy-table{margin:0}.admin-table-card .academy-table tr:last-child td{border-bottom:0}@media(max-width:950px){.admin-nav-v2{grid-template-columns:repeat(2,1fr)}.admin-dashboard-grid{grid-template-columns:repeat(2,1fr)}.admin-workspace{grid-template-columns:1fr}}@media(max-width:600px){.admin-page-head{align-items:flex-start;flex-direction:column;padding:22px}.admin-user-chip{text-align:left}.admin-nav-v2{grid-template-columns:1fr}.admin-dashboard-grid{grid-template-columns:1fr 1fr}.admin-quick-grid{grid-template-columns:1fr}.admin-toolbar{align-items:stretch;flex-direction:column}}

/* VISTA Batch 47 — Course Builder workspace */
.builder-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:24px;border-radius:18px;background:linear-gradient(135deg,#0b1f3a,#17375f);color:#fff;margin:20px 0}.builder-hero h1{margin:0 0 6px;color:#fff}.builder-hero p{margin:0;color:#d9e3ef}.builder-actions{display:flex;gap:8px;flex-wrap:wrap}.builder-actions .button{white-space:nowrap}.builder-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);gap:20px;align-items:start}.builder-panel{background:#fff;border:1px solid #dfe5ec;border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:0 8px 24px rgba(20,38,63,.06)}.builder-panel h2,.builder-panel h3{margin-top:0}.builder-kpis{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:10px;margin:14px 0 20px}.builder-kpi{background:#f6f8fb;border:1px solid #e4e9ef;border-radius:12px;padding:13px}.builder-kpi strong{display:block;font-size:20px;color:#0b1f3a}.builder-kpi span{font-size:12px;color:#657386}.builder-module{border:1px solid #dfe5ec;border-radius:14px;margin:12px 0;overflow:hidden;background:#fff}.builder-module-head{display:flex;justify-content:space-between;gap:15px;padding:15px 17px;background:#f7f9fc;border-bottom:1px solid #e5eaf0}.builder-module-head h3{margin:0}.builder-module-body{padding:10px 16px 15px}.builder-lesson{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0f4}.builder-lesson:last-child{border-bottom:0}.builder-order{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#edf2f7;font-weight:700;color:#34465d}.builder-badge{display:inline-block;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;background:#eef2f6;color:#42536a;margin-right:5px}.builder-badge.live{background:#e8f7ee;color:#21633c}.builder-badge.draft{background:#fff5df;color:#7a5612}.builder-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.builder-form-grid .wide{grid-column:1/-1}.builder-sticky{position:sticky;top:16px}.builder-checklist{list-style:none;padding:0;margin:0}.builder-checklist li{padding:9px 0;border-bottom:1px solid #edf0f4}.builder-checklist li:last-child{border-bottom:0}.builder-empty{padding:22px;text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b}.builder-step{display:flex;gap:12px;align-items:flex-start;margin:12px 0}.builder-step-num{flex:0 0 30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#0b1f3a;color:#fff;font-weight:700}.builder-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:16px 0}.builder-toolbar h2{margin:0}.builder-help{font-size:13px;color:#66758a}.builder-panel textarea{width:100%}.builder-panel input[type=text],.builder-panel input[type=number],.builder-panel input[type=url],.builder-panel select,.builder-panel textarea{box-sizing:border-box}@media(max-width:850px){.builder-grid{grid-template-columns:1fr}.builder-sticky{position:static}.builder-kpis{grid-template-columns:1fr 1fr}.builder-form-grid{grid-template-columns:1fr}.builder-form-grid .wide{grid-column:auto}.builder-hero{flex-direction:column}.builder-lesson{grid-template-columns:34px 1fr}.builder-lesson>div:last-child{grid-column:2}}

/* Batch 48 — LicenseHub + update availability */
.vista-update-available{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#8b6914;color:#fff!important;border:1px solid #c6a64b;border-radius:10px;padding:13px 18px;margin:14px 0;text-decoration:none;font-weight:800;box-shadow:0 5px 16px rgba(0,0,0,.12)}.vista-update-available[hidden]{display:none!important}.vista-update-available span{font-weight:600;opacity:.9}.license-lock{max-width:760px;margin:5vh auto}.license-logo{display:block;max-width:360px;width:72%;margin:0 auto 24px}.license-facts{display:grid;grid-template-columns:150px 1fr;gap:8px 16px;padding:16px;background:#f7f7f7;border-radius:10px}.license-facts dt{font-weight:700}.license-facts dd{margin:0;word-break:break-word}


/* VISTA 0.54 RC3 — professional interface normalization */
:root{--vista-shadow:0 12px 32px rgba(8,27,52,.10);--vista-border:#dfe6ef;--vista-bg:#f4f7fb}
body{background:var(--vista-bg);color:#13233a}header{box-shadow:0 1px 0 rgba(7,26,52,.08)}
.auth-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(145deg,#eef3f9 0%,#f8fafc 55%,#edf2f7 100%)}
.auth-top{min-height:88px;padding:12px clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--vista-border)}
.auth-brand img{display:block;max-height:62px;max-width:300px;object-fit:contain}.auth-back{color:#24415f;text-decoration:none;font-weight:700;font-size:14px}.auth-back:hover{text-decoration:underline}
.auth-wrap{flex:1;width:100%;display:grid;place-items:center;padding:48px 20px}.auth-card{width:min(100%,500px);background:#fff;border:1px solid var(--vista-border);border-radius:18px;padding:36px;box-shadow:var(--vista-shadow)}
.auth-intro{margin-bottom:26px}.auth-intro h1{font:700 38px Georgia,serif;color:#071a34;margin:5px 0 10px}.auth-intro p:last-child{color:#607087;line-height:1.55}.auth-form{display:grid;gap:17px}.auth-form label{display:grid;gap:7px;font-weight:800;color:#233a55;font-size:13px}.auth-form input{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;font:inherit}.auth-form input:focus{outline:3px solid rgba(203,161,46,.18);border-color:#b58b1f}.auth-submit{border:0;width:100%;margin-top:4px;cursor:pointer}.auth-links{text-align:center;margin-top:20px}.auth-links a{color:#244b73;font-weight:700}.auth-footer{text-align:center;padding:20px;background:#071a34;color:#dbe5ef;font-size:13px}
.admin-page-head{padding:20px 26px}.admin-brand-lockup{display:flex;align-items:center;gap:20px;min-width:0}.admin-brand-lockup img{width:84px;height:62px;object-fit:contain;background:#fff;border-radius:10px;padding:5px}.admin-page-head h1{font-size:30px!important}.admin-nav-v2{padding:16px 18px!important;gap:18px!important}.admin-nav-group>div{gap:4px 8px}.admin-nav-v2 a{font-weight:700!important}.admin-nav-group>span{color:#697a90}.admin-dashboard-grid{gap:14px}.admin-metric{transition:transform .15s ease,box-shadow .15s ease}.admin-metric:hover{transform:translateY(-1px);box-shadow:var(--vista-shadow)}
.course{background:#fff;border:1px solid var(--vista-border);border-radius:18px;box-shadow:var(--vista-shadow);margin-top:36px;margin-bottom:54px;padding:clamp(28px,5vw,54px)}.course .coursebox{border:1px solid var(--vista-border);box-shadow:none}.course>.primary{display:inline-flex;margin-top:22px}.course .note{display:none!important}
@media(max-width:700px){.auth-top{align-items:flex-start;gap:10px}.auth-brand img{max-width:220px}.auth-card{padding:26px 20px}.admin-brand-lockup img{width:62px;height:48px}.admin-page-head h1{font-size:26px!important}.admin-dashboard-grid{grid-template-columns:1fr}.course{margin:18px 12px 36px;padding:24px 18px}}
/* RC3 course-detail refinement */
.course-detail{max-width:1080px}.course-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.course-info-panel{background:#fff;border:1px solid var(--vista-border);border-radius:14px;padding:24px;margin:18px 0}.course-info-panel h2{font:700 24px Georgia,serif;color:var(--navy);margin:0 0 12px}.course-info-panel p,.course-info-panel li{line-height:1.65;color:#44546a}.course-info-panel ul{margin:0;padding-left:21px}.course-info-panel li{margin:8px 0}.enroll-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#071a34,#123d69);border-radius:16px;padding:24px;margin-top:24px;color:#fff}.enroll-panel>div{display:flex;flex-direction:column;gap:7px}.enroll-panel strong{font:700 30px Georgia,serif}.enroll-panel .badge{color:#f0cf6a}@media(max-width:760px){.course-info-grid{grid-template-columns:1fr}.enroll-panel{align-items:stretch;flex-direction:column}.enroll-panel .primary{text-align:center;justify-content:center}}

/* RC4 unified professional navigation and branding */
.vista-topnav{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#06172d,#0b315d);padding:10px 14px;border-radius:14px;box-shadow:0 10px 28px #06172d22;margin:16px 0 24px;color:#fff;position:relative;z-index:30}.vista-navbrand{color:#fff;text-decoration:none;border-right:1px solid #ffffff25;padding:4px 18px 4px 6px;display:grid}.vista-navbrand strong{font-size:16px;letter-spacing:.08em}.vista-navbrand small{font-size:9px;color:var(--gold);font-weight:800;letter-spacing:.12em}.vista-navlinks{display:flex;align-items:center;gap:5px;flex:1}.vista-navdrop{position:relative}.vista-navdrop summary{list-style:none;cursor:pointer;padding:10px 12px;border-radius:8px;font-weight:750;font-size:13px}.vista-navdrop summary::-webkit-details-marker{display:none}.vista-navdrop summary:after{content:' ▾';color:var(--gold)}.vista-navdrop summary.active,.vista-navdrop summary:hover{background:#ffffff12}.vista-navmenu{display:none;position:absolute;top:44px;left:0;min-width:210px;background:#fff;padding:8px;border-radius:10px;box-shadow:0 16px 38px #06172d35;border:1px solid #dce3ec}.vista-navdrop[open] .vista-navmenu{display:grid}.vista-navmenu a{padding:10px 12px;color:#12233d;text-decoration:none;border-radius:7px;font-size:13px}.vista-navmenu a:hover,.vista-navmenu a.active{background:#edf3fa;color:#071c37}.vista-signout{margin-left:auto;color:#fff;text-decoration:none;border:1px solid #ffffff2d;padding:9px 13px;border-radius:8px;font-weight:700;font-size:13px}.vista-menu-toggle{display:none}.about-hero{display:grid;grid-template-columns:minmax(260px,430px) 1fr;gap:46px;align-items:center;background:#fff;border-radius:18px;padding:42px;box-shadow:0 12px 38px #17243a12;border-top:5px solid var(--gold)}.about-hero img{width:100%;max-height:240px;object-fit:contain}.about-badge{display:inline-block;background:var(--navy);color:#fff;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800}.about-powered{border-top:1px solid #e2e7ee;padding-top:18px}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.about-grid article{background:#fff;border-radius:14px;padding:22px;border:1px solid #e2e7ee}.academy-shell>section,.academy-shell>.admin-module{scroll-margin-top:90px}@media(max-width:850px){.vista-topnav{align-items:stretch;flex-wrap:wrap}.vista-menu-toggle{display:block;margin-left:auto}.vista-navlinks{display:none;flex-basis:100%;flex-direction:column;align-items:stretch}.vista-navlinks.open{display:flex}.vista-navdrop summary{width:100%}.vista-navmenu{position:static;box-shadow:none;margin:4px 0;background:#0d2949;border-color:#ffffff18}.vista-navmenu a{color:#fff}.vista-signout{margin-left:0}.about-hero,.about-grid{grid-template-columns:1fr}}

/* RC4.1 navigation polish */
.vista-overview{color:#fff;text-decoration:none;padding:10px 12px;border-radius:8px;font-weight:750;font-size:13px}.vista-overview:hover,.vista-overview.active{background:#ffffff12;color:#f0c65c}.vista-menu-toggle{margin-left:auto;background:transparent!important;border:1px solid #ffffff2d!important;padding:8px 11px!important}.vista-menu-toggle span{font-size:17px}.vista-navdrop[open]>summary{background:#ffffff12}.vista-navmenu{z-index:100}
@media(min-width:851px){.vista-menu-toggle{display:none!important}}
/* RC4.2 — branded License Status */
.license-hero{display:flex;align-items:center;gap:24px;padding:28px 32px;margin:28px 0 18px;background:linear-gradient(135deg,#061d3b,#103f70);color:#fff;border-radius:20px;box-shadow:0 14px 34px rgba(4,28,57,.15)}.license-hero img{width:180px;max-height:92px;object-fit:contain;background:#fff;border-radius:12px;padding:8px}.license-hero h1{margin:2px 0 4px;font-size:34px}.license-hero p{margin:0}.license-status-card{background:#fff;border:1px solid #dbe4ee;border-radius:18px;padding:28px;margin:20px 0;box-shadow:0 12px 34px rgba(10,35,65,.08)}.license-status-main{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid #e3eaf2}.license-status-main h2{font-size:30px;margin:3px 0 8px;color:#08254a}.license-status-main p{margin:0;color:#536579}.license-status-badge{display:inline-flex;align-items:center;gap:9px;border-radius:999px;padding:10px 16px;font-weight:800;white-space:nowrap}.license-status-badge i{width:10px;height:10px;border-radius:50%;background:currentColor}.license-status-badge.good{background:#e8f7ed;color:#176b37}.license-status-badge.warn{background:#fff4d8;color:#8a6100}.license-status-badge.bad{background:#fdeaea;color:#a4262c}.license-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0}.license-grid article{border:1px solid #e0e7ef;background:#f8fafc;border-radius:13px;padding:17px;min-width:0}.license-grid small{display:block;font-size:11px;letter-spacing:.11em;color:#6a7b8f;font-weight:800;margin-bottom:7px}.license-grid strong{display:block;color:#08254a;overflow-wrap:anywhere}.license-grid span{display:block;color:#6a7b8f;font-size:12px;margin-top:5px}.license-identifiers{border:1px solid #e0e7ef;border-radius:13px;overflow:hidden;margin-bottom:22px}.license-identifiers>div{display:grid;grid-template-columns:150px 1fr;gap:15px;padding:11px 15px;border-bottom:1px solid #e8edf3}.license-identifiers>div:last-child{border-bottom:0}.license-identifiers span{font-weight:700;color:#536579}.license-identifiers code{overflow-wrap:anywhere}.license-recovery{border-top:1px solid #e3eaf2;padding-top:20px}.license-footer{display:flex;justify-content:space-between;gap:15px;margin-top:22px;padding-top:18px;border-top:1px solid #e3eaf2;color:#617286;font-size:12px}.license-footer strong{color:#08254a}@media(max-width:850px){.license-grid{grid-template-columns:1fr 1fr}.license-status-main,.license-footer{flex-direction:column}.license-hero{padding:22px}.license-hero img{width:130px}}@media(max-width:520px){.license-grid{grid-template-columns:1fr}.license-identifiers>div{grid-template-columns:1fr;gap:4px}.license-hero{flex-direction:column;align-items:flex-start}}

/* RC5 — unified professional density, branding, forms, tables and page rhythm */
:root{--vista-surface:#fff;--vista-soft:#f7f9fc;--vista-border:#dbe3ec;--vista-muted:#617187;--vista-shadow:0 10px 30px rgba(7,26,52,.07)}
body{font-size:14px;line-height:1.45;background:#f3f6fa}.academy-shell{max-width:1220px;padding:22px 22px 44px}.academy-shell>h1{margin:0 0 6px;font-size:30px}.academy-shell>p:first-of-type{margin-top:4px;color:var(--vista-muted)}
.admin-page-head{padding:16px 22px!important;border-radius:18px!important;margin:18px 0 12px!important;min-height:104px}.admin-brand-lockup{gap:16px}.admin-brand-lockup img{width:72px;height:58px}.admin-page-head h1{font-size:28px!important;margin:2px 0!important}.admin-page-head p{margin:2px 0!important}.vista-topnav{margin:12px 0 18px;padding:8px 12px!important;border-radius:12px;min-height:58px}.vista-navdrop summary,.vista-overview{padding:9px 11px}.vista-navmenu{top:40px}.admin-stats{margin:16px 0;gap:12px}.stat,.admin-metric{padding:15px!important;border-radius:11px!important}.stat strong,.admin-metric strong{font-size:24px!important}
.admin-module,.course-info-panel,.checkout-form,.grading-card,.student-note,.license-status-card{border-color:var(--vista-border)!important;box-shadow:var(--vista-shadow);border-radius:14px!important}.admin-module{padding:18px;margin:14px 0}.admin-module h2,.admin-module h3{margin-top:0;color:#09284d}.academy-form{gap:12px;max-width:none}.academy-form label{gap:5px;margin:0;font-size:13px;color:#18324f}.academy-form input,.academy-form select,.academy-form textarea,.academy-shell input,.academy-shell select,.academy-shell textarea{border:1px solid #cbd6e2;border-radius:8px;padding:10px 12px;background:#fff;min-height:40px;transition:border-color .15s,box-shadow .15s}.academy-form textarea,.academy-shell textarea{line-height:1.45}.academy-form input:focus,.academy-form select:focus,.academy-form textarea:focus,.academy-shell input:focus,.academy-shell select:focus,.academy-shell textarea:focus{outline:none;border-color:#9a761b;box-shadow:0 0 0 3px rgba(205,164,52,.14)}.academy-form fieldset{padding:14px;border-color:var(--vista-border);background:#fbfcfe}.academy-form legend{color:#09284d}
.button,.academy-button,.academy-shell button,.primary,.secondary{min-height:38px;padding:9px 14px;border-radius:8px;font-weight:750;box-shadow:none}.button:hover,.academy-button:hover,.academy-shell button:hover{transform:translateY(-1px)}.admin-actions{gap:8px}.admin-actions form,.inline-form{gap:7px}
.table-wrap{background:#fff;border:1px solid var(--vista-border);border-radius:12px;overflow:auto;box-shadow:0 6px 20px rgba(7,26,52,.04)}.academy-table{background:#fff}.academy-table th{padding:10px 12px;background:#f5f8fb;color:#193653;font-size:11px;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid #dbe3ec}.academy-table td{padding:11px 12px}.academy-table tbody tr:hover{background:#f9fbfd}
.course-card{padding:16px;margin:12px 0;border-color:var(--vista-border);box-shadow:0 5px 16px rgba(7,26,52,.04)}.lesson-row{padding:10px 0}.question{padding:18px;margin:12px 0}.progress-summary{gap:10px;margin:16px 0}.status-pill{padding:4px 8px}.success,.form-errors,.assessment-result{border-radius:9px}
.course{margin-top:24px;margin-bottom:40px;padding:clamp(24px,4vw,44px)}.course h1{font-size:44px}.section{padding:52px 6vw}.grid{gap:18px}.card{padding:22px}.card h3{font-size:23px}.coursebox{margin:24px 0;padding:18px}.about-hero{padding:30px;gap:32px}.about-grid{gap:14px}.about-grid article{padding:18px}.license-hero{padding:22px 26px;margin:18px 0 14px}.license-status-card{padding:22px;margin:14px 0}.license-grid{gap:10px;margin:18px 0}.license-grid article{padding:14px}
@media(max-width:850px){.academy-shell{padding:14px 12px 34px}.admin-page-head{margin-top:10px!important;padding:14px!important}.vista-topnav{margin-top:9px}.course{margin:14px 8px 30px}.academy-table th,.academy-table td{padding:9px 10px}.about-hero{padding:22px}}

/* RC5.1 — full-system professional layout normalization */
html{font-size:16px}body{min-width:0}
.academy-shell{width:min(1440px,calc(100% - 48px))!important;max-width:1440px!important;margin:0 auto!important;padding:24px 28px 48px!important}
.academy-shell.narrow{width:min(760px,calc(100% - 32px))!important;max-width:760px!important}
.academy-shell input:not([type=checkbox]):not([type=radio]),.academy-shell select,.academy-shell textarea{max-width:none!important;width:100%!important;font-size:14px!important}
.academy-form{width:100%!important;max-width:none!important;padding:22px!important;border:1px solid #dce4ee!important;border-top:3px solid var(--gold)!important;box-shadow:0 8px 24px rgba(7,26,52,.06)!important}
.builder-grid{grid-template-columns:minmax(0,2fr) minmax(300px,.72fr)!important;gap:22px!important}.builder-panel{padding:22px!important}.builder-form-grid{gap:16px 18px!important}.builder-sticky{top:14px}
.admin-page-head{width:100%!important;background:linear-gradient(135deg,#071a34,#0d3b6d)!important;color:#fff!important;border:1px solid #1d4a76!important;border-top:4px solid var(--gold)!important;box-shadow:0 10px 28px rgba(7,26,52,.14)!important}.admin-page-head h1{color:#fff!important;font-family:Georgia,serif!important}.admin-page-head p{color:#dce7f3!important}.admin-kicker{color:#f1ca58!important}.admin-user-chip{background:#ffffff0d!important;border-color:#ffffff26!important}.admin-user-chip span{color:#fff!important}.admin-user-chip small{color:#f1ca58!important}
.vista-topnav{width:100%!important;margin:12px 0 20px!important;border-bottom:2px solid var(--gold)!important}.vista-navlinks{min-width:0}.vista-navmenu{min-width:230px!important}
.academy-shell>h1:not(.course h1){font-family:Georgia,serif!important;font-size:30px!important;color:#08284d!important;padding:18px 22px!important;margin:0 0 12px!important;background:#fff!important;border:1px solid #dce4ee!important;border-left:5px solid var(--gold)!important;border-radius:12px!important;box-shadow:0 7px 22px rgba(7,26,52,.05)!important}
.academy-shell>h2{font-family:Georgia,serif;color:#08284d;margin:24px 0 10px}.academy-shell>p{line-height:1.6}
.admin-module,.builder-panel,.course-info-panel,.grading-card,.student-note,.checkout-form{border-top:3px solid #e1bd55!important}
.academy-table{width:100%!important;border:1px solid #dce4ee!important;box-shadow:0 6px 20px rgba(7,26,52,.05)!important}.academy-table th{background:#eaf0f6!important;color:#173552!important}.academy-table tbody tr:nth-child(even){background:#fbfcfe}
.button,.academy-button,.academy-shell button{letter-spacing:.01em}.academy-shell button,.academy-button,.button{background:#08284d;color:#fff}.academy-shell button:hover,.academy-button:hover,.button:hover{background:#0d3b6d;filter:none!important}.primary{background:var(--gold)!important;color:#071a34!important}
.admin-stats,.builder-kpis,.progress-summary{gap:14px!important}.stat,.admin-metric,.builder-kpi{border:1px solid #dce4ee!important;border-top:3px solid var(--gold)!important;background:#fff!important;box-shadow:0 5px 18px rgba(7,26,52,.045)!important}
.student-topbar{border-bottom:4px solid var(--gold)!important;box-shadow:0 5px 18px rgba(7,26,52,.15)!important}.student-brand strong{font-family:Georgia,serif;font-size:18px}.student-nav{border-bottom:2px solid var(--gold)!important;box-shadow:0 6px 18px rgba(7,26,52,.08)!important}.dashboard-hero,.course-player-head,.lesson-hero,.assessment-hero{border-top:4px solid var(--gold)!important}
.lesson-reading{max-width:none!important}.course-detail,.lesson-page,.assessment-page,.checkout-page{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important}.student-course-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important}
@media(max-width:900px){.academy-shell,.course-detail,.lesson-page,.assessment-page,.checkout-page{width:calc(100% - 24px)!important;padding:14px 12px 34px!important}.builder-grid{grid-template-columns:1fr!important}.admin-page-head{padding:16px!important}.academy-shell>h1:not(.course h1){font-size:26px!important}.academy-form{padding:16px!important}}
@media(max-width:600px){.academy-shell{width:100%!important}.builder-form-grid{grid-template-columns:1fr!important}.student-course-grid{grid-template-columns:1fr!important}}


/* RC5.2 — system-wide tab navigation: every destination is a visible tab */
.vista-topnav,.vista-navdrop,.vista-navmenu,.vista-menu-toggle{display:none!important}
.vista-tabnav{width:100%;margin:12px 0 20px;position:relative;z-index:25}
.vista-tabbar{display:flex;align-items:stretch;gap:0;background:linear-gradient(135deg,#06172d,#0b315d);border-radius:13px;border-bottom:3px solid var(--gold);box-shadow:0 9px 25px rgba(7,26,52,.14);overflow:hidden;min-height:58px}
.vista-tabnav .vista-navbrand{flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;padding:8px 18px;margin:0;border-right:1px solid rgba(255,255,255,.15);border-radius:0}
.vista-tabs-scroll{display:flex;align-items:center;gap:4px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;padding:8px 10px;flex:1;white-space:nowrap}
.vista-tab{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border-radius:8px;color:#eaf2fb!important;text-decoration:none!important;font-size:12.5px;font-weight:750;white-space:nowrap;border:1px solid transparent;transition:.15s ease}
.vista-tab:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.12);color:#fff!important}
.vista-tab.active{background:#fff;color:#08284d!important;border-color:#fff;box-shadow:0 3px 10px rgba(0,0,0,.14);position:relative}
.vista-tab.active:after{content:'';position:absolute;left:22%;right:22%;bottom:3px;height:2px;border-radius:2px;background:var(--gold)}
.vista-tab-separator{width:1px;height:25px;background:rgba(255,255,255,.16);flex:0 0 1px;margin:0 2px}
.vista-tabnav .vista-signout{flex:0 0 auto;align-self:center;margin:0 12px 0 4px}
.student-nav{padding:7px 9px!important;gap:5px!important;overflow-x:auto;flex-wrap:nowrap!important;white-space:nowrap;border-radius:12px!important}
.student-nav a{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border-radius:8px;text-decoration:none!important;font-weight:750;border:1px solid transparent}
.student-nav a:hover,.student-nav a[aria-current="page"],.student-nav a.active{background:#fff;color:#08284d!important;border-color:#fff}
header nav{display:flex;gap:5px;align-items:center;flex-wrap:wrap}header nav a{padding:8px 12px;border-radius:8px;text-decoration:none}header nav a:hover{background:rgba(255,255,255,.10)}
@media(max-width:900px){.vista-tabbar{border-radius:10px}.vista-tabnav .vista-navbrand{padding:8px 12px}.vista-tabnav .vista-navbrand strong{font-size:13px}.vista-tabnav .vista-navbrand small{font-size:7px}.vista-tab{padding:8px 10px;font-size:12px}.vista-tabnav .vista-signout{margin-right:8px;padding:8px 10px}}
@media(max-width:600px){.vista-tabbar{flex-wrap:wrap}.vista-tabnav .vista-navbrand{flex:1}.vista-tabs-scroll{order:3;flex-basis:100%;border-top:1px solid rgba(255,255,255,.12)}.vista-tabnav .vista-signout{margin-left:auto}.vista-tab-separator{display:none}.student-nav{margin-left:0;margin-right:0}}
/* RC5.3 Backup & Recovery professional console */
.backup-page{max-width:1280px!important}.backup-hero{background:linear-gradient(135deg,#082d58,#0b3d73);border-top:4px solid #d8a517;border-radius:16px;color:#fff;padding:22px 26px;margin:0 0 12px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 12px 30px rgba(8,45,88,.12)}.backup-hero h1{color:#fff!important;margin:2px 0 3px;font-size:30px}.backup-hero p{margin:0;color:#dbe8f6}.backup-eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em;color:#f3c94f}.backup-health{display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:12px 16px;border-radius:12px}.backup-health small{display:block;color:#dbe8f6;margin-top:2px}.backup-health-dot{width:10px;height:10px;border-radius:50%;background:#37c978;box-shadow:0 0 0 4px rgba(55,201,120,.15)}.backup-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.backup-summary-grid article,.backup-card{background:#fff;border:1px solid #dce5ef;border-top:3px solid #d8a517;border-radius:13px;box-shadow:0 8px 22px rgba(8,45,88,.06)}.backup-summary-grid article{padding:16px}.backup-summary-grid span{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:#65758a}.backup-summary-grid strong{display:block;color:#082d58;font-size:17px;margin:5px 0}.backup-summary-grid small{color:#65758a}.backup-card{padding:20px;margin:14px 0}.backup-card-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:15px}.backup-card h2{margin:0;color:#082d58}.backup-card-head p{margin:4px 0 0;color:#617086}.backup-actions{display:flex;gap:9px;flex-wrap:wrap}.backup-actions form{margin:0}.backup-primary,.backup-secondary{border:0;border-radius:8px;padding:10px 15px;font-weight:750;cursor:pointer}.backup-primary{background:#082d58;color:#fff}.backup-secondary{background:#edf3f8;color:#082d58;border:1px solid #c9d8e6}.backup-pill{background:#fff6d8;color:#765800;border:1px solid #e8cc69;border-radius:999px;padding:6px 11px;font-weight:800}.backup-schedule{display:grid;gap:11px}.backup-schedule>label{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #dce5ef;border-radius:10px;background:#f9fbfd}.backup-schedule input[type=checkbox]{width:20px;height:20px}.backup-schedule label small{display:block;color:#68788b;margin-top:2px}.backup-retention,.backup-safeguard{display:flex;gap:10px;padding:12px 14px;border-radius:9px;background:#f4f7fa;color:#536579}.backup-retention strong,.backup-safeguard strong{color:#082d58;white-space:nowrap}.backup-table-wrap{overflow:auto}.backup-status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#edf3f8}.backup-status-complete,.backup-status-restored{background:#e7f7ee;color:#17683c}.restore-confirm{max-width:105px!important;display:inline-block!important}.backup-modal[hidden]{display:none}.backup-modal{position:fixed;inset:0;background:rgba(3,20,39,.72);z-index:99999;display:grid;place-items:center;padding:20px}.backup-modal-card{width:min(560px,95vw);background:#fff;border-radius:18px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.3);border-top:5px solid #d8a517}.backup-modal-brand{display:flex;align-items:baseline;gap:8px;color:#082d58;font-weight:900;letter-spacing:.12em}.backup-modal-brand small{color:#b18300;font-size:9px}.backup-modal-card h2{color:#082d58;margin:12px 0 4px}.backup-modal-card p{color:#65758a}.backup-progress{height:16px;background:#e7edf3;border-radius:999px;overflow:hidden;margin-top:20px}.backup-progress>div{height:100%;width:0;background:linear-gradient(90deg,#0b3d73,#d8a517);transition:width .25s ease}.backup-percent{text-align:right;color:#082d58;font-weight:900;font-size:20px;margin:7px 0}.backup-stage-list{min-height:28px;padding:10px 12px;background:#f5f8fb;border-radius:8px;color:#40536a}.backup-result{margin:14px 0;color:#17683c}.backup-result.is-error{color:#a41e1e}.backup-modal-open{overflow:hidden}@media(max-width:800px){.backup-summary-grid{grid-template-columns:1fr 1fr}.backup-hero{align-items:flex-start;gap:14px;flex-direction:column}}@media(max-width:520px){.backup-summary-grid{grid-template-columns:1fr}.backup-card-head,.backup-retention,.backup-safeguard{align-items:flex-start;flex-direction:column}}

/* RC5.4 grouped visible-tab navigation + backup actions */
.vista-grouped-nav .vista-tabs-scroll{align-items:stretch;gap:8px;padding:7px 10px}.vista-navgroup{display:flex;flex-direction:column;justify-content:center;flex:0 0 auto;padding:2px 7px 5px;border-left:1px solid rgba(255,255,255,.14)}.vista-navgroup:first-child{border-left:0}.vista-navgroup-label{display:block;padding:0 5px 3px;font-size:8px;line-height:1;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:#e4b72d}.vista-navgroup-tabs{display:flex;align-items:center;gap:3px}.vista-grouped-nav .vista-tab{min-height:31px;padding:6px 9px;font-size:11.5px}.vista-grouped-nav .vista-tab.active{background:#fff;color:#08284d!important}.backup-delete{border:1px solid #e3b6b6;background:#fff5f5;color:#9c2424;border-radius:7px;padding:8px 11px;font-weight:800;cursor:pointer}.backup-delete:hover{background:#9c2424;color:#fff}.backup-table-wrap form{margin:0}.backup-table-wrap td{vertical-align:middle}@media(max-width:700px){.vista-navgroup{padding-left:5px;padding-right:5px}.vista-navgroup-label{font-size:7px}.vista-grouped-nav .vista-tab{font-size:11px;padding:6px 8px}}

/* RC5.5 public academy, course banners, contact and grouped public navigation */
.public-course-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-width:1320px;margin:0 auto}.public-course-card{padding:0;overflow:hidden;display:flex;flex-direction:column;min-width:0}.course-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.course-card-body .meta{margin-top:auto}.course-banner-image,.course-banner-default{height:155px;background-size:cover;background-position:center}.course-banner-default{padding:22px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(135deg,#071a34,#12497d);position:relative}.course-banner-default:after{content:"V";position:absolute;right:12px;top:-22px;font:700 130px Georgia,serif;color:#ffffff0a}.course-banner-default span{font-size:10px;letter-spacing:.13em;color:#e4c257;font-weight:800;z-index:1}.course-banner-default strong{font:700 19px Georgia,serif;margin-top:8px;z-index:1}.public-menu{position:relative}.public-menu button{background:transparent;border:0;color:#fff;font:inherit;font-weight:700;padding:8px 12px;cursor:pointer}.public-dropdown{display:none;position:absolute;top:100%;left:0;z-index:50;background:#fff;border:1px solid #dce3ec;border-top:3px solid var(--gold);border-radius:0 0 10px 10px;box-shadow:0 15px 35px #071a3430;min-width:320px;padding:8px}.public-dropdown a,.public-dropdown span{display:block!important;color:var(--navy)!important;padding:11px 12px!important;border-radius:6px;font-size:13px}.public-dropdown a:hover{background:#f1f5f9}.public-menu:hover .public-dropdown,.public-menu:focus-within .public-dropdown{display:block}.approval-band{max-width:1180px;margin:34px auto 0;background:#fff;border:1px solid #dbe2eb;border-top:4px solid var(--gold);border-radius:14px;padding:25px 30px;display:flex;align-items:center;gap:24px;box-shadow:0 8px 28px #071a340d}.approval-band h2{font:700 27px Georgia,serif;color:var(--navy);margin:2px 0 7px}.approval-band p{margin:0;line-height:1.55}.approval-seal{width:72px;height:72px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;flex:0 0 auto;font:700 22px Georgia,serif;color:var(--navy);background:#f9f5e8}.band-link{margin-top:16px;background:#fff}.course-detail-banner{height:270px;border-radius:16px;background-size:cover;background-position:center;margin:0 0 26px;box-shadow:0 12px 32px #071a3420}.course-detail-banner-default{padding:32px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(135deg,#071a34,#15578f);color:#fff}.course-detail-banner-default span{color:#e7c65f;font-weight:800;letter-spacing:.12em}.course-detail-banner-default strong{font:700 32px Georgia,serif;margin-top:8px}.contact-shell{max-width:1180px;margin:0 auto;padding:48px 24px 80px}.contact-hero{text-align:center;max-width:760px;margin:0 auto 34px}.contact-hero h1{font:700 44px Georgia,serif;color:var(--navy);margin:8px 0 12px}.contact-hero p{font-size:17px;line-height:1.6}.contact-grid,.contact-admin-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px}.contact-card,.admin-card{background:#fff;border:1px solid #dce3ec;border-top:3px solid var(--gold);border-radius:14px;padding:28px;box-shadow:0 10px 30px #071a340d}.contact-card h2,.admin-card h2{font:700 25px Georgia,serif;color:var(--navy);margin-top:0}.contact-detail{padding:17px 0;border-bottom:1px solid #e5e9ef}.contact-detail strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#6a7685;margin-bottom:5px}.contact-detail a{font-weight:800;color:#123f6c;text-decoration:none}.contact-security,.security-note{margin-top:24px;padding:17px;background:#f1f5f9;border-radius:10px}.contact-security strong,.contact-security span{display:block}.contact-security span{font-size:13px;color:#667386;margin-top:5px}.public-contact-form{display:grid;gap:15px}.public-contact-form label{font-weight:700;color:var(--navy)}.public-contact-form input,.public-contact-form select,.public-contact-form textarea{width:100%;margin-top:6px;border:1px solid #cbd5e1;border-radius:8px;padding:12px;font:inherit}.public-contact-form button{background:var(--navy);color:#fff;border:0;border-radius:8px;padding:13px 20px;font-weight:800;cursor:pointer}.setup-steps{line-height:1.7;padding-left:22px}.course-banner-admin img{max-width:100%;max-height:220px;border-radius:10px;display:block;margin:8px 0}.vista-grouped-nav .vista-navgroup{border-right:1px solid rgba(255,255,255,.16);padding-right:8px;margin-right:4px}.vista-navgroup-label{font-size:9px!important;letter-spacing:.12em!important;color:#d8b94c!important;text-transform:uppercase!important;padding:0 7px!important}.vista-navgroup-tabs{gap:2px!important}.vista-tab{padding:8px 10px!important;font-size:12px!important}.vista-tab.active{background:#ffffff15!important;box-shadow:inset 0 -2px 0 var(--gold)}
@media(max-width:1100px){.public-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.public-course-grid,.contact-grid,.contact-admin-grid{grid-template-columns:1fr}.approval-band{margin:22px 18px 0;align-items:flex-start}.public-nav>a:not(.login),.public-menu{display:none}.course-detail-banner{height:190px}.contact-hero h1{font-size:36px}}@media(max-width:560px){.public-course-grid{grid-template-columns:1fr}}

/* RC5.6 professional dropdown administration navigation */
.vista-dropdown-nav{display:flex;align-items:stretch;gap:0;background:#082d57;border-bottom:2px solid var(--gold);border-radius:12px;box-shadow:0 10px 26px #071a3420;margin:12px 0 18px;min-height:62px;position:relative;z-index:40}.vista-dropdown-nav .vista-navbrand{min-width:125px;display:flex;flex-direction:column;justify-content:center;padding:10px 16px;color:#fff;text-decoration:none;border-right:1px solid #ffffff20}.vista-dropdown-nav .vista-navbrand small{color:var(--gold);font-size:9px;letter-spacing:.12em}.vista-mainmenus{display:flex;align-items:stretch;flex:1;min-width:0}.vista-mainlink,.vista-dd-button{height:100%;display:flex;align-items:center;gap:7px;padding:0 17px;border:0;background:transparent;color:#fff;text-decoration:none;font-weight:800;font-size:13px;cursor:pointer;white-space:nowrap}.vista-mainlink:hover,.vista-dd-button:hover,.vista-mainlink.active,.vista-dd-button.active{background:#ffffff12;color:#f0ca4c}.vista-dd{position:relative}.vista-dd-menu{display:none;position:absolute;left:0;top:100%;min-width:230px;background:#fff;border:1px solid #d9e1eb;border-top:3px solid var(--gold);border-radius:0 0 10px 10px;box-shadow:0 16px 34px #071a3435;padding:7px;z-index:100}.vista-dd:hover .vista-dd-menu,.vista-dd:focus-within .vista-dd-menu{display:block}.vista-dd-menu a{display:block;padding:10px 12px;border-radius:6px;color:#0a315c;text-decoration:none;font-size:13px;font-weight:700}.vista-dd-menu a:hover,.vista-dd-menu a.active{background:#edf3f9;color:#8a6500}.vista-dropdown-nav .vista-signout{align-self:center;margin:8px 10px;padding:10px 14px}.backup-version{white-space:nowrap;font-weight:700;color:#294d72}@media(max-width:900px){.vista-dropdown-nav{overflow:visible}.vista-mainmenus{overflow:visible}.vista-mainlink,.vista-dd-button{padding:0 10px;font-size:12px}.vista-dropdown-nav .vista-navbrand{min-width:105px;padding:8px 10px}}

/* RC5.7 — system-wide professional controls */
.academy-form label:has(> input[type="checkbox"]),.signature-preview label:has(> input[type="checkbox"]),.course-banner-admin label:has(> input[type="checkbox"]){display:flex;align-items:center;gap:11px;font-weight:700;color:var(--navy);line-height:1.35;padding:8px 0}
input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:22px!important;height:22px!important;min-width:22px;margin:0!important;border:1.5px solid #9aa9bb!important;border-radius:6px!important;background:#fff!important;display:inline-grid!important;place-content:center;cursor:pointer;box-shadow:inset 0 1px 2px #071a3408;vertical-align:middle}
input[type="checkbox"]:before{content:"";width:10px;height:6px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(-45deg) scale(0);margin-top:-2px;transition:transform .12s ease}
input[type="checkbox"]:checked{background:#0d4f8b!important;border-color:#0d4f8b!important;box-shadow:0 0 0 3px #0d4f8b18}
input[type="checkbox"]:checked:before{transform:rotate(-45deg) scale(1)}input[type="checkbox"]:focus-visible{outline:3px solid #d8aa2b55;outline-offset:2px}
.builder-checklist{list-style:none;padding:0;margin:14px 0}.builder-checklist li{position:relative;padding:10px 10px 10px 38px;margin:6px 0;border-radius:8px;background:#f6f8fb}.builder-checklist li:before{content:"✓";position:absolute;left:10px;top:8px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#e7f6ed;color:#15733b;font-weight:900;font-size:12px}
.approval-band.approval-premium{position:relative;overflow:hidden;padding:30px 34px;border-top-width:5px;background:linear-gradient(120deg,#fff 0%,#fff 72%,#f6f1df 100%)}.approval-premium:after{content:"NEW YORK";position:absolute;right:-10px;bottom:-22px;font:800 66px Georgia,serif;color:#0a315708;letter-spacing:.04em}.approval-credential{display:flex;align-items:center;gap:12px;margin-top:13px;flex-wrap:wrap}.approval-credential span{display:inline-flex;align-items:center;gap:7px;border:1px solid #e1c05a;background:#fffaf0;color:#755700;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800}.approval-credential span:before{content:"✓";display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#d7a91e;color:#071a34;font-size:11px}.approval-band .approval-seal{width:86px;height:86px;border:3px double var(--gold);box-shadow:0 0 0 6px #f9f3df}

/* RC5.8 public/mobile design studio, folder tabs and enhanced backup telemetry */
.folder-panel{overflow:hidden}.folder-tabs{display:flex;gap:4px;align-items:flex-end;border-bottom:2px solid #d6dee8;margin:-1px -1px 22px;padding:14px 16px 0;background:#f5f7fa;overflow-x:auto}.folder-tabs button{border:1px solid #cbd5e1;border-bottom:0;background:#e8eef5;color:#183b61;padding:11px 18px;border-radius:9px 9px 0 0;font-weight:800;white-space:nowrap;cursor:pointer}.folder-tabs button.active{background:#fff;color:var(--navy);position:relative;top:2px;border-top:3px solid var(--gold)}.folder-pane{display:none}.folder-pane.active{display:block}.setting-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.setting-grid input[type=color]{height:54px;padding:5px}.public-mobile-menu,.mobile-student-access{display:none}.backup-live-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.backup-live-stats span{background:#f4f7fa;border-radius:8px;padding:10px;font-size:11px;color:#65758a}.backup-live-stats strong{display:block;color:#082d58;font-size:14px;margin-top:3px}.backup-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.approval-premium{background:linear-gradient(135deg,#fff,#fbf7e9);border:1px solid #d8c382;border-top:5px solid var(--gold);box-shadow:0 16px 40px #071a3414}.approval-premium .approval-seal{width:86px;height:86px;border:3px double var(--gold);box-shadow:inset 0 0 0 5px #fff}.approval-credential{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.approval-credential span{border:1px solid #dcc77d;background:#fffaf0;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;color:#5e4a0a}.course-banner-image{background-size:cover!important;background-position:center!important}.course-detail-banner{background-size:cover!important;background-position:center!important}
@media(max-width:900px){header{position:relative;flex-wrap:wrap;padding:16px 20px}.brand{flex:1;min-width:0}.brand img{width:58px;height:58px}.brand span b{font-size:14px}.brand span small{font-size:12px}.public-mobile-menu{display:inline-flex;align-items:center;gap:8px;background:transparent;color:#fff;border:1px solid #ffffff55;border-radius:7px;padding:9px 12px;font-weight:800}.public-nav{display:none!important;width:100%;order:5;padding-top:12px}.public-nav.mobile-open{display:flex!important;flex-direction:column;align-items:stretch}.public-nav.mobile-open .public-menu{display:block!important}.public-nav.mobile-open>a,.public-nav.mobile-open .public-menu button{display:block!important;width:100%;text-align:left;padding:11px 0}.public-nav .login{display:none!important}.public-dropdown{position:static;min-width:0;box-shadow:none;margin-top:5px}.mobile-student-access{display:block;background:#071a34;border-top:3px solid var(--gold);padding:12px 20px;text-align:right}.mobile-student-access a{display:inline-flex;justify-content:space-between;gap:28px;min-width:250px;background:var(--gold);color:#071a34;text-decoration:none;font-weight:900;padding:14px 18px;border-radius:4px}.hero{grid-template-columns:1fr!important;padding:54px 28px!important}.hero>img{display:none!important}.hero h1{font-size:clamp(46px,12vw,74px)!important}.approval-band{margin:22px 18px 0!important}.setting-grid{grid-template-columns:1fr}.backup-live-stats{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:560px){.brand span b{font-size:12px}.brand span small{font-size:11px}.mobile-student-access a{width:100%;min-width:0}.backup-live-stats{grid-template-columns:1fr}.course-banner-image{height:125px!important}.course-detail-banner{height:180px!important}}

.course-detail-banner-default{min-height:270px;background:linear-gradient(120deg,#082b52,#155a91);display:flex;flex-direction:column;justify-content:flex-end;padding:42px 68px;color:#fff;border-left:8px solid var(--gold)}.course-detail-banner-default span{color:var(--gold);font-weight:800;letter-spacing:.12em;margin-bottom:12px}.course-detail-banner-default strong{font-family:Georgia,serif;font-size:clamp(30px,4vw,54px);line-height:1.05;max-width:900px}.email-test-box{padding:16px;border:1px solid #d7e0ea;border-radius:10px;background:#f8fafc}

.course-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}.course-facts article{display:flex;align-items:center;gap:14px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #dce4ed;border-top:3px solid var(--gold);border-radius:12px;padding:18px;box-shadow:0 7px 18px #071a3409}.course-fact-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#edf3f8;color:var(--navy);font-weight:900}.course-facts small{display:block;font-size:10px;letter-spacing:.12em;color:#718096;font-weight:800;margin-bottom:5px}.course-facts strong{font-size:15px;color:var(--navy)}.about-public{max-width:1180px;margin:0 auto;padding:50px 24px 80px}.about-public-hero{background:linear-gradient(135deg,var(--navy),#174e80);color:#fff;border-radius:18px;border-top:4px solid var(--gold);padding:52px;box-shadow:0 16px 42px #071a3420}.about-public-hero h1{font:700 clamp(38px,5vw,58px) Georgia,serif;margin:8px 0 14px}.about-public-hero>p:last-child{font-size:19px;line-height:1.65;max-width:850px}.about-story{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0}.about-story article,.about-credential,.about-cta{background:#fff;border:1px solid #dce4ed;border-top:3px solid var(--gold);border-radius:14px;padding:28px;box-shadow:0 10px 28px #071a340b}.about-story h2,.about-credential h2,.about-cta h2{font:700 25px Georgia,serif;color:var(--navy);margin-top:0}.about-story p,.about-credential p,.about-cta p{line-height:1.7}.about-credential{display:flex;gap:24px;align-items:center;margin-bottom:26px}.about-cta{text-align:center}.about-cta .primary,.about-cta .secondary{margin:8px}.public-menu:hover>.public-dropdown{display:block!important}@media(max-width:800px){.course-facts,.about-story{grid-template-columns:1fr}.about-public-hero{padding:32px 24px}.about-credential{align-items:flex-start}.course-facts article{padding:15px}}

/* RC6.2: Student Login is never duplicated inside the mobile/tablet dropdown. */
@media(max-width:900px){.public-nav .desktop-student-login,.public-nav.mobile-open .desktop-student-login{display:none!important;visibility:hidden!important;position:absolute!important;pointer-events:none!important}.mobile-student-access{display:block!important}}

.public-builder{display:grid;gap:14px;margin:18px 0}.builder-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.builder-toolbar select{max-width:280px}.builder-card{border:1px solid #d5deea;border-top:3px solid var(--gold);border-radius:12px;padding:15px;background:#fff;box-shadow:0 8px 20px #082d580d}.builder-card-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.builder-card-head>div{margin-left:auto;display:flex;gap:5px}.builder-card-head button{border:1px solid #cad5e2;background:#f4f7fa;border-radius:6px;min-width:34px;height:32px;cursor:pointer}.builder-handle{color:#8190a3;font-size:18px}.public-custom-section{max-width:1180px;margin:0 auto;padding:54px 28px}.public-custom-section .section-inner{background:#fff;border-top:4px solid var(--gold);border-radius:14px;padding:32px;box-shadow:0 12px 30px #071a3410}.public-custom-section h2{margin:5px 0 12px}.public-custom-section .primary{display:inline-block;margin-top:16px}
/* RC6.6 student preview */
.preview-notice{margin:22px 0;padding:14px 18px;border:1px solid #d8aa2b;border-radius:10px;background:#fff9e9;color:#082d58}.student-preview-layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:24px;align-items:start}.preview-course-nav,.preview-lesson-pane{background:#fff;border:1px solid #dbe3ec;border-radius:14px;padding:20px;box-shadow:0 8px 24px rgba(8,45,88,.06)}.preview-course-nav h3{margin:18px 0 8px;color:#082d58;font-size:15px}.preview-course-nav h3:first-child{margin-top:0}.preview-lesson-link{display:flex;gap:10px;padding:10px;border-radius:9px;text-decoration:none;color:#16324f;margin:4px 0}.preview-lesson-link>span{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#edf3f9;font-weight:700}.preview-lesson-link small{display:block;color:#66788b;margin-top:3px}.preview-lesson-link.active{background:#082d58;color:#fff}.preview-lesson-link.active small{color:#dce7f2}.preview-lesson-pane>h1{color:#082d58}.preview-assessment-note{margin-top:24px;padding:18px;border-radius:10px;background:#f4f7fb}@media(max-width:800px){.student-preview-layout{grid-template-columns:1fr}}
/* RC6.6 GIB certificate logo */
.certificate-logo{display:flex;justify-content:center;margin:0 auto 10px}.certificate-logo img{width:92px;height:92px;object-fit:contain}.branded-certificate .certificate-brand{margin-top:2px}@media print{.certificate-logo img{width:82px;height:82px}}

/* GIB Certificate — Executive credential design */
.branded-certificate{position:relative;max-width:980px;min-height:690px;padding:48px 72px 38px;border:3px solid #0b2f59;background:linear-gradient(145deg,#fff 0%,#fdfdfb 58%,#f8f3e6 100%);box-shadow:0 18px 55px #071a3424;overflow:hidden;color:#10233d}
.branded-certificate:before,.branded-certificate:after{content:"";position:absolute;inset:10px;border:1px solid #c99724;pointer-events:none}.branded-certificate:after{inset:16px;border-color:#0b2f59}
.certificate-inner-border{position:absolute;inset:22px;border:1px solid #d8c18b;pointer-events:none}
.certificate-watermark{position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);opacity:.025;pointer-events:none}.certificate-watermark img{width:410px;height:410px;object-fit:contain}
.certificate-header{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.certificate-logo{margin:0 0 8px}.certificate-logo img{width:105px;height:105px;object-fit:contain;filter:drop-shadow(0 4px 7px #071a3422)}
.branded-certificate .certificate-brand{margin:0;text-align:center;color:#082b55;font-family:Georgia,'Times New Roman',serif;font-size:18px;font-weight:800;letter-spacing:.16em;line-height:1.25}.branded-certificate .certificate-brand span{display:block;margin-top:4px;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.31em;color:#9b6a08}
.certificate-rule{display:flex;align-items:center;justify-content:center;margin:17px auto 16px;width:64%;height:1px;background:linear-gradient(90deg,transparent,#c99724 25%,#c99724 75%,transparent)}.certificate-rule span{width:8px;height:8px;background:#c99724;transform:rotate(45deg);border:2px solid #fff;box-shadow:0 0 0 1px #c99724}
.certificate-kicker{font-size:14px;font-weight:900;letter-spacing:.30em;color:#b47d0d;margin:0 0 20px}.certificate-presents{font-size:9px;font-weight:800;letter-spacing:.22em;color:#657386;margin-bottom:6px}
.branded-certificate h1{position:relative;z-index:1;margin:6px 0 4px;font-family:Georgia,'Times New Roman',serif;font-size:45px;line-height:1.1;font-weight:700;color:#082b55;letter-spacing:.015em}.certificate-name-rule{width:48%;height:1px;background:#d7bd7b;margin:10px auto 16px}.certificate-statement{font-family:Georgia,'Times New Roman',serif;font-size:14px;font-style:italic;color:#4e5e72;margin:0 0 8px}.branded-certificate h2{position:relative;z-index:1;margin:6px auto 18px;max-width:760px;font-family:Georgia,'Times New Roman',serif;font-size:28px;line-height:1.25;color:#082b55}.certificate-school-code{display:inline-block;margin:-5px 0 14px;padding:5px 11px;border:1px solid #d8c18b;background:#fffaf0;font-size:10px;font-weight:800;letter-spacing:.08em;color:#6b4b0b}
.certificate-meta{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);max-width:720px;margin:10px auto 20px;border-top:1px solid #d8c18b;border-bottom:1px solid #d8c18b}.certificate-meta>div{padding:11px 16px}.certificate-meta>div+div{border-left:1px solid #e3d5b4}.certificate-meta span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.16em;color:#7b8490;margin-bottom:4px}.certificate-meta strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:12px;color:#102f54}
.certificate-footer{position:relative;z-index:1;display:grid;grid-template-columns:1fr 150px;align-items:end;max-width:650px;margin:4px auto 0}.certificate-signatory-block{min-height:112px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}.certificate-signature-image{margin:0 auto -7px;height:48px;display:flex;align-items:flex-end}.certificate-signature-image img{max-width:250px;max-height:62px;object-fit:contain}.certificate-signature-line{width:285px;border-top:1px solid #253a52;margin:7px auto 6px}.certificate-signatory-block strong{font-size:12px;color:#0b2f59}.certificate-signatory-block span{font-size:10px;color:#45566a;margin-top:2px}.certificate-signatory-block small{font-size:7px;letter-spacing:.12em;text-transform:uppercase;color:#9a7a37;margin-top:4px}.certificate-seal{display:flex;align-items:center;justify-content:center;gap:8px;border-left:1px solid #e2d3ae;padding-left:18px}.certificate-seal img{width:64px;height:64px;object-fit:contain}.certificate-seal span{text-align:left;font-size:7px;line-height:1.55;font-weight:900;letter-spacing:.13em;color:#a57512}.certificate-verify-note{position:relative;z-index:1;margin-top:15px;font-size:7px;letter-spacing:.11em;text-transform:uppercase;color:#8993a0}
@media(max-width:800px){.branded-certificate{padding:38px 28px;min-height:0}.branded-certificate h1{font-size:34px}.branded-certificate h2{font-size:23px}.certificate-meta{grid-template-columns:1fr}.certificate-meta>div+div{border-left:0;border-top:1px solid #e3d5b4}.certificate-footer{grid-template-columns:1fr}.certificate-seal{border-left:0;margin-top:14px;padding-left:0}.certificate-name-rule{width:70%}}
@media print{@page{size:landscape;margin:10mm}.branded-certificate{width:100%;max-width:none;min-height:680px;margin:0;box-shadow:none;border:3px solid #0b2f59;-webkit-print-color-adjust:exact;print-color-adjust:exact}.certificate-watermark{opacity:.025}.certificate-logo img{width:95px;height:95px}}

/* RC6.8 - unified public course introduction typography */
.course-detail > .eyebrow{font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;line-height:1.5!important;letter-spacing:.025em!important;font-weight:700!important;color:#18385f!important;margin:18px 0 12px!important;max-width:900px}
.course-detail > .lead{font-family:Arial,Helvetica,sans-serif!important;font-size:18px!important;line-height:1.72!important;font-weight:400!important;letter-spacing:0!important;color:#334155!important;margin:0 0 28px!important;max-width:900px}
@media(max-width:800px){.course-detail > .eyebrow{font-size:15px!important;line-height:1.5!important}.course-detail > .lead{font-size:16px!important;line-height:1.65!important;margin-bottom:22px!important}}

/* RC6.9 Certificate Design Center */
.certificate-designer{margin-top:18px}.cert-tabs{display:flex;gap:5px;overflow-x:auto;border-bottom:1px solid #d7e0eb;margin:-2px -2px 24px;padding:0 2px}.cert-tabs button{border:1px solid #cdd8e5;border-bottom:0;background:#eef3f8;color:#0b315d;border-radius:9px 9px 0 0;padding:11px 15px;font-weight:800;white-space:nowrap}.cert-tabs button.active{background:#fff;color:#082b55;border-top:2px solid var(--gold);position:relative;top:1px}.cert-tab{display:none}.cert-tab.active{display:block}.cert-tab label{display:block;font-weight:700;margin:14px 0}.cert-tab input[type=text],.cert-tab input:not([type]),.cert-tab textarea,.cert-tab select{width:100%;box-sizing:border-box;padding:11px;border:1px solid #cbd7e4;border-radius:7px;margin-top:6px;font:inherit}.cert-tab input[type=color]{width:100%;height:46px;padding:3px;border:1px solid #cbd7e4;border-radius:7px;margin-top:6px}.cert-checks{display:flex;gap:18px;flex-wrap:wrap}.cert-checks label{font-weight:600}.cert-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.cert-course-card{display:flex;flex-direction:column;gap:7px;padding:18px;border:1px solid #dbe3ec;border-radius:12px;background:#fafcff;text-decoration:none;color:#082b55}.cert-course-card span{font-size:13px;color:#667386}.cert-savebar{margin-top:26px;padding-top:18px;border-top:1px solid #e0e6ee}.cert-savebar button{width:100%;background:#082f5b;color:#fff;border:0;border-radius:7px;padding:12px;font-weight:800}
/* GIB v0.58.1 RC7.1 — concept-aligned student portal */
.gib-portal-body{margin:0;background:#eef3f8;color:#0c1b2c;font-family:Arial,Helvetica,sans-serif}.gib-portal-banner{min-height:118px;background:radial-gradient(circle at 66% 25%,#124d7b 0,#06182b 33%,#020d19 78%);color:#fff;display:flex;align-items:center;padding:15px 28px;gap:24px;border-bottom:2px solid #d6a620;box-sizing:border-box}.gib-portal-banner>img{width:165px;height:105px;object-fit:contain}.gib-banner-copy{flex:1;text-align:center;line-height:1}.gib-banner-copy strong{display:block;color:#e6bd52;font:700 clamp(24px,3vw,42px) Georgia,serif;letter-spacing:.04em}.gib-banner-copy span{display:block;font:400 clamp(17px,2vw,27px) Georgia,serif;letter-spacing:.3em;margin:8px 0 13px}.gib-banner-copy small{font:600 12px Georgia,serif;letter-spacing:.35em;color:#e8edf3}.gib-user{display:flex;align-items:center;gap:10px;min-width:230px}.gib-user div{display:flex;flex-direction:column;gap:3px}.gib-user small{color:#cbd7e4}.gib-user>a{margin-left:auto;color:#e8bd50;text-decoration:none;font-size:12px}.gib-avatar{width:38px;height:38px;border-radius:50%;background:#e9f1f8;color:#0b3763;display:grid;place-items:center;font-weight:800}.gib-portal-layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 118px)}.gib-sidebar{background:linear-gradient(180deg,#082847,#061a30);padding:24px 10px;color:#fff}.gib-sidebar nav{display:grid;gap:7px}.gib-sidebar nav a{display:flex;gap:14px;align-items:center;color:#f2f6fa;text-decoration:none;padding:13px 16px;border-radius:6px;font-size:14px}.gib-sidebar nav a span{width:20px;text-align:center;font-size:17px}.gib-sidebar nav a:hover,.gib-sidebar nav a.active{background:#1472c9;box-shadow:inset 0 0 0 1px #3291e6}.gib-side-help{border-top:1px solid #ffffff25;margin:28px 8px 0;padding:22px 8px;color:#d7e3ee;font-size:12px}.gib-side-help strong{color:#e6bd52}.gib-side-help p{line-height:1.5}.gib-side-help a{color:#fff}.gib-dashboard-main{padding:14px;min-width:0}.gib-welcome{min-height:225px;border-radius:9px;background:linear-gradient(100deg,#06192e 0,#0c3357 58%,#071a2c 100%);display:flex;align-items:center;padding:22px 36px;color:#fff;box-sizing:border-box;overflow:hidden;position:relative}.gib-welcome:after{content:"";position:absolute;right:-80px;top:-90px;width:430px;height:430px;border-radius:50%;border:1px solid #ffffff18;box-shadow:0 0 0 40px #ffffff05,0 0 0 90px #ffffff03}.gib-welcome img{width:190px;height:180px;object-fit:contain;z-index:1}.gib-welcome div{z-index:1}.gib-welcome p{font-size:22px;margin:0 0 6px}.gib-welcome h1{color:#e7b83f;font:700 34px/1.08 Georgia,serif;margin:0 0 22px}.gib-welcome span{font-size:16px;color:#edf3f8}.gib-dashboard-columns{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;margin-top:14px}.gib-dashboard-primary{display:grid;gap:14px}.gib-panel,.gib-rail-card{background:#fff;border:1px solid #d8e0e8;border-radius:9px;padding:14px;box-shadow:0 2px 8px #11263b0a}.gib-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.gib-panel-head h2{font:700 19px Arial,sans-serif;color:#0c1b2c;margin:0}.gib-panel-head a,.gib-panel-head span{font-size:12px;color:#076bc2;text-decoration:none}.gib-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gib-course-tile{border:1px solid #dce3ea;border-radius:7px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.gib-course-art{height:82px;display:flex;align-items:end;padding:10px 12px;box-sizing:border-box;color:#fff;font-weight:800;letter-spacing:.08em;font-size:11px;background:linear-gradient(135deg,#0b3158,#051423)}.gib-course-art.art-2{background:linear-gradient(135deg,#123e69,#071a2e)}.gib-course-art.art-3{background:linear-gradient(135deg,#09233f,#174c72)}.gib-course-art span{background:#06192dbd;padding:5px 7px;border-left:3px solid #e2b83f}.gib-course-tile-body{padding:11px;display:flex;flex-direction:column;flex:1}.gib-course-tile h3{font:700 17px/1.15 Arial,sans-serif;margin:0 0 8px;color:#101b2a}.gib-course-tile p{font-size:13px;line-height:1.35;color:#536071;margin:0 0 10px}.gib-facts{display:grid;gap:4px;font-size:12px;color:#27384d;margin-top:auto;margin-bottom:10px}.gib-primary-btn{display:block;text-align:center;background:linear-gradient(90deg,#0a3e70,#0874cc);color:#fff!important;text-decoration:none;border-radius:5px;padding:10px 12px;font-size:13px;font-weight:700}.gib-dashboard-rail{display:grid;gap:14px;align-content:start}.gib-mini-art{height:78px;border-radius:5px;background:linear-gradient(135deg,#061b32,#145887);border-bottom:3px solid #d9aa27}.gib-continue h3{font-size:14px;line-height:1.25;margin:10px 0 5px}.gib-continue p{font-size:12px;color:#566476;margin:0 0 10px}.gib-progress-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:7px 0}.gib-progress-list{display:grid;gap:12px}.gib-progress-list article{padding:12px;border:1px solid #e1e6ec;border-radius:7px}.gib-progress-list small{display:block;color:#6b7786;margin-top:6px}.gib-inline-actions{display:flex;gap:12px;margin-top:9px}.gib-inline-actions a{font-size:12px;font-weight:700;color:#0869b9;text-decoration:none}.gib-stat{display:flex;align-items:center;gap:12px;border-top:1px solid #e7ebef;padding:12px 2px}.gib-stat strong{font-size:25px;color:#0a4c84;min-width:54px}.gib-stat span{font-size:12px;color:#586779}.gib-quick{display:grid;gap:5px}.gib-quick a{background:#0a3b68;color:#fff;text-decoration:none;padding:9px 12px;border-radius:5px;font-size:12px}.gib-announcements{display:grid;gap:4px}.gib-announcements article{display:flex;gap:12px;padding:10px 4px;border-bottom:1px solid #e7ebef}.gib-announcements article>span{color:#1495e7}.gib-announcements small,.gib-announcements strong{display:block}.gib-announcements small{color:#697688;font-size:11px;margin-bottom:2px}.gib-announcements strong{font-size:13px}.gib-dashboard-main .progress-track{height:8px;background:#dce4eb;border-radius:99px;overflow:hidden}.gib-dashboard-main .progress-track span{display:block;height:100%;background:#147bd4;border-radius:99px}
@media(max-width:1100px){.gib-dashboard-columns{grid-template-columns:1fr}.gib-dashboard-rail{grid-template-columns:repeat(3,1fr)}.gib-catalog-grid{grid-template-columns:repeat(2,1fr)}.gib-banner-copy span{letter-spacing:.18em}.gib-user{min-width:auto}.gib-user div{display:none}}
@media(max-width:760px){.gib-portal-banner{min-height:86px;padding:9px 12px}.gib-portal-banner>img{width:72px;height:68px}.gib-banner-copy{text-align:left}.gib-banner-copy strong{font-size:17px}.gib-banner-copy span{font-size:12px;letter-spacing:.12em}.gib-banner-copy small{display:none}.gib-user>a,.gib-avatar{display:none}.gib-portal-layout{grid-template-columns:1fr}.gib-sidebar{padding:7px;position:sticky;top:0;z-index:20}.gib-sidebar nav{display:flex;overflow-x:auto}.gib-sidebar nav a{white-space:nowrap;padding:9px 11px}.gib-side-help{display:none}.gib-dashboard-main{padding:8px}.gib-welcome{min-height:170px;padding:18px}.gib-welcome img{width:110px;height:120px}.gib-welcome p{font-size:14px}.gib-welcome h1{font-size:22px}.gib-welcome span{font-size:12px}.gib-catalog-grid{grid-template-columns:1fr}.gib-dashboard-rail{grid-template-columns:1fr}.gib-panel,.gib-rail-card{padding:11px}}
@media(max-width:480px){.gib-welcome img{display:none}.gib-user{display:none}.gib-catalog-grid{grid-template-columns:1fr}.gib-portal-banner{gap:10px}.gib-banner-copy strong{font-size:15px}.gib-banner-copy span{font-size:11px}.gib-sidebar nav a span{display:none}}

.student-row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.student-row-actions .inline-form{margin:0}.danger-button{background:#8b1e1e!important;color:#fff!important;border-color:#8b1e1e!important}.danger-button:hover{background:#6f1717!important}

.support-admin-ticket{border:1px solid #d8e1ec;border-radius:12px;padding:18px;margin:16px 0;background:#fff}.support-admin-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e5e7eb;margin-bottom:12px}.support-admin-head h2{margin:0 0 5px}.support-admin-head p{margin:0 0 12px;color:#64748b}
/* RC7.9 lesson multimedia/document resource labs */
.academy-resource-lab{margin:32px 0 8px;padding:24px;border:1px solid #d8dee9;border-radius:14px;background:#f8fafc}.academy-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.academy-resource-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:18px}.academy-resource-button{display:inline-block;background:#0d2748;color:#fff!important;padding:10px 14px;border-radius:8px;text-decoration:none;font-weight:700}.academy-video-wrap{position:relative;width:100%;max-width:820px;padding-top:56.25%;margin:16px 0 10px;background:#0b1728;border-radius:12px;overflow:hidden}.academy-video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.academy-media-note{padding:14px 16px;background:#fff8e6;border-left:4px solid #b88a2a;border-radius:6px;margin:12px 0}.academy-resource-lab li{margin:7px 0}@media(max-width:720px){.academy-resource-grid{grid-template-columns:1fr}.academy-resource-lab{padding:16px}}

.builder-module-final{border:2px solid #d6a91f;box-shadow:0 8px 24px rgba(8,45,88,.08)}.lesson-admin-preview{margin-top:22px}.lesson-admin-preview .lesson-reading{max-width:none}


/* GIB v0.60.6 RC9.6 — assessment question-number alignment fix */
.assessment-form .question{position:relative;padding:24px 26px 24px 72px!important;margin:18px 0!important}
.assessment-form .question:before{counter-increment:q;content:counter(q);position:absolute;left:22px;top:22px;width:34px;min-width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--navy);color:#fff;font-size:15px;line-height:1;font-weight:800;box-sizing:border-box}
.assessment-form .question h3{margin:2px 0 18px;line-height:1.4;min-height:34px;display:flex;align-items:center}
@media(max-width:800px){.assessment-form .question{padding:20px!important}.assessment-form .question:before{position:static;width:34px;height:34px;margin:0 0 12px}.assessment-form .question h3{min-height:0;margin-top:0}}

/* RC10.12 administrative certificate issuance */
.certificate-admin-toolbar{display:flex;justify-content:flex-end;margin:18px 0}.manual-certificate-panel{margin:0 0 20px;padding:22px;border:1px solid #d8e1eb;border-radius:12px;background:#fff}.manual-cert-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.manual-certificate-panel label{display:block;font-weight:800;margin:15px 0}.manual-certificate-panel select,.manual-certificate-panel textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:11px;border:1px solid #cbd7e4;border-radius:7px;font:inherit}.manual-certificate-panel .muted{font-weight:400;color:#6c7887}@media(max-width:700px){.manual-cert-head{display:block}.manual-cert-head .button{display:inline-block;margin-top:8px}}

/* RC10.15 GIB public navigation/login polish */
.auth-top.auth-top-gib{min-height:88px;padding:10px 5vw;background:linear-gradient(110deg,var(--navy),var(--navy2));border-bottom:3px solid var(--gold)}
.auth-top-gib .auth-brand-lockup{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none}
.auth-top-gib .auth-brand-lockup img{width:64px;height:64px;max-width:none;max-height:none;object-fit:contain}
.auth-top-gib .auth-brand-lockup span{display:flex;flex-direction:column;letter-spacing:.08em}
.auth-top-gib .auth-brand-lockup small{color:#e6c768;margin-top:4px}
.auth-top-gib .auth-back{color:#fff}.auth-top-gib .auth-back:hover{color:#e6c768}
.public-admin-login{display:inline-block;margin-left:14px;color:#7f8fa3!important;text-decoration:none;font-size:10px;font-weight:600;letter-spacing:.04em;opacity:.72}
.public-admin-login:hover{color:#d6b54a!important;opacity:1;text-decoration:underline}
.public-nav .public-menu{align-self:stretch;display:flex;align-items:center}.public-nav .public-menu>button{height:100%}
.public-dropdown{pointer-events:auto}.public-menu:hover>.public-dropdown,.public-menu:focus-within>.public-dropdown{display:block!important}
@media(max-width:800px){.auth-top.auth-top-gib{align-items:center}.auth-top-gib .auth-brand-lockup span{font-size:12px}.public-admin-login{display:block;width:max-content;margin:8px auto 0}}

/* RC10.16 public footer */
.public-site-footer{position:relative;min-height:74px;padding:20px 132px;display:flex;align-items:center;justify-content:center;text-align:center;background:#041225;color:#aeb9c8}
.public-footer-center{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.public-footer-copyright{font-size:14px;line-height:1.35}
.public-footer-copyright a{color:#dbe5ef;text-decoration:none}
.public-footer-copyright a:hover{color:var(--gold);text-decoration:underline}
.public-footer-custom{max-width:820px;margin:0 auto;color:#8fa0b4;font-size:12px;line-height:1.45;text-align:center;white-space:normal}
.public-site-footer .public-admin-login{position:absolute;right:28px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;margin:0;padding:6px 10px;border:1px solid #46566a;border-radius:5px;background:#0a1b31;color:#aeb9c8!important;text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.03em;opacity:.9;white-space:nowrap}
.public-site-footer .public-admin-login:hover{border-color:var(--gold);background:#102946;color:#fff!important;opacity:1;text-decoration:none}
@media(max-width:800px){.public-site-footer{padding:18px 18px 54px;min-height:96px}.public-site-footer .public-admin-login{right:18px;top:auto;bottom:14px;transform:none}.public-footer-copyright{font-size:12px}.public-footer-custom{font-size:11px}}

/* RC10.17 course introduction card */
.course-intro-panel{margin:18px 0 22px!important}.course-intro-panel>.eyebrow{font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;line-height:1.5!important;letter-spacing:.025em!important;font-weight:700!important;color:#18385f!important;margin:0 0 12px!important;max-width:none!important}.course-intro-panel>.lead{font-family:Arial,Helvetica,sans-serif!important;font-size:18px!important;line-height:1.72!important;font-weight:400!important;letter-spacing:0!important;color:#334155!important;margin:0!important;max-width:none!important}@media(max-width:800px){.course-intro-panel>.eyebrow{font-size:15px!important}.course-intro-panel>.lead{font-size:16px!important;line-height:1.65!important}}

.gib-live-preset{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:14px 16px;margin-bottom:14px;border:1px solid #d8aa2b;border-radius:12px;background:#fffaf0}.gib-live-preset strong{color:#082d58}.gib-live-preset span{flex:1;min-width:260px;color:#526277;font-size:13px}

/* RC10.28 — certificate printing: exactly one US Letter sheet */
@media print{
  @page{size:11in 8.5in;margin:0!important}
  html,body{width:11in!important;height:8.5in!important;margin:0!important;padding:0!important;background:#fff!important;overflow:hidden!important}
  body>main.academy-shell{width:11in!important;height:8.5in!important;max-width:none!important;margin:0!important;padding:0!important;display:block!important}
  .print-actions{display:none!important}
  .certificate-card.branded-certificate{
    box-sizing:border-box!important;width:10.5in!important;height:8in!important;min-height:0!important;max-height:8in!important;
    margin:.25in!important;padding:.30in .42in!important;overflow:hidden!important;
    border:3px solid #0b2f59!important;box-shadow:none!important;page-break-before:avoid!important;page-break-after:avoid!important;
    break-before:avoid-page!important;break-after:avoid-page!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important
  }
  .certificate-logo img{width:78px!important;height:78px!important}
  .certificate-logo{margin-bottom:3px!important}
  .certificate-rule{margin:8px auto 9px!important}
  .certificate-kicker{margin-bottom:9px!important}
  .branded-certificate h1{font-size:36px!important;margin:3px 0!important}
  .certificate-name-rule{margin:5px auto 8px!important}
  .certificate-statement{margin-bottom:4px!important}
  .branded-certificate h2{font-size:23px!important;margin:4px auto 7px!important}
  .certificate-school-code{margin:0 0 6px!important;padding:3px 9px!important}
  .certificate-meta{margin:5px auto 7px!important}
  .certificate-meta>div{padding:7px 12px!important}
  .certificate-footer{margin:0 auto!important}
  .certificate-signatory-block{min-height:82px!important}
  .certificate-signature-image{height:38px!important}
  .certificate-signature-image img{max-height:48px!important}
  .certificate-seal img{max-height:58px!important}
  .certificate-official-line{margin-top:4px!important}
}

.certificate-qr{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;margin:4px auto 2px}
.certificate-qr img{width:78px;height:78px;display:block;background:#fff}
.certificate-qr span{font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#53677c;font-weight:700}
@media print{
 .certificate-qr{margin:2px auto 0!important;gap:1px!important}
 .certificate-qr img{width:.68in!important;height:.68in!important}
 .certificate-qr span{font-size:6px!important}
}

/* RC QR visibility fix: QR is a first-class certificate element, not hidden in seal/footer flow. */
.certificate-card.branded-certificate{position:relative}
.certificate-qr-visible{position:absolute!important;right:1.05in!important;bottom:.34in!important;width:1.02in!important;margin:0!important;z-index:20!important;display:flex!important;visibility:visible!important;opacity:1!important}
.certificate-qr-visible img{width:.82in!important;height:.82in!important;display:block!important;visibility:visible!important;opacity:1!important;background:#fff!important}
.certificate-qr-visible span{display:block!important;font-size:6px!important;line-height:1.1!important;text-align:center!important;white-space:nowrap!important}
@media print{
 .certificate-qr-visible{position:absolute!important;right:.82in!important;bottom:.22in!important;width:.88in!important;display:flex!important;visibility:visible!important;opacity:1!important;z-index:999!important}
 .certificate-qr-visible img{width:.70in!important;height:.70in!important;display:block!important;visibility:visible!important;opacity:1!important}
 .certificate-qr-visible span{font-size:5.5px!important}
}

/* Certificate QR placement revision — left side, larger. */
.certificate-qr-visible{
 left:.72in!important;right:auto!important;bottom:.28in!important;width:1.28in!important;
 display:flex!important;visibility:visible!important;opacity:1!important;z-index:20!important
}
.certificate-qr-visible img{width:1.02in!important;height:1.02in!important}
.certificate-qr-visible span{font-size:6.5px!important;white-space:nowrap!important}
@media print{
 .certificate-qr-visible{
  left:.62in!important;right:auto!important;bottom:.18in!important;width:1.12in!important;
  display:flex!important;visibility:visible!important;opacity:1!important;z-index:999!important
 }
 .certificate-qr-visible img{width:.90in!important;height:.90in!important}
 .certificate-qr-visible span{font-size:6px!important}
}

/* v1.0.22 shared administration polish; certificate styles are untouched. */
body.admin-polished{background:#eef3f8;color:#142c46}
.admin-polished .academy-shell{max-width:1320px;padding:28px;margin:auto}
.admin-polished .admin-page-head{background:linear-gradient(120deg,#071b33,#103a61);color:#fff;border-radius:14px;border-bottom:3px solid #c6a34f;padding:24px;margin-bottom:18px}
.admin-polished .admin-page-head h1,.admin-polished .admin-page-head p{color:inherit}
.admin-polished .admin-brand-lockup img{width:70px;height:70px;object-fit:contain}
.admin-polished .admin-panel,.admin-polished .academy-form{background:#fff;border:1px solid #dbe4ee;border-radius:12px;padding:24px;margin:20px 0;box-shadow:0 5px 18px #082d5810}
.admin-polished table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #dbe4ee;margin:20px 0;font-size:14px}
.admin-polished th{background:#0c2d50;color:#fff;text-align:left;padding:13px}
.admin-polished td{padding:12px;border-bottom:1px solid #e5ebf2;overflow-wrap:anywhere}
.admin-polished tr:nth-child(even){background:#f6f8fb}
.admin-polished table code{font-size:11px;word-break:break-all}
.admin-polished .license-footer{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;padding:18px;background:#071b33;color:#e4ecf5;font-size:12px}
.audit-pagination{display:flex;gap:18px;align-items:center;margin:20px 0}
.payment-options{border:1px solid #d7e1ec;border-radius:12px;padding:18px;margin:20px 0}
.payment-options legend{font-weight:700;padding:0 8px}
.payment-options .payment-option{display:flex;align-items:center;gap:12px;padding:16px;background:#f4f7fb;border:1px solid #d7e1ec;border-radius:8px;margin:8px 0;cursor:pointer}
.payment-option input[type=radio]{width:18px;height:18px;accent-color:#0a3157;margin:0;flex:none}
.payment-option:has(input:checked){border-color:#b7943d;background:#fffbef;box-shadow:0 0 0 1px #b7943d}
.payment-option small{display:block;color:#597087;margin-top:4px}
body.public-polished{min-height:100vh;display:flex;flex-direction:column}
.public-polished>main,.public-polished>.wrap{flex:1}
.public-polished>.public-site-footer{margin-top:auto}

/* Consistent administration visual system */
body .academy-shell{max-width:1280px;margin-left:auto;margin-right:auto}
body .academy-brand-banner{box-shadow:0 12px 28px rgba(8,29,54,.12)}
body .academy-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #d9e3ed;border-radius:12px;overflow:hidden}
body .academy-table th{background:#eaf0f6;color:#193b5c;text-transform:uppercase;letter-spacing:.055em;font-size:11px}
body .academy-table td,body .academy-table th{padding:13px 12px;border-bottom:1px solid #e2e9f0;text-align:left}
body .academy-table tr:last-child td{border-bottom:0}
body .academy-table tbody tr:nth-child(even){background:#f7f9fc}
body .academy-brand-footer{clear:both}
body .audit-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
body .audit-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0}
body .audit-pagination a{display:inline-block;padding:8px 13px;border:1px solid #cbd8e6;border-radius:8px;background:#fff;text-decoration:none;color:#09294b;font-weight:600}
body .audit-pagination a[aria-current=page]{background:#09294b;color:#fff}
@media print{.audit-toolbar,.audit-pagination,nav,.admin-user-chip{display:none!important}.academy-brand-footer{display:block!important;background:#fff!important;color:#111!important;border-top:1px solid #aaa}.academy-brand-footer *{color:#111!important}}

/* GIB certificate: NYS school code above the authorized instructor signature. */
.certificate-signatory-block .certificate-school-code-signature{display:block;position:static;max-width:100%;margin:0 auto 12px;padding:4px 6px;text-align:center;color:#9a6808;font-size:10px;font-weight:800;letter-spacing:.035em;line-height:1.35;border:0;background:transparent;}
@media print{.certificate-signatory-block .certificate-school-code-signature{color:#775008!important;print-color-adjust:exact;-webkit-print-color-adjust:exact;}}

/* Four-field certificate information strip: school code remains clear of signatures. */
.certificate-meta.certificate-meta-four{grid-template-columns:repeat(4,minmax(0,1fr));max-width:760px}
.certificate-meta.certificate-meta-four>div{padding-left:8px;padding-right:8px}
.certificate-meta.certificate-meta-four span{letter-spacing:.08em}
@media(max-width:700px){.certificate-meta.certificate-meta-four{grid-template-columns:1fr}}
@media print{.certificate-meta.certificate-meta-four{grid-template-columns:repeat(4,minmax(0,1fr))!important}}

/* v1.0.31: improve certificate information-row legibility on screen and print. */
.branded-certificate .certificate-meta span{font-size:11px;font-weight:700;letter-spacing:.045em;line-height:1.35;color:#183657;margin-bottom:6px;text-transform:uppercase}
.branded-certificate .certificate-meta strong{font-size:15px;font-weight:700;line-height:1.3;color:#08264c}
.branded-certificate .certificate-meta.certificate-meta-four>div{padding:11px 7px}
@media print{.branded-certificate .certificate-meta span{font-size:10px!important;letter-spacing:.035em!important;color:#183657!important}.branded-certificate .certificate-meta strong{font-size:14px!important}.branded-certificate .certificate-meta.certificate-meta-four>div{padding:8px 6px!important}}

/* v1.0.32: Certificate-only landscape printing. Preserve a single, balanced
   11 x 8.5 inch page, with all verification elements inside the frame. */
@media print {
 @page { size: 11in 8.5in; margin: 0; }
 body:has(.certificate-card.branded-certificate),
 body:has(.certificate-card.branded-certificate) html { margin:0!important;padding:0!important;background:white!important; }
 body:has(.certificate-card.branded-certificate) > main.academy-shell {
   box-sizing:border-box!important; width:11in!important; height:8.5in!important;
   max-width:none!important; min-height:0!important; margin:0!important;
   padding:0!important; overflow:hidden!important;
 }
 body:has(.certificate-card.branded-certificate) .academy-brand-footer,
 body:has(.certificate-card.branded-certificate) .print-actions {display:none!important}
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate {
   position:relative!important;box-sizing:border-box!important;
   width:10.55in!important;height:8.05in!important;min-height:0!important;
   max-height:8.05in!important;margin:.225in!important;
   padding:.35in .53in .4in!important;overflow:hidden!important;
   border:3px solid #0b2f59!important;box-shadow:none!important;
   break-inside:avoid!important;page-break-inside:avoid!important;
   -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;
 }
 .branded-certificate .certificate-logo img {width:90px!important;height:90px!important}
 .branded-certificate .certificate-logo {margin-bottom:6px!important}
 .branded-certificate .certificate-rule {margin:11px auto 12px!important}
 .branded-certificate .certificate-kicker {margin-bottom:14px!important}
 .branded-certificate .certificate-presents {margin-bottom:5px!important}
 .branded-certificate h1 {font-size:40px!important;margin:6px 0!important}
 .branded-certificate .certificate-name-rule {margin:8px auto 12px!important}
 .branded-certificate .certificate-statement {margin-bottom:6px!important}
 .branded-certificate h2 {font-size:25px!important;margin:7px auto 13px!important}
 .branded-certificate .certificate-meta {margin:12px auto 12px!important;max-width:790px!important}
 .branded-certificate .certificate-meta>div {padding:11px 8px!important}
 .branded-certificate .certificate-meta span {font-size:10px!important;letter-spacing:.06em!important}
 .branded-certificate .certificate-meta strong {font-size:13px!important}
 .branded-certificate .certificate-footer {
   position:absolute!important;left:2.2in!important;right:.6in!important;
   bottom:.58in!important;width:auto!important;max-width:none!important;
   display:grid!important;grid-template-columns:minmax(0,1fr) 1.6in!important;
   align-items:end!important;margin:0!important;
 }
 .branded-certificate .certificate-signatory-block {min-height:94px!important}
 .branded-certificate .certificate-signature-image {height:47px!important}
 .branded-certificate .certificate-signature-image img {max-height:55px!important}
 .branded-certificate .certificate-seal {margin:0!important;border-left:1px solid #e2d3ae!important;padding-left:12px!important}
 .branded-certificate .certificate-seal img {width:65px!important;height:65px!important;max-height:none!important}
 .branded-certificate .certificate-qr-visible {
   position:absolute!important;left:.52in!important;right:auto!important;
   bottom:.45in!important;width:1.15in!important;margin:0!important;
 }
 .branded-certificate .certificate-qr-visible img {width:.93in!important;height:.93in!important}
 .branded-certificate .certificate-qr-visible span {font-size:6px!important}
 .branded-certificate .certificate-verify-note {
   position:absolute!important;left:1.9in!important;right:1.9in!important;
   bottom:.22in!important;margin:0!important;font-size:7px!important;
 }
}

/* v1.0.33 — certificate print parity: never apply narrow-screen stacking in print. */
@media print {
 @page { size: 11in 8.5in; margin: 0; }
 html,body { margin:0!important;padding:0!important; }
 body:has(.certificate-card.branded-certificate) {width:11in!important;height:8.5in!important;overflow:hidden!important;background:#fff!important;}
 body:has(.certificate-card.branded-certificate) main.academy-shell {width:11in!important;height:8.5in!important;min-height:0!important;max-width:none!important;box-sizing:border-box!important;margin:0!important;padding:0!important;overflow:hidden!important;}
 body:has(.certificate-card.branded-certificate) .print-actions,
 body:has(.certificate-card.branded-certificate) .academy-brand-footer,
 body:has(.certificate-card.branded-certificate) nav {display:none!important;}
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate {
  box-sizing:border-box!important;display:block!important;width:10.55in!important;height:8.05in!important;
  min-height:0!important;max-height:8.05in!important;max-width:none!important;
  margin:.225in!important;padding:.35in .53in .4in!important;overflow:hidden!important;
  border:3px solid #0b2f59!important;box-shadow:none!important;
  page-break-before:avoid!important;page-break-after:avoid!important;break-inside:avoid!important;
  -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;
 }
 /* The @media(max-width:800px) rule also matches Chrome's printable viewport;
    restore the desktop certificate grid and signatory geometry explicitly. */
 .branded-certificate .certificate-meta,
 .branded-certificate .certificate-meta:not(.certificate-meta-four) {
   display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
   width:100%!important;max-width:790px!important;margin:12px auto 12px!important;
   border-top:1px solid #d8c18b!important;border-bottom:1px solid #d8c18b!important;
 }
 .branded-certificate .certificate-meta.certificate-meta-four {grid-template-columns:repeat(4,minmax(0,1fr))!important;}
 .branded-certificate .certificate-meta>div {display:block!important;min-width:0!important;padding:11px 8px!important;border-top:0!important;text-align:center!important;}
 .branded-certificate .certificate-meta>div+div {border-top:0!important;border-left:1px solid #e3d5b4!important;}
 .branded-certificate .certificate-meta span {font-size:10px!important;font-weight:800!important;letter-spacing:.06em!important;white-space:normal!important;}
 .branded-certificate .certificate-meta strong {font-size:13px!important;white-space:nowrap!important;}
 .branded-certificate .certificate-footer {display:grid!important;grid-template-columns:minmax(0,1fr) 1.6in!important;align-items:end!important;}
 .branded-certificate .certificate-seal {display:flex!important;align-items:center!important;border-left:1px solid #e2d3ae!important;margin:0!important;padding-left:12px!important;}
 .branded-certificate .certificate-name-rule {width:48%!important;}
 .branded-certificate h1 {font-size:40px!important;}
 .branded-certificate h2 {font-size:25px!important;}
 .branded-certificate .certificate-qr-visible {display:block!important;}
}

/* v1.0.34 — printed certificate matches the full-size on-screen design.
   All dimensions are CSS pixels at 96dpi; no print-only typography shrinkage. */
@media print {
 @page {size:11in 8.5in; margin:0;}
 html,body,body:has(.certificate-card.branded-certificate){width:11in!important;height:8.5in!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#fff!important;}
 body:has(.certificate-card.branded-certificate) main.academy-shell {width:11in!important;height:8.5in!important;margin:0!important;padding:0!important;max-width:none!important;min-height:0!important;display:block!important;overflow:hidden!important;}
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate {
  box-sizing:border-box!important;position:relative!important;display:block!important;
  width:980px!important;height:690px!important;min-height:690px!important;max-height:690px!important;
  max-width:none!important;margin:63px auto!important;padding:48px 72px 38px!important;
  border:3px solid #0b2f59!important;box-shadow:none!important;overflow:hidden!important;
  break-inside:avoid!important;page-break-inside:avoid!important;
  print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important;
 }
 .branded-certificate .certificate-logo img{width:105px!important;height:105px!important;}
 .branded-certificate .certificate-logo{margin:0 0 8px!important;}
 .branded-certificate .certificate-rule{margin:17px auto 16px!important;}
 .branded-certificate .certificate-kicker{font-size:14px!important;margin:0 0 20px!important;}
 .branded-certificate .certificate-presents{font-size:9px!important;margin-bottom:6px!important;}
 .branded-certificate h1{font-size:45px!important;margin:6px 0 4px!important;}
 .branded-certificate .certificate-name-rule{width:48%!important;margin:8px auto 12px!important;}
 .branded-certificate .certificate-statement{margin-bottom:6px!important;}
 .branded-certificate h2{font-size:27px!important;margin:7px auto 13px!important;}
 .branded-certificate .certificate-meta,.branded-certificate .certificate-meta:not(.certificate-meta-four){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:720px!important;width:100%!important;margin:10px auto 20px!important;}
 .branded-certificate .certificate-meta.certificate-meta-four{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:760px!important;}
 .branded-certificate .certificate-meta>div{padding:11px 8px!important;border-top:0!important;}
 .branded-certificate .certificate-meta>div+div{border-left:1px solid #e3d5b4!important;}
 .branded-certificate .certificate-meta span{font-size:11px!important;line-height:1.35!important;}
 .branded-certificate .certificate-meta strong{font-size:15px!important;line-height:1.3!important;}
 .branded-certificate .certificate-footer{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;display:grid!important;grid-template-columns:1fr 150px!important;max-width:650px!important;width:auto!important;margin:4px auto 0!important;align-items:end!important;}
 .branded-certificate .certificate-signatory-block{min-height:112px!important;}
 .branded-certificate .certificate-seal{margin:0!important;}
 .branded-certificate .certificate-seal img{width:65px!important;height:65px!important;}
 .branded-certificate .certificate-qr-visible{position:absolute!important;left:.52in!important;right:auto!important;bottom:.34in!important;width:1.15in!important;}
 .branded-certificate .certificate-qr-visible img{width:.93in!important;height:.93in!important;}
 .branded-certificate .certificate-verify-note{position:absolute!important;bottom:.22in!important;left:1.9in!important;right:1.9in!important;}
}

/* v1.0.36: true near-full-bleed Letter landscape certificate printing.
   Keep a 0.12in border-safe margin; do not use fixed 980px card width. */
@media print {
 @page { size:11in 8.5in; margin:0!important; }
 html,body,body:has(.certificate-card.branded-certificate) {
  width:11in!important;height:8.5in!important;min-width:11in!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
 }
 body:has(.certificate-card.branded-certificate) main.academy-shell {
  position:static!important;display:block!important;width:11in!important;
  min-width:11in!important;max-width:11in!important;height:8.5in!important;
  min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate {
  box-sizing:border-box!important;position:relative!important;
  width:10.76in!important;min-width:10.76in!important;max-width:10.76in!important;
  height:8.26in!important;min-height:8.26in!important;max-height:8.26in!important;
  margin:.12in!important;padding:.45in .68in .4in!important;
  transform:none!important;zoom:1!important;
  border:3px solid #0b2f59!important;overflow:hidden!important;
  page-break-inside:avoid!important;break-inside:avoid!important;
  print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important;
 }
 .branded-certificate .certificate-footer {margin-top:16px!important;}
 .branded-certificate .certificate-qr-visible {left:.56in!important;bottom:.35in!important;}
}


/* v1.0.37 — one shared certificate composition for browser and print.
   Anchor the signature/seal and QR to the certificate frame rather than
   allowing print pagination and changed card height to move them. */
.certificate-card.branded-certificate {position:relative;isolation:isolate;}
.certificate-card.branded-certificate .certificate-footer {
 position:absolute!important;left:50%!important;right:auto!important;
 bottom:57px!important;transform:translateX(-50%)!important;
 width:650px!important;max-width:calc(100% - 230px)!important;
 margin:0!important;display:grid!important;
 grid-template-columns:minmax(0,1fr) 150px!important;
 align-items:end!important;z-index:3!important;
}
.certificate-card.branded-certificate .certificate-signatory-block {
 min-height:112px!important;display:flex!important;flex-direction:column!important;
 justify-content:flex-end!important;align-items:center!important;
}
.certificate-card.branded-certificate .certificate-seal {
 display:flex!important;align-items:center!important;justify-content:center!important;
 gap:8px!important;border-left:1px solid #e2d3ae!important;
 padding-left:18px!important;margin:0!important;
}
.certificate-card.branded-certificate .certificate-seal img {
 width:64px!important;height:64px!important;max-height:none!important;object-fit:contain!important;
}
.certificate-card.branded-certificate .certificate-qr-visible {
 position:absolute!important;left:52px!important;right:auto!important;
 bottom:25px!important;width:112px!important;margin:0!important;
 display:flex!important;flex-direction:column!important;align-items:center!important;
 z-index:5!important;
}
.certificate-card.branded-certificate .certificate-qr-visible img {
 width:88px!important;height:88px!important;object-fit:contain!important;
}
.certificate-card.branded-certificate .certificate-verify-note {
 position:absolute!important;left:185px!important;right:185px!important;
 bottom:24px!important;margin:0!important;text-align:center!important;
 z-index:2!important;
}
@media print {
 @page {size:11in 8.5in;margin:0;}
 html,body {margin:0!important;padding:0!important;}
 body:has(.certificate-card.branded-certificate) main.academy-shell {
  width:11in!important;height:8.5in!important;min-width:11in!important;
  max-width:11in!important;margin:0!important;padding:0!important;
  display:block!important;overflow:hidden!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate {
  box-sizing:border-box!important;width:10.76in!important;height:8.26in!important;
  min-width:10.76in!important;max-width:10.76in!important;
  min-height:8.26in!important;max-height:8.26in!important;
  margin:.12in!important;padding:48px 72px 38px!important;
  position:relative!important;transform:none!important;zoom:1!important;
  overflow:hidden!important;break-inside:avoid!important;
  -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;
 }
 .certificate-card.branded-certificate .certificate-footer {
  position:absolute!important;left:50%!important;right:auto!important;
  bottom:57px!important;transform:translateX(-50%)!important;
  width:650px!important;max-width:calc(100% - 230px)!important;
  margin:0!important;grid-template-columns:minmax(0,1fr) 150px!important;
 }
 .certificate-card.branded-certificate .certificate-qr-visible {
  position:absolute!important;left:52px!important;right:auto!important;
  bottom:25px!important;width:112px!important;
 }
 .certificate-card.branded-certificate .certificate-qr-visible img {
  width:88px!important;height:88px!important;
 }
 .certificate-card.branded-certificate .certificate-verify-note {
  position:absolute!important;left:185px!important;right:185px!important;
  bottom:24px!important;
 }
 .certificate-card.branded-certificate .certificate-seal img {
  width:64px!important;height:64px!important;
 }
}


/* v1.0.38: One fixed-aspect certificate composition for screen AND print.
   All positions are relative to the same certificate box, so browser print
   cannot independently reflow the signatory, official seal or QR. */
.certificate-card.branded-certificate {
 box-sizing:border-box!important;
 width:100%!important;max-width:980px!important;
 height:auto!important;min-height:0!important;aspect-ratio:11 / 8.5!important;
 padding:4.4% 6.4% 4%!important;
 position:relative!important;overflow:hidden!important;
 margin-left:auto!important;margin-right:auto!important;
}
.certificate-card.branded-certificate .certificate-header {position:relative!important;z-index:2!important;}
.certificate-card.branded-certificate .certificate-footer {
 position:absolute!important;left:22%!important;right:9%!important;
 bottom:9%!important;top:auto!important;transform:none!important;
 width:auto!important;max-width:none!important;margin:0!important;
 display:grid!important;grid-template-columns:minmax(0,1fr) 25%!important;
 align-items:end!important;
}
.certificate-card.branded-certificate .certificate-signatory-block {
 min-height:0!important;height:112px!important;justify-content:flex-end!important;
}
.certificate-card.branded-certificate .certificate-seal {
 min-height:75px!important;align-self:end!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
}
.certificate-card.branded-certificate .certificate-qr-visible {
 position:absolute!important;left:6%!important;right:auto!important;
 bottom:4.2%!important;top:auto!important;width:12%!important;
 margin:0!important;transform:none!important;
}
.certificate-card.branded-certificate .certificate-qr-visible img {
 width:82px!important;height:82px!important;max-width:100%!important;object-fit:contain!important;
}
.certificate-card.branded-certificate .certificate-verify-note {
 position:absolute!important;left:20%!important;right:20%!important;
 bottom:3.5%!important;top:auto!important;margin:0!important;
 text-align:center!important;
}
.certificate-card.branded-certificate .certificate-meta,
.certificate-card.branded-certificate .certificate-meta.certificate-meta-four {
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 width:100%!important;max-width:760px!important;
}
.certificate-card.branded-certificate .certificate-meta.certificate-meta-four {
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.certificate-card.branded-certificate .certificate-meta>div {
 border-top:0!important;min-width:0!important;
}
.certificate-card.branded-certificate .certificate-meta>div+div {
 border-left:1px solid #e3d5b4!important;
}
@media print {
 @page {size:11in 8.5in;margin:0;}
 html,body {width:11in!important;height:8.5in!important;margin:0!important;padding:0!important;overflow:hidden!important;}
 body:has(.certificate-card.branded-certificate) main.academy-shell {
  width:11in!important;height:8.5in!important;min-width:11in!important;
  max-width:11in!important;min-height:0!important;
  padding:0!important;margin:0!important;display:block!important;overflow:hidden!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate {
  box-sizing:border-box!important;width:10.76in!important;max-width:10.76in!important;
  min-width:10.76in!important;height:8.26in!important;max-height:8.26in!important;
  min-height:8.26in!important;aspect-ratio:11 / 8.5!important;
  margin:.12in!important;padding:4.4% 6.4% 4%!important;
  position:relative!important;transform:none!important;zoom:1!important;
  overflow:hidden!important;box-shadow:none!important;
  break-inside:avoid!important;page-break-inside:avoid!important;
  -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-footer {
  position:absolute!important;left:22%!important;right:9%!important;
  bottom:9%!important;top:auto!important;transform:none!important;
  width:auto!important;max-width:none!important;
  grid-template-columns:minmax(0,1fr) 25%!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-signatory-block {
  height:112px!important;min-height:0!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-qr-visible {
  left:6%!important;right:auto!important;bottom:4.2%!important;top:auto!important;width:12%!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-qr-visible img {
  width:82px!important;height:82px!important;max-width:100%!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-verify-note {
  left:20%!important;right:20%!important;bottom:3.5%!important;top:auto!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-meta {
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-meta.certificate-meta-four {
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
 }
 body:has(.certificate-card.branded-certificate) .certificate-card.branded-certificate .certificate-meta>div+div {
  border-left:1px solid #e3d5b4!important;border-top:0!important;
 }
}

/* Academy Administration UI refresh v1.0.45 — presentation only; no functional changes */
body.academy-admin-ui {--ui-navy:#0b2545;--ui-deep:#071a32;--ui-accent:#d5a62c;--ui-ink:#172b44;--ui-border:#dbe4ef;--ui-muted:#64748b;background:#f2f5fa;color:var(--ui-ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.5}
body.academy-admin-ui .academy-shell{width:min(1180px,calc(100% - 36px));max-width:1180px;margin:28px auto 52px;padding:0;box-sizing:border-box}
body.academy-admin-ui .admin-page-head{border-radius:16px;background:linear-gradient(112deg,var(--ui-deep),#143c69);border:1px solid #244c76;border-top:3px solid var(--ui-accent);padding:22px 26px;box-shadow:0 12px 28px rgba(13,37,67,.10);margin-bottom:12px}
body.academy-admin-ui .admin-page-head h1{font-size:clamp(23px,2.6vw,31px);line-height:1.15;letter-spacing:-.025em;margin:2px 0 4px}
body.academy-admin-ui .admin-page-head .admin-kicker{letter-spacing:.09em;text-transform:uppercase;font-weight:750}
body.academy-admin-ui .admin-brand-lockup{gap:16px;min-width:0}
body.academy-admin-ui .admin-brand-lockup img{width:60px;height:60px;max-width:60px;max-height:60px;object-fit:contain;border-radius:12px;background:#fff;padding:6px;box-sizing:border-box}
body.academy-admin-ui .vista-dropdown-nav{border-radius:13px;margin:0 0 22px;box-shadow:0 8px 24px rgba(13,37,67,.10);border-bottom:2px solid var(--ui-accent);background:var(--ui-navy)}
body.academy-admin-ui .vista-navbrand{padding:12px 16px;min-width:120px}
body.academy-admin-ui .vista-mainlink,body.academy-admin-ui .vista-dd-button{min-height:47px;display:inline-flex;align-items:center;gap:5px}
body.academy-admin-ui .vista-dd-menu{border-radius:10px;box-shadow:0 12px 28px rgba(10,31,55,.2);border:1px solid var(--ui-border);overflow:hidden;z-index:40}
body.academy-admin-ui .vista-dd-menu a{padding:11px 16px}
body.academy-admin-ui .academy-table,body.academy-admin-ui table:not(.calendar):not(.certificate-table){border:1px solid var(--ui-border);border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;background:white;box-shadow:0 6px 20px rgba(15,36,65,.045);width:100%}
body.academy-admin-ui .academy-table th,body.academy-admin-ui table:not(.calendar):not(.certificate-table) th{background:#eaf0f7;color:#24405d;font-size:11px;letter-spacing:.055em;text-transform:uppercase;font-weight:750;padding:13px 14px;text-align:left;border-bottom:1px solid var(--ui-border)}
body.academy-admin-ui .academy-table td,body.academy-admin-ui table:not(.calendar):not(.certificate-table) td{padding:13px 14px;border-bottom:1px solid #e9eef5;vertical-align:middle;overflow-wrap:anywhere}
body.academy-admin-ui .academy-table tr:last-child td,body.academy-admin-ui table:not(.calendar):not(.certificate-table) tr:last-child td{border-bottom:0}
body.academy-admin-ui .academy-table tbody tr:hover,body.academy-admin-ui table:not(.calendar):not(.certificate-table) tr:hover{background:#f7faff}
body.academy-admin-ui .card,body.academy-admin-ui .panel,body.academy-admin-ui .gib-card,body.academy-admin-ui .admin-card,body.academy-admin-ui .form-card{border:1px solid var(--ui-border);border-radius:14px;box-shadow:0 8px 22px rgba(12,36,67,.05);background:#fff}
body.academy-admin-ui h2,body.academy-admin-ui h3{color:#123459;letter-spacing:-.02em}
body.academy-admin-ui input:not([type=checkbox]):not([type=radio]):not([type=hidden]),body.academy-admin-ui select,body.academy-admin-ui textarea{max-width:100%;min-height:39px;border:1px solid #c9d6e5;border-radius:8px;background:#fff;box-sizing:border-box;padding:9px 12px;color:#172b44;transition:border-color .15s,box-shadow .15s}
body.academy-admin-ui textarea{min-height:92px}
body.academy-admin-ui input:focus-visible,body.academy-admin-ui select:focus-visible,body.academy-admin-ui textarea:focus-visible,body.academy-admin-ui a:focus-visible,body.academy-admin-ui button:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}
body.academy-admin-ui button:not(.vista-dd-button),body.academy-admin-ui .button,body.academy-admin-ui a.primary,body.academy-admin-ui .primary{border-radius:8px;font-weight:650;transition:filter .15s,transform .15s}
body.academy-admin-ui button:not(.vista-dd-button):hover,body.academy-admin-ui .button:hover,body.academy-admin-ui a.primary:hover{filter:brightness(1.08)}
body.academy-admin-ui .admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0}
body.academy-admin-ui .admin-toolbar a,body.academy-admin-ui .admin-toolbar button{margin:0}
body.academy-admin-ui .academy-shell > p:has(> .button){display:flex;gap:9px;flex-wrap:wrap;align-items:center}
body.academy-admin-ui .academy-shell > form{margin:12px 0 16px}
body.academy-admin-ui .academy-shell > form:has(input[name=q]){display:flex;flex-wrap:wrap;gap:9px;align-items:center}
body.academy-admin-ui .academy-shell > form:has(input[name=q]) input{flex:1;min-width:180px}
body.academy-admin-ui .academy-shell > form:has(input[name=q]) button{width:auto;min-width:100px}
body.academy-admin-ui .status-pass,body.academy-admin-ui .pass{font-weight:750;color:#167347}
body.academy-admin-ui .status-fail,body.academy-admin-ui .fail{font-weight:750;color:#aa3030}
body.academy-admin-ui .gib-hero{border-radius:14px;overflow:hidden}
body.academy-admin-ui .gib-nys{max-width:1180px}
body.academy-admin-ui .audit-pagination{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}
body.academy-admin-ui .academy-shell > footer,body.academy-admin-ui .academy-shell > .academy-footer{border-radius:12px;margin-top:22px}
@media(max-width:760px){body.academy-admin-ui .academy-shell{width:calc(100% - 22px);margin:14px auto 28px}body.academy-admin-ui .admin-page-head{padding:17px}body.academy-admin-ui .admin-user-chip{display:none}body.academy-admin-ui .vista-dropdown-nav{overflow:visible}body.academy-admin-ui .academy-table{display:block;overflow-x:auto}body.academy-admin-ui .academy-table th,body.academy-admin-ui .academy-table td{padding:10px}body.academy-admin-ui .admin-brand-lockup img{width:48px;height:48px}body.academy-admin-ui .academy-shell > form:has(input[name=q]) button{width:100%}}
@media print{body.academy-admin-ui{background:#fff!important}body.academy-admin-ui .academy-shell{width:100%!important;max-width:none!important;margin:0!important}body.academy-admin-ui .academy-table{box-shadow:none!important}body.academy-admin-ui .vista-dropdown-nav{display:none!important}}
