/* Extend the approved platinum universe to the learning workspace, using live content. */
.universe-section-mode #main { padding:28px 36px 48px; background:#faf9f6; }
.universe-section { width:100%; max-width:1440px; margin:0 auto; }
.universe-section-hero { position:relative; isolation:isolate; overflow:hidden; display:flex; align-items:center; min-height:266px; margin:0 0 28px; padding:36px 40px; border:1px solid #e8decd; border-radius:24px; background:#f9f7f1; box-shadow:0 10px 32px #73603f06; }
.universe-section-art { position:absolute; inset:-10px; z-index:-2; pointer-events:none; background:url('/static/assets/universe/scene.webp') right 42%/cover no-repeat; opacity:.92; transform-origin:83% 40%; }
.universe-section-hero::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,#fbfaf6 5%,#fbfaf6f2 29%,#fbfaf6b8 56%,#fbfaf600 85%); }
.universe-section-copy { width:100%; min-width:0; }
.universe-section-hero .eyebrow { position:static; margin:0 0 16px; color:#967339; font-size:13px; font-weight:600; letter-spacing:.07em; }
.universe-section-hero h1 { max-width:850px; margin:0 0 16px; font-size:clamp(28px,2.7vw,42px); font-weight:700; letter-spacing:-.04em; line-height:1.3; color:#332c21; text-wrap:balance; }
.universe-section-hero p:not(.eyebrow) { max-width:660px; margin:0; color:#6b6253; font-size:16px; line-height:1.8; }
.universe-section-hero .row { margin-top:22px; gap:12px; }
.universe-section .btn { min-height:42px; padding:10px 18px; font-size:14px; border-radius:11px; }
.universe-section .btn.primary { background:#99763b; border-color:#a88649; color:#fffdf8; box-shadow:0 3px 10px #86632810; }
.universe-section .btn.primary:hover { background:#805d29; }
.universe-section .btn.ghost { background:#ffffff80; }
.universe-section .btn.small { min-height:36px; padding:8px 12px; font-size:12px; }
.universe-section-hero .btn:not(.primary) { background:#fffdf8df; border:1px solid #ded1b8; color:#655131; }
.universe-section-line { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:28px 0 18px; }
.universe-section-line h2 { font-size:22px; margin:0 0 5px; color:#3b3327; }
.universe-section-line p { margin:0; color:#817767; font-size:13px; }
.universe-section-line>.btn { flex:none; }
.universe-section .course-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; align-items:stretch; }
.universe-section .course-card { position:relative; display:flex; flex-direction:column; padding:26px; border:1px solid #e5d9c4; border-radius:20px; background:#fffefbf5; box-shadow:0 8px 24px #88724606; transition:border-color .2s,box-shadow .2s; }
.universe-section .course-card:hover { border-color:#bea26d; box-shadow:0 10px 28px #8872460d; }
.universe-section .course-card-top { justify-content:flex-start; gap:14px; margin-bottom:20px; }
.universe-course-symbol { display:grid; place-items:center; width:46px; height:46px; background:#f6eddb; border-radius:14px; color:#a48043; }
.universe-course-symbol svg { width:27px; height:27px; }
.universe-section .course-number { font-size:15px; color:#a49270; font-variant-numeric:tabular-nums; letter-spacing:.1em; }
.universe-section .course-card-top .pill { margin-left:auto; color:#7e6335; background:#f5eedf; }
.universe-section .course-card h2 { margin:0 0 12px; font-size:25px; line-height:1.4; color:#3b3020; }
.universe-section .course-description { font-size:14px; color:#766e60; line-height:1.8; min-height:52px; margin:0 0 20px; }
.universe-section .course-progress { margin-top:auto; }
.universe-section .course-progress .row { font-size:13px; }
.universe-section .course-progress progress { height:6px; accent-color:#aa874b; }
.universe-section .course-progress p { font-size:11px; color:#93846d; }
.universe-section .course-card-actions { padding-top:18px; margin-top:16px; border-color:#eee5d5; justify-content:space-between; }
.universe-section .course-card-actions .ghost { border:0; color:#897963; background:transparent; }
.universe-support { display:flex; align-items:center; gap:20px; padding:25px 28px; margin-top:26px; border:1px solid #e5d9c1; border-radius:18px; background:#f4eddfa8; }
.universe-support-icon { display:grid; place-items:center; width:44px; height:44px; flex:none; color:#9c7b40; }
.universe-support-icon svg { width:32px; height:32px; }
.universe-support h2 { margin:0 0 5px; color:#55452d; font-size:18px; line-height:1.5; }
.universe-support p { margin:0; font-size:13px; color:#81735b; }
.universe-support>.btn { margin-left:auto; flex:none; background:#fffdf7; }
.universe-empty { display:grid; grid-template-columns:minmax(150px,230px) minmax(0,1fr); align-items:center; gap:28px; padding:26px 42px; min-height:310px; border:1px solid #e5d8bd; border-radius:22px; background:#fffdf8; box-shadow:0 8px 30px #83714905; }
.universe-empty>img { display:block; width:100%; max-width:230px; height:auto; margin:auto; object-fit:contain; }
.universe-empty .eyebrow { margin:0 0 12px; color:#9b7a40; font-size:12px; letter-spacing:.06em; }
.universe-empty h2 { margin:0 0 14px; font-size:28px; line-height:1.45; color:#403423; font-weight:650; }
.universe-empty p { max-width:620px; margin:0 0 20px; line-height:1.9; font-size:15px; color:#81725d; }
.universe-empty .row { gap:10px; }
.universe-guide { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; margin-top:26px; padding:22px 4px; }
.universe-guide article { padding:0 16px; min-width:0; }
.universe-guide article+article { border-left:1px solid #e5dac7; }
.universe-step { display:block; margin-bottom:12px; color:#b49359; font-size:20px; font-weight:400; letter-spacing:.12em; }
.universe-guide h3 { margin:0 0 8px; font-size:18px; color:#53442e; }
.universe-guide p { margin:0; font-size:13px; color:#8a7a62; line-height:1.9; }
.universe-footnote { text-align:center; margin:28px 0 0; color:#8c806b; font-size:12px; line-height:1.8; }
.universe-section .exam-list-tabs { display:flex; gap:6px; width:max-content; max-width:100%; padding:5px; border:1px solid #e5dac6; border-radius:14px; margin:0 0 24px; background:#f1eada; }
.universe-section .exam-list-tabs .btn { min-height:38px; padding:8px 18px; border:0; background:transparent; color:#8d7d62; }
.universe-section .exam-list-tabs .btn.primary { background:#fffdf8; color:#75572c; box-shadow:0 2px 7px #81613210; }
.universe-section .assessment-section { margin-top:28px; }
.universe-section .assessment-section-head { padding:0 4px; }
.universe-section .assessment-section-head h2 { font-size:21px; }
.universe-section .assessment-section-head p { font-size:13px; color:#8a7c65; }
.universe-section .assessment-row { border-color:#e5d9c4; background:#fffefb; }
.universe-section .assessment-empty { display:flex; align-items:center; min-height:90px; border-style:solid; border-color:#e7ddcb; background:#f5efe4; color:#8e7a57; }
.universe-section .assessment-heading { display:flex; flex-direction:row; align-items:center; }
.framework-universe .framework-legend { gap:10px 18px; margin:0 0 20px; padding:4px 8px; color:#887a64; font-size:12px; }
.framework-universe .framework-courses { margin:0 0 24px; gap:10px; }
.framework-universe .framework-courses button { padding:12px 22px; font-size:14px; border:1px solid #e2d7c2; border-radius:12px; background:#fffef9; color:#816b49; }
.framework-universe .framework-courses button.active { background:#a2834d; color:white; border-color:#a2834d; }
.framework-workbench { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:30px; align-items:start; }
.framework-workbench:has(>.universe-empty) { display:block; }
.framework-path-main { min-width:0; padding:20px 22px 24px 0; }
.framework-path-summary { position:sticky; top:18px; padding:26px 24px; border:1px solid #e1d2b5; border-radius:20px; background:#f5eddf; }
.framework-path-summary .eyebrow { margin:0 0 12px; font-size:11px; color:#a28a61; }
.framework-path-summary h2 { margin:0 0 22px; font-size:22px; line-height:1.5; color:#5b4728; overflow-wrap:anywhere; }
.framework-path-summary dl { display:grid; gap:16px; margin:0 0 20px; }
.framework-path-summary dl>div { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.framework-path-summary dt { color:#877354; font-size:13px; }
.framework-path-summary dd { margin:0; font-size:25px; font-weight:500; font-variant-numeric:tabular-nums; color:#8b6d34; }
.framework-path-summary p { font-size:12px; line-height:1.9; color:#8b795b; margin:10px 0 0; }
.framework-path-summary .framework-summary-note { padding:15px 0; border-top:1px solid #ded0b6; border-bottom:1px solid #ded0b6; }
.framework-path-summary h3 { margin:20px 0 0; font-size:13px; color:#7c6542; }
.framework-universe .learn-path { max-width:none; margin:0; padding:0; }
.framework-universe .learn-step { padding-bottom:22px; }
.framework-universe .learn-card { background:#fffefb; border-color:#e3d8c2; border-radius:16px; box-shadow:0 4px 18px #84724c04; }
.framework-universe .learn-lesson { padding:19px 20px; }
.framework-universe .learn-lesson strong { font-size:15px; line-height:1.7; }
.framework-universe .learn-lesson em { flex:none; margin-left:12px; font-size:11px; padding:3px 8px; border-radius:7px; background:#f3eedf; }
.framework-universe .is-current .learn-card { border-color:#b5975b; background:#fffcf2; box-shadow:0 6px 18px #a2844610; }
.framework-universe .learn-notes { padding:0 12px 10px; }
.framework-universe .path-note { border-radius:9px; background:#f7f2e8; color:#827150; }
.framework-universe .learn-rail span { box-shadow:0 0 0 6px #faf9f6; }
.universe-settings { max-width:1240px; }
.universe-quiet-hero { min-height:214px; }
.universe-quiet-hero .universe-section-art { opacity:.58; background-position:right 32%; }
.universe-settings>.tabs { margin:0 0 24px; border-bottom:1px solid #e0d5c0; padding-bottom:10px; }
.universe-settings>.card,.universe-settings>.settings-sections>.card { border-color:#e4d8c0; background:#fffefaf5; border-radius:18px; }
.universe-settings .settings-reading { max-width:900px; padding:30px; }
.universe-settings .settings-reading h2 { font-size:22px; }
.universe-motion-on .universe-section-art { animation:wu-orbit 36s ease-in-out infinite; }
.universe-motion-on .universe-empty>img { animation:wu-float 9s ease-in-out infinite; }
.universe-paused .universe-section * { animation-play-state:paused!important; }
.reduce-motion .universe-section * { animation:none!important; transition:none!important; }
@media(prefers-reduced-motion:reduce) { .universe-section * { animation:none!important; transition:none!important; } }
@media(min-width:1680px) { .universe-section .course-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:1200px) {
 .universe-section-mode #main { padding:24px 28px 42px; }
 .universe-section-hero { min-height:240px; padding:30px; }
 .universe-section-hero h1 { font-size:31px; max-width:650px; }
 .universe-section-hero p:not(.eyebrow) { max-width:530px; font-size:14px; }
 .framework-workbench { grid-template-columns:minmax(0,1fr) 220px; gap:20px; }
 .framework-path-summary { padding:22px 18px; }
 .framework-path-main { padding-right:0; }
 .universe-section .course-grid { gap:18px; }
 .universe-section .course-card { padding:22px; }
 .universe-section .course-card h2 { font-size:22px; }
 .universe-empty { grid-template-columns:170px minmax(0,1fr); padding:25px 28px; gap:22px; }
 .universe-empty h2 { font-size:25px; }
 .universe-guide { gap:14px; }
 .universe-guide article { padding:0 10px; }
}
@media(max-width:1000px) {
 .universe-section-mode #main { padding:20px 24px 36px; }
 .universe-section-hero { min-height:238px; padding:26px; border-radius:20px; }
 .universe-section-hero h1 { font-size:29px; }
 .universe-section-hero::after { background:linear-gradient(90deg,#fbfaf6 0%,#fbfaf6e6 40%,#fbfaf666 100%); }
 .universe-section .course-grid { grid-template-columns:1fr; }
 .universe-section .course-description { min-height:0; }
 .universe-empty { grid-template-columns:140px minmax(0,1fr); padding:24px; gap:18px; min-height:280px; }
 .universe-empty h2 { font-size:23px; }
 .universe-empty p { font-size:13px; }
 .universe-guide h3 { font-size:16px; }
 .universe-guide p { font-size:12px; }
 .universe-support { flex-wrap:wrap; padding:20px; gap:12px; }
 .universe-support>div { flex:1; min-width:240px; }
 .universe-support>.btn { margin-left:56px; }
 .framework-workbench { grid-template-columns:1fr; }
 .framework-path-summary { position:static; order:-1; padding:20px; }
 .framework-path-summary h2 { margin-bottom:12px; font-size:19px; }
 .framework-path-summary dl { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:0; }
 .framework-path-summary dl>div { display:block; }
 .framework-path-summary dd { font-size:23px; margin-top:5px; }
 .framework-path-summary .framework-summary-note { border-bottom:0; margin-top:16px; padding-bottom:0; }
 .framework-path-summary>h3,.framework-path-summary>h3+p { display:none; }
 .framework-path-main { padding-top:0; }
}
@media(max-width:760px) {
 .universe-section-mode #main { padding:18px; }
 .universe-section-hero { padding:22px; }
 .universe-section-hero h1 { font-size:25px; }
 .universe-empty { grid-template-columns:100px minmax(0,1fr); padding:22px 18px; gap:14px; }
 .universe-empty h2 { font-size:21px; }
 .universe-guide { grid-template-columns:1fr; gap:18px; }
 .universe-guide article { display:grid; grid-template-columns:32px 1fr; gap:5px 12px; }
 .universe-guide article+article { border-left:0; border-top:1px solid #e5dac7; padding-top:18px; }
 .universe-guide article p { grid-column:2; }
 .universe-step { grid-row:1/3; font-size:17px; margin:0; }
 .universe-guide h3 { margin:0; }
 .universe-section-line { align-items:flex-start; flex-direction:column; }
}
/* Keep narrow desktop side panels usable instead of inheriting the old 820px canvas. */
body.universe-section-mode { min-width:0; }
@media(max-width:760px) {
 .universe-section-mode { --rail-width:76px; }
 .universe-section-mode .desktop-rail { padding:18px 6px 12px; }
 .universe-section-mode .rail-brand { justify-content:center; padding:0; }
 .universe-section-mode .rail-wordmark,.universe-section-mode .rail-section-label,.universe-section-mode .rail-mentor,.universe-section-mode .rail-account-copy { display:none; }
 .universe-section-mode .desktop-rail .nav button { flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:10px 3px; font-size:11px; min-height:62px; }
 .universe-section-mode .account-menu { margin-top:auto; }
 .universe-section-mode .account-menu summary { justify-content:center; }
 .universe-section-mode .account-menu summary>svg { display:none; }
 .universe-section-mode .topbar { padding-inline:20px; }
 .universe-section-mode .topbar>.small-text { display:none; }
 .universe-section-mode .home-toolbar { margin-left:auto; }
 .universe-section .assessment-row { display:flex; flex-wrap:wrap; }
 .universe-section .assessment-copy { width:100%; }
 .universe-section .assessment-progress { flex:1; }
 .universe-section .assessment-row>.row { flex-wrap:wrap; }
 .universe-settings .settings-reading { padding:22px; }
 .universe-settings .grid.cols2 { grid-template-columns:1fr; }
}
@media(max-width:1000px) {
 .framework-path-summary { display:grid; grid-template-columns:minmax(110px,1fr) minmax(0,1.8fr); gap:8px 22px; }
 .framework-path-summary .eyebrow { margin:0; grid-column:1; }
 .framework-path-summary h2 { grid-column:1; margin:0; font-size:18px; }
 .framework-path-summary dl { grid-column:2; grid-row:1/3; align-self:center; }
 .framework-path-summary .framework-summary-note { grid-column:1/-1; margin:8px 0 0; padding-top:10px; font-size:11px; }
}
