:root{color:#1d2433;background:#f6f8fa;font-family:Arial,Helvetica Neue,Helvetica,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100dvh;background:#f6f8fa}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;height:100dvh;padding:24px 18px;color:#f8fafc;background:#182230}.brand{display:flex;align-items:center;gap:12px;margin-bottom:34px}.brand-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;color:#072015;background:#7dd8c7;font-weight:800}.brand strong,.brand small{display:block}.brand small{margin-top:3px;color:#aeb8c7}.nav-list{display:grid;gap:6px}.nav-item{padding:11px 12px;border-radius:8px;color:#cbd5e1;text-decoration:none}.nav-item:hover,.nav-item.active{color:#fff;background:#263447}.main-panel{width:100%;max-width:1440px;padding:28px}.topbar,.panel-header,.topbar-actions,.lesson-meta{display:flex;align-items:center}.topbar,.panel-header{justify-content:space-between;gap:18px}.topbar{margin-bottom:24px}.topbar h1,.panel h2{margin:0}.topbar h1{font-size:clamp(1.6rem,2vw,2.2rem);line-height:1.15}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.eyebrow{margin:0 0 7px;color:#5b6676;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.button{min-height:40px;border:1px solid transparent;border-radius:8px;padding:0 14px;font-weight:700}.button.compact{min-height:32px;padding:0 10px;font-size:.82rem}.button:active{transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button.primary{color:#062414;background:#7dd8c7}.button.secondary{color:#273244;background:#fff;border-color:#d7dee8}.full-width{width:100%}.mock-pill,.status{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:0 10px;font-size:.78rem;font-weight:800;text-transform:capitalize}.mock-pill{color:#194b2d;background:#dff8e9}.subtle{margin:8px 0 0;color:#637083;font-size:.9rem}.action-message{margin:8px 0 0;color:#12612f;font-size:.9rem;font-weight:800}.error-message{margin:8px 0 0;color:#b42318;font-size:.9rem;font-weight:800}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric-card,.panel,.empty-state{border:1px solid #dde5ea;border-radius:8px;background:#fff}.metric-card{padding:18px}.metric-card span,.metric-card small,td small{color:#637083}.metric-card span,.metric-card small{display:block}.metric-card strong{display:block;margin:10px 0 8px;color:#111827;font-size:1.75rem;line-height:1}.panel{margin-top:18px;padding:18px}.panel-header{margin-bottom:16px}.panel-header.compact{align-items:flex-start}.segmented-control{display:inline-flex;gap:4px;padding:4px;border:1px solid #d7dee8;border-radius:8px;background:#f5f7fa}.segmented-control button{min-height:32px;border:0;border-radius:6px;padding:0 10px;color:#5b6676;background:transparent;font-weight:700;text-transform:capitalize}.segmented-control button.selected{color:#102033;background:#fff;box-shadow:0 1px 3px #1822301f}.table-wrap{overflow-x:auto}table{width:100%;min-width:780px;border-collapse:collapse}th,td{padding:13px 10px;border-top:1px solid #dde5ea;text-align:left;vertical-align:middle;white-space:nowrap}th{color:#637083;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}td strong,td small{display:block}td small{margin-top:3px}.status.active,.status.activated,.status.published,.status.paid{color:#12612f;background:#ddf8e7}.status.draft,.status.pending,.status.review{color:#765210;background:#fff2c2}.status.failed{color:#8f1c1c;background:#ffe0df}.status.inactive,.status.unknown{color:#475569;background:#e2e8f0}.empty-cell{color:#637083;text-align:center}.empty-cell.standalone{padding:28px;border:1px solid #dde5ea;border-radius:8px;background:#fbfcfe}.lesson-workspace{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:16px;align-items:start}.unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.unit-card{display:grid;gap:12px;padding:14px;border:1px solid #dde5ea;border-radius:8px;background:#fbfcfe}.unit-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.unit-card h3,.unit-goal{margin:0}.unit-card h3{color:#111827;font-size:1rem}.unit-actions,.unit-editor-actions{display:flex;align-items:center;gap:8px}.unit-actions{flex-shrink:0;justify-content:flex-end;flex-wrap:wrap}.unit-card small,.unit-goal{color:#637083}.unit-sequence{display:block;margin-bottom:5px;color:#0f766e;font-size:.76rem;font-weight:800;text-transform:uppercase}.unit-goal{line-height:1.45}.unit-editor-feedback{margin-bottom:12px;padding:2px 0 6px}.unit-editor{padding:12px;border:1px solid #c8ede4;border-radius:8px;background:#f3fbf8}.unit-editor label:last-of-type{margin-bottom:10px}.unit-editor textarea{min-height:86px;resize:vertical}.unit-editor-actions{justify-content:flex-end;flex-wrap:wrap}.unit-lessons{display:grid;gap:8px}.unit-lesson-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:flex-start}.unit-lesson-row>span{display:grid;min-width:28px;min-height:28px;place-items:center;border-radius:999px;color:#0f5f59;background:#e8f7f2;font-size:.78rem;font-weight:800}.unit-lesson-row strong,.unit-lesson-row small{display:block}.unit-lesson-row strong{color:#182230}.unit-lesson-row small{margin-top:3px;color:#637083}.unit-id-list{display:flex;flex-wrap:wrap;gap:6px;padding-top:10px;border-top:1px solid #dde5ea}.lesson-library{display:grid;gap:8px}.lesson-card{width:100%;padding:14px;border:1px solid #dde5ea;border-radius:8px;background:#fbfcfe;color:inherit;text-align:left}.lesson-card:hover,.lesson-card.selected{border-color:#0f8b83;background:#f4fbf9}.lesson-card small,.lesson-title-line small,.preview-header small{display:block;margin-top:4px;color:#637083}.lesson-card-main{display:grid;gap:10px}.lesson-title-line,.preview-header,.preview-source,.preview-metrics{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.lesson-title-line strong,.preview-header h3{color:#111827}.lesson-minutes{flex:0 0 auto;color:#0f766e;font-weight:800}.lesson-chips,.lesson-counts,.vocab-list{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;min-height:24px;border:1px solid #dde5ea;border-radius:999px;padding:0 9px;color:#475569;background:#fff;font-size:.78rem;font-weight:700}.course-chip{color:#0f5f59;background:#e8f7f2}.skill-chip{color:#3d5168;background:#eef2f6}.lesson-objective{margin:0;color:#475569;line-height:1.45}.lesson-counts{color:#637083;font-size:.82rem;font-weight:700}.lesson-preview{position:sticky;top:18px;display:grid;gap:14px;padding:16px;border:1px solid #dde5ea;border-radius:8px;background:#fff}.preview-header h3,.preview-section h4,.preview-section p{margin:0}.preview-source{align-items:center;padding:8px 10px;border-radius:8px;color:#475569;background:#f6f8fa;font-size:.84rem}.preview-source strong{color:#0f766e}.preview-section{display:grid;gap:8px;padding-top:12px;border-top:1px solid #dde5ea}.preview-section h4{color:#475569;font-size:.8rem;text-transform:uppercase}.language-block{display:grid;gap:4px}.japanese-line{color:#111827;font-size:1.08rem;font-weight:800;line-height:1.5}.romaji-line,.meaning-line,.muted{color:#637083}.example-list,.writing-list{display:grid;gap:10px}.example-list div,.writing-list div{display:grid;gap:4px}.example-list strong,.example-list small,.example-list p,.writing-list strong,.writing-list small,.writing-list p{margin:0}.writing-list div{padding:8px 0;border-top:1px solid #dde5ea}.writing-list div:first-child{border-top:0}.writing-list strong{color:#111827;font-size:1rem}.writing-list span{color:#475569;font-size:.84rem}.preview-metrics{justify-content:flex-start;flex-wrap:wrap;color:#475569;font-size:.84rem;font-weight:800}label{display:grid;gap:7px;margin-bottom:13px;color:#3a4658;font-size:.86rem;font-weight:800}input,select,textarea{width:100%;border:1px solid #ccd6e2;border-radius:8px;padding:10px 11px;color:#182230;background:#fff}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid rgb(101 210 143 / .45);outline-offset:2px}.empty-state{padding:42px;text-align:center}.empty-state p{color:#637083}.content-stack{display:grid;gap:18px}.skeleton{position:relative;overflow:hidden;min-height:112px;background:#e2e8f0}.skeleton:after{position:absolute;top:0;right:0;bottom:0;left:0;content:"";transform:translate(-100%);animation:shimmer 1.2s infinite;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .55),transparent)}.table-skeleton{min-height:360px;border-radius:8px}@keyframes shimmer{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.nav-list{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.metrics-grid,.lesson-workspace,.unit-grid{grid-template-columns:1fr 1fr}.lesson-workspace{grid-template-columns:1fr}.lesson-preview{position:static}}@media(max-width:720px){.main-panel{padding:18px}.topbar,.panel-header,.lesson-title-line,.preview-header{align-items:flex-start;flex-direction:column}.topbar-actions,.segmented-control{width:100%}.topbar-actions .button,.segmented-control button{flex:1}.nav-list,.metrics-grid,.lesson-workspace,.unit-grid{grid-template-columns:1fr}}
