.learning-app .learning-authoring{margin:20px 0;padding:16px 0;border-block:1px solid var(--line);min-width:0}
.learning-app .learning-authoring summary{cursor:pointer;min-height:44px;line-height:1.8;font-size:14px}
.learning-app .authoring-actions{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}
.learning-app .authoring-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 14px;border:1px solid var(--line);border-radius:6px;background:var(--pale);color:var(--ink);font-size:13px;white-space:normal}
.learning-app .learning-authoring textarea{display:block;width:100%;box-sizing:border-box;min-width:0;max-width:100%;font-size:14px;line-height:1.8;overflow-wrap:anywhere;white-space:pre-wrap}
.learning-app .learning-authoring label{display:block;font-size:13px;margin:12px 0}
.learning-app .authoring-status{font-size:12px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}
.learning-app{min-height:100dvh}
.learning-app .sidebar{inset:auto 0 0;width:100%;height:calc(72px + env(safe-area-inset-bottom));padding:0 12px env(safe-area-inset-bottom);border:0;border-top:1px solid var(--line);background:var(--day-surface,#f6f5f0);z-index:20}
.learning-app .sidebar nav{display:grid;grid-template-columns:repeat(3,1fr);gap:0;width:min(720px,100%);margin:auto;height:72px}
.learning-app .sidebar nav button{flex-direction:column;gap:4px;justify-content:center;font-size:11px;border-radius:0;padding:8px;background:transparent;color:var(--muted)}
.learning-app .sidebar nav button.active{border-top:2px solid var(--green);color:var(--green);background:transparent}
.learning-app .sidebar nav button.active:after{display:none}
.learning-app .workspace{margin-left:0;padding-bottom:calc(80px + env(safe-area-inset-bottom))}
.learning-app .topbar{height:64px;padding-inline:max(20px,calc((100% - 980px)/2));gap:12px;background:transparent}
.learning-app .topbar .brand{gap:8px}.learning-app .topbar .brand>span{font-size:23px}
.learning-app #appearance-toggle{margin-left:auto;flex:0 0 44px;width:44px;height:44px}
.learning-app #learning-account-button{flex:0 0 44px;width:44px;height:44px}
.learning-app .learning-account-status{max-width:980px;margin:0 auto;padding:12px 20px;overflow-wrap:anywhere}
.learning-app #learning-account-dialog .actions{display:flex;flex-wrap:wrap;gap:12px}
.learning-app #learning-account-dialog input[type="checkbox"]{width:auto}
.learning-app #learning-account-dialog :is(p,a,button){overflow-wrap:anywhere;white-space:normal}
.learning-app .topbar .breadcrumb{min-width:0;overflow-wrap:anywhere;white-space:normal}
.learning-app main{max-width:980px;padding-top:20px;min-height:calc(100dvh - 190px);overflow-wrap:anywhere}
.learning-app .course-heading{gap:12px;flex-wrap:wrap}.learning-app .course-heading h1{font-size:30px}
.learning-app .theme-selector{font-size:14px;margin:12px 0 20px;line-height:1.8}
.learning-app .theme-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,180px);gap:12px;margin:12px 0 20px}
.learning-app .theme-controls label{min-width:0;margin:0}.learning-app .theme-controls select{width:100%;min-width:0}
@media(max-width:500px){.learning-app .theme-controls{grid-template-columns:minmax(0,1fr)}.learning-app .theme-controls label:last-child{max-width:180px}.learning-app .topbar{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;height:auto;min-height:64px;gap:2px 8px;padding-block:8px}.learning-app .topbar .breadcrumb{grid-column:1 / -1;grid-row:2}.learning-app #appearance-toggle{grid-column:2;grid-row:1}.learning-app #learning-account-button{grid-column:3;grid-row:1}}
.learning-app .course-story{animation:none}.learning-app .course-story>.course-story-copy{flex-basis:50%;max-width:400px}
.learning-app .course-story .story-theme{font-size:14px;color:white;line-height:1.7;margin-bottom:12px;text-shadow:0 1px 4px #000}
.learning-app .course-story>.story-scenery{object-position:center 55%}
.learning-app .day-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;align-items:center;margin:16px 0}
.learning-app .day-controls select{width:100%;min-width:0;font-size:14px}.learning-app .day-controls button{height:44px;width:44px}
.learning-app .learning-path{display:flex;flex-direction:column;width:min(100%,410px);max-width:410px;margin-inline:auto}
.learning-app .learning-path li,.learning-app .course-goal{min-width:0}.learning-app .learning-path button{gap:24px;font-size:18px}
.learning-app .learning-path li:not(:last-child):after{display:block}
.learning-app .course-goal small{display:block}.learning-app .learning-path progress{width:100%;max-width:140px;height:6px}
.learning-app .practice-surface{max-width:760px;margin:24px auto}.learning-app .session-top{flex-wrap:wrap}
.learning-app .practice-surface h1{font-size:25px;margin:16px 0}.learning-app .practice-surface p{line-height:1.9}
.learning-app label{display:block;font-size:13px;line-height:1.8;margin:14px 0}
.learning-app label>input,.learning-app label>textarea,.learning-app label>select{margin-top:6px;width:100%;min-width:0;font-size:16px}
.learning-app textarea{min-height:110px;resize:vertical}.learning-app .page-footer{max-width:980px;margin:auto}
.learning-app #toast{bottom:95px}.learning-app dialog{max-width:720px;width:calc(100% - 32px);max-height:calc(100dvh - 48px);overflow:auto}
.learning-app .dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.learning-app .story-section p{margin:14px 0;line-height:1.9}
.learning-app .skip-link{position:fixed;top:-100px;left:20px;z-index:40;background:white;padding:12px}.learning-app .skip-link:focus{top:8px}
.learning-app :is(button,a,summary):focus-visible{outline:3px solid #987325;outline-offset:3px}
[data-theme="night"] .learning-app .sidebar{background:var(--night-surface);color:var(--ink)}
[data-theme="night"] .learning-app .skip-link{background:var(--night-surface);color:var(--ink)}
@media(max-width:700px){.learning-app .topbar .brand>span{font-size:20px}.learning-app .course-heading h1{font-size:24px}.learning-app .course-heading>span{font-size:11px}.learning-app .course-story>.course-story-copy{flex-basis:60%}.learning-app .course-story .story-theme{font-size:12px}.learning-app .practice-surface h1{font-size:22px}}