/* Academy-only reference-inspired workspace. Other DAXON services retain their theme. */
.academy-header-search-wrap:empty{display:none}
body.academy-theme{background:linear-gradient(135deg,#e7d5fb,#e0def6);--academy-purple:#3e225b;--academy-soft:#f5f4f7}
.academy-theme .app-layout{border:0;background:#3e225b;gap:0;padding:0;margin:20px;border-radius:22px;box-shadow:0 12px 40px #32174716;--rail:112px;min-height:calc(100dvh - 40px)}
.academy-theme .app-layout.nav-expanded{--rail:238px}
.academy-theme .sidebar{left:20px;top:20px;bottom:20px;background:linear-gradient(#3e225b 60%,#542257);border-radius:22px 0 32px 22px;padding:27px 12px 16px;width:var(--rail)}
.academy-theme .sidebar>.logo-link{margin-bottom:36px;min-height:34px}
.academy-theme .sidebar nav a{border-radius:23px;min-height:54px;color:#f0e8f6;font-size:10px}
.academy-theme .sidebar nav a.active{color:#4c245e;background:#f5f4f7;border-radius:24px 0 0 24px;margin-right:-12px;padding-right:16px;box-shadow:none}
.academy-theme .sidebar .admin-nav-group h2{color:#d6c1e7}
.academy-theme .app-main{background:#f5f4f7;border-radius:0 22px 22px 0;min-width:0;overflow:hidden;min-height:calc(100dvh - 40px)}
.academy-theme .app-topbar{height:102px;background:#3e225b;color:white;border:0;padding:0 30px;gap:20px;position:relative}
.academy-theme .workspace-brand{background:none;padding:0;display:inline-flex}
.academy-theme .workspace-brand .brand{filter:brightness(0) invert(1);width:130px}
.academy-theme .menu-trigger{color:white;background:#ffffff12;border-radius:12px;min-width:40px;min-height:40px}
.academy-theme .breadcrumb{display:none}
.academy-theme .academy-header-search-wrap{flex:1;min-width:0;max-width:620px;margin:auto}
.academy-theme .academy-header-search{display:flex;align-items:center;gap:12px;border-radius:30px;background:#faf9fc;color:#a39aa9;padding:6px 10px 6px 20px;min-width:0;margin:0}
.academy-theme .academy-header-search input{min-width:0;width:100%;border:0;background:transparent;box-shadow:none;padding:8px 0;color:#352742;font-size:13px;margin:0}
.academy-theme .academy-header-search button{background:transparent;color:#71498b;border:0;padding:7px;border-radius:50%;flex:none}
.academy-theme .academy-header-search>.icon{width:18px;height:18px}
.academy-theme .topbar-actions{margin-left:auto;flex-shrink:0}
.academy-theme .topbar-actions .icon-button{background:#ffffff12;color:white;border-color:#ffffff28;border-radius:50%}
.academy-theme .avatar{background:#795198;border-color:#e6c9f1}
.academy-theme .workspace{padding:28px clamp(20px,2.6vw,40px) 40px;max-width:none;min-width:0}
.academy-theme .heading h1{font-size:clamp(25px,2.4vw,36px);letter-spacing:-.035em}
.academy-theme .heading p{font-size:13px;color:#877e90}
.academy-theme .panel{border:1px solid #dedbe3;background:#fff;border-radius:12px;box-shadow:0 2px 5px #23142f04}
.academy-theme .panel-head{padding-bottom:14px;border-color:#eeeaf1;margin-bottom:16px}
.academy-theme .panel-head h2{font-size:17px}
.academy-theme .primary{background:#4b255f;border-color:#4b255f;box-shadow:none;border-radius:9px;color:white}
.academy-theme .outline{background:white;border-color:#ddd3e5;color:#5c3274;border-radius:9px}
.academy-theme .tabs{gap:6px;flex-wrap:wrap;background:transparent;padding:0;margin-bottom:22px}
.academy-theme .tabs>button{border-radius:9px;border:1px solid #ded8e4;background:#fff;color:#75677f;font-size:12px;padding:10px 13px}
.academy-theme .tabs>button.active{background:#4b255f;color:white;border-color:#4b255f}
.academy-theme input,.academy-theme select,.academy-theme textarea{border-radius:9px;background:#fbfafc;border-color:#e2dce7}
.academy-theme .student-shortcut{border-radius:12px;box-shadow:none;background:white;border-color:#e1dbe7}
.academy-theme .student-course-hero{border-radius:14px;box-shadow:none}
.academy-theme .student-coursework .panel,.academy-theme .student-bento .panel{border-radius:12px}
.academy-theme .department-tools,.academy-theme .service-navigation a{border-radius:10px}
.academy-theme .academy-community{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(320px,1.75fr) minmax(220px,.95fr);gap:16px;align-items:start;min-width:0}
.academy-theme .academy-community>*,.academy-theme .academy-community .panel{min-width:0}
.academy-theme .academy-community .panel{padding:18px;margin-bottom:16px}
.academy-theme .academy-room-list{display:grid;gap:6px;margin-top:16px}
.academy-theme .academy-room-list button{border:0;background:transparent;color:#5c4d68;padding:13px 10px;justify-content:flex-start;text-align:left;gap:12px;font-size:13px;border-radius:9px;white-space:normal}
.academy-theme .academy-room-list button.active{background:#f0e8f5;color:#4b255f}
.academy-theme .academy-room-list small{display:block;font-weight:400;margin-top:4px;font-size:11px;color:#938599}
.academy-theme .academy-room-list .icon{width:20px;height:20px}
.academy-theme .academy-conversation{padding:0!important;overflow:hidden}
.academy-theme .academy-conversation-head{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #e6e0eb}
.academy-theme .academy-conversation-head h2{font-size:17px;margin:0 0 4px}
.academy-theme .academy-conversation-head p{font-size:11px;color:#a097a8;margin:0}
.academy-theme .academy-person-mark{width:38px;height:38px;flex:0 0 38px;border-radius:50%;display:grid;place-items:center;background:#e9dcef;color:#63377c;font-size:12px;font-weight:700}
.academy-theme .academy-chat-privacy{padding:10px 20px;margin:0;font-size:10px;color:#a093aa;background:#fcfafc;border-bottom:1px solid #f1edf4}
.academy-theme .academy-conversation .messages{display:flex;flex-direction:column;gap:18px;padding:24px 20px;max-height:520px;min-height:360px;overflow-y:auto;background:#fff;margin:0;border:0}
.academy-theme .academy-conversation .message{max-width:88%;align-self:flex-start;background:#f8f6f9;color:#66586f;border:1px solid #e9e3ed;border-radius:0 15px 15px 15px;padding:13px 16px;margin:0;box-shadow:0 2px 3px #29163d06;overflow-wrap:anywhere}
.academy-theme .academy-conversation .message-own{align-self:flex-end;background:#54275f;color:white;border:0;border-radius:15px 0 15px 15px}
.academy-theme .academy-conversation .message p{font-size:13px;line-height:1.6;white-space:pre-wrap;margin:8px 0 0}
.academy-theme .academy-message-meta{display:flex;gap:16px;align-items:center;justify-content:space-between}
.academy-theme .academy-message-meta strong{font-size:11px}
.academy-theme .academy-message-meta small{font-size:9px;color:inherit;opacity:.7}
.academy-theme .academy-conversation #chat-form{display:flex;gap:10px;flex-wrap:wrap;padding:16px;border-top:1px solid #e7e1eb;background:#fcfbfd;align-items:center}
.academy-theme #chat-form textarea{flex:1;min-width:0;resize:vertical;min-height:48px;margin:0;font-size:13px}
.academy-theme #chat-form button{border-radius:50%;width:46px;height:46px;padding:10px;flex:none}
.academy-theme #chat-form button span{display:none}
.academy-theme #chat-form .form-error{flex-basis:100%}
.academy-theme .academy-chat-empty{margin:auto;text-align:center;padding:24px;max-width:320px;color:#a18da9}
.academy-theme .academy-chat-empty>.icon{width:38px;height:38px;margin-bottom:14px}
.academy-theme .academy-chat-empty h3{font-size:17px;color:#5c406c}
.academy-theme .academy-chat-empty p{font-size:13px}
.academy-theme .academy-circle-mark{display:grid;place-items:center;margin:0 auto 18px;width:90px;height:90px;border-radius:50%;background:linear-gradient(145deg,#ede1f6,#d5bce8);color:#5a3472}
.academy-theme .academy-circle-mark .icon{width:43px;height:43px}
.academy-theme .academy-members-panel h3{text-align:center;font-size:16px}
.academy-theme .academy-members-panel .muted{text-align:center;font-size:12px}
.academy-theme .academy-member-list{margin-top:20px;border-top:1px solid #eee8f2}
.academy-theme .community-person{display:flex;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid #f0ebf4}
.academy-theme .community-person strong{display:block;font-size:12px;overflow-wrap:anywhere}
.academy-theme .community-person small{display:block;margin-top:4px;font-size:11px;color:#9c8fa5}
@media(max-width:1300px){.academy-theme .academy-community{grid-template-columns:minmax(200px,.8fr) minmax(300px,1.6fr)}.academy-theme .academy-members-panel{grid-column:1/-1}.academy-theme .academy-member-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px}.academy-theme .academy-members-panel .academy-circle-mark{width:60px;height:60px}.academy-theme .academy-members-panel .academy-circle-mark .icon{width:30px;height:30px}}
@media(max-width:1050px){.academy-theme .workspace-brand{display:none}.academy-theme .app-topbar{gap:14px;padding-inline:22px}.academy-theme .academy-community{grid-template-columns:minmax(180px,.8fr) minmax(260px,1.4fr)}}
@media(max-width:900px){.academy-theme .app-layout{margin:8px;padding:0;border-radius:18px;min-height:calc(100dvh - 16px)}.academy-theme .app-main{border-radius:18px}.academy-theme .sidebar{top:8px;left:8px;bottom:8px;width:245px;border-radius:18px;z-index:60}.academy-theme .app-topbar{height:80px;padding-inline:18px;border-radius:18px 18px 0 0}.academy-theme .workspace{padding:24px 20px 32px}.academy-theme .sidebar nav a.active{margin-right:0;border-radius:12px}.academy-theme .academy-community{grid-template-columns:1fr}.academy-theme .academy-room-panel{display:grid;grid-template-columns:1fr 1fr;gap:16px}.academy-theme .academy-members-panel{grid-column:auto}.academy-theme .academy-community .panel{margin-bottom:0}.academy-theme .academy-room-list{max-height:180px;overflow-y:auto}.academy-theme .academy-conversation .messages{min-height:280px;max-height:55dvh}}
@media(max-width:600px){.academy-theme .app-topbar{gap:10px;padding-inline:13px}.academy-theme .academy-header-search{padding-left:13px;gap:7px}.academy-theme .academy-header-search input{font-size:12px}.academy-theme .academy-header-search button{padding:5px}.academy-theme .academy-header-search>.icon{display:none}.academy-theme .topbar-actions>.icon-button{display:none}.academy-theme .workspace{padding:22px 14px 30px}.academy-theme .heading h1{font-size:26px}.academy-theme .academy-room-panel{grid-template-columns:1fr}.academy-theme .academy-member-list{grid-template-columns:1fr 1fr}.academy-theme .academy-conversation .messages{padding:18px 12px}.academy-theme .academy-conversation-head{padding:16px}.academy-theme .academy-message-meta{gap:8px;flex-wrap:wrap}.academy-theme .academy-conversation .message{max-width:94%}.academy-theme .academy-community .panel{padding:16px}.academy-theme .academy-conversation #chat-form{padding:12px}}

/* Reference navigation: narrow icon rail, continuous header, curved active cutout. */
@media(min-width:901px){
 .academy-theme .app-layout{--rail:80px}
 .academy-theme .sidebar{width:var(--rail);padding:124px 0 18px 14px;border-radius:22px 0 35px 22px;scrollbar-width:none}
 .academy-theme .sidebar::-webkit-scrollbar{display:none}
 .academy-theme .sidebar>.logo-link,.academy-theme .sidebar>.eyebrow,.academy-theme .sidebar>.nav-label{display:none}
 .academy-theme .sidebar nav{gap:8px;padding:0;margin:0}
 .academy-theme .sidebar nav a{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;min-height:44px;padding:11px 12px;margin:0 0 0 0;border-radius:24px 0 0 24px;color:#fff;overflow:visible;font-size:0;line-height:0}
 .academy-theme .sidebar nav a span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .academy-theme .sidebar nav a>.icon{width:21px;height:21px;flex:0 0 21px}
 .academy-theme .sidebar nav a.active{background:#f5f4f7;color:#4b245f;margin-right:0;padding-right:12px;border-radius:24px 0 0 24px}
 .academy-theme .sidebar nav a.active:before,.academy-theme .sidebar nav a.active:after{content:"";position:absolute;display:block;right:0;width:22px;height:22px;pointer-events:none;border:0;border-radius:0;box-shadow:none}
 .academy-theme .sidebar nav a.active:before{top:-22px;background:radial-gradient(circle at 0 0,transparent 22px,#f5f4f7 22.5px)}
 .academy-theme .sidebar nav a.active:after{bottom:-22px;background:radial-gradient(circle at 0 100%,transparent 22px,#f5f4f7 22.5px)}
 .academy-theme .sidebar-bottom{margin-top:22px;padding:10px 12px 0 0}
 .academy-theme .sidebar-bottom .member{padding:14px 0;justify-content:center;border:0}
 .academy-theme .sidebar-bottom .member>div{display:none}
 .academy-theme .sidebar-bottom>a{font-size:0;line-height:0;min-height:44px;flex-direction:row;padding:10px;border:0;gap:0;background:transparent}
 .academy-theme .sidebar-bottom>a>.icon{width:22px;height:22px}
 .academy-theme .sidebar-bottom .student-return{border:0;border-radius:0;background:none;box-shadow:none}
 .academy-theme .app-topbar{height:110px;padding-left:120px}
 .academy-theme .workspace-brand{position:absolute;left:-44px;top:35px;display:inline-flex}
 .academy-theme .workspace-brand .brand{width:130px}
 .academy-theme .menu-trigger{background:transparent;position:absolute;left:88px;top:35px;min-width:32px;padding:7px}
 .academy-theme .academy-header-search-wrap{max-width:620px;width:100%}
 .academy-theme .app-layout.nav-expanded{--rail:225px}
 .academy-theme .nav-expanded .sidebar{padding:124px 12px 18px}
 .academy-theme .nav-expanded .sidebar nav a{justify-content:flex-start;gap:12px;font-size:12px;line-height:1.3;padding:12px}
 .academy-theme .nav-expanded .sidebar nav a span{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;margin:0}
 .academy-theme .nav-expanded .sidebar nav a.active{margin-right:-12px}
 .academy-theme .nav-expanded .sidebar-bottom>a{font-size:12px;line-height:1.3;gap:10px;justify-content:flex-start}
 .academy-theme .nav-expanded .workspace-brand{left:-190px}
 .academy-theme .nav-expanded .app-topbar{padding-left:70px}
 .academy-theme .nav-expanded .menu-trigger{left:20px}
 .academy-theme .sidebar .admin-nav-group{margin-top:12px;padding-top:12px}
 .academy-theme .sidebar .admin-nav-group h2{font-size:0;line-height:0;margin:0}
 .academy-theme .nav-expanded .sidebar .admin-nav-group h2{font-size:10px;line-height:1.4;margin-bottom:8px}
}
@media(max-width:900px){.academy-theme .sidebar>.logo-link{display:inline-flex;margin-bottom:22px}.academy-theme .sidebar{padding-top:24px}.academy-theme .sidebar nav a span{position:static;clip-path:none;width:auto;height:auto}.academy-theme .workspace-brand{display:none}}

@media(min-width:901px){.academy-theme .sidebar nav a.active{z-index:2}.academy-theme .sidebar nav a.active:hover{background:#f5f4f7}.academy-theme .sidebar nav{overflow:visible}}

/* Stable header logo and an actual hidden/open labelled navigation drawer. */
.academy-theme .app-topbar{position:sticky;top:0;z-index:25;display:flex;padding:0 24px;gap:18px;overflow:visible}
.academy-theme .workspace-brand,.academy-theme .nav-expanded .workspace-brand{position:static;display:inline-flex;flex:0 0 auto;inset:auto;margin:0;min-width:0;padding:0}
.academy-theme .workspace-brand .brand{width:145px;max-width:none;height:auto;display:block}
.academy-theme .menu-trigger,.academy-theme .nav-expanded .menu-trigger{position:static;inset:auto;flex:0 0 40px;min-width:40px;min-height:40px;margin:0;padding:9px;background:#ffffff12}
.academy-theme .nav-expanded .app-topbar{padding:0 24px}
@media(min-width:901px){
 .academy-theme .app-layout{--rail:0px}
 .academy-theme .app-layout.nav-expanded{--rail:225px}
 .academy-theme .sidebar{width:225px;padding:110px 12px 18px;transform:translateX(calc(-100% - 24px));visibility:hidden;pointer-events:none}
 .academy-theme .nav-expanded .sidebar{transform:none;visibility:visible;pointer-events:auto}
 .academy-theme .sidebar nav a{font-size:12px;line-height:1.3;justify-content:flex-start;gap:12px;padding:12px}
 .academy-theme .sidebar nav a span{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal;margin:0}
 .academy-theme .sidebar-bottom>a{font-size:12px;line-height:1.3;justify-content:flex-start;gap:10px}
 .academy-theme .sidebar .admin-nav-group h2{font-size:10px;line-height:1.4;margin-bottom:8px}
 .academy-theme .app-main{border-radius:22px}
 .academy-theme .nav-expanded .app-main{border-radius:0 22px 22px 0}
}
@media(max-width:900px){.academy-theme .app-topbar{padding:0 16px;gap:12px}.academy-theme .sidebar{z-index:60}.academy-theme .workspace-brand .brand{width:120px}.academy-theme .nav-expanded .app-topbar{padding:0 16px}}
@media(max-width:600px){.academy-theme .academy-header-search-wrap{display:none}.academy-theme .workspace-brand .brand{width:140px}.academy-theme .app-topbar{height:76px;gap:14px}.academy-theme .topbar-actions{margin-left:auto}}

/* Collapsed means an icon rail; expanded means icons and labels. */
@media(min-width:901px){
 .academy-theme .app-layout{--rail:80px}
 .academy-theme .sidebar{width:80px;padding:110px 0 18px 14px;transform:none;visibility:visible;pointer-events:auto}
 .academy-theme .sidebar nav a{justify-content:center;gap:0;font-size:0;line-height:0;padding:11px 12px}
 .academy-theme .sidebar nav a span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .academy-theme .sidebar-bottom>a{font-size:0;line-height:0;justify-content:center;gap:0}
 .academy-theme .sidebar .admin-nav-group h2{font-size:0;line-height:0;margin:0}
 .academy-theme .app-main{border-radius:0 22px 22px 0}
 .academy-theme .app-layout.nav-expanded{--rail:225px}
 .academy-theme .nav-expanded .sidebar{width:225px;padding:110px 12px 18px}
 .academy-theme .nav-expanded .sidebar nav a{justify-content:flex-start;gap:12px;font-size:12px;line-height:1.3;padding:12px}
 .academy-theme .nav-expanded .sidebar nav a span{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal}
 .academy-theme .nav-expanded .sidebar-bottom>a{font-size:12px;line-height:1.3;justify-content:flex-start;gap:10px}
 .academy-theme .nav-expanded .sidebar .admin-nav-group h2{font-size:10px;line-height:1.4;margin-bottom:8px}
}

@media(max-width:900px){
 .academy-theme .app-main{margin-left:56px;width:calc(100% - 56px);border-radius:0 18px 18px 0}
 .academy-theme .sidebar{width:56px;padding:94px 0 14px 6px;transform:none;visibility:visible;pointer-events:auto;border-radius:18px 0 25px 18px;scrollbar-width:none}
 .academy-theme .sidebar>.logo-link{display:none}
 .academy-theme .sidebar nav{gap:7px}
 .academy-theme .sidebar nav a{min-height:43px;justify-content:center;gap:0;font-size:0;line-height:0;padding:10px 7px}
 .academy-theme .sidebar nav a span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .academy-theme .sidebar nav a.active{border-radius:22px 0 0 22px}
 .academy-theme .sidebar-bottom{padding:12px 6px 0 0;margin-top:16px}
 .academy-theme .sidebar-bottom>a{font-size:0;line-height:0;gap:0;justify-content:center;padding:10px 7px}
 .academy-theme .sidebar-bottom .member{justify-content:center;padding:12px 0}
 .academy-theme .sidebar-bottom .member>div{display:none}
 .academy-theme .sidebar .admin-nav-group h2{font-size:0;line-height:0;margin:0}
 .academy-theme .workspace-brand .brand{width:110px}
 .academy-theme .app-topbar{gap:10px;padding-inline:10px}
 .academy-theme.menu-open .sidebar{width:245px;padding:24px 14px;transform:none;border-radius:18px;box-shadow:12px 0 35px #1e0e3940}
 .academy-theme.menu-open .sidebar>.logo-link{display:inline-flex}
 .academy-theme.menu-open .sidebar nav a{justify-content:flex-start;font-size:12px;line-height:1.3;gap:12px;padding:12px}
 .academy-theme.menu-open .sidebar nav a span{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal}
 .academy-theme.menu-open .sidebar nav a.active{border-radius:12px}
 .academy-theme.menu-open .sidebar-bottom>a{font-size:12px;line-height:1.3;justify-content:flex-start;gap:12px;padding:12px}
 .academy-theme.menu-open .sidebar .admin-nav-group h2{font-size:10px;line-height:1.4;margin-bottom:8px}
}
