/* EduHD faculty identity · #FA4616 · v1.1 */
:root{--brand:#FA4616;--brand-rgb:250,70,22;--brand-strong:#b52e0a;--brand-soft:#fff0e9;--brand-border:#f6d5c7;--ink:#352d36;--navy:#3b2930;--muted:#7f727b;--line:#eee5e1;--canvas:#faf7f5;--blue:var(--brand);--blue-dark:#8d2b15;--bs-primary:#FA4616;--bs-primary-rgb:250,70,22;--bs-link-color:#b52e0a;--bs-link-hover-color:#8a2308;--bs-body-color:var(--ink);--bs-border-color:var(--line)}
html{color-scheme:light}body.faculty-theme{background:var(--canvas)}a{color:var(--brand-strong)}a:hover{color:#872208}h1,h2,h3{color:var(--ink)}.btn-primary{--bs-btn-color:#29130d;--bs-btn-bg:#FA4616;--bs-btn-border-color:#FA4616;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#b52e0a;--bs-btn-hover-border-color:#b52e0a;--bs-btn-active-color:#fff;--bs-btn-active-bg:#9f2808;--bs-btn-active-border-color:#9f2808;--bs-btn-disabled-color:#29130d;--bs-btn-disabled-bg:#FA4616;--bs-btn-disabled-border-color:#FA4616;--bs-btn-focus-shadow-rgb:250,70,22;font-weight:600;box-shadow:0 4px 12px #fa461614}.btn-white{border-color:#e8dcd7;color:#685359}.btn-white:hover{border-color:#edb49e;color:var(--brand-strong);background:#fff7f3}.btn-light{color:#745f65;background:#f6eeeb;border-color:#f6eeeb}.btn-icon{border-color:#eaded8;color:#8c6e64;box-shadow:none}.btn-icon:hover{color:var(--brand-strong);background:var(--brand-soft)}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #fa46168c;outline-offset:3px}.skip-link{color:#29130d}.form-control:focus,.form-select:focus{border-color:#ef9a7c;box-shadow:0 0 0 .22rem #fa461617}.form-check-input:checked{background-color:var(--brand-strong);border-color:var(--brand-strong)}.form-check-input:focus{border-color:#e88361;box-shadow:0 0 0 .22rem #fa461617}.form-control,.form-select{color:#594b55;border-color:#e6dcd6}.form-control::placeholder{color:#8e8289}.form-label{color:#67545e}.form-text{color:#7d6f78}.alert{position:relative;z-index:1}
.sidebar,.app-shell,.error-card{position:relative}.sidebar{background:#fffdfa;border-color:#eee1da}.sidebar.offcanvas-lg{background:#fffdfa!important}.sidebar{position:fixed}.brand{color:#3e2931;padding-top:25px;padding-bottom:22px}.brand strong{font-size:1.3rem;letter-spacing:-.5px}.brand-light{color:var(--brand-strong)}.brand small{color:#9c6b58;font-size:.53rem;letter-spacing:1.45px}.faculty-mark{background:transparent!important;border-radius:0!important;border:0!important;box-shadow:none!important;width:49px;height:49px;position:relative}.faculty-mark img{width:100%;height:100%;object-fit:contain;display:block}.brand-mark:not(.faculty-mark){background:var(--brand);color:#29130d}.sidebar-context{color:#735d62;border-color:#efe5df}.sidebar-context small{color:#8b7d83}.context-dot{background:var(--brand);box-shadow:0 0 0 3px #fa461611}.nav-label{color:#967c73;font-size:.59rem}.nav-item{color:#77656e;font-size:.82rem}.nav-item:hover{background:#fff3ed;color:var(--brand-strong)}.nav-item.active{background:var(--brand-soft);color:#a92e0b}.nav-item.active:before{background:var(--brand);box-shadow:0 0 9px #fa46163b}.nav-count{background:#faeee7;color:#a56248}.security-note{color:#8c7776}.security-note .icon{color:#c47351}.security-note small{color:#8b7e84}.user-panel{color:#5e414b;border-color:#f0e4dd}.user-panel small{color:#8a757a}.user-panel>.icon{color:#aa7c69}.avatar{color:#a34727;background:#fff0e8;border-color:#f2d7c9}.topbar{position:relative;z-index:5;background:#fffdfbec;border-color:#ede2dc;backdrop-filter:blur(12px)}.topbar>.d-flex{min-width:0;flex:1}.breadcrumb-text{color:#8d7c82;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.breadcrumb-text>span{margin:0}.breadcrumb-text .workspace-label{color:#8d7c82}.breadcrumb-text .breadcrumb-divider{margin:0 12px;color:#c8aaa0}.breadcrumb-text strong{color:#69535d}.topbar-right{gap:13px;flex-shrink:0}.today{color:#8d777b}.role-badge{color:#a33e1d;background:#fff0e7}.role-badge.neutral{background:#edf5f3;color:#447a73}.motion-toggle{width:auto;min-width:36px;gap:6px;font-size:.68rem;padding:7px 9px;position:relative;z-index:2}.motion-toggle[hidden]{display:none!important}.motion-toggle[aria-pressed="true"]{color:#a73916;background:#fff1e9;border-color:#f1c9b8}.motion-toggle:disabled{opacity:.65;cursor:default}.main-content{position:relative;z-index:1}.page-heading p:not(.eyebrow){color:#897780}.eyebrow{color:#a16d58;letter-spacing:1.7px}.eyebrow-line{background:#e5ad97}.text-link{color:var(--brand-strong)}.text-link:hover{color:#842107}.count-pill{color:#a74d2c;background:#fff0e8;border-color:#f1d5c6}.outline-tag{color:#a35c43;border-color:#eed5c8;background:#fff9f5}.outline-tag .icon{color:#c65c32}.footer{color:#89767b;border-color:#ecded7;font-size:.65rem}.version{color:#9d4b2e;background:#f8e7de}.notice-banner{color:#b3613b;background:#fff2e9;border-color:#f4d9c6}.notice-banner strong{color:#92451f}.notice-banner p{color:#8c6e64}.surface,.stat-card,.module-card{border-color:#eee3dc;box-shadow:0 3px 12px #66371d03}.surface-heading{border-color:#f0e7e1}.surface-heading h2{color:#62484f}.surface-heading h2>.icon{color:#b46c50}.stat-caption{color:#89757a}.stat-value{color:#45313b}.stat-value small{color:#8c787d}.stat-bottom{border-color:#f2e9e3;font-size:.7rem;color:#8b757b}.stat-bottom a{color:#9f634c}.stat-bottom a:hover{color:#a92d0b}.blue{color:#c54c21;background:#fff0e6}.orange{color:#b76a17;background:#fff3de}.purple{color:#8f6b89;background:#f6edf3}.teal{color:#347e71;background:#eaf5ef}.module-card h3,.module-large h2{color:#5b3d43}.module-card>p{color:#88737a;font-size:.75rem}.module-card:hover{border-color:#ecbba3;box-shadow:0 8px 25px #a0501a0b}.module-bottom{border-color:#f2e8e2;color:#917c83;font-size:.7rem}.module-bottom a{color:#aa5839}.module-bottom a:hover{color:#902608}.module-number{color:#a97b65}.status-badge{color:#7b6a70;background:#f6f1ee;border-color:#eee5df;font-size:.65rem}.status-badge:before{background:#ad8e80}.status-badge.ready{color:#34785c;background:#edf7f1;border-color:#dbeee2}.status-badge.ready:before{background:#4e9673}.dot.gray{background:#ca987e}.workspace-note{background:#fff2e9;border-color:#f1d9c8}.workspace-note .eyebrow{color:#ae6a49}.workspace-note h2{color:#864b32}.workspace-note>p{color:#96735f}.checklist span{color:#906c5c}.checklist .icon{color:#bc7045}.workspace-note .btn{color:#a25737;border-color:#efcfb9}.activity-dot{background:var(--brand);box-shadow:0 0 0 4px #fff0e7}.activity-row{border-color:#f2e9e3}.activity-row strong{color:#745c65}.activity-row small,.activity-row time{color:#907d84}.surface-heading+.activity-list{background:transparent}.table{--bs-table-color:#705c65;--bs-table-border-color:#f0e7e1}.table>thead>tr>th{color:#8f7b7d;background:#fcf8f5;font-size:.74rem}.table>tbody>tr>td{overflow-wrap:anywhere}.table tbody tr:hover{background:#fffaf7}.person-name strong{color:#785243}.person-name small{color:#91777b}.code-text{color:#a05a3d}.table small.text-secondary{color:#8b767c!important}.pagination-bar{border-color:#f0e6df;color:#8c777e}.page-link{color:#a36245;border-color:#edd8cd}.page-item.active .page-link{color:#29130d;background:var(--brand);border-color:var(--brand)}.form-section-title{color:#754c3f}.form-section-title .icon{color:#c2704d}.section-divider{border-color:#dac8bd}.form-footer{border-color:#f0e4dd}.form-footer>span{color:#937b7e}.empty-icon{background:#fff0e7;color:#c87a54}.empty-state h3{color:#a06b55}.empty-state p{color:#997f7a}.empty-state>.icon{color:#c38f77}.planned-panel{background:#fff8f2;border-color:#efd6c4;color:#b28e73}.planned-panel h3{color:#9e6b4d}.planned-panel p{color:#aa8871}.integration-note{color:#b67b57}.integration-note strong{color:#a06d4b}.integration-note p{color:#aa8975}.role-description{background:#fff2e8;border-color:#f0dcc9}.role-description>.icon{color:#bd784e}.role-description strong{color:#9d5833}.role-description p{color:#a48167}.permission-table strong{color:#7e5e56}.permission-table .text-secondary{color:#9c827a!important}.report-total{color:#a94d28}.report-total small{color:#a58a7b}.report-bar>div:first-child{color:#987b72}.report-bar strong{color:#a96140}.bar-track{background:#f6ebe5}.bar-track span{background:var(--brand)}.profile-details dt{color:#a27a67}.profile-details dd{color:#7d5549}
/* The artwork is shown in its original proportions; HUD marks never cover its title. */
.faculty-hero{background:#261c24;border:1px solid #56302c;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.3fr);padding:0;min-height:0;isolation:isolate;box-shadow:0 12px 28px #6a2d1b0c}.faculty-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#4e241c80,transparent 64%),linear-gradient(#fa46160b 1px,transparent 1px),linear-gradient(90deg,#fa46160b 1px,transparent 1px);background-size:auto,30px 30px,30px 30px;pointer-events:none}.faculty-hero .welcome-copy{padding:28px 30px;min-width:0}.welcome-tag{color:#f2b095;font-size:.65rem;letter-spacing:1.1px}.welcome-tag>span{background:var(--brand);box-shadow:0 0 9px #fa461680}.welcome-copy h2{color:#fff6f0;font-size:clamp(1.15rem,1.65vw,1.7rem);overflow-wrap:anywhere}.welcome-copy p{color:#d6bcb2;font-size:.84rem;line-height:1.9;margin-top:10px}.welcome-link{color:#ffad8a;font-size:.8rem}.welcome-link:hover{color:#ffd4bf}.hero-system-label{display:flex;align-items:center;gap:10px;font-size:.47rem;letter-spacing:1.5px;color:#af7864;margin-top:25px}.hero-system-label i{height:1px;flex:1;max-width:30px;background:#aa4c2c}.faculty-hero-visual{margin:0;position:relative;align-self:stretch;display:flex;align-items:center;background:#221b24;min-width:0}.faculty-hero-visual img,.auth-banner img{width:100%;height:auto;display:block;object-fit:contain}.faculty-hero-visual picture{display:block;width:100%}.sci-fi-frame{position:relative;isolation:isolate;overflow:hidden}.sci-fi-frame:after{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid #ffc49d45;box-shadow:inset 0 0 18px #fa461615;z-index:2}.hud-corner{position:absolute;width:25px;height:25px;border-color:#ffb18a;border-style:solid;z-index:3;pointer-events:none}.hud-top{top:12px;left:12px;border-width:2px 0 0 2px}.hud-bottom{bottom:12px;right:12px;border-width:0 2px 2px 0}
/* Ambient motion uses composited transform/opacity only, with no canvas or animation library. */
.ambient-field{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0;contain:strict}.ambient-grid{position:absolute;inset:0;background-image:linear-gradient(#fa46160a 1px,transparent 1px),linear-gradient(90deg,#fa46160a 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(130deg,transparent 15%,#000 65%,transparent);opacity:.65}.ambient-orbit{position:absolute;width:620px;height:620px;right:-240px;top:-210px;border:1px solid #fa46161c;border-radius:50%;animation:eduhd-orbit 52s linear infinite}.ambient-orbit:before{content:'';position:absolute;inset:34px;border:1px dashed #fa461624;border-radius:50%}.ambient-orbit:after{content:'';position:absolute;top:50%;left:28px;width:7px;height:7px;background:var(--brand);border-radius:50%;box-shadow:0 0 14px #fa46164d;opacity:.35}.ambient-orbit-two{top:auto;bottom:-320px;right:auto;left:160px;width:570px;height:570px;animation-direction:reverse;animation-duration:70s;opacity:.55}.ambient-scan{position:absolute;inset:-10% 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,#fa461629,transparent);animation:eduhd-scan 22s linear infinite;opacity:.35}.ambient-node{position:absolute;width:5px;height:5px;right:7%;top:30%;background:var(--brand);box-shadow:0 0 0 5px #fa46160c;border-radius:50%;animation:eduhd-pulse 6s ease-in-out infinite}.ambient-node-two{top:78%;right:37%;animation-delay:3s}.page-heading{animation:eduhd-enter .45s ease-out both}.welcome-banner{animation:eduhd-enter .55s ease-out both}.stats-row>div{animation:eduhd-enter .5s ease-out both}.stats-row>div:nth-child(2){animation-delay:.05s}.stats-row>div:nth-child(3){animation-delay:.1s}.stats-row>div:nth-child(4){animation-delay:.15s}.module-card{position:relative;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}.module-card:after{content:'';position:absolute;top:0;left:18px;right:18px;height:2px;background:linear-gradient(90deg,transparent,#fa4616c9,transparent);transform:scaleX(.35);opacity:0;transition:transform .3s ease,opacity .3s ease;pointer-events:none}.module-card:hover:after,.module-card:focus-within:after{transform:scaleX(1);opacity:1}@media(hover:hover) and (pointer:fine){.module-card:hover{transform:translateY(-3px)}}.sci-fi-frame .hud-corner{animation:eduhd-hud 8s ease-in-out infinite}.hud-bottom{animation-delay:4s!important}.welcome-tag>span{animation:eduhd-pulse 5s ease-in-out infinite}.faculty-mark img{transition:transform .3s ease}.brand:hover .faculty-mark img{transform:translateY(-1px)}
@keyframes eduhd-orbit{to{transform:rotate(360deg)}}@keyframes eduhd-scan{from{transform:translateY(0)}to{transform:translateY(120vh)}}@keyframes eduhd-pulse{0%,100%{opacity:.4}50%{opacity:.85}}@keyframes eduhd-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes eduhd-hud{0%,100%{opacity:.5}50%{opacity:.95}}
html[data-motion="off"] *,html[data-motion="off"] *:before,html[data-motion="off"] *:after{animation:none!important;transition:none!important}html[data-page-hidden="true"] *,html[data-page-hidden="true"] *:before,html[data-page-hidden="true"] *:after{animation-play-state:paused!important}
/* Sign-in carries the full faculty identity. */
.login-story{background:#281c24;border-right:1px solid #71432f;padding:28px 36px}.brand-white,.brand-white:hover{color:#fff0e5}.brand-white small{color:#d8a58c}.brand-white .faculty-mark{width:51px;height:51px}.login-story-content{padding:35px 0;max-width:760px;margin:auto 0}.auth-banner{margin:0 0 26px;border-radius:12px;box-shadow:0 18px 42px #10090d3b}.auth-banner picture{display:block}.eyebrow.light{color:#df9b76}.login-story h1{font-size:clamp(1.5rem,2.6vw,2.7rem);line-height:1.55;margin:15px 0 14px;letter-spacing:-.6px;color:#fff5e9}.login-story h1>span{color:#ff9d73}.login-story p{color:#c5aaa1;font-size:.87rem}.story-chips{margin-top:22px}.story-chips span{border-color:#d3835936;background:#fa461609;color:#d4a891;font-size:.66rem}.story-footer{color:#c18a70;font-size:.53rem;letter-spacing:1.5px}.story-orbit{border-color:#fa461622;box-shadow:0 0 0 70px #fa461604,0 0 0 140px #fa461603;pointer-events:none;animation:eduhd-orbit 90s linear infinite}.login-form-panel{background:#fffdfbde;padding:65px 30px 70px}.login-form-wrap{max-width:390px;position:relative;z-index:1;animation:eduhd-enter .55s ease-out both}.auth-faculty-signature{display:flex;align-items:center;gap:16px;margin-bottom:28px}.auth-faculty-signature>picture{width:86px;flex-shrink:0}.auth-faculty-signature img{display:block;width:86px;height:auto;border-radius:9px;border:1px solid #eadfd7;background:#fbf8f4;box-shadow:0 6px 16px #8751220b}.auth-faculty-signature>div>span{display:block;font-size:.59rem;color:#a18475;line-height:1.8;margin-top:5px}.auth-faculty-signature .signature-kicker{color:#b95a32;font-size:.65rem;letter-spacing:1.4px;margin:0 0 5px}.auth-faculty-signature strong{font-size:1.04rem;line-height:1.7;color:#705042;font-weight:600}.tiny-label{color:#a8765e;font-size:.59rem}.login-form-wrap h2{color:#613e35;font-size:1.8rem}.login-form-wrap>.text-secondary{color:#937c74!important}.login-help{color:#a88b7e}.login-help p>span{color:#a48d83}.login-copyright{color:#a99385}.password-toggle{color:#aa6140}.auth-motion-control{position:absolute;top:20px;right:24px;z-index:2}.error-card{border-color:#ecd7ca;box-shadow:0 12px 40px #a1491c08}
@media(min-width:1600px){.faculty-hero{grid-template-columns:minmax(300px,.9fr) minmax(0,1.2fr)}.faculty-hero .welcome-copy{padding:35px 38px}.login-story{padding:35px 52px}}
@media(max-width:1199px){.faculty-hero{grid-template-columns:minmax(225px,.95fr) minmax(0,1.1fr)}.faculty-hero .welcome-copy{padding:22px}.welcome-copy h2{font-size:1.2rem}.hero-system-label{font-size:.42rem;gap:6px;margin-top:20px}.topbar-right{gap:9px}.topbar .motion-toggle [data-motion-label]{display:none}.login-story{padding:27px}.auth-faculty-signature{margin-bottom:23px}.brand{padding-left:20px;padding-right:20px}}
@media(max-width:991px){.faculty-hero{grid-template-columns:minmax(220px,.9fr) minmax(0,1.2fr)}.login-shell{grid-template-columns:46% 54%}.login-story{padding:25px 22px}.login-story-content{padding:30px 0}.login-story h1{font-size:1.8rem}.story-chips{gap:8px}.auth-faculty-signature{gap:12px}.auth-faculty-signature strong{font-size:.93rem}.auth-faculty-signature>picture,.auth-faculty-signature img{width:72px}.login-form-panel{padding-left:24px;padding-right:24px}.motion-toggle [data-motion-label]{display:none}.topbar .motion-toggle{width:36px;padding:7px}.topbar-right{gap:8px}.ambient-orbit{width:460px;height:460px;right:-250px}.ambient-orbit-two{left:-250px;bottom:-250px;opacity:.3}}
@media(max-width:767px){.page-heading{gap:15px}.heading-actions{gap:8px}.page-heading>.btn,.heading-actions .btn{min-height:42px}.faculty-hero{display:flex;flex-direction:column-reverse;align-items:stretch;border-radius:12px}.faculty-hero-visual{display:block;align-self:auto;width:100%}.faculty-hero .welcome-copy{padding:23px 23px 24px}.welcome-tag{font-size:.59rem;letter-spacing:.8px;margin-bottom:10px}.welcome-copy h2{font-size:1.3rem}.welcome-copy p{font-size:.81rem;max-width:none;margin-bottom:14px}.welcome-copy p br{display:none}.welcome-link{font-size:.78rem}.hero-system-label{margin-top:19px;font-size:.45rem}.faculty-hero .sci-fi-frame{border-bottom:1px solid #a85b3a4d}.module-card>p{font-size:.79rem}.module-card h3{font-size:.94rem}.module-bottom{font-size:.74rem;padding:14px 0}.stat-value{font-size:1.9rem}.stat-caption{font-size:.75rem}.stat-card{padding:15px 13px 0}.stat-top{gap:5px}.stat-top .icon-tile{width:35px;height:35px;border-radius:10px}.stat-bottom{font-size:.64rem}.filter-bar>.form-select{min-width:0;width:calc(50% - 4px);max-width:100%}.table>thead>tr>th{font-size:.72rem}.table>tbody>tr>td{padding:14px 16px}.table-actions .btn{min-height:38px}.form-footer>.btn{min-height:44px}.form-control,.form-select{font-size:1rem;min-height:46px}.form-control::placeholder{font-size:.83rem}.form-label{font-size:.86rem}.permission-table{min-width:780px}.permission-table .form-check-input{width:20px;height:20px}.login-shell{display:block}.login-story{min-height:0;padding:22px}.brand-white{padding:0}.brand-white .faculty-mark{width:43px;height:43px}.login-story-content{padding:22px 0 0;margin:0;display:flex;flex-direction:column}.auth-banner{margin:0;border-radius:10px;width:100%}.login-story h1{font-size:1.35rem;line-height:1.6;margin:18px 0 0;max-width:none;display:none}.login-story h1 br{display:none}.login-story h1>span{margin-left:0}.login-story .eyebrow.light{display:none}.login-story-content p,.story-chips,.story-footer{display:none}.login-form-panel{padding:56px 23px 67px;background:#fffdfbd9}.auth-faculty-signature{gap:15px;margin-bottom:24px}.auth-faculty-signature>picture,.auth-faculty-signature img{width:69px}.auth-faculty-signature strong{font-size:.98rem}.auth-faculty-signature>div>span{font-size:.59rem}.tiny-label{font-size:.55rem}.login-form-wrap h2{font-size:1.6rem}.login-form-wrap>.text-secondary{font-size:.79rem}.login-form-wrap .form-control{min-height:49px}.login-form-wrap .btn-primary{min-height:50px}.auth-motion-control{top:12px;right:18px}.auth-motion-control .motion-toggle{height:32px;min-width:32px;padding:5px 7px}.login-copyright{font-size:.58rem}.ambient-grid{background-size:36px 36px;opacity:.35}.ambient-scan{display:none}.ambient-orbit-two,.ambient-node-two{display:none}.workspace-note{padding:23px}.page-heading{animation-duration:.3s}}
@media(max-width:575px){.breadcrumb-text .workspace-label,.breadcrumb-text .breadcrumb-divider{display:none}.breadcrumb-text strong{max-width:145px;display:block;overflow:hidden;text-overflow:ellipsis;font-size:.76rem}.topbar>.d-flex{gap:10px!important}.topbar .role-badge{font-size:.58rem;padding:4px 7px}.topbar{gap:10px}.page-heading h1{overflow-wrap:anywhere}.page-heading>div:first-child{min-width:0;max-width:100%}.notice-banner{padding:15px}.notice-banner p{overflow-wrap:anywhere}.pagination-bar{flex-wrap:wrap}.heading-actions .btn{white-space:normal}.auth-faculty-signature strong{font-size:.92rem}.stat-bottom span{overflow-wrap:anywhere}.stat-top{flex-wrap:wrap}.stat-caption{font-size:.72rem}}
@media(max-width:359px){.topbar .role-badge{display:none}.topbar{padding:0 13px}.main-content{padding-left:13px;padding-right:13px}.stat-top{gap:8px}.stat-caption{font-size:.71rem}.stat-value small{margin-left:5px}.stat-bottom{font-size:.61rem}.faculty-hero .welcome-copy{padding:20px}.welcome-copy h2{font-size:1.15rem}.welcome-tag{letter-spacing:.35px;font-size:.55rem}.hero-system-label{font-size:.41rem}.login-story{padding:19px}.login-form-panel{padding-left:20px;padding-right:20px}.auth-faculty-signature{gap:12px}.auth-faculty-signature>picture,.auth-faculty-signature img{width:61px}.auth-faculty-signature strong{font-size:.87rem}.auth-faculty-signature>div>span:last-child{font-size:.53rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ambient-scan,.ambient-node{display:none}.ambient-orbit{border-style:solid}}
@media print{.ambient-field,.motion-toggle,.faculty-hero,.auth-faculty-signature{display:none!important}body.faculty-theme{background:#fff}.app-shell{margin:0}.topbar,.sidebar{display:none!important}.page-heading{animation:none!important}.surface{box-shadow:none}.bar-track span{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

.btn-outline-primary{--bs-btn-color:var(--brand-strong);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand);--bs-btn-hover-border-color:var(--brand);--bs-btn-hover-color:#29130d;--bs-btn-active-bg:var(--brand);--bs-btn-active-border-color:var(--brand);--bs-btn-active-color:#29130d}

.sidebar-dismiss{position:absolute;top:22px;right:9px;z-index:3;width:36px;height:36px}.sidebar-dismiss~.brand{padding-right:50px}@media(min-width:992px){.sidebar-dismiss~.brand{padding-right:20px}}@media(max-width:991px){.topbar .btn-icon{width:44px;height:44px;min-width:44px}.sidebar-dismiss{width:44px;height:44px;top:22px;right:8px}.sidebar .brand strong{font-size:1.13rem}.sidebar .brand small{font-size:.45rem;letter-spacing:1px}.sidebar .brand{gap:8px;padding-left:18px}}

/* System default v1.3 · dark navigation and ambient canvas, white content surfaces. */
body.faculty-dark{--canvas:#0c121d;background:var(--canvas);color:var(--ink)}
.faculty-dark .sidebar.offcanvas-lg{background:#111925!important;border-color:#ffffff12;z-index:1045}
.faculty-dark .sidebar .brand,.faculty-dark .sidebar .brand:hover{color:#f4f6fc}
.faculty-dark .sidebar .brand-light{color:#ff9b77}
.faculty-dark .sidebar .brand small{color:#a3b0c7}
.faculty-dark .faculty-mark{isolation:isolate}
.faculty-dark .faculty-mark:before{content:'';position:absolute;inset:-5px;border-radius:50%;background:radial-gradient(circle,#ffffff38 0,transparent 70%);pointer-events:none;z-index:-1}
.faculty-dark .faculty-mark img{filter:drop-shadow(0 0 2px #ffffffd9) drop-shadow(0 0 9px #ffffff80);position:relative}
.faculty-dark .sidebar-context{color:#d5dbe8;border-color:#ffffff14}
.faculty-dark .sidebar-context small{color:#a4b0c5}
.faculty-dark .nav-label{color:#8e9eb8}
.faculty-dark .nav-item{color:#bfc9db}
.faculty-dark .nav-item:hover{background:#ffffff08;color:#fff1e9}
.faculty-dark .nav-item.active{background:#fa46161c;color:#ffae8e}
.faculty-dark .nav-item.active:before{background:#FA4616;box-shadow:0 0 13px #fa461675}
.faculty-dark .nav-count{background:#253044;color:#c5cfe0}
.faculty-dark .security-note{color:#b4c0d5}
.faculty-dark .security-note .icon{color:#ff9c75}
.faculty-dark .security-note small{color:#8d9db6}
.faculty-dark .user-panel{color:#eff3fc;border-color:#ffffff14}
.faculty-dark .user-panel small{color:#a0aec4}
.faculty-dark .user-panel>.icon{color:#9facbf}
.faculty-dark .user-panel .avatar{background:#243046;color:#ffb99c;border-color:#ffffff16}
.faculty-dark .sidebar-dismiss{background:#1e293a;border-color:#ffffff1c;color:#d9e1ef}
.faculty-dark .topbar{background:#111925ed;border-color:#ffffff13}
.faculty-dark .breadcrumb-text,.faculty-dark .breadcrumb-text .workspace-label{color:#98a8c3}
.faculty-dark .breadcrumb-text .breadcrumb-divider{color:#52637e}
.faculty-dark .breadcrumb-text strong{color:#e5eaf4}
.faculty-dark .topbar .today{color:#a4b3ca}
.faculty-dark .topbar .btn-icon{background:#1e293a;border-color:#ffffff1a;color:#c3cee1}
.faculty-dark .topbar .btn-icon:hover{background:#2b3447;border-color:#ff936959;color:#ffb296}
.faculty-dark .topbar .motion-toggle[aria-pressed="true"]{background:#fa46161a;border-color:#fa7d4c54;color:#ffad8a}
.faculty-dark .topbar .role-badge{background:#fa46161c;color:#ffb59b}
.faculty-dark .page-heading h1,.faculty-dark .section-heading h2{color:#f2f5fc}
.faculty-dark .page-heading p:not(.eyebrow),.faculty-dark .section-heading p{color:#9dacc5}
.faculty-dark .page-heading .eyebrow{color:#f49f7e}
.faculty-dark .eyebrow-line{background:#e6825870}
.faculty-dark .section-heading>.text-link{color:#ffac89}
.faculty-dark .section-heading .count-pill{background:#fa46161c;border-color:#fa7d4b42;color:#ffaf8d}
.faculty-dark .stat-card,.faculty-dark .module-card,.faculty-dark .surface{background:#fff;border-color:#e7e8ee;box-shadow:0 8px 24px #0306101a}
.faculty-dark .module-card:hover{border-color:#f4a687;box-shadow:0 8px 24px #0000002b,0 0 0 1px #fa461612}
.faculty-dark .workspace-note{background:#fff;border-color:#e7e8ee}
.faculty-dark .faculty-hero{background:#fff;border-color:#e7e8ee;box-shadow:0 10px 28px #0306102b}
.faculty-dark .faculty-hero:before{background:linear-gradient(90deg,#fff9f5,transparent 72%),linear-gradient(#fa461607 1px,transparent 1px),linear-gradient(90deg,#fa461607 1px,transparent 1px);background-size:auto,30px 30px,30px 30px}
.faculty-dark .faculty-hero .welcome-copy{background:#fffaf8ed}
.faculty-dark .faculty-hero .welcome-tag{color:#ad4a28}
.faculty-dark .faculty-hero .welcome-copy h2{color:#4a3033}
.faculty-dark .faculty-hero .welcome-copy p{color:#84666b}
.faculty-dark .faculty-hero .welcome-link{color:#b52e0a}
.faculty-dark .faculty-hero .welcome-link:hover{color:#7e2209}
.faculty-dark .faculty-hero .hero-system-label{color:#a27660}
.faculty-dark .faculty-hero .hero-system-label i{background:#e7ad91}
.faculty-dark .ambient-grid{background-image:linear-gradient(#fa46161f 1px,transparent 1px),linear-gradient(90deg,#fa46161f 1px,transparent 1px);opacity:.68;mask-image:linear-gradient(125deg,transparent 2%,#000 48%,#000 85%,transparent)}
.faculty-dark .ambient-orbit{border-color:#fa46164d;opacity:.85}
.faculty-dark .ambient-orbit:before{border-color:#ffad7540}
.faculty-dark .ambient-orbit:after{opacity:.8;background:#ffb389;box-shadow:0 0 6px #fff2e3,0 0 20px #fa4616a8}
.faculty-dark .ambient-orbit-two{opacity:.65}
.faculty-dark .ambient-scan{background:linear-gradient(90deg,transparent,#fa46165c,#ffe3bd70,#fa46165c,transparent);opacity:.6}
.faculty-dark .ambient-node{background:#ffb189;box-shadow:0 0 0 5px #fa46161c,0 0 15px #fa461687}
.faculty-dark .footer{color:#9caac3;border-color:#ffffff16}
.faculty-dark .footer .version{background:#253048;color:#d5deed}
@media(max-width:767px){.faculty-dark .ambient-grid{opacity:.5}.faculty-dark .ambient-orbit{opacity:.7}.faculty-dark .faculty-hero .welcome-copy{background:#fffaf8}.faculty-dark .faculty-hero .sci-fi-frame{border-bottom-color:#ead4c6}}
@media(prefers-reduced-motion:reduce){.faculty-dark .ambient-node{display:none}.faculty-dark .ambient-orbit{opacity:.45}}
@media print{body.faculty-dark{background:#fff}.faculty-dark .page-heading h1,.faculty-dark .section-heading h2{color:#222}.faculty-dark .page-heading p:not(.eyebrow),.faculty-dark .section-heading p{color:#555}.faculty-dark .surface,.faculty-dark .stat-card,.faculty-dark .module-card{box-shadow:none}}

/* Shared content surfaces remain white on the default dark canvas. */
.faculty-dark .role-description,.faculty-dark .notice-banner{background:#fff;border-color:#e7e8ee;box-shadow:0 6px 20px #03061012}
.faculty-dark .integration-note{background:#fff;border:1px solid #e7e8ee;border-radius:11px}
.faculty-dark .login-story{background:#111925;border-right-color:#ffffff16}
.faculty-dark .login-form-panel{background:#fff}
.faculty-dark .error-card{background:#fff;border-color:#e7e8ee;box-shadow:0 12px 40px #03061040}
.login-role-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:#f7f2ef;padding:5px;border-radius:11px;border:1px solid #eadfd8}
.login-role-pill{display:flex;align-items:center;justify-content:center;margin:0;cursor:pointer;border-radius:8px;padding:7px 6px;font-size:.74rem;font-weight:600;color:#78646a;transition:background .18s ease,color .18s ease,box-shadow .18s ease;text-align:center;user-select:none}
.login-role-pill input{position:absolute;opacity:0;pointer-events:none}
.login-role-pill span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.login-role-pill .icon{width:15px;height:15px}
.login-role-pill:hover{color:var(--brand-strong);background:#fff7f3}
.login-role-pill.active{background:#fff;color:var(--brand-strong);box-shadow:0 2px 8px #59261114;border:1px solid #f2cab9}
.login-credential-notice{display:flex;align-items:flex-start;gap:10px;padding:11px 13px;border-radius:11px;background:#fff4ec;border:1px solid #f5cdb8;color:#7a381d;font-size:.76rem;line-height:1.55}
.login-credential-notice>.icon{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:2px}
.login-credential-notice strong{display:block;color:#a1330d;font-weight:700;margin-bottom:2px;font-size:.79rem}
.login-credential-notice span{display:block;color:#7d5342}
.avatar.has-photo{padding:0;overflow:hidden;border:2px solid #ffffffd9;box-shadow:0 4px 12px #0f172a1f}
.avatar.has-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.portal-hero-avatar{width:64px;height:64px;border-radius:18px;font-size:1.4rem;flex-shrink:0}
@media(max-width:480px){.login-role-tabs{grid-template-columns:repeat(2,1fr)}}
@media print{body.faculty-dark{background:#fff}.faculty-dark .role-description,.faculty-dark .notice-banner,.faculty-dark .integration-note{box-shadow:none}}
