/* Student product layer: shared by the dashboard and all learning pages. */
html:has(body.student-studio) {background:#10171c!important}
body.student-studio.ui-layout-atelier,body.student-studio {
  --atelier-paper:#10171c; --atelier-white:#182127; --atelier-nav:#131d23;
  --atelier-nav-soft:#21312f; --atelier-line:#2c383f; --atelier-muted:#adbac2;
  --atelier-accent:#83dcc4; --atelier-accent-deep:#a4ead6; --atelier-accent-soft:#203a34;
  --atelier-shadow:none; --atelier-shadow-hover:none;
  font-family:"Segoe UI",Arial,sans-serif!important;
  background:#10171c!important; color:#edf2f4!important;
  font-size:15px; line-height:1.55;margin:0;min-height:100vh;
}
.student-studio *, .student-studio *::before,.student-studio *::after {box-sizing:border-box}
.student-studio :is(a,button,summary,input,select):focus-visible {outline:2px solid #a4ead6!important;outline-offset:4px}
.student-studio .blob,.student-studio::before,.student-studio::after {display:none!important}
.student-studio > .container {max-width:1380px!important;padding:0 42px 32px!important}
.student-studio .portal-student-sidebar {background:#131d23!important;box-shadow:none!important;border-right:1px solid #29343b!important;padding:30px 18px 20px!important;gap:22px!important}
.student-studio .portal-sidebar-brand {display:flex!important;flex-direction:row!important;gap:11px!important;padding:0 8px!important}
.student-studio .portal-sidebar-logo {width:44px!important;height:44px!important;max-height:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;object-fit:contain!important}
.student-studio .portal-sidebar-brand-text {display:block!important}
.student-studio .portal-sidebar-brand-text strong {font-size:20px!important;font-weight:650!important;letter-spacing:-.6px}
.student-studio .portal-sidebar-brand-text strong span {color:#a4ead6}
.student-studio .portal-sidebar-brand-text small {font-size:9px!important;letter-spacing:1.5px!important;color:#9aafb8!important;margin-top:8px!important}
.student-studio .portal-sidebar-label {font-size:10px!important;color:#92a5af!important;letter-spacing:1.3px!important}
.student-studio .portal-sidebar-nav a {min-height:46px!important;font-size:13px!important;font-weight:500!important;border-radius:8px!important;gap:12px!important;color:#b8c5cd!important}
.student-studio .portal-sidebar-nav a i {font-size:18px!important;color:#aabbbf!important}
.student-studio .portal-sidebar-nav a[aria-current] {background:#233a34!important;color:#bbf4df!important;box-shadow:inset 2px 0 #a4ead6!important}
.student-studio .portal-sidebar-nav a:hover {transform:none!important;background:#203039!important}
.student-studio .portal-sidebar-bottom {display:none!important}
.studio-topbar {display:flex;align-items:center;justify-content:space-between;min-height:82px;border-bottom:1px solid #29343b;margin-bottom:34px}
.studio-topbar-label {font-size:10px;letter-spacing:1.5px;color:#a8b7bf;font-weight:600}
.studio-topbar-label span {margin:0 12px;color:#617580}
.studio-mobile-brand {display:none;text-decoration:none!important}
.studio-account {position:relative;z-index:75;font-size:13px}
.studio-account summary {display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;min-height:44px}
.studio-account summary::-webkit-details-marker {display:none}
.studio-avatar {display:grid;place-items:center;width:32px;height:32px;background:#28383c;border:1px solid #3b5155;border-radius:50%;color:#b4ecd9;font-size:12px;font-weight:600}
.studio-account>div {position:absolute;right:0;top:48px;width:190px;background:#1b282f;border:1px solid #3a4a54;border-radius:10px;padding:8px;box-shadow:0 12px 32px #0005}
.studio-account>div a,.studio-account>div>span {display:block;padding:10px 12px}
.studio-account>div>span {color:#98aeb9;font-size:11px}
.studio-account>div a:hover {background:#294038;border-radius:6px}
.studio-skip {position:fixed;top:8px;left:8px;z-index:120;transform:translateY(-180%);background:#a4ead6;color:#10261f;padding:12px 20px;border-radius:8px}
.studio-skip:focus {transform:none}
.studio-welcome {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}
.studio-eyebrow {margin:0 0 6px!important;color:#92b8ad!important;font-size:10px!important;font-weight:600!important;letter-spacing:1.5px!important;text-transform:uppercase}
.studio-welcome h1 {font-size:34px;font-weight:600;line-height:1.2;letter-spacing:-1.2px;margin:0 0 8px}
.studio-welcome p:not(.studio-eyebrow) {margin:0;color:#adbac2;font-size:14px}
.studio-welcome time {align-self:flex-start;padding-top:26px;color:#93a6b0;font-size:12px;white-space:nowrap}
.studio-status {display:flex;align-items:center;gap:10px;padding:13px 0;border-top:1px solid #293c37;border-bottom:1px solid #293c37;margin-bottom:34px;color:#c9dfd7;font-size:13px}
.studio-status i {color:#a4ead6;font-size:18px}
.studio-status-note {margin-left:auto;color:#91a8a0;font-size:12px}
.studio-priority {display:flex;align-items:center;gap:20px;padding:24px;background:#1c322c;border:1px solid #355c4d;border-radius:12px;margin-bottom:32px}
.studio-priority-icon {color:#a4ead6;font-size:26px}
.studio-priority-copy {flex:1;min-width:0}
.studio-priority h2 {font-size:21px;margin:0 0 6px;line-height:1.35;font-weight:600;overflow-wrap:anywhere}
.studio-priority p {font-size:13px;color:#c4d4cd;margin:0}
.studio-excerpt {display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.studio-button {display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:11px 17px;background:#a4ead6;color:#102d24!important;border-radius:8px;font-weight:600;font-size:13px;white-space:nowrap}
.studio-button:hover {background:#c0f5e5}
.studio-section-title {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.studio-section-title h2 {font-size:21px;font-weight:600;letter-spacing:-.4px;margin:0;color:#edf2f4}
.studio-section-title>span {font-size:12px;color:#99acb5}
.studio-course-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.studio-single-course {display:block!important}
.studio-single-course .studio-course {display:grid;grid-template-columns:180px minmax(0,1fr)}
.studio-single-course .studio-course-art {height:100%;min-height:180px}
.studio-single-course .studio-course-art svg {top:40px;right:-25px}
.studio-single-course .studio-course-body {padding:24px}
.studio-single-course .studio-course-body p {min-height:0}
.studio-single-course .studio-course-body a {margin-top:16px}
.studio-grading-help {font-size:13px;color:#b7c8ce;margin:12px 0 20px}
.studio-grading-help summary {cursor:pointer;color:#a4ead6;min-height:32px}
.studio-grading-help p {max-width:620px}
.studio-courses {margin-bottom:34px}
.studio-course {min-width:0;overflow:hidden;border-radius:12px;border:1px solid #334348;background:#182328}
.studio-course-art {height:120px;background:#203c37;position:relative;overflow:hidden}
.studio-course:nth-child(3n+2) .studio-course-art {background:#253442}
.studio-course:nth-child(3n) .studio-course-art {background:#3d3528}
.studio-course-art svg {position:absolute;right:-5px;top:7px;width:220px;height:120px;stroke:#9adebe;stroke-width:1.1;opacity:.5}
.studio-course-number {position:absolute;top:16px;left:18px;font-size:13px;color:#b0d5c8}
.studio-course-tag {position:absolute;bottom:14px;left:18px;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:#b2d2c6}
.studio-course-body {padding:19px}
.studio-course h3 {font-size:18px;font-weight:600;margin:0 0 7px;color:#edf2f4;overflow-wrap:anywhere}
.studio-course p {font-size:13px;line-height:1.55;color:#a9bbc4;margin:0;min-height:40px}
.studio-course a {display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:18px;border-top:1px solid #32433f;padding-top:14px;min-height:44px;font-size:13px;font-weight:600;color:#adebd6}
.studio-course:focus-within,.studio-course:hover {border-color:#6e9e8c}
.studio-workspace {margin-bottom:34px}
.studio-work-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.studio-work-grid>a {display:flex;align-items:flex-start;gap:13px;border-top:1px solid #3a484e;padding:18px 0;text-decoration:none;min-width:0}
.studio-work-grid>a>i:first-child {font-size:22px;color:#a4ead6;margin-top:2px}
.studio-work-grid>a>i:last-child {font-size:15px;color:#98adaf;margin-left:auto;margin-top:5px}
.studio-work-grid h3 {font-size:15px;margin:0 0 4px;font-weight:600;color:#e5eeee}
.studio-work-grid p {font-size:12px;line-height:1.6;margin:0;color:#aabac2}
.studio-work-grid a:hover h3 {color:#a4ead6}
.studio-announcement {border-top:1px solid #2c383f;padding-top:22px;margin-bottom:26px}
.studio-announcement h2 {font-size:17px}
.studio-announcement .studio-section-title>a {font-size:12px;color:#a4ead6}
.studio-announcement article {display:flex;gap:16px}
.studio-announcement article>i {color:#d7bb8c;margin-top:4px}
.studio-announcement h3 {font-size:16px;font-weight:600;margin:0 0 6px}
.studio-announcement article p {font-size:14px;color:#b4c2c8;margin:0}
.studio-quiet,.studio-empty {font-size:13px;color:#a2b4bd;margin:0}
.studio-empty {padding:20px 0}
.student-studio .portal-seb-compact {border:0!important;border-top:1px solid #2c383f!important;border-radius:0!important;background:transparent!important}
.student-studio .portal-seb-compact summary {padding:12px 0!important;min-height:64px}
.student-studio .portal-seb-summary-icon {background:#263230!important;color:#a8c5b9!important}
.student-studio .portal-seb-compact summary strong {font-size:13px!important;font-weight:500}
.student-studio .portal-seb-compact summary small {color:#9db0b9!important;font-size:12px!important}
.student-studio .portal-seb-chevron {color:#a4b7bc!important}
.student-studio .portal-seb-content {padding-left:50px!important}
.student-studio footer {border-top:1px solid #27333b;margin-top:26px!important;padding-top:19px;text-align:left!important;font-size:11px!important;color:#91a5b0!important}
.student-studio footer span {color:inherit!important}
/* Internal pages use the same restrained title and reading surface. */
.student-studio .portal-section-page {padding-top:0}
.student-studio .portal-section-heading {background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0;padding:0 0 25px;margin-bottom:24px;border-bottom:1px solid #2c383f!important}
.student-studio .portal-section-back {font-size:12px;font-weight:500;margin-bottom:20px;color:#a6babf}
.student-studio .portal-section-kicker {display:none}
.student-studio .portal-section-heading h1 {font-size:30px;font-weight:600;letter-spacing:-.8px;line-height:1.25}
.student-studio .portal-section-heading h1 i {display:none}
.student-studio .portal-section-heading-copy>p:last-child {font-size:14px;color:#adbac2;line-height:1.6}
.student-studio .portal-page-panel {background:#172127!important;box-shadow:none!important;border:1px solid #2c383f;border-radius:12px;padding:24px}
.student-studio .portal-disclosure {background:#172127!important;box-shadow:none!important;border:1px solid #2c383f!important;border-radius:12px!important}
.student-studio .portal-disclosure :is(summary,.portal-disclosure-body) {background:transparent!important}
.student-studio.ui-layout-atelier .portal-disclosure[open] summary {background:transparent!important}
.student-studio .portal-disclosure summary {padding:19px 22px!important}
.student-studio .portal-disclosure-body {padding:0 22px 20px!important}
.student-studio .portal-empty-state {background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:10px 0!important;min-height:0!important}
.student-studio .portal-empty-state::before {display:none!important}
.student-studio .portal-empty-state strong {font-size:14px!important;font-weight:500!important}
.student-studio .portal-empty-state p {font-size:13px!important;color:#aebec7!important}
.student-studio .portal-page-body :is(.text-slate-400,.text-slate-500) {color:#adbac2!important}
.student-studio .portal-page-body .text-4xl {font-size:22px}
.student-studio .portal-page-body .text-center {padding:24px!important;background:transparent!important;border:0!important}
.student-studio .portal-page-body button {box-shadow:none!important;min-height:44px}
.student-studio .portal-page-body button.bg-sky-500 {background:#a4ead6!important;color:#102d24!important;border:0!important}
.student-studio .portal-count-badge {font-size:11px!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important}
.student-studio .portal-disclosure .text-lg {font-size:16px!important;font-weight:600!important}
.student-studio .portal-page-panel,.student-studio .portal-disclosure,.student-studio .portal-large-grid>* {animation:none!important}
.student-studio .tache-item {scroll-margin-top:20px}
@media(min-width:1081px){.student-studio .portal-student-sidebar {width:230px!important}body.student-studio {padding-left:230px!important}}
@media(max-width:1250px){.studio-course-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.studio-work-grid {gap:20px}.student-studio>.container {padding-inline:30px!important}}
@media(max-width:1080px){.studio-topbar-label {display:none}.studio-mobile-brand {display:flex;align-items:center;gap:9px;font-size:17px;font-weight:600;color:#e5f2eb}.student-studio .portal-mobile-nav {background:#18262b!important;border-color:#3c504f!important;box-shadow:0 6px 25px #0004!important;bottom:max(10px,env(safe-area-inset-bottom))!important}.student-studio .portal-mobile-nav a,.student-studio .portal-mobile-more>button {font-size:11px!important;font-weight:500!important}.student-studio .portal-mobile-nav i {font-size:19px!important}.student-studio .portal-mobile-more-menu {background:#1c2a30!important}.student-studio>.container {padding-inline:24px!important}}
@media(max-width:680px){
 .student-studio>.container {padding-inline:20px!important;padding-bottom:22px!important}
 .studio-topbar {min-height:70px;margin-bottom:25px}.studio-welcome {margin-bottom:22px}.studio-welcome h1 {font-size:29px}.studio-welcome time {display:none}
 .studio-welcome p:not(.studio-eyebrow) {font-size:13px;max-width:270px}
 .studio-status {font-size:12px;margin-bottom:26px;padding:12px 0}.studio-status-note {display:none}
 .studio-course-grid {grid-template-columns:1fr}.studio-course-art {height:108px}.studio-course-art svg {right:10px;top:0}
 .studio-single-course .studio-course {display:block}.studio-single-course .studio-course-art {height:90px;min-height:0}.studio-single-course .studio-course-art svg {top:-10px;right:5px}.studio-single-course .studio-course-body {padding:18px}
 .studio-course-body {padding:18px}.studio-course p {min-height:0}
 .studio-section-title h2 {font-size:20px}.studio-courses,.studio-workspace {margin-bottom:27px}
 .studio-work-grid {grid-template-columns:1fr;gap:0}.studio-work-grid>a {padding:17px 0;align-items:center}.studio-work-grid p {font-size:13px}.studio-work-grid h3 {font-size:15px}.studio-work-grid>a>i:last-child {margin-top:0}
 .studio-priority {flex-wrap:wrap;padding:20px;gap:14px}.studio-priority-copy {flex-basis:75%}.studio-priority>.studio-button {margin-left:0;width:100%}
 .studio-priority h2 {font-size:19px}.studio-announcement .studio-section-title {align-items:flex-start}.studio-announcement .studio-section-title>a {max-width:110px;text-align:right}
 .student-studio .portal-section-heading h1 {font-size:26px}.student-studio .portal-section-heading {padding-bottom:20px;margin-bottom:20px}
 .student-studio .portal-page-panel {padding:16px}.student-studio .portal-disclosure summary {padding:17px!important}.student-studio .portal-disclosure-body {padding:0 17px 17px!important}
 .student-studio .portal-seb-compact summary small {font-size:11px!important}
 .student-studio .portal-mobile-nav {inset-inline:8px!important}.student-studio .portal-mobile-more-menu a {font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){.student-studio * {animation:none!important;transition:none!important}}
