/* AIraut V8 — complete experience refinement. Visual layer only. */
:root{--a-paper:#f8f7f1;--a-white:#fffefa;--a-ink:#12304a;--a-muted:#657887;--a-teal:#087d75;--a-teal-dark:#075d59;--a-mint:#e3f2e9;--a-blue:#e8f1f8;--a-gold:#e9c66a;--a-line:rgba(18,48,74,.13);--a-shadow:0 18px 48px rgba(18,48,74,.065);--a-serif:'Playfair Display',Georgia,serif;--a-sans:'DM Sans',Arial,sans-serif}
html{scroll-behavior:smooth}body{font-family:var(--a-sans)!important;color:var(--a-ink)!important;background:var(--a-paper)!important;line-height:1.58!important;-webkit-font-smoothing:antialiased}body :where(p,small,.muted,.helper-text){color:var(--a-muted)}body :where(h1,h2,h3,h4){color:var(--a-ink);letter-spacing:-.035em}body :where(button,input,select,textarea){font:inherit}body :where(input,select,textarea){min-height:46px;border:1px solid var(--a-line)!important;border-radius:13px!important;background:var(--a-white)!important;padding:11px 14px!important;color:var(--a-ink)!important;max-width:100%}body :where(input,select,textarea):focus{outline:3px solid rgba(8,125,117,.13)!important;border-color:var(--a-teal)!important}
/* Navigation and consistent page frame */
:where(.platform-header,.site-header){position:sticky;top:0;z-index:50;min-height:76px;padding:10px clamp(18px,5vw,72px)!important;background:rgba(255,254,250,.94)!important;backdrop-filter:blur(16px);border-bottom:1px solid var(--a-line)!important;box-shadow:0 5px 24px rgba(18,48,74,.035)}:where(.platform-brand img,.platform-logo img,.brand img,.logo img){width:auto;max-height:48px;object-fit:contain}:where(.platform-header-right,.header-right){display:flex;align-items:center;gap:12px;flex-wrap:wrap}:where(.platform-role,.role-label,.student-label,.role){font-size:10px!important;letter-spacing:.14em!important;font-weight:800!important;color:var(--a-teal)!important;background:var(--a-mint)!important;border:0!important;border-radius:99px!important;padding:9px 13px!important}:where(.platform-back,.back-link){display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 16px!important;border:1px solid var(--a-line)!important;border-radius:99px!important;background:var(--a-white)!important;color:var(--a-ink)!important;text-decoration:none!important;font-size:13px!important;font-weight:700!important}:where(.platform-back,.back-link):hover{background:var(--a-ink)!important;color:white!important}
:where(main,.platform-main){width:min(1320px,calc(100% - 64px))!important;max-width:1320px!important;margin-inline:auto!important;padding-inline:0!important}
/* Shared editorial page introductions: purposeful, never oversized */
:where(.platform-intro,.dashboard-hero,.hero){position:relative;padding:clamp(42px,5.4vw,72px) 0 clamp(30px,4vw,48px)!important;margin:0!important;border:0!important;border-bottom:1px solid var(--a-line)!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;min-height:0!important}:where(.platform-eyebrow,.dashboard-eyebrow,.eyebrow,.small-label,.section-label){font-size:10px!important;letter-spacing:.19em!important;text-transform:uppercase;font-weight:800!important;color:var(--a-teal)!important;margin:0 0 16px!important}:where(.platform-intro h1,.dashboard-hero h1,.hero h1,.dashboard-intro h1){font-family:var(--a-serif)!important;font-size:clamp(48px,6vw,76px)!important;font-weight:600!important;line-height:.99!important;letter-spacing:-.06em!important;max-width:850px;margin:0!important}:where(.platform-intro-text,.dashboard-intro,.dashboard-lead,.hero p){font-size:clamp(16px,1.35vw,19px)!important;line-height:1.65!important;max-width:660px;margin:18px 0 0!important;color:var(--a-muted)!important}:where(.dashboard-hero h1 span){color:#12a7b7!important}
/* Admin dashboard */
.admin-dashboard-page{width:min(1320px,calc(100% - 64px))!important;padding:0!important;margin:0 auto!important}.admin-dashboard-page .platform-intro{padding-top:70px!important;padding-bottom:42px!important;align-items:flex-end}.admin-dashboard-page .admin-status{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:14px;font-weight:650;color:var(--a-muted);padding-bottom:8px}.admin-dashboard-page .status-dot{width:10px;height:10px;border-radius:50%;background:#20a58c;box-shadow:0 0 0 5px rgba(32,165,140,.12)}.admin-dashboard-page .admin-overview{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:28px 0 54px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;min-width:0}.admin-dashboard-page .admin-overview-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-width:0;min-height:148px;padding:24px 26px!important;border:1px solid var(--a-line)!important;border-radius:20px!important;background:var(--a-white)!important;box-shadow:0 8px 24px rgba(18,48,74,.035)!important}.admin-dashboard-page .admin-overview-label{font-family:var(--a-sans)!important;font-size:11px!important;letter-spacing:.14em!important;text-transform:uppercase;font-weight:800!important;color:var(--a-teal)!important;white-space:normal;overflow-wrap:anywhere}.admin-dashboard-page .admin-overview-item strong{font-family:var(--a-sans)!important;font-size:clamp(34px,3.2vw,46px)!important;line-height:1.05;color:var(--a-ink)!important;font-weight:650!important}.admin-dashboard-page .admin-overview-item small{font-size:13px!important;line-height:1.4}.admin-dashboard-page .admin-section{padding:0!important;margin:0 0 54px!important}.admin-dashboard-page .admin-section-heading{margin:0 0 20px!important;padding:0!important}.admin-dashboard-page .admin-section-heading h2{font-family:var(--a-serif)!important;font-size:clamp(32px,3.4vw,46px)!important;line-height:1.08!important;margin:0!important}.admin-dashboard-page .admin-management-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.admin-dashboard-page .admin-management-card{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;align-items:center!important;gap:18px!important;min-width:0;min-height:154px;padding:26px 28px!important;border:1px solid var(--a-line)!important;border-radius:22px!important;background:var(--a-white)!important;box-shadow:0 10px 30px rgba(18,48,74,.04)!important;text-decoration:none!important;overflow:hidden}.admin-dashboard-page .admin-management-card:hover{transform:translateY(-3px)!important;border-color:rgba(8,125,117,.35)!important;box-shadow:var(--a-shadow)!important}.admin-dashboard-page .admin-card-number{align-self:start;padding-top:5px;font-family:var(--a-sans)!important;font-size:11px!important;letter-spacing:.13em;color:var(--a-teal)!important}.admin-dashboard-page .admin-card-content{min-width:0}.admin-dashboard-page .admin-card-content h3{font-family:var(--a-serif)!important;font-size:clamp(22px,2vw,28px)!important;line-height:1.15!important;margin:0 0 7px!important}.admin-dashboard-page .admin-card-content p{font-size:14px!important;line-height:1.55!important;margin:0 0 15px!important;max-width:440px}.admin-dashboard-page .admin-card-link{display:inline-flex!important;align-items:center;gap:9px;background:transparent!important;color:var(--a-teal)!important;border:0!important;border-radius:0!important;padding:0!important;font-size:13px!important;font-weight:800!important;white-space:normal}.admin-dashboard-page .admin-management-card:hover .admin-card-link{color:var(--a-teal-dark)!important}.admin-dashboard-page .admin-activity-section{padding-top:30px!important;border-top:1px solid var(--a-line)}
/* Faculty dashboard: shorter hero, clear at-a-glance information */
body:has(.dashboard-hero) main:not(.platform-main){width:min(1280px,calc(100% - 64px))!important;max-width:1280px!important}.dashboard-hero{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr)!important;align-items:center!important;gap:clamp(30px,6vw,90px)!important;min-height:0!important;padding:clamp(38px,5vw,64px)!important;margin:24px 0 30px!important;border:1px solid rgba(8,125,117,.13)!important;border-radius:28px!important;background:linear-gradient(118deg,#fffefa 0%,#f1f8f2 100%)!important;box-shadow:var(--a-shadow)!important}.dashboard-hero h1{font-size:clamp(48px,5.7vw,72px)!important;max-width:680px!important}.dashboard-hero .dashboard-intro{font-size:17px!important;line-height:1.7!important;max-width:430px!important;margin:0!important;align-self:end}.dashboard-section{margin:30px 0 42px!important;padding:0!important}.dashboard-section .section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid var(--a-line)}.dashboard-section .section-heading>span{font-size:10px!important;letter-spacing:.17em!important;font-weight:800;color:var(--a-teal)}.dashboard-section .section-heading small{font-size:13px!important}.cohort-overview{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr)!important;gap:22px!important;padding:26px!important;border:1px solid var(--a-line)!important;border-radius:22px!important;background:var(--a-white)!important;box-shadow:var(--a-shadow)!important}.cohort-main h2{font-family:var(--a-serif)!important;font-size:clamp(25px,2.7vw,36px)!important}.cohort-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.stat-item{min-width:0;padding:18px!important;border-radius:16px!important;background:var(--a-mint)!important;border:1px solid rgba(8,125,117,.1)!important}.stat-item:nth-child(2n){background:var(--a-blue)!important}.faculty-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}.faculty-action{min-height:130px!important;padding:23px!important;align-items:flex-start!important}.faculty-action .action-content h2,.faculty-action .action-content h3{font-family:var(--a-serif)!important;font-size:24px!important}.faculty-action .action-content p{font-size:13px!important;line-height:1.55!important}.attention-section{margin-top:38px!important}.faculty-principle{background:linear-gradient(120deg,#e5f2e9,#edf4f8)!important}
/* Institution/admin directory controls and hit targets */
.admin-table-action{position:relative!important;z-index:2!important;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;min-width:88px;min-height:42px;padding:9px 15px!important;border-radius:99px!important;background:var(--a-mint)!important;color:var(--a-teal-dark)!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;cursor:pointer!important;pointer-events:auto!important;white-space:nowrap}.admin-table-action:hover,.admin-table-action:focus-visible{background:var(--a-teal)!important;color:#fff!important;outline:3px solid rgba(8,125,117,.14)}.admin-table td:last-child{position:relative}.admin-table-wrap,.admin-table-section,.table-wrap{max-width:100%;overflow-x:auto}.admin-table{min-width:760px}button,a,[role=button]{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid rgba(8,125,117,.3)!important;outline-offset:3px!important}
/* All detail pages: calmer spacing, readable labels and consistent panels */
:where(.admin-section,.dashboard-section,.activity-section,.feedback-section,.student-section,.module-section){margin-block:34px!important}:where(.admin-form-panel,.detail-panel,.detail-card,.content-card,.activity-card,.feedback-card,.module-card,.cohort-detail-panel,.insight){padding:clamp(20px,3vw,30px)!important;border:1px solid var(--a-line)!important;border-radius:21px!important;background:var(--a-white)!important;box-shadow:0 10px 30px rgba(18,48,74,.04)!important}:where(.admin-section-heading,.section-heading){margin-bottom:18px}:where(.admin-section-heading h2,.section-heading h2){font-family:var(--a-serif)!important;line-height:1.13!important}:where(.admin-table,table){font-size:13px}:where(th){font-size:10px!important;letter-spacing:.12em!important}:where(td){line-height:1.5}:where(.button,.btn,button[type=submit],input[type=submit],.primary-button,.admin-primary-button){min-height:44px;border-radius:99px!important;padding:11px 20px!important;background:var(--a-teal)!important;color:#fff!important;border:1px solid var(--a-teal)!important;font-weight:750!important;cursor:pointer}:where(.button,.btn,button[type=submit],input[type=submit],.primary-button,.admin-primary-button):hover{background:var(--a-teal-dark)!important;transform:translateY(-1px)}
/* Entry gateway and login: align them with the same brand system */
.role-entry-page{background:var(--a-paper)!important;color:var(--a-ink)!important;font-family:var(--a-sans)!important}.login-header{padding:18px clamp(20px,5vw,72px)!important;border-bottom:1px solid var(--a-line)}.login-logo img{width:112px!important}.role-entry{max-width:1320px!important;padding:clamp(48px,7vw,86px) 32px 90px!important}.role-entry-eyebrow{font-size:10px!important;letter-spacing:.19em!important;color:var(--a-teal)!important;margin-bottom:18px!important}.role-entry h1{font-family:var(--a-serif)!important;font-size:clamp(48px,6.4vw,78px)!important;line-height:1.02!important;letter-spacing:-.06em!important;font-weight:600!important;max-width:850px!important}.role-entry h1 span{color:#12a7b7!important}.role-entry-intro{font-size:17px!important;line-height:1.7!important;max-width:650px!important;margin-top:22px!important}.role-section{margin-top:48px!important}.role-section-heading{padding:16px 0!important;border-color:var(--a-line)!important}.role-section-heading span:first-child{font-size:10px!important;letter-spacing:.17em!important;color:var(--a-teal)!important}.role-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:13px!important;margin-top:20px!important}.role-option{min-height:190px!important;padding:24px!important;border:1px solid var(--a-line)!important;border-radius:19px!important;background:var(--a-white)!important}.role-option.active{background:var(--a-mint)!important;border-color:var(--a-teal)!important}.role-option h2{font-family:var(--a-serif)!important;font-size:25px!important;margin:32px 0 8px!important}.role-option p{font-size:13px!important;line-height:1.55!important}.login-panel{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr)!important;gap:0!important;margin-top:32px!important;border:1px solid var(--a-line)!important;border-radius:24px!important;overflow:hidden!important;background:var(--a-white)!important;box-shadow:var(--a-shadow)}.login-panel-main,.login-panel-context{padding:clamp(24px,4vw,44px)!important}.login-panel-context{background:linear-gradient(145deg,#e4f2e9,#e9f2f8)!important;border-left:1px solid var(--a-line)!important}.login-context-title{font-family:var(--a-serif)!important;font-size:clamp(27px,3vw,38px)!important;line-height:1.12!important}.role-entry-page :where(label){font-size:12px!important;font-weight:750!important;color:var(--a-ink)!important}.role-entry-page :where(input,select){width:100%;min-height:48px;border:1px solid var(--a-line)!important;border-radius:12px!important;background:#fffefa!important}.role-entry-page :where(button[type=submit]){width:auto;min-width:160px}
body:has(.platform-inner) .platform-main{align-items:flex-start!important;padding-top:clamp(48px,7vw,88px)!important}.platform-inner{max-width:1240px!important}.platform-intro{display:block!important;max-width:780px!important;border:0!important}.platform-intro h1{font-family:var(--a-serif)!important;font-size:clamp(48px,6.2vw,76px)!important;line-height:1!important}.role-pathways{grid-template-columns:repeat(4,minmax(0,1fr))!important;border-top:1px solid var(--a-line)!important;border-bottom:1px solid var(--a-line)!important}.role-pathways .role{min-height:220px!important;padding:26px!important;border-color:var(--a-line)!important}.role-name{font-family:var(--a-serif)!important;font-size:26px!important}.role:hover{background:var(--a-mint)!important}
@media(max-width:900px){.admin-dashboard-page .admin-overview{grid-template-columns:repeat(2,minmax(0,1fr))!important}.admin-dashboard-page .admin-management-grid,.faculty-actions{grid-template-columns:1fr!important}.dashboard-hero{grid-template-columns:1fr!important;gap:18px!important}.dashboard-hero .dashboard-intro{max-width:680px!important}.role-grid,.role-pathways{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cohort-overview{grid-template-columns:1fr!important}}
@media(max-width:600px){:where(main,.platform-main,.admin-dashboard-page,body:has(.dashboard-hero) main:not(.platform-main)){width:calc(100% - 32px)!important}.admin-dashboard-page .platform-intro{padding-top:42px!important;display:block!important}.admin-dashboard-page .admin-status{margin-top:22px}.admin-dashboard-page .admin-overview{gap:10px!important;margin:20px 0 38px!important}.admin-dashboard-page .admin-overview-item{min-height:120px;padding:17px!important}.admin-dashboard-page .admin-management-card{min-height:0;padding:21px!important;grid-template-columns:30px minmax(0,1fr)!important;gap:12px!important}.dashboard-hero{padding:28px 22px!important;margin-top:16px!important;border-radius:21px!important}.dashboard-hero h1{font-size:clamp(42px,12vw,58px)!important}.dashboard-section .section-heading{align-items:flex-start;flex-direction:column;gap:5px}.cohort-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.role-entry{padding:44px 18px 64px!important}.role-grid,.role-pathways{grid-template-columns:1fr!important}.role-option{min-height:150px!important}.role-option h2{margin-top:20px!important}.login-panel{grid-template-columns:1fr!important}.login-panel-context{border-left:0!important;border-top:1px solid var(--a-line)!important}.role-section-heading{flex-direction:column}.platform-header{gap:10px}.platform-header-right{gap:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.admin-table-action>*{pointer-events:none}.admin-table-action{gap:8px}
