:root{--font:'Plus Jakarta Sans',system-ui,sans-serif;--primary:#2563eb;--primary-dark:#1d4ed8;--teal:#0f766e;--ink:#17233c;--muted:#697386;--line:#dfe4ec;--soft:#f7f9fc;--white:#fff;--danger:#b42318}*{box-sizing:border-box}html{font-size:15px}body{margin:0;background:var(--soft);color:var(--ink);font-family:var(--font);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-dark)}h1,h2,h3{letter-spacing:-.035em;line-height:1.2}h1{font-size:clamp(1.9rem,3vw,2.65rem);margin:0 0 1rem}h2{font-size:1.25rem;margin-top:2rem}h3{font-size:1rem}.app-shell{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}.app-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:1.15rem;background:#fff;border-right:1px solid var(--line);z-index:30}.sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:.3rem .35rem 1.2rem}.sidebar-brand>a,.mobile-header>a{display:flex;align-items:center;gap:.65rem;color:#13213a;font-size:1.2rem;font-weight:800;letter-spacing:-.045em}.brand-mark{display:grid;place-items:center;width:33px;height:33px;border-radius:.65rem;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff}.sidebar-brand button,.mobile-header button{display:none;border:0;background:transparent;font-size:1.35rem}.primary-action{display:flex;align-items:center;justify-content:center;gap:.55rem;margin:.2rem 0 1.3rem;padding:.72rem .9rem;border-radius:.55rem;background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 5px 12px rgba(37,99,235,.22);color:#fff;font-size:.85rem;font-weight:700}.primary-action:hover{color:#fff;transform:translateY(-1px)}.sidebar-nav{display:flex;flex-direction:column;gap:.18rem;overflow:auto}.nav-label{margin:1rem .7rem .35rem;color:#8a93a2;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav a{display:flex;align-items:center;gap:.72rem;padding:.63rem .72rem;border-radius:.5rem;color:#596477;font-size:.83rem;font-weight:600}.sidebar-nav a i{width:18px;font-size:1rem}.sidebar-nav a:hover,.sidebar-nav a.is-active{background:#eef3ff;color:#244fc7}.sidebar-account{margin-top:auto;padding-top:1rem;border-top:1px solid #edf0f4}.user-card{display:flex;align-items:center;gap:.65rem;margin-bottom:.65rem}.avatar{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:50%;background:#e8f2ff;color:#2855b6;font-size:.78rem;font-weight:800}.user-card>span:last-child{display:flex;min-width:0;flex-direction:column}.user-card strong,.user-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-card strong{font-size:.78rem}.user-card small{color:#8a93a2;font-size:.65rem}.logout,.signin,.register{display:block;width:100%;border:0;border-radius:.45rem;padding:.55rem;text-align:center;font:600 .78rem var(--font)}.logout{background:transparent;color:#687385}.signin{border:1px solid var(--line);color:var(--ink)}.register{margin-top:.45rem;background:var(--primary);color:#fff}.app-content{min-width:0}.page-container{width:min(1180px,calc(100% - 3rem));margin:0 auto}.page-container>main{max-width:none!important;margin:0!important;padding:2.75rem 0 5rem!important;font-family:var(--font)!important}.mobile-header{display:none}.sidebar-backdrop{display:none}
.public-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:0 max(1.5rem,calc((100vw - 1180px)/2));background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.public-brand{display:flex;align-items:center;gap:.65rem;color:var(--ink);font-size:1.2rem;font-weight:800;letter-spacing:-.045em}.public-header nav{display:flex;align-items:center;gap:1.4rem}.public-header nav a{color:#586477;font-size:.84rem;font-weight:650}.public-header nav .public-cta{padding:.62rem .9rem;border-radius:.5rem;background:var(--primary);color:#fff}.public-content{min-height:calc(100vh - 72px)}.public-content>main:not(.auth-page){width:min(1180px,calc(100% - 3rem));margin:0 auto!important;padding-left:0!important;padding-right:0!important}.public-content .hero{min-height:calc(100vh - 72px);align-content:center}.auth-page{min-height:calc(100vh - 72px);display:grid;place-items:center;padding:2rem 1rem!important;margin:0!important;max-width:none!important}.auth-card{width:min(460px,100%);padding:2rem!important;border:1px solid var(--line)!important;border-radius:1rem!important;background:#fff;box-shadow:0 20px 45px rgba(23,35,60,.08)}.auth-card h1{text-align:center}.auth-card>p{text-align:center;color:var(--muted)}.auth-card form{display:flex;flex-direction:column;align-items:stretch}.auth-card input:not([type=checkbox]){width:100%}.auth-card button{width:100%;margin-top:.4rem}
main>header:first-child,.workspace-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}main>header:first-child h1{margin:0}section,article{border-color:var(--line)!important}main>section,main>article{background:#fff;border:1px solid var(--line)!important;border-radius:.8rem!important;padding:1.25rem!important;margin:1rem 0!important;box-shadow:0 1px 2px rgba(15,23,42,.03)}button,.button,input[type=submit]{border:0;border-radius:.5rem;padding:.65rem 1rem;background:var(--primary);color:#fff;font:700 .8rem var(--font);cursor:pointer}button:hover{background:var(--primary-dark)}form{display:flex;flex-wrap:wrap;align-items:end;gap:.7rem;margin:.8rem 0}label{display:flex;flex-direction:column;gap:.3rem;color:#596477;font-size:.76rem;font-weight:700}label:has(input[type=checkbox]){flex-direction:row;align-items:center}input:not([type=checkbox]):not([type=hidden]),select,textarea{min-height:40px;border:1px solid #cfd6e2;border-radius:.5rem;background:#fff;padding:.58rem .72rem;color:var(--ink);font:500 .84rem var(--font)}textarea{min-width:260px;min-height:90px}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px rgba(37,99,235,.11)}table{width:100%!important;border-collapse:separate!important;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:.8rem;overflow:hidden}th,td{padding:.8rem 1rem!important;border-bottom:1px solid #edf0f4!important;text-align:left!important;font-size:.82rem}th{background:#f8fafc;color:#697386;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}tbody tr:last-child td{border-bottom:0!important}tbody tr:hover{background:#fafcff}.status-pill,small{color:#7c8798}.empty-state{padding:3rem;text-align:center;background:#fff;border:1px dashed #ccd5e3;border-radius:.8rem}.hero{display:grid;grid-template-columns:1.4fr .8fr;gap:1.5rem;align-items:stretch;padding:3.5rem 0}.hero-copy,.dashboard-card{background:#fff;border:1px solid var(--line);border-radius:1rem;padding:2rem}.eyebrow{display:block;color:var(--teal);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hero h1{margin-top:.6rem;font-size:clamp(2.3rem,5vw,4rem)}.hero p{color:var(--muted);font-size:1.05rem}.hero-actions{display:flex;gap:.7rem;margin-top:1.5rem}.hero-actions a{padding:.72rem 1rem;border-radius:.55rem;font-weight:700}.hero-actions .primary{background:var(--primary);color:#fff}.hero-actions .secondary{border:1px solid var(--line);color:var(--ink)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.stat{background:#fff;border:1px solid var(--line);border-radius:.8rem;padding:1.2rem}.stat span{color:var(--muted);font-size:.75rem;font-weight:700}.stat strong{display:block;margin:.25rem 0;font-size:1.8rem}.feature-list{display:grid;gap:.75rem}.feature-list div{display:flex;align-items:center;gap:.7rem}.feature-list i{display:grid;place-items:center;width:34px;height:34px;border-radius:.5rem;background:#e9f6f3;color:var(--teal)}
@media(max-width:850px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:fixed;left:0;transform:translateX(-105%);width:270px;transition:transform .2s}.sidebar-open .app-sidebar{transform:none}.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:20}.sidebar-brand button,.mobile-header button{display:block}.mobile-header{display:flex;align-items:center;gap:1rem;height:64px;padding:0 1rem;background:#fff;border-bottom:1px solid var(--line)}.page-container{width:min(100% - 1.5rem,1180px)}.hero{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.stat-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column}form{align-items:stretch;flex-direction:column}input,select,textarea,button{width:100%}main>header:first-child{align-items:flex-start;flex-direction:column}}
.dashboard-card{margin-top:1.25rem}.dashboard-card>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f4;padding-bottom:1rem}.dashboard-card>header h2,.dashboard-card>header p{margin:.15rem 0}.dashboard-card>header p{color:var(--muted);font-size:.82rem}.course-list{margin:0 -2rem -2rem}.workspace-row{display:flex;align-items:center;gap:.85rem;padding:1rem 1.4rem;border-top:1px solid #edf0f4;color:var(--ink)}.workspace-row:hover{background:#f8fafc;color:var(--ink)}.workspace-row>span:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column}.workspace-row small{margin-top:.15rem}.course-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:.55rem;background:#edf2ff;color:#335eea}
.landing-page>section{margin:0!important}.landing-page .hero-copy{align-self:center;border:0;background:transparent;padding:2.5rem 2.5rem 2.5rem 0}.hero-panel{align-self:center;background:linear-gradient(145deg,#fff,#f3f7ff)}.landing-section{padding:6rem 0!important;background:transparent!important;border:0!important;box-shadow:none!important}.section-intro{max-width:720px;margin:0 auto 2.5rem;text-align:center}.section-intro h2,.landing-band h2,.landing-cta h2{margin:.55rem 0 1rem;font-size:clamp(1.8rem,4vw,3rem)}.section-intro p,.landing-grid p,.landing-cta p{color:var(--muted)}.landing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.landing-grid article{margin:0;padding:1.6rem;border:1px solid var(--line);border-radius:1rem;background:#fff}.landing-grid article>i{display:grid;place-items:center;width:42px;height:42px;border-radius:.65rem;background:#eaf1ff;color:var(--primary);font-size:1.15rem}.landing-grid article h3{margin:1.2rem 0 .45rem;font-size:1.05rem}.landing-grid article p{margin:0;font-size:.87rem}.landing-band{display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;align-items:center;padding:5rem!important;border:0!important;border-radius:1.25rem!important;background:#15223b!important;color:#fff;box-shadow:none!important}.landing-steps{display:grid;gap:.8rem}.landing-steps span{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid rgba(255,255,255,.13);border-radius:.7rem;background:rgba(255,255,255,.05);font-weight:650}.landing-steps strong{color:#68d6c9;font-size:.75rem;letter-spacing:.08em}.landing-cta{display:flex;min-height:430px;flex-direction:column;align-items:center;justify-content:center;padding:5rem 1rem!important;text-align:center;background:transparent!important;border:0!important;box-shadow:none!important}.landing-cta p{margin-top:0}.landing-cta a{margin-top:1rem;padding:.8rem 1.1rem;border-radius:.55rem;background:var(--primary);color:#fff;font-weight:750}
@media(max-width:850px){.landing-grid{grid-template-columns:1fr}.landing-band{grid-template-columns:1fr;padding:2.5rem!important}.landing-page .hero-copy{padding-right:0}.public-header{padding:0 1.25rem}.public-header nav{gap:.8rem}}
@media(max-width:560px){.public-header nav>a:first-child{display:none}.public-header nav{gap:.55rem}.public-header nav a{font-size:.76rem}.public-header nav .public-cta{padding:.52rem .65rem}.auth-card{padding:1.4rem!important}.landing-section{padding:4rem 0!important}}

/* Public experience */
.public-header{box-shadow:0 1px 0 rgba(15,23,42,.02)}.public-brand .brand-mark{box-shadow:0 7px 18px rgba(37,99,235,.24)}.public-header nav a{transition:color .18s,background .18s,transform .18s}.public-header nav .public-cta{box-shadow:0 6px 16px rgba(37,99,235,.2)}.public-header nav .public-cta:hover{transform:translateY(-1px);background:var(--primary-dark);color:#fff}
.landing-page{position:relative}.landing-page:before{position:absolute;z-index:-1;top:0;left:50%;width:min(100vw,1500px);height:760px;transform:translateX(-50%);background:radial-gradient(circle at 15% 20%,rgba(37,99,235,.1),transparent 38%),radial-gradient(circle at 85% 35%,rgba(15,118,110,.09),transparent 36%);content:"";pointer-events:none}.landing-page .hero{gap:5rem}.landing-page .hero-copy h1{max-width:760px;background:linear-gradient(135deg,#13213a 15%,#294f99 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.landing-page .hero-copy>p{max-width:660px;font-size:1.08rem;line-height:1.75}.hero-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .68rem;border:1px solid #d9e5ff;border-radius:999px;background:rgba(255,255,255,.72);color:#315cc8;font-size:.72rem;font-weight:750;letter-spacing:.02em}.hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:140px;transition:transform .18s,box-shadow .18s}.hero-actions .primary{box-shadow:0 10px 24px rgba(37,99,235,.22)}.hero-actions a:hover{transform:translateY(-2px)}.hero-proof{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:1.4rem;color:#647084;font-size:.74rem;font-weight:650}.hero-proof i{margin-right:.35rem;color:var(--teal)}
.hero-panel{overflow:hidden;padding:0!important;border-color:#d8e1ef!important;box-shadow:0 28px 70px rgba(29,51,91,.14)}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid #e9edf4;background:#fbfcfe;color:#8a94a5}.preview-toolbar>span{display:flex;gap:.3rem}.preview-toolbar>span i{width:7px;height:7px;border-radius:50%;background:#d5dbe5}.preview-toolbar small{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.preview-title{display:flex;align-items:center;gap:.8rem;padding:1.35rem 1.4rem}.preview-title>div{display:flex;min-width:0;flex:1;flex-direction:column}.preview-title small{font-size:.67rem}.preview-title strong{font-size:.86rem}.preview-status{padding:.3rem .52rem;border-radius:999px;background:#e7f7f2;color:#087160;font-size:.62rem;font-weight:800}.preview-progress{padding:0 1.4rem 1.4rem}.preview-progress>div{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.7rem}.preview-progress>span{display:block;height:7px;overflow:hidden;border-radius:999px;background:#e9edf4}.preview-progress>span i{display:block;width:72%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#35a89b)}.hero-panel .feature-list{padding:1.1rem 1.4rem 1.4rem;border-top:1px solid #e9edf4;background:#fbfcfe}.hero-panel .feature-list div{padding:.65rem;border-radius:.65rem;background:#fff;border:1px solid #e8edf4}.hero-panel .feature-list span{display:flex;flex-direction:column}.hero-panel .feature-list strong{font-size:.72rem}.hero-panel .feature-list small{font-size:.62rem}
.landing-grid article{transition:transform .2s,box-shadow .2s,border-color .2s}.landing-grid article:hover{transform:translateY(-4px);border-color:#cbd9f5;box-shadow:0 18px 36px rgba(28,50,88,.08)}.landing-cta{position:relative}.landing-cta:before{position:absolute;z-index:-1;width:420px;height:260px;border-radius:50%;background:rgba(37,99,235,.08);filter:blur(70px);content:""}

/* Authentication */
.auth-page{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 15%,rgba(37,99,235,.1),transparent 32%),radial-gradient(circle at 88% 85%,rgba(15,118,110,.09),transparent 30%),#f7f9fc}.auth-page:before,.auth-page:after{position:absolute;width:220px;height:220px;border:1px solid rgba(37,99,235,.09);border-radius:50%;content:"";pointer-events:none}.auth-page:before{top:-100px;left:-70px}.auth-page:after{right:-80px;bottom:-120px;width:280px;height:280px}.auth-card{position:relative;z-index:1;width:min(450px,100%);padding:2.35rem!important;border-color:#dce3ee!important;box-shadow:0 28px 70px rgba(28,45,75,.12)}.auth-card-wide{width:min(620px,100%)}.auth-icon{display:grid;width:46px;height:46px;margin:0 auto 1rem;place-items:center;border-radius:.8rem;background:linear-gradient(135deg,var(--primary),#3155bd);box-shadow:0 9px 20px rgba(37,99,235,.22);color:#fff;font-size:1.15rem}.auth-heading{text-align:center}.auth-heading .eyebrow{margin-bottom:.4rem}.auth-heading h1{margin:0;font-size:1.7rem}.auth-heading p{max-width:430px;margin:.65rem auto 1.65rem;color:var(--muted);font-size:.82rem}.auth-form{display:block;margin:0}.field-group{margin-bottom:1rem}.field-group>label,.field-label-row label{margin-bottom:.4rem;color:#38445a;font-size:.72rem}.field-label-row{display:flex;align-items:center;justify-content:space-between}.field-label-row a{font-size:.7rem;font-weight:700}.input-shell{display:flex;align-items:center;height:45px;border:1px solid #cfd7e4;border-radius:.58rem;background:#fff;transition:border-color .18s,box-shadow .18s}.input-shell:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(37,99,235,.1)}.input-shell>i{padding-left:.8rem;color:#8791a1}.input-shell input:not([type=checkbox]){width:100%;height:100%;min-height:0;border:0;background:transparent;box-shadow:none;padding:.65rem .75rem}.field-validation{display:block;min-height:.2rem;margin-top:.3rem;color:var(--danger);font-size:.67rem}.validation-summary{margin-bottom:1rem;padding:.7rem .8rem;border-radius:.5rem;background:#fff1f0;color:var(--danger);font-size:.72rem}.validation-summary:empty{display:none}.validation-summary ul{margin:0;padding-left:1.1rem}.check-row{display:flex!important;flex-direction:row!important;align-items:center;gap:.4rem;margin:.2rem 0 1.1rem;color:#667185;font-size:.72rem}.check-row input{accent-color:var(--primary)}.auth-submit{display:flex;width:100%;height:44px;align-items:center;justify-content:center;gap:.55rem;background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 8px 18px rgba(37,99,235,.2);transition:transform .18s,box-shadow .18s}.auth-submit:hover{transform:translateY(-1px);box-shadow:0 11px 24px rgba(37,99,235,.24)}.auth-switch{margin:1.35rem 0 0;text-align:center;color:#778295;font-size:.75rem}.auth-switch a{font-weight:750}.auth-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
@media(max-width:850px){.landing-page .hero{gap:1rem}.hero-panel{max-width:560px;width:100%;margin:0 auto}.landing-page .hero-copy{text-align:center}.landing-page .hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.hero-proof{justify-content:center}}
@media(max-width:560px){.auth-page{place-items:start center;padding-top:1.3rem!important}.auth-card{padding:1.55rem!important}.auth-field-grid{grid-template-columns:1fr}.landing-page .hero-copy h1{font-size:2.45rem}.hero-proof{gap:.55rem 1rem}.hero-panel{margin-top:.75rem}}
.secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.62rem .85rem;border:1px solid #ccd5e3;border-radius:.52rem;background:#fff!important;color:#354158!important;font-size:.76rem;font-weight:750;white-space:nowrap}.secondary-action:hover{border-color:#aebbd0;color:var(--primary)!important}.workspace-heading .inline-actions>.primary-action{min-height:38px;margin:0;padding:.62rem .85rem;font-size:.76rem}.danger-button{background:#fff1f0!important;color:var(--danger)!important;border:1px solid #ffd1cd!important}.danger-button:hover{background:#ffe5e2!important}.icon-danger{display:grid!important;width:34px!important;height:34px!important;padding:0!important;place-items:center;background:#fff1f0!important;color:var(--danger)!important}.inline-form,.inline-actions{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important;margin:0!important}.inline-form input{min-width:80px}.inline-actions{gap:.5rem}.danger-zone{margin-top:1rem!important;padding-top:1rem;border-top:1px solid #f0e3e3}.management-card{padding:1.5rem!important}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;border-bottom:1px solid #edf0f4;padding-bottom:1rem}.card-heading h2{margin:0}.card-heading p{margin:.3rem 0 0;color:var(--muted);font-size:.8rem}.management-card details{margin-top:.8rem;border:1px solid #e5eaf1;border-radius:.6rem;padding:.65rem .8rem}.management-card summary{cursor:pointer;color:#566175;font-size:.74rem;font-weight:750}.management-card details[open] summary{margin-bottom:.8rem}.management-card form{margin-bottom:0}.muted{color:var(--muted)}.course-cover{display:block;width:100%;max-height:320px;margin-bottom:1.5rem;border-radius:1rem;object-fit:cover;box-shadow:0 12px 30px rgba(23,35,60,.1)}
.lecture-list{display:grid;gap:.7rem}.lecture-item{padding:1rem;border:1px solid #e7ebf1;border-radius:.7rem;background:#fafbfd}.lecture-copy{display:flex;gap:.8rem}.lecture-copy h3,.lecture-copy p{margin:.1rem 0 .45rem}.lecture-copy>div{flex:1}.resource-grid,.group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.resource-grid article{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid #e6ebf2;border-radius:.7rem}.resource-grid article>i{font-size:1.2rem;color:var(--primary)}.resource-grid article>div{display:flex;min-width:0;flex:1;flex-direction:column}.resource-grid article form{margin:0}.announcement{padding:1rem 0;border-bottom:1px solid #edf0f4}.announcement:last-child{border-bottom:0}.announcement h3,.announcement p{margin:.15rem 0 .5rem}.create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.create-grid>div{padding:1rem;border:1px solid #e7ebf1;border-radius:.7rem}.create-grid h2{margin-top:0}.create-grid form{align-items:stretch;flex-direction:column}
.schedule-list{display:grid;gap:.7rem}.schedule-list article{display:flex;align-items:flex-start;gap:.9rem;padding:1rem;border:1px solid #e7ebf1;border-radius:.75rem}.date-tile{display:flex;width:48px;flex:0 0 48px;flex-direction:column;align-items:center;padding:.45rem;border-radius:.55rem;background:#edf3ff;color:var(--primary)}.date-tile strong{font-size:1.05rem}.date-tile span{font-size:.62rem;font-weight:750;text-transform:uppercase}.schedule-copy{display:flex;min-width:0;flex:1;flex-direction:column}.schedule-copy small,.schedule-copy span{color:var(--muted);font-size:.7rem}.schedule-copy p{margin:.35rem 0 0}.schedule-list details{max-width:420px}.group-grid article{padding:1rem;border:1px solid #e7ebf1;border-radius:.75rem;background:#fff}.group-grid h3,.group-grid p{margin:.1rem 0 .4rem}.member-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:.8rem 0}.member-chips>span{display:inline-flex;align-items:center;gap:.2rem;padding:.3rem .45rem;border-radius:999px;background:#eef3fb;font-size:.66rem;font-weight:650}.member-chips form{margin:0}.member-chips button{display:grid;width:18px!important;height:18px!important;padding:0!important;place-items:center;background:transparent!important;color:#718096!important}
div.dt-container{font-size:.78rem}div.dt-container .dt-search input,div.dt-container .dt-length select{min-height:36px;border-color:#ccd5e3;border-radius:.45rem;background:#fff}div.dt-container .dt-paging .dt-paging-button{border-radius:.4rem!important}.table-responsive{overflow-x:auto}.table{margin-bottom:0!important}.table>:not(caption)>*>*{padding:.78rem .9rem!important;background:transparent!important;box-shadow:none!important}.table thead th{white-space:nowrap}.table form{margin:0}
@media(max-width:850px){.resource-grid,.group-grid,.create-grid{grid-template-columns:1fr}.schedule-list article{flex-wrap:wrap}.schedule-list details{width:100%;max-width:none}}
@media(max-width:560px){.workspace-heading .secondary-action{width:100%}.card-heading{align-items:flex-start;flex-direction:column}.inline-form{align-items:stretch!important;flex-direction:column!important}.inline-actions{align-items:stretch!important;flex-direction:column!important}.secondary-action{width:100%}}

/* Course workspace */
.course-hero{display:flex;align-items:center;gap:1.4rem;margin-bottom:1.25rem;padding:1.6rem;border:1px solid var(--line);border-radius:1rem;background:linear-gradient(135deg,#fff,#f3f7ff);box-shadow:0 8px 24px rgba(23,35,60,.06)}
.course-hero .course-cover{width:180px;height:118px;flex:0 0 180px;margin:0;object-fit:cover}
.course-hero h1,.course-hero p{margin:.25rem 0}.course-hero p{max-width:760px;color:var(--muted)}
.course-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1rem 0 1.4rem}
.course-action-grid a{display:grid;grid-template-columns:38px 1fr;column-gap:.75rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:.8rem;background:#fff;color:var(--ink);transition:transform .18s,border-color .18s,box-shadow .18s}
.course-action-grid a:hover{transform:translateY(-2px);border-color:#c7d5f1;box-shadow:0 10px 24px rgba(23,35,60,.07)}
.course-action-grid i{display:grid;grid-row:1/3;width:38px;height:38px;place-items:center;border-radius:.6rem;background:#edf3ff;color:var(--primary);font-size:1rem}
.course-action-grid strong{font-size:.8rem}.course-action-grid span{color:var(--muted);font-size:.67rem}
.section-card-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.section-card-grid>article{display:flex;min-width:0;flex-direction:column;gap:.7rem;margin:0!important;padding:1rem!important;border:1px solid #e3e9f1!important;border-radius:.75rem!important;background:#fff;box-shadow:none!important}
.section-card-grid>article>div,.section-card-grid>article>strong,.section-card-grid>article>small{display:flex;flex-direction:column}.section-card-grid small{color:var(--muted);font-size:.68rem}
progress{width:100%;height:7px;border:0;border-radius:999px;overflow:hidden;background:#e8edf5}progress::-webkit-progress-bar{background:#e8edf5}progress::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--teal))}progress::-moz-progress-bar{background:var(--primary)}
.invite-member-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem}.invite-member-panel h2,.invite-member-panel p{margin:.15rem 0}.invite-member-panel p{color:var(--muted);font-size:.78rem}
.attendance-section-filter{display:flex;align-items:end;gap:.65rem;margin-bottom:.8rem;padding:.8rem;border:1px solid #e5eaf1;border-radius:.65rem;background:#fafbfd}.attendance-section-filter label{display:flex;flex:1;flex-direction:column;gap:.3rem;color:var(--muted);font-size:.68rem;font-weight:700}.attendance-section-filter select{width:100%;color:var(--ink);font-size:.82rem}.attendance-create{display:grid;grid-template-columns:minmax(180px,1.5fr) 170px 130px auto;align-items:end}.attendance-create label{align-items:stretch}.attendance-create label input{width:100%}
.attendance-session-list{display:grid;gap:.5rem;margin-top:1rem}.attendance-session{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid #e5eaf1;border-radius:.65rem;background:#fafbfd;color:var(--ink)}
.attendance-session>span{display:flex;flex-direction:column}.attendance-session>span:last-child{align-items:flex-end;color:var(--muted);font-size:.68rem}.attendance-session small{font-size:.67rem}
.attendance-sheet{margin-top:1rem;padding-top:1rem;border-top:1px solid #e8edf3}.attendance-sheet>header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.attendance-sheet h3{margin:.25rem 0}.attendance-sheet>form{display:block}.attendance-sheet table select,.attendance-sheet table input{width:100%}.attendance-save{margin-top:.8rem}.success-banner{margin:.7rem 0;padding:.7rem .8rem;border-radius:.55rem;background:#e8f7f2;color:#087160;font-size:.75rem;font-weight:700}.week-divider{display:flex;align-items:center;gap:.6rem;margin:.8rem 0 .15rem;color:#68768b;font-size:.65rem;font-weight:800;text-transform:uppercase}.week-divider:after{height:1px;flex:1;background:#dfe5ec;content:""}.attendance-percentage{display:flex;align-items:flex-end;flex-direction:column}.attendance-percentage strong{color:#087e73;font-size:1.4rem}.attendance-percentage small{color:var(--muted)}
@media(max-width:850px){.course-action-grid,.section-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-create{grid-template-columns:1fr 1fr}.invite-member-panel{align-items:stretch;flex-direction:column}}
@media(max-width:560px){.course-hero{align-items:flex-start;flex-direction:column}.course-hero .course-cover{width:100%;height:180px}.course-action-grid,.section-card-grid,.attendance-create{grid-template-columns:1fr}.attendance-section-filter{align-items:stretch;flex-direction:column}.attendance-sheet>header{align-items:stretch;flex-direction:column}}
.attendance-page{max-width:1180px!important}.attendance-calendar-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.attendance-calendar-strip article{display:flex;align-items:center;gap:.7rem;padding:.85rem 1rem;border:1px solid #dfe6ef;border-radius:.72rem;background:#fff}.attendance-calendar-strip article>i{display:grid;width:36px;height:36px;place-items:center;border-radius:.58rem;background:#eaf2ff;color:#0b63d8}.attendance-calendar-strip span{display:flex;min-width:0;flex-direction:column}.attendance-calendar-strip small{color:#768297;font-size:.58rem;font-weight:800;text-transform:uppercase}.attendance-calendar-strip strong{margin-top:.12rem;font-size:.72rem}.attendance-section-picker{padding:1rem!important}.attendance-section-picker form{display:flex!important;align-items:end!important;gap:.7rem!important;margin:0!important}.attendance-section-picker label{min-width:280px}.attendance-status-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.attendance-status-overview article{display:grid;grid-template-columns:1fr auto;gap:.15rem .6rem;padding:.85rem 1rem;border:1px solid #dfe6ef;border-radius:.72rem;background:#fff}.attendance-status-overview span{font-size:.64rem;font-weight:800}.attendance-status-overview strong{grid-row:1/3;grid-column:2;font-size:1.2rem}.attendance-status-overview small{color:#778398;font-size:.58rem}.status-present{color:#087765!important}.status-absent{color:#b23d34!important}.status-late{color:#9a6800!important}.status-excused{color:#3c65a8!important}.attendance-registers{overflow:hidden}.attendance-registers>.attendance-create{padding:1rem;border-bottom:1px solid #e6ebf2}.attendance-register-list{display:grid}.attendance-register-list article{border-top:1px solid #edf0f4}.attendance-register-list article:first-child{border-top:0}.attendance-register-list article.is-selected{background:#f3f8ff}.attendance-register-list a{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.85rem 1rem;color:var(--ink)}.attendance-register-date{display:grid;width:42px;height:42px;place-items:center;border-radius:.6rem;background:#edf3fb}.attendance-register-date strong{line-height:1;font-size:.95rem}.attendance-register-date small{font-size:.54rem;text-transform:uppercase}.attendance-register-copy{display:flex;min-width:0;flex-direction:column}.attendance-register-copy small{color:#758196;font-size:.58rem}.attendance-register-copy strong{margin-top:.12rem;font-size:.78rem}.attendance-register-counts{display:flex;gap:.35rem}.attendance-register-counts b{padding:.2rem .35rem;border-radius:999px;background:#f1f3f6;font-size:.56rem}.attendance-session-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.9rem}.attendance-session-actions>details{flex:1;margin:0!important}.attendance-session-actions>details>summary{display:inline-flex;align-items:center;gap:.35rem}.attendance-session-actions details form{display:grid!important;grid-template-columns:minmax(180px,1fr) 160px 130px auto;align-items:end!important;margin-top:.7rem!important;padding:.8rem;border:1px solid #dfe6ef;border-radius:.65rem;background:#fafbfd}.attendance-session-actions>form{margin:0!important}.attendance-sheet{padding:1.15rem!important;border-top:0}.attendance-sheet>.card-heading{margin:-1.15rem -1.15rem 1rem;padding:1rem 1.15rem}.attendance-sheet>form:last-child{display:block}.attendance-sheet table select,.attendance-sheet table input{width:100%}.attendance-state{display:inline-flex!important;padding:.28rem .5rem;border-radius:999px;background:#f0f3f7;font-size:.6rem!important;font-weight:800}.attendance-state.status-present{background:#e4f7f1}.attendance-state.status-absent{background:#ffedeb}.attendance-state.status-late{background:#fff3d8}.attendance-state.status-excused{background:#eaf1ff}@media(max-width:850px){.attendance-calendar-strip{grid-template-columns:1fr}.attendance-status-overview{grid-template-columns:1fr 1fr}.attendance-register-list a{grid-template-columns:42px minmax(0,1fr) auto}.attendance-register-counts{grid-column:2/-1}.attendance-session-actions details form{grid-template-columns:1fr 1fr}}@media(max-width:560px){.attendance-section-picker form,.attendance-session-actions{align-items:stretch!important;flex-direction:column}.attendance-section-picker label{min-width:0;width:100%}.attendance-status-overview{grid-template-columns:1fr 1fr}.attendance-register-list a{grid-template-columns:38px minmax(0,1fr) auto}.attendance-register-counts{display:grid;grid-template-columns:1fr 1fr}.attendance-session-actions details form{grid-template-columns:1fr}.attendance-session-actions>form,.attendance-session-actions>form button{width:100%}}

.ta-attendance-notice{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:1rem;padding:.85rem 1rem;border:1px solid #d7def3;border-radius:.7rem;background:#f6f8ff;color:#455b9e}.ta-attendance-notice>i{margin-top:.1rem;font-size:1rem}.ta-attendance-notice>div{display:flex;flex-direction:column}.ta-attendance-notice strong{font-size:.72rem}.ta-attendance-notice span{margin-top:.12rem;font-size:.64rem}.attendance-register-summary{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.85rem 1rem;color:var(--ink)}.attendance-register-list article.is-summary-only{background:#fafbfd}.summary-only-badge{display:inline-flex!important;align-items:center;gap:.3rem;padding:.28rem .45rem;border-radius:999px;background:#e9edf4;color:#687589;font-size:.56rem!important;font-weight:800}@media(max-width:850px){.attendance-register-summary{grid-template-columns:42px minmax(0,1fr) auto}.attendance-register-summary .attendance-register-counts{grid-column:2/-1}.summary-only-badge{grid-column:2/-1;justify-self:start}}@media(max-width:560px){.attendance-register-summary{grid-template-columns:38px minmax(0,1fr) auto}.attendance-register-summary .attendance-register-counts{display:grid;grid-template-columns:1fr 1fr}}
.attendance-gap-alert{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:1rem;padding:1rem 1.1rem;border:1px solid #efd8aa;border-radius:.75rem;background:#fffaf0;color:#74520f}.attendance-gap-alert>i{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:.6rem;background:#ffedc8;font-size:1rem}.attendance-gap-alert>div{min-width:0}.attendance-gap-alert strong{font-size:.76rem}.attendance-gap-alert p{margin:.15rem 0 .55rem;color:#80682f;font-size:.65rem}.attendance-gap-alert>div>div{display:flex;flex-wrap:wrap;gap:.4rem}.attendance-gap-alert a{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .5rem;border:1px solid #ead19e;border-radius:.5rem;background:#fff;color:#795611;font-size:.62rem;font-weight:800;text-decoration:none}.attendance-gap-alert a small{font-size:.54rem;font-weight:600}.attendance-matrix-card{margin-bottom:1rem!important;overflow:hidden}.attendance-view-toggle{display:flex;gap:.25rem;padding:.2rem;border:1px solid #dce4ed;border-radius:.55rem;background:#f3f6f9}.attendance-view-toggle button{min-height:32px;padding:.35rem .55rem;border:0;border-radius:.4rem;background:transparent;color:#617187;font-size:.61rem;font-weight:800}.attendance-view-toggle button.is-active{background:#fff;color:#175ea9;box-shadow:0 1px 4px rgba(32,61,94,.13)}.attendance-matrix-scroll{max-height:520px;overflow:auto}.attendance-matrix-table,.attendance-marking-table{width:100%;border-collapse:separate;border-spacing:0;color:#344a61;font-size:.68rem}.attendance-matrix-table th,.attendance-matrix-table td,.attendance-marking-table th,.attendance-marking-table td{padding:.62rem .7rem;border-right:1px solid #edf0f4;border-bottom:1px solid #e8edf2;background:#fff;text-align:center;white-space:nowrap}.attendance-matrix-table thead th,.attendance-marking-table thead th{position:sticky;z-index:3;top:0;background:#f4f7fb;color:#4c6077;font-size:.59rem;letter-spacing:.02em;text-transform:uppercase}.attendance-matrix-table thead th span{display:block}.attendance-matrix-table thead th small{display:block;margin-top:.1rem;color:#8090a3;font-size:.52rem;font-weight:600;text-transform:none}.attendance-matrix-table .attendance-sticky{position:sticky;z-index:2;text-align:left}.attendance-matrix-table thead .attendance-sticky{z-index:5}.attendance-matrix-table .attendance-reg{left:0;min-width:130px}.attendance-matrix-table .attendance-name{left:130px;min-width:190px}.attendance-matrix-table tbody tr:hover td{background:#f8fbff}.attendance-matrix-table tbody tr:hover .attendance-sticky{background:#f8fbff}.attendance-code{display:inline-grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#eef2f6;font-size:.6rem;font-weight:900}.attendance-code.status-present{background:#dff5ed}.attendance-code.status-absent{background:#ffebe9}.attendance-code.status-late{background:#fff1cf}.attendance-code.status-excused{background:#e8f0ff}.attendance-marking-table th,.attendance-marking-table td{text-align:left}.attendance-marking-table th:first-child,.attendance-marking-table td:first-child{width:150px}.attendance-marking-table th:nth-child(2),.attendance-marking-table td:nth-child(2){min-width:180px}.attendance-marking-table th:nth-child(3),.attendance-marking-table td:nth-child(3){min-width:330px}.attendance-marking-table th:last-child,.attendance-marking-table td:last-child{min-width:210px}.attendance-marking-table tbody tr:hover td{background:#f9fbfd}.attendance-status-buttons{display:grid;grid-template-columns:repeat(4,minmax(64px,1fr));gap:.3rem}.attendance-status-buttons button{display:flex;min-height:40px;align-items:center;justify-content:center;gap:.3rem;padding:.35rem .45rem;border:1px solid #dce3eb;border-radius:.5rem;background:#fff;color:#66768a;font-size:.58rem;font-weight:750}.attendance-status-buttons button>span{display:grid;width:21px;height:21px;place-items:center;border-radius:50%;background:#eef2f6;font-weight:900}.attendance-status-buttons button.is-selected{border-color:currentColor;box-shadow:0 0 0 2px currentColor inset}.attendance-status-buttons .status-present.is-selected{background:#eaf8f3;color:#087765}.attendance-status-buttons .status-absent.is-selected{background:#fff0ee;color:#a83a32}.attendance-status-buttons .status-late.is-selected{background:#fff6df;color:#8a6105}.attendance-status-buttons .status-excused.is-selected{background:#edf3ff;color:#315e9f}.attendance-save-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border-top:1px solid #e4e9ef;background:#f8fafc}.attendance-save-bar>span{display:flex;align-items:center;gap:.4rem;color:#718095;font-size:.62rem}.attendance-save-bar .attendance-save{min-width:170px;margin:0}.attendance-registers .card-heading,.attendance-sheet .card-heading{align-items:center}.attendance-registers .attendance-create>button,.attendance-session-actions button{min-height:42px;justify-content:center}
.grade-policy-form .grade-threshold-field{grid-column:1/-1}.grade-threshold-field small{margin-top:.2rem;color:#748297;font-size:.62rem;line-height:1.45}.letter-grade{display:inline-grid;min-width:28px;height:28px;place-items:center;margin-left:.35rem;padding:0 .35rem;border-radius:.45rem;background:#e6f2ff;color:#165fae;font-size:.68rem;font-style:normal}.progress-measure.grade-hidden{justify-content:center;padding:.55rem .7rem;border:1px dashed #dce3eb;border-radius:.55rem;background:#fafbfd}.progress-measure.grade-hidden strong{color:#66778b}.progress-measure.grade-hidden>small{color:#8090a1;font-size:.58rem}
@media(max-width:760px){.attendance-view-toggle{width:100%}.attendance-view-toggle button{flex:1}.attendance-matrix-table .attendance-name{left:110px;min-width:150px}.attendance-matrix-table .attendance-reg{min-width:110px}.attendance-status-buttons{grid-template-columns:1fr 1fr}.attendance-save-bar{align-items:stretch;flex-direction:column}.attendance-save-bar .attendance-save{width:100%}.attendance-gap-alert{flex-direction:column}}

/* Assessment list and attendance production layout */
.assessment-hub .assessment-layout.has-sidebar{grid-template-columns:minmax(0,1fr) 350px}
.assessment-hub .assessment-row-card{overflow:hidden}
.assessment-card-detail{border-top:1px solid #e7edf3;background:#fbfcfe}
.assessment-card-detail>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem 1.2rem 0;color:#324a63}
.assessment-card-detail>header>span{display:flex;align-items:center;gap:.42rem;font-size:.66rem;font-weight:850}
.assessment-card-detail>header>span i{color:var(--assessment-blue)}
.assessment-card-detail>header>small{color:#7a8798;font-size:.57rem;font-weight:700}
.assessment-card-detail .result-strip{border-top:0;background:transparent;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.assessment-admin-footer{display:grid;grid-template-columns:minmax(210px,1fr) minmax(300px,auto);align-items:start}
.assessment-admin-footer .assessment-manage-link{width:100%;min-width:0;min-height:48px}
.assessment-sync-actions{display:grid;min-width:300px;grid-template-columns:repeat(2,minmax(135px,1fr));align-items:start;gap:.55rem}
.assessment-sync-actions>form{display:flex!important;min-width:0;flex-direction:column;gap:.35rem;margin:0}
.assessment-sync-actions>.secondary-action,.assessment-sync-actions>form>.secondary-action{width:100%;min-height:48px!important;margin:0;justify-content:center;white-space:nowrap}
.assessment-sync-actions .sync-registration-choice{order:2;align-self:flex-start;padding:0 .15rem;white-space:normal}

.attendance-page{padding-bottom:2rem}
.attendance-page .workspace-heading{align-items:flex-end}
.attendance-page button,.attendance-page .secondary-action{margin:0}
.attendance-export-action{display:flex;min-width:220px;min-height:50px;align-items:center;justify-content:flex-start;gap:.65rem;padding:.55rem .8rem}
.attendance-export-action>i{font-size:1rem}
.attendance-export-action>span{display:flex;align-items:flex-start;flex-direction:column;text-align:left}
.attendance-export-action strong{font-size:.68rem}
.attendance-export-action small{margin-top:.05rem;color:#738296;font-size:.56rem;font-weight:600}
.attendance-section-picker form{display:grid!important;grid-template-columns:minmax(260px,1fr) auto;align-items:end!important}
.attendance-section-picker label{display:flex;min-width:0;flex-direction:column;gap:.28rem}
.attendance-section-picker label>span{color:#53677e;font-size:.62rem;font-weight:850;text-transform:uppercase}
.attendance-section-picker label>small{color:#7a8798;font-size:.58rem;font-weight:600}
.attendance-section-picker select{width:100%;min-height:42px}
.attendance-section-picker button{min-width:140px;min-height:42px;justify-content:center}
.attendance-registers{margin-bottom:1rem!important}
.attendance-create-panel{display:grid;grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr);align-items:end;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid #e6ebf2;background:#f8fafc}
.attendance-subheading{display:flex;align-items:flex-start;gap:.65rem;padding-bottom:.18rem}
.attendance-subheading>span{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:.58rem;background:#e6f1ff;color:#1263d6}
.attendance-subheading>div{display:flex;flex-direction:column}
.attendance-subheading strong{color:#304862;font-size:.72rem}
.attendance-subheading small{margin-top:.13rem;color:#748397;font-size:.59rem;line-height:1.45}
.attendance-registers>.attendance-create-panel>.attendance-create{display:grid;grid-template-columns:minmax(180px,1.5fr) 155px 110px auto;align-items:end;gap:.65rem;padding:0;border:0}
.attendance-create label{display:flex;min-width:0;flex-direction:column;gap:.28rem;color:#52657b;font-size:.58rem;font-weight:800}
.attendance-create input{width:100%;min-height:42px}
.attendance-create>button{min-width:140px;min-height:42px;white-space:nowrap}
.attendance-register-list-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid #e7ecf2;background:#fff}
.attendance-register-list-heading>div{display:flex;flex-direction:column}
.attendance-register-list-heading strong{color:#314a63;font-size:.68rem}
.attendance-register-list-heading small{margin-top:.08rem;color:#78869a;font-size:.57rem}
.attendance-register-list-heading>span{padding:.3rem .5rem;border-radius:999px;background:#edf3fa;color:#4d6681;font-size:.55rem;font-weight:800;white-space:nowrap}
.attendance-register-list article{transition:background .16s ease,box-shadow .16s ease}
.attendance-register-list article:hover{background:#f7faff}
.attendance-register-list article.is-selected{box-shadow:inset 3px 0 #1263d6}
.attendance-register-list a,.attendance-register-summary{min-height:66px}
.attendance-sheet{overflow:hidden}
.attendance-sheet>.card-heading{align-items:center}
.attendance-sheet>.card-heading>.secondary-action{min-width:150px;min-height:42px;justify-content:center}
.attendance-session-actions{align-items:center;padding:.75rem .85rem;border:1px solid #e2e8ef;border-radius:.65rem;background:#fafbfd}
.attendance-session-actions>details>summary{min-height:38px;padding:.45rem .65rem;border:1px solid #d7e0ea;border-radius:.5rem;background:#fff;color:#3d5874;font-size:.64rem;font-weight:800;cursor:pointer;list-style:none}
.attendance-session-actions>details>summary::-webkit-details-marker{display:none}
.attendance-session-actions .danger-button{min-height:38px}
.attendance-marking-form>.table-responsive{border:1px solid #e1e7ee;border-radius:.65rem .65rem 0 0}
.attendance-marking-table tbody tr:nth-child(even) td{background:#fbfcfe}
.attendance-marking-table input[name="notes"]{min-height:40px}
.attendance-status-buttons button{margin:0}
.attendance-status-buttons button:focus-visible{outline:3px solid rgba(18,99,214,.22);outline-offset:1px}
.attendance-save-bar{position:sticky;z-index:4;bottom:0;border:1px solid #e1e7ee;border-top:0;border-radius:0 0 .65rem .65rem;box-shadow:0 -6px 16px rgba(24,50,75,.035)}
.attendance-save-bar .attendance-save{min-height:42px;justify-content:center}

@media(max-width:1120px){
  .assessment-hub .assessment-layout.has-sidebar{grid-template-columns:1fr}
  .assessment-admin-footer{grid-template-columns:minmax(210px,.8fr) minmax(300px,1.2fr)}
  .attendance-create-panel{grid-template-columns:1fr}
}
@media(max-width:850px){
  .assessment-admin-footer{grid-template-columns:1fr}
  .assessment-sync-actions{width:100%;min-width:0}
  .attendance-page .workspace-heading{align-items:stretch;flex-direction:column}
  .attendance-export-action{width:100%;min-width:0}
  .attendance-section-picker form{grid-template-columns:1fr}
  .attendance-section-picker button{width:100%}
  .attendance-registers>.attendance-create-panel>.attendance-create{grid-template-columns:1fr 1fr}
  .attendance-create>button{width:100%}
}
@media(max-width:560px){
  .assessment-card-detail>header{align-items:flex-start;flex-direction:column;gap:.2rem}
  .assessment-sync-actions{grid-template-columns:1fr}
  .attendance-registers>.attendance-create-panel>.attendance-create{grid-template-columns:1fr}
  .attendance-register-list-heading{align-items:flex-start}
  .attendance-register-counts{grid-column:1/-1;margin-left:46px}
  .attendance-sheet>.card-heading{align-items:stretch;flex-direction:column}
  .attendance-sheet>.card-heading>.secondary-action{width:100%}
}

/* Professional course settings */
.course-settings-page{max-width:1180px;margin:0 auto;padding:0 0 4rem}
.settings-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:1.4rem;padding:1.7rem 1.8rem;border:1px solid var(--line);border-radius:1rem;background:linear-gradient(135deg,#fff 55%,#eef6ff);box-shadow:0 8px 28px rgba(23,35,60,.06)}
.settings-hero-copy{min-width:0}.settings-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin:.3rem 0}.settings-title-row h1{margin:0;font-size:1.8rem}.settings-hero-copy>p{margin:.25rem 0 .9rem;color:var(--muted)}
.settings-status{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .55rem;border-radius:999px;font-size:.65rem;font-weight:800}.settings-status.is-active{background:#e6f7f1;color:#087160}.settings-status.is-archived{background:#eef1f5;color:#657084}
.settings-meta{display:flex;flex-wrap:wrap;gap:1rem;color:#687386;font-size:.7rem;font-weight:650}.settings-meta span{display:inline-flex;align-items:center;gap:.35rem}.settings-meta i{color:#168d81}.settings-hero-actions{display:flex;align-items:center;gap:.55rem}.settings-hero-actions .btn-wizard-primary{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}
.settings-wizard{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));margin-bottom:1rem;overflow:hidden;border:1px solid var(--line);border-radius:.9rem;background:#fff;box-shadow:0 2px 8px rgba(23,35,60,.035)}.settings-wizard-progress{position:absolute;top:0;right:0;left:0;height:3px;background:#e8edf3}.settings-wizard-progress span{display:block;width:0;height:100%;background:#168d81;transition:width .25s ease}.settings-wizard button{display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto auto;gap:0 .55rem;padding:1rem .8rem;border:0;border-right:1px solid #edf0f4;border-radius:0;background:#fff;color:#748095;text-align:left}.settings-wizard button:last-child{border-right:0}.settings-wizard button>span{display:grid;grid-row:1/3;width:28px;height:28px;place-items:center;align-self:center;border-radius:50%;background:#eef2f6;color:#748095;font-size:.65rem;font-weight:800}.settings-wizard button strong{align-self:end;color:#4b586c;font-size:.7rem}.settings-wizard button small{align-self:start;font-size:.57rem}.settings-wizard button:hover{background:#f7fafc}.settings-wizard button.is-active{background:#f1faf8}.settings-wizard button.is-active>span{background:#168d81;color:#fff;box-shadow:0 0 0 4px #dff3ef}.settings-wizard button.is-active strong{color:#08766c}.settings-wizard button.is-complete>span{background:#dff3ef;color:#08766c}.settings-wizard button.is-complete>span:before{content:"✓"}.settings-wizard button.is-complete>span{font-size:0}.settings-wizard button.is-complete>span:before{font-size:.72rem}.settings-wizard-actions{position:sticky;z-index:5;bottom:1rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-top:1rem;padding:.7rem .8rem;border:1px solid #dce4ed;border-radius:.8rem;background:rgba(255,255,255,.96);box-shadow:0 8px 25px rgba(23,35,60,.12);backdrop-filter:blur(8px)}.settings-wizard-actions>span{display:flex;align-items:center;flex-direction:column}.settings-wizard-actions strong{font-size:.72rem}.settings-wizard-actions small{color:#7d8796;font-size:.58rem}.settings-wizard-actions button{display:inline-flex;align-items:center;gap:.4rem}.settings-wizard-actions [data-wizard-previous]{justify-self:start;margin:0}.settings-wizard-actions [data-wizard-next]{justify-self:end}.settings-wizard-actions button:disabled{cursor:not-allowed;opacity:.4}
.sidebar-subnav{display:flex;flex-direction:column;gap:.08rem;margin:-.05rem 0 .25rem 1.55rem;padding:.2rem 0 .25rem .68rem;border-left:1px solid #dbe3ee}.sidebar-nav .sidebar-subnav a{padding:.38rem .5rem;color:#7a8494;font-size:.68rem;font-weight:600}.sidebar-nav .sidebar-subnav a:hover{background:#f3f6fa;color:#244fc7}
.settings-content{display:grid;gap:1rem;min-width:0}.course-settings-page .settings-card{scroll-margin-top:1rem;margin:0!important;padding:0!important;overflow:hidden;border:1px solid var(--line)!important;border-radius:.9rem!important;background:#fff;box-shadow:0 2px 8px rgba(23,35,60,.035)}
.course-settings-page [data-wizard-panel][hidden]{display:none!important}.course-settings-page .settings-shared-form{display:grid!important;gap:1rem}
.settings-card-header{display:flex;align-items:center;gap:.85rem;padding:1.25rem 1.35rem;border-bottom:1px solid #e9edf3;background:#fbfcfe}.settings-card-header h2,.settings-card-header p{margin:0}.settings-card-header h2{font-size:1rem;letter-spacing:-.015em}.settings-card-header p{margin-top:.2rem;color:var(--muted);font-size:.72rem}.settings-card-icon{display:grid;width:39px;height:39px;flex:0 0 39px;place-items:center;border-radius:.65rem;background:#e8f5f2;color:#168d81}
.cover-setting{display:flex;align-items:center;gap:1rem;padding:1.2rem 1.35rem;border-bottom:1px solid #edf0f4}.cover-preview{display:grid;width:92px;height:58px;flex:0 0 92px;overflow:hidden;place-items:center;border:1px solid #dfe5ed;border-radius:.6rem;background:#f1f4f8;color:#8792a2}.cover-preview img{width:100%;height:100%;object-fit:cover}.cover-copy{display:flex;min-width:160px;flex:1;flex-direction:column}.cover-copy strong{font-size:.76rem}.cover-copy small{color:var(--muted);font-size:.66rem}.cover-upload-form{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;margin:0!important}.file-button{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem .75rem;border:1px dashed #b9c4d3;border-radius:.5rem;color:#526074!important;cursor:pointer;white-space:nowrap}.file-button input{position:absolute;width:1px!important;height:1px;overflow:hidden;opacity:0}
.settings-form,.course-settings-page .settings-content>form{display:block;margin:0}.settings-field-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:1rem;padding:1.35rem}.settings-field-grid label{align-items:stretch}.settings-field-grid label>span,.staff-invite-form label>span{color:#354158;font-size:.72rem}.settings-field-grid input,.settings-field-grid select,.settings-field-grid textarea{width:100%}.settings-field-grid .field-wide{grid-column:1/-1}.settings-field-grid small{font-size:.62rem}
.settings-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding:.9rem 1.35rem;border-top:1px solid #e9edf3;background:#fbfcfe}.settings-form-actions span{margin-right:auto;color:#808a99;font-size:.65rem}.settings-form-actions button{display:inline-flex;align-items:center;gap:.4rem}
.settings-fieldset{margin:0;padding:1.35rem;border:0}.settings-fieldset legend{margin-bottom:.7rem;color:#354158;font-size:.72rem;font-weight:750}.settings-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.settings-choice{position:relative;display:block;cursor:pointer}.settings-choice input{position:absolute;opacity:0}.settings-choice>span{display:flex;min-height:126px;flex-direction:column;padding:.9rem;border:1px solid #dfe4eb;border-radius:.7rem;transition:.18s}.settings-choice>span>i{margin-bottom:.7rem;color:#708096;font-size:1.05rem}.settings-choice strong{font-size:.72rem}.settings-choice small{margin-top:.25rem;color:#818b99;font-size:.62rem}.settings-choice:hover>span{border-color:#a7c9c5}.settings-choice input:checked+span{border-color:#168d81;background:#f1faf8;box-shadow:0 0 0 1px #168d81}.settings-choice input:checked+span>i{color:#168d81}
.settings-toggle-list{padding:0 1.35rem 1.35rem}.settings-toggle{display:grid!important;grid-template-columns:36px minmax(0,1fr) 42px;align-items:center;gap:.75rem;padding:.8rem 0;border-top:1px solid #edf0f4;cursor:pointer}.settings-toggle>span:nth-child(2){display:flex;flex-direction:column}.settings-toggle strong{color:#354158;font-size:.74rem}.settings-toggle small{color:#7d8797;font-size:.64rem}.settings-toggle-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:.55rem;background:#f0f4f8;color:#66758a}.settings-toggle input{position:absolute;opacity:0}.settings-toggle>i:last-child{display:block;width:40px;height:23px;padding:3px;border-radius:20px;background:#cbd1da;transition:.18s}.settings-toggle>i:last-child:after{display:block;width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);content:"";transition:.18s}.settings-toggle input:checked+i{background:#168d81}.settings-toggle input:checked+i:after{transform:translateX(17px)}
.settings-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;padding:1.35rem}.settings-tool{position:relative;display:grid!important;grid-template-columns:38px minmax(0,1fr) 23px;align-items:center;gap:.75rem;padding:.9rem;border:1px solid #e0e5ec;border-radius:.7rem;cursor:pointer;transition:.18s}.settings-tool input{position:absolute;opacity:0}.settings-tool>span:nth-child(3){display:flex;flex-direction:column}.settings-tool strong{color:#354158;font-size:.74rem}.settings-tool small{color:#7c8797;font-size:.63rem}.settings-tool-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:.55rem;background:#f0f4f8;color:#68778a}.settings-tool>.bi-check2{display:none;width:21px;height:21px;place-items:center;border-radius:50%;background:#168d81;color:#fff}.settings-tool:has(input:checked){border-color:#8bbfb9;background:#f4fbfa}.settings-tool:has(input:checked) .settings-tool-icon{background:#dff3ef;color:#118477}.settings-tool:has(input:checked)>.bi-check2{display:grid}
.professional-join-code{display:flex;align-items:center;gap:.7rem;padding:1.35rem}.professional-join-code>div{display:flex;min-width:0;flex:1;flex-direction:column}.professional-join-code>div span{color:#7c8796;font-size:.65rem;font-weight:700;text-transform:uppercase}.professional-join-code>div strong{color:#173b55;font-size:1.45rem;letter-spacing:.18em}.professional-join-code form{margin:0}.settings-note{display:flex;align-items:center;gap:.4rem;margin:0;padding:.7rem 1.35rem;border-top:1px solid #e9edf3;background:#fbfcfe;color:#7c8796;font-size:.65rem}
.staff-invite-form{display:flex!important;flex-direction:column;align-items:stretch!important;gap:.9rem;padding:1.2rem 1.35rem;margin:0!important;border-bottom:1px solid #edf0f4}.staff-invite-form>header{display:flex;align-items:center;gap:.65rem}.staff-invite-form>header>div{display:flex;flex-direction:column;gap:.1rem}.staff-invite-form>header strong{font-size:.78rem}.staff-invite-form>header small{color:#748095;font-size:.61rem}.staff-role-icon{display:grid;width:36px;height:36px;place-items:center;flex:0 0 auto;border-radius:.65rem;background:#eaf6f4;color:#117d72}.staff-invite-form input{width:100%}.staff-email-field{align-items:stretch!important}.staff-access-fieldset{min-width:0;margin:0;padding:0;border:0}.staff-access-fieldset legend{margin:0 0 .45rem;color:#354158;font-size:.67rem;font-weight:800}.staff-access-fieldset>small{display:block;margin-top:.45rem;color:#7d8797;font-size:.58rem;line-height:1.45}.invite-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-invite-form>button{align-self:flex-start}.staff-settings-list{display:grid;gap:.8rem;padding:1.35rem}.staff-settings-card{margin:0!important;padding:0!important;border:1px solid #e1e6ed!important;border-radius:.75rem!important;box-shadow:none!important}.staff-settings-card>header{display:flex;align-items:center;gap:.7rem;padding:.9rem 1rem;border-bottom:1px solid #edf0f4}.staff-settings-card>header>div{display:flex;flex-direction:column}.staff-settings-card>header strong{font-size:.76rem}.staff-settings-card>header small{font-size:.64rem}.staff-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#e6f4f1;color:#117d72;font-size:.72rem;font-weight:800}.staff-settings-card>form{display:flex;align-items:flex-end;gap:.8rem;margin:0;padding:1rem}.permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;flex:1}.permission-grid label{display:block!important}.permission-grid input{position:absolute;opacity:0}.permission-grid span{display:flex;align-items:center;gap:.4rem;padding:.5rem .6rem;border:1px solid #e0e5ec;border-radius:.5rem;color:#6a7586;font-size:.65rem;cursor:pointer}.permission-grid input:focus-visible+span{outline:2px solid #1b6fc2;outline-offset:2px}.permission-grid input:checked+span{border-color:#9ac7c2;background:#eff9f7;color:#0d786e}.staff-settings-card>footer{display:flex;justify-content:flex-end;gap:.6rem;padding:.65rem 1rem;border-top:1px solid #edf0f4;background:#fbfcfe}.staff-settings-card>footer form{margin:0}.danger-link,.text-action{padding:.35rem!important;background:transparent!important;font-size:.64rem!important}.danger-link{color:var(--danger)!important}.text-action{color:#59677a!important}.settings-empty{display:flex;align-items:center;gap:.8rem;margin:1.2rem;padding:1rem;border:1px dashed #cfd7e2;border-radius:.7rem;color:#7d8796}.settings-empty>i{font-size:1.2rem}.settings-empty strong{color:#4d596b;font-size:.74rem}.settings-empty p{margin:.15rem 0 0;font-size:.65rem}
.staff-invite-grid{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #edf0f4}.staff-invite-grid .staff-invite-form{border-bottom:0}.staff-invite-grid .staff-invite-form+.staff-invite-form{border-left:1px solid #edf0f4}.staff-invite-form label small{color:#7d8797;font-size:.6rem}.ta-invite-form .staff-role-icon{background:#eef0ff;color:#5366a8}.ta-invite-form button{background:#5366a8}.team-success{margin:1rem 1.35rem 0}.ta-team-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.35rem;border-top:1px solid #e5eaf0;border-bottom:1px solid #edf0f4;background:#f8faff}.ta-team-heading>div{display:flex;flex-direction:column}.ta-team-heading strong{font-size:.75rem}.ta-team-heading small{margin-top:.15rem;color:#748095;font-size:.62rem}.ta-team-heading>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#e8edff;color:#455b9e;font-size:.65rem;font-weight:800}.ta-settings-list{padding-top:1rem}.ta-settings-card{border-color:#d9e0f5!important}.ta-settings-card>header{background:#fafbff}.ta-permission-badge{display:inline-flex!important;align-items:center;gap:.3rem;margin-left:auto;padding:.28rem .5rem;border-radius:999px;background:#e9edff;color:#455b9e;font-size:.57rem!important;font-weight:800}.ta-scope{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.8rem 1rem;border-top:1px solid #edf0f4}.ta-scope span{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .5rem;border-radius:.45rem;background:#f1f4f9;color:#5f6c80;font-size:.61rem;font-weight:700}.ta-scope i{color:#168d81}
.course-settings-page .settings-danger-card{border-color:#efd5d2!important}.settings-danger-card .settings-card-header{background:#fffafa}.settings-danger-card .settings-card-icon{background:#fff0ee;color:var(--danger)}.availability-action{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 1.35rem}.availability-action>div{display:flex;flex-direction:column}.availability-action strong{font-size:.76rem}.availability-action small{color:#7c8796;font-size:.65rem}.availability-action form{margin:0}
@media(max-width:1000px){.settings-choice-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.settings-hero{flex-direction:column}.settings-hero-actions{width:100%}.settings-hero-actions>*{flex:1}.settings-wizard{display:flex;overflow-x:auto}.settings-wizard button{min-width:145px}.settings-wizard-actions{bottom:.5rem;grid-template-columns:1fr 1fr}.settings-wizard-actions>span{display:none}.settings-field-grid,.settings-tools-grid{grid-template-columns:1fr}.settings-field-grid .field-wide{grid-column:auto}.cover-setting{align-items:stretch;flex-direction:column}.cover-preview{width:100%;height:150px}.cover-upload-form{align-items:stretch!important;flex-direction:column!important}.settings-choice-grid{grid-template-columns:1fr}.settings-choice>span{min-height:100px}.professional-join-code{align-items:stretch;flex-direction:column}.professional-join-code .secondary-action{width:100%}.staff-invite-grid{grid-template-columns:1fr}.staff-invite-grid .staff-invite-form+.staff-invite-form{border-top:1px solid #edf0f4;border-left:0}.staff-invite-form{grid-template-columns:1fr}.staff-settings-card>form{align-items:stretch;flex-direction:column}.permission-grid{grid-template-columns:1fr 1fr;width:100%}.ta-settings-card>header{align-items:flex-start;flex-wrap:wrap}.ta-permission-badge{margin-left:42px}.availability-action{align-items:stretch;flex-direction:column}.settings-form-actions{align-items:stretch;flex-direction:column}.settings-form-actions span{margin:0}.settings-form-actions button{justify-content:center;width:100%}}

/* Legacy-compatible lesson authoring */
.detailed-lecture{align-items:flex-start!important}.lecture-meta,.lecture-links{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}.lecture-meta{margin-bottom:.3rem}.lecture-meta span{padding:.18rem .45rem;border-radius:999px;background:#eef3f8;color:#617085;font-size:.61rem;font-weight:700}.lecture-meta .is-draft{background:#fff4d8;color:#8a6414}.lecture-links{margin-top:.6rem}.lecture-links a{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .55rem;border:1px solid #dce3ec;border-radius:.45rem;background:#fff;font-size:.68rem;font-weight:700}.content-editor{margin:.75rem 0;border:1px solid #dfe5ed;border-radius:.7rem;background:#fbfcfe}.content-editor>summary{display:flex;align-items:center;gap:.45rem;padding:.72rem .9rem;color:#3c526c;font-size:.72rem;font-weight:750;cursor:pointer}.content-editor[open]>summary{border-bottom:1px solid #e5eaf0}.lesson-editor-form{display:block!important;margin:0!important;padding:1rem}.lesson-editor-form>header h3,.lesson-editor-form>header p{margin:0}.lesson-editor-form>header p{margin-top:.2rem;color:var(--muted);font-size:.68rem}.lesson-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-top:.9rem}.lesson-form-grid label{display:flex;align-items:stretch;flex-direction:column;gap:.3rem}.lesson-form-grid label>span,.attachment-picker legend{color:#3f4c60;font-size:.68rem;font-weight:750}.lesson-form-grid .field-wide{grid-column:1/-1}.lesson-form-grid input,.lesson-form-grid textarea{width:100%}.lesson-form-grid small,.attachment-picker small{color:#7d8795;font-size:.61rem}.attachment-picker{margin:1rem 0 0;padding:.85rem;border:1px solid #dfe5ed;border-radius:.65rem}.attachment-options{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.7rem}.attachment-options label{display:block}.attachment-options input{position:absolute;opacity:0}.attachment-options span{display:flex;align-items:center;gap:.35rem;padding:.48rem .65rem;border:1px solid #dce3eb;border-radius:.5rem;background:#fff;color:#677487;font-size:.65rem;font-weight:700;cursor:pointer}.attachment-options input:checked+span{border-color:#7ebbb5;background:#edf8f6;color:#0f766e}.attachment-picker>input{width:100%;margin-top:.45rem}.attachment-picker>small{display:block;margin-top:.45rem}.lesson-form-actions,.drive-integration{display:flex;align-items:center;justify-content:space-between;gap:1rem}.lesson-form-actions{margin-top:1rem;padding-top:.85rem;border-top:1px solid #e7ebf0}.lesson-form-actions label{font-size:.68rem;font-weight:700}.drive-integration{padding:1.2rem 1.35rem}.drive-integration-copy{display:flex;flex-direction:column}.drive-integration-copy strong{font-size:.78rem}.drive-integration-copy small{max-width:650px;margin-top:.2rem;color:var(--muted);font-size:.66rem}.drive-integration form{margin:0}
@media(max-width:700px){.lesson-form-grid{grid-template-columns:1fr}.lesson-form-grid .field-wide{grid-column:auto}.lesson-form-actions,.drive-integration{align-items:stretch;flex-direction:column}.attachment-options{display:grid;grid-template-columns:1fr 1fr}}

/* Launch UX pass: catalog, assessments, gradebook, and progress */
.catalog-create{margin:0}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1rem!important;padding:.7rem .8rem!important;box-shadow:none!important}.catalog-toolbar label{position:relative;display:block;flex:1;max-width:520px}.catalog-toolbar label i{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#8994a4}.catalog-toolbar input{width:100%;padding-left:2.2rem!important}.catalog-toolbar>span{color:#7b8696;font-size:.72rem}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.catalog-card{display:flex;min-height:245px;flex-direction:column;margin:0!important;padding:1.15rem!important;border-radius:1rem!important;transition:transform .16s,box-shadow .16s}.catalog-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(25,40,66,.08)}.catalog-card-top{display:flex;align-items:center;justify-content:space-between}.catalog-course-icon,.assessment-icon,.summary-icon,.evaluation-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:.7rem;background:#eaf1ff;color:#315bce;font-size:1.05rem}.catalog-status,.assessment-status{padding:.25rem .5rem;border-radius:999px;background:#f0f3f7;color:#697587;font-size:.6rem;font-weight:800;text-transform:capitalize}.status-teaching,.status-published,.status-accepted{background:#e8f7f2;color:#0b7765}.status-pending,.status-draft{background:#fff5dc;color:#906b17}.status-rejected,.status-failed{background:#fff0ee;color:#a33a31}.catalog-card-copy{margin:1.25rem 0}.catalog-card-copy>span{color:#728096;font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.catalog-card-copy h2{margin:.35rem 0 .6rem;font-size:1.05rem}.catalog-card-copy p{margin:0;color:#7d8897;font-size:.7rem}.catalog-open{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.85rem;border-top:1px solid #edf0f4;color:#3558b5;font-size:.72rem;font-weight:800}.catalog-no-results{margin-top:1rem}.catalog-empty .inline-actions{justify-content:center;margin-top:1rem!important}
.notice-panel{display:flex;align-items:flex-start;gap:.8rem;margin:1rem 0;padding:1rem 1.1rem;border:1px solid #e2e7ed;border-radius:.75rem;background:#fff}.notice-panel>i{font-size:1.15rem}.notice-panel strong{font-size:.76rem}.notice-panel p{margin:.2rem 0 0;color:#6f7b8c;font-size:.68rem}.notice-warning{border-color:#eadcae;background:#fffaf0;color:#826313}.notice-error{border-color:#f0d0cc;background:#fff7f6;color:#a13a31}.assessment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.assessment-card{display:flex;flex-direction:column;margin:0!important;padding:0!important;overflow:hidden;border-radius:.9rem!important}.assessment-card>header{display:flex;align-items:flex-start;gap:.8rem;padding:1.15rem;border-bottom:1px solid #edf0f4}.assessment-card>header>div{flex:1}.assessment-card h2{margin:.3rem 0;font-size:1rem}.assessment-card header small{font-size:.65rem}.assessment-sync-error{margin:.8rem 1rem 0;padding:.55rem .65rem;border-radius:.5rem;background:#fff3f1;color:#a34339;font-size:.65rem}.attempt-list{display:grid;gap:.4rem;padding:1rem}.attempt-list>div{display:grid;grid-template-columns:1fr auto;align-items:center;padding:.65rem .7rem;border:1px solid #e4e9ef;border-radius:.55rem;background:#fbfcfe}.attempt-list span{font-size:.68rem;font-weight:700}.attempt-list strong{color:#2652bf;font-size:.85rem}.attempt-list small{grid-column:1/-1;font-size:.6rem}.assessment-no-results{flex:1;margin:0;padding:1.25rem;color:#8490a0;font-size:.7rem}.assessment-card>footer{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:auto;padding:.85rem 1rem;border-top:1px solid #edf0f4;background:#fbfcfe}.assessment-card footer form{margin:0}.last-sync{color:#8993a1;font-size:.6rem}.link-assessment-panel{margin-top:1rem!important}.assessment-link-form{display:grid!important;grid-template-columns:1.3fr 1fr .55fr auto;align-items:end!important}.assessment-link-form label,.assessment-link-form input,.assessment-link-form select{width:100%}.compact-empty{display:flex;align-items:center;gap:.7rem;padding:1rem;border:1px dashed #ced7e3;border-radius:.65rem;color:#7d8898}.compact-empty>i{font-size:1.2rem}.compact-empty>span{display:flex;flex-direction:column}.compact-empty strong{color:#4c596c;font-size:.74rem}.compact-empty small{font-size:.64rem}
.gradebook-summary,.progress-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0 0 1rem}.gradebook-summary article,.progress-summary article{display:flex;align-items:center;gap:.75rem;margin:0!important;padding:1rem!important}.gradebook-summary article>span{display:grid;width:40px;height:40px;place-items:center;border-radius:.65rem;background:#eaf5f3;color:#117a70}.gradebook-summary article>div,.progress-summary article>div{display:flex;flex-direction:column}.gradebook-summary small,.progress-summary small{font-size:.63rem}.gradebook-summary strong,.progress-summary strong{font-size:1.05rem}.evaluation-workspace>.card-heading{align-items:center}.create-grade-item{position:relative;margin:0!important;padding:0!important;border:0!important}.create-grade-item>summary{display:flex!important;align-items:center;gap:.35rem;margin:0!important;padding:.62rem .8rem!important;border-radius:.5rem;background:var(--primary);color:#fff!important}.create-grade-item[open]>summary{background:var(--primary-dark)}.create-grade-item>form{position:absolute;right:0;z-index:10;width:min(760px,calc(100vw - 3rem));margin-top:.5rem!important;padding:1rem;border:1px solid #dce3ec;border-radius:.75rem;background:#fff;box-shadow:0 18px 45px rgba(23,35,60,.16)}.grade-item-form{display:grid!important;grid-template-columns:1.3fr 1fr 1fr .65fr .65fr;align-items:end!important}.grade-item-form label:has(input[type=checkbox]){grid-column:1/-1}.evaluation-grid{display:grid;gap:.8rem}.evaluation-card{margin:0!important;padding:0!important;overflow:hidden;border-radius:.75rem!important;box-shadow:none!important}.evaluation-card>header{display:flex;align-items:center;gap:.7rem;padding:.85rem 1rem;border-bottom:1px solid #edf0f4}.evaluation-card>header>div{display:flex;flex:1;flex-direction:column}.evaluation-card header div>span{color:#718096;font-size:.58rem;font-weight:800;text-transform:uppercase}.evaluation-card h3{margin:.15rem 0;font-size:.82rem}.evaluation-card header small{font-size:.61rem}.evaluation-icon{width:36px;height:36px;font-size:.85rem}.grade-count{padding:.25rem .45rem;border-radius:999px;background:#edf6f4;color:#14786e;font-size:.58rem;font-weight:800}.quick-grade-form{display:grid!important;grid-template-columns:1.2fr .45fr 1fr auto;align-items:end!important;padding:.85rem 1rem}.quick-grade-form label,.quick-grade-form input,.quick-grade-form select{width:100%}.evaluation-card>footer{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;border-top:1px solid #edf0f4;background:#fbfcfe}.evaluation-card footer form{margin:0}.csv-import{display:flex!important;flex-direction:row!important}.result-type{display:inline-flex;padding:.25rem .48rem;border-radius:999px;background:#eef2f7;color:#627084;font-size:.6rem;font-weight:750}.result-assignment{background:#eef2ff;color:#3d59bd}.result-examplatform{background:#eeeafb;color:#674cb1}.result-attendance{background:#eaf6f3;color:#13796e}.input-suffix{position:relative}.input-suffix input{width:100%;padding-right:2rem!important}.input-suffix b{position:absolute;right:.7rem;top:50%;transform:translateY(-50%);color:#8490a0;font-size:.7rem}
.progress-summary .summary-icon{background:#eaf5f3;color:#137c71}.policy-panel{padding:0!important}.policy-panel>summary{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.15rem;cursor:pointer}.policy-panel>summary>span{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:.65rem}.policy-panel>summary>span>i{grid-row:1/3;display:grid;width:38px;height:38px;place-items:center;border-radius:.6rem;background:#edf2ff;color:#3159c2}.policy-panel>summary strong{font-size:.78rem}.policy-panel>summary small{font-size:.63rem}.policy-form{display:grid!important;grid-template-columns:1fr 1fr 1fr 1.4fr auto;align-items:end!important;margin:0!important;padding:1rem 1.15rem;border-top:1px solid #e5eaf0}.policy-toggle{display:flex!important;align-items:center!important;flex-direction:row!important;padding:.55rem .65rem;border:1px solid #dfe5ec;border-radius:.55rem}.policy-toggle>span{display:flex;flex-direction:column}.policy-toggle strong{font-size:.65rem}.policy-toggle small{font-size:.57rem}.progress-list{display:grid;gap:.6rem}.progress-list>article{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;align-items:center;gap:1rem;margin:0!important;padding:.8rem!important;border-radius:.65rem!important;box-shadow:none!important}.progress-person{display:flex;align-items:center;gap:.65rem}.progress-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#eaf1ff;color:#3159c2;font-size:.68rem;font-weight:800}.progress-person>div{display:flex;flex-direction:column}.progress-person strong{font-size:.72rem}.progress-person small{font-size:.6rem}.progress-measure>div{display:flex;justify-content:space-between;font-size:.62rem}.progress-measure progress{width:100%;height:6px;border:0;border-radius:999px}.completion-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .5rem;border-radius:999px;background:#f0f3f7;color:#697587;font-size:.6rem;font-weight:800}.completion-badge.is-passing{background:#edf3ff;color:#3159bf}.completion-badge.is-complete{background:#e8f7f2;color:#0b7765}
.status-required{background:#e9f2ff;color:#195eb9}.status-optional{background:#f1f2f4;color:#687386}.assessment-grade-rule{display:grid!important;grid-template-columns:1fr 110px auto;align-items:end!important;gap:.6rem!important;margin:0!important;padding:.85rem 1rem;border-top:1px solid #edf0f4;background:#fff}.assessment-grade-rule>label:first-child{display:flex!important;align-items:center!important;flex-direction:row!important;gap:.45rem}.assessment-grade-rule>label:first-child span{display:flex;flex-direction:column}.assessment-grade-rule small{font-size:.58rem}.assessment-grade-rule input[type=number]{width:100%}.assessment-link-form{grid-template-columns:1.3fr 1fr .55fr .7fr 1fr auto}
@media(max-width:1050px){.catalog-grid{grid-template-columns:repeat(2,1fr)}.assessment-link-form,.policy-form{grid-template-columns:1fr 1fr}.assessment-grade-rule{grid-template-columns:1fr 100px}.assessment-grade-rule button{grid-column:1/-1}.policy-form button{grid-column:1/-1}.progress-list>article{grid-template-columns:1fr 1fr}.completion-badge{justify-self:start}}
@media(max-width:700px){.assessment-grade-rule{grid-template-columns:1fr!important}.assessment-grade-rule button{grid-column:auto}.assessment-link-form label:has(input[type=checkbox]){display:flex!important;align-items:center!important;flex-direction:row!important;gap:.4rem}}
@media(max-width:700px){.catalog-grid,.assessment-grid,.gradebook-summary,.progress-summary{grid-template-columns:1fr}.catalog-toolbar{align-items:stretch;flex-direction:column}.catalog-toolbar label{max-width:none}.assessment-card>footer,.evaluation-card>footer{align-items:stretch;flex-direction:column}.assessment-card>footer .inline-actions{width:100%}.assessment-link-form,.grade-item-form,.quick-grade-form,.policy-form,.progress-list>article{grid-template-columns:1fr!important}.create-grade-item>form{position:fixed;inset:auto .75rem 1rem;width:auto;max-height:80vh;overflow:auto}.evaluation-workspace>.card-heading{align-items:stretch}.csv-import{align-items:stretch!important;flex-direction:column!important}}

/* Detailed assignments */
.assignments-page{max-width:1120px;margin:0 auto}.assignment-list{display:grid;gap:1rem}.assignment-week-divider{display:flex;align-items:center;gap:.65rem;margin:.35rem 0 -.35rem;color:#5f6d82;font-size:.7rem;font-weight:850;text-transform:uppercase}.assignment-week-divider:after{height:1px;flex:1;background:#dce3eb;content:""}.assignments-page .assignment-card,.assignments-page .assignment-create-card{margin:0!important;padding:0!important;overflow:hidden;border:1px solid var(--line)!important;border-radius:.9rem!important;background:#fff;box-shadow:0 2px 9px rgba(23,35,60,.04)}
.assignment-filter-card{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin:0 0 1rem!important;padding:.8rem 1rem!important;border:1px solid #dfe6ef!important;border-radius:.75rem!important;background:#fff!important}.assignment-filter-card form{display:flex!important;align-items:flex-end!important;gap:.65rem!important;margin:0!important}.assignment-filter-card label{min-width:175px}.assignment-filter-card label>span{color:#667286;font-size:.61rem;font-weight:800;text-transform:uppercase}.assignment-filter-card select{width:100%;min-height:38px}.assignment-filter-card .secondary-action{margin:0}.assignment-filter-card form>a{display:inline-flex;min-height:38px;align-items:center;gap:.35rem;padding:.5rem;color:#687589;font-size:.65rem;font-weight:700}.assignment-filter-card>span{color:#7b8696;font-size:.65rem;white-space:nowrap}.assignment-create-page{max-width:1000px;margin:0 auto}.assignment-create-page .assignment-create-card{margin:0!important;padding:0!important;overflow:hidden;border:1px solid var(--line)!important;border-radius:.9rem!important;background:#fff;box-shadow:0 4px 16px rgba(23,35,60,.055)}.assignment-create-page .assignment-create-card>.assignment-detail-form{padding:1.35rem}.assignment-calendar-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.assignment-calendar-context article{display:flex;align-items:center;gap:.65rem;padding:.8rem .9rem;border:1px solid #dfe6ef;border-radius:.7rem;background:#fff}.assignment-calendar-context article>i{display:grid;width:34px;height:34px;place-items:center;border-radius:.55rem;background:#eaf2ff;color:#0b63d8}.assignment-calendar-context article>span{display:flex;min-width:0;flex-direction:column}.assignment-calendar-context small{color:#778398;font-size:.57rem;font-weight:800;text-transform:uppercase}.assignment-calendar-context strong{margin-top:.1rem;font-size:.68rem}.assignment-create-form [data-calculated-week]{background:#f3f6fa;color:#315a91;font-weight:800}.assignment-create-form [data-week-message]{color:#557096}
.assignment-create-header{display:flex;align-items:center;gap:.8rem;padding:1.15rem 1.35rem;border-bottom:1px solid #e6ebf2;background:linear-gradient(135deg,#f7fbff,#f2f8ff)}.assignment-create-header>span{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:.7rem;background:#1269d3;color:#fff;font-size:1rem;box-shadow:0 5px 12px rgba(18,105,211,.18)}.assignment-create-header h2,.assignment-create-header p{margin:0}.assignment-create-header h2{font-size:1rem}.assignment-create-header p{margin-top:.16rem;color:#718096;font-size:.67rem}.assignment-create-form{padding:0!important}.assignment-form-section{padding:1.4rem 1.5rem;border-bottom:1px solid #e9edf3}.assignment-form-section>header{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:1rem}.assignment-form-section>header>span{display:grid;width:26px;height:26px;flex:0 0 26px;place-items:center;border-radius:50%;background:#e8f2ff;color:#125fbe;font-size:.65rem;font-weight:850}.assignment-form-section>header h3,.assignment-form-section>header p{margin:0}.assignment-form-section>header h3{font-size:.86rem}.assignment-form-section>header p{margin-top:.18rem;color:#758196;font-size:.65rem}.assignment-create-form .assignment-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.assignment-create-form label{gap:.34rem}.field-label{display:flex;align-items:center;gap:.35rem;color:#455267;font-size:.67rem;font-weight:780}.field-label b,.field-label em,.assignment-sections legend>em{padding:.13rem .32rem;border-radius:999px;background:#e8f3ff;color:#1764bd;font-size:.48rem;font-style:normal;font-weight:850;letter-spacing:.035em;text-transform:uppercase}.field-label em,.assignment-sections legend>em{background:#f0f2f5;color:#7a8492}.assignment-create-form input,.assignment-create-form select,.assignment-create-form textarea{border-color:#d8e0ea;background:#fff}.assignment-create-form input:focus,.assignment-create-form select:focus,.assignment-create-form textarea:focus{border-color:#6ca4e5;box-shadow:0 0 0 3px rgba(31,112,207,.1)}.assignment-create-form label>small{color:#7b8798;font-size:.58rem;line-height:1.45}.schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.calculated-week input{border-style:dashed!important}.late-policy-card{margin-top:1rem;overflow:hidden;border:1px solid #dce5ef;border-radius:.78rem;background:#fbfcfe}.setting-toggle{display:flex!important;align-items:center!important;justify-content:space-between;gap:1rem;padding:.9rem 1rem;cursor:pointer}.setting-toggle>span{display:flex;align-items:center;gap:.7rem}.setting-toggle>span>i{display:grid;width:35px;height:35px;flex:0 0 35px;place-items:center;border-radius:.58rem;background:#eaf2ff;color:#1768c9}.setting-toggle>span>span{display:flex;flex-direction:column}.setting-toggle strong{color:#324158;font-size:.7rem}.setting-toggle small{margin-top:.12rem;color:#778397;font-size:.59rem}.setting-toggle>input{position:absolute;opacity:0;pointer-events:none}.setting-toggle>i{position:relative;width:42px;height:24px;flex:0 0 42px;border-radius:999px;background:#c9d1dc;transition:.2s}.setting-toggle>i:after{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(21,35,55,.25);content:"";transition:.2s}.setting-toggle>input:checked+input+ i,.setting-toggle>input:checked+i{background:#1474dc}.setting-toggle>input:checked+input+ i:after,.setting-toggle>input:checked+i:after{transform:translateX(18px)}.late-deadline-field{padding:.9rem 1rem;border-top:1px solid #e2e8f0;background:#f7faff}.late-deadline-field label{max-width:430px}.late-deadline-field.is-disabled,.submission-file-settings.is-disabled{opacity:.5}.supporting-material-picker{margin:0;padding:0;border:0}.supporting-material-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.supporting-material-options label{position:relative;cursor:pointer}.supporting-material-options input{position:absolute;opacity:0;pointer-events:none}.supporting-material-options label>span{display:grid;min-height:112px;grid-template-columns:34px 1fr;grid-template-rows:auto auto;align-content:center;column-gap:.7rem;padding:.85rem;border:1px solid #dce3ec;border-radius:.72rem;background:#fff;transition:.18s}.supporting-material-options label>span>i{display:grid;grid-row:1/3;width:34px;height:34px;place-items:center;border-radius:.55rem;background:#f0f4f8;color:#65758a}.supporting-material-options strong{align-self:end;font-size:.69rem}.supporting-material-options small{align-self:start;margin-top:.12rem;color:#7a8697;font-size:.56rem}.supporting-material-options input:checked+span{border-color:#4e91dd;background:#f4f9ff;box-shadow:0 0 0 1px #4e91dd}.supporting-material-options input:checked+span>i{background:#deedff;color:#1265c5}.supporting-material-fields{display:grid;grid-template-columns:1fr 1.5fr;gap:.8rem;margin-top:.85rem;padding:.9rem;border:1px solid #dfe6ee;border-radius:.72rem;background:#f9fbfd}.submission-toggle,.publish-toggle{border:1px solid #dce5ef;border-radius:.75rem;background:#fbfcfe}.submission-file-settings{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-top:.85rem;transition:.2s}.input-suffix{display:flex}.input-suffix input{min-width:0;border-radius:.5rem 0 0 .5rem}.input-suffix span{display:flex;align-items:center;padding:0 .7rem;border:1px solid #d8e0ea;border-left:0;border-radius:0 .5rem .5rem 0;background:#f3f6f9;color:#687589;font-size:.62rem;font-weight:750}.assignment-create-form .assignment-sections{margin:0 0 .9rem;padding:.9rem;border:1px solid #dfe6ee;border-radius:.75rem;background:#fafbfd}.assignment-create-form .assignment-sections legend{padding:0 .35rem;color:#405069;font-size:.69rem}.assignment-create-form .assignment-sections legend small{display:block;margin:.18rem 0 0;color:#7d8898;font-size:.57rem;font-weight:500}.assignment-create-form .assignment-sections>div label{align-items:flex-start!important;background:#fff}.assignment-create-form .assignment-sections>div label>span{display:flex;flex-direction:column}.assignment-create-form .assignment-sections>div label small{color:#8993a1;font-size:.54rem}.assignment-create-form>.settings-form-actions{margin:0!important;padding:1rem 1.5rem;background:#f8fafc}.assignment-create-form>.settings-form-actions button{min-width:170px}
.assignment-card-header{display:grid;grid-template-columns:58px minmax(0,1fr) 70px;align-items:center;gap:1rem;padding:1.2rem 1.3rem;border-bottom:1px solid #e9edf3;background:#fbfcfe}.assignment-week,.assignment-score{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;border-radius:.6rem;background:#eef5ff}.assignment-week span,.assignment-score span{color:#748197;font-size:.58rem;font-weight:750;text-transform:uppercase}.assignment-week strong,.assignment-score strong{color:#2859b8;font-size:1.05rem}.assignment-title>div{display:flex;flex-wrap:wrap;gap:.35rem}.assignment-title h2{margin:.25rem 0;font-size:1.05rem}.assignment-title p{margin:0;color:var(--muted);font-size:.66rem}.assignment-type,.assignment-draft,.assignment-offline{padding:.22rem .4rem;border-radius:999px;background:#e5f5f1;color:#08766b;font-size:.58rem;font-weight:800}.assignment-draft{background:#eef1f5;color:#687386}.assignment-offline{background:#fff3da;color:#8a6410}
.assignment-timeline{display:grid;grid-template-columns:repeat(3,1fr);padding:.85rem 1.3rem;border-bottom:1px solid #edf0f4}.assignment-timeline>span{display:grid;grid-template-columns:28px 1fr;align-items:center;padding:.2rem .8rem;border-right:1px solid #edf0f4}.assignment-timeline>span:last-child{border:0}.assignment-timeline i{grid-row:1/3;color:#168d81}.assignment-timeline small{font-size:.58rem;text-transform:uppercase}.assignment-timeline strong{font-size:.67rem}.assignment-instructions{padding:1rem 1.3rem;color:#566175;font-size:.78rem;white-space:pre-wrap}.assignment-reference{display:flex;align-items:center;gap:.7rem;margin:0 1.3rem 1rem;padding:.75rem;border:1px solid #dce4ef;border-radius:.65rem;background:#f8fbff;color:var(--ink)}.assignment-reference>span{display:flex;flex:1;flex-direction:column}.assignment-reference>span strong{font-size:.7rem}.assignment-reference>span small{font-size:.6rem}.assignment-rules{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1.3rem 1rem}.assignment-rules span{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .45rem;border-radius:.45rem;background:#f1f4f8;color:#657186;font-size:.6rem;font-weight:700}
.assignment-editor{margin:0 1.3rem 1rem;border:1px solid #e1e6ed;border-radius:.7rem}.assignment-editor summary{padding:.7rem .8rem;color:#4f5d70;font-size:.68rem;font-weight:750;cursor:pointer}.assignment-detail-form{display:block!important;margin:0!important;padding:1.2rem}.assignment-editor .assignment-detail-form{border-top:1px solid #e7ebf1}.assignment-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.assignment-form-grid label{align-items:stretch}.assignment-form-grid input,.assignment-form-grid select,.assignment-form-grid textarea{width:100%}.assignment-form-grid .field-wide{grid-column:1/-1}.assignment-form-grid small{font-size:.59rem}.assignment-sections{margin:1rem 0;padding:0;border:0}.assignment-sections legend{color:#475467;font-size:.7rem;font-weight:800}.assignment-sections legend small{margin-left:.35rem;font-weight:500}.assignment-sections>div{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.55rem}.assignment-sections label{display:flex!important;flex-direction:row!important;align-items:center;gap:.3rem;padding:.45rem .6rem;border:1px solid #dfe5ec;border-radius:.5rem;background:#fafbfd;color:#596679;font-size:.65rem}.assignment-options{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}.assignment-options label{display:flex!important;flex-direction:row!important;align-items:center;gap:.35rem;padding:.5rem .65rem;border-radius:.5rem;background:#f1f7f6;color:#385f5c}.assignment-submissions{padding:1rem 1.3rem;border-top:1px solid #edf0f4}.assignment-submissions>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.assignment-submissions h3,.assignment-submissions p{margin:0}.assignment-submissions h3{font-size:.85rem}.assignment-submissions p{color:var(--muted);font-size:.62rem}.assignment-card>.danger-zone{margin:0 1.3rem 1rem!important}.assignment-create-card{margin-top:1.2rem!important}.assignment-create-card>.assignment-detail-form{padding:1.35rem}.assignment-create-card .settings-form-actions{margin:1.2rem -1.35rem -1.35rem}
.submission-status,.assignment-message{display:flex;align-items:center;gap:1rem;margin:0 1.3rem 1.2rem;padding:.8rem;border-radius:.6rem;background:#edf8f5;color:#28625c;font-size:.7rem}.assignment-message.is-closed{background:#fff2f0;color:#9c3f36}.learner-submission-form{display:grid!important;grid-template-columns:1.4fr 1fr auto;align-items:end!important;margin:0!important;padding:1rem 1.3rem;border-top:1px solid #edf0f4}.learner-submission-form textarea{width:100%;min-height:80px}.learner-submission-form label small{font-size:.58rem}
.section-management-panel .section-card-grid>article.is-archived{opacity:.68;background:#f4f5f7}.add-section-panel{margin-top:1rem!important}.add-section-panel summary i{margin-right:.3rem}
@media(max-width:850px){.assignment-filter-card{align-items:stretch;flex-direction:column}.assignment-filter-card form{align-items:stretch!important;flex-wrap:wrap}.assignment-calendar-context{grid-template-columns:1fr}.assignment-form-grid{grid-template-columns:1fr 1fr}.assignment-form-grid .field-wide{grid-column:1/-1}.assignment-create-form .schedule-grid,.assignment-create-form .submission-file-settings{grid-template-columns:1fr!important}.supporting-material-options{grid-template-columns:1fr}.supporting-material-options label>span{min-height:74px}.learner-submission-form{grid-template-columns:1fr}.assignment-timeline{grid-template-columns:1fr}.assignment-timeline>span{border-right:0;border-bottom:1px solid #edf0f4}}
@media(max-width:560px){.assignment-filter-card form{display:grid!important;grid-template-columns:1fr}.assignment-filter-card label{min-width:0}.assignment-create-header,.assignment-form-section{padding:1rem}.assignment-create-form .assignment-form-grid,.supporting-material-fields{grid-template-columns:1fr}.assignment-create-form .assignment-form-grid .field-wide{grid-column:auto}.setting-toggle{align-items:flex-start!important}.setting-toggle>span>i{display:none}.assignment-create-form>.settings-form-actions{align-items:stretch;flex-direction:column;padding:1rem}.assignment-create-form>.settings-form-actions button{width:100%}.assignment-card-header{grid-template-columns:50px 1fr}.assignment-score{grid-column:1/-1;min-height:44px}.assignment-form-grid{grid-template-columns:1fr}.assignment-form-grid .field-wide{grid-column:auto}.assignment-submissions>header{align-items:stretch;flex-direction:column;gap:.6rem}.assignment-options{flex-direction:column}}
.grade-item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.grade-item-grid article{padding:1rem;border:1px solid #e6ebf2;border-radius:.7rem}.grade-item-grid article>div{display:flex;flex-direction:column;margin-bottom:.75rem}.grade-item-grid form{align-items:stretch;flex-direction:column;margin:.6rem 0}.grade-item-grid small{font-size:.67rem}@media(max-width:850px){.grade-item-grid{grid-template-columns:1fr}}
.auth-divider{display:flex;align-items:center;gap:1rem;color:#8a94a6;font-size:.82rem;margin:1.25rem 0}.auth-divider::before,.auth-divider::after{content:"";height:1px;background:#e3e7ee;flex:1}.auth-google{width:100%;border:1px solid #d7dce5;background:#fff;color:#273142;border-radius:.7rem;padding:.78rem 1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.7rem;transition:border-color .2s,box-shadow .2s}.auth-google:hover{border-color:#aeb7c6;box-shadow:0 3px 12px rgba(31,45,61,.08)}.google-mark{font-family:Arial,sans-serif;font-size:1.15rem;font-weight:700;color:#4285f4}
.course-wizard{max-width:1180px;margin:0 auto;padding:1.8rem 0 3rem;color:#172033}.wizard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}.wizard-header h1{font-size:2rem;line-height:1.2;margin:.35rem 0 .4rem;font-weight:800;letter-spacing:-.035em}.wizard-header p{margin:0;color:#6b7484}.wizard-close{width:42px;height:42px;border:1px solid #dde2ea;border-radius:12px;background:#fff;color:#657084;display:grid;place-items:center;text-decoration:none;box-shadow:0 4px 16px rgba(21,31,50,.04)}.wizard-close:hover{color:#172033;border-color:#bac2cf}.wizard-shell{display:grid;grid-template-columns:270px minmax(0,1fr);align-items:start;background:#fff;border:1px solid #e2e6ed;border-radius:20px;box-shadow:0 14px 45px rgba(33,48,77,.08);overflow:hidden}.wizard-progress{align-self:stretch;min-height:690px;padding:1.7rem;background:linear-gradient(160deg,#132844 0%,#183c62 58%,#176977 120%);color:#fff}.wizard-progress-intro{display:grid;grid-template-columns:42px 1fr;column-gap:.8rem;align-items:center;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.13)}.wizard-progress-icon{grid-row:1/3;width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.13);display:grid;place-items:center;font-size:1.2rem}.wizard-progress-intro strong{font-size:.95rem}.wizard-progress-intro small{color:#b9c9d8}.wizard-progress ol{list-style:none;padding:1.2rem 0;margin:0}.wizard-progress li{position:relative;display:flex;align-items:center;gap:.8rem;padding:.75rem .5rem;cursor:pointer;border-radius:11px;color:#aebfd0;transition:.2s}.wizard-progress li:not(:last-child)::after{content:"";position:absolute;left:20px;top:47px;width:1px;height:17px;background:rgba(255,255,255,.16)}.wizard-progress li>span{flex:0 0 30px;width:30px;height:30px;border:1px solid rgba(255,255,255,.3);border-radius:50%;display:grid;place-items:center;font-size:.78rem;font-weight:700}.wizard-progress li div{display:flex;flex-direction:column}.wizard-progress li strong{font-size:.88rem;color:inherit}.wizard-progress li small{font-size:.72rem;color:inherit;opacity:.8}.wizard-progress li.is-active{background:rgba(255,255,255,.11);color:#fff}.wizard-progress li.is-active>span{background:#fff;color:#164b68;border-color:#fff}.wizard-progress li.is-complete{color:#d8f5ef}.wizard-progress li.is-complete>span{font-size:0;background:#34b69a;border-color:#34b69a}.wizard-progress li.is-complete>span::after{content:"\2713";font-size:.8rem}.wizard-tip{display:flex;gap:.75rem;margin-top:5rem;padding:1rem;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.07);color:#c8d6e2}.wizard-tip>i{color:#ffd56a}.wizard-tip p{font-size:.75rem;line-height:1.55;margin:0}.wizard-tip strong{display:block;color:#fff;margin-bottom:.2rem}.wizard-form{min-width:0;padding:2.2rem 2.5rem 0}.wizard-step{display:none;min-height:540px;animation:wizard-in .25s ease}.wizard-step.is-active{display:block}@keyframes wizard-in{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}.step-heading{padding-bottom:1.6rem;margin-bottom:1.7rem;border-bottom:1px solid #edf0f4}.step-heading>span{color:#118a7e;text-transform:uppercase;letter-spacing:.09em;font-weight:800;font-size:.7rem}.step-heading h2{font-size:1.55rem;font-weight:800;letter-spacing:-.025em;margin:.35rem 0}.step-heading p{color:#747d8c;margin:0;font-size:.9rem}.wizard-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.wizard-field-grid-code{grid-template-columns:minmax(160px,.45fr) 1fr}.wizard-grid-full{grid-column:1/-1}.wizard-form .field-group{margin-bottom:1.4rem}.wizard-form .field-group>label,.wizard-form legend{font-size:.82rem;font-weight:700;margin-bottom:.5rem;color:#303b4c}.wizard-form fieldset{border:0;padding:0}.wizard-form .field-group>small,.field-help{display:block;color:#87909f;font-size:.72rem;margin-top:.4rem}.wizard-form .input-shell{border:1px solid #d9dee7;background:#fbfcfd;border-radius:10px;transition:.2s}.wizard-form .input-shell:focus-within{border-color:#168d81;background:#fff;box-shadow:0 0 0 3px rgba(22,141,129,.1)}.wizard-form .input-shell input{font-size:.88rem;padding:.78rem .75rem}.wizard-textarea{width:100%;border:1px solid #d9dee7;background:#fbfcfd;border-radius:10px;padding:.8rem .9rem;font:inherit;font-size:.88rem;resize:vertical;outline:0}.wizard-textarea:focus{border-color:#168d81;background:#fff;box-shadow:0 0 0 3px rgba(22,141,129,.1)}.wizard-form .field-label-row>span{font-size:.7rem;color:#8b94a2}.choice-card-grid{display:grid;gap:.8rem}.choice-card-grid-three{grid-template-columns:repeat(3,1fr)}.choice-card{position:relative;display:flex;flex-direction:column;min-height:150px;padding:1rem;border:1px solid #dce1e9;border-radius:13px;background:#fff;cursor:pointer;transition:.2s}.choice-card:hover{border-color:#9fc6c1;transform:translateY(-1px)}.choice-card input{position:absolute;opacity:0;pointer-events:none}.choice-card:has(input:checked){border-color:#168d81;background:#f3fbf9;box-shadow:0 0 0 1px #168d81}.choice-icon{width:36px;height:36px;border-radius:10px;background:#edf7f5;color:#168d81;display:grid;place-items:center;margin-bottom:.8rem}.choice-card strong{font-size:.88rem}.choice-card small{font-size:.71rem;color:#7b8594;margin-top:.25rem}.choice-check{display:none;position:absolute;right:.8rem;top:.8rem;color:#168d81}.choice-card:has(input:checked) .choice-check{display:block}.choice-card-grid.compact .choice-card{min-height:125px}.setting-panel{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.1rem;border:1px solid #dce1e9;border-radius:13px;margin-bottom:1.5rem}.setting-panel>div{display:flex;align-items:center;gap:.8rem}.setting-panel>div>div{display:flex;flex-direction:column}.setting-panel strong{font-size:.85rem}.setting-panel small{color:#7c8695;font-size:.72rem}.setting-icon{width:38px;height:38px;border-radius:10px;background:#edf7f5;color:#168d81;display:grid;place-items:center}.switch-control input{position:absolute;opacity:0}.switch-control span{display:block;width:42px;height:24px;padding:3px;background:#cbd1da;border-radius:20px;cursor:pointer;transition:.2s}.switch-control span::after{content:"";display:block;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:.2s}.switch-control input:checked+span{background:#168d81}.switch-control input:checked+span::after{transform:translateX(18px)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.feature-toggle{position:relative;cursor:pointer}.feature-toggle>input{position:absolute;opacity:0}.feature-toggle>span{min-height:72px;display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;align-items:center;padding:.8rem 2.5rem .8rem .8rem;border:1px solid #dfe3ea;border-radius:11px;transition:.2s}.feature-toggle>span>i{grid-row:1/3;width:30px;height:30px;border-radius:8px;background:#f1f4f8;color:#647084;display:grid;place-items:center}.feature-toggle b{font-size:.78rem}.feature-toggle small{font-size:.66rem;color:#818b99}.feature-toggle>.bi-check2{position:absolute;right:.8rem;top:50%;transform:translateY(-50%);color:#fff;background:#168d81;border-radius:50%;width:20px;height:20px;display:none;place-items:center}.feature-toggle input:checked+span{border-color:#83bdb6;background:#f5fbfa}.feature-toggle input:checked+span>i{background:#daf3ee;color:#168d81}.feature-toggle input:checked~.bi-check2{display:grid}.course-review-card{border:1px solid #dde2e9;border-radius:15px;overflow:hidden}.review-hero{display:flex;gap:1rem;padding:1.3rem;background:linear-gradient(120deg,#f1faf8,#f5f8fc)}.review-icon{flex:0 0 55px;width:55px;height:55px;border-radius:14px;background:#168d81;color:#fff;display:grid;place-items:center;font-size:1.4rem}.review-hero>div>span{font-size:.67rem;color:#168d81;font-weight:800;letter-spacing:.08em}.review-hero h3{font-size:1.15rem;margin:.15rem 0 .25rem;font-weight:800}.review-hero p{color:#707b8a;font-size:.75rem;margin:0;max-width:620px}.review-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:1.2rem}.review-facts div{padding:.7rem;border-right:1px solid #edf0f3}.review-facts div:nth-child(3n){border-right:0}.review-facts dt{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:#8992a0}.review-facts dd{font-size:.8rem;font-weight:700;margin:.2rem 0 0}.review-note{display:flex;gap:.85rem;margin-top:1rem;padding:1rem;border-radius:12px;background:#fff9e9;color:#6b5722}.review-note>i{font-size:1.2rem}.review-note strong{font-size:.8rem}.review-note p{font-size:.72rem;margin:.2rem 0 0;color:#857342}.wizard-actions{margin:0 -2.5rem;min-height:76px;padding:1rem 2.5rem;border-top:1px solid #e7eaf0;display:flex;align-items:center;gap:.75rem}.wizard-actions button[hidden]{display:none}.wizard-save-note{margin-left:auto;color:#8a93a1;font-size:.68rem}.wizard-save-note i{margin-right:.3rem}.btn-wizard-primary,.btn-wizard-secondary{border:0;border-radius:10px;padding:.72rem 1.1rem;font-size:.8rem;font-weight:700}.btn-wizard-primary{background:#168d81;color:#fff;box-shadow:0 5px 14px rgba(22,141,129,.2)}.btn-wizard-primary:hover{background:#10796f}.btn-wizard-secondary{background:#f0f3f6;color:#566173}.btn-wizard-secondary:hover{background:#e7ebef}@media(max-width:900px){.wizard-shell{grid-template-columns:1fr}.wizard-progress{min-height:auto;padding:1rem 1.2rem}.wizard-progress-intro,.wizard-tip,.wizard-progress li div{display:none}.wizard-progress ol{display:flex;padding:0;justify-content:space-between}.wizard-progress li{padding:.3rem;flex:1}.wizard-progress li:not(:last-child)::after{left:calc(50% + 18px);top:18px;width:calc(100% - 36px);height:1px}.wizard-progress li>span{margin:auto}.wizard-form{padding:1.5rem 1.3rem 0}.wizard-actions{margin:0 -1.3rem;padding:1rem 1.3rem}.wizard-step{min-height:auto}}@media(max-width:650px){.course-wizard{padding:.7rem 0 2rem}.wizard-header h1{font-size:1.55rem}.wizard-header p{font-size:.8rem}.wizard-field-grid,.wizard-field-grid-code,.choice-card-grid-three,.feature-grid,.review-facts{grid-template-columns:1fr}.choice-card{min-height:105px}.review-facts div,.review-facts div:nth-child(3n){border-right:0;border-bottom:1px solid #edf0f3}.wizard-save-note{display:none}.wizard-actions{position:sticky;bottom:0;background:#fff;z-index:2}.btn-wizard-primary{margin-left:auto}}
.course-wizard:not(.is-enhanced) .wizard-step{display:block}
.choice-card-grid-four{grid-template-columns:repeat(4,1fr)}.join-code-panel,.invite-member-panel{display:flex;align-items:center;gap:1rem;padding:1.1rem;margin:1.2rem 0;border:1px solid #dce2e9;border-radius:14px;background:#f8fbfc}.join-code-panel>div{display:flex;flex-direction:column;margin-right:auto}.join-code-panel>div>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#748091}.join-code-panel>div>strong{font-size:1.35rem;letter-spacing:.2em;color:#173b55}.join-code-panel small{font-size:.7rem;color:#7b8593;letter-spacing:0}.join-code-panel form{margin:0}.invite-member-panel{display:block}.invite-member-panel h2{font-size:1.1rem;margin:0}.invite-member-panel p{font-size:.78rem;color:#748091}.invite-member-panel form{display:grid;grid-template-columns:1.3fr 1.2fr 1fr auto;gap:.6rem}.invite-member-panel input,.invite-member-panel select{border:1px solid #d9dee7;border-radius:9px;padding:.7rem .8rem;background:#fff}.join-course-page{min-height:calc(100vh - 150px);display:grid;place-items:center;padding:2rem}.join-course-card{width:min(100%,560px);padding:2.3rem;background:#fff;border:1px solid #dce5f1;border-radius:20px;box-shadow:0 22px 60px rgba(18,42,82,.11)}.join-course-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.7rem}.join-course-icon{display:grid;width:52px;height:52px;flex:0 0 52px;place-items:center;border-radius:14px;background:linear-gradient(135deg,#e7f2ff,#e1faf6);color:#0879bb;font-size:1.3rem}.join-course-header .step-heading h1{margin:.18rem 0 .35rem;font-size:1.65rem}.join-course-header .step-heading p{margin:0;color:#748095;font-size:.8rem}.join-course-form{display:block;margin:0}.join-course-card .field-group{display:flex;width:100%;flex-direction:column;margin-bottom:1.15rem}.join-field-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.42rem}.join-course-card label{margin:0;color:#344057;font-size:.76rem;font-weight:750}.join-field-heading>span{color:#8792a4;font-size:.59rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.join-input-shell{display:flex;width:100%;height:48px;align-items:center;border:1px solid #cfd8e6;border-radius:.65rem;background:#fff;transition:border-color .18s,box-shadow .18s}.join-input-shell:focus-within{border-color:#0b63f6;box-shadow:0 0 0 3px rgba(11,99,246,.1)}.join-input-shell>i{width:45px;flex:0 0 45px;color:#7e8ba0;text-align:center}.join-input-shell input:not([type=checkbox]){width:100%;height:100%;min-height:0;border:0;border-radius:.65rem;background:transparent;padding:.65rem .8rem .65rem 0;box-shadow:none}.join-course-card small{margin-top:.42rem;color:#7e8896;font-size:.67rem}.join-course-card .field-validation:empty{display:none}.join-course-card .btn-wizard-primary{display:flex;width:100%;height:46px;align-items:center;justify-content:center;gap:.55rem;margin-top:.35rem}.join-code-input{text-transform:uppercase;letter-spacing:.18em;font-size:1rem!important;font-weight:800}.join-course-note{display:flex;align-items:flex-start;gap:.65rem;margin-top:1.4rem;padding-top:1.15rem;border-top:1px solid #edf1f6;color:#7a8698;font-size:.67rem;line-height:1.5}.join-course-note i{color:#079d89;font-size:1rem}.join-course-note span{display:flex;flex-direction:column}.join-course-note strong{color:#455168;font-size:.68rem}@media(max-width:1000px){.choice-card-grid-four{grid-template-columns:repeat(2,1fr)}.invite-member-panel form{grid-template-columns:1fr 1fr}}@media(max-width:650px){.choice-card-grid-four,.invite-member-panel form{grid-template-columns:1fr}.join-code-panel{align-items:stretch;flex-direction:column}.join-course-page{padding:1rem}.join-course-card{padding:1.4rem}.join-course-header{gap:.8rem}.join-course-icon{width:46px;height:46px;flex-basis:46px}.join-course-header .step-heading h1{font-size:1.45rem}}

/* Action-oriented dashboard and global agenda */
.command-dashboard,.agenda-page{max-width:1240px;margin:0 auto}.command-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin:0 0 1.2rem}.command-stats>a{display:flex;align-items:center;gap:.85rem;min-width:0;padding:1rem;border:1px solid var(--line);border-radius:.85rem;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 3px 12px rgba(23,35,60,.035);transition:.2s}.command-stats>a:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(23,35,60,.08)}.command-stats>a>span:last-child{display:grid;min-width:0}.command-stats small{color:#758095;font-size:.64rem;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.command-stats strong{font-size:1.55rem;line-height:1.2}.command-stats em{overflow:hidden;color:#858e9e;font-size:.62rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.command-stat-icon,.task-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:.7rem}.command-stat-icon.is-teal{background:#e5f6f2;color:#0b8377}.command-stat-icon.is-amber{background:#fff3d9;color:#a16b00}.command-stat-icon.is-blue{background:#e8f1ff;color:#2864c7}.command-stat-icon.is-rose{background:#ffebed;color:#bf4955}.command-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:1rem;align-items:start}.command-grid>.dashboard-card{margin:0}.dashboard-card>header .eyebrow{display:block;margin-bottom:.28rem}.task-list{display:grid}.task-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto 16px;align-items:center;gap:.8rem;padding:.82rem 1rem;border-top:1px solid #edf0f4;color:var(--ink);text-decoration:none;transition:.18s}.task-row:hover{background:#f8fafc}.task-icon{background:#edf3ff;color:#3167c4}.tone-warning .task-icon{background:#fff2d8;color:#9a6807}.tone-success .task-icon{background:#e7f6f0;color:#168166}.task-copy{display:flex;min-width:0;flex-direction:column}.task-copy small{color:#168d81;font-size:.59rem;font-weight:750;text-transform:uppercase}.task-copy strong{overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.task-copy em{overflow:hidden;color:#7c8798;font-size:.63rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.task-row time{display:flex;min-width:62px;flex-direction:column;text-align:right}.task-row time b{font-size:.68rem}.task-row time small{color:#87909f;font-size:.58rem}.task-now{padding:.3rem .45rem;border-radius:999px;background:#fff1d5;color:#8b640b;font-size:.58rem;font-weight:800}.compact-empty{padding:1.5rem!important}.compact-empty i{font-size:1.5rem!important}.course-switcher .workspace-row{padding:.82rem 1rem}.risk-panel{margin-top:1rem}.risk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid #edf0f4}.risk-grid>a{display:grid;grid-template-columns:36px minmax(0,.7fr) minmax(0,1fr) 18px;align-items:center;gap:.7rem;padding:.9rem 1rem;border-right:1px solid #edf0f4;border-bottom:1px solid #edf0f4;color:var(--ink);text-decoration:none}.risk-grid>a:nth-child(2n){border-right:0}.risk-grid>a>span{display:flex;min-width:0;flex-direction:column}.risk-grid strong,.risk-grid b{font-size:.7rem}.risk-grid small{overflow:hidden;color:#7b8595;font-size:.59rem;text-overflow:ellipsis;white-space:nowrap}.risk-reason b{color:#b1424d}.agenda-filters{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.2rem}.agenda-filters button{padding:.5rem .75rem;border:1px solid #dde3ea;border-radius:999px;background:#fff;color:#657185;font-size:.69rem;font-weight:700}.agenda-filters button.is-active{border-color:#168d81;background:#168d81;color:#fff}.agenda-day{display:grid;grid-template-columns:120px minmax(0,1fr);margin-bottom:.9rem;border:1px solid var(--line);border-radius:.85rem;background:#fff;overflow:hidden}.agenda-day>header{display:flex;flex-direction:column;padding:1rem;border-right:1px solid #edf0f4;background:#f9fbfc}.agenda-day>header span{color:#168d81;font-size:.65rem;font-weight:800;text-transform:uppercase}.agenda-day>header strong{font-size:.8rem}.agenda-day>header em{align-self:flex-start;margin-top:.35rem;padding:.2rem .4rem;border-radius:999px;background:#dcf3ee;color:#08766b;font-size:.55rem;font-style:normal;font-weight:800}.agenda-day .task-row:first-child{border-top:0}.agenda-no-results[hidden]{display:none!important}.mobile-tabbar{display:none}

/* Compact teacher assignment cards */
.assignment-card-header{grid-template-columns:58px minmax(0,1fr) 70px auto}.assignment-card-actions{display:flex;align-items:center;gap:.4rem}.assignment-card-actions form{margin:0!important}.assignment-card-actions .icon-danger{flex:0 0 34px}.assignment-expand{display:inline-flex;align-items:center;gap:.35rem;padding:.48rem .6rem;border:1px solid #dce3ea;border-radius:.55rem;background:#fff;color:#526075;font-size:.63rem;font-weight:750}.assignment-card.is-compact:not(.is-expanded)>.assignment-timeline,.assignment-card.is-compact:not(.is-expanded)>.assignment-instructions,.assignment-card.is-compact:not(.is-expanded)>.assignment-reference,.assignment-card.is-compact:not(.is-expanded)>.assignment-rules,.assignment-card.is-compact:not(.is-expanded)>.assignment-editor,.assignment-card.is-compact:not(.is-expanded)>.assignment-submissions>.table-responsive,.assignment-card.is-compact:not(.is-expanded)>.assignment-submissions>.muted,.assignment-card.is-compact:not(.is-expanded)>.danger-zone{display:none}.assignment-card.is-compact:not(.is-expanded)>.assignment-submissions{padding:.7rem 1.3rem}.assignment-card.is-compact:not(.is-expanded)>.assignment-submissions>header{margin:0}.progress-alert{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem 1.15rem;border:1px solid #f0d3d6;border-radius:.85rem;background:#fff7f7}.progress-alert>span{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:.7rem;background:#ffe4e7;color:#bc4450}.progress-alert>div{flex:1}.progress-alert small{color:#b1424d;font-size:.6rem;font-weight:800;text-transform:uppercase}.progress-alert h2{margin:.08rem 0;font-size:.9rem}.progress-alert p{margin:0;color:#7d6d70;font-size:.65rem}.progress-alert a{color:#a53c47;font-size:.66rem;font-weight:750}.progress-list>article.needs-attention{border-left:3px solid #cf5964;background:#fffafa}.completion-badge.is-risk{background:#ffe5e7;color:#b13f4a}

@media(max-width:1000px){.command-stats{grid-template-columns:repeat(2,1fr)}.command-grid{grid-template-columns:1fr}.risk-grid{grid-template-columns:1fr}.risk-grid>a{border-right:0}.assignment-card-header{grid-template-columns:58px minmax(0,1fr) 70px}.assignment-card-actions{grid-column:1/-1;justify-content:flex-end}.assignment-expand{justify-content:center}}
@media(max-width:700px){.app-content{padding-bottom:68px}.command-stats{grid-template-columns:1fr 1fr}.command-stats>a{align-items:flex-start;padding:.8rem}.command-stat-icon{display:none}.command-stats em{white-space:normal}.agenda-day{grid-template-columns:1fr}.agenda-day>header{padding:.7rem 1rem;border-right:0;border-bottom:1px solid #edf0f4;flex-direction:row;align-items:center;gap:.5rem}.agenda-day>header em{margin:0}.task-row{grid-template-columns:38px minmax(0,1fr) auto}.task-row>i:last-child{display:none}.risk-grid>a{grid-template-columns:34px minmax(0,1fr) 18px}.risk-reason{grid-column:2/3}.progress-alert{align-items:flex-start;flex-wrap:wrap}.progress-alert a{margin-left:58px}.mobile-tabbar{position:fixed;z-index:50;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);height:64px;padding:max(.35rem,env(safe-area-inset-bottom)) .5rem .3rem;border-top:1px solid #dce2e9;background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}.mobile-tabbar a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.12rem;border-radius:.5rem;color:#788397;font-size:.55rem;text-decoration:none}.mobile-tabbar a i{font-size:1.05rem}.mobile-tabbar a.is-active{background:#eaf6f3;color:#087e73}.assignment-card-header{grid-template-columns:50px 1fr}.assignment-score{grid-column:auto}.assignment-expand{grid-column:1/-1}.agenda-page .workspace-heading,.command-dashboard .workspace-heading{align-items:stretch;flex-direction:column}}
html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.assignment-timeline,html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.assignment-instructions,html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.assignment-reference,html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.assignment-rules,html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.assignment-editor,html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.assignment-submissions>.table-responsive,html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.assignment-submissions>.muted,html:not(.js) .assignment-card.is-compact:not(.is-expanded)>.danger-zone{display:revert}html:not(.js) .assignment-expand{display:none}

/* Knoxelhub brand system */
:root{--primary:#0b63f6;--primary-dark:#082d8c;--teal:#04aF9f;--ink:#102044;--muted:#65738d;--line:#dce5f3;--soft:#f6f9ff;--brand-cyan:#09c7f4;--brand-mint:#0ed5af;--brand-amber:#ffab19}
body{overflow-x:hidden;background:linear-gradient(180deg,#f9fbff 0,#f5f8fe 100%)}
.brand-mark{width:42px;height:42px;border-radius:0;background:transparent;overflow:visible;color:inherit}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(7,63,180,.2))}
.public-brand>span:last-child,.sidebar-brand>a>span:last-child,.mobile-header>a>span:last-child{font-weight:800;letter-spacing:-.055em;text-transform:lowercase}
.public-brand>span:last-child>span,.sidebar-brand>a>span:last-child>span,.mobile-header>a>span:last-child>span{color:#0aaed4}
.public-brand,.sidebar-brand>a,.mobile-header>a{font-size:1.23rem}
.public-brand .brand-mark{box-shadow:none}
.public-header{border-bottom-color:#dce7f7;background:rgba(255,255,255,.9)}
.public-header nav .public-cta,.primary-action,.auth-submit,.btn-wizard-primary{background:linear-gradient(135deg,#0a72fb,#073aa9);box-shadow:0 8px 22px rgba(9,92,225,.22)}
.public-header nav .public-cta:hover,.primary-action:hover,.auth-submit:hover,.btn-wizard-primary:hover{background:linear-gradient(135deg,#0864e2,#062d87)}
.app-sidebar{border-right-color:#dce7f7;background:linear-gradient(180deg,#fff 0,#f9fbff 100%)}
.sidebar-nav a:hover,.sidebar-nav a.is-active{background:linear-gradient(90deg,#eaf3ff,#edfbff);color:#074dbd}
.sidebar-nav a.is-active{box-shadow:inset 3px 0 #0a8ff0}
.avatar{background:linear-gradient(135deg,#e7f1ff,#ddfbf7);color:#0751bd}
.eyebrow{color:#078fbe}
.landing-page:before{height:820px;background:radial-gradient(circle at 12% 18%,rgba(11,99,246,.16),transparent 39%),radial-gradient(circle at 86% 28%,rgba(9,199,244,.14),transparent 36%),radial-gradient(circle at 70% 74%,rgba(14,213,175,.09),transparent 31%)}
.landing-page .hero-copy{position:relative}
.landing-page .hero-copy:after{position:absolute;z-index:-1;right:-5%;bottom:-8%;width:190px;height:190px;background:url('/images/knoxelhub-mark.png') center/contain no-repeat;content:"";opacity:.055;filter:saturate(1.2)}
.landing-page .hero-copy h1{background:linear-gradient(120deg,#102044 8%,#073fae 55%,#0aaaca 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-badge{border-color:#cfe9fb;background:rgba(243,251,255,.9);color:#0965b8}
.hero-proof i{color:#05a892}
.hero-panel{border-color:#cfe0f6!important;background:linear-gradient(145deg,#fff 35%,#eef7ff);box-shadow:0 30px 75px rgba(7,53,139,.16)}
.preview-progress>span i{background:linear-gradient(90deg,#0868f7,#06c7e8 62%,#10d2a9)}
.hero-panel .feature-list i,.landing-grid article>i{background:linear-gradient(135deg,#e8f2ff,#e4fbf9);color:#0764dd}
.landing-grid article:hover{border-color:#bcd9f5;box-shadow:0 20px 44px rgba(8,69,164,.1)}
.landing-band{background:radial-gradient(circle at 88% 12%,rgba(8,199,239,.18),transparent 30%),linear-gradient(135deg,#071d55,#083a9d 58%,#075f9d)!important}
.landing-steps strong{color:#54e7d2}
.landing-cta a{background:linear-gradient(135deg,#0a72fb,#073aa9);box-shadow:0 12px 28px rgba(9,92,225,.2)}
.landing-cta:before{background:rgba(8,132,242,.12)}
.auth-page{background:radial-gradient(circle at 15% 15%,rgba(11,99,246,.13),transparent 32%),radial-gradient(circle at 88% 85%,rgba(9,199,244,.11),transparent 30%),#f7faff}
.auth-icon{background:linear-gradient(135deg,#0b68f5,#07aeda);box-shadow:0 10px 24px rgba(8,91,214,.24)}
.command-stat-icon.is-teal,.feature-list i{background:#e4faf7;color:#048c7e}
.mobile-tabbar a.is-active{background:linear-gradient(135deg,#eaf3ff,#e5faf8);color:#075bc7}
@media(max-width:560px){.brand-mark{width:36px;height:36px}.public-brand,.mobile-header>a{font-size:1.05rem}.landing-page .hero-copy:after{right:0;bottom:0;width:130px;height:130px}}
.join-approval-note{display:flex;align-items:flex-start;gap:.55rem;margin:.2rem 0 1rem;padding:.7rem .8rem;border:1px solid #f0dfae;border-radius:.6rem;background:#fff9e9;color:#765b16;font-size:.68rem}.join-approval-note[hidden]{display:none}.join-approval-note i{margin-top:.05rem}
.course-query-page{max-width:1040px!important}.query-heading p{max-width:650px;margin:.45rem 0 0;color:var(--muted);font-size:.82rem}.query-new-link{margin:0}.query-compose,.query-inbox{margin:0 0 1rem!important;padding:0!important;overflow:hidden}.query-compose>header{display:flex;align-items:center;gap:.8rem;padding:1.15rem 1.25rem;border-bottom:1px solid #e8edf4;background:#fbfcff}.query-compose h2,.query-compose p,.query-inbox h2,.query-inbox p{margin:0}.query-compose h2,.query-inbox h2{font-size:1rem}.query-compose header p,.query-inbox-header p{margin-top:.2rem;color:var(--muted);font-size:.68rem}.query-section-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:.65rem;background:#e8f3ff;color:#0b63d8}.query-compose-form{display:grid!important;grid-template-columns:minmax(170px,.55fr) minmax(0,1.45fr);align-items:start!important;gap:.9rem!important;margin:0!important;padding:1.25rem}.query-compose-form label{align-items:stretch}.query-compose-form input,.query-compose-form select,.query-compose-form textarea{width:100%}.query-compose-form textarea{resize:vertical}.query-compose-form .query-message,.query-compose-form footer{grid-column:1/-1}.query-compose-form footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.query-compose-form footer small{color:#7b8798;font-size:.64rem}.query-compose-form footer button,.query-reply-form button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.query-inbox-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid #e8edf4;background:#fbfcff}.query-filters{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;margin:0!important}.query-filters select{min-height:36px;font-size:.7rem}.query-empty{padding:3rem 1.25rem;text-align:center}.query-empty>i{color:#a0aaba;font-size:1.8rem}.query-empty h3{margin:.5rem 0 .25rem}.query-empty p{color:var(--muted);font-size:.72rem}.query-list{display:grid}.query-thread{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}.query-thread+.query-thread{border-top:1px solid #dfe6ef!important}.query-thread>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;background:#fff}.query-thread-copy>div{display:flex;align-items:center;gap:.4rem}.query-thread-copy h3{margin:.35rem 0 .18rem;font-size:.9rem;letter-spacing:-.01em}.query-thread-copy small{color:#7d8796;font-size:.62rem}.query-category,.query-status{display:inline-flex;align-items:center;padding:.22rem .45rem;border-radius:999px;font-size:.57rem;font-weight:800}.query-category{background:#edf3fc;color:#46617f}.query-status.status-open{background:#fff3d8;color:#8a630b}.query-status.status-answered{background:#e4f7f1;color:#087765}.query-status.status-closed{background:#edf0f4;color:#687386}.query-status-form{margin:0!important}.query-status-form .secondary-action{margin:0;padding:.45rem .65rem;font-size:.64rem}.query-messages{display:grid;gap:.8rem;padding:.1rem 1.25rem 1.15rem}.query-message-item{display:grid;grid-template-columns:34px minmax(0,1fr);gap:.65rem}.query-avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#eef2f7;color:#657187}.query-message-item.is-teacher .query-avatar{background:#e2f4f1;color:#087b70}.query-message-item>div{padding:.7rem .8rem;border:1px solid #e2e7ee;border-radius:.7rem;background:#fafbfd}.query-message-item.is-teacher>div{border-color:#d4ebe7;background:#f4fbfa}.query-message-item header{display:flex;align-items:center;gap:.4rem}.query-message-item header strong{font-size:.68rem}.query-message-item header span{padding:.15rem .35rem;border-radius:999px;background:#dff1ed;color:#08776c;font-size:.52rem;font-weight:800}.query-message-item time{margin-left:auto;color:#8a94a3;font-size:.56rem}.query-message-item p{margin:.35rem 0 0!important;color:#465267;font-size:.72rem;white-space:pre-wrap}.query-reply-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:end!important;gap:.65rem!important;margin:0!important;padding:1rem 1.25rem;border-top:1px solid #edf0f5;background:#fbfcfe}.query-reply-form label{align-items:stretch}.query-reply-form textarea{width:100%;min-height:58px;resize:vertical}.query-reply-form button{height:40px}@media(max-width:700px){.query-compose-form{grid-template-columns:1fr}.query-compose-form .query-message,.query-compose-form footer{grid-column:auto}.query-inbox-header{align-items:stretch;flex-direction:column}.query-filters{align-items:stretch!important;flex-direction:column!important}.query-thread>header{flex-direction:column}.query-status-form,.query-status-form button{width:100%}.query-reply-form{grid-template-columns:1fr}.query-reply-form button{width:100%}}
.listing-review-state{display:flex;align-items:flex-start;gap:.7rem;margin:0 1.35rem 1.2rem;padding:.8rem;border:1px solid #e1e7ef;border-radius:.65rem;background:#f8fafc}.listing-review-state>i{font-size:1rem}.listing-review-state>div{display:flex;flex-direction:column}.listing-review-state strong{font-size:.7rem}.listing-review-state small{margin-top:.15rem;color:#748095;font-size:.63rem}.listing-review-state.state-pending{border-color:#efdfb3;background:#fffaf0;color:#805f0d}.listing-review-state.state-approved{border-color:#cde8df;background:#f2fbf8;color:#087464}.listing-review-state.state-rejected{border-color:#f0d5d2;background:#fff7f6;color:#9a3830}.listing-admin-page{max-width:1080px!important}.listing-status-tabs{display:flex;gap:.4rem;margin-bottom:1rem}.listing-status-tabs a{padding:.48rem .75rem;border:1px solid #dce3ed;border-radius:999px;background:#fff;color:#627086;font-size:.68rem;font-weight:750}.listing-status-tabs a.is-active{border-color:#0b63f6;background:#0b63f6;color:#fff}.listing-review-grid{display:grid;gap:1rem}.listing-review-card{margin:0!important;padding:0!important;overflow:hidden}.listing-review-card>header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:1.1rem 1.2rem;border-bottom:1px solid #e8edf4}.listing-review-card>header>div{display:flex;min-width:0;flex-direction:column}.listing-review-card>header span{color:#61718a;font-size:.6rem;font-weight:800;text-transform:uppercase}.listing-review-card h2{margin:.1rem 0;font-size:1rem}.listing-review-card>header small{color:#7d8898;font-size:.63rem}.listing-course-icon{display:grid!important;width:42px;height:42px;place-items:center;border-radius:.65rem;background:#e9f2ff;color:#0b63d8!important;font-size:1rem!important}.listing-review-card>p{margin:0;padding:1rem 1.2rem;color:#58657a;font-size:.75rem}.listing-request-date{display:block;padding:0 1.2rem 1rem;color:#7d8797;font-size:.62rem}.listing-review-note{display:flex;flex-direction:column;margin:0 1.2rem 1rem;padding:.7rem .8rem;border-radius:.55rem;background:#f7f9fc}.listing-review-note strong{font-size:.63rem}.listing-review-note span{margin-top:.15rem;color:#687487;font-size:.68rem}.listing-review-card>footer{display:flex;align-items:center;gap:.7rem;padding:.9rem 1.2rem;border-top:1px solid #e8edf4;background:#fbfcfe}.listing-review-card>footer>.secondary-action{margin:0}.listing-review-card>footer form{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;flex:1;margin:0}.listing-review-card>footer input{width:100%}.query-status.status-pending{background:#fff3d8;color:#8a630b}.query-status.status-approved{background:#e4f7f1;color:#087765}.query-status.status-rejected{background:#ffedeb;color:#a23c33}@media(max-width:700px){.listing-review-card>header{grid-template-columns:42px minmax(0,1fr)}.listing-review-card>header>.query-status{grid-column:2}.listing-review-card>footer{align-items:stretch;flex-direction:column}.listing-review-card>footer>.secondary-action{width:100%}.listing-review-card>footer form{grid-template-columns:1fr;width:100%}}
.course-storage-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding:1.2rem}.course-storage-summary article{display:flex;flex-direction:column;padding:.9rem;border:1px solid #e1e7ef;border-radius:.7rem;background:#fafbfd}.course-storage-summary small{color:#748096;font-size:.62rem}.course-storage-summary strong{margin-top:.25rem;color:#26364e;font-size:1rem}.course-storage-summary .is-total{border-color:#bfd7fb;background:#f1f7ff}.course-storage-summary .is-total strong{color:#0b63d8}.storage-admin-page{max-width:1180px!important}.storage-total{display:flex;min-width:180px;flex-direction:column;padding:.8rem 1rem;border:1px solid #cfe0f7;border-radius:.7rem;background:#f4f8ff}.storage-total small{color:#65758d;font-size:.62rem}.storage-total strong{margin-top:.2rem;color:#0b63d8;font-size:1.25rem}.storage-table-card{overflow:hidden;border:1px solid #e0e6ee;border-radius:.8rem;background:#fff}.storage-table-card table{margin:0}.storage-table-card td>small,.storage-table-card td>strong{display:block}.storage-table-card td>small{margin-top:.12rem;color:#798598;font-size:.6rem}.storage-table-card .secondary-action{margin:0;padding:.38rem .55rem}@media(max-width:800px){.course-storage-summary{grid-template-columns:1fr 1fr}.storage-admin-page .workspace-heading{align-items:stretch;flex-direction:column}.storage-total{min-width:0}}@media(max-width:460px){.course-storage-summary{grid-template-columns:1fr}}
.admin-directory-page{max-width:1240px!important}.admin-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.admin-summary-grid article{display:flex;flex-direction:column;padding:.9rem 1rem;border:1px solid #dfe6ef;border-radius:.72rem;background:#fff}.admin-summary-grid small{color:#748096;font-size:.62rem}.admin-summary-grid strong{margin-top:.2rem;color:#26364e;font-size:1.2rem}.admin-table-card{overflow:hidden;border:1px solid #e0e6ee;border-radius:.8rem;background:#fff}.admin-table-card table{margin:0}.admin-table-card td>small,.admin-table-card td>strong{display:block}.admin-table-card td>small{margin-top:.12rem;color:#798598;font-size:.6rem}.admin-table-card .secondary-action{margin:0;padding:.38rem .55rem}.course-state,.admin-role-badge{display:inline-flex;align-items:center;padding:.22rem .48rem;border-radius:999px;font-size:.57rem;font-weight:800}.course-state.is-active{background:#e4f7f1;color:#087765}.course-state.is-archived{background:#edf0f4;color:#687386}.admin-role-badge{margin-left:.35rem;background:#e9f2ff;color:#0b63d8}@media(max-width:800px){.admin-summary-grid{grid-template-columns:1fr 1fr}.admin-directory-page .workspace-heading{align-items:stretch;flex-direction:column}}@media(max-width:460px){.admin-summary-grid{grid-template-columns:1fr}}

/* Mobile readability and touch experience */
@media(max-width:700px){
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{overflow-wrap:anywhere;overscroll-behavior-y:none}.app-sidebar{will-change:transform}.mobile-header{position:sticky;z-index:19;top:0;height:60px;padding:0 .85rem;background:rgba(255,255,255,.96);box-shadow:0 1px 10px rgba(20,39,73,.05);backdrop-filter:blur(14px)}.mobile-header button{display:grid;width:44px;height:44px;padding:0;place-items:center;color:#263853}.page-container{width:calc(100% - 1rem)}.page-container>main{padding:1.25rem 0 calc(5.5rem + env(safe-area-inset-bottom))!important}main>header:first-child,.workspace-heading{align-items:stretch;flex-direction:column;gap:.85rem;margin-bottom:1.15rem}h1{font-size:clamp(1.55rem,7vw,2rem);line-height:1.18}h2{font-size:1.1rem}h3{font-size:.98rem}.eyebrow{font-size:.68rem;line-height:1.4}.workspace-heading p,.course-hero p,.card-heading p{font-size:.84rem;line-height:1.6}.workspace-heading .inline-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%}.workspace-heading .inline-actions>a{width:100%;min-height:44px;margin:0}.primary-action,.secondary-action,.btn-wizard-primary,.btn-wizard-secondary,button,.button,input[type=submit]{min-height:44px;font-size:.82rem}input:not([type=checkbox]):not([type=hidden]),select,textarea{width:100%;min-width:0;min-height:46px;font-size:16px!important}textarea{line-height:1.5}label{font-size:.8rem}small{font-size:.72rem}main>section,main>article{border-radius:.72rem!important;padding:1rem!important}.dashboard-card,.management-card{padding:1rem!important}.card-heading{gap:.65rem;margin-bottom:.9rem;padding-bottom:.85rem}.card-heading h2{font-size:1.05rem}.empty-state{padding:2rem 1rem}.empty-state p{font-size:.82rem}.command-stats{gap:.65rem;margin-bottom:.85rem}.command-stats>a{min-height:92px;padding:.85rem}.command-stats small{font-size:.66rem}.command-stats strong{font-size:1.45rem}.command-stats em{font-size:.7rem;line-height:1.4}.dashboard-card>header{align-items:flex-start;gap:.55rem;padding-bottom:.85rem}.dashboard-card>header h2{font-size:1.02rem}.dashboard-card>header p{font-size:.76rem;line-height:1.5}.task-row{grid-template-columns:38px minmax(0,1fr) auto;gap:.65rem;padding:.82rem .75rem}.task-icon{width:38px;height:38px;flex-basis:38px}.task-copy small{font-size:.64rem}.task-copy strong{font-size:.82rem;white-space:normal}.task-copy em{font-size:.72rem;white-space:normal}.task-row time b{font-size:.72rem}.task-row time small,.task-now{font-size:.62rem}.workspace-row strong{font-size:.82rem}.workspace-row small{font-size:.7rem}.risk-grid>a{padding:.85rem .75rem}.risk-grid strong,.risk-grid b{font-size:.76rem}.risk-grid small{font-size:.68rem;white-space:normal}.course-hero{gap:1rem}.course-hero h1{margin-bottom:.55rem}.course-action-grid{gap:.65rem}.course-action-grid a{min-height:82px;padding:.9rem}.course-action-grid strong{font-size:.86rem}.course-action-grid span{font-size:.74rem;line-height:1.4}.section-card-grid>article{padding:.9rem!important}.section-card-grid small{font-size:.74rem}.lecture-list{gap:.75rem}.lecture-item{padding:.85rem}.lecture-copy{gap:.65rem}.lecture-copy .course-icon{flex:0 0 36px;width:36px;height:36px}.lecture-copy h3{margin:.3rem 0;font-size:.98rem}.lecture-copy p,.announcement p{font-size:.82rem;line-height:1.65;white-space:pre-wrap}.lecture-meta span{font-size:.66rem}.lecture-links{display:grid;grid-template-columns:1fr}.lecture-links a{min-height:42px;justify-content:center;font-size:.76rem}.resource-grid article{padding:.9rem}.resource-grid article strong{font-size:.86rem}.resource-grid article a{font-size:.76rem}.content-editor>summary,.management-card summary{min-height:44px;font-size:.78rem}.lesson-editor-form{padding:.85rem}.lesson-form-grid label>span,.attachment-picker legend{font-size:.75rem}.lesson-form-grid small,.attachment-picker small{font-size:.7rem}.attachment-options span{min-height:42px;font-size:.72rem}.lesson-form-actions{align-items:stretch;flex-direction:column}.lesson-form-actions button{width:100%}.table-responsive{margin:0 -.5rem;padding:0 .5rem;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.table-responsive table{min-width:680px}.table>:not(caption)>*>*{padding:.72rem .75rem!important;font-size:.76rem}.table thead th{font-size:.67rem}.catalog-card{min-height:215px;padding:1rem!important}.catalog-card-copy{margin:1rem 0}.catalog-card-copy>span{font-size:.68rem}.catalog-card-copy h2{font-size:1rem}.catalog-card-copy p,.catalog-open{font-size:.75rem}.settings-card-header{padding:1rem}.settings-card-header h2{font-size:1rem}.settings-card-header p{font-size:.74rem;line-height:1.5}.settings-field-grid,.settings-tools-grid,.settings-fieldset{padding:1rem}.settings-toggle-list{padding:0 1rem 1rem}.settings-choice>span{min-height:108px}.settings-choice strong,.settings-tool strong,.settings-toggle strong{font-size:.78rem}.settings-choice small,.settings-tool small,.settings-toggle small{font-size:.7rem;line-height:1.45}.settings-form-actions{padding:.85rem 1rem}.settings-form-actions span{font-size:.7rem}.listing-review-state{margin:0 1rem 1rem}.listing-review-state strong{font-size:.76rem}.listing-review-state small{font-size:.7rem}.query-heading p{font-size:.82rem}.query-compose>header,.query-inbox-header,.query-thread>header{padding:1rem}.query-compose header p,.query-inbox-header p{font-size:.74rem}.query-compose-form{padding:1rem}.query-compose-form footer{align-items:stretch;flex-direction:column}.query-compose-form footer small{font-size:.7rem}.query-compose-form footer button{width:100%}.query-category,.query-status{font-size:.64rem}.query-thread-copy h3{font-size:.95rem}.query-thread-copy small{font-size:.69rem}.query-messages{padding:.1rem 1rem 1rem}.query-message-item{grid-template-columns:32px minmax(0,1fr);gap:.5rem}.query-avatar{width:32px;height:32px}.query-message-item header{align-items:flex-start;flex-wrap:wrap}.query-message-item header strong{font-size:.75rem}.query-message-item header span{font-size:.58rem}.query-message-item time{width:100%;margin:0;font-size:.64rem}.query-message-item p{font-size:.78rem;line-height:1.55}.query-reply-form{padding:.85rem 1rem}.mobile-tabbar{height:calc(68px + env(safe-area-inset-bottom));padding:.4rem .35rem calc(.35rem + env(safe-area-inset-bottom))}.mobile-tabbar a{min-height:50px;font-size:.65rem;font-weight:650}.mobile-tabbar a i{font-size:1.15rem}}
@media(max-width:430px){.page-container{width:calc(100% - .75rem)}.command-stats{grid-template-columns:1fr}.command-stats>a{min-height:82px}.command-stat-icon{display:grid}.workspace-heading .inline-actions{grid-template-columns:1fr}.attachment-options{grid-template-columns:1fr}.permission-grid{grid-template-columns:1fr}.hero-actions{width:100%}.hero-actions a{width:100%;text-align:center}.join-course-page{padding:.5rem}.join-course-card{padding:1.1rem}.join-course-header{align-items:center}.join-course-header .step-heading p{font-size:.76rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.app-sidebar,*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.course-nav-title{overflow:visible;white-space:normal;text-overflow:clip;overflow-wrap:anywhere;line-height:1.45}.app-sidebar .course-nav-title{margin-top:.75rem;padding:0 .7rem .35rem;color:#536078;font-size:.72rem;letter-spacing:.045em}

/* Compact-phone layout corrections */
@media(max-width:700px){
body{overflow-wrap:normal}
.page-container,.app-content,main,main>section,main>article,.workspace-heading,.workspace-heading>div{min-width:0}
.public-header{width:100%;min-height:64px;padding:.55rem .65rem;gap:.5rem}
.public-brand{flex:0 0 auto;gap:.45rem;white-space:nowrap}
.public-brand .brand-mark{flex:0 0 36px}
.public-header nav{display:flex;min-width:max-content;flex:0 0 auto;align-items:center;gap:.4rem;flex-wrap:nowrap}
.public-header nav a{display:inline-flex;min-height:40px;align-items:center;justify-content:center;white-space:nowrap;word-break:normal}
.public-header nav .public-cta{padding:.5rem .65rem}
.public-content,.landing-page,.auth-page{width:100%;min-width:0}
.public-content>main:not(.auth-page){width:calc(100% - 1rem)}
.auth-page{padding:1rem .5rem!important}
.auth-card{width:100%;max-width:450px}
.auth-card-wide{max-width:620px}
input[type=checkbox],input[type=radio]{width:auto;min-width:auto}
.check-row{width:100%;justify-content:flex-start}
.check-row input[type=checkbox]{flex:0 0 auto}
.course-nav-title,.workspace-heading h1,.workspace-heading p,.task-copy,.task-copy strong,.task-copy em,.course-hero h1,.course-hero p{overflow-wrap:break-word;word-break:normal}
}
@media(max-width:350px){
.public-header{padding-right:.45rem;padding-left:.45rem;gap:.35rem}
.public-brand{gap:.3rem;font-size:.93rem}
.public-brand .brand-mark{width:32px;height:32px;flex-basis:32px}
.public-header nav{gap:.25rem}
.public-header nav a{font-size:.7rem}
.public-header nav .public-cta{padding:.45rem .5rem}
}

/* Professional course overview */
.course-overview-page{max-width:1180px;margin:0 auto}
.course-overview-page>section{margin:0 0 1rem!important}
.course-overview-hero{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);min-height:280px;padding:0!important;overflow:hidden;border:0!important;border-radius:1.15rem!important;background:linear-gradient(125deg,#09255e 0,#0b4ca8 58%,#078fa1 115%)!important;box-shadow:0 22px 55px rgba(9,46,112,.2)!important;color:#fff}
.course-overview-cover{position:relative;min-height:280px;overflow:hidden;background:rgba(255,255,255,.06)}
.course-overview-cover:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,rgba(9,49,116,.55));content:"";pointer-events:none}
.course-overview-cover img{width:100%;height:100%;object-fit:cover}
.course-cover-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 25% 25%,rgba(31,206,238,.35),transparent 35%),linear-gradient(145deg,#0c5ed0,#092d76);overflow:hidden}
.course-cover-placeholder span{font-size:8rem;font-weight:800;line-height:1;color:rgba(255,255,255,.15)}
.course-cover-placeholder i{position:absolute;right:1.5rem;bottom:1.2rem;color:rgba(255,255,255,.45);font-size:3rem}
.course-overview-summary{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:2.3rem 2.5rem}
.course-overview-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.course-overview-badges>span{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .55rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.1);color:#e9f3ff;font-size:.64rem;font-weight:750;letter-spacing:.02em}
.course-overview-badges .course-code-badge{border-color:rgba(92,225,210,.35);background:rgba(18,210,188,.14);color:#9ff4e8;text-transform:uppercase}
.course-overview-summary h1{max-width:760px;margin:0;font-size:clamp(2rem,4vw,3.35rem);line-height:1.08;letter-spacing:-.05em}
.course-overview-summary>p{max-width:760px;margin:.85rem 0 1.45rem;color:#dce8fa;font-size:.9rem;line-height:1.7}
.course-overview-host{display:flex;align-items:center;gap:.65rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.14)}
.course-host-avatar{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border:1px solid rgba(255,255,255,.26);border-radius:50%;background:rgba(255,255,255,.14);font-size:.78rem;font-weight:800}
.course-overview-host>span:nth-child(2){display:flex;min-width:0;flex-direction:column}
.course-overview-host small{color:#bad0ed;font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}
.course-overview-host strong{font-size:.74rem}
.course-access-state{display:inline-flex!important;align-items:center;gap:.35rem;margin-left:auto;padding:.4rem .6rem;border-radius:999px;background:rgba(18,205,168,.16);color:#aaf2df;font-size:.63rem;font-weight:750}
.course-time-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem!important;overflow:hidden;border:1px solid #cfe0f3!important;border-radius:1rem!important;background:linear-gradient(135deg,#f9fcff 0%,#edf6ff 100%)!important;box-shadow:0 5px 18px rgba(26,75,132,.07)!important}.course-time-main{display:flex;min-width:0;align-items:center;gap:.85rem}.course-time-icon{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border-radius:.8rem;background:linear-gradient(145deg,#1478e8,#0758c4);box-shadow:0 6px 14px rgba(11,99,216,.2);color:#fff;font-size:1.05rem}.course-time-copy{display:grid;min-width:0;grid-template-columns:auto auto;align-items:baseline;column-gap:.8rem}.course-time-copy small{grid-column:1/-1;margin-bottom:.12rem;color:#64768d;font-size:.58rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.course-time-copy strong{color:#173253;font-size:1.35rem;font-variant-numeric:tabular-nums;letter-spacing:.025em}.course-time-copy time{color:#6d7d91;font-size:.69rem;font-weight:650;white-space:nowrap}.course-time-zone{display:flex;min-width:225px;align-items:flex-end;flex-direction:column;gap:.18rem;padding:.6rem .75rem;border:1px solid rgba(21,104,196,.12);border-radius:.7rem;background:rgba(255,255,255,.7)}.course-time-zone span{display:inline-flex;align-items:center;gap:.38rem;color:#155eae;font-size:.69rem;font-weight:850}.course-time-zone small{color:#728095;font-size:.57rem;white-space:nowrap}
.course-overview-workspace{padding:1.35rem 0 .25rem!important;border:0!important;background:transparent!important;box-shadow:none!important}
.overview-section-heading{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}
.overview-section-heading>div{min-width:0}
.overview-section-heading h2,.overview-section-heading p{margin:0}
.overview-section-heading h2{margin-top:.15rem;font-size:1.15rem;letter-spacing:-.025em}
.overview-section-heading p{margin-top:.25rem;color:var(--muted);font-size:.74rem}
.overview-heading-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:.72rem;background:linear-gradient(145deg,#e9f2ff,#e4fbf8);color:#0962d4;font-size:1rem}
.course-overview-page .course-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:0}
.course-overview-page .course-action-grid a{display:grid;grid-template-columns:42px minmax(0,1fr) 16px;column-gap:.7rem;min-height:94px;padding:1rem;border-color:#dfe7f2;border-radius:.85rem;background:linear-gradient(145deg,#fff,#fbfdff);box-shadow:0 3px 12px rgba(19,48,91,.04)}
.course-overview-page .course-action-grid a>i{grid-row:auto;width:42px;height:42px;border-radius:.68rem;background:#eaf2ff;color:#0b63e5}
.course-overview-page .course-action-grid a:nth-child(2)>i,.course-overview-page .course-action-grid a:nth-child(6)>i{background:#e7f8f5;color:#078578}
.course-overview-page .course-action-grid a:nth-child(3)>i,.course-overview-page .course-action-grid a:nth-child(7)>i{background:#f1ecff;color:#7354c7}
.course-overview-page .course-action-grid a:nth-child(4)>i{background:#fff2df;color:#b76808}
.course-overview-page .course-action-grid a>span{display:flex;min-width:0;flex-direction:column;color:inherit}
.course-overview-page .course-action-grid strong{font-size:.78rem}
.course-overview-page .course-action-grid small{margin-top:.16rem;color:#758196;font-size:.62rem;line-height:1.4}
.course-overview-page .course-action-grid a>b{align-self:start;color:#a2adbd;font-size:.72rem;font-weight:400}
.course-overview-sections{padding:1.35rem!important;border-radius:1rem!important}
.course-overview-sections .overview-section-heading{padding-bottom:1rem;border-bottom:1px solid #e9edf4}
.course-overview-sections .section-card-grid>article{gap:.9rem;padding:1rem!important;background:linear-gradient(145deg,#fff,#fbfcff);box-shadow:0 3px 12px rgba(21,46,84,.035)!important}
.course-overview-sections .section-card-grid>article>header{display:flex;align-items:center;gap:.65rem}
.course-overview-sections .section-card-grid>article>header>span:last-child{display:flex;min-width:0;flex-direction:column}
.section-card-icon{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border-radius:.6rem;background:#edf4ff;color:#1765cf}
.course-overview-sections .section-card-grid>article>header strong{font-size:.78rem}
.course-overview-sections .section-card-grid>article>header small{font-size:.6rem}
.section-capacity{display:grid!important;grid-template-columns:repeat(3,1fr);padding:.7rem 0;border-top:1px solid #edf1f6;border-bottom:1px solid #edf1f6}
.section-capacity>span{display:flex;align-items:center;flex-direction:column;border-right:1px solid #edf1f6}
.section-capacity>span:last-child{border:0}
.section-capacity strong{font-size:.84rem}
.section-capacity small{font-size:.56rem;text-transform:uppercase;letter-spacing:.05em}
.course-owner-panel,.course-enrollment-panel{display:flex;align-items:center;gap:.85rem;padding:1.15rem 1.3rem!important;border:1px solid #dce5f1!important;border-radius:1rem!important;background:linear-gradient(135deg,#fff,#f6faff)!important;box-shadow:0 4px 16px rgba(23,52,94,.045)!important}
.course-owner-panel>div:first-child{display:flex;align-items:center;gap:.75rem;min-width:0;flex:1}
.course-owner-panel>div:first-child>span:last-child{display:flex;min-width:0;flex-direction:column}
.course-owner-panel strong{font-size:.78rem}.course-owner-panel small{margin-top:.15rem;color:var(--muted);font-size:.65rem}
.course-enrollment-panel>div{min-width:0;flex:1}.course-enrollment-panel h2,.course-enrollment-panel p{margin:.15rem 0}.course-enrollment-panel h2{font-size:1.05rem}.course-enrollment-panel p{color:var(--muted);font-size:.72rem}
.course-enrollment-panel .btn-wizard-primary{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;white-space:nowrap}
.course-enrollment-form{padding:1.35rem!important;border-radius:1rem!important}.course-enrollment-form form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end}.course-enrollment-form label{align-items:stretch}.course-enrollment-form button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:42px}
.course-status-panel{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.15rem!important;border-radius:.85rem!important}.course-status-panel>i{font-size:1.15rem}.course-status-panel strong{font-size:.78rem}.course-status-panel p{margin:.2rem 0 0;font-size:.7rem}.course-status-panel.status-pending{border-color:#efdfae!important;background:#fff9e9!important;color:#765a13}.course-status-panel.status-rejected{border-color:#f1cfcb!important;background:#fff4f2!important;color:#983c34}
@media(max-width:1000px){.course-overview-page .course-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
.course-overview-page>section{margin-bottom:.75rem!important}
.course-time-panel{align-items:stretch;flex-direction:column;padding:.85rem!important}.course-time-copy{grid-template-columns:1fr}.course-time-copy small{grid-column:auto}.course-time-copy time{white-space:normal}.course-time-zone{min-width:0;align-items:flex-start}.course-time-zone small{white-space:normal}
.course-overview-hero{grid-template-columns:1fr;min-height:0;border-radius:.9rem!important}
.course-overview-cover{min-height:180px;height:180px}.course-overview-cover:after{background:linear-gradient(0deg,rgba(9,49,116,.5),transparent 55%)}
.course-overview-summary{padding:1.25rem}.course-overview-summary h1{font-size:1.8rem}.course-overview-summary>p{margin:.7rem 0 1rem;font-size:.82rem}.course-overview-badges{margin-bottom:.75rem}.course-access-state{width:100%;margin:.7rem 0 0;justify-content:center}.course-overview-host{align-items:flex-start;flex-wrap:wrap}
.course-overview-workspace{padding:.75rem 0 0!important}.overview-section-heading{align-items:flex-start}.overview-section-heading h2{font-size:1.05rem}.overview-section-heading p{font-size:.76rem;line-height:1.5}
.course-overview-page .course-action-grid{grid-template-columns:1fr}.course-overview-page .course-action-grid a{min-height:78px;padding:.85rem}.course-overview-page .course-action-grid strong{font-size:.86rem}.course-overview-page .course-action-grid small{font-size:.72rem}
.course-overview-sections{padding:1rem!important}.section-capacity small{font-size:.59rem}
.course-owner-panel,.course-enrollment-panel{align-items:stretch;flex-direction:column;padding:1rem!important}.course-owner-panel .inline-actions{width:100%}
.course-enrollment-panel .btn-wizard-primary{width:100%}.course-enrollment-form{padding:1rem!important}.course-enrollment-form form{grid-template-columns:1fr}.course-enrollment-form button{width:100%}
}

/* Course learning outcomes and textbooks */
.course-learning-design-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.course-learning-design-grid>section{margin:0!important}
.learning-design-panel{display:flex;min-width:0;flex-direction:column;padding:1.25rem!important;border-radius:1rem!important}
.learning-design-panel .overview-section-heading{align-items:flex-start;padding-bottom:1rem;border-bottom:1px solid #e9edf4}
.learning-design-panel .outcome-icon{background:linear-gradient(145deg,#eee9ff,#f5f0ff);color:#7051c5}
.learning-design-panel .textbook-icon{background:linear-gradient(145deg,#fff1de,#fff7e9);color:#ac640c}
.learning-outcome-list,.textbook-list{display:grid;gap:.6rem}
.learning-outcome-list>article,.textbook-list>article{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.7rem;padding:.85rem;border:1px solid #e5eaf2;border-radius:.72rem;background:#fbfcff}
.learning-outcome-list>article>div,.textbook-list>article>div{display:flex;min-width:0;flex-direction:column}
.learning-outcome-list strong,.textbook-list strong{font-size:.76rem;line-height:1.4}
.learning-outcome-list p{margin:.25rem 0 0;color:#69768a;font-size:.67rem;line-height:1.55}
.outcome-code{display:inline-flex;min-width:52px;min-height:30px;align-items:center;justify-content:center;padding:.25rem .45rem;border-radius:.48rem;background:#eeeaff;color:#6648b7;font-size:.6rem;font-weight:850;letter-spacing:.03em}
.textbook-cover{display:grid;width:34px;height:42px;place-items:center;border-radius:.3rem .55rem .55rem .3rem;background:linear-gradient(145deg,#f3a932,#d8790b);box-shadow:inset 4px 0 rgba(255,255,255,.24);color:#fff}
.textbook-list a{display:inline-flex;align-items:center;gap:.3rem;margin-top:.25rem;font-size:.65rem;font-weight:700}
.textbook-list small{margin-top:.25rem;font-size:.63rem}
.learning-outcome-list>article>details,.textbook-list>article>details{position:relative;margin:0!important;padding:0!important;border:0!important}
.learning-outcome-list>article>details>summary,.textbook-list>article>details>summary{display:grid;width:30px;min-height:30px!important;padding:0!important;place-items:center;border-radius:.45rem;background:#f0f3f8;list-style:none}
.learning-outcome-list>article>details>summary::-webkit-details-marker,.textbook-list>article>details>summary::-webkit-details-marker{display:none}
.learning-outcome-list>article>details[open]>summary,.textbook-list>article>details[open]>summary{background:#e8effc;color:#155ac4}
.learning-outcome-list>article>details>form,.textbook-list>article>details>form{position:absolute;z-index:12;right:0;width:min(390px,calc(100vw - 3rem));margin:.4rem 0 0!important;padding:1rem;border:1px solid #dce3ed;border-radius:.75rem;background:#fff;box-shadow:0 18px 42px rgba(22,45,80,.18)}
.learning-outcome-list>article>details>form:first-of-type,.textbook-list>article>details>form:first-of-type{display:grid;gap:.65rem}
.learning-outcome-list>article>details>form:nth-of-type(2),.textbook-list>article>details>form:nth-of-type(2){top:calc(100% + 248px);padding:.55rem 1rem;border-top:0;border-radius:0 0 .75rem .75rem;box-shadow:0 12px 30px rgba(22,45,80,.14)}
.textbook-list>article>details>form:nth-of-type(2){top:calc(100% + 178px)}
.learning-outcome-list details label,.textbook-list details label{align-items:stretch}.learning-outcome-list details input,.learning-outcome-list details textarea,.textbook-list details input{width:100%}
.learning-outcome-list details footer,.textbook-list details footer{display:flex;justify-content:flex-end}
.learning-outcome-list .danger-link,.textbook-list .danger-link{width:100%;min-height:32px!important;text-align:left}
.learning-design-create{margin-top:auto!important;padding-top:.9rem!important;border:0!important;border-radius:0!important}
.learning-design-create>summary{display:inline-flex;min-height:38px!important;align-items:center;gap:.4rem;padding:.55rem .7rem!important;border:1px dashed #cbd7e8;border-radius:.55rem;color:#315a91!important}
.learning-design-create>form{display:grid!important;grid-template-columns:.45fr 1fr;align-items:end!important;gap:.7rem!important;margin-top:.8rem!important;padding:.85rem;border:1px solid #e3e9f1;border-radius:.68rem;background:#fafcff}
.learning-design-create>form label{align-items:stretch}.learning-design-create>form input,.learning-design-create>form textarea{width:100%}
.learning-design-create>form .field-wide{grid-column:1/-1}.learning-design-create>form button{grid-column:1/-1;justify-self:start}
.learning-outcome-list>article>details[open],.textbook-list>article>details[open]{grid-column:1/-1;width:100%}
.learning-outcome-list>article>details>form,.textbook-list>article>details>form{position:static!important;width:100%;margin:.55rem 0 0!important;box-shadow:none}
.learning-outcome-list>article>details>form:nth-of-type(2),.textbook-list>article>details>form:nth-of-type(2){position:static!important;padding:.45rem 0 0;border:0;border-top:1px solid #edf0f4;border-radius:0;box-shadow:none}
@media(max-width:900px){.course-learning-design-grid{grid-template-columns:1fr}}
@media(max-width:700px){
.course-learning-design-grid{gap:.75rem;margin-bottom:.75rem}.learning-design-panel{padding:1rem!important}
.learning-outcome-list>article,.textbook-list>article{padding:.75rem}
.learning-design-create>form{grid-template-columns:1fr}.learning-design-create>form .field-wide,.learning-design-create>form button{grid-column:auto}.learning-design-create>form button{width:100%}
}

/* Profile and account security */
.account-page{max-width:1080px;margin:0 auto}
.account-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.15rem;margin-bottom:1rem;padding:1.55rem 1.7rem;border:0;border-radius:1.05rem;background:linear-gradient(125deg,#09265f,#0a53b5 65%,#078d9d);box-shadow:0 18px 44px rgba(9,49,116,.17);color:#fff}
.account-avatar{display:grid;width:72px;height:72px;place-items:center;border:2px solid rgba(255,255,255,.42);border-radius:1.2rem;background:rgba(255,255,255,.14);box-shadow:0 10px 24px rgba(0,22,65,.18);font-size:1.35rem;font-weight:850;letter-spacing:-.04em}
.account-profile-hero>div:nth-child(2){min-width:0}.account-profile-hero .eyebrow{color:#86f1e4}.account-profile-hero h1{margin:.2rem 0;font-size:1.7rem}.account-profile-hero p{margin:0;color:#d9e7f9;font-size:.8rem}
.account-badges{display:flex;flex-wrap:wrap;gap:.42rem;margin-top:.75rem}.account-badges span{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .5rem;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.09);color:#dfeaf9;font-size:.58rem;font-weight:700}.account-badges .is-verified{color:#a4f0df}
.account-stats{display:flex;align-items:center;gap:.7rem}.account-stats>span{display:flex;min-width:78px;flex-direction:column;align-items:center;padding:.7rem .8rem;border:1px solid rgba(255,255,255,.16);border-radius:.75rem;background:rgba(255,255,255,.1)}.account-stats strong{font-size:1.15rem}.account-stats small{color:#c9daf0;font-size:.56rem;text-transform:uppercase;letter-spacing:.06em}
.account-success{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem .9rem;border:1px solid #cce9df;border-radius:.7rem;background:#effaf6;color:#087464;font-size:.72rem;font-weight:700}
.account-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.account-card{margin:0!important;padding:0!important;overflow:hidden;border:1px solid #dfe6f0!important;border-radius:1rem!important;background:#fff!important;box-shadow:0 5px 18px rgba(20,48,86,.045)!important}
.account-card>header{display:flex;align-items:center;gap:.7rem;padding:1.1rem 1.2rem;border-bottom:1px solid #e9edf3;background:#fbfcff}.account-card>header>span{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:.65rem;background:#eaf2ff;color:#1260cd}.account-card>header>div{min-width:0}.account-card h2,.account-card header p{margin:0}.account-card h2{font-size:1rem}.account-card header p{margin-top:.2rem;color:var(--muted);font-size:.66rem}
.account-profile-form{display:block!important;margin:0!important;padding:1.2rem}.account-profile-form .field-group{margin-bottom:1rem}.account-profile-form .field-group>small{display:block;margin-top:.35rem;font-size:.61rem}.input-shell.is-readonly{background:#f5f7fa}.input-shell.is-readonly input{color:#718096}
.account-profile-form>footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.1rem -1.2rem -1.2rem;padding:.9rem 1.2rem;border-top:1px solid #e9edf3;background:#fbfcfe}.account-profile-form>footer>span{max-width:260px;color:#7a8697;font-size:.6rem}.account-profile-form>footer button{display:inline-flex;align-items:center;gap:.4rem}
.security-method-list{display:grid;padding:.2rem 1.2rem}.security-method-list>article{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.85rem 0;border-bottom:1px solid #edf0f5}.security-method-list>article:last-child{border:0}.security-method-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:.6rem;background:#eef3fa;color:#416082}.security-method-icon.provider-icon{background:#fff1ef;color:#c63c2d;font-size:.78rem;font-weight:850}.security-method-list article>div{display:flex;min-width:0;flex-direction:column}.security-method-list strong{font-size:.7rem}.security-method-list small{margin-top:.12rem;color:#7b8798;font-size:.6rem}.security-method-list article>a{display:inline-flex;align-items:center;gap:.2rem;font-size:.62rem;font-weight:750}.security-state{padding:.27rem .45rem;border-radius:999px;font-size:.55rem;font-weight:800}.security-state.is-on{background:#e6f7f1;color:#087766}.security-state.is-warning{background:#fff2d9;color:#89610a}
.security-note{display:flex;align-items:center;gap:.6rem;margin:0 1.2rem 1.1rem;padding:.7rem .75rem;border-radius:.6rem;background:#f1f6fd;color:#395a84}.security-note>span{display:flex;flex-direction:column}.security-note strong{font-size:.63rem}.security-note small{margin-top:.1rem;font-size:.57rem;line-height:1.4}
.account-danger-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0 0!important;padding:1rem 1.15rem!important;border:1px solid #f0d7d3!important;border-radius:.85rem!important;background:#fffafa!important;box-shadow:none!important}.account-danger-panel>div{display:flex;align-items:center;gap:.7rem}.account-danger-panel>div>span{display:grid;width:38px;height:38px;place-items:center;border-radius:.6rem;background:#ffebe8;color:#b74238}.account-danger-panel>div>div{display:flex;flex-direction:column}.account-danger-panel strong{font-size:.72rem}.account-danger-panel p{margin:.15rem 0 0;color:#876762;font-size:.62rem}.account-danger-panel .danger-button{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem .75rem;border-radius:.5rem;font-size:.65rem;font-weight:750;white-space:nowrap}
.account-security-page{width:min(520px,100%);margin:0 auto;padding-top:1rem}.account-back-link{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:.8rem;color:#64738a;font-size:.68rem;font-weight:700}.account-security-card{margin:0!important;padding:0!important;overflow:hidden;border:1px solid #dce4ef!important;border-radius:1rem!important;background:#fff!important;box-shadow:0 18px 45px rgba(24,49,88,.1)!important}.account-security-card>header{padding:1.5rem 1.5rem 1.1rem;text-align:center}.account-security-icon{display:grid;width:48px;height:48px;margin:0 auto .8rem;place-items:center;border-radius:.8rem;background:linear-gradient(145deg,#e7f1ff,#e4faf7);color:#0a61d1;font-size:1.15rem}.account-security-icon.is-danger{background:#ffebe8;color:#b73c32}.account-security-card h1{margin:.25rem 0;font-size:1.45rem}.account-security-card header p{max-width:410px;margin:.55rem auto 0;color:var(--muted);font-size:.72rem;line-height:1.55}.account-security-card>.auth-form{display:block;margin:0;padding:1.1rem 1.5rem 1.5rem;border-top:1px solid #edf0f4}.password-guidance,.external-close-note{display:flex;align-items:flex-start;gap:.5rem;margin:.3rem 0 1rem;padding:.65rem .7rem;border-radius:.55rem;background:#eff5fc;color:#496585;font-size:.62rem;line-height:1.45}.password-guidance i{color:#118271}.closure-checklist{display:flex;flex-direction:column;gap:.45rem;margin:0 1.5rem;padding:1rem;border:1px solid #f0dfdc;border-radius:.65rem;background:#fff9f8;color:#72534f}.closure-checklist strong{font-size:.7rem}.closure-checklist span{display:flex;align-items:center;gap:.4rem;font-size:.62rem}.closure-checklist i{color:#bb4a40}.closure-confirm{display:flex!important;align-items:flex-start!important;flex-direction:row!important;gap:.5rem;margin:.4rem 0 1rem;padding:.7rem;border:1px solid #eadbd8;border-radius:.55rem;background:#fffafa;color:#674f4c}.closure-confirm input{margin-top:.16rem}.closure-confirm span{font-size:.65rem}.account-close-button{display:flex;width:100%;align-items:center;justify-content:center;gap:.45rem;background:#b42318}.account-close-button:hover{background:#8f1c13}.close-password-required{display:flex;align-items:flex-start;gap:.7rem;margin:0 1.5rem 1.5rem;padding:.9rem;border:1px solid #e1e7f0;border-radius:.65rem;background:#f7f9fc}.close-password-required>i{color:#275da9;font-size:1.1rem}.close-password-required>div{display:flex;flex-direction:column}.close-password-required strong{font-size:.7rem}.close-password-required p{margin:.2rem 0 .55rem;color:#69768a;font-size:.62rem;line-height:1.5}.close-password-required a{font-size:.65rem;font-weight:750}
@media(max-width:850px){.account-profile-hero{grid-template-columns:auto 1fr}.account-stats{grid-column:1/-1}.account-stats>span{flex:1}.account-settings-grid{grid-template-columns:1fr}}
@media(max-width:560px){.account-profile-hero{grid-template-columns:1fr;padding:1.15rem;text-align:center}.account-avatar{margin:0 auto}.account-badges{justify-content:center}.account-stats{width:100%}.account-card>header{align-items:flex-start}.account-profile-form{padding:1rem}.account-profile-form>footer{align-items:stretch;flex-direction:column;margin:1rem -1rem -1rem;padding:1rem}.account-profile-form>footer button{justify-content:center;width:100%}.security-method-list{padding:.2rem 1rem}.security-method-list>article{grid-template-columns:34px minmax(0,1fr)}.security-method-list article>a,.security-method-list .security-state{grid-column:2;justify-self:start}.security-note{margin:0 1rem 1rem}.account-danger-panel{align-items:stretch;flex-direction:column}.account-danger-panel .danger-button{justify-content:center;width:100%}.account-security-page{padding-top:.25rem}.account-security-card>header{padding:1.25rem 1rem 1rem}.account-security-card>.auth-form{padding:1rem}.closure-checklist{margin:0 1rem}}

/* Professional course catalog */
.course-catalog-page{width:min(1240px,100%);margin:0 auto}
.catalog-page-hero{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1rem;padding:1.55rem 1.7rem;border:1px solid #d6e4f7;border-radius:1.05rem;background:radial-gradient(circle at 92% 5%,rgba(8,199,244,.15),transparent 30%),linear-gradient(125deg,#fff,#f1f7ff);box-shadow:0 8px 28px rgba(20,56,110,.06)}
.catalog-hero-copy{min-width:0}.catalog-hero-copy h1{margin:.18rem 0 .38rem;color:#102044;font-size:1.75rem;letter-spacing:-.035em}.catalog-hero-copy p{max-width:640px;margin:0;color:#65738d;font-size:.78rem;line-height:1.55}
.catalog-hero-actions{display:flex;align-items:center;gap:.55rem;flex:0 0 auto}.catalog-hero-actions>a{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:.42rem;margin:0;white-space:nowrap}
.catalog-segmented{display:flex;gap:.35rem;margin:0 0 .8rem;padding:.3rem;border:1px solid #dfe6f1;border-radius:.75rem;background:#fff;overflow-x:auto;scrollbar-width:none}.catalog-segmented::-webkit-scrollbar{display:none}.catalog-segmented button{display:inline-flex;min-height:34px;align-items:center;gap:.35rem;padding:.42rem .68rem;border:0;border-radius:.5rem;background:transparent;color:#66748a;font-size:.66rem;font-weight:750;white-space:nowrap}.catalog-segmented button span{display:grid;min-width:19px;height:19px;place-items:center;padding:0 .25rem;border-radius:999px;background:#edf1f7;color:#617086;font-size:.55rem}.catalog-segmented button.is-active{background:#e9f2ff;color:#0957c6}.catalog-segmented button.is-active span{background:#0b63f6;color:#fff}
.course-catalog-page .catalog-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:.7rem;margin-bottom:1rem;padding:.7rem;border:1px solid #dfe6f0;border-radius:.85rem;background:#fff;box-shadow:0 4px 16px rgba(24,51,89,.04)}
.catalog-search{position:relative;display:flex!important;align-items:center!important;margin:0!important}.catalog-search>i{position:absolute;z-index:1;left:.8rem;color:#8390a4}.catalog-search input{width:100%!important;min-height:40px!important;padding:.55rem .75rem .55rem 2.25rem!important;border-color:#dce4ef!important;background:#f9fbfe!important;font-size:.7rem!important}
.catalog-filter-row{display:flex;align-items:center;gap:.45rem}.catalog-filter-row label{margin:0!important}.catalog-filter-row select{min-height:40px;max-width:190px;padding:.5rem 2rem .5rem .65rem;border:1px solid #dce4ef;border-radius:.55rem;background-color:#fff;color:#4f5e74;font-size:.66rem;font-weight:650}
.catalog-result-count{padding:0 .35rem;color:#7b8799;font-size:.64rem;white-space:nowrap}.catalog-result-count strong{color:#243650;font-size:.72rem}
.course-catalog-page .catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.course-catalog-page .catalog-card-rich{display:flex;min-width:0;min-height:420px;flex-direction:column;padding:0;border:1px solid #dce4ef;border-radius:1rem;background:#fff;color:#15243d;text-decoration:none;overflow:hidden;box-shadow:0 5px 18px rgba(19,47,87,.05);transition:border-color .2s,box-shadow .2s,transform .2s}
.course-catalog-page .catalog-card-rich:hover{border-color:#b7d1f4;box-shadow:0 17px 38px rgba(14,57,123,.12);transform:translateY(-3px)}.catalog-card-rich[hidden]{display:none!important}
.catalog-card-cover{position:relative;display:block;height:150px;flex:0 0 150px;overflow:hidden;background:#e9f2ff}.catalog-card-cover>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.catalog-card-rich:hover .catalog-card-cover>img{transform:scale(1.025)}
.catalog-cover-fallback{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-direction:column;gap:.55rem;background:radial-gradient(circle at 75% 15%,rgba(14,213,175,.23),transparent 31%),linear-gradient(140deg,#0a2e75,#0874d3);color:#fff}.catalog-cover-fallback i{font-size:2rem;opacity:.92}.catalog-cover-fallback b{font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;opacity:.86}
.catalog-card-badges{position:absolute;top:.7rem;right:.7rem;left:.7rem;display:flex;align-items:flex-start;justify-content:space-between;gap:.4rem}.catalog-card-badges>span{display:inline-flex;align-items:center;min-height:25px;padding:.28rem .48rem;border:1px solid rgba(255,255,255,.45);border-radius:999px;box-shadow:0 3px 10px rgba(8,28,61,.12);font-size:.55rem;font-weight:800;backdrop-filter:blur(8px)}.catalog-card-badges .catalog-mode{margin-left:auto;background:rgba(10,31,68,.72);color:#fff}.catalog-card-badges .catalog-status{background:rgba(255,255,255,.94);color:#31506f}.catalog-card-badges .status-teaching{color:#1658b6}.catalog-card-badges .status-accepted{color:#087968}.catalog-card-badges .status-pending{color:#865d05}.catalog-card-badges .status-rejected{color:#a23d35}
.catalog-card-body{display:flex;min-width:0;flex:1;flex-direction:column;padding:1rem 1.05rem}.catalog-course-code{color:#078fbe;font-size:.57rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.catalog-card-body h2{display:-webkit-box;min-height:2.45em;margin:.28rem 0 .42rem;overflow:hidden;color:#15243d;font-size:1rem;line-height:1.23;letter-spacing:-.02em;-webkit-box-orient:vertical;-webkit-line-clamp:2}.catalog-description{display:-webkit-box;min-height:3.15em;margin-bottom:.75rem;overflow:hidden;color:#69768a;font-size:.66rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.catalog-instructor{display:flex;min-width:0;align-items:center;gap:.55rem;margin-top:auto}.catalog-avatar{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:.55rem;background:linear-gradient(145deg,#e7f1ff,#e2faf6);color:#0a5bbf;font-size:.66rem;font-weight:850}.catalog-instructor>span:last-child{display:flex;min-width:0;flex-direction:column}.catalog-instructor small{color:#8b95a5;font-size:.52rem;text-transform:uppercase}.catalog-instructor strong{overflow:hidden;color:#46556c;font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}
.catalog-meta{display:flex;min-width:0;flex-wrap:wrap;gap:.35rem .7rem;margin-top:.75rem;padding-top:.7rem;border-top:1px solid #edf1f5;color:#65758b;font-size:.58rem}.catalog-meta>span{display:inline-flex;min-width:0;align-items:center;gap:.28rem}.catalog-meta i{color:#3380dc}.catalog-meta .is-full{color:#a04b45}.catalog-meta .is-full i{color:#b9564d}
.catalog-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.78rem 1.05rem;border-top:1px solid #e9eef5;background:#fbfcfe;color:#0a5dcc;font-size:.66rem;font-weight:800}.catalog-card-footer i{transition:transform .2s}.catalog-card-rich:hover .catalog-card-footer i{transform:translateX(3px)}
.catalog-empty{padding:4rem 1rem!important}.catalog-empty-icon{display:grid;width:56px;height:56px;margin:0 auto .8rem;place-items:center;border-radius:.9rem;background:linear-gradient(145deg,#e8f2ff,#e5faf7);color:#0b63d8;font-size:1.4rem}.catalog-no-results{margin-top:1rem}.catalog-no-results .secondary-action{margin-top:.6rem}
@media(max-width:1050px){.course-catalog-page .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-catalog-page .catalog-toolbar{grid-template-columns:minmax(220px,1fr) auto}.catalog-result-count{grid-column:1/-1;justify-self:end}}
@media(max-width:700px){
.catalog-page-hero{align-items:stretch;flex-direction:column;padding:1.15rem}.catalog-hero-copy h1{font-size:1.45rem}.catalog-hero-copy p{font-size:.73rem}.catalog-hero-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.catalog-hero-actions>a{width:100%;padding:.62rem .55rem;font-size:.65rem}
.catalog-segmented{margin-right:-.15rem;margin-left:-.15rem}.course-catalog-page .catalog-toolbar{position:relative;display:flex;align-items:stretch;flex-direction:column;gap:.55rem;padding:.65rem}.catalog-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.catalog-filter-row label:last-child:nth-child(3){grid-column:1/-1}.catalog-filter-row select{width:100%;max-width:none}.catalog-result-count{align-self:flex-end;padding:0 .2rem}.course-catalog-page .catalog-grid{grid-template-columns:1fr;gap:.75rem}.course-catalog-page .catalog-card-rich{min-height:0}.catalog-card-cover{height:135px;flex-basis:135px}.catalog-card-body{padding:.9rem}.catalog-description{min-height:0}.catalog-card-footer{padding:.72rem .9rem}}
@media(max-width:400px){.catalog-hero-actions{grid-template-columns:1fr}.catalog-filter-row{grid-template-columns:1fr}.catalog-filter-row label:last-child:nth-child(3){grid-column:auto}.catalog-card-cover{height:122px;flex-basis:122px}}

/* Enrollment registration-number editing */
.enrollment-sort{display:flex;align-items:end;gap:.5rem;margin:0}.enrollment-sort label{align-items:stretch;color:var(--muted);font-size:.68rem}.enrollment-sort select{min-width:190px}
.enrollment-filter-bar{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(170px,.8fr) minmax(180px,.8fr) auto auto;align-items:end;gap:.75rem;margin:0 0 1rem;padding:1rem;border:1px solid #e4e9f0;border-radius:.8rem;background:#fff;box-shadow:0 8px 24px rgba(31,50,81,.05)}.enrollment-filter-bar label{align-items:stretch;color:var(--muted);font-size:.68rem}.enrollment-filter-bar label>span{margin-bottom:.35rem;font-weight:750}.enrollment-search-field>div{position:relative}.enrollment-search-field i{position:absolute;top:50%;left:.75rem;color:#78879b;transform:translateY(-50%)}.enrollment-search-field input{width:100%;padding-left:2.2rem}.enrollment-filter-bar .filter-clear{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:.6rem;color:#67758a;font-size:.7rem;font-weight:750;text-decoration:none}@media(max-width:900px){.enrollment-filter-bar{grid-template-columns:1fr 1fr}.enrollment-search-field{grid-column:1/-1}}@media(max-width:600px){.enrollment-filter-bar{grid-template-columns:1fr}.enrollment-search-field{grid-column:auto}.enrollment-filter-bar .secondary-action,.enrollment-filter-bar .filter-clear{width:100%}}
.enrollment-notice{display:flex;align-items:center;gap:.55rem;margin-bottom:1rem;padding:.75rem .9rem;border:1px solid;border-radius:.7rem;font-size:.7rem;font-weight:700}.enrollment-notice.is-success{border-color:#c9e8dd;background:#effaf6;color:#087463}.enrollment-notice.is-error{border-color:#f0d1ce;background:#fff6f5;color:#9a3d35}.registration-edit-form{display:flex;align-items:center;gap:.4rem;min-width:230px;margin:0}.registration-edit-form input{width:170px;min-height:36px;padding:.42rem .55rem;border:1px solid #d8e1ec;border-radius:.5rem;background:#fff;color:#34435a;font-size:.66rem}.registration-edit-form input:focus{border-color:#7bafe9;box-shadow:0 0 0 3px rgba(11,99,246,.1);outline:0}.registration-edit-form button{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:.3rem;padding:.42rem .58rem;border:0;border-radius:.48rem;background:#e8f2ff;color:#095ac9;font-size:.61rem;font-weight:800}.registration-edit-form button:hover{background:#dcecff}.registration-edit-form button i{font-size:.72rem}
@media(max-width:700px){.registration-edit-form{min-width:205px}.registration-edit-form input{width:145px}.registration-edit-form button span{display:none}.registration-edit-form button{width:36px;padding:0}}

/* Context-aware course joining */
.join-dependent-field[hidden]{display:none!important}.join-code-status{display:flex;align-items:center;gap:.35rem;min-height:20px}.join-code-status i{color:#66809f}.join-code-status.is-ready{color:#087464}.join-code-status.is-ready i{color:#07977f}.join-code-status.is-error{color:#9b423a}.join-code-status.is-error i{color:#bd5046}.join-select-shell select{width:100%;height:100%;min-height:0;padding:.65rem 2rem .65rem 0;border:0;border-radius:.65rem;background:transparent;color:#344057;font-size:.72rem;box-shadow:none;outline:0}.join-course-card .btn-wizard-primary:disabled{cursor:not-allowed;filter:grayscale(.25);opacity:.55;box-shadow:none}

/* In-place enrollment management */
.enrollment-notice[hidden]{display:none!important}form[data-enrollment-action].is-saving{opacity:.62;pointer-events:none}form[data-enrollment-action].is-saving button{cursor:wait}form[data-enrollment-action] button:disabled{opacity:.58}
.enrollment-action-feedback{margin:.5rem 0 0;max-width:32rem;white-space:normal;overflow-wrap:anywhere}
.registration-correction-alert{display:flex;align-items:flex-start;gap:1rem;border:1px solid #efcf83!important;background:#fff9e8!important;color:#664d12}.registration-correction-icon{display:grid;flex:0 0 46px;width:46px;height:46px;border-radius:.75rem;background:#ffedbb;color:#9b6800;place-items:center;font-size:1.15rem}.registration-correction-copy{flex:1;min-width:0}.registration-correction-copy h2{margin:.2rem 0 .35rem;color:#513d0e}.registration-correction-copy p{margin:0 0 .9rem;color:#765e24;font-size:.78rem;line-height:1.55}.registration-correction-copy form label{display:block;margin-bottom:.35rem;font-weight:750}.registration-correction-copy form>div{display:flex;gap:.55rem}.registration-correction-copy input{flex:1;min-width:0;background:#fff}.registration-correction-copy button{white-space:nowrap;background:#9b6800}.registration-correction-copy button:hover{background:#7e5400}@media(max-width:600px){.registration-correction-alert{flex-direction:column}.registration-correction-copy form>div{align-items:stretch;flex-direction:column}.registration-correction-copy button{width:100%}}

/* Section-targeted announcement alerts */
.course-announcement-alerts{display:grid;gap:.7rem;margin-bottom:1rem;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.course-announcement-alerts article{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.8rem;padding:1rem 1.1rem;border:1px solid #d8e6f7;border-left:4px solid #0b63f6;border-radius:.8rem;background:linear-gradient(120deg,#f7fbff,#fff);box-shadow:0 5px 18px rgba(19,54,104,.05)}.course-announcement-alerts article>span{display:grid;width:42px;height:42px;place-items:center;border-radius:.65rem;background:#e7f1ff;color:#0b63d8}.course-announcement-alerts article>div{min-width:0}.course-announcement-alerts small{color:#1676aa;font-size:.59rem;font-weight:800;text-transform:uppercase}.course-announcement-alerts h2{margin:.18rem 0 .3rem;font-size:1rem}.course-announcement-alerts p{margin:0;color:#56667c;font-size:.72rem;line-height:1.6;white-space:pre-wrap}
.announcement-management{overflow:hidden}.announcement-admin-card{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:1rem 0}.announcement-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:.62rem;background:#eaf2ff;color:#0b63d8}.announcement-admin-card>div{min-width:0}.announcement-title-row{display:flex;align-items:center;gap:.45rem}.announcement-title-row h3{margin:0}.announcement-admin-card>div>p{margin:.28rem 0;color:#59677b;font-size:.72rem;line-height:1.55;white-space:pre-wrap}.announcement-admin-card>div>small{display:flex;align-items:center;gap:.3rem;color:#718096;font-size:.61rem}.announcement-admin-card>details{margin:0!important}.announcement-admin-card>details>summary{display:inline-flex;align-items:center;gap:.3rem}.announcement-edit-form{display:grid!important;min-width:min(540px,70vw);gap:.7rem;padding:.2rem}.announcement-edit-form>label{align-items:stretch}.announcement-edit-form input[type=text],.announcement-edit-form textarea{width:100%}.announcement-edit-form textarea{min-height:110px;resize:vertical}.announcement-audience{margin:.25rem 0;padding:.75rem;border:1px solid #dfe6ef;border-radius:.62rem;background:#f9fbfe}.announcement-audience legend{padding:0 .25rem;color:#34445c;font-size:.7rem;font-weight:800}.announcement-audience>p{margin:0 0 .55rem;color:#778398;font-size:.6rem}.announcement-audience>div{display:flex;flex-wrap:wrap;gap:.42rem}.announcement-audience label{display:inline-flex!important;align-items:center!important;flex-direction:row!important;gap:.3rem;padding:.38rem .5rem;border:1px solid #dce4ef;border-radius:.48rem;background:#fff;font-size:.64rem}.announcement-audience input{margin:0}.publish-toggle{display:flex!important;align-items:center!important;flex-direction:row!important;gap:.4rem}.create-announcement-panel>p{margin:-.45rem 0 .8rem;color:#758196;font-size:.67rem}.create-announcement-panel form>small{color:#758196;font-size:.6rem}.create-announcement-panel button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem}
@media(max-width:700px){.course-announcement-alerts article{grid-template-columns:34px minmax(0,1fr);padding:.85rem}.course-announcement-alerts article>span{width:34px;height:34px}.announcement-admin-card{grid-template-columns:34px minmax(0,1fr)}.announcement-admin-card>details{grid-column:1/-1;width:100%}.announcement-admin-card>details>summary{width:100%;justify-content:center}.announcement-edit-form{min-width:0;width:100%}.announcement-audience>div{display:grid;grid-template-columns:1fr 1fr}.announcement-audience label{min-width:0}}
@media(max-width:430px){.announcement-audience>div{grid-template-columns:1fr}}

/* Dedicated announcements module */
.course-announcements-page{max-width:1040px;margin:0 auto}.announcement-page-heading .primary-action{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;margin:0}.announcement-count{padding:.3rem .5rem;border-radius:999px;background:#edf3fc;color:#526b8a;font-size:.58rem;font-weight:800;white-space:nowrap}.announcement-compose-card{margin-top:1rem!important;padding:0!important;overflow:hidden}.announcement-compose-card>.card-heading{align-items:center;margin:0;padding:1.1rem 1.2rem;background:#fbfcff}.announcement-compose-card>.card-heading .announcement-icon{flex:0 0 38px}.announcement-compose-form{display:grid!important;grid-template-columns:1fr 1fr;align-items:start!important;gap:.9rem!important;margin:0!important;padding:1.2rem}.announcement-compose-form>label{align-items:stretch}.announcement-compose-form>label:nth-of-type(2),.announcement-compose-form>.announcement-audience,.announcement-compose-form>.publish-toggle,.announcement-compose-form>.announcement-delivery-note,.announcement-compose-form>footer{grid-column:1/-1}.announcement-compose-form input[type=text],.announcement-compose-form textarea{width:100%}.announcement-compose-form textarea{resize:vertical}.announcement-delivery-note{display:flex;align-items:center;gap:.65rem;padding:.7rem .8rem;border-radius:.62rem;background:#eff6fc;color:#3e5e82}.announcement-delivery-note>i{font-size:1rem}.announcement-delivery-note>span{display:flex;flex-direction:column}.announcement-delivery-note strong{font-size:.65rem}.announcement-delivery-note small{margin-top:.1rem;font-size:.58rem}.announcement-compose-form>footer{display:flex;justify-content:flex-end}.announcement-compose-form>footer button{display:inline-flex;align-items:center;gap:.4rem}
@media(max-width:700px){.announcement-page-heading .primary-action{width:100%}.announcement-compose-form{grid-template-columns:1fr;padding:1rem}.announcement-compose-form>label:nth-of-type(2),.announcement-compose-form>.announcement-audience,.announcement-compose-form>.publish-toggle,.announcement-compose-form>.announcement-delivery-note,.announcement-compose-form>footer{grid-column:auto}.announcement-compose-form>footer button{width:100%;justify-content:center}}

/* Public legal pages */
.public-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem clamp(1rem,5vw,4rem);border-top:1px solid #e3e9f2;background:#f8faff;color:#738096;font-size:.68rem}.public-footer nav{display:flex;flex-wrap:wrap;gap:1rem}.public-footer a{color:#365779;font-weight:700}.legal-page{width:min(860px,calc(100% - 2rem));margin:2rem auto 4rem}.legal-page>header{padding:2rem clamp(1.2rem,4vw,2.5rem);border-radius:1rem;background:radial-gradient(circle at 90% 10%,rgba(32,197,175,.18),transparent 32%),linear-gradient(125deg,#092b6f,#0a62bd);color:#fff;box-shadow:0 16px 40px rgba(12,54,119,.15)}.legal-page>header .eyebrow{color:#92eddf}.legal-page>header h1{margin:.25rem 0;font-size:clamp(1.65rem,4vw,2.35rem);letter-spacing:-.035em}.legal-page>header p{margin:0;color:#d8e5f6;font-size:.7rem}.legal-page>article{margin-top:1rem;padding:clamp(1.2rem,4vw,2.5rem);border:1px solid #dfe6f0;border-radius:1rem;background:#fff;box-shadow:0 8px 28px rgba(22,49,87,.06)}.legal-page>article>p:first-child{color:#40516a;font-size:.83rem;line-height:1.75}.legal-page h2{margin:1.8rem 0 .45rem;color:#142844;font-size:1rem}.legal-page h2:first-of-type{margin-top:1.5rem}.legal-page article p{margin:.45rem 0;color:#5c6b80;font-size:.73rem;line-height:1.75}.legal-page article a{font-weight:750}
@media(max-width:600px){.public-footer{align-items:flex-start;flex-direction:column}.legal-page{margin-top:1rem}.legal-page>header{padding:1.4rem 1.2rem}.legal-page>article{padding:1.2rem}.legal-page h2{font-size:.93rem}}

/* Assignment deadline countdowns */
.assignment-countdown{display:flex;align-items:center;gap:.65rem;margin:.8rem 1.3rem;padding:.7rem .8rem;border:1px solid #d8e5f3;border-radius:.65rem;background:#f5f9ff;color:#225b9d}.assignment-countdown>span{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:.52rem;background:#e1edfc}.assignment-countdown>div{display:flex;min-width:0;flex-direction:column}.assignment-countdown small{font-size:.55rem;font-weight:850;letter-spacing:.045em;text-transform:uppercase}.assignment-countdown strong{margin-top:.06rem;font-size:.75rem;font-variant-numeric:tabular-nums}.assignment-countdown.is-late{border-color:#eedca9;background:#fff9e9;color:#8a650d}.assignment-countdown.is-late>span{background:#fff0c4}.assignment-countdown.is-closed{border-color:#ead8d8;background:#fff6f5;color:#994b46}.assignment-countdown.is-closed>span{background:#f9e3e1}.assignment-countdown.is-unscheduled{border-color:#e1e5eb;background:#f7f8fa;color:#6f7988}.assignment-countdown.is-unscheduled>span{background:#e9edf2}
.assignment-deadline-preview{display:flex;align-items:center;gap:.75rem;margin-top:1rem;padding:.85rem 1rem;border:1px solid #d5e4f4;border-radius:.75rem;background:linear-gradient(135deg,#f6faff,#edf6ff);color:#235b99}.assignment-deadline-preview>span{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:.62rem;background:#dcecff;font-size:.9rem}.assignment-deadline-preview>div{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:.7rem}.assignment-deadline-preview small{grid-column:1/-1;font-size:.55rem;font-weight:850;letter-spacing:.045em;text-transform:uppercase}.assignment-deadline-preview strong{font-size:.9rem;font-variant-numeric:tabular-nums}.assignment-deadline-preview p{margin:0;color:#718197;font-size:.59rem}.assignment-deadline-preview.is-late{border-color:#edd99e;background:#fff9e7;color:#88630e}.assignment-deadline-preview.is-late>span{background:#ffedba}.assignment-deadline-preview.is-closed{border-color:#ead4d3;background:#fff5f4;color:#954a45}.assignment-deadline-preview.is-closed>span{background:#f8dfdd}.assignment-deadline-preview.is-unscheduled{border-color:#e0e5eb;background:#f7f8fa;color:#6d7786}.assignment-deadline-preview.is-unscheduled>span{background:#e8ecf1}
@media(max-width:560px){.assignment-countdown{margin:.7rem .85rem}.assignment-deadline-preview>div{grid-template-columns:1fr}.assignment-deadline-preview small{grid-column:auto}.assignment-deadline-preview p{margin-top:.12rem}}

/* Submission audit evidence */
.submission-evidence{position:relative}.submission-evidence summary{display:inline-flex;align-items:center;padding:.28rem .45rem;border:1px solid #dce4ee;border-radius:.45rem;background:#f7f9fc;color:#426184;font-size:.58rem;font-weight:750;cursor:pointer;white-space:nowrap}.submission-evidence[open] summary{border-color:#87add9;background:#edf5ff}.submission-evidence dl{position:absolute;z-index:8;right:0;width:280px;margin:.35rem 0 0;padding:.7rem;border:1px solid #d9e2ed;border-radius:.65rem;background:#fff;box-shadow:0 10px 28px rgba(24,50,85,.14)}.submission-evidence dl>div{display:grid;grid-template-columns:75px minmax(0,1fr);gap:.45rem;padding:.3rem 0;border-bottom:1px solid #eef1f5}.submission-evidence dl>div:last-child{border:0}.submission-evidence dt{color:#7b8797;font-size:.54rem;font-weight:750}.submission-evidence dd{overflow-wrap:anywhere;margin:0;color:#344258;font-size:.57rem}.submission-audit-note{display:flex;grid-column:1/-1;align-items:flex-start;gap:.4rem;margin:0;padding:.55rem .65rem;border-radius:.5rem;background:#f4f7fa;color:#69768a;font-size:.57rem;line-height:1.45}.submission-audit-note i{color:#2471c8}.submission-withdraw-form{margin:-.65rem 1.3rem 1rem!important}.submission-withdraw-form .danger-button{font-size:.62rem}
@media(max-width:700px){.submission-evidence dl{position:static;width:min(280px,80vw)}.submission-withdraw-form{margin:-.4rem .9rem .9rem!important}}

/* Assignment submission register */
.submission-register-page{max-width:1380px;margin:0 auto}.submission-register-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.submission-register-stats article{display:flex;align-items:center;gap:.7rem;padding:.85rem;border:1px solid #dfe6ef;border-radius:.75rem;background:#fff;box-shadow:0 3px 12px rgba(22,47,82,.035)}.submission-register-stats article>span{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border-radius:.6rem;background:#e9f3ff;color:#1768c9}.submission-register-stats article>div{display:flex;flex-direction:column}.submission-register-stats small{color:#788497;font-size:.55rem;font-weight:800;text-transform:uppercase}.submission-register-stats strong{font-size:1.05rem}.submission-register-stats .is-late>span{background:#fff0cd;color:#996b05}.submission-register-stats .is-missing>span{background:#ffe9e8;color:#ae4b45}.submission-register-card{padding:0!important;overflow:hidden}.submission-register-card>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid #e7ebf1;background:#fbfcfe}.submission-register-card h2,.submission-register-card p{margin:0}.submission-register-card h2{font-size:.9rem}.submission-register-card p{margin-top:.15rem;color:#788396;font-size:.62rem}.submission-register-card table{margin:0}.submission-register-card th{white-space:nowrap}.table-secondary-line{display:block;margin-top:.12rem;color:#8490a1;font-size:.56rem}.submission-attempt-history{position:relative}.submission-attempt-history>summary{display:inline-flex;padding:.3rem .48rem;border:1px solid #dbe4ef;border-radius:.45rem;background:#f6f9fc;color:#3f6288;font-size:.58rem;font-weight:750;cursor:pointer;white-space:nowrap}.submission-attempt-history>div{position:absolute;z-index:9;right:0;width:390px;max-height:430px;margin-top:.35rem;padding:.6rem;overflow:auto;border:1px solid #d8e1ec;border-radius:.72rem;background:#fff;box-shadow:0 12px 32px rgba(24,48,82,.16)}.submission-attempt-history article{padding:.65rem;border-bottom:1px solid #e9edf3}.submission-attempt-history article:last-child{border:0}.submission-attempt-history article header{display:flex;justify-content:space-between;gap:.6rem}.submission-attempt-history article strong{font-size:.63rem}.submission-attempt-history article time{color:#788496;font-size:.55rem}.submission-attempt-history dl{display:grid;grid-template-columns:1fr 1fr;gap:.25rem .7rem;margin:.5rem 0}.submission-attempt-history dl>div{min-width:0}.submission-attempt-history dt{color:#8490a0;font-size:.5rem;text-transform:uppercase}.submission-attempt-history dd{overflow-wrap:anywhere;margin:0;font-size:.55rem}.submission-attempt-history article>a{font-size:.57rem;font-weight:750}.register-grade-form{display:grid!important;min-width:220px;grid-template-columns:70px 1fr auto;gap:.3rem!important;margin:0!important}.register-grade-form input{min-width:0;padding:.42rem;font-size:.58rem}.register-grade-form button{padding:.42rem .55rem;font-size:.57rem}
@media(max-width:900px){.submission-register-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.submission-register-card>header{align-items:stretch;flex-direction:column}}@media(max-width:600px){.submission-register-stats{grid-template-columns:1fr}.submission-attempt-history>div{position:fixed;z-index:80;right:1rem;bottom:1rem;left:1rem;width:auto;max-height:70vh}.register-grade-form{grid-template-columns:1fr}}

/* Marketing homepage */
.marketing-home{--marketing-navy:#071b43;--marketing-blue:#0968e8;--marketing-cyan:#08a6c5;--marketing-mint:#0aa98f;padding-bottom:0!important}.marketing-home>section{margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.marketing-hero{display:grid;min-height:690px;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);align-items:center;gap:4rem;padding:5rem 0!important}.marketing-hero-copy{min-width:0}.marketing-hero-copy h1{max-width:760px;margin:.8rem 0 1.1rem;color:var(--marketing-navy);font-size:clamp(2.8rem,5.7vw,5.2rem);line-height:.98;letter-spacing:-.065em}.marketing-hero-copy h1 em{background:linear-gradient(110deg,#0871ef,#08a0b8);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal}.marketing-hero-copy>p{max-width:680px;margin:0;color:#5e6d83;font-size:1.04rem;line-height:1.75}.marketing-hero-copy .hero-actions{margin-top:1.7rem}.marketing-hero-copy .hero-actions a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.05rem;border-radius:.68rem}.marketing-hero-copy .hero-actions .primary,.marketing-cta .primary{background:linear-gradient(135deg,#0875f5,#0640ad);box-shadow:0 12px 26px rgba(7,87,208,.23);color:#fff}.marketing-hero-copy .hero-actions .secondary,.marketing-cta .secondary{border:1px solid #cad7e7;background:rgba(255,255,255,.78);color:#263950}.marketing-hero-copy .hero-proof{gap:.7rem 1.1rem;margin-top:1.35rem}.marketing-product-preview{overflow:hidden;border:1px solid #cdddf0;border-radius:1.15rem;background:linear-gradient(150deg,#fff 25%,#f1f8ff);box-shadow:0 32px 80px rgba(7,51,120,.17);transform:rotate(1deg)}.product-preview-top{display:flex;align-items:center;gap:.65rem;padding:.8rem 1rem;border-bottom:1px solid #e3ebf4;background:rgba(255,255,255,.85)}.product-preview-top>span{display:flex;gap:.28rem}.product-preview-top>span i{width:7px;height:7px;border-radius:50%;background:#cdd6e1}.product-preview-top small{flex:1;color:#66768c;font-size:.58rem;font-weight:800;text-transform:uppercase}.product-preview-top>b{padding:.23rem .42rem;border-radius:999px;background:#ddf7f0;color:#087363;font-size:.52rem}.product-preview-time{display:flex;align-items:center;gap:.7rem;margin:1rem;padding:.85rem;border:1px solid #d5e3f2;border-radius:.75rem;background:#fff}.product-preview-time>span{display:grid;width:38px;height:38px;place-items:center;border-radius:.6rem;background:#e5f1ff;color:#0b68d4}.product-preview-time>div{display:flex;flex:1;flex-direction:column}.product-preview-time small{font-size:.53rem;font-weight:750;text-transform:uppercase}.product-preview-time strong{color:#173654;font-size:1rem;font-variant-numeric:tabular-nums}.product-preview-time em{padding:.3rem .48rem;border-radius:.45rem;background:#eef4fb;color:#42617e;font-size:.56rem;font-style:normal;font-weight:800}.product-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;padding:0 1rem}.product-preview-grid article{display:flex;flex-direction:column;margin:0!important;padding:.8rem!important;border:1px solid #dce6f1!important;border-radius:.7rem!important;background:#fff!important}.product-preview-grid small{font-size:.54rem;font-weight:750;text-transform:uppercase}.product-preview-grid strong{margin:.15rem 0;color:#183550;font-size:1.15rem}.product-preview-grid span{color:#788599;font-size:.55rem}.product-preview-grid .is-positive{color:#078374}.product-preview-submissions{margin:1rem;padding:.85rem;border:1px solid #dce6f1;border-radius:.75rem;background:#fff}.product-preview-submissions header{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.6rem}.product-preview-submissions header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:.55rem;background:#e3f7f3;color:#088776}.product-preview-submissions header>div{display:flex;flex-direction:column}.product-preview-submissions header strong{font-size:.67rem}.product-preview-submissions header small{font-size:.53rem}.product-preview-submissions header>b{color:#175da9;font-size:.67rem}.product-preview-submissions>div{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-top:.7rem}.product-preview-submissions>div span{display:flex;justify-content:space-between;padding:.42rem;border-radius:.45rem;background:#f4f7fa;color:#69778a;font-size:.54rem}.product-preview-row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.6rem;margin:0 1rem 1rem;padding:.75rem;border-radius:.7rem;background:#082b68;color:#fff}.product-preview-row>span{display:grid;width:34px;height:34px;place-items:center;border-radius:.55rem;background:rgba(255,255,255,.12)}.product-preview-row>div{display:flex;flex-direction:column}.product-preview-row strong{font-size:.64rem}.product-preview-row small{color:#c2d5ec;font-size:.5rem}.product-preview-row>i{color:#55ddc8}.marketing-audience-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.8rem 1.3rem;padding:1.1rem!important;border-top:1px solid #dde6f0!important;border-bottom:1px solid #dde6f0!important;color:#66758a!important}.marketing-audience-strip span{font-size:.56rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.marketing-audience-strip b{color:#364a64;font-size:.67rem}.marketing-audience-strip i{width:3px;height:3px;border-radius:50%;background:#9aa8ba}.marketing-section{padding:6.5rem 0!important}.marketing-section-heading{max-width:760px;margin:0 auto 2.7rem;text-align:center}.marketing-section-heading h2,.marketing-comparison-copy h2,.marketing-cta h2{margin:.5rem 0 .8rem;color:var(--marketing-navy);font-size:clamp(2rem,4vw,3.25rem);line-height:1.08}.marketing-section-heading p,.marketing-comparison-copy p,.marketing-cta p{margin:0;color:#647389;font-size:.85rem;line-height:1.7}.marketing-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.marketing-feature-grid article{position:relative;min-height:255px;margin:0!important;padding:1.25rem!important;overflow:hidden;border:1px solid #dce5f0!important;border-radius:.9rem!important;background:linear-gradient(145deg,#fff,#fbfdff)!important;transition:transform .2s,box-shadow .2s}.marketing-feature-grid article:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(14,49,94,.08)!important}.marketing-feature-grid article>span{display:grid;width:42px;height:42px;place-items:center;border-radius:.7rem;background:linear-gradient(145deg,#e5f0ff,#e1faf5);color:#0866d4;font-size:1rem}.marketing-feature-grid article>small{display:block;margin-top:1.2rem;color:#0a8e80;font-size:.55rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.marketing-feature-grid h3{margin:.35rem 0 .55rem;color:#172e4c;font-size:.94rem}.marketing-feature-grid p{margin:0;color:#68768a;font-size:.69rem;line-height:1.65}.marketing-comparison{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);align-items:center;gap:3.5rem;padding:4.5rem!important;border-radius:1.2rem!important;background:radial-gradient(circle at 95% 10%,rgba(9,166,197,.16),transparent 32%),linear-gradient(135deg,#071c45,#083b85)!important;color:#fff}.marketing-comparison-copy h2{color:#fff}.marketing-comparison-copy p{color:#c6d5e8}.marketing-comparison-copy>a{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.2rem;color:#63ead8;font-size:.7rem;font-weight:800}.comparison-table{overflow:hidden;border:1px solid rgba(255,255,255,.17);border-radius:.85rem;background:rgba(255,255,255,.06);backdrop-filter:blur(10px)}.comparison-row{display:grid;grid-template-columns:1.3fr .85fr .85fr;border-bottom:1px solid rgba(255,255,255,.1)}.comparison-row:last-child{border:0}.comparison-row>*{display:flex;align-items:center;gap:.35rem;min-height:48px;padding:.65rem .75rem;border-right:1px solid rgba(255,255,255,.09);font-size:.61rem}.comparison-row>*:last-child{border:0}.comparison-row strong{font-weight:700}.comparison-row span{color:#c4d1e2}.comparison-row span:last-child{color:#88f0df;font-weight:750}.comparison-head{background:rgba(255,255,255,.08)}.comparison-head>*{min-height:42px;color:#fff!important;font-size:.52rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.marketing-workflow{padding:6.5rem 0!important}.marketing-workflow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.marketing-workflow-grid article{position:relative;margin:0!important;padding:1.5rem!important;border:1px solid #dce4ef!important;border-radius:.95rem!important;background:#fff!important}.marketing-workflow-grid article>b{position:absolute;top:1rem;right:1rem;color:#d8e1ed;font-size:1.4rem}.marketing-workflow-grid article>span{display:grid;width:44px;height:44px;place-items:center;border-radius:.7rem;background:#e8f3ff;color:#0a68d6}.marketing-workflow-grid h3{margin:1.2rem 0 .4rem;font-size:.9rem}.marketing-workflow-grid p{margin:0;color:#6b798d;font-size:.68rem;line-height:1.6}.marketing-cta{display:flex!important;min-height:410px;align-items:center;justify-content:center;flex-direction:column;margin-bottom:5rem!important;padding:3rem!important;border-radius:1.2rem!important;background:radial-gradient(circle at 15% 20%,rgba(30,207,186,.18),transparent 28%),radial-gradient(circle at 90% 80%,rgba(16,123,242,.18),transparent 30%),#f1f7ff!important;text-align:center}.marketing-cta p{max-width:620px}.marketing-cta>div{display:flex;gap:.7rem;margin-top:1.4rem}.marketing-cta a{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:.45rem;padding:.75rem 1rem;border-radius:.65rem;font-size:.72rem;font-weight:800}
@media(max-width:980px){.marketing-hero{grid-template-columns:1fr;gap:2rem;padding:4rem 0!important}.marketing-hero-copy{text-align:center}.marketing-hero-copy>p{margin:auto}.marketing-hero-copy .hero-actions,.marketing-hero-copy .hero-proof{justify-content:center}.marketing-product-preview{width:min(620px,100%);margin:auto;transform:none}.marketing-feature-grid{grid-template-columns:1fr 1fr}.marketing-comparison{grid-template-columns:1fr;padding:2.5rem!important}.marketing-workflow-grid{grid-template-columns:1fr}}
@media(max-width:650px){.marketing-hero{min-height:0;padding:3rem 0!important}.marketing-hero-copy h1{font-size:2.65rem}.marketing-hero-copy .hero-actions{align-items:stretch;flex-direction:column}.marketing-hero-copy .hero-actions a{width:100%}.marketing-product-preview{border-radius:.9rem}.product-preview-grid{grid-template-columns:1fr}.marketing-audience-strip i{display:none}.marketing-audience-strip{gap:.6rem 1rem}.marketing-feature-grid{grid-template-columns:1fr}.marketing-feature-grid article{min-height:0}.marketing-section,.marketing-workflow{padding:4.5rem 0!important}.marketing-comparison{margin-right:-.35rem!important;margin-left:-.35rem!important;padding:1.35rem!important}.comparison-row{grid-template-columns:1.15fr .8fr .8fr}.comparison-row>*{padding:.5rem;font-size:.52rem}.marketing-cta{min-height:360px;margin-bottom:2rem!important;padding:1.5rem!important}.marketing-cta>div{width:100%;flex-direction:column}.marketing-cta a{width:100%}}

/* Institutional marketing refinement */
.marketing-home>.marketing-hero{min-height:640px;margin-top:2rem!important;padding:4rem!important;overflow:hidden;border:1px solid rgba(255,255,255,.08)!important;border-radius:1.4rem!important;background:radial-gradient(circle at 88% 12%,rgba(14,164,199,.19),transparent 29%),linear-gradient(135deg,#061631,#092a5f)!important;box-shadow:0 28px 70px rgba(5,27,66,.18)!important}.marketing-hero-copy h1{color:#fff;font-size:clamp(2.7rem,5vw,4.75rem);line-height:1.02}.marketing-hero-copy h1 em{background:linear-gradient(110deg,#7bc4ff,#59e2d0);-webkit-background-clip:text;background-clip:text}.marketing-hero-copy>p{color:#c4d3e6}.marketing-hero-copy .hero-badge{border-color:rgba(255,255,255,.17);background:rgba(255,255,255,.08);color:#b9ecff}.marketing-hero-copy .hero-actions .primary{background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.18);color:#08285c}.marketing-hero-copy .hero-actions .secondary{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.07);color:#fff}.marketing-hero-copy .hero-proof{color:#c5d5e7}.marketing-hero-copy .hero-proof i{color:#56dac6}.marketing-product-preview{border-color:rgba(255,255,255,.35);box-shadow:0 28px 65px rgba(0,0,0,.25);transform:none}.marketing-section-heading{max-width:700px}.marketing-feature-grid article{border-color:#d9e2ed!important;background:#fff!important;box-shadow:0 5px 18px rgba(17,46,83,.035)!important}.marketing-feature-grid article:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(17,46,83,.09)!important}.marketing-comparison{background:#08275a!important;box-shadow:0 22px 55px rgba(6,35,82,.15)!important}.marketing-cta{border:1px solid #d8e3f0!important;background:#f3f7fc!important}.marketing-cta:before{display:none}
@media(max-width:980px){.marketing-home>.marketing-hero{margin-top:1rem!important;padding:3rem!important}}
@media(max-width:650px){.public-header nav>a:nth-child(-n+2){display:none}.marketing-home>.marketing-hero{margin-right:-.25rem!important;margin-left:-.25rem!important;padding:2.2rem 1.15rem!important;border-radius:1rem!important}.marketing-hero-copy h1{font-size:2.35rem;line-height:1.04}.marketing-hero-copy>p{font-size:.87rem}.marketing-hero-copy .hero-proof{gap:.5rem 1rem}.marketing-product-preview{margin-top:.5rem}.marketing-audience-strip{padding:1.4rem .5rem!important}.marketing-section-heading h2,.marketing-comparison-copy h2,.marketing-cta h2{font-size:2rem}}

/* Marketing feature map and contrast pass */
.marketing-feature-showcase{display:grid!important;grid-template-columns:minmax(300px,.72fr) minmax(560px,1.28fr);align-items:center;gap:4rem;padding:7rem 0!important}.feature-showcase-copy>h2{max-width:570px;margin:.55rem 0 .9rem;color:#071b43;font-size:clamp(2rem,3.8vw,3.2rem);line-height:1.08;letter-spacing:-.035em}.feature-showcase-copy>p{max-width:570px;margin:0;color:#52647b;font-size:.82rem;line-height:1.7}.feature-showcase-list{display:grid;gap:.5rem;margin-top:1.8rem}.feature-showcase-list button{display:grid;width:100%;grid-template-columns:40px 1fr auto;align-items:center;gap:.75rem;padding:.72rem;border:1px solid transparent;border-radius:.8rem;background:transparent;color:#203955;text-align:left;transition:background .18s,border-color .18s,box-shadow .18s;cursor:pointer}.feature-showcase-list button>span:first-child{display:grid;width:40px;height:40px;place-items:center;border-radius:.65rem;background:#edf3fa;color:#3f648d}.feature-showcase-list button>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.feature-showcase-list button strong{font-size:.72rem}.feature-showcase-list button small{margin-top:.12rem;color:#5f7086;font-size:.61rem;line-height:1.45}.feature-showcase-list button>i{color:#8291a4;font-size:.7rem}.feature-showcase-list button:hover{border-color:#cfdceb;background:#f8fbff}.feature-showcase-list button:focus-visible{outline:3px solid rgba(9,104,232,.24);outline-offset:2px}.feature-showcase-list button.is-active{border-color:#b8d2ef;background:#eef6ff;box-shadow:0 8px 22px rgba(19,74,137,.08)}.feature-showcase-list button.is-active>span:first-child{background:#0968e8;color:#fff}.feature-showcase-list button.is-active>i{color:#0968e8}.feature-showcase-stage{overflow:hidden;border:1px solid #cbd9e9;border-radius:1.05rem;background:#fff;box-shadow:0 28px 65px rgba(12,48,94,.14)}.feature-showcase-stage>header{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;border-bottom:1px solid #dce5ef;background:#f8fafc}.feature-showcase-stage>header>span{display:flex;gap:.28rem}.feature-showcase-stage>header>span i{width:7px;height:7px;border-radius:50%;background:#aebaca}.feature-showcase-stage>header>div{display:flex;flex:1;flex-direction:column}.feature-showcase-stage>header strong{color:#1c3553;font-size:.62rem}.feature-showcase-stage>header small{color:#65758a;font-size:.52rem}.feature-showcase-stage>header>b{display:flex;align-items:center;gap:.3rem;padding:.25rem .45rem;border-radius:999px;background:#dcf6ef;color:#087363;font-size:.51rem}.feature-showcase-stage>header>b i{font-size:.35rem}.feature-visual{min-height:390px;padding:1.5rem;background:linear-gradient(150deg,#fff 20%,#f2f7fc);animation:feature-in .22s ease-out}.feature-visual[hidden]{display:none}.visual-title{display:flex;align-items:center;justify-content:space-between;gap:1rem}.visual-title span{color:#087c70;font-size:.54rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.visual-title h3{margin:.28rem 0 0;color:#142f50;font-size:1.15rem}.visual-title>i{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border-radius:.75rem;background:#e5f0ff;color:#0968d8;font-size:1.1rem}.week-track{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:2rem}.week-track>span{position:relative;display:flex;min-height:90px;justify-content:center;flex-direction:column;padding:.75rem;border:1px solid #dbe4ee;border-radius:.7rem;background:#fff}.week-track small{color:#66778c;font-size:.52rem;font-weight:800;text-transform:uppercase}.week-track b{margin-top:.25rem;color:#203b59;font-size:.63rem}.week-track em{position:absolute;top:-.45rem;right:.45rem;padding:.22rem .4rem;border-radius:999px;background:#0968e8;color:#fff;font-size:.46rem;font-style:normal;font-weight:800;text-transform:uppercase}.week-track .is-current{border-color:#5797e4;background:#edf6ff;box-shadow:0 8px 20px rgba(9,104,232,.1)}.planning-details{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:.7rem}.planning-details article{display:flex;align-items:center;gap:.65rem;margin:0!important;padding:.8rem!important;border:1px solid #dbe4ee!important;border-radius:.7rem!important;background:#fff!important}.planning-details article>i{display:grid;width:36px;height:36px;place-items:center;border-radius:.55rem;background:#e7f7f3;color:#087e70}.planning-details span{display:flex;min-width:0;flex-direction:column}.planning-details small{color:#68798e;font-size:.5rem}.planning-details strong{margin-top:.08rem;color:#203b59;font-size:.61rem}.attendance-visual{display:grid;grid-template-columns:190px 1fr;align-items:center;gap:2rem;margin-top:1.7rem;padding:1rem;border:1px solid #d9e4ef;border-radius:.8rem;background:#fff}.attendance-ring{display:grid;width:150px;height:150px;place-items:center;margin:auto;border-radius:50%;background:conic-gradient(#0b9d88 0 92%,#e6edf4 92%)}.attendance-ring:before{content:"";grid-area:1/1;width:112px;height:112px;border-radius:50%;background:#fff}.attendance-ring>span{z-index:1;display:flex;grid-area:1/1;align-items:center;flex-direction:column}.attendance-ring strong{color:#163451;font-size:1.55rem}.attendance-ring small{color:#68798c;font-size:.55rem;text-transform:uppercase}.attendance-bars{display:grid;gap:.85rem}.attendance-bars>div>span{display:flex;justify-content:space-between;margin-bottom:.3rem;color:#344d69;font-size:.6rem}.attendance-bars>div>i{display:block;height:8px;overflow:hidden;border-radius:999px;background:#e8edf3}.attendance-bars em{display:block;height:100%;border-radius:inherit;background:#0b9d88}.attendance-bars>div:nth-child(2) em{background:#e2a62d}.attendance-bars>div:nth-child(3) em{background:#d45e58}.visual-note{display:flex;align-items:center;gap:.7rem;margin-top:.7rem;padding:.75rem;border-radius:.7rem;background:#082c67;color:#fff}.visual-note>i{display:grid;width:36px;height:36px;place-items:center;border-radius:.55rem;background:rgba(255,255,255,.14);color:#73e5d3}.visual-note span{display:flex;flex-direction:column}.visual-note strong{font-size:.62rem}.visual-note small{margin-top:.12rem;color:#c9d7e8;font-size:.53rem}.deadline-status{display:flex;align-items:center;justify-content:space-between;margin-top:1.7rem;padding:1rem;border:1px solid #bcd4ed;border-radius:.75rem;background:#eef6ff}.deadline-status span{display:flex;flex-direction:column}.deadline-status small{color:#52708f;font-size:.52rem;font-weight:800;text-transform:uppercase}.deadline-status strong{margin-top:.16rem;color:#12375f;font-size:1.15rem}.deadline-status>b{padding:.35rem .6rem;border-radius:999px;background:#d9f5ec;color:#087261;font-size:.55rem}.deadline-track{display:grid;grid-template-columns:18px 1fr 18px 1fr 18px 1fr;align-items:center;margin-top:1.35rem}.deadline-track>i{width:14px;height:14px;border:3px solid #fff;border-radius:50%;background:#b6c3d1;box-shadow:0 0 0 2px #b6c3d1}.deadline-track>i:after{content:"";position:absolute;width:60px}.deadline-track>i.is-done{background:#0aa98f;box-shadow:0 0 0 2px #0aa98f}.deadline-track>i.is-current{background:#0968e8;box-shadow:0 0 0 2px #0968e8}.deadline-track>span{display:flex;min-width:0;flex-direction:column}.deadline-track small{color:#718196;font-size:.47rem;text-transform:uppercase}.deadline-track b{margin-top:.1rem;color:#25415f;font-size:.56rem}.policy-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.6rem}.policy-chips span{padding:.48rem .6rem;border:1px solid #d2e0ec;border-radius:.55rem;background:#fff;color:#2e4b69;font-size:.55rem;font-weight:750}.policy-chips i{margin-right:.25rem;color:#078777}.evidence-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:.55rem;margin-top:2rem}.evidence-flow>article{display:flex;min-height:122px;align-items:flex-start;flex-direction:column;gap:.6rem;margin:0!important;padding:.8rem!important;border:1px solid #d8e2ed!important;border-radius:.7rem!important;background:#fff!important}.evidence-flow>article>i{display:grid;width:34px;height:34px;place-items:center;border-radius:.55rem;background:#eaf1f8;color:#466988}.evidence-flow>article.is-complete>i{background:#def5ef;color:#07816f}.evidence-flow article span{display:flex;flex-direction:column}.evidence-flow small{color:#687a8f;font-size:.47rem;text-transform:uppercase}.evidence-flow strong{margin-top:.1rem;color:#203b59;font-size:.59rem}.evidence-flow em{margin-top:.2rem;color:#687a8f;font-size:.48rem;font-style:normal}.evidence-flow>i{color:#8b9caf}.submission-mix{margin-top:1.25rem;padding:1rem;border:1px solid #dbe4ee;border-radius:.7rem;background:#fff}.submission-mix>span{display:flex;height:10px;overflow:hidden;border-radius:999px}.submission-mix>span b:first-child{background:#0aa98f}.submission-mix>span b:nth-child(2){background:#e1a52d}.submission-mix>span b:last-child{background:#d55d58}.submission-mix>div{display:flex;gap:1.1rem;margin-top:.65rem}.submission-mix small{display:flex;align-items:center;gap:.3rem;color:#405772;font-size:.52rem}.submission-mix small i{width:7px;height:7px;border-radius:50%;background:#0aa98f}.submission-mix small:nth-child(2) i{background:#e1a52d}.submission-mix small:nth-child(3) i{background:#d55d58}

.marketing-home>.marketing-comparison{background:#08275a!important;color:#fff!important}.marketing-home>.marketing-comparison .eyebrow{color:#69ead8!important}.marketing-home>.marketing-comparison h2{color:#fff!important}.marketing-home>.marketing-comparison p{color:#d5dfec!important}.marketing-home>.marketing-comparison .comparison-table{border-color:#3c5b87;background:#0c326f}.marketing-home>.marketing-comparison .comparison-row{border-color:#355682}.marketing-home>.marketing-comparison .comparison-row>*{border-color:#355682;color:#e6edf6}.marketing-home>.marketing-comparison .comparison-row>span:nth-child(2){color:#d0dae7}.marketing-home>.marketing-comparison .comparison-row>span:last-child{color:#7cebd9}.marketing-home>.marketing-comparison .comparison-head{background:#123b7b}.marketing-cta p{color:#53657b}.marketing-feature-grid p,.marketing-workflow-grid p{color:#596b82}

@keyframes feature-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.marketing-feature-showcase{grid-template-columns:1fr;gap:2.5rem}.feature-showcase-copy{text-align:center}.feature-showcase-copy>h2,.feature-showcase-copy>p{margin-right:auto;margin-left:auto}.feature-showcase-list{grid-template-columns:1fr 1fr;text-align:left}.feature-showcase-stage{width:min(760px,100%);margin:auto}}
@media(max-width:650px){.marketing-feature-showcase{padding:4.5rem 0!important}.feature-showcase-list{grid-template-columns:1fr}.feature-showcase-list button{padding:.6rem}.feature-showcase-stage{border-radius:.85rem}.feature-visual{min-height:420px;padding:1rem}.visual-title h3{font-size:.92rem}.week-track{grid-template-columns:1fr 1fr;margin-top:1.4rem}.planning-details{grid-template-columns:1fr}.attendance-visual{grid-template-columns:1fr;gap:1rem}.attendance-ring{width:120px;height:120px}.attendance-ring:before{width:88px;height:88px}.attendance-ring strong{font-size:1.2rem}.deadline-track{grid-template-columns:15px 1fr;gap:.7rem}.deadline-track>span{padding:.35rem 0}.evidence-flow{grid-template-columns:1fr}.evidence-flow>article{min-height:0;flex-direction:row;align-items:center}.evidence-flow>i{transform:rotate(90deg);justify-self:center}.submission-mix>div{flex-wrap:wrap;gap:.5rem 1rem}}

/* Public content focus and CLO mapping */
.content-focus-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem;border:1px solid #dbe4ef;border-radius:.85rem;background:#fff;box-shadow:0 4px 16px rgba(23,52,88,.04)}.content-focus-bar form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:.65rem}.content-focus-bar label{display:flex;min-width:190px;flex-direction:column;gap:.28rem}.content-focus-bar label>span{color:#52657c;font-size:.56rem;font-weight:800;text-transform:uppercase}.content-focus-bar select{min-height:40px}.content-focus-bar form>a{align-self:center;color:#526d8b;font-size:.62rem;font-weight:750}.public-content-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.48rem .65rem;border-radius:999px;background:#e4f7f1;color:#087565;font-size:.57rem;font-weight:800;white-space:nowrap}.content-heading-meta{display:flex;align-items:center;gap:.45rem;margin-bottom:.25rem;color:#718095;font-size:.55rem;font-weight:800;text-transform:uppercase}.clo-chip{display:inline-flex!important;align-items:center;gap:.25rem;padding:.22rem .42rem!important;border:1px solid #bcd8ef;border-radius:999px;background:#edf7ff;color:#1264a5!important;font-size:.52rem!important;font-weight:850;line-height:1.2;text-transform:uppercase}.lecture-meta .clo-chip{border-color:#bfe2da;background:#eaf8f4;color:#087b6b!important}.assignment-title .clo-chip{border-color:#bfdad2;background:#e8f7f2;color:#087565!important}.content-editor select[name="LearningOutcomeId"],.create-grid select[name="LearningOutcomeId"]{width:100%}
@media(max-width:760px){.content-focus-bar{align-items:stretch;flex-direction:column}.content-focus-bar form{display:grid;grid-template-columns:1fr}.content-focus-bar label{min-width:0}.public-content-badge{align-self:flex-start;white-space:normal}}

/* Examifo assessment hub */
.assessment-hub{max-width:1380px!important}.assessment-page-heading{margin-bottom:1.25rem}.assessment-page-heading h1{margin:.25rem 0 .35rem}.assessment-page-heading p{max-width:680px;margin:0;color:#66758a}.examifo-overview{display:flex!important;align-items:center;justify-content:space-between;gap:2rem;margin:0!important;padding:1.35rem 1.5rem!important;border:0!important;background:linear-gradient(120deg,#071d45 0%,#0a3872 58%,#086d78 125%)!important;box-shadow:0 16px 36px rgba(6,31,72,.15)!important;color:#fff}.examifo-brand-block{display:flex;min-width:0;align-items:center;gap:1rem}.examifo-logo{display:grid;width:54px;height:54px;flex:0 0 54px;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:.85rem;background:rgba(255,255,255,.1);color:#70ead7;font-size:1.35rem}.integration-kicker{display:flex;align-items:center;gap:.45rem;color:#82e7db;font-size:.6rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.examifo-brand-block h2{margin:.32rem 0 .2rem;color:#fff;font-size:1.18rem}.examifo-brand-block p{max-width:650px;margin:0;color:#c8d6e8;font-size:.72rem;line-height:1.55}.connection-actions{display:flex;align-items:center;gap:.65rem;white-space:nowrap}.connection-actions form{margin:0}.connection-state{display:inline-flex;align-items:center;gap:.38rem;padding:.4rem .65rem;border-radius:999px;font-size:.61rem;font-weight:850}.connection-state.is-online{background:rgba(69,221,186,.16);color:#7ff0d9}.connection-state.is-offline{background:rgba(255,255,255,.1);color:#d6dfeb}.connection-state i{font-size:.48rem}.connection-detail{display:inline-flex;align-items:center;gap:.35rem;color:#d1ddeb;font-size:.6rem;font-weight:700}.connection-menu{position:relative}.connection-menu>summary{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:.55rem;color:#fff;cursor:pointer;list-style:none}.connection-menu>summary::-webkit-details-marker{display:none}.connection-menu>div{position:absolute;z-index:15;top:calc(100% + .45rem);right:0;width:250px;padding:.8rem;border:1px solid #dce4ee;border-radius:.7rem;background:#fff;box-shadow:0 15px 35px rgba(7,29,69,.2);white-space:normal}.connection-menu small{display:block;margin-bottom:.55rem;color:#68778c}.connection-menu form,.connection-menu button{width:100%}.integration-flow{display:grid!important;grid-template-columns:repeat(4,1fr);gap:0;margin:.9rem 0!important;padding:.45rem!important;border-radius:.85rem!important;box-shadow:none!important}.integration-flow article{position:relative;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.6rem;margin:0!important;padding:.65rem .75rem!important;border:0!important;border-right:1px solid #e7ebf1!important;border-radius:0!important;box-shadow:none!important}.integration-flow article:last-child{border-right:0!important}.integration-flow article>span{display:grid;width:32px;height:32px;place-items:center;border-radius:.55rem;background:#eff2f6;color:#738096;font-size:.64rem;font-weight:850}.integration-flow article>div{display:flex;min-width:0;flex-direction:column}.integration-flow small{color:#8590a0;font-size:.49rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.integration-flow strong{margin-top:.08rem;color:#425269;font-size:.64rem}.integration-flow article>i{color:#a5afbc;font-size:.7rem}.integration-flow article.is-complete>span{background:#e1f7f1;color:#07826f}.integration-flow article.is-complete>i{color:#0b9a84}.integration-flow article.is-current{border-radius:.6rem!important;background:#edf5ff}.integration-flow article.is-current>span{background:#0b68dc;color:#fff}.integration-flow article.is-current strong,.integration-flow article.is-current>i{color:#0b5dbf}.assessment-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.assessment-metrics article{display:flex;align-items:center;gap:.75rem;margin:0!important;padding:.85rem 1rem!important;border-radius:.75rem!important;box-shadow:none!important}.metric-icon{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:.65rem;font-size:.9rem}.metric-icon.is-blue{background:#e7f1ff;color:#0966d7}.metric-icon.is-teal{background:#e2f7f2;color:#07816f}.metric-icon.is-purple{background:#f1eafe;color:#7048bd}.assessment-metrics article>div{display:grid;grid-template-columns:1fr auto;min-width:0;flex:1;align-items:center}.assessment-metrics small{color:#778397;font-size:.58rem;font-weight:750}.assessment-metrics strong{grid-row:1/3;grid-column:2;font-size:1.35rem;color:#193552}.assessment-metrics em{color:#7d8999;font-size:.55rem;font-style:normal}.assessment-layout{display:grid;align-items:start;gap:1rem}.assessment-layout.has-sidebar{grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr)}.assessment-layout.learner-layout{grid-template-columns:1fr}.assessment-list-panel{margin:0!important;padding:0!important;overflow:hidden}.section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.25rem;border-bottom:1px solid #e8edf3}.section-kicker{color:#078271;font-size:.55rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.section-heading-row h2,.link-assessment-card h2,.integration-help-card h2{margin:.2rem 0;color:#1b3551;font-size:1rem}.section-heading-row p{margin:0;color:#718095;font-size:.65rem}.primary-action{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:.4rem;padding:.62rem .85rem;border-radius:.52rem;background:#0968dc;color:#fff;font-size:.7rem;font-weight:800;text-decoration:none;white-space:nowrap}.primary-action:hover{background:#0759bd;color:#fff}.assessment-empty{display:flex;min-height:320px;align-items:center;justify-content:center;flex-direction:column;padding:2rem;text-align:center}.assessment-empty>span{display:grid;width:62px;height:62px;place-items:center;border-radius:1rem;background:#eef4fb;color:#55718f;font-size:1.4rem}.assessment-empty h3{margin:1rem 0 .35rem;color:#2a405b;font-size:.95rem}.assessment-empty p{max-width:430px;margin:0 0 1rem;color:#748196;font-size:.7rem;line-height:1.6}.assessment-stack{display:grid;gap:.75rem;padding:1rem;background:#f7f9fc}.assessment-row-card{margin:0!important;padding:0!important;overflow:hidden;border-radius:.75rem!important;box-shadow:0 2px 8px rgba(25,52,83,.035)!important}.assessment-card-main{display:flex;align-items:flex-start;gap:.8rem;padding:1rem}.assessment-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:.65rem;background:#e8f2ff;color:#0a64d0;font-size:1rem}.assessment-card-copy{min-width:0;flex:1}.assessment-title-line{display:flex;align-items:center;gap:.5rem}.assessment-title-line h3{margin:0;color:#203951;font-size:.85rem}.assessment-status{display:inline-flex;padding:.2rem .43rem;border-radius:999px;background:#eef1f5;color:#687386;font-size:.49rem;font-weight:850;text-transform:capitalize}.status-published{background:#e2f7f0;color:#087765}.status-draft{background:#fff3d8;color:#84600a}.assessment-card-copy>p{margin:.27rem 0 .5rem;color:#708095;font-size:.61rem}.assessment-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;color:#687990;font-size:.55rem;font-weight:650}.assessment-meta span{display:flex;align-items:center;gap:.28rem}.assessment-meta i{color:#0a7e70}.assessment-launch{align-self:center;margin:0}.assessment-sync-error{display:flex;align-items:flex-start;gap:.5rem;margin:0 .9rem .8rem;padding:.65rem .7rem;border-radius:.55rem;background:#fff2f0;color:#9f4239;font-size:.6rem}.assessment-sync-error span{display:flex;flex-direction:column}.assessment-sync-error strong{margin-bottom:.08rem}.result-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;padding:.8rem 1rem;border-top:1px solid #edf0f4;background:#fbfcfe}.result-strip>div{display:grid;grid-template-columns:1fr auto;align-items:center;padding:.55rem .65rem;border:1px solid #e1e7ef;border-radius:.5rem;background:#fff}.result-strip span{font-size:.56rem;font-weight:750;color:#617188}.result-strip strong{color:#0a61ca;font-size:.8rem}.result-strip small{grid-column:1/-1;margin-top:.12rem;font-size:.5rem}.result-empty-line{padding:.65rem 1rem;border-top:1px solid #edf0f4;background:#fbfcfe;color:#7a8798;font-size:.6rem}.assessment-admin-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem 1rem;border-top:1px solid #edf0f4;background:#fbfcfe}.assessment-admin-footer details{position:relative}.assessment-admin-footer summary{display:inline-flex;align-items:center;gap:.35rem;color:#52657d;font-size:.6rem;font-weight:750;cursor:pointer}.assessment-admin-footer details[open] .assessment-grade-rule{position:absolute;z-index:10;top:calc(100% + .5rem);left:0;width:520px;padding:.85rem!important;border:1px solid #d8e1ec;border-radius:.65rem;background:#fff;box-shadow:0 14px 32px rgba(21,48,83,.16)}.assessment-admin-footer .inline-actions form{margin:0}.assessment-admin-footer .secondary-action{min-height:34px;padding:.48rem .62rem;font-size:.6rem}.assessment-side-panel{display:grid;gap:1rem}.link-assessment-card,.integration-help-card{margin:0!important;padding:1.15rem!important}.link-assessment-card{scroll-margin-top:1rem}.link-assessment-card>header{display:flex;align-items:center;gap:.65rem;padding-bottom:.9rem;border-bottom:1px solid #ebeff4}.link-assessment-card>header>span{display:grid;width:38px;height:38px;place-items:center;border-radius:.6rem;background:#e7f1ff;color:#0966d8}.link-assessment-card header small{color:#78869a;font-size:.51rem;font-weight:800;text-transform:uppercase}.link-assessment-card h2{margin:.1rem 0 0}.assessment-link-form{display:grid!important;grid-template-columns:1fr!important;gap:.72rem!important;margin:1rem 0 0!important}.assessment-link-form label{width:100%}.assessment-link-form label>span{font-size:.64rem}.assessment-link-form input,.assessment-link-form select{width:100%}.assessment-link-form label>small{margin-top:.05rem;font-size:.53rem}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.assessment-link-form .form-check-row{display:flex!important;align-items:flex-start!important;flex-direction:row!important;gap:.5rem;padding:.65rem;border:1px solid #dfe6ee;border-radius:.55rem;background:#f8fafc}.form-check-row>span{display:flex;flex-direction:column}.form-check-row strong{color:#43566d;font-size:.62rem}.form-check-row small{font-size:.52rem}.assessment-link-form>button{width:100%}.form-security-note{display:flex;align-items:flex-start;gap:.4rem;margin:0;color:#788598;font-size:.52rem;line-height:1.5}.form-security-note i{margin-top:.08rem;color:#087c70}.integration-help-card ol{display:grid;gap:.8rem;margin:1rem 0 0;padding:0;list-style:none}.integration-help-card li{display:flex;align-items:flex-start;gap:.65rem}.integration-help-card li>span{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:.55rem;background:#edf3fa;color:#496b8e}.integration-help-card li>div{display:flex;flex-direction:column}.integration-help-card strong{color:#344c67;font-size:.64rem}.integration-help-card p{margin:.12rem 0 0;color:#778599;font-size:.56rem;line-height:1.5}
@media(max-width:1120px){.assessment-layout.has-sidebar{grid-template-columns:1fr}.assessment-side-panel{grid-template-columns:1fr 1fr}.integration-flow{grid-template-columns:1fr 1fr}.integration-flow article:nth-child(2){border-right:0!important}.integration-flow article:nth-child(-n+2){border-bottom:1px solid #e7ebf1!important}}
@media(max-width:760px){.examifo-overview{align-items:flex-start!important;flex-direction:column}.connection-actions{width:100%;align-items:stretch;flex-wrap:wrap}.connection-detail{flex:1}.connection-menu{margin-left:auto}.integration-flow{grid-template-columns:1fr!important}.integration-flow article{border-right:0!important;border-bottom:1px solid #e7ebf1!important}.integration-flow article:last-child{border-bottom:0!important}.assessment-metrics{grid-template-columns:1fr}.assessment-layout.has-sidebar,.assessment-side-panel{grid-template-columns:1fr}.section-heading-row{align-items:stretch;flex-direction:column}.assessment-card-main{flex-wrap:wrap}.assessment-card-copy{min-width:calc(100% - 55px)}.assessment-launch{width:100%;margin-left:50px}.assessment-launch button{width:100%}.result-strip{grid-template-columns:1fr}.assessment-admin-footer{align-items:stretch;flex-direction:column}.assessment-admin-footer details[open] .assessment-grade-rule{position:fixed;z-index:60;inset:auto .75rem 1rem;width:auto}.assessment-admin-footer .inline-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%}.assessment-admin-footer .inline-actions button{width:100%}}
@media(max-width:460px){.examifo-brand-block{align-items:flex-start}.examifo-logo{width:44px;height:44px;flex-basis:44px}.connection-actions>form,.connection-actions>form button{width:100%}.assessment-admin-footer .inline-actions{grid-template-columns:1fr}.form-pair{grid-template-columns:1fr}.assessment-launch{margin-left:0}}
.public-course-content-callout{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:1rem;margin:1rem 0;padding:1.1rem 1.2rem;border:1px solid #c8ddef;border-radius:.9rem;background:linear-gradient(135deg,#f4f9ff,#edf9f6)}.public-course-content-callout>span{display:grid;width:52px;height:52px;place-items:center;border-radius:.75rem;background:#0968e8;color:#fff;font-size:1.1rem}.public-course-content-callout small{color:#087b6c;font-size:.54rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.public-course-content-callout h2{margin:.2rem 0;color:#173653;font-size:.9rem}.public-course-content-callout p{margin:0;color:#586b81;font-size:.63rem}.public-course-content-callout>a{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem .85rem;border-radius:.6rem;background:#082e69;color:#fff;font-size:.62rem;font-weight:800;white-space:nowrap}@media(max-width:700px){.public-course-content-callout{grid-template-columns:44px 1fr}.public-course-content-callout>span{width:44px;height:44px}.public-course-content-callout>a{grid-column:1/-1;justify-content:center}}
.resource-actions{display:flex;align-items:flex-start;gap:.35rem}.resource-actions details{position:relative}.resource-actions summary{display:grid;width:32px;height:32px;place-items:center;border:1px solid #d8e1ec;border-radius:.45rem;background:#f7f9fc;color:#416383;cursor:pointer;list-style:none}.resource-actions details form{position:absolute;z-index:10;right:0;width:290px;margin-top:.35rem;padding:.8rem;border:1px solid #d7e1ec;border-radius:.65rem;background:#fff;box-shadow:0 12px 30px rgba(21,48,83,.16)}.resource-actions details form label{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.5rem;font-size:.58rem}.resource-actions details form button{width:100%}@media(max-width:600px){.resource-actions details form{position:fixed;right:1rem;bottom:1rem;left:1rem;width:auto}}

/* Examifo learner feedback */
.learner-result-state{display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border-top:1px solid #edf0f4;background:#fbfcfe}.learner-result-state>div{display:flex;min-width:0;flex:1;flex-direction:column}.learner-result-state strong{color:#334b65;font-size:.68rem}.learner-result-state small{margin-top:.12rem;color:#748196;font-size:.56rem}.result-state-icon{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:.55rem;background:#edf2f8;color:#55718f}.state-pending .result-state-icon{background:#fff4d9;color:#916707}.state-released .result-state-icon{background:#e5f7f2;color:#087a69}.feedback-button{display:inline-flex;align-items:center;gap:.35rem}.feedback-updated{padding:.15rem .32rem;border-radius:999px;background:#0a68dc;color:#fff;font-size:.46rem}.attempt-feedback-panel{padding:1rem;border-top:1px solid #dfe8f2;background:#f7fbff}.feedback-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.feedback-panel-heading h4{margin:0;color:#1e3b58;font-size:.76rem}.feedback-panel-heading strong{color:#0869d7;font-size:.66rem}.question-feedback-list{display:grid;gap:.55rem}.question-feedback-item{margin:0!important;padding:.7rem!important;border:1px solid #dfe7f0!important;border-radius:.58rem!important;background:#fff!important;box-shadow:none!important}.question-feedback-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.question-feedback-heading strong{color:#35506d;font-size:.62rem}.question-feedback-heading span{color:#087a69;font-size:.58rem;font-weight:850}.question-feedback-question{margin:.4rem 0 0;color:#4f6075;font-size:.61rem;line-height:1.55;white-space:pre-wrap}.question-feedback-comment{margin:.48rem 0 0;padding:.5rem .6rem;border-left:3px solid #0a74d8;background:#edf6ff;color:#31516e;font-size:.6rem;line-height:1.55;white-space:pre-wrap}.feedback-message,.feedback-loading{margin:0;color:#64758a;font-size:.62rem}.feedback-message.is-error{color:#a13f37}
@media(max-width:600px){.learner-result-state{align-items:flex-start;flex-wrap:wrap}.feedback-button{width:100%;justify-content:center;margin-left:41px}.feedback-panel-heading{align-items:flex-start;flex-direction:column;gap:.25rem}}
.bulk-grade-import{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}
@media(max-width:700px){.bulk-grade-import{align-items:stretch;flex-direction:column}.bulk-grade-import>.secondary-action{justify-content:center}}
.assessment-rule-menus{display:flex;align-items:center;gap:.9rem}.assessment-eligibility-rule{display:grid!important;grid-template-columns:minmax(280px,1fr) auto;align-items:end!important;gap:.65rem!important;margin:0!important}.assessment-eligibility-rule label,.assessment-eligibility-rule select{width:100%}.assessment-eligibility-rule small{font-size:.55rem}.assessment-admin-footer details[open] .assessment-eligibility-rule{position:absolute;z-index:10;top:calc(100% + .5rem);left:0;width:520px;padding:.85rem!important;border:1px solid #d8e1ec;border-radius:.65rem;background:#fff;box-shadow:0 14px 32px rgba(21,48,83,.16)}
@media(max-width:760px){.assessment-rule-menus{align-items:flex-start;flex-direction:column}.assessment-admin-footer details[open] .assessment-eligibility-rule{position:fixed;z-index:60;inset:auto .75rem 1rem;width:auto;grid-template-columns:1fr}.assessment-eligibility-rule button{width:100%}}
.sync-progress-toast{position:fixed;z-index:80;right:1.25rem;bottom:1.25rem;display:flex;width:min(390px,calc(100vw - 2rem));align-items:flex-start;gap:.75rem;padding:.9rem 1rem;border:1px solid #cddded;border-radius:.8rem;background:#fff;box-shadow:0 18px 44px rgba(11,39,74,.2)}.sync-progress-toast[hidden]{display:none}.sync-progress-icon{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:.65rem;background:#e7f1ff;color:#0968dc}.sync-progress-copy{min-width:0;flex:1}.sync-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:#243f5d;font-size:.68rem}.sync-progress-heading time{color:#75849a;font-size:.57rem;font-weight:750}.sync-progress-copy p{margin:.2rem 0 .55rem;color:#68798f;font-size:.59rem}.sync-progress-track{height:4px;overflow:hidden;border-radius:999px;background:#e7edf4}.sync-progress-track span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0968dc,#0b9b84);animation:sync-progress-slide 1.15s ease-in-out infinite}.sync-spin{display:inline-block;animation:sync-progress-spin .8s linear infinite}@keyframes sync-progress-slide{0%{transform:translateX(-110%)}100%{transform:translateX(345%)}}@keyframes sync-progress-spin{to{transform:rotate(360deg)}}@media(max-width:600px){.sync-progress-toast{right:1rem;bottom:1rem;left:1rem;width:auto}}
.assessment-admin-footer form[data-sync-kind="learners"]{display:grid;gap:.3rem}.sync-registration-choice{display:flex!important;align-items:center!important;flex-direction:row!important;gap:.32rem;color:#617188;font-size:.52rem;font-weight:700;white-space:nowrap}.sync-registration-choice input{width:auto!important;margin:0}
.assessment-matrix-heading{align-items:end}.section-result-filter{display:flex!important;min-width:230px;flex-direction:column!important;gap:.3rem!important}.section-result-filter label{color:#69778b;font-size:.62rem;font-weight:800;text-transform:uppercase}.section-result-filter select{min-height:40px}.assessment-matrix-summary{display:flex;gap:.6rem;margin-bottom:1rem;overflow-x:auto}.assessment-matrix-summary>span{display:flex;min-width:125px;padding:.7rem .8rem;flex-direction:column;border:1px solid #e2e8f0;border-radius:.65rem;background:#f9fbfd}.assessment-matrix-summary small{color:#78869a;font-size:.58rem;font-weight:800;text-transform:uppercase}.assessment-matrix-summary strong{color:#263853;font-size:.78rem}.assessment-matrix-scroll{position:relative;max-height:68vh;border:1px solid #e2e8f0;border-radius:.7rem}.assessment-matrix-table{border-collapse:separate;border-spacing:0;min-width:max-content}.assessment-matrix-table th,.assessment-matrix-table td{min-width:125px;border-right:1px solid #edf0f4;border-bottom:1px solid #edf0f4;text-align:center;vertical-align:middle}.assessment-matrix-table thead th{position:sticky;z-index:3;top:0;background:#f4f7fa!important}.assessment-matrix-table thead span,.assessment-matrix-table thead small,.assessment-matrix-table td small,.assessment-matrix-table tfoot small{display:block}.assessment-matrix-table thead span{max-width:165px;white-space:normal}.assessment-matrix-table small{margin-top:.18rem;color:#7b8798;font-size:.58rem;font-weight:600}.assessment-matrix-table .matrix-sticky{position:sticky;z-index:2;background:#fff!important;text-align:left}.assessment-matrix-table thead .matrix-sticky{z-index:5;background:#f4f7fa!important}.assessment-matrix-table tfoot .matrix-sticky{z-index:4;background:#f7fafc!important}.assessment-matrix-table .matrix-reg{left:0;min-width:145px}.assessment-matrix-table .matrix-name{left:145px;min-width:190px}.assessment-matrix-table tbody tr:hover .matrix-sticky{background:#f8fbfd!important}.assessment-matrix-table .matrix-score strong,.assessment-matrix-table .matrix-total strong{color:#203550}.assessment-matrix-table .matrix-total{background:#f5faf8!important}.assessment-matrix-table tfoot th{position:sticky;z-index:3;bottom:0;background:#f7fafc!important}.matrix-status{display:inline-flex;padding:.25rem .45rem;border-radius:999px;background:#fff3d8;color:#8a6415;font-size:.58rem;font-weight:750;text-transform:capitalize}
@media(max-width:700px){.assessment-matrix-heading{align-items:stretch}.section-result-filter{min-width:0}.assessment-matrix-card{padding:.75rem!important}.assessment-matrix-summary{margin-right:-.25rem}.assessment-matrix-table .matrix-reg{min-width:120px}.assessment-matrix-table .matrix-name{left:120px;min-width:155px}}

/* Assessment centre usability refresh */
.assessment-hub{--assessment-ink:#18324b;--assessment-muted:#607086;--assessment-blue:#1263d6;--assessment-teal:#087b6b;max-width:1280px!important}
.assessment-hub :focus-visible{outline:3px solid rgba(18,99,214,.28);outline-offset:2px}
.assessment-page-heading{align-items:center;margin-bottom:1.4rem}
.assessment-page-heading h1{margin:.3rem 0 .45rem;font-size:2.25rem}
.assessment-page-heading p{max-width:720px;color:var(--assessment-muted);font-size:.95rem;line-height:1.65}
.assessment-page-heading>.secondary-action{min-height:44px;padding:.72rem 1rem;font-size:.82rem}
.assessment-next-step{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:1rem;margin:0 0 1rem!important;padding:1.15rem 1.25rem!important;border-color:#cfe0f6!important;background:linear-gradient(135deg,#f5f9ff,#f2fbf9)!important;box-shadow:none!important}
.next-step-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:.8rem;background:#fff;color:var(--assessment-blue);box-shadow:0 5px 16px rgba(24,50,75,.08);font-size:1.15rem}
.assessment-next-step h2{margin:.18rem 0 .25rem;color:var(--assessment-ink);font-size:1.05rem}
.assessment-next-step p{margin:0;color:var(--assessment-muted);font-size:.78rem;line-height:1.55}
.next-step-action{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:.5rem;padding:.65rem .9rem;border-radius:.55rem;background:#fff;color:var(--assessment-blue);box-shadow:0 0 0 1px #c8daf2;font-size:.78rem;font-weight:800}
.next-step-action:hover{background:#eaf3ff;color:#0b55bd}
.examifo-overview{scroll-margin-top:1rem;padding:1.55rem 1.6rem!important;border-radius:1rem!important}
.examifo-logo{width:58px;height:58px;flex-basis:58px}
.integration-kicker{font-size:.68rem}
.examifo-brand-block h2{margin:.35rem 0 .3rem;font-size:1.25rem}
.examifo-brand-block p{font-size:.82rem;line-height:1.6}
.connection-state,.connection-detail{font-size:.72rem}
.connection-actions button{min-height:42px}
.integration-flow{margin:1rem 0!important;padding:.5rem!important}
.integration-flow article{grid-template-columns:38px minmax(0,1fr) auto;gap:.7rem;padding:.78rem .85rem!important}
.integration-flow article>span{width:36px;height:36px;font-size:.76rem}
.integration-flow small{font-size:.61rem}
.integration-flow strong{font-size:.75rem}
.integration-flow article>i{font-size:.82rem}
.assessment-metrics{gap:.9rem;margin-bottom:1.1rem}
.assessment-metrics article{padding:1rem 1.05rem!important}
.metric-icon{width:44px;height:44px;flex-basis:44px;font-size:1rem}
.assessment-metrics small{font-size:.67rem}
.assessment-metrics strong{font-size:1.55rem}
.assessment-metrics em{font-size:.65rem}
.assessment-layout{gap:1.1rem}
.assessment-layout.has-sidebar{grid-template-columns:minmax(0,1.7fr) minmax(340px,.8fr)}
.assessment-list-panel{scroll-margin-top:1rem;border-radius:.95rem!important}
.section-heading-row{padding:1.3rem 1.4rem}
.section-kicker{font-size:.65rem}
.section-heading-row h2,.link-assessment-card h2,.integration-help-card h2{margin:.25rem 0;font-size:1.12rem}
.section-heading-row p{font-size:.78rem;line-height:1.55}
.assessment-hub .primary-action{min-height:42px;margin:0;padding:.7rem .9rem;font-size:.78rem}
.learner-assessment-guide{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid #e5ebf2;background:#f8fbff}
.learner-assessment-guide>span{display:grid;grid-template-columns:24px 1fr;gap:.05rem .5rem;align-items:center}
.learner-assessment-guide>span>i{grid-row:1/3;color:var(--assessment-blue);font-size:1.05rem}
.learner-assessment-guide strong{color:#31485f;font-size:.74rem}
.learner-assessment-guide small{font-size:.66rem}
.learner-assessment-guide>i{color:#a5b1bf}
.assessment-stack{gap:1rem;padding:1.1rem}
.assessment-row-card{border-color:#dce4ed!important;border-radius:.85rem!important;box-shadow:0 4px 14px rgba(25,52,83,.05)!important}
.assessment-card-main{gap:1rem;padding:1.2rem}
.assessment-icon{width:46px;height:46px;flex-basis:46px;font-size:1.08rem}
.assessment-title-line{gap:.65rem;flex-wrap:wrap}
.assessment-title-line h3{font-size:1rem}
.assessment-status{padding:.27rem .55rem;font-size:.62rem}
.assessment-card-copy>p{margin:.4rem 0 .65rem;color:#5f7086;font-size:.76rem;line-height:1.55}
.assessment-meta{gap:.45rem 1.1rem;font-size:.68rem;line-height:1.45}
.assessment-launch button{min-height:44px;padding:.7rem 1rem;font-size:.8rem}
.assessment-unavailable{display:flex;min-width:190px;align-items:center;gap:.65rem;align-self:center;padding:.7rem .8rem;border:1px solid #dfe5ec;border-radius:.65rem;background:#f7f9fc;color:#53657a}
.assessment-unavailable>i{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:.52rem;background:#e9eef4;color:#64768a}
.assessment-unavailable>span{display:flex;flex-direction:column}
.assessment-unavailable strong{font-size:.72rem}
.assessment-unavailable small{margin-top:.08rem;color:#718096;font-size:.63rem;line-height:1.4}
.assessment-unavailable.is-upcoming{border-color:#eadbac;background:#fffaf0;color:#7e5e0d}
.assessment-unavailable.is-upcoming>i{background:#fff0c8;color:#8b650a}
.assessment-unavailable.is-closed{border-color:#e4dfe2;background:#faf8f9;color:#665963}
.assessment-unavailable.is-closed>i{background:#eee9ec;color:#74636f}
.assessment-sync-error{margin:0 1rem 1rem;padding:.8rem .9rem;font-size:.72rem;line-height:1.5}
.result-strip{gap:.7rem;padding:1rem 1.2rem}
.result-strip>div{padding:.7rem .75rem}
.result-strip span{font-size:.67rem}
.result-strip strong{font-size:.9rem}
.result-strip small{font-size:.62rem;line-height:1.45}
.result-link-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem}.result-link-actions a{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .4rem;border:1px solid #cfdae7;border-radius:.4rem;background:#fff;color:#255d9b;font-size:.55rem;font-weight:800;text-decoration:none}.result-link-actions a:hover{border-color:#8eb0d4;background:#f1f7ff}
.result-empty-line{padding:.8rem 1.2rem;font-size:.72rem}
.assessment-admin-footer{align-items:center;gap:1rem;padding:.9rem 1.2rem}
.assessment-rule-menus{gap:.45rem}
.assessment-admin-footer summary{min-height:38px;align-items:center;padding:.48rem .65rem;border:1px solid #dce4ed;border-radius:.5rem;background:#fff;color:#40556d;font-size:.71rem;list-style:none}
.assessment-admin-footer summary::-webkit-details-marker{display:none}
.assessment-admin-footer summary:hover{border-color:#b9c9dc;background:#f7faff;color:var(--assessment-blue)}
.assessment-admin-footer .secondary-action{min-height:40px;padding:.56rem .72rem;font-size:.7rem}
.assessment-admin-footer details[open] .assessment-grade-rule,.assessment-admin-footer details[open] .assessment-eligibility-rule{width:min(560px,calc(100vw - 2rem));padding:1rem!important}
.assessment-grade-rule,.assessment-eligibility-rule{gap:.85rem!important}
.assessment-grade-rule small,.assessment-eligibility-rule small{font-size:.66rem;line-height:1.45}
.sync-registration-choice{font-size:.64rem;white-space:normal}
.assessment-edit-menu{position:relative}
.assessment-admin-footer details[open]>.assessment-edit-popover{position:absolute;z-index:20;bottom:calc(100% + .55rem);left:0;width:min(620px,calc(100vw - 2rem));overflow:hidden;border:1px solid #d8e1ec;border-radius:.75rem;background:#fff;box-shadow:0 18px 40px rgba(21,48,83,.18)}
.assessment-edit-popover>header{display:flex;flex-direction:column;padding:1rem 1.1rem;border-bottom:1px solid #e6ebf1;background:#f9fbfd}
.assessment-edit-popover>header strong{color:#2b435c;font-size:.82rem}
.assessment-edit-popover>header small{margin-top:.18rem;font-size:.67rem;line-height:1.45}
.assessment-edit-form{display:grid!important;grid-template-columns:1fr 1fr;align-items:start!important;gap:.85rem!important;margin:0!important;padding:1.1rem}
.assessment-edit-form label,.assessment-edit-form input,.assessment-edit-form select{width:100%}
.assessment-edit-form label>span{font-size:.71rem}
.assessment-edit-form label>small{font-size:.65rem;line-height:1.45}
.assessment-edit-form .field-wide{grid-column:1/-1}
.assessment-edit-form button{justify-self:start;width:auto}
.assessment-unlink-zone{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border-top:1px solid #f0d9d6;background:#fff9f8}
.assessment-unlink-zone>div{display:flex;flex-direction:column}
.assessment-unlink-zone strong{color:#8d302a;font-size:.74rem}
.assessment-unlink-zone small{margin-top:.12rem;color:#7c6968;font-size:.65rem;line-height:1.45}
.assessment-unlink-zone form{margin:0!important}
.assessment-unlink-zone button{display:inline-flex;min-height:38px;align-items:center;gap:.4rem;padding:.55rem .72rem;font-size:.7rem;white-space:nowrap}
.assessment-advanced-management{border-top:1px solid #e5eaf0;background:#fff}
.assessment-advanced-management>summary{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1.2rem;color:#3f5269;cursor:pointer;list-style:none}
.assessment-advanced-management>summary::-webkit-details-marker{display:none}
.assessment-advanced-management>summary>span{display:flex;align-items:center;gap:.5rem;font-size:.73rem}
.assessment-advanced-management>summary>span i{color:var(--assessment-blue)}
.assessment-advanced-management>summary>small{font-size:.65rem}
.assessment-advanced-management[open]>summary{border-bottom:1px solid #e7ecf2;background:#f9fbfd}
.advanced-management-body{display:grid;gap:1rem;padding:1rem 1.2rem;background:#f7f9fc}
.advanced-management-body>section{padding:1rem;border:1px solid #dfe6ee;border-radius:.65rem;background:#fff}
.advanced-management-body>section>header{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:.85rem}
.advanced-management-body>section>header>i{display:grid;width:34px;height:34px;place-items:center;border-radius:.5rem;background:#edf4ff;color:var(--assessment-blue)}
.advanced-management-body>section>header>div{display:flex;flex-direction:column}
.advanced-management-body>section>header strong{color:#304861;font-size:.76rem}
.advanced-management-body>section>header small{font-size:.67rem}
.advanced-management-body form{position:static!important;width:auto!important;padding:0!important;border:0!important;box-shadow:none!important}
.advanced-management-body .assessment-eligibility-rule{grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) auto}
.advanced-management-body .restore-rule{grid-template-columns:minmax(240px,1fr) auto;padding-top:.8rem!important;border-top:1px solid #e8edf3!important}
.assessment-side-panel{position:sticky;top:1rem;gap:1rem}
.link-assessment-card,.integration-help-card{padding:0!important;overflow:hidden;border-radius:.95rem!important}
.link-assessment-card>header{gap:.8rem;padding:1.2rem 1.25rem;background:#fbfdff}
.link-assessment-card>header>span{width:42px;height:42px}
.link-assessment-card header small{font-size:.62rem}
.link-assessment-card header p{margin:.25rem 0 0;color:#6b798c;font-size:.7rem;line-height:1.5}
.assessment-link-form{gap:0!important;margin:0!important}
.link-form-section{display:grid;gap:.8rem;margin:0;padding:1.15rem 1.25rem;border:0;border-bottom:1px solid #e7ecf2}
.link-form-section legend{display:flex;width:100%;align-items:center;gap:.65rem;margin-bottom:.15rem;padding:0;color:#2d455e}
.link-form-section legend>span{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border-radius:50%;background:#e8f1ff;color:var(--assessment-blue);font-size:.7rem;font-weight:850}
.link-form-section legend>div{display:flex;flex-direction:column}
.link-form-section legend strong{font-size:.76rem}
.link-form-section legend small{font-size:.64rem;font-weight:500}
.assessment-link-form label>span{font-size:.72rem}
.assessment-link-form label>small{margin-top:.08rem;font-size:.65rem;line-height:1.45}
.assessment-link-form input,.assessment-link-form select{min-height:44px;font-size:.8rem}
.link-advanced-options{border-bottom:1px solid #e7ecf2;background:#fafbfd}
.link-advanced-options>summary{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem 1.25rem;color:#41566f;cursor:pointer;list-style:none}
.link-advanced-options>summary::-webkit-details-marker{display:none}
.link-advanced-options>summary>span{display:flex;align-items:center;gap:.55rem;font-size:.72rem}
.link-advanced-options>summary>span i{color:var(--assessment-blue)}
.link-advanced-options>summary>small{font-size:.62rem}
.link-advanced-options[open]>summary{border-bottom:1px solid #e2e8ef;background:#f5f8fc}
.link-advanced-options>div{display:grid;gap:.8rem;padding:1rem 1.25rem}
.assessment-link-form .form-check-row{padding:.8rem}
.form-check-row strong{font-size:.72rem}
.form-check-row small{font-size:.65rem}
.link-submit{display:flex;width:calc(100% - 2.5rem)!important;min-height:52px;align-items:center;justify-content:center;gap:.65rem;margin:1.1rem 1.25rem 0;padding:.7rem 1rem}
.link-submit>span{display:flex;align-items:flex-start;flex-direction:column;text-align:left}
.link-submit strong{font-size:.78rem}
.link-submit small{color:#dceaff;font-size:.62rem;font-weight:600}
.form-security-note{gap:.5rem;margin:0;padding:1rem 1.25rem;color:#68788d;font-size:.65rem}
.integration-help-card{padding:1.2rem!important}
.integration-help-card strong{font-size:.74rem}
.integration-help-card p{font-size:.68rem;line-height:1.55}
.integration-help-card li>span{width:38px;height:38px;flex-basis:38px}
.assessment-empty p{font-size:.78rem}
.learner-result-state{padding:1rem 1.2rem}
.learner-result-state strong{font-size:.78rem}
.learner-result-state small{font-size:.68rem}
.feedback-message,.feedback-loading{font-size:.72rem}
.sync-progress-heading{font-size:.78rem}
.sync-progress-heading time{font-size:.68rem}
.sync-progress-copy p{font-size:.7rem}
.assessment-manage-link{display:flex;min-width:235px;min-height:52px;align-items:center;gap:.65rem;padding:.6rem .75rem;border:1px solid #cbd9e9;border-radius:.6rem;background:#fff;color:#24558f;text-decoration:none}.assessment-manage-link>span{display:flex;flex:1;flex-direction:column}.assessment-manage-link strong{font-size:.72rem}.assessment-manage-link small{margin-top:.05rem;color:#718095;font-size:.6rem}.assessment-manage-link>i:last-child{color:#7690ad}.assessment-manage-link:hover{border-color:#91afd0;background:#f4f8fd;color:#174878}.assessment-admin-footer>.inline-actions{display:flex;align-items:center;gap:.5rem}.assessment-admin-footer>.inline-actions button{min-height:52px;justify-content:center}
.assessment-management-page{max-width:1180px!important}.assessment-management-heading{align-items:flex-end}.assessment-management-heading>div{min-width:0;flex:1}.assessment-management-heading .assessment-status{margin-bottom:.35rem}.back-link{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.75rem;color:#55708f;font-size:.7rem;font-weight:750;text-decoration:none}.assessment-management-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.assessment-management-summary article{display:flex;align-items:center;gap:.7rem;margin:0!important;padding:.9rem 1rem!important;border:1px solid #e1e7ef!important;border-radius:.75rem!important;background:#fff!important;box-shadow:none!important}.assessment-management-summary article>i{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:.6rem;background:#eaf3ff;color:#1767c6}.assessment-management-summary article>span{display:flex;min-width:0;flex-direction:column}.assessment-management-summary small{color:#78869a;font-size:.58rem}.assessment-management-summary strong{overflow:hidden;color:#293f58;font-size:.73rem;text-overflow:ellipsis;white-space:nowrap}.assessment-management-actions{display:flex!important;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem!important;padding:1rem 1.1rem!important}.assessment-management-actions>div{display:flex;flex-direction:column}.assessment-management-actions>div:last-child{align-items:center;flex-direction:row;gap:.55rem}.assessment-management-actions strong{font-size:.78rem}.assessment-management-actions small{margin-top:.15rem;font-size:.65rem}.assessment-management-actions form{display:flex;align-items:center;gap:.5rem;margin:0}.assessment-management-actions form label{display:flex;align-items:center;flex-direction:row;gap:.3rem;font-size:.62rem}.assessment-management-actions form label input{width:auto}.assessment-management-actions button{height:42px;white-space:nowrap}.assessment-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem}.assessment-management-card{margin:0!important;padding:0!important;overflow:hidden;border-radius:.85rem!important}.assessment-management-card>header{display:flex;align-items:flex-start;gap:.7rem;padding:1rem 1.1rem;border-bottom:1px solid #e7ecf2;background:#fbfcfe}.assessment-management-card>header>span{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:.6rem;background:#eaf3ff;color:#1767c6}.assessment-management-card h2{margin:0;color:#263f59;font-size:.9rem}.assessment-management-card header p{margin:.18rem 0 0;color:#748196;font-size:.65rem;line-height:1.45}.assessment-management-form{display:grid!important;grid-template-columns:1fr 1fr;align-items:end!important;gap:.8rem!important;margin:0!important;padding:1.1rem}.assessment-management-form.compact{grid-template-columns:1fr}.assessment-management-form label{align-items:stretch}.assessment-management-form label>span{font-size:.7rem}.assessment-management-form label>small,.assessment-management-form label span small{font-size:.62rem;line-height:1.45}.assessment-management-form input,.assessment-management-form select{width:100%}.assessment-management-form .field-wide{grid-column:1/-1}.assessment-management-form button{width:fit-content;min-width:150px;justify-self:start}.assessment-management-form .check-setting{display:flex!important;align-items:flex-start!important;flex-direction:row!important;gap:.55rem;padding:.75rem;border:1px solid #dfe6ee;border-radius:.6rem;background:#f8fafc}.assessment-management-form .check-setting>input{width:auto;margin-top:.15rem}.assessment-management-form .check-setting>span{display:flex;flex-direction:column}.learner-exception-grid{display:grid;grid-template-columns:1fr 1fr}.learner-exception-grid>form+form{border-left:1px solid #e7ecf2}.field-span-two{grid-column:1/-1}.assessment-override-list{padding:0 1.1rem 1.1rem}.assessment-override-list h3{margin:0 0 .55rem;font-size:.76rem}.assessment-override-list article{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.65rem .75rem;border:1px solid #e3e8ef;border-radius:.55rem;background:#fafbfd}.assessment-override-list article+article{margin-top:.4rem}.assessment-override-list article>span{display:flex;flex-direction:column}.assessment-override-list strong{font-size:.7rem}.assessment-override-list small{font-size:.6rem}.assessment-override-list em{padding:.25rem .45rem;border-radius:999px;background:#e8f2ff;color:#1d5eaa;font-size:.58rem;font-style:normal;font-weight:750}.danger-card{border-color:#ecd2cf!important}.danger-card>header>span{background:#fff0ee;color:#a13d35}.danger-card>form{display:flex;justify-content:flex-end;margin:0;padding:1rem 1.1rem;background:#fffafa}

.result-retention-card{border-color:#d7e2ee!important}.result-retention-card>header{align-items:center}.result-retention-card>header>div{min-width:0;flex:1}.result-retention-card>header>em{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .55rem;border-radius:999px;background:#e9f7ef;color:#23704a;font-size:.62rem;font-style:normal;font-weight:800;white-space:nowrap}.result-retention-card.is-disabled{border-color:#ead9bb!important}.result-retention-card.is-disabled>header>span{background:#fff3dc;color:#8b610d}.result-retention-card.is-disabled>header>em{background:#fff3dc;color:#7a560e}.result-retention-body{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.1rem}.result-retention-body>div{min-width:0;flex:1}.result-retention-body strong{color:#31475f;font-size:.75rem}.result-retention-body p{max-width:760px;margin:.25rem 0 0;color:#6f7e91;font-size:.66rem;line-height:1.55}.result-retention-body form{flex:0 0 auto;margin:0}.result-retention-body button{min-height:42px;white-space:nowrap}.secondary-action:disabled,.assessment-management-actions button:disabled{cursor:not-allowed;opacity:.58}
.examifo-result-links table{width:100%;border-collapse:collapse;font-size:.67rem}.examifo-result-links th,.examifo-result-links td{padding:.7rem .8rem;border-bottom:1px solid #e7ecf2;text-align:left;white-space:nowrap}.examifo-result-links th{background:#f6f8fb;color:#64758a;font-size:.57rem;text-transform:uppercase}.examifo-result-links .inline-actions{display:flex;gap:.35rem}.examifo-result-links .secondary-action{min-height:34px;padding:.35rem .5rem;font-size:.59rem}

/* Assessment management layout correction */
.assessment-management-page{scroll-behavior:smooth}.assessment-management-page button,.assessment-management-page .primary-action,.assessment-management-page .secondary-action{margin:0}.assessment-management-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.65rem;margin:0 0 1rem}.assessment-management-nav>a{display:flex;min-width:0;align-items:center;gap:.65rem;padding:.75rem .85rem;border:1px solid #dce4ed;border-radius:.7rem;background:#fff;color:#314b67}.assessment-management-nav>a:hover{border-color:#9fbee0;background:#f7fbff;color:#174f8f}.assessment-management-nav>a>i{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:.5rem;background:#edf4fd;color:#1767c6}.assessment-management-nav span{display:flex;min-width:0;flex-direction:column}.assessment-management-nav strong{font-size:.68rem}.assessment-management-nav small{overflow:hidden;margin-top:.08rem;font-size:.57rem;text-overflow:ellipsis;white-space:nowrap}.assessment-management-actions .assessment-action-buttons{display:flex;align-items:center;justify-content:flex-end;flex-direction:row;gap:.55rem}.assessment-action-buttons form{display:flex;align-items:center;flex-direction:row}.assessment-action-buttons button{display:inline-flex;min-width:158px;align-items:center;justify-content:center}.assessment-management-grid{grid-template-columns:1fr}.assessment-management-card{scroll-margin-top:1rem}.assessment-details-card .assessment-management-form{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-details-card .assessment-management-form button{width:220px;justify-self:end}.assessment-rules-card{overflow:visible}.assessment-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#e7ecf2}.assessment-rule-panel{display:flex;min-width:0;min-height:310px;flex-direction:column;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.assessment-rule-panel+.assessment-rule-panel{border-left:1px solid #e7ecf2!important}.assessment-rule-panel>header{display:flex;min-height:74px;align-items:flex-start;gap:.55rem;padding:.9rem 1rem;border-bottom:1px solid #edf0f4;background:#fcfdff}.assessment-rule-panel>header>i{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:.5rem;background:#edf4fd;color:#1767c6}.assessment-rule-panel h3{margin:0;color:#29435f;font-size:.78rem}.assessment-rule-panel header p{margin:.12rem 0 0;color:#768397;font-size:.6rem;line-height:1.4}.assessment-rule-panel .assessment-management-form{display:flex!important;min-height:235px;align-items:stretch!important;flex-direction:column!important;flex:1}.assessment-rule-panel .assessment-management-form button{width:100%;min-height:42px;margin-top:auto;justify-self:stretch}.learner-exception-grid .assessment-management-form{display:flex!important;align-items:stretch!important;flex-direction:column!important}.learner-exception-grid .assessment-management-form button{width:100%;min-height:42px;margin-top:auto}.result-retention-body .primary-action,.result-retention-body .danger-button,.danger-card button{display:inline-flex;min-width:210px;min-height:42px;align-items:center;justify-content:center}.examifo-result-links td:last-child{width:1%}.examifo-result-links .inline-actions{justify-content:flex-end}.examifo-result-links .secondary-action{min-width:92px}.danger-card>form{align-items:center}.danger-card>form button{margin-left:auto}

@media(max-width:1120px){
  .assessment-side-panel{position:static;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}
  .assessment-management-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .assessment-rule-grid{grid-template-columns:1fr 1fr}.assessment-rule-panel:last-child{grid-column:1/-1;border-top:1px solid #e7ecf2!important;border-left:0!important}.assessment-rule-panel:last-child .assessment-management-form{min-height:0}
}
@media(max-width:760px){
  .assessment-page-heading h1{font-size:1.8rem}
  .assessment-page-heading p{font-size:.84rem}
  .assessment-next-step{grid-template-columns:42px minmax(0,1fr);padding:1rem!important}
  .next-step-icon{width:42px;height:42px}
  .next-step-action{grid-column:1/-1;width:100%}
  .examifo-overview{padding:1.2rem!important}
  .assessment-side-panel{grid-template-columns:1fr}
  .learner-assessment-guide{grid-template-columns:1fr;gap:.65rem}
  .learner-assessment-guide>i{display:none}
  .learner-assessment-guide>span{grid-template-columns:26px 1fr}
  .assessment-card-main{padding:1rem}
  .assessment-card-copy{min-width:calc(100% - 62px)}
  .assessment-launch{margin-left:0}
  .assessment-unavailable{width:100%;margin-left:0}
  .assessment-admin-footer{align-items:stretch}
  .assessment-rule-menus{display:grid;grid-template-columns:1fr 1fr}
  .assessment-admin-footer summary{justify-content:center}
  .assessment-admin-footer details[open] .assessment-grade-rule,.assessment-admin-footer details[open] .assessment-eligibility-rule{inset:auto .75rem 1rem;width:auto;max-height:80vh;overflow:auto}
  .assessment-admin-footer details[open]>.assessment-edit-popover{position:fixed;z-index:70;inset:auto .75rem 1rem;width:auto;max-height:85vh;overflow:auto}
  .assessment-edit-form{grid-template-columns:1fr}
  .assessment-edit-form .field-wide{grid-column:auto}
  .assessment-edit-form button{width:100%}
  .assessment-unlink-zone{align-items:stretch;flex-direction:column}
  .assessment-unlink-zone button{width:100%;justify-content:center}
  .assessment-advanced-management>summary{align-items:flex-start;flex-direction:column;gap:.25rem}
  .advanced-management-body .assessment-eligibility-rule,.advanced-management-body .restore-rule{grid-template-columns:1fr}
  .link-advanced-options>summary{align-items:flex-start;flex-direction:column}
  .assessment-admin-footer>.inline-actions{display:grid;width:100%;grid-template-columns:1fr 1fr}
  .assessment-manage-link{width:100%;min-width:0}
  .assessment-management-summary,.assessment-management-grid{grid-template-columns:1fr}
  .assessment-management-nav{grid-template-columns:1fr 1fr}
  .assessment-management-actions{align-items:stretch;flex-direction:column}
  .assessment-management-actions>div:last-child{align-items:stretch;flex-direction:column}
  .assessment-management-actions form{align-items:stretch;flex-direction:column}
  .assessment-management-actions button{width:100%}
  .assessment-management-form{grid-template-columns:1fr}
  .assessment-management-form .field-wide,.field-span-two{grid-column:auto}
  .assessment-management-form button{width:100%}
  .assessment-rule-grid{grid-template-columns:1fr}.assessment-rule-panel{min-height:0}.assessment-rule-panel+.assessment-rule-panel,.assessment-rule-panel:last-child{grid-column:auto;border-top:1px solid #e7ecf2!important;border-left:0!important}.assessment-rule-panel .assessment-management-form{min-height:0}.assessment-details-card .assessment-management-form button{width:100%;justify-self:stretch}
  .learner-exception-grid{grid-template-columns:1fr}
  .learner-exception-grid>form+form{border-top:1px solid #e7ecf2;border-left:0}
  .result-retention-card>header{align-items:flex-start;flex-wrap:wrap}.result-retention-card>header>em{margin-left:45px}.result-retention-body{align-items:stretch;flex-direction:column}.result-retention-body button{width:100%;justify-content:center}
}
@media(max-width:480px){
  .assessment-stack{padding:.65rem}
  .assessment-title-line{align-items:flex-start;flex-direction:column}
  .assessment-card-copy>p{font-size:.72rem}
  .assessment-meta{font-size:.65rem}
  .assessment-rule-menus{grid-template-columns:1fr}
  .form-pair{grid-template-columns:1fr}
  .link-form-section,.link-advanced-options>div{padding:1rem}
  .link-advanced-options>summary{padding:.85rem 1rem}
  .link-submit{width:calc(100% - 2rem)!important;margin:1rem 1rem 0}
  .form-security-note{padding:1rem}
}

/* Self-guided course setup and feature visibility */
.settings-save-confirmation{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;padding:.85rem 1rem;border:1px solid #a9dfd1;border-radius:.75rem;background:#ecfaf6;color:#087362}.settings-save-confirmation>i{font-size:1.15rem}.settings-save-confirmation span{display:flex;flex-direction:column}.settings-save-confirmation strong{font-size:.78rem}.settings-save-confirmation small{color:#39776d;font-size:.7rem}
.course-setup-guide{margin:0 0 1.25rem!important;padding:1.35rem!important;border:1px solid #cfddee!important;border-radius:1rem!important;background:linear-gradient(145deg,#fff,#f7fbff)!important;box-shadow:0 10px 28px rgba(28,66,111,.06)!important}.course-setup-guide>header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.course-setup-guide h2{margin:.25rem 0 .25rem;font-size:1.18rem}.course-setup-guide header p{margin:0;color:#68778b;font-size:.76rem}.setup-progress-summary{display:flex;min-width:74px;align-items:center;justify-content:center;flex-direction:column;padding:.65rem;border:1px solid #cbdced;border-radius:.75rem;background:#fff}.setup-progress-summary strong{color:#1763bc;font-size:1.15rem}.setup-progress-summary span{color:#738196;font-size:.58rem;font-weight:800;text-transform:uppercase}.setup-progress-track{height:7px;margin:1rem 0;overflow:hidden;border-radius:999px;background:#e5ebf2}.setup-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#117b72,#2680df);transition:width .25s ease}.course-setup-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem}.course-setup-steps>a{display:grid;min-width:0;grid-template-columns:auto 1fr;gap:.55rem;padding:.75rem;border:1px solid #dbe3ec;border-radius:.7rem;background:#fff;color:#29435f}.course-setup-steps>a:hover{border-color:#9ebee2;box-shadow:0 7px 18px rgba(31,78,132,.08);color:#173e70}.course-setup-steps>a>i{margin-top:.1rem;color:#9ba8b7}.course-setup-steps>a.is-complete>i{color:#0a8a76}.course-setup-steps>a>span{display:flex;min-width:0;flex-direction:column}.course-setup-steps strong{font-size:.68rem}.course-setup-steps small{margin-top:.18rem;color:#748196;font-size:.56rem;line-height:1.45}.course-setup-steps em{display:flex;grid-column:2;align-items:center;gap:.25rem;margin-top:.35rem;color:#1765bd;font-size:.56rem;font-style:normal;font-weight:800}.course-setup-steps .is-complete em{color:#14816f}.setup-next-action{display:flex;align-items:center;gap:.7rem;margin-top:.8rem;padding:.8rem;border-radius:.7rem;background:#0d356d;color:#fff}.setup-next-action>i{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:.55rem;background:rgba(255,255,255,.13);color:#74e1d1}.setup-next-action>span{display:flex;min-width:0;flex:1;flex-direction:column}.setup-next-action strong{font-size:.7rem}.setup-next-action small{margin-top:.12rem;color:#c9d7e8;font-size:.6rem}.setup-next-action>a{padding:.48rem .65rem;border-radius:.5rem;background:#fff;color:#124b91;font-size:.62rem;font-weight:800}.setup-next-action.is-ready{background:#0b665d}
.settings-context-preview{display:flex;align-items:center;gap:.65rem;margin-top:.8rem;padding:.75rem;border-radius:.65rem;background:#eef6ff;color:#224d7d}.settings-context-preview>i{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:.5rem;background:#d9eaff;color:#1768c5}.settings-context-preview span{display:flex;flex-direction:column}.settings-context-preview strong{font-size:.68rem}.settings-context-preview small{margin-top:.1rem;color:#5b7390;font-size:.6rem}
.course-feature-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:1rem}.course-feature-directory>a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.2rem .7rem;padding:.75rem;border:1px solid #dce4ed;border-radius:.68rem;background:#fff;color:#29425f}.course-feature-directory>a:hover{border-color:#a8c5e5;color:#194f8e}.course-feature-directory span{display:flex;align-items:center;gap:.5rem}.course-feature-directory span>i{display:grid;width:30px;height:30px;place-items:center;border-radius:.45rem;background:#e8f6f2;color:#087b6d}.course-feature-directory strong{font-size:.68rem}.course-feature-directory em{grid-column:1;color:#64778d;font-size:.58rem;font-style:normal}.course-feature-directory b{grid-column:2;grid-row:1/3;color:#1766bd;font-size:.58rem}.course-feature-directory .is-disabled{border-style:dashed;background:#fafbfc}.course-feature-directory .is-disabled span>i{background:#edf0f4;color:#7c8998}.course-feature-directory .is-disabled em{color:#8a6470}.course-action-grid>a.is-feature-disabled{border-style:dashed;background:#fafbfc;color:#657487}.course-action-grid>a.is-feature-disabled>i{background:#edf0f4;color:#7d8997}
@media(max-width:1050px){.course-setup-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.course-setup-guide>header{align-items:flex-start}.course-setup-steps,.course-feature-directory{grid-template-columns:1fr}.setup-next-action{align-items:flex-start;flex-wrap:wrap}.setup-next-action>span{min-width:calc(100% - 48px)}.setup-next-action>a{width:100%;text-align:center}}

/* Keep assessment-card actions aligned after the legacy hub rules above. */
.assessment-hub .assessment-admin-footer{display:grid;grid-template-columns:minmax(210px,1fr) minmax(300px,auto);align-items:start}
@media(max-width:850px){.assessment-hub .assessment-admin-footer{grid-template-columns:1fr}}

/* Assessment centre: final production layout overrides.
   Keep this block after legacy assessment styles so both pages share one
   predictable grid, control height, and responsive behaviour. */
.assessment-hub,
.assessment-management-page{
  width:100%;
  min-width:0;
  margin-inline:auto;
  padding-bottom:3rem;
  color:#22364d;
}
.assessment-hub{max-width:1380px!important}
.assessment-management-page{max-width:1240px!important}
.assessment-hub *,
.assessment-management-page *{box-sizing:border-box}
.assessment-hub form,
.assessment-management-page form{margin:0}
.assessment-hub button,
.assessment-hub .primary-action,
.assessment-hub .secondary-action,
.assessment-management-page button,
.assessment-management-page .primary-action,
.assessment-management-page .secondary-action{
  min-height:42px;
  margin:0;
  align-items:center;
  justify-content:center;
  line-height:1.2;
}
.assessment-hub input:not([type=checkbox]):not([type=hidden]),
.assessment-hub select,
.assessment-management-page input:not([type=checkbox]):not([type=hidden]),
.assessment-management-page select{
  width:100%;
  min-width:0;
  min-height:44px;
}

/* Assessment list page */
.assessment-hub .assessment-page-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1.25rem;
}
.assessment-hub .assessment-page-heading>div{min-width:0;flex:1}
.assessment-hub .assessment-page-heading>.secondary-action{flex:0 0 auto}
.assessment-hub .assessment-next-step{
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
}
.assessment-hub .examifo-overview{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.assessment-hub .examifo-brand-block>div{min-width:0}
.assessment-hub .connection-actions{justify-content:flex-end;flex-wrap:wrap}
.assessment-hub .integration-flow{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
}
.assessment-hub .assessment-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.assessment-hub .assessment-metrics article{min-width:0}
.assessment-hub .assessment-layout.has-sidebar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  align-items:start;
  gap:1.25rem;
}
.assessment-hub .assessment-list-panel,
.assessment-hub .assessment-side-panel{min-width:0}
.assessment-hub .section-heading-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.25rem;
}
.assessment-hub .section-heading-row>div{min-width:0;flex:1}
.assessment-hub .section-heading-row>.primary-action{flex:0 0 auto}
.assessment-hub .assessment-stack{display:grid;gap:1rem}
.assessment-hub .assessment-row-card{width:100%;min-width:0}
.assessment-hub .assessment-card-main{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  align-items:start;
  gap:1rem;
}
.assessment-hub .assessment-card-copy{width:100%;min-width:0}
.assessment-hub .assessment-title-line{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
}
.assessment-hub .assessment-title-line h3{min-width:0;overflow-wrap:anywhere}
.assessment-hub .assessment-launch,
.assessment-hub .assessment-unavailable{align-self:center;margin:0}
.assessment-hub .assessment-card-detail{margin:0!important;padding:0!important;border-right:0!important;border-bottom:0!important;border-left:0!important;border-radius:0!important;box-shadow:none!important}
.assessment-hub .assessment-card-detail>header{min-height:40px}
.assessment-hub .assessment-card-detail .result-strip{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
}
.assessment-hub .result-strip>div{min-width:0}
.assessment-hub .result-link-actions a{min-height:30px}
.assessment-hub .assessment-admin-footer{
  display:grid;
  grid-template-columns:minmax(240px,1fr) auto;
  align-items:start;
  gap:.75rem;
  padding:1rem 1.2rem;
}
.assessment-hub .assessment-manage-link{
  width:100%;
  min-width:0;
  min-height:48px;
}
.assessment-hub .assessment-sync-actions{
  display:grid;
  min-width:310px;
  grid-template-columns:repeat(2,minmax(145px,1fr));
  align-items:start;
  gap:.55rem;
}
.assessment-hub .assessment-sync-actions>form{
  display:flex!important;
  min-width:0;
  align-items:stretch!important;
  flex-direction:column;
  gap:.35rem;
}
.assessment-hub .assessment-sync-actions>form>button,
.assessment-hub .assessment-sync-actions>button{
  order:1;
  width:100%;
  min-width:0;
  min-height:48px!important;
  white-space:nowrap;
}
.assessment-hub .assessment-sync-actions .sync-registration-choice{
  order:2;
  min-height:18px;
  margin:0;
  padding:0 .15rem;
  white-space:normal;
}
.assessment-hub .assessment-side-panel{
  display:grid;
  position:sticky;
  top:1rem;
  gap:1rem;
}
.assessment-hub .link-assessment-card,
.assessment-hub .integration-help-card{width:100%;min-width:0}
.assessment-hub .assessment-link-form{width:100%}
.assessment-hub .link-form-section,
.assessment-hub .link-advanced-options>div{min-width:0}
.assessment-hub .link-submit{max-width:none}
.assessment-hub .assessment-section-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.8rem 1.2rem;
  border-top:1px solid #e5ebf2;
  border-bottom:1px solid #e5ebf2;
  background:#f8fafc;
}
.assessment-hub .assessment-section-nav>span{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  flex:0 0 auto;
  color:#52677f;
  font-size:.68rem;
  font-weight:800;
}
.assessment-hub .assessment-section-nav>span i{color:#1767c6}
.assessment-hub .assessment-section-nav>div{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:.4rem;
}
.assessment-hub .assessment-section-nav a{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  gap:.45rem;
  padding:.38rem .58rem;
  border:1px solid #d7e1ec;
  border-radius:.5rem;
  background:#fff;
  color:#38536f;
  font-size:.64rem;
  font-weight:750;
  text-decoration:none;
}
.assessment-hub .assessment-section-nav a:hover{
  border-color:#8fb5dd;
  background:#eef6ff;
  color:#15589f;
}
.assessment-hub .assessment-section-nav a b{
  display:grid;
  min-width:21px;
  height:21px;
  place-items:center;
  padding:0 .25rem;
  border-radius:999px;
  background:#e8f1fc;
  color:#1764b7;
  font-size:.56rem;
}
.assessment-hub .assessment-section-groups{
  display:grid;
  gap:1rem;
  padding:1rem;
  background:#f3f6fa;
}
.assessment-hub .assessment-section-group{
  width:100%;
  min-width:0;
  scroll-margin-top:1rem;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid #dbe4ee!important;
  border-radius:.85rem!important;
  background:#fff;
  box-shadow:0 3px 12px rgba(28,55,87,.045)!important;
}
.assessment-hub .assessment-section-heading{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:.8rem;
  min-height:78px;
  padding:.9rem 1rem;
  border-bottom:1px solid #e5ebf2;
  background:linear-gradient(100deg,#fbfdff,#f4f8fd);
}
.assessment-hub .assessment-section-icon{
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border-radius:.65rem;
  background:#e5f0fd;
  color:#1767c6;
  font-size:1rem;
}
.assessment-hub .assessment-section-heading>div{min-width:0}
.assessment-hub .assessment-section-heading h3{
  margin:.1rem 0 0;
  color:#263f59;
  font-size:.9rem;
}
.assessment-hub .assessment-section-heading p{
  margin:.18rem 0 0;
  color:#718096;
  font-size:.65rem;
  line-height:1.45;
}
.assessment-hub .assessment-section-count{
  display:flex;
  min-width:86px;
  align-items:flex-end;
  flex-direction:column;
  color:#64758a;
  font-size:.61rem;
  font-weight:750;
}
.assessment-hub .assessment-section-count strong{
  color:#1764b7;
  font-size:1.15rem;
  line-height:1;
}
.assessment-hub .assessment-section-count small{
  margin-top:.18rem;
  color:#7a8798;
  font-size:.56rem;
}
.assessment-hub .assessment-section-group>.assessment-stack{
  gap:.8rem;
  padding:.85rem;
  background:#f8fafc;
}

/* Assessment management page */
.assessment-management-page .assessment-management-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1.25rem;
}
.assessment-management-page .assessment-management-heading>div{min-width:0;flex:1}
.assessment-management-page .assessment-management-heading h1{overflow-wrap:anywhere}
.assessment-management-page .assessment-management-heading>.assessment-status{flex:0 0 auto;margin:0 0 .35rem}
.assessment-management-page .assessment-management-summary{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.8rem;
  width:100%;
}
.assessment-management-page .assessment-management-summary article{min-width:0;min-height:76px}
.assessment-management-page .assessment-management-summary strong{font-size:.78rem}
.assessment-management-page .assessment-management-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.65rem;
  width:100%;
}
.assessment-management-page .assessment-management-nav>a{min-width:0;min-height:64px}
.assessment-management-page .assessment-management-nav small{white-space:normal;line-height:1.35}
.assessment-management-page .assessment-management-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:1.25rem;
  width:100%;
}
.assessment-management-page .assessment-management-actions>div:first-child{min-width:0}
.assessment-management-page .assessment-action-buttons{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-end;
  flex-direction:row!important;
  gap:.6rem;
}
.assessment-management-page .assessment-action-buttons form{
  display:flex!important;
  min-width:165px;
  align-items:stretch!important;
  flex-direction:column!important;
  gap:.35rem;
}
.assessment-management-page .assessment-action-buttons form>button{
  order:1;
  width:100%;
  min-width:165px;
}
.assessment-management-page .assessment-action-buttons form>label{
  order:2;
  min-height:18px;
  margin:0;
  white-space:normal;
}
.assessment-management-page .assessment-action-buttons>button{min-width:165px}
.assessment-management-page .assessment-management-grid{
  display:grid;
  grid-template-columns:1fr;
  align-items:start;
  gap:1rem;
  width:100%;
}
.assessment-management-page .assessment-management-card{width:100%;min-width:0}
.assessment-management-page .assessment-management-card>header{
  display:grid;
  grid-template-columns:40px minmax(0,1fr) auto;
  align-items:start;
  gap:.75rem;
}
.assessment-management-page .assessment-management-card>header>em{
  grid-column:3;
  grid-row:1;
  align-self:center;
}
.assessment-management-page .assessment-management-form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:end!important;
  gap:1rem!important;
  width:100%;
}
.assessment-management-page .assessment-management-form label{width:100%;min-width:0}
.assessment-management-page .assessment-management-form label>span{font-size:.76rem}
.assessment-management-page .assessment-management-form label>small,
.assessment-management-page .assessment-management-form label span small{font-size:.68rem}
.assessment-management-page .assessment-details-card .assessment-management-form>button{
  width:220px;
  min-height:44px;
  justify-self:end;
}
.assessment-management-page .assessment-rule-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:1px;
}
.assessment-management-page .assessment-rule-panel{
  display:flex;
  min-width:0;
  min-height:330px;
  flex-direction:column;
}
.assessment-management-page .assessment-rule-panel>header{min-height:82px}
.assessment-management-page .assessment-rule-panel .assessment-management-form{
  display:flex!important;
  min-height:0;
  align-items:stretch!important;
  flex-direction:column!important;
  flex:1;
  gap:.85rem!important;
}
.assessment-management-page .assessment-rule-panel .assessment-management-form>button{
  width:100%;
  min-height:44px;
  margin-top:auto;
}
.assessment-management-page .result-retention-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:1.25rem;
}
.assessment-management-page .result-retention-body form{justify-self:end}
.assessment-management-page .result-retention-body button{min-width:220px}
.assessment-management-page .examifo-result-links .table-responsive{
  width:100%;
  margin:0;
  padding:0;
  overflow-x:auto;
}
.assessment-management-page .examifo-result-links table{min-width:760px;margin:0;border:0;border-radius:0}
.assessment-management-page .examifo-result-links th,
.assessment-management-page .examifo-result-links td{vertical-align:middle}
.assessment-management-page .examifo-result-links th:last-child,
.assessment-management-page .examifo-result-links td:last-child{text-align:right!important}
.assessment-management-page .examifo-result-links .inline-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end;
  flex-wrap:nowrap!important;
  gap:.4rem;
}
.assessment-management-page .examifo-result-links .secondary-action{width:auto;min-width:112px}
.assessment-management-page .learner-exception-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}
.assessment-management-page .learner-exception-grid .assessment-management-form{
  display:flex!important;
  align-items:stretch!important;
  flex-direction:column!important;
}
.assessment-management-page .learner-exception-grid .assessment-management-form>button{
  width:100%;
  min-height:44px;
  margin-top:auto;
}
.assessment-management-page .danger-card>form{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  padding:1rem 1.1rem;
}
.assessment-management-page .danger-card>form button{min-width:220px}

@media(max-width:1180px){
  .assessment-hub .assessment-layout.has-sidebar{grid-template-columns:1fr}
  .assessment-hub .assessment-side-panel{position:static;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)}
  .assessment-management-page .assessment-management-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .assessment-management-page .assessment-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .assessment-management-page .assessment-rule-panel:last-child{grid-column:1/-1;min-height:0;border-top:1px solid #e7ecf2!important;border-left:0!important}
}
@media(max-width:860px){
  .assessment-hub .assessment-page-heading,
  .assessment-management-page .assessment-management-heading{align-items:stretch;flex-direction:column}
  .assessment-hub .assessment-page-heading>.secondary-action{width:100%}
  .assessment-hub .assessment-next-step{grid-template-columns:44px minmax(0,1fr)}
  .assessment-hub .next-step-action{grid-column:1/-1;width:100%}
  .assessment-hub .examifo-overview{grid-template-columns:1fr}
  .assessment-hub .connection-actions{justify-content:flex-start}
  .assessment-hub .integration-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .assessment-hub .assessment-metrics{grid-template-columns:1fr}
  .assessment-hub .assessment-side-panel{grid-template-columns:1fr}
  .assessment-hub .assessment-section-nav{align-items:flex-start;flex-direction:column}
  .assessment-hub .assessment-section-nav>div{justify-content:flex-start}
  .assessment-hub .assessment-admin-footer{grid-template-columns:1fr}
  .assessment-hub .assessment-sync-actions{width:100%;min-width:0}
  .assessment-management-page .assessment-management-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .assessment-management-page .assessment-management-actions{grid-template-columns:1fr}
  .assessment-management-page .assessment-action-buttons{justify-content:stretch}
  .assessment-management-page .assessment-action-buttons form,
  .assessment-management-page .assessment-action-buttons>button{min-width:0;flex:1}
  .assessment-management-page .result-retention-body{grid-template-columns:1fr}
  .assessment-management-page .result-retention-body form,
  .assessment-management-page .result-retention-body button{width:100%;justify-self:stretch}
}
@media(max-width:620px){
  .assessment-hub .section-heading-row{align-items:stretch;flex-direction:column}
  .assessment-hub .section-heading-row>.primary-action{width:100%}
  .assessment-hub .assessment-card-main{grid-template-columns:42px minmax(0,1fr)}
  .assessment-hub .assessment-launch,
  .assessment-hub .assessment-unavailable{grid-column:1/-1;width:100%;margin:0}
  .assessment-hub .assessment-launch button{width:100%}
  .assessment-hub .assessment-sync-actions{grid-template-columns:1fr}
  .assessment-hub .assessment-section-nav a{flex:1 1 calc(50% - .4rem);justify-content:space-between}
  .assessment-hub .assessment-section-groups{padding:.7rem}
  .assessment-hub .assessment-section-heading{grid-template-columns:38px minmax(0,1fr);padding:.8rem}
  .assessment-hub .assessment-section-icon{width:38px;height:38px}
  .assessment-hub .assessment-section-count{grid-column:2;align-items:flex-start;flex-direction:row;gap:.3rem;min-width:0}
  .assessment-hub .assessment-section-count strong{font-size:.72rem}
  .assessment-hub .assessment-section-count small{margin:0}
  .assessment-hub .assessment-section-group>.assessment-stack{padding:.65rem}
  .assessment-management-page .assessment-management-summary,
  .assessment-management-page .assessment-management-nav,
  .assessment-management-page .assessment-rule-grid,
  .assessment-management-page .assessment-management-form,
  .assessment-management-page .learner-exception-grid{grid-template-columns:1fr}
  .assessment-management-page .assessment-action-buttons{align-items:stretch!important;flex-direction:column!important}
  .assessment-management-page .assessment-action-buttons form,
  .assessment-management-page .assessment-action-buttons>button{width:100%}
  .assessment-management-page .assessment-management-card>header{grid-template-columns:40px minmax(0,1fr)}
  .assessment-management-page .assessment-management-card>header>em{grid-column:2;grid-row:2;justify-self:start}
  .assessment-management-page .assessment-details-card .assessment-management-form>button,
  .assessment-management-page .danger-card>form button{width:100%;justify-self:stretch}
  .assessment-management-page .assessment-rule-panel,
  .assessment-management-page .assessment-rule-panel:last-child{grid-column:auto;min-height:0;border-left:0!important}
  .assessment-management-page .learner-exception-grid>form+form{border-top:1px solid #e7ecf2;border-left:0}
  .assessment-management-page .danger-card>form{align-items:stretch}
}

/* Unified section attendance matrix */
.attendance-unified-card{margin-bottom:1rem!important;padding:0!important;overflow:hidden}
.attendance-unified-heading{align-items:center;padding:1.05rem 1.15rem}
.attendance-heading-actions{display:flex;align-items:center;gap:.55rem}
.attendance-heading-actions>.secondary-action{min-height:38px;justify-content:center;white-space:nowrap}
.attendance-register-tools{border-top:1px solid #e5ebf2;background:#f8fafc}
.attendance-register-tools>summary{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1.15rem;color:#344d67;cursor:pointer;list-style:none}
.attendance-register-tools>summary::-webkit-details-marker{display:none}
.attendance-register-tools>summary>span{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:0 .65rem}
.attendance-register-tools>summary>span>i{display:grid;grid-row:1/3;width:34px;height:34px;place-items:center;border-radius:.52rem;background:#e7f1ff;color:#1263d6}
.attendance-register-tools>summary strong{font-size:.69rem}
.attendance-register-tools>summary small{color:#76859a;font-size:.58rem}
.attendance-register-tools>summary>i{color:#7b8999;transition:transform .18s}
.attendance-register-tools[open]>summary>i{transform:rotate(180deg)}
.attendance-register-tools>.attendance-create{display:grid;grid-template-columns:minmax(200px,1.5fr) 160px 115px auto;align-items:end;gap:.65rem;padding:0 1.15rem 1rem}
.attendance-register-settings{background:#fff}
.attendance-settings-body{display:flex;align-items:flex-end;gap:.75rem;padding:0 1.15rem 1rem}
.attendance-settings-body>form:first-child{display:grid!important;grid-template-columns:minmax(200px,1.4fr) 160px 115px auto;align-items:end!important;flex:1;gap:.65rem;margin:0!important}
.attendance-settings-body>form:last-child{margin:0!important}
.attendance-settings-body label{display:flex;min-width:0;flex-direction:column;gap:.28rem;color:#52657b;font-size:.58rem;font-weight:800}
.attendance-settings-body input{width:100%;min-height:42px}
.attendance-settings-body button{min-height:42px;justify-content:center;white-space:nowrap}
.attendance-grid-empty{min-height:180px;border-top:1px solid #e5ebf2}
.attendance-editing-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem 1.15rem;border-top:1px solid #dce7f3;border-bottom:1px solid #dce7f3;background:#edf6ff}
.attendance-editing-bar>span{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:0 .65rem}
.attendance-editing-bar>span>i{display:grid;grid-row:1/3;width:34px;height:34px;place-items:center;border-radius:.52rem;background:#1263d6;color:#fff}
.attendance-editing-bar strong{color:#214a74;font-size:.68rem}
.attendance-editing-bar small{color:#617b97;font-size:.57rem}
.attendance-editing-bar button{min-height:38px;white-space:nowrap}
.attendance-unified-form{margin:0!important}
.attendance-unified-form .attendance-matrix-scroll{max-height:68vh;border:0;border-radius:0}
.attendance-unified-table{min-width:max-content}
.attendance-unified-table .attendance-date-column{min-width:78px;max-width:90px;padding:.55rem .45rem}
.attendance-unified-table .attendance-date-column.is-editing{min-width:285px;max-width:285px;border-right:2px solid #7fb0e8;border-left:2px solid #7fb0e8;background:#f2f8ff}
.attendance-unified-table thead .attendance-date-column.is-editing{background:#dceeff}
.attendance-unified-table tbody tr:hover .attendance-date-column.is-editing{background:#eaf5ff}
.attendance-unified-table thead .attendance-date-column>a{display:flex;align-items:center;flex-direction:column;color:#405a75;text-decoration:none}
.attendance-unified-table thead .attendance-date-column>a:hover span{color:#1263d6}
.attendance-unified-table thead .attendance-date-column em{display:inline-flex;margin-top:.3rem;padding:.16rem .35rem;border-radius:999px;background:#e6f0fb;color:#3e648e;font-size:.48rem;font-style:normal;font-weight:850;text-transform:none}
.attendance-unified-table thead .attendance-date-column.is-editing em{background:#1263d6;color:#fff}
.attendance-status-buttons-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem}
.attendance-status-buttons-compact button{min-width:0;min-height:36px;padding:.25rem}
.attendance-status-buttons-compact button>span{width:20px;height:20px}
.attendance-status-buttons-compact button>small{font-size:.5rem}
.attendance-inline-note{width:100%;min-height:34px!important;margin-top:.35rem;padding:.35rem .45rem!important;font-size:.57rem!important}
.attendance-unified-table .attendance-percent-column{position:sticky;z-index:2;right:0;min-width:135px;max-width:135px;border-left:1px solid #dce5ee;background:#fff}
.attendance-unified-table thead .attendance-percent-column{z-index:5;background:#f4f7fb}
.attendance-unified-table tbody tr:hover .attendance-percent-column{background:#f8fbff}
.attendance-percent-column strong{display:block;color:#254764;font-size:.7rem}
.attendance-percent-column small{display:block;margin-top:.22rem;color:#7a8798;font-size:.48rem;white-space:normal}
.attendance-percent-track{display:block;height:4px;margin-top:.3rem;overflow:hidden;border-radius:999px;background:#e4eaf0}
.attendance-percent-track>i{display:block;height:100%;border-radius:inherit;background:#0b8d79}
.attendance-unified-form .attendance-save-bar{border-right:0;border-bottom:0;border-left:0;border-radius:0}

@media(max-width:900px){
  .attendance-unified-heading{align-items:stretch;flex-direction:column}
  .attendance-heading-actions{justify-content:space-between}
  .attendance-settings-body{align-items:stretch;flex-direction:column}
  .attendance-settings-body>form:first-child,.attendance-register-tools>.attendance-create{grid-template-columns:1fr 1fr}
  .attendance-settings-body>form:last-child,.attendance-settings-body>form:last-child button{width:100%}
}
@media(max-width:650px){
  .attendance-heading-actions{align-items:stretch;flex-direction:column}
  .attendance-heading-actions>.secondary-action{width:100%}
  .attendance-register-tools>.attendance-create,.attendance-settings-body>form:first-child{grid-template-columns:1fr}
  .attendance-register-tools>.attendance-create button,.attendance-settings-body>form:first-child button{width:100%}
  .attendance-editing-bar{align-items:stretch;flex-direction:column}
  .attendance-editing-bar button{width:100%}
  .attendance-unified-table .attendance-date-column.is-editing{min-width:230px;max-width:230px}
  .attendance-status-buttons-compact{grid-template-columns:1fr 1fr}
  .attendance-unified-table .attendance-percent-column{min-width:105px;max-width:105px}
}

/* Attendance interaction and visual alignment */
.attendance-readonly-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem 1.15rem;border-top:1px solid #e2e8ef;border-bottom:1px solid #e2e8ef;background:#f7f9fc}
.attendance-readonly-bar>span{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:0 .65rem}
.attendance-readonly-bar>span>i{display:grid;grid-row:1/3;width:34px;height:34px;place-items:center;border-radius:.52rem;background:#e8edf3;color:#53677e}
.attendance-readonly-bar strong{color:#304961;font-size:.68rem}
.attendance-readonly-bar small{color:#748397;font-size:.57rem}
.attendance-status-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}
.attendance-status-legend>span{display:inline-flex;align-items:center;gap:.27rem;padding:.28rem .45rem;border:1px solid currentColor;border-radius:999px;background:#fff;font-size:.52rem;font-weight:800}
.attendance-unified-table thead .attendance-date-column>span{color:#324a63;font-size:.61rem;font-weight:850;letter-spacing:0;text-transform:none}
.attendance-unified-table thead .attendance-date-column>small{min-height:1.2em;overflow:hidden;max-width:82px;margin:.12rem auto 0;text-overflow:ellipsis;white-space:nowrap}
.attendance-column-edit{display:inline-flex!important;width:auto!important;min-height:25px;align-items:center!important;justify-content:center;flex-direction:row!important;gap:.24rem;margin:.35rem auto 0;padding:.2rem .42rem;border:1px solid #b9cce0;border-radius:.4rem;background:#fff;color:#285d91!important;font-size:.5rem;font-weight:850;text-transform:none}
.attendance-column-edit:hover{border-color:#73a1d1;background:#eaf4ff;color:#174d82!important}
.attendance-column-edit:focus-visible{outline:3px solid rgba(18,99,214,.24);outline-offset:1px}
.attendance-unified-table thead .attendance-date-column em{align-items:center;gap:.22rem}
.attendance-code{border:1px solid transparent}
.attendance-code.status-present{border-color:#a7dbce;background:#e6f7f2;color:#087765!important}
.attendance-code.status-absent{border-color:#efc0bc;background:#fff0ee;color:#a83a32!important}
.attendance-code.status-late{border-color:#ead292;background:#fff6df;color:#8a6105!important}
.attendance-code.status-excused{border-color:#bfd0ec;background:#edf3ff;color:#315e9f!important}
.attendance-status-buttons-compact button{flex-direction:column;gap:.16rem;border-color:#d8e1eb;background:#fff;color:#5f7085}
.attendance-status-buttons-compact button>i{display:grid;width:21px;height:21px;place-items:center;border-radius:50%;background:#eef2f6;font-size:.66rem}
.attendance-status-buttons-compact .status-present>i{background:#e1f4ee;color:#087765}
.attendance-status-buttons-compact .status-absent>i{background:#ffebe9;color:#a83a32}
.attendance-status-buttons-compact .status-late>i{background:#fff0cf;color:#8a6105}
.attendance-status-buttons-compact .status-excused>i{background:#e8f0ff;color:#315e9f}
.attendance-status-buttons-compact button.is-selected{box-shadow:0 0 0 2px currentColor inset;font-weight:850}
.attendance-status-buttons-compact button:not(.is-selected):hover{border-color:#aebfd1;background:#f7fafc;color:#344e69}
.attendance-unified-form.is-readonly .attendance-unified-table tbody td{cursor:default}
.attendance-unified-table tbody td,.attendance-unified-table thead th{vertical-align:middle}
.attendance-unified-table .attendance-reg strong{font-variant-numeric:tabular-nums}

@media(max-width:760px){
  .attendance-readonly-bar{align-items:flex-start;flex-direction:column}
  .attendance-status-legend{width:100%}
}

/* Inline attendance editor: strong state contrast and stable controls */
.attendance-column-edit[hidden],[data-column-editing-indicator][hidden],[data-attendance-readonly-bar][hidden],[data-attendance-editing-bar][hidden],[data-attendance-save-bar][hidden]{display:none!important}
.attendance-editing-actions{display:flex;align-items:center;gap:.45rem}
.attendance-editing-actions button{min-width:118px;justify-content:center}
.attendance-column-edit.is-loading{pointer-events:none;opacity:.55}
.attendance-status-buttons-compact button.status-present{border-color:#8dcebe;background:#e8f7f2;color:#087765!important}
.attendance-status-buttons-compact button.status-absent{border-color:#e7aaa5;background:#fff0ee;color:#9f342d!important}
.attendance-status-buttons-compact button.status-late{border-color:#dfc16f;background:#fff5d9;color:#7d5705!important}
.attendance-status-buttons-compact button.status-excused{border-color:#aebfe4;background:#edf3ff;color:#2d5796!important}
.attendance-status-buttons-compact button small{color:inherit;font-weight:800}
.attendance-status-buttons-compact button.is-selected.status-present{border-color:#087765;background:#087765;color:#fff!important}
.attendance-status-buttons-compact button.is-selected.status-absent{border-color:#a83a32;background:#a83a32;color:#fff!important}
.attendance-status-buttons-compact button.is-selected.status-late{border-color:#946600;background:#946600;color:#fff!important}
.attendance-status-buttons-compact button.is-selected.status-excused{border-color:#315e9f;background:#315e9f;color:#fff!important}
.attendance-status-buttons-compact button.is-selected>i{background:rgba(255,255,255,.18);color:#fff}
.attendance-readonly-bar.is-saved{border-color:#a9dccc;background:#ecfaf6}
.attendance-readonly-bar.is-saved>span>i{background:#d6f2e9;color:#087765}
@media(max-width:650px){.attendance-editing-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.attendance-editing-actions button{min-width:0}}

/* Course components and assessment merge review */
.component-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;max-width:1200px;margin-inline:auto}
.component-workspace>form{display:grid!important;grid-template-columns:minmax(0,1fr);gap:20px;min-width:0;margin:0!important;padding:0!important}
.component-workspace>.component-page-heading{margin:0!important;padding:0!important;align-items:flex-end;gap:18px}
.component-page-heading>div{min-width:0;flex:1}
.component-page-heading h1{font-size:clamp(1.65rem,2.7vw,2.2rem);margin-bottom:8px}
.component-page-heading p{max-width:700px;margin:0;color:#61718a;font-size:.9rem}
.component-page-heading .eyebrow{margin-bottom:8px}
.component-workspace .assessment-management-card{min-width:0;background:#fff;border:1px solid #e0e7ef;box-shadow:0 3px 12px rgba(30,55,80,.025)}
.component-workspace .assessment-management-card>header{padding:20px 22px;align-items:center}
.component-workspace .assessment-management-card h2{font-size:1.05rem;font-weight:750;letter-spacing:-.025em}
.component-workspace .assessment-management-card header p{font-size:.8rem;line-height:1.55;margin-top:5px}
.component-workspace .assessment-management-form{grid-template-columns:repeat(2,minmax(0,1fr));padding:22px;gap:18px!important}
.component-workspace .assessment-management-form label>span{font-size:.83rem;font-weight:650}
.component-workspace .assessment-management-form label>small{font-size:.76rem;color:#61718a}
.component-workspace .notice-panel{margin:0;padding:16px;overflow-wrap:anywhere;font-size:.85rem;line-height:1.65}
.component-workspace .notice-panel strong{font-size:.88rem}
.component-workspace .component-validation.validation-summary-valid{display:none}
.component-validation ul{margin:0;padding-left:20px}
.component-overview{display:grid;grid-template-columns:1fr 1fr 1.6fr;gap:14px}
.component-overview article{display:flex;align-items:center;gap:14px;padding:17px 20px;background:#fff;border:1px solid #e0e7ef;border-radius:12px}
.component-overview article>i{color:#137e94;background:#e9f6f8;display:grid;place-items:center;width:40px;height:40px;border-radius:11px;font-size:1.2rem;flex-shrink:0}
.component-overview article>div{display:grid;gap:2px}
.component-overview strong{font-size:1.35rem;color:#233f56;line-height:1.3}
.component-overview article:last-child strong{font-size:.88rem}
.component-overview span{font-size:.76rem;color:#697b91}
.component-card-body{padding:22px}
.merge-confirm-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.merge-steps{display:flex;list-style:none;margin:0;padding:18px 22px;gap:26px;border-bottom:1px solid #e4eaf2;background:#fcfdff}
.merge-steps li{display:flex;align-items:center;gap:9px;color:#66768e;font-size:.78rem;line-height:1.4;flex:1}
.merge-steps b{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;border:1px solid #d9e2ed;font-size:.75rem;background:#fff}
.merge-steps li[aria-current="step"]{color:#106d81;font-weight:750}
.merge-steps li[aria-current="step"] b{background:#137a8d;border-color:#137a8d;color:#fff}
.merge-steps li.is-complete b{background:#e8f6f1;border-color:#cae7de;color:#08795e}
.component-workspace>.merge-page-steps{border:1px solid #e0e7ef;border-radius:12px}
.merge-assessment-list{border:0;padding:0;margin:2px 0;display:grid;gap:10px;min-width:0}
.merge-assessment-list legend{font-size:.88rem;font-weight:750;margin-bottom:12px}
.merge-assessment-choice,.merge-candidate{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px;padding:16px;border:1px solid #dce4ed;border-radius:10px;background:#fff;cursor:pointer;min-width:0;text-align:left;transition:border-color .12s,background .12s}
.merge-assessment-choice:hover,.merge-candidate:hover{border-color:#83b6c2;background:#fbfefe}
.merge-assessment-choice input,.merge-candidate input{width:18px!important;height:18px;flex:0 0 18px;margin-top:4px;accent-color:#137a8d}
.merge-assessment-choice>span{display:grid;gap:5px;min-width:0;overflow-wrap:anywhere}
.component-workspace .merge-assessment-choice strong{font-size:.9rem;font-weight:700;color:#233e58}
.merge-assessment-choice small{color:#65748a;font-size:.78rem}
.merge-assessment-choice em{color:#16667c;font-size:.7rem;font-weight:650;font-style:normal}
.merge-assessment-choice em[hidden]{display:none}
.merge-assessment-choice:has(input:checked),.merge-candidate:has(input:checked){border-color:#248398;background:#f0f9fa;box-shadow:0 0 0 1px #248398}
.merge-assessment-choice input[aria-disabled="true"]{opacity:.6;cursor:default}
.merge-form-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #e4eaf2;padding-top:18px}
.merge-form-footer p{margin:0;color:#61718a;font-size:.8rem}
.component-workspace .component-footnote{margin:0;color:#66788e;font-size:.78rem;line-height:1.6}
.component-footnote>i{margin-right:5px;color:#137a8d}
.component-workspace button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.component-workspace :is(a,button,input,select,summary):focus-visible{outline:3px solid #77c2d5;outline-offset:3px}
.component-definition-list{display:grid;gap:12px}
.component-definition-list details{border:1px solid #dfe7ef;border-radius:11px;overflow:hidden}
.component-definition-list summary{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;list-style:none}
.component-definition-list summary::-webkit-details-marker,.component-create>summary::-webkit-details-marker,.merge-included-assessments>summary::-webkit-details-marker{display:none}
.component-definition-title{display:grid;gap:4px;flex:1;min-width:0}
.component-definition-title strong{font-size:.95rem;color:#233e58;overflow-wrap:anywhere}
.component-definition-title small{font-size:.77rem;color:#66788e}
.component-grade-badge,.component-target-badge{font-size:.73rem;background:#edf4fa;color:#45617c;border-radius:7px;padding:6px 10px;white-space:nowrap}
.component-target-badge{font-size:.8rem}
.component-definition-list details[open]>summary{border-bottom:1px solid #e4eaf2;background:#fbfcfe}
.component-definition-list details[open]>summary>i{transform:rotate(180deg)}
.component-definition-body{padding:18px}
.component-source-links{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.component-source-links li{display:grid;gap:3px;font-size:.86rem}
.component-source-links small{color:#697b91;font-size:.76rem}
.component-workspace .component-edit-form{padding:18px 0 0}
.component-create{border:1px dashed #b8cbdc;border-radius:10px;margin-top:16px}
.component-create>summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;padding:16px 18px;color:#226980;font-size:.85rem}
.component-create>summary span{color:#687c91;font-size:.77rem;margin-left:auto}
.component-create[open]>summary{border-bottom:1px solid #e3eaf2}
.component-workspace .component-create form{padding:20px}
.component-empty{display:grid;justify-items:center;text-align:center;padding:38px 22px;color:#64778b;font-size:.86rem}
.component-empty>i{font-size:2rem;color:#59899b;margin-bottom:10px}
.component-empty h3{font-size:1.05rem;color:#2a4359;margin:0 0 7px}
.component-empty p{max-width:530px;margin:0 0 16px;line-height:1.65}
.component-empty.is-success>i{color:#128364}
.merge-included-assessments>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 22px;cursor:pointer;list-style:none}
.merge-included-assessments>summary>span{display:grid;gap:4px}
.merge-included-assessments strong{font-size:.9rem}
.merge-included-assessments small{font-size:.78rem;color:#66788e}
.merge-included-assessments>ul{padding:0 22px 18px}
.merge-notices{padding-top:0;display:grid;gap:12px}
.merge-notices ul{margin:8px 0 12px;padding-left:18px}
.merge-review-note{display:flex;align-items:flex-start;gap:10px;margin:0;color:#60748a;font-size:.8rem;line-height:1.65}
.merge-review-note>i{color:#377f94;padding-top:2px}
.merge-conflict-tools{display:flex;align-items:center;gap:18px;padding:18px 22px;border-bottom:1px solid #e4eaf2;flex-wrap:wrap}
.merge-search{position:relative;flex:1;min-width:220px}
.merge-search>i{position:absolute;left:13px;top:13px;color:#7b8ba0}
.merge-search input{width:100%;padding-left:36px!important}
.merge-unresolved-filter{display:flex;align-items:center;gap:7px;font-size:.78rem;white-space:nowrap}
.merge-unresolved-filter input{width:16px;height:16px;accent-color:#137a8d}
.merge-conflict-tools>strong{font-size:.8rem;color:#236d82;white-space:nowrap}
.merge-conflict-list{display:grid;gap:16px}
.merge-conflict{margin:0;padding:17px;border:1px solid #dfe7ef;border-radius:11px;min-width:0;background:#fff}
.merge-conflict legend{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:.88rem;padding:0 7px;max-width:100%;overflow-wrap:anywhere}
.merge-conflict legend strong{color:#213f58}
.merge-conflict legend span{font-size:.81rem;color:#66788e}
.merge-student-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:.74rem;color:#718096}
.merge-student-meta em{font-style:normal;color:#86651c}
.merge-conflict.is-resolved .merge-student-meta em{color:#178168}
.merge-candidate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.merge-candidate{align-items:center!important;padding:14px;gap:10px}
.merge-candidate input{margin:0}
.merge-candidate-copy{display:grid;gap:5px;min-width:0;flex:1}
.merge-candidate-copy strong{font-size:.84rem;font-weight:700;line-height:1.5;color:#233e58;overflow-wrap:anywhere}
.merge-candidate-copy small{font-size:.71rem;color:#66788e;line-height:1.55}
.merge-candidate-mark{display:grid;gap:2px;text-align:right;white-space:nowrap}
.merge-candidate-mark b{font-size:1.35rem;color:#176c80;line-height:1.3}
.merge-candidate-mark small{font-size:.68rem;color:#66788e}
.merge-action-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 22px;background:#fbfcfe;border-top:1px solid #e4eaf2}
.merge-action-bar>span{font-size:.77rem;color:#65788e}
.merge-action-bar>span>i{color:#157e79;margin-right:4px}
.component-workspace .merge-action-bar button{margin:0}
.merge-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.78rem;color:#65788e}
.merge-pagination>div{display:flex;gap:8px}
.merge-confirm-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0 0 22px}
.merge-confirm-summary>span{display:grid;gap:4px}
.merge-confirm-summary small{color:#6d7f93;font-size:.76rem}
.merge-confirm-summary strong{font-size:1rem;color:#233e58;overflow-wrap:anywhere}
.merge-choice-table-wrap{overflow:auto;max-height:450px;border:1px solid #e1e8f0;border-radius:9px;margin-bottom:22px}
.merge-choice-table{width:100%;border-collapse:collapse;text-align:left;font-size:.8rem;min-width:520px}
.merge-choice-table th{background:#f4f8fb;color:#577088;font-size:.73rem;position:sticky;top:0}
.merge-choice-table th,.merge-choice-table td{padding:12px 14px;border-bottom:1px solid #e5ebf2}
.merge-choice-table td:last-child{font-weight:750;color:#176c80}
[data-merge-conflicts][hidden],[data-merge-confirm][hidden],.merge-conflict[hidden],[data-conflict-pagination][hidden],[data-no-conflicts-match][hidden],[data-merge-validation][hidden]{display:none!important}
@media(max-width:900px){.component-overview{grid-template-columns:1fr 1fr}.component-overview article:last-child{grid-column:1/-1}.merge-candidate-grid{grid-template-columns:1fr}.merge-conflict-tools{gap:12px}.merge-search{flex-basis:100%}}
@media(max-width:650px){.component-workspace{gap:16px}.component-workspace>.component-page-heading{align-items:stretch;flex-direction:column}.component-workspace .assessment-management-card>header,.component-card-body,.component-workspace .assessment-management-form{padding:16px}.component-workspace .assessment-management-form{grid-template-columns:1fr}.component-page-heading h1{font-size:1.75rem}.component-overview{gap:10px}.component-overview article{padding:14px 12px;gap:10px}.component-overview article>i{width:32px;height:32px;font-size:1rem}.component-overview strong{font-size:1.2rem}.component-overview span{font-size:.71rem}.merge-steps{padding:14px 12px;gap:8px}.merge-steps li{flex-direction:column;align-items:flex-start;gap:6px;font-size:.68rem}.merge-form-footer,.merge-action-bar{align-items:stretch;flex-direction:column}.merge-action-bar{padding:16px}.merge-form-footer button,.merge-action-bar button{width:100%!important}.merge-conflict{padding:12px}.merge-candidate{padding:12px}.merge-conflict-tools{padding:16px}.component-definition-list summary{padding:14px;gap:8px;flex-wrap:wrap}.component-grade-badge{font-size:.67rem}.component-definition-body{padding:14px}.component-create>summary{flex-wrap:wrap}.component-create>summary span{margin-left:26px;flex-basis:100%}.merge-confirm-summary{grid-template-columns:1fr 1fr}.merge-pagination{align-items:stretch;flex-direction:column}.merge-pagination>div{display:grid;grid-template-columns:1fr 1fr}.component-workspace .notice-panel{font-size:.8rem}.component-workspace .component-target-badge{align-self:flex-start}.merge-included-assessments>summary{padding:16px}}
@media(prefers-reduced-motion:reduce){.merge-assessment-choice,.merge-candidate{transition:none}}
.admin-access-banner { position: sticky; top: 0; z-index: 2000; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .8rem 1.25rem; background: #fff3cd; color: #4b3900; border-bottom: 2px solid #d7a526; }
.admin-access-banner > div { display: grid; gap: .15rem; }
.admin-access-banner span { font-size: .85rem; }
.admin-access-banner form { margin: 0; }
.admin-access-banner button { white-space: nowrap; border: 1px solid #725800; border-radius: .5rem; padding: .5rem .8rem; background: #fff; color: #4b3900; font-weight: 700; }
@media(max-width: 600px) { .admin-access-banner { align-items: stretch; flex-direction: column; } }
