/* finesse · learning website · frosted navigation / softly tinted reading panels · approved yellow identity · pointer feedback */
@import url('site-theme-switch.css');
:root{color-scheme:light;--bg:#f3f2ed;--surface:#fcfbf7;--ink:#2c2d30;--text:#414248;--muted:#66666e;--action:#69509d;--blue:#7452b0;--soft:#eee9f5;--line:#57555f25;--yellow:#f8d846;--yellow-hover:#f5cc28;--yellow-soft:#f6efd5;--shadow:0 14px 36px #4e454811;--glass:#fcfbf5b8;--rim:#ffffffc2;--shade:#63564e16;--purple-panel:#eeebf5;--gold-panel:#f5efd9;--blue-panel:#e8eff3;--inner:#ffffff8a;--photo:#fff;--glow-warm:#eac56520;--glow-cool:#a5a2ce23;--track-top:#c3c7be;--track-bottom:#d8dbd2;--glass-top:#ffffffe0;--glass-bottom:#f9f8ec80;--edge:#fffffff0;--shine:#fff4ac;--glow:#ffc645;--thumb-shadow:#5f634c40;--theme-time:380ms;--nav-h:96px}
:root[data-theme=dark]{color-scheme:dark;--bg:#181a20;--surface:#23262e;--ink:#f0eee8;--text:#d4d3d9;--muted:#b0aeba;--action:#c2abe9;--blue:#c5acf0;--soft:#302b40;--line:#ddd6f325;--yellow:#f4d367;--yellow-hover:#ffe08a;--yellow-soft:#393329;--shadow:0 16px 36px #08090d40;--glass:#25272fc9;--rim:#e8e4ff24;--shade:#02030a55;--purple-panel:#2e2b3d;--gold-panel:#353128;--blue-panel:#252f3b;--inner:#1e202580;--glow-warm:#b88f2b0b;--glow-cool:#8d7dc520;--track-top:#040606;--track-bottom:#090c0d;--glass-top:#ffffff22;--glass-bottom:#a7b7f00a;--edge:#ffffff2d;--shine:#a8acff;--glow:#797cff;--thumb-shadow:#0009;--navy:#29243b;--dark-muted:#d9d0e7}
body{background:radial-gradient(ellipse 760px 600px at 95% 8%,var(--glow-warm),transparent 80%),radial-gradient(ellipse 700px 650px at 5% 40%,var(--glow-cool),transparent 80%),var(--bg);color:var(--text);transition:background-color .38s,color .38s}
body::before,body::after{display:none!important}
.glass-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
body.has-category-nav{--nav-h:96px}
body.has-category-nav .site-header{top:12px;left:20px;right:20px;width:auto;border:1px solid var(--rim);border-radius:22px;background:var(--glass);box-shadow:inset 0 1px 0 var(--rim),0 10px 32px var(--shade);backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%)}
.has-category-nav .site-header .header-inner.wrap{width:calc(100% - 40px);height:76px;min-height:76px;display:grid;grid-template-columns:auto 1fr auto auto;gap:22px}
.has-category-nav .site-header .brand{font-size:19px;gap:12px;color:var(--ink)}
.has-category-nav .site-header .brand-avatar{width:42px;height:42px;border:1px solid var(--rim);border-radius:13px;box-shadow:0 3px 8px var(--shade)}
.has-category-nav .site-header .category-nav{gap:5px;justify-self:center}
.has-category-nav .site-header .category-nav a{color:var(--muted);font-size:14px;min-height:36px;padding:0 14px;border-radius:10px;background:transparent}
.has-category-nav .site-header .category-nav a[aria-current=page]{background:linear-gradient(140deg,#ffe993,var(--yellow));color:#302b21;box-shadow:inset 0 1px 0 #fff9,0 3px 8px #55451714}
.glass-theme-control{display:flex;align-items:center;justify-content:center;min-height:44px;padding:4px}
.theme-toggle.compact{--toggle-width:66px;--toggle-height:36px;--thumb-size:30px;--pad:3px;--travel:30px;line-height:normal}
.has-category-nav .site-header .header-contact{justify-self:end;gap:0;padding:0;border:0;background:none}
.header-contact .contact-title,.header-contact .contact-action span{display:none!important}
.has-category-nav .header-contact .contact-actions{gap:6px}
.has-category-nav .header-contact .contact-action{width:38px;min-width:38px;height:38px;min-height:38px;padding:9px;border:1px solid var(--line);background:var(--inner);color:var(--action);border-radius:11px;box-shadow:inset 0 1px 0 var(--rim)}
.header-contact .contact-action svg{width:18px;height:18px}
.has-category-nav .site-header .category-nav a:hover{background:var(--soft);color:var(--action)}
.home-deck-page .home-main{width:min(1380px,calc(100% - 100px));padding-top:54px}
.home-deck-page .welcome{padding:0 0 50px;gap:36px;align-items:center}
.home-deck-page .hero-copy{padding-top:28px}
.home-deck-page .welcome h1{font-size:clamp(32px,3.2vw,49px);letter-spacing:-.04em;line-height:1.45}
.home-deck-page .welcome h1 span{color:var(--action)}
.hero-copy>p,.hero-learning p{color:var(--muted)}
.hero-learning{border:0!important;background:none!important;padding:14px 0!important}
.hero-learning .learning-sequence{padding:18px 12px;border:1px solid var(--rim);border-radius:16px;background:var(--inner);box-shadow:inset 0 1px 0 var(--rim),0 6px 15px var(--shade);gap:10px}
.learning-sequence li strong{color:var(--ink)}
.learning-sequence li span{color:var(--action);background:transparent}
.home-deck-page .welcome-actions{gap:20px;align-items:center}
.home-deck-page .welcome-actions .btn{width:auto!important;margin:0!important;padding:13px 26px!important;font-size:16px!important;white-space:nowrap}
.home-deck-page .welcome-actions .text-link{font-size:14px}
body .btn,.l01 a.l01-button{background:linear-gradient(140deg,#ffedaa,var(--yellow));color:#302b21;border:1px solid #d5b65470;border-radius:12px;box-shadow:inset 0 1px 0 #ffffffe0,0 4px 0 #c3a43c44,0 9px 18px #80683213;transition:transform .2s,box-shadow .2s;text-decoration:none}
@media(hover:hover){body .btn:hover,.l01 a.l01-button:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 #fff9,0 5px 0 #c3a43c44,0 12px 24px #80683222}body .btn:active,.l01 a.l01-button:active{transform:translateY(1px)}}
.deck-front{border-color:var(--rim)!important;box-shadow:0 20px 40px var(--shade),inset 0 1px 0 var(--rim)!important}
.deck-back{background:linear-gradient(140deg,var(--surface),var(--soft))!important;color:var(--action)!important;border-color:var(--rim)!important}
.deck-navigation button{background:var(--line);border-color:var(--line)}
.deck-navigation button[aria-pressed=true]{background:var(--action)}
.glass-first-lesson{display:flex;align-items:center;gap:24px;padding:28px 34px;margin:0 0 52px;border:1px solid var(--rim);border-radius:22px;background:linear-gradient(120deg,var(--purple-panel),var(--surface));box-shadow:inset 0 1px 0 var(--rim),0 12px 24px var(--shade);color:var(--ink);transition:transform .2s}
.glass-first-lesson:hover{text-decoration:none;transform:translateY(-2px)}
.glass-first-number{font-size:38px;line-height:1.4;font-weight:700;color:var(--action)}
.glass-first-lesson>span:nth-child(2){display:grid;gap:3px}.glass-first-lesson small{font-size:13px;color:var(--action)}.glass-first-lesson strong{font-size:23px}.glass-first-lesson>span>span{font-size:14px;color:var(--muted)}.glass-first-lesson>b{margin-left:auto;font-size:28px;font-weight:400}
.collection-header{margin-bottom:24px}.collection-header h2{font-size:28px}
.recommend-stage{border-radius:24px;border-color:var(--rim);box-shadow:inset 0 1px 0 var(--rim),0 12px 28px var(--shade)}
.recommend-panel,.recommend-copy{background:var(--surface)}
.recommend-cover,.theme-remake .recommend-cover{background:linear-gradient(130deg,var(--gold-panel),var(--yellow-soft));color:var(--ink)}
.theme-tools .recommend-cover,.theme-create .recommend-cover{background:linear-gradient(130deg,var(--purple-panel),var(--soft));color:var(--ink)}
.recommend-cover p,.recommend-copy p{color:var(--muted)}
.recommend-copy li{border-color:var(--line);color:var(--text)}
.topic-grid.recommend-choices{gap:20px;margin-top:22px}
.topic-tile.recommend-choice{border:1px solid var(--rim);background:var(--purple-panel);border-radius:20px;padding:26px;box-shadow:inset 0 1px 0 var(--rim),0 6px 16px var(--shade);transition:transform .2s,box-shadow .2s}
.topic-tile.recommend-choice:nth-child(2n){background:var(--gold-panel)}.topic-tile.recommend-choice:nth-child(3n){background:var(--blue-panel)}
.topic-tile.recommend-choice.is-current{border-color:var(--action)}
.recommend-select{color:var(--ink)}.topic-tile p{color:var(--muted)}
@media(hover:hover){.topic-tile.recommend-choice:hover{transform:translateY(-3px);box-shadow:inset 0 1px 0 var(--rim),0 12px 26px var(--shade)}}
.l01{--l01-paper:var(--surface);--l01-ink:var(--ink);--l01-muted:var(--muted);--l01-purple:var(--action);--l01-soft:var(--soft);--l01-line:var(--line);--l01-yellow:var(--yellow);--l01-yellow-soft:var(--gold-panel);--lesson-panel-purple:var(--purple-panel);--lesson-panel-yellow:var(--gold-panel);--lesson-panel-blue:var(--blue-panel)}
.l01-breadcrumb{padding-top:30px}.l01-breadcrumb span{color:var(--muted)}
.l01 .l01-intro{max-width:none;padding:36px 40px 40px;border:1px solid var(--rim);border-radius:26px;background:radial-gradient(ellipse at 90% 0,var(--glow-warm),transparent 65%),linear-gradient(135deg,var(--surface),var(--purple-panel));box-shadow:inset 0 1px 0 var(--rim),0 14px 30px var(--shade);margin:16px 0 40px}
.l01 h1{font-size:clamp(28px,3vw,44px);line-height:1.5}.l01 .l01-lead{font-size:18px;line-height:1.95}
.l01 .l01-toc{background:var(--glass);border:1px solid var(--rim);border-radius:18px;box-shadow:inset 0 1px 0 var(--rim),0 8px 22px var(--shade);backdrop-filter:blur(12px)}
.l01 .l01-toc-title{color:var(--ink)}.l01 .l01-toc a{color:var(--muted)}.l01 .l01-toc a[aria-current=location]{background:var(--soft);color:var(--action);box-shadow:inset 3px 0 var(--action)}.l01 .l01-toc a[aria-current=location] b{color:var(--action)}
.l01 .l01-toc-toggle{background:var(--surface);color:var(--action)}
.l01 .l01-chapter{border-color:var(--rim);border-radius:24px;box-shadow:inset 0 1px 0 var(--rim),0 12px 26px var(--shade)}
.l01>.l01-chapter:has(>.l01-step){box-shadow:none}
.l01>.l01-chapter:has(>.l01-step)>.l01-chapter-heading{border-bottom:1px solid var(--line);padding-bottom:24px}
.l01 .l01-step{--panel-border:var(--line)!important;border:1px solid var(--rim);border-radius:22px;padding:32px 36px;margin:32px 0;box-shadow:inset 0 1px 0 var(--rim),0 10px 26px var(--shade)}
.l01 #work-settings>.l01-step-model{--panel-fill:var(--purple-panel)}.l01 #work-settings>.l01-step-effort{--panel-fill:var(--gold-panel)}
.l01 .l01-step>h3{border-color:var(--line);font-size:22px;line-height:1.65}.l01 .l01-step>h3>span{color:var(--surface);background:var(--action);border-radius:10px}
.l01 .l01-step .l01-two>div,.l01 .l01-step .l01-diagram,.l01 .l01-step .l01-account-paths>section,.l01 .l01-step .l01-note,.l01 .l01-step .l01-permission-table,.l01 .l01-step .l01-checkpoint{background:var(--inner);border-color:var(--line)}
.l01 .l01-interface-key>div{border-color:var(--line);background:var(--purple-panel)}.l01 .l01-interface-key>div:nth-child(2n){border-color:var(--line);background:var(--gold-panel)}
.l01 .l01-step .l01-photo>figcaption{color:var(--muted)}
.l01 :is(.l01-note,.l01-diagram,.l01-example,.l01-save-example){border-color:var(--line)}
.l01 .l01-family-root{background:var(--action);color:var(--surface)}
.l01 .l01-gpt-modes>div,.l01 .l01-two>div{background:var(--surface);border-color:var(--line)}
.l01 .l01-gpt-modes>.l01-gpt-chat{background:var(--gold-panel)}
.l01 .l01-photo .l01-zoom{background:var(--photo);border:1px solid var(--line);border-radius:15px;box-shadow:0 4px 10px var(--shade);overflow:hidden}
.l01 .l01-photo img{filter:none;opacity:1}.l01 .l01-details{border-color:var(--line)}
.l01 :is(.l01-checkpoint,.l01-example,.l01-diagram,.l01-address,.l01-save-example){background:var(--soft);color:var(--text)}
.l01 .l01-footer{color:var(--muted);border-color:var(--line)}
.l01-image-dialog,.wechat-dialog{background:var(--surface);color:var(--text);border-color:var(--rim)}
.l01-image-dialog>div,.wechat-dialog-head,.wechat-dialog-foot{background:var(--surface);color:var(--text)}
:root[data-theme=dark] .l01 :is(.l01-note,.l01-note p,.l01-download-detail,.l01-desktop-note,.l01-checkpoint){color:var(--text)}
:root[data-theme=dark] .l01 :is(.l01-permission-table th,.l01-permission-table td){color:var(--text);border-color:var(--line)}
@media(min-width:1600px){.home-deck-page .home-main{padding-top:70px}.home-deck-page .welcome{padding-bottom:64px}}
@media(max-width:1190px){.has-category-nav .site-header .header-inner.wrap{gap:10px}.has-category-nav .site-header .category-nav a{font-size:13px;padding:0 9px}.has-category-nav .site-header .brand{font-size:17px}.header-contact{display:none!important}}
@media(max-width:1100px){body.has-category-nav{--nav-h:132px}.has-category-nav .site-header .header-inner.wrap{height:112px;grid-template-columns:1fr auto;grid-template-rows:54px 42px;gap:0 10px}.has-category-nav .site-header .category-nav{grid-column:1/-1;grid-row:2;justify-self:start}.glass-theme-control{grid-column:2;grid-row:1}.home-deck-page .home-main{width:calc(100% - 48px)}.l01 .l01-intro{padding:28px}.l01 .l01-step{padding:26px}}
@media(max-width:768px){body.has-category-nav{--nav-h:122px}.has-category-nav .site-header{top:8px;left:10px;right:10px;border-radius:18px;backdrop-filter:blur(8px)}.has-category-nav .site-header .header-inner.wrap{width:calc(100% - 24px);height:104px;min-height:104px;grid-template-columns:1fr auto;grid-template-rows:56px 40px}.has-category-nav .site-header .brand{grid-column:1;grid-row:1;font-size:16px}.has-category-nav .site-header .brand-avatar{width:32px;height:32px}.has-category-nav .site-header .category-nav{grid-column:1/-1;grid-row:2;gap:0;width:100%;justify-content:space-between}.has-category-nav .site-header .category-nav a{font-size:11px;padding:0!important;min-height:36px}.has-category-nav .site-header .category-nav .mobile-nav-label{padding:4px 6px}.has-category-nav .site-header .category-nav a[aria-current=page]{box-shadow:none}.has-category-nav .site-header .category-nav a[aria-current=page] .mobile-nav-label{background:linear-gradient(130deg,#ffedaa,var(--yellow));color:#302b21}.home-deck-page .home-main{width:calc(100% - 36px);padding-top:28px}.home-deck-page .welcome{gap:24px;padding-bottom:30px}.home-deck-page .hero-copy{padding-top:0}.home-deck-page .welcome h1{font-size:31px}.home-deck-page .welcome-actions{gap:12px}.home-deck-page .welcome-actions .btn{font-size:14px!important;padding:10px 16px!important}.home-deck-page .welcome-actions .text-link{font-size:12px}.glass-first-lesson{padding:22px;gap:16px;margin-bottom:36px}.glass-first-number{font-size:29px}.glass-first-lesson strong{font-size:19px}.glass-first-lesson>span>span{font-size:12px}.glass-first-lesson>b{display:none}.topic-grid.recommend-choices{gap:16px}.topic-tile.recommend-choice{padding:22px}.l01 .l01-intro{padding:25px 20px;margin-bottom:30px}.l01 .l01-step{padding:22px 18px;border-radius:18px;margin:24px 0}.l01 .l01-step>h3{font-size:19px}.l01 .l01-chapter{border-radius:18px}.l01 .l01-toc{backdrop-filter:none}.l01 h1{font-size:29px}.l01 .l01-lead{font-size:16px}.l01 .l01-start{gap:16px}.l01 .l01-start>span{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
/* Keep the glass header inset even when the base header uses sticky positioning. */
body.has-category-nav .site-header{width:calc(100% - 40px);margin:12px auto 0;height:auto;min-height:0;left:auto;right:auto;padding:0}
.l01 .l01-toc{top:calc(var(--lesson-header-size,var(--nav-h,76px)) + 32px)}
@media(max-width:899px){.l01 .l01-toc{top:calc(var(--lesson-header-size,var(--nav-h,76px)) + 24px)}}
@media(max-width:768px){body.has-category-nav .site-header{width:calc(100% - 20px);margin-top:8px}}

/* Header arrangement is maintained separately for this review. */

/* Three clear groups: identity, navigation, then display and contact actions. */
body.has-category-nav .site-header .header-inner.wrap{width:calc(100% - 44px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:26px;height:80px;min-height:80px;grid-template-rows:auto}
body.has-category-nav .site-header .brand{grid-column:1;grid-row:1;font-size:18px}
body.has-category-nav .site-header .category-nav{grid-column:2;grid-row:1;justify-self:center;gap:4px;width:auto}
body.has-category-nav .site-header .category-nav a{padding:0 12px;font-size:14px;min-height:38px}
.glass-header-tools{grid-column:3;grid-row:1;display:flex;align-items:center;gap:19px;justify-self:end;min-width:0}
.glass-header-tools .glass-theme-control{padding:6px 0;min-height:44px;flex-shrink:0}
body.has-category-nav .site-header .header-contact{display:flex!important;align-items:center;gap:12px;grid-column:auto;grid-row:auto;padding-left:19px;border-left:1px solid var(--line);margin:0;justify-content:flex-end;min-width:0}
body.has-category-nav .site-header .header-contact .contact-title{display:block!important;font-size:12px;font-weight:600;color:var(--muted)}
body.has-category-nav .site-header .header-contact .contact-action span{display:inline!important}
body.has-category-nav .site-header .header-contact .contact-actions{gap:8px}
body.has-category-nav .site-header .header-contact .contact-action{width:auto;min-width:0;height:40px;min-height:40px;padding:9px 12px;gap:7px;font-size:12px;line-height:20px;border-radius:11px}
body.has-category-nav .site-header .header-contact .contact-action svg{width:15px;height:15px}
body.has-category-nav .site-header .header-contact .contact-feedback{z-index:5}
@media(min-width:1121px) and (max-width:1350px){body.has-category-nav .site-header .header-inner.wrap{gap:15px;width:calc(100% - 32px)}body.has-category-nav .site-header .category-nav{gap:0}body.has-category-nav .site-header .category-nav a{padding:0 9px;font-size:13px}body.has-category-nav .site-header .brand{font-size:16px;gap:9px}.glass-header-tools{gap:13px}body.has-category-nav .site-header .header-contact{padding-left:13px;gap:8px}body.has-category-nav .site-header .header-contact .contact-action{padding:8px 9px;font-size:11px}}
@media(min-width:641px) and (max-width:1120px){body.has-category-nav{--nav-h:136px}body.has-category-nav .site-header .header-inner.wrap{height:118px;min-height:118px;grid-template-columns:auto minmax(0,1fr);grid-template-rows:64px 44px;gap:0 12px}body.has-category-nav .site-header .brand{grid-column:1;grid-row:1}.glass-header-tools{grid-column:2;grid-row:1;gap:16px}body.has-category-nav .site-header .category-nav{grid-column:1/-1;grid-row:2;justify-self:center;gap:14px}body.has-category-nav .site-header .header-contact{padding-left:16px;gap:10px}body.has-category-nav .site-header .header-contact .contact-action{padding:8px 10px}body.has-category-nav .site-header .category-nav a{font-size:14px;padding:0 14px}}
@media(min-width:641px) and (max-width:760px){body.has-category-nav .site-header .header-contact .contact-title{display:none!important}body.has-category-nav .site-header .brand{font-size:16px}.glass-header-tools{gap:12px}body.has-category-nav .site-header .header-contact{padding-left:12px}body.has-category-nav .site-header .category-nav{gap:4px}}
@media(max-width:640px){body.has-category-nav{--nav-h:176px}body.has-category-nav .site-header .header-inner.wrap{width:calc(100% - 24px);height:160px;min-height:160px;grid-template-columns:1fr auto;grid-template-rows:56px 42px 54px;gap:0 6px}body.has-category-nav .site-header .brand{grid-column:1;grid-row:1;font-size:16px}.glass-header-tools{display:contents}.glass-header-tools .glass-theme-control{grid-column:2;grid-row:1;justify-self:end}body.has-category-nav .site-header .category-nav{grid-column:1/-1;grid-row:2;justify-self:stretch;justify-content:space-between;gap:0;width:100%}body.has-category-nav .site-header .category-nav a{font-size:11px;min-height:38px;padding:0!important}body.has-category-nav .site-header .header-contact{grid-column:1/-1;grid-row:3;padding:10px 0 0;align-self:stretch;border-left:0;border-top:1px solid var(--line);width:100%;justify-content:space-between;gap:8px}body.has-category-nav .site-header .header-contact .contact-title{font-size:11px}body.has-category-nav .site-header .header-contact .contact-actions{gap:7px}body.has-category-nav .site-header .header-contact .contact-action{font-size:11px;padding:7px 9px;height:38px;min-height:38px;gap:5px}body.has-category-nav .site-header .header-contact .contact-action svg{width:14px;height:14px}.l01 .l01-toc{top:calc(var(--lesson-header-size,var(--nav-h,76px)) + 24px)}}
@media(max-width:359px){body.has-category-nav .site-header .header-contact .contact-title{font-size:10px}body.has-category-nav .site-header .header-contact .contact-action{font-size:10px;padding:6px 7px}body.has-category-nav .site-header .category-nav .mobile-nav-label{padding:4px}}

/* Shared surfaces for every directory, course and finished-video case. */
html{background:var(--bg);scroll-padding-top:calc(var(--nav-h,96px) + 28px)}
body{min-height:100vh}
:is(.category-tile,.lesson-card,.case-library-front,.study-section,.content>.card){border:1px solid var(--rim);border-radius:22px;box-shadow:inset 0 1px 0 var(--rim),0 10px 26px var(--shade)}
:is(.category-tile,.lesson-card){background:var(--purple-panel)}
:is(.category-tile,.lesson-card):nth-child(3n+2){background:var(--gold-panel)}
:is(.category-tile,.lesson-card):nth-child(3n){background:var(--blue-panel)}
.case-library-front{background:var(--surface)}
.case-library-info{background:var(--surface)}
.case-library-card:nth-child(3n+2) .case-library-info{background:var(--gold-panel)}
.case-library-card:nth-child(3n) .case-library-info{background:var(--purple-panel)}
.study-article>.study-section,.content>.card{background:var(--surface);padding:32px;margin:0 0 30px;scroll-margin-top:calc(var(--nav-h,96px) + 28px)}
.study-article>.study-section:nth-child(3n+2),.content>.card:nth-child(3n+2){background:var(--purple-panel)}
.study-article>.study-section:nth-child(3n),.content>.card:nth-child(3n){background:var(--gold-panel)}
.study-nav,.guide-nav,.lesson-main .nav{background:var(--glass);border:1px solid var(--rim);border-radius:18px;padding:16px 10px;box-shadow:inset 0 1px 0 var(--rim),0 8px 22px var(--shade);top:calc(var(--nav-h,96px) + 20px)}
.study-nav a[aria-current=location],.nav a[aria-current=location]{background:var(--soft);color:var(--action)}
:is(.workflow-map,.lesson-route){background:var(--gold-panel);color:var(--ink);border:1px solid var(--rim);box-shadow:inset 0 1px 0 var(--rim),0 8px 22px var(--shade)}
:is(.study-section-title>span,.case-back-symbol,.case-play,.mobile-case-play){color:#302b21}
:is(.study-two>div,.study-checks>div,.lesson-concepts article,.lesson-comparison>div,.mini,.res,.checks .check,.workflow-example,.remake-compare-card){background:var(--inner);border-color:var(--line);border-radius:15px}
.remake-course .remake-hero-comparison .remake-compare-card{background:transparent}
.remake-course .remake-compare-card figcaption{margin-bottom:8px}
.remake-course .remake-compare-card figcaption strong{line-height:1.35}
.remake-course .remake-compare-card figcaption span{line-height:1.45;margin-top:2px}
.remake-course .remake-compare-card .mobile-video-quality{margin-bottom:4px}
.remake-course .remake-compare-card>.text-link{margin-top:0;line-height:1.4;min-height:32px}
@media(max-width:768px){.remake-course .remake-compare-card>.text-link{min-height:44px}}
:is(.note,.lesson-takeaway,.step-result,.folder-tree,.prompt-block pre,.remake-prompt){background:var(--soft);color:var(--text);border-color:var(--line)}
.note.gold{background:var(--gold-panel);color:var(--text)}
:is(.lesson-copy,.copy,.copy-btn,.prompt-copy){background:var(--surface);color:var(--action);border-color:var(--line)}
:is(.study-finished,.remake-compare-card,.case-player-wrap) video{background:#14151a}
video,img{filter:none}
:is(.case-library-back,.cover){color:var(--on-dark)}
.case-library-back{background:var(--navy)}
.case-library-card:nth-child(even) .case-library-back{background:var(--yellow);color:#302b21}
.case-library-card:nth-child(even) .case-back-symbol{background:var(--navy);color:var(--on-dark)}
.end-nav{background:var(--navy)}
.source-disclosure,.experience,.table-wrap,.workflow-table{background:var(--surface);color:var(--text);border-color:var(--line)}
:is(.category-heading,.course-directory-head,.case-library-head){padding-top:36px}
:is(.category-heading,.course-directory-head,.case-library-head) h1{color:var(--ink)}
:is(.category-heading,.course-directory-head,.case-library-head) p{color:var(--muted)}
.video-quality button,.media-quality button{color:var(--text);background:var(--surface)}
.mobile-video-quality button{background:var(--surface);color:var(--action);border-color:var(--line)}
.mobile-video-quality button[aria-pressed=true]{background:var(--yellow);color:#302b21;border-color:var(--yellow)}
.home-deck-page .topic-grid .recommend-choice.is-current{background:var(--purple-panel)!important;color:var(--text)}
.deck-front,.deck-media{background:#14151a}
:root[data-theme=dark] .case-library-button{color:#302b21}
@media(max-width:768px){.study-article>.study-section,.content>.card{padding:22px 18px;border-radius:18px;margin-bottom:24px}.study-nav,.guide-nav,.lesson-main .nav{top:auto}:is(.category-heading,.course-directory-head,.case-library-head){padding-top:24px}.study-section{scroll-margin-top:calc(var(--nav-h,176px) + 24px)}}
/* Theme updates alter paint only; the page dimensions and scroll position stay put. */
@media(prefers-reduced-motion:no-preference){:is(.category-tile,.lesson-card,.case-library-info,.study-section,.content>.card,.l01-step,.l01-chapter,.l01-toc){transition:background-color .24s,color .24s,border-color .24s}}

/* Case stage: shared light/dark materials, stable dimensions. */
.mobile-video-quality:not([hidden]){gap:6px;padding:6px;border:1px solid var(--rim);border-radius:18px;background:var(--glass);box-shadow:inset 0 1px 0 var(--rim),0 5px 16px var(--shade);box-sizing:border-box}
.mobile-video-quality button{min-height:44px;padding:8px 17px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--muted);box-shadow:none;font-weight:600}
.mobile-video-quality button[aria-pressed=true]{background:linear-gradient(145deg,var(--yellow-hover),var(--yellow));color:#302b21;border-color:var(--rim);box-shadow:inset 0 1px 0 #ffffff70,0 3px 8px var(--shade)}
.mobile-video-quality button:hover:not([aria-pressed=true]){background:var(--inner);color:var(--ink)}
.mobile-video-quality a{padding:0 10px;color:var(--action);text-decoration:none;border-radius:10px}
.mobile-video-quality a:hover{background:var(--inner)}
.mobile-video-quality :is(button,a):focus-visible{outline:2px solid var(--action);outline-offset:3px}
.mobile-video-quality .mobile-video-message:empty{display:none}
.mobile-video-quality .mobile-video-message:not(:empty){flex-basis:100%;font-size:11px;line-height:1.6;text-align:center;padding:4px;color:var(--muted)}
.case-study-page .study-hero{position:relative;isolation:isolate;overflow:hidden;grid-template-columns:minmax(0,1fr) 370px;gap:48px;padding:40px 48px;margin-top:24px;border:1px solid var(--rim);border-radius:30px;background:linear-gradient(120deg,var(--surface),var(--bg));box-shadow:inset 0 1px 0 var(--rim),0 18px 40px var(--shade)}
.case-study-page .study-hero::before{content:"";position:absolute;z-index:-1;pointer-events:none;width:640px;height:640px;right:-120px;top:-28px;border-radius:50%;background:radial-gradient(ellipse at center,var(--purple-panel),transparent 68%);border:1px solid var(--line);box-shadow:0 0 0 34px var(--inner),0 0 0 35px var(--line);opacity:.6}
.case-study-page .study-hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;left:48px;bottom:40px;width:100px;height:34px;background-image:radial-gradient(circle,var(--action) 1px,transparent 1.4px);background-size:9px 9px;opacity:.2}
.case-study-page .study-hero>div{position:relative;padding-block:20px 42px}
.case-study-page .study-hero h1::before{content:"";display:block;width:46px;height:5px;margin-bottom:24px;border-radius:5px;background:var(--yellow);box-shadow:0 0 20px var(--glow-warm)}
.case-study-page .study-hero .study-intro{font-size:23px}
.case-study-page .study-tags span{border-radius:20px;padding:5px 12px;background:var(--inner);border-color:var(--line)}
.case-study-page .study-finished{position:relative;width:330px;max-width:100%;padding:20px 20px 16px;margin:auto;box-sizing:border-box;border:1px solid var(--rim);border-radius:28px;background:var(--glass);box-shadow:inset 0 1px 0 var(--rim),0 20px 50px var(--shade)}
.case-study-page .study-finished video{width:100%;border:1px solid var(--line);border-radius:19px;box-sizing:border-box;box-shadow:0 8px 20px var(--shade)}
.case-study-page .study-finished .mobile-video-quality{margin:14px 0 8px;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--inner);border-radius:16px}
.case-study-page .study-finished .mobile-video-quality[hidden]{display:none}
.case-study-page .study-finished .mobile-video-quality a{grid-column:1/-1;justify-content:center;min-height:36px;font-size:11px}
.case-study-page .study-finished .mobile-video-message{grid-column:1/-1}
.case-study-page .study-finished figcaption{font-size:12px;line-height:1.7;margin:10px 0 0}
.case-study-page .belt-study .study-hero{grid-template-columns:1fr;gap:20px}
.case-study-page .belt-study .study-hero h1::before{margin-inline:auto}
.case-study-page .belt-study .study-hero>div{padding-bottom:8px}
.case-study-page .belt-study .study-finished{width:100%;max-width:960px}
.case-study-page .belt-study .study-finished .mobile-video-quality{display:flex;width:fit-content;max-width:100%;margin-inline:auto}
@media(max-width:1100px) and (min-width:769px){.case-study-page .study-hero{grid-template-columns:minmax(0,1fr) 310px;padding:30px;gap:24px}.case-study-page .study-finished{width:300px}.case-study-page .study-hero::after{left:30px}}
@media(max-width:768px){.case-study-page .study-hero{grid-template-columns:1fr;gap:24px;padding:24px 18px;border-radius:24px;margin-top:20px}.case-study-page .study-hero>div{padding:0}.case-study-page .study-hero::after{display:none}.case-study-page .study-hero::before{top:200px;right:-400px}.case-study-page .study-hero h1::before{margin-bottom:18px}.case-study-page .study-hero .study-intro{font-size:20px}.case-study-page .study-finished{width:330px;padding:14px;border-radius:24px}.case-study-page .belt-study .study-finished{padding:10px}.case-study-page .belt-study .study-finished .mobile-video-quality{display:grid;width:100%}}

/* Center each learning step as an equal-width group. */
.hero-learning .learning-sequence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.hero-learning .learning-sequence li{justify-content:center;padding-inline:0;text-align:center;min-width:0}
