@media screen{
    .adullam-control-body,.adullam-student-portal{--portal-bg:#f4f4f7;--portal-ink:#242039;--portal-muted:#716d82;--portal-line:#e4e1eb;--portal-brand:#211454;--portal-soft:#f2eef9;--portal-navy:#14123a;--bg:var(--portal-bg);--line:var(--portal-line);--muted:var(--portal-muted);--ink:var(--portal-ink);background:var(--portal-bg);color:var(--portal-ink);font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:14px;line-height:1.5}
    .adullam-control-body [hidden],.adullam-student-portal [hidden],.portal-drawer [hidden]{display:none!important}
    .portal-skip-link{position:fixed;left:16px;top:-80px;z-index:100;padding:12px 18px;border-radius:8px;background:#fff;color:#211454}
    .portal-skip-link:focus{top:12px}
    .adullam-control-body .admin-sidebar{width:230px;background:var(--portal-navy)}
    .adullam-control-body .admin-main{margin-left:230px}
    .adullam-control-body .admin-sidebar nav{padding:8px 14px}
    .adullam-control-body .admin-sidebar nav a{padding:10px 12px;margin-bottom:3px;border-radius:8px;font-size:13px;font-weight:500;letter-spacing:normal}
    .adullam-control-body .admin-sidebar nav>small{font-size:11px;padding:18px 12px 7px;letter-spacing:.06em}
    .adullam-control-body .admin-topbar{min-height:76px;padding-inline:28px;background:#fff;border-bottom:1px solid var(--portal-line)}
    .adullam-control-body .admin-topbar h1{font-family:inherit;font-size:23px;font-weight:700;letter-spacing:-.02em}
    .adullam-control-body .admin-topbar p,.adullam-control-body .top-actions a,.adullam-control-body .status-dot{font-size:12px}
    .adullam-control-body .admin-content{max-width:1480px;margin-inline:auto;padding:28px}
    .adullam-control-body .admin-card{border:1px solid var(--portal-line);border-radius:12px;background:#fff;box-shadow:none}
    .adullam-control-body .card-heading{padding:20px;gap:16px;align-items:center;flex-wrap:wrap}
    .adullam-control-body .card-heading h2{font-family:inherit;font-size:17px;font-weight:700;line-height:1.4}
    .adullam-control-body .card-heading p{font-size:13px;line-height:1.6}
    .adullam-control-body .card-heading>a{font-size:13px;font-weight:600;color:var(--portal-brand)}
    .adullam-control-body .admin-content :where(p){font-size:13px;line-height:1.6}
    .adullam-control-body .admin-content :where(small){font-size:12px;line-height:1.5;letter-spacing:normal}
    .adullam-control-body .field-grid{gap:18px;padding:20px}
    .adullam-control-body .field-grid label,.adullam-control-body .admin-content td label{font-size:13px;font-weight:600;text-transform:none;letter-spacing:normal;line-height:1.5}
    .adullam-control-body .field-grid :is(input:not([type=checkbox]):not([type=radio]),select,textarea),.adullam-control-body td :is(input:not([type=checkbox]),textarea){box-sizing:border-box;max-width:100%;padding:10px 12px;border:1px solid var(--portal-line);border-radius:8px;background:#fbfafc;font-family:inherit;font-size:14px;line-height:1.5}
    .adullam-control-body :is(input[type=checkbox],input[type=radio]){accent-color:var(--portal-brand)}
    .adullam-control-body .admin-button,.portal-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;width:auto;min-height:40px;padding:9px 16px;border:1px solid var(--portal-brand);border-radius:9px;background:var(--portal-brand);color:#fff;font-family:inherit;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;cursor:pointer}
    .adullam-control-body .admin-button.small,.portal-button.small{min-height:36px;padding:5px 11px;font-size:13px;border-radius:8px}
    .adullam-control-body .admin-button.secondary,.adullam-control-body .admin-button.light,.portal-button.secondary{background:#fff;border-color:var(--portal-line);color:var(--portal-brand)}
    .adullam-control-body .admin-button.danger{color:#be342c;background:#fff;border-color:#e8c9c6}
    .adullam-control-body .field-grid>.admin-button{justify-self:start;align-self:end}
    .adullam-control-body .admin-content td details>summary{display:inline-flex;align-items:center;padding:7px 12px;border:1px solid var(--portal-line);border-radius:8px;list-style:none;cursor:pointer;font-size:13px;font-weight:600}
    .adullam-control-body .admin-content td details>summary::-webkit-details-marker{display:none}
    .adullam-control-body .admin-content td details[open]>summary{margin-bottom:12px;background:var(--portal-soft)}
    .adullam-control-body .admin-content td details form{display:grid;gap:12px;min-width:220px;max-width:320px}
    .adullam-control-body .table-wrap{overflow-x:auto;border-radius:0 0 12px 12px}
    .adullam-control-body .admin-content table{width:100%;border-collapse:collapse}
    .adullam-control-body .admin-content th{padding:12px 16px;font-size:12px;font-weight:600;letter-spacing:normal;text-transform:none;background:#faf9fc}
    .adullam-control-body .admin-content td{padding:15px 16px;font-size:13px;line-height:1.5;vertical-align:middle}
    .adullam-control-body .admin-content td strong{font-size:13px}
    .adullam-control-body .admin-content td small{font-size:12px;overflow-wrap:anywhere}
    .adullam-control-body .badge{padding:4px 10px;border-radius:99px;font-size:11px;font-weight:600;letter-spacing:normal;text-transform:none;white-space:nowrap}
    .adullam-control-body .stat-grid{gap:14px;margin-bottom:24px}
    .adullam-control-body .stat-grid>article{padding:20px;border:1px solid var(--portal-line);border-radius:12px;background:#fff;box-shadow:none}
    .adullam-control-body .stat-grid strong{font-size:29px;color:var(--portal-brand)}
    .adullam-control-body .stat-grid :is(small,article>span,article>a){font-size:12px;letter-spacing:normal;text-transform:none}
    .adullam-control-body .welcome-banner{padding:26px;border-radius:12px}
    .adullam-control-body .welcome-banner h2{font-family:inherit;font-size:26px;line-height:1.3}
    .adullam-control-body .welcome-banner>div>span{font-size:12px;letter-spacing:.05em}
    .adullam-control-body .request-row{padding:16px 20px;gap:14px}
    .adullam-control-body :is(.request-row,.quick-card) strong{font-size:14px}
    .adullam-control-body :is(.request-row p,.request-row small,.quick-card small){font-size:12px}
    .adullam-control-body .settings-heading h2{font-size:16px}
    .adullam-control-body .settings-heading :is(p,span){font-size:12px}
    .adullam-control-body .student-directory-person :is(img,span){border-radius:8px}
    .adullam-control-body .student-record-facts dt{font-size:11px}
    .adullam-control-body .student-record-facts dd{font-size:13px}
    .adullam-control-body .student-generated-docs strong{font-size:15px}
    .adullam-control-body .student-generated-docs :is(span,small){font-size:12px}
    .adullam-control-body .student-record-heading>a{font-size:13px}
    .adullam-control-body :is(.requirement-list,.document-submissions) strong{font-size:14px}
    .adullam-control-body :is(.requirement-list,.document-submissions) small{font-size:12px}
    .adullam-control-body .document-submissions :is(textarea,select){padding:9px 11px;border:1px solid var(--portal-line);border-radius:8px;font-size:13px;min-width:0;max-width:100%}
    .adullam-control-body .adullam-team-admin-list strong{font-size:15px}
    .adullam-control-body .adullam-team-admin-list p,.adullam-control-body .adullam-team-admin-actions :is(a,button){font-size:12px}
    .portal-table-tools,.portal-management-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 20px}
    .portal-table-tools input{width:min(420px,100%);padding:10px 12px;border:1px solid var(--portal-line);border-radius:9px;font-family:inherit;font-size:14px;background:#fff}
    .portal-table-count{font-size:12px;color:var(--portal-muted)}
    .portal-management-actions{padding:0 0 18px;justify-content:flex-end}
    .portal-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--portal-line);margin-bottom:18px}
    .portal-tab{padding:11px 16px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--portal-muted);font-family:inherit;font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer}
    .portal-tab[aria-selected=true]{border-bottom-color:var(--portal-brand);color:var(--portal-brand)}
    .adullam-control-body .portal-tab-layout{display:block;grid-template-columns:none}
    .portal-configuration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
    .portal-tabs~.settings-form{max-width:none}
    .adullam-control-body #portal-panel-settings-private-link{display:block;padding:22px}
    #portal-panel-settings-private-link h2{font-size:18px;margin-top:0}
    #portal-panel-settings-private-link form{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
    [role=tabpanel]{scroll-margin-top:96px}
    .adullam-student-portal .portal-tabs{margin-bottom:22px}
    @media(max-width:800px){.portal-configuration-grid{grid-template-columns:1fr}}
    .adullam-control-body .document-admin-grid[data-portal-tabs-ready]{display:block}
    .portal-drawer{position:fixed;inset:0 0 0 auto;box-sizing:border-box;width:min(560px,100%);max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:#fff;color:#242039;box-shadow:-12px 0 50px #17113026;font-family:inherit}
    .portal-drawer[open]{display:flex;flex-direction:column}
    .portal-drawer::backdrop{background:#100d2b88}
    .portal-drawer>header,.portal-drawer>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid #e4e1eb}
    .portal-drawer>header h2{font-size:18px;margin:0}
    .portal-drawer>footer{justify-content:flex-end;border-top:1px solid #e4e1eb;border-bottom:0;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}
    .portal-drawer-body{flex:1;min-height:0;padding:22px;overflow-y:auto}
    .portal-drawer-body>.admin-card{border:0;box-shadow:none;padding:0}
    .portal-drawer-body .card-heading{padding:0 0 18px}
    .portal-drawer-body .card-heading h2{display:none}
    .portal-drawer .field-grid{padding:0;grid-template-columns:1fr}
    .portal-drawer .field-grid label{font-size:13px}
    .portal-drawer .field-grid :is(input:not([type=checkbox]),select,textarea){font-size:14px;padding:10px 12px;border:1px solid #e4e1eb;border-radius:8px}
    .portal-drawer-open{overflow:hidden}
    .adullam-student-portal .portal-student-main{min-height:100vh}
    .adullam-student-portal.student-portal-signed-in .portal-student-main{margin-left:230px}
    .portal-student-sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:230px;display:flex;flex-direction:column;padding:24px 14px;background:var(--portal-navy);color:#d0ccec;overflow-y:auto}
    .portal-sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:0 10px 28px}
    .portal-sidebar-brand a{display:grid;gap:3px;color:#fff}
    .portal-sidebar-brand strong{font-size:23px}
    .portal-sidebar-brand span{color:#ada8ce;font-size:11px}
    .portal-nav-label{padding:10px 12px;color:#9690bd;font-size:11px;letter-spacing:.05em;text-transform:uppercase}
    .portal-student-sidebar nav{display:grid;gap:4px}
    .portal-student-sidebar nav a{padding:11px 13px;border-radius:9px;font-size:14px;font-weight:500}
    .portal-student-sidebar nav a.active,.portal-student-sidebar nav a:hover{background:#24204e;color:#fff}
    .portal-student-sidebar nav a.active{box-shadow:inset 3px 0 #ff7651}
    .portal-student-profile{display:flex;gap:10px;align-items:center;margin-top:auto;padding:24px 8px 0;border-top:1px solid #ffffff18}
    .portal-avatar{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:10px;background:#332c60;font-weight:700}
    .portal-student-profile>div{min-width:0}
    .portal-student-profile strong{display:block;font-size:12px;overflow-wrap:anywhere}
    .portal-student-profile small{display:block;font-size:11px;color:#aaa4ca;overflow-wrap:anywhere}
    .portal-sidebar-close,.portal-menu-toggle{display:none}
    .adullam-student-portal .student-header .portal-menu-toggle{padding:7px 11px;border:1px solid var(--portal-line);border-radius:8px;background:#fff;color:var(--portal-ink);font-size:13px}
    .portal-menu-backdrop{position:fixed;inset:0;z-index:25;padding:0;border:0;background:#100d2b88}
    .adullam-student-portal .student-header{min-height:76px;gap:18px;padding:16px 28px;background:#fff;color:var(--portal-ink);border-bottom:1px solid var(--portal-line)}
    .adullam-student-portal .student-header>a strong{font-size:22px}
    .adullam-student-portal .student-header>a span{color:var(--portal-muted);font-size:11px}
    .portal-page-title{display:grid;gap:2px;margin-right:auto}
    .portal-page-title strong{font-size:18px}
    .adullam-student-portal .portal-page-title span{font-size:11px;color:var(--portal-muted);letter-spacing:normal;text-transform:none}
    .adullam-student-portal .student-header .portal-button{min-height:36px;padding:6px 12px;border:1px solid var(--portal-line);border-radius:8px;background:#fff;color:var(--portal-ink);font-size:13px}
    .adullam-student-portal .student-shell{width:min(1180px,calc(100% - 56px))}
    .adullam-student-portal :is(.student-welcome,.course-heading,.lesson-heading,.registration-hero){padding-top:30px;padding-bottom:24px}
    .adullam-student-portal :is(.student-welcome,.course-heading,.lesson-heading,.registration-hero) h1{font-family:inherit;font-size:clamp(26px,3vw,34px);font-weight:700;line-height:1.25;letter-spacing:-.025em}
    .adullam-student-portal :is(.student-welcome,.course-heading,.lesson-heading,.registration-hero) p{font-size:14px;line-height:1.6}
    .adullam-student-portal :is(.student-welcome>span,.course-heading small,.registration-hero small){display:block;font-size:11px;letter-spacing:.05em;color:var(--portal-muted)}
    .portal-student-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:28px}
    .portal-student-stats article{padding:18px 20px;background:#fff;border:1px solid var(--portal-line);border-radius:12px}
    .portal-student-stats strong{display:block;font-size:28px;color:var(--portal-brand);line-height:1.3}
    .portal-student-stats span{font-size:13px;color:var(--portal-muted)}
    .portal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
    .portal-section-heading h2{margin:0;font-size:19px}
    .portal-section-heading p{margin:5px 0 0;font-size:13px;color:var(--portal-muted)}
    .portal-section-heading>.portal-button{min-height:36px;font-size:13px;padding:6px 12px;background:#fff;color:var(--portal-brand);border-color:var(--portal-line)}
    .adullam-student-portal .course-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));padding-bottom:40px}
    .adullam-student-portal .course-card{display:flex;flex-direction:column;min-height:280px;padding:22px;border-radius:12px;transition:border-color .15s,box-shadow .15s}
    .adullam-student-portal .course-card:hover{border-color:#b8acd0;box-shadow:0 4px 16px #21145409}
    .adullam-student-portal .course-card h2{font-family:inherit;font-size:19px;line-height:1.4;margin:10px 0}
    .adullam-student-portal .course-card small{font-size:11px;color:var(--portal-muted)}
    .adullam-student-portal .course-card p{font-size:13px;line-height:1.6;min-height:0;flex:1}
    .adullam-student-portal .course-card>div{height:6px;margin:20px 0 9px;border-radius:99px;overflow:hidden}
    .adullam-student-portal .course-card i{background:var(--portal-brand)}
    .adullam-student-portal .course-card>span{font-size:12px;line-height:1.6}
    .adullam-student-portal .course-card>.portal-course-action{align-self:flex-start;margin-top:18px;padding:7px 12px;border:1px solid var(--portal-line);border-radius:8px;color:var(--portal-brand);font-size:13px;font-weight:600}
    .adullam-student-portal :is(.document-card,.course-material-card,.video-layout aside,.onboarding-grid>a,.registration-form,.student-auth form){border-radius:12px}
    .adullam-student-portal :is(.document-card,.onboarding-grid>a) h2,.adullam-student-portal .video-layout aside h2{font-family:inherit;font-size:20px;line-height:1.4}
    .adullam-student-portal .course-material-card h3{font-family:inherit;font-size:18px;line-height:1.4}
    .adullam-student-portal :is(.document-card,.onboarding-grid>a,.course-material-card)>p{font-size:13px;line-height:1.6}
    .adullam-student-portal .document-card small{font-size:12px}
    .adullam-student-portal .document-card-heading small{font-size:11px;letter-spacing:.03em}
    .adullam-student-portal :is(.document-status,.badge){padding:4px 10px;font-size:11px;white-space:nowrap}
    .adullam-student-portal .document-card form label{font-size:13px;font-weight:600}
    .adullam-student-portal .document-card input{padding:12px;border-radius:8px;font-size:13px}
    .adullam-student-portal :is(.document-card button,.document-template-link,.student-primary,.video-layout button,.student-auth button){display:inline-flex;align-items:center;justify-content:center;justify-self:start;box-sizing:border-box;width:auto;min-height:38px;padding:8px 14px;border:1px solid var(--portal-brand);border-radius:8px;background:var(--portal-brand);color:#fff;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5;cursor:pointer}
    .adullam-student-portal .document-template-link{background:#fff;color:var(--portal-brand);border-color:var(--portal-line)}
    .adullam-student-portal .document-note{border-radius:8px;background:#fff2e9;font-size:13px}
    .adullam-student-portal .document-current{border-radius:8px}
    .adullam-student-portal .onboarding-grid>a{padding:22px}
    .adullam-student-portal .onboarding-grid :is(small,strong){font-size:12px}
    .adullam-student-portal .lesson-list>a{border-radius:10px;margin-bottom:10px;border-bottom:1px solid var(--portal-line);padding:18px}
    .adullam-student-portal .lesson-list h2{font-family:inherit;font-size:17px}
    .adullam-student-portal .lesson-list :is(p,span){font-size:13px}
    .adullam-student-portal .secure-video{border-radius:12px}
    .adullam-student-portal .video-layout aside>p,.adullam-student-portal .question-list :is(small,span,blockquote){font-size:12px}
    .adullam-student-portal .video-layout textarea{border-radius:8px;font-size:14px}
    .adullam-student-portal .semester-tabs a{border-radius:10px;min-width:210px;padding:14px 16px}
    .adullam-student-portal .semester-tabs small{font-size:12px}
    .adullam-student-portal .registration-summary{border-radius:9px;background:var(--portal-soft);font-size:13px}
    .adullam-student-portal .registration-summary small{font-size:11px;letter-spacing:.03em;color:var(--portal-muted)}
    .adullam-student-portal .registration-form fieldset{border-radius:9px;overflow:hidden}
    .adullam-student-portal .course-choice b{font-size:14px}
    .adullam-student-portal :is(.course-choice small,.course-choice p,.registration-actions p){font-size:12px}
    .adullam-student-portal .course-choice:has(input:checked){background:#f5f2fb}
    .adullam-student-portal .course-choice:has(input:disabled){cursor:default}
    .adullam-student-portal .student-auth h1{font-family:inherit;font-size:29px;font-weight:700;line-height:1.25}
    .adullam-student-portal .student-auth label{font-size:13px;letter-spacing:normal;text-transform:none}
    .adullam-student-portal .student-auth input{padding:11px 12px;border-radius:8px;font-size:14px}
    .adullam-student-portal .student-auth button{width:100%;min-height:42px}
    .adullam-student-portal .student-flash{border-radius:8px;font-size:13px;width:min(1180px,calc(100% - 56px))}
    .adullam-control-body :is(button,a,input,select,textarea):focus-visible,.adullam-student-portal :is(button,a,input,select,textarea):focus-visible{outline:3px solid #a899d3;outline-offset:3px}
    @media(max-width:1100px){.adullam-control-body .document-submissions article{grid-template-columns:minmax(0,1fr) auto}.adullam-control-body .document-submissions article>form{grid-column:1/-1;flex-wrap:wrap}.adullam-student-portal :is(.video-layout,.document-grid){grid-template-columns:1fr}}
    @media(max-width:800px){.adullam-control-body .admin-main{margin-left:0}.adullam-control-body .admin-content{padding:20px}.adullam-control-body .admin-topbar{padding-inline:20px}.adullam-student-portal.student-portal-signed-in .portal-student-main{margin-left:0}.portal-student-sidebar[data-mobile-ready]{transform:translateX(-100%)}.portal-student-sidebar.is-open{transform:none}.portal-menu-toggle{display:inline-flex;align-items:center;min-height:36px;padding:7px 11px;border:1px solid var(--portal-line);border-radius:8px;background:#fff;color:var(--portal-ink);font-size:13px;cursor:pointer}.portal-sidebar-close{display:block;width:34px;height:34px;border:1px solid #ffffff30;border-radius:8px;background:transparent;color:#fff;font-size:24px;cursor:pointer}.adullam-student-portal .student-header{padding:14px 20px}.portal-page-title strong{font-size:16px}.portal-student-sidebar:not([data-mobile-ready]){position:static;width:100%;padding:16px 20px}.portal-student-sidebar:not([data-mobile-ready]) :is(.portal-sidebar-brand,.portal-student-profile,.portal-nav-label){display:none}.portal-student-sidebar:not([data-mobile-ready]) nav{display:flex;gap:8px;flex-wrap:wrap}}
    @media(max-width:560px){.adullam-control-body .admin-content{padding:16px}.adullam-control-body .admin-topbar h1{font-size:18px}.adullam-control-body .welcome-banner{padding:22px}.adullam-control-body .welcome-banner h2{font-size:23px}.adullam-control-body .field-grid{padding:16px}.adullam-control-body .student-export-actions{flex-wrap:wrap}.adullam-student-portal .student-shell{width:calc(100% - 32px)}.portal-student-stats{gap:8px}.portal-student-stats article{padding:14px 10px}.portal-student-stats strong{font-size:23px}.portal-student-stats span{font-size:11px}.portal-section-heading{align-items:flex-start}.portal-section-heading>.portal-button{min-height:36px}.adullam-student-portal .document-card{padding:20px}.adullam-student-portal .student-auth{padding:20px}.adullam-student-portal .student-auth form{padding:26px}.portal-page-title span{display:none}.adullam-student-portal .student-header{gap:10px;padding-inline:16px}.adullam-student-portal .student-header .portal-button{font-size:12px;padding-inline:10px}.portal-drawer-body{padding:18px}.portal-tab{padding:11px 12px;font-size:13px}}
    @media(prefers-reduced-motion:reduce){.adullam-student-portal .course-card{transition:none}}
}
@media print{.portal-student-sidebar,.portal-menu-backdrop,.portal-menu-toggle,.portal-skip-link{display:none!important}.portal-student-main{margin:0!important}.portal-student-main>.student-header{display:none!important}.portal-drawer{display:none!important}}
