:root{--ink:#181a19;--paper:#f1f1f1;--card:#fff;--blue:#252826;--muted:#818380;--line:#e9eae7;--mint:#ddf1df;--coral:#f0ded1}
body{background:#e5e6e4;padding:7px;font-family:'DM Sans',Arial,sans-serif;font-size:13px;color:var(--ink)}
.sidebar{border-right:0}.sidebar .brand{flex-direction:row;align-items:center}.sidebar .nav-item.active span{color:#181a19}.mobile-menu{display:none}.topbar{position:relative;top:auto}
.app-shell{background:var(--paper);border-radius:26px;min-height:calc(100vh - 14px)}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{font-family:inherit}button,a{transition:background .18s,box-shadow .18s,transform .18s}button:focus-visible,a:focus-visible{outline:2px solid #4eaa61;outline-offset:4px}button:hover{transform:translateY(-1px)}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.sidebar{inset:7px auto 7px 7px;width:190px;padding:26px 15px;background:transparent;color:var(--ink);border-radius:26px 0 0 26px}
.brand{display:flex;align-items:center;gap:11px;margin:0 11px 37px;font:600 23px 'DM Sans',sans-serif;letter-spacing:-1.1px;color:var(--ink)}.brand-dot{color:#68b678}.brand-mark{width:29px;height:29px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;border:1.5px solid #171a18;overflow:hidden;border-radius:50%;transform:rotate(-8deg)}.brand-mark i{border:.5px solid #171a18;background:#e0e1de}.brand-mark i:nth-child(2){background:white}.brand-mark i:nth-child(3){background:#858883}
nav{gap:6px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 11px;border-radius:9px;font-size:12px;color:#646762;text-decoration:none;min-height:41px}.nav-item span{width:auto;font-size:12px;color:inherit}.nav-item.active,.nav-item:hover{background:#fff;color:#151815;box-shadow:0 2px 3px #00000006}.nav-item.active{font-weight:600}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:10px;font-size:10px;color:#999b97;line-height:1.6;padding:10px 1px}.round-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e8e9e6;background:#fff;color:#575c56;border-radius:50%;cursor:pointer;text-decoration:none;flex-shrink:0}.round-button:hover{background:#e4f2e6}
main{margin-left:190px;width:calc(100% - 190px);min-width:0;padding:0 20px 22px 10px}.topbar{height:74px;padding:0;gap:15px;border:0;background:none;display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.topbar-title{display:flex;align-items:center;gap:12px}.topbar h1{font:600 25px 'DM Sans',sans-serif;letter-spacing:-.8px;margin:0;white-space:nowrap}.topbar-actions{gap:10px;display:flex;align-items:center}.dashboard-search{display:flex;gap:8px;align-items:center;background:#ffffffb5;padding:0 13px;border-radius:24px;width:235px;height:36px;color:#747974}.dashboard-search svg{width:14px;height:14px}.dashboard-search input{font:11px 'DM Sans',sans-serif;width:100%;min-width:0;padding:0;border:0;outline:0;background:none;color:var(--ink)}.create-top{height:36px;padding:0 19px;border-radius:24px;background:#242624;color:white;border:3px solid #373a37;box-shadow:0 0 0 1px white;display:flex;align-items:center;gap:9px;cursor:pointer;font-size:11px}.create-top svg{width:13px;height:13px}.profile{padding:0;background:white;border-radius:50%;border:2px solid white;width:36px;height:36px}.avatar{width:32px;height:32px;border-radius:50%;background:#e8dccb;color:#615443;font:600 12px 'DM Sans',sans-serif;display:flex;align-items:center;justify-content:center}.profile-copy{display:none}.page{padding:0}.page.active-page{display:block}.mobile-menu{color:var(--ink)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px}.dashboard-main,.dashboard-rail{display:flex;flex-direction:column;gap:12px;min-width:0}.dash-card{background:#ffffffed;border:1px solid #f9faf8;border-radius:24px;box-shadow:0 2px 3px #00000002;padding:23px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.card-heading h2{font:600 14px 'DM Sans',sans-serif;letter-spacing:-.3px;margin:0}.period-pill,.card-heading select{font:10px 'DM Sans',sans-serif;color:#737970;border:1px solid #e0e2de;background:#fff;border-radius:24px;padding:8px 12px}.card-heading select{max-width:150px;cursor:pointer}.overview{min-height:0;padding:23px 19px}.overview .card-heading{padding:0 5px}.metric-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid #eceeea;border-radius:24px;background:#f8f9f7;padding:6px}.metric{padding:20px 22px;min-width:0}.metric:first-child{background:white;border-radius:20px;box-shadow:0 4px 13px #00000004}.metric-label{display:flex;align-items:center;gap:10px;font-size:11px}.metric-label svg{width:15px;height:15px}.metric-value{display:flex;align-items:center;gap:12px;margin:10px 0 1px;flex-wrap:wrap}.metric-value strong{font:500 44px 'DM Sans',sans-serif;line-height:1.05;letter-spacing:-2px}.metric-value strong span{font-size:17px;letter-spacing:-.5px}.metric-badge{font-size:8px;background:#f1f2ef;border-radius:4px;padding:4px 5px;color:#73786e;white-space:nowrap}.metric-badge.green{color:#41995d;background:#eaf6ed}.metric>small{font-size:9px;color:#90958c}.overview-welcome{padding:23px 5px 22px}.overview-welcome strong{font-size:12px;font-weight:500}.overview-welcome p{font-size:10px;color:#878c83;margin:5px 0 0}.voice-line{display:flex;justify-content:space-between;gap:8px;padding:7px 10px 2px}.voice-line button,.voice-line a{display:flex;align-items:center;flex-direction:column;gap:9px;font:10px 'DM Sans',sans-serif;background:none;border:0;text-decoration:none;color:#565c53;cursor:pointer;padding:0}.voice-avatar{width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:500;border:3px solid #fff;box-shadow:0 0 0 1px #ebede8}.v1{background:linear-gradient(140deg,#e7ddd0,#c2ad8e);color:#7c6043}.v2{background:linear-gradient(140deg,#dbe3dc,#92ac9d);color:#365444}.v3{background:linear-gradient(140deg,#efdbd4,#c38d7a);color:#7e4939}.v4{background:linear-gradient(140deg,#dae1e9,#99a8bc);color:#44576c}.v5{background:linear-gradient(140deg,#e2dddf,#aaa0a9);color:#5b515b}.all-voices{background:white;border:1px solid #dfe3da;color:#7a8274;box-shadow:none}
.activity-card{min-height:272px;overflow:hidden}.activity-chart{display:flex;align-items:end;gap:20px;height:163px;padding:10px 0 0}.chart-summary{flex-shrink:0;margin-bottom:27px}.chart-summary strong{display:block;font-size:38px;font-weight:500;letter-spacing:-2px;color:#b8bdb5;line-height:1.15}.chart-summary strong span{font-size:20px;letter-spacing:-.5px}.chart-summary small{font-size:9px;color:#a4aba0}.chart-bars{display:flex;align-items:end;gap:12px;flex:1;height:100%;min-width:0}.chart-column{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:10px}.chart-bar{width:100%;max-width:39px;border-radius:6px 6px 0 0;background:#e9ece5;min-height:3px}.chart-bar.has-value{background:linear-gradient(180deg,#5fc56a,#e5f6e7);border-top:1px solid #4cb657}.chart-column small{font-size:8px;color:#959c8e;height:12px}.chart-note{font-size:10px;color:#90978a;margin:18px 0 0}.start-card{display:flex;align-items:center;gap:15px;padding:20px 23px}.start-icon{font-size:25px;color:#6b9470;background:#edf4eb;border-radius:13px;width:45px;height:45px;display:grid;place-items:center;flex-shrink:0}.start-card h2{font-size:13px;font-weight:500;margin:0 0 5px}.start-card p{font-size:10px;color:#858c7c;margin:0;line-height:1.6}.start-card>.round-button{margin-left:auto}
.topics-card{padding:23px 18px 18px}.tiny-dot{width:6px;height:6px;border-radius:50%;background:#89c896}.topics-list{display:flex;flex-direction:column;gap:5px}.topic-row{display:flex;gap:12px;align-items:center;padding:8px 0;text-align:left;background:none;border:0;width:100%;border-radius:12px;cursor:pointer;color:var(--ink)}.topic-row:hover{background:#f4f6f0}.topic-art{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;overflow:hidden;position:relative;flex-shrink:0;font:600 28px 'DM Sans',sans-serif}.cafe{background:linear-gradient(145deg,#c4d4a0,#65834e);color:#faf3d3}.travel{background:linear-gradient(20deg,#ff7845 10%,#ffbc8c 42%,#658ec9 43%,#324eaa);color:#fff}.work{background:linear-gradient(150deg,#eee2c7,#b6c1b1 50%,#797e70);color:#b5521c}.nature{background:linear-gradient(0deg,#53986a 25%,#b9d776 26%,#f6d578 58%,#f5a35c);color:#fff0ad}.culture{background:linear-gradient(170deg,#ff889e 40%,#424692 41%,#688ad1);color:#ffda81}.topic-copy{flex:1;min-width:0}.topic-copy strong{font-size:10px;line-height:1.6;font-weight:600;display:block}.topic-copy small{font-size:9px;line-height:1.5;color:#8b9085;display:block;max-width:135px}.topic-meta{text-align:right;flex-shrink:0}.topic-meta b{font-size:10px;font-weight:600;display:block;margin-bottom:5px}.topic-meta small{display:block;color:#57966b;background:#f1f8f2;border:1px solid #d8eadb;border-radius:4px;font-size:8px;padding:2px 4px}.outline-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px;background:white;border:1px solid #dde1d8;border-radius:22px;cursor:pointer;font-size:10px;color:#555b50;margin-top:18px}.outline-button svg{width:13px;height:13px}.outline-button:hover{background:#eef5ec}.recent-card{min-height:197px;padding:22px 18px}.text-link{border:0;background:none;color:#798970;font-size:10px;padding:0;cursor:pointer}.recent-empty{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:5px 0 0}.recent-empty>span{font-size:25px;color:#a3b59b}.recent-empty strong{font-size:11px;font-weight:500}.recent-empty p{font-size:10px;color:#8c9285;line-height:1.7;margin:0 0 6px;max-width:200px}.recent-row{width:100%;border:0;background:none;display:flex;gap:12px;align-items:center;text-align:left;padding:10px 0;cursor:pointer}.recent-avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#e8eee2;color:#778367;font-size:13px;flex-shrink:0}.recent-row strong{font-size:11px;display:block;font-weight:500}.recent-row small{font-size:9px;color:#9a9e94;display:block;margin-top:4px}.daily-note{padding:10px 22px;color:#969e8e}.daily-note>span{font-size:8px;letter-spacing:1.4px}.daily-note p{font-size:19px;line-height:1.4;letter-spacing:-.5px;color:#828d78;margin:10px 0}.daily-note small{font-size:10px}
/* Shared atelier, player, library and account visual language. */
.studio-intro{padding:22px 8px 27px;margin:0}.studio-intro .eyebrow{color:#87917f}.studio-intro h1{font:500 33px 'DM Sans',sans-serif;letter-spacing:-1px;line-height:1.2}.studio-intro h1 br{display:none}.studio-intro h1 i{color:#819279;font-style:normal}.studio-intro p{color:#858b7e;font-size:12px;line-height:1.7}.studio-grid{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:16px}.card,.composer,.player-card{border:1px solid #eceee8;border-radius:23px;background:white;box-shadow:none}.composer{padding:28px}.form-heading{margin-bottom:20px}.section-number{color:#8a9482}.composer textarea{background:#fafbf8;border-color:#e2e5dc;border-radius:14px;font-size:13px;min-height:120px}.composer input,.composer select{border-color:#e2e5dc;border-radius:10px;background:#fafbf8;color:var(--ink)}.composer .source-option{border-radius:13px;background:#fafbf8}.source-option:has(input:checked){background:#f0f6ed;border-color:#a9b9a1;box-shadow:none}.source-option small{font-size:10px}.source-option strong{font-size:12px}.composer .source-option input{accent-color:#6c8964}.primary{background:#282c27;color:white;border-radius:24px;border-color:#282c27;font-family:'DM Sans',sans-serif;box-shadow:none}.primary:hover{background:#414b3a}.composer label,.composer legend{font-size:12px}.lesson-settings{gap:10px}.voice-settings{border-color:#e5e9de;border-radius:12px}.guide-art,.player-art{background:linear-gradient(145deg,#dbe8d4,#aac49d);border-radius:23px;color:#46663c}.guide-art-caption{font-family:'DM Sans',sans-serif;font-size:27px}.guide-disc{background:#f3f7f0;color:#55734d}.sound-bars i,.audio-wave i{background:#759a66}.guide-copy{padding:24px 10px}.guide-copy h2,.transcript h2,.library-heading h1,.lesson-heading h1,.account-side h2,.generation h1{font-family:'DM Sans',sans-serif;letter-spacing:-1px}.guide-copy h2{font-size:22px}.guide-copy li>span{background:#e7ede2;color:#607853;border:0}.guide-copy strong{font-size:12px}.guide-copy p{font-size:11px}.guide-footnote{color:#88957f}.library-heading,.lesson-heading{margin-top:25px}.lesson-heading h1,.library-heading h1{font-size:32px}.library-heading h1 i,.lesson-heading h1 i,.transcript h2 i,.generation h1 i{font-style:normal;color:#849478}.row-art{background:#e7eedf;color:#7a906b;border-radius:15px}.row-play,.play-button{background:#2d342a;color:white}.download-button,.save-button{border-color:#dee5d8;border-radius:20px;color:#58664c;background:white}.lesson-notes{border-color:#dfe5d8}.chips span{background:#edf2e7;color:#637954}.line.current{background:#f1f6ed}.camille-dot{background:#8da779}.thomas-dot{background:#bf997f}.account-avatar{background:#e3eddc;color:#536b44}.account-side{border-radius:24px;background:#e6eddf;color:#586e48}.account-tabs button.selected{background:#e6eedf;color:#506842}.account-card input{border-color:#dce3d5;border-radius:12px}.orb{background:#e1ecd9;color:#6b885a}.stage.active{color:#63844f}.empty-state>span{color:#87997b}.lesson-topic textarea{border-color:#dfe5d8;border-radius:14px}.back-button,.text-button{color:#768c68}.account-card h2{font-family:'DM Sans',sans-serif}.account-grid{margin-top:25px}.form-error{color:#ba4b43}
@media(min-width:1400px){main{padding-right:35px;padding-left:20px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 350px}.overview{min-height:0}.metric{padding:25px 28px}.voice-line{padding-top:15px}.activity-card{min-height:310px}.activity-chart{height:190px}.topic-row{padding:11px 0}.topic-copy strong{font-size:12px}.topic-copy small{font-size:10px}}
@media(max-width:1100px){.sidebar{width:160px;padding:24px 10px}.brand{font-size:21px;margin-left:5px}.nav-item{gap:9px;font-size:10px;padding:10px 8px}.nav-item span{font-size:10px}main{margin-left:160px;width:calc(100% - 160px);padding-left:8px;padding-right:14px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 265px}.dashboard-search{width:195px}.topbar h1{font-size:23px}.metric{padding:18px 15px}.metric-value{gap:8px}.metric-value strong{font-size:38px}.topic-row{gap:9px}.topic-art{width:42px;height:42px}.topic-copy small{font-size:8px}.dash-card{padding:20px 16px}.chart-bars{gap:8px}.chart-summary strong{font-size:32px}.chart-summary strong span{font-size:17px}.voice-avatar{width:40px;height:40px}.voice-line{padding-left:3px;padding-right:3px}.voice-line button,.voice-line a{font-size:9px}}
@media(max-width:900px){.dashboard-search{width:170px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 240px}.metric-value{align-items:flex-start;flex-direction:column;gap:5px}.metric-value strong{font-size:34px}.metric-label{gap:6px;font-size:10px}.voice-line{flex-wrap:wrap;row-gap:18px}.voice-avatar{width:36px;height:36px}.voice-line button,.voice-line a{font-size:8px}.topic-art{width:35px;height:39px;font-size:23px}.topic-copy strong{font-size:9px}.topic-meta small{font-size:7px}.topic-meta b{font-size:9px}.chart-summary{margin-bottom:27px}.activity-chart{gap:13px}.chart-summary strong{font-size:28px}.chart-bars{gap:5px}.studio-grid{grid-template-columns:1fr}.studio-guide{display:grid;grid-template-columns:1fr 1fr;gap:20px}.guide-art{min-height:280px}.studio-intro h1{font-size:28px}.lesson-layout{grid-template-columns:1fr}.account-grid{grid-template-columns:1fr}}
@media(max-width:760px){body{padding:0}.app-shell{border-radius:0;min-height:100vh}.sidebar{display:none;inset:0 auto 0 0;width:210px;background:#f1f1ef;padding:25px 18px;box-shadow:15px 0 50px #0002;border-radius:0;z-index:10}.navigation-open .sidebar{display:flex}.sidebar .nav-item span{font-size:12px}.sidebar .nav-item{gap:12px}main{width:100%;margin-left:0;padding:0 16px 22px}.mobile-menu{display:inline-flex;align-items:center;justify-content:center;background:white;border:0;border-radius:50%;width:32px;height:32px;padding:0;font-size:16px}.topbar{height:76px}.topbar-title{gap:9px}.topbar h1{font-size:21px}.dashboard-search{width:165px}.topbar-actions{gap:8px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 260px}.metric-value{flex-direction:row;align-items:center}.metric-badge{display:none}.voice-line{gap:8px}.voice-line button,.voice-line a{font-size:9px}.voice-line>:nth-child(4),.voice-line>:nth-child(5){display:none}.overview{min-height:0}.metric{padding:17px 11px}.overview-welcome{padding-top:21px;padding-bottom:20px}.metric-value strong{font-size:34px}.chart-summary strong{font-size:26px}.chart-summary strong span{font-size:13px}.chart-summary small{font-size:8px}.start-card{gap:10px}.start-card h2{font-size:11px}.start-card p{font-size:9px}.start-icon{width:33px;height:33px;font-size:20px}.topics-card{padding:20px 14px}.topic-art{width:39px;height:39px}.topic-copy strong{font-size:10px}.topic-copy small{font-size:9px}.activity-card{min-height:266px}}
@media(max-width:620px){main{padding:0 12px 18px}.topbar{flex-wrap:wrap;height:auto;padding:20px 2px 16px;gap:12px}.topbar h1{font-size:22px}.topbar-actions{margin-left:auto}.dashboard-search{display:none}.create-top{height:33px;padding:0 13px}.topbar-actions .profile{width:33px;height:33px}.dashboard-grid{grid-template-columns:1fr;gap:12px}.dashboard-main,.dashboard-rail{gap:12px}.dash-card{border-radius:21px;padding:21px}.overview{min-height:0}.metric{padding:19px 17px}.metric-value strong{font-size:40px}.metric-label{font-size:11px}.metric-badge{display:inline-block}.voice-line>:nth-child(4),.voice-line>:nth-child(5){display:flex}.voice-avatar{width:40px;height:40px}.voice-line button,.voice-line a{font-size:9px}.voice-line{padding-top:9px}.overview-welcome{padding-bottom:20px}.activity-chart{height:156px;gap:23px}.chart-summary strong{font-size:35px}.chart-summary strong span{font-size:18px}.chart-bars{gap:9px}.chart-column small{font-size:8px}.chart-summary small{font-size:9px}.start-card{gap:12px}.start-card h2{font-size:12px}.start-card p{font-size:10px}.start-icon{width:42px;height:42px}.topic-row{padding:11px 0;gap:14px}.topic-art{width:48px;height:48px}.topic-copy strong{font-size:12px}.topic-copy small{font-size:10px;max-width:unset}.topic-meta b{font-size:11px}.topic-meta small{font-size:9px}.daily-note{padding-bottom:20px}.studio-intro{padding:18px 3px}.studio-intro h1{font-size:27px;line-height:1.3}.composer{padding:22px 18px}.source-options{grid-template-columns:1fr}.lesson-settings{grid-template-columns:1fr 1fr}.mode-picker{grid-column:1 / -1}.studio-guide{display:block}.guide-art{min-height:240px}.guide-copy{padding:22px 8px}.lesson-heading h1,.library-heading h1{font-size:27px}.lesson-actions{flex-wrap:wrap}.lesson-title-fields{flex-wrap:wrap}.account-card{padding:23px}.profile-copy{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* OralLab brand assets */
.orallab-logo{display:block;object-fit:contain;height:auto;background:transparent;border-radius:12px}.sidebar .brand{display:block;margin:0 0 20px}.sidebar .sidebar-logo{width:100%;max-width:160px;margin:auto}.guide-logo{position:absolute;left:18px;top:16px;width:72px;z-index:1}.player-logo{position:absolute;top:16px;left:18px;width:82px;z-index:1}@media(max-width:620px){.sidebar .sidebar-logo{max-width:160px}}

.sidebar-bottom.help-button{width:100%;border:0;background:transparent;border-radius:10px;text-align:left;font:500 12px 'DM Sans',sans-serif;cursor:pointer;padding:10px 1px}
.sidebar-bottom.help-button:hover{background:#e8ece7;color:#282c27}
.help-button:focus-visible{outline:2px solid #6c8964;outline-offset:3px}
.help-page h1{font:500 32px 'DM Sans',sans-serif;margin:20px 0 16px}
.help-form{display:grid;gap:20px;max-width:620px;padding:28px;margin-top:28px}
.help-form label{display:grid;gap:8px;font-size:12px;font-weight:600}
.help-form input,.help-form select,.help-form textarea{width:100%;min-width:0;padding:12px;border:1px solid #e2e5dc;border-radius:10px;background:#fafbf8;color:var(--ink);font:400 13px 'DM Sans',sans-serif}
.help-form textarea{resize:vertical;min-height:140px}
.help-form input:focus,.help-form select:focus,.help-form textarea:focus{outline:2px solid #a9b9a1;border-color:#6c8964}
.help-note,#help-status{margin:0;font-size:12px;color:#858b7e;line-height:1.6}
@media(max-width:560px){.help-form{padding:20px}}
