.lang-studio-pair{background:var(--app-surface);border:1px solid var(--app-border);border-radius:12px;align-items:end;gap:18px;padding:22px;display:flex}.lang-studio-pair .lang-field{width:min(340px,40%)}.lang-pair-arrow{color:var(--app-muted);align-self:center;margin-top:20px}.lang-studio-section-bar{border-bottom:1px solid var(--app-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;display:flex}.lang-builder-tabs{flex-wrap:wrap;gap:6px;display:flex}.lang-builder-tabs button[aria-pressed=true]{background:var(--app-blue-soft);color:var(--app-blue);border-color:var(--app-blue)}.lang-studio .lang-studio-list{border:1px solid var(--app-border);border-radius:12px;gap:0;overflow:hidden}.lang-studio .lang-studio-row{border:0;border-bottom:1px solid var(--app-border);border-radius:0;padding:14px 18px}.lang-studio .lang-studio-row:last-child{border-bottom:0}.lang-studio .lang-studio-row:hover{background:var(--app-surface)}.lang-studio .lang-row-main strong{font-size:15px}.lang-category-list{border-top:1px solid var(--app-border);max-height:420px;overflow:auto}.lang-category-row{border-bottom:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.lang-category-row small{color:var(--app-muted);margin-top:5px;display:block}.lang-media-field{border:1px solid var(--app-border);border-radius:10px;min-width:0;padding:16px}.lang-media-field audio,.lang-speech audio{max-width:100%}.lang-media-field small{color:var(--app-muted);font-size:12px}.lang-media-preview{-o-object-fit:contain;object-fit:contain;border-radius:8px;max-width:100%;max-height:160px}.lang-activity-image{-o-object-fit:contain;object-fit:contain;border-radius:10px;width:auto;max-width:100%;max-height:260px}.lang-editor-section{border:1px solid var(--app-border);border-radius:10px;padding:16px}.lang-editor-section summary{cursor:pointer;margin-bottom:12px;font-weight:600}@media (max-width:700px){.lang-studio-pair{flex-wrap:wrap;gap:12px;padding:16px}.lang-studio-pair .lang-field{width:100%}.lang-pair-arrow{display:none}.lang-category-row{flex-direction:column;align-items:flex-start}.lang-studio .lang-studio-row{padding:12px}}.lang-page{max-width:1280px;margin:0 auto;padding-top:36px}.lang-learning-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:32px;display:grid}.lang-learning-content{min-width:0}.lang-sidebar{border-right:1px solid var(--app-border);max-height:calc(100vh - 48px);padding-right:18px;position:sticky;top:24px;overflow:auto}.lang-sidebar summary{cursor:pointer;padding:4px 10px 18px;font-weight:600}.lang-sidebar nav>a,.lang-sidebar section a{color:var(--app-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.lang-sidebar a span:first-child{overflow-wrap:anywhere}.lang-sidebar h3{color:var(--app-muted);margin:24px 10px 10px;font-size:12px}.lang-sidebar a:hover{background:var(--app-surface);color:var(--app-text)}.lang-sidebar a[aria-current]{background:var(--app-blue-soft);color:var(--app-blue)}.lang-game-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.lang-game-links a{border:1px solid var(--app-border);background:var(--app-surface);border-radius:12px;align-items:flex-start;gap:12px;padding:18px;transition:border-color .15s;display:flex}.lang-game-links a:hover{border-color:var(--app-blue)}.lang-game-links svg{color:var(--app-blue);flex-shrink:0}.lang-game-links strong{font-size:14px;font-weight:600}.lang-game-links small{color:var(--app-muted);margin-top:5px;font-size:12px;display:block}.lang-muted{color:var(--app-muted);font-size:13px}.lang-word-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lang-word-title h2{color:var(--app-blue)}.lang-speech-compact button{border-radius:50%;padding:7px}.lang-phrase-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.lang-phrase-controls label{align-items:center;gap:10px;font-size:13px;display:flex}.lang-phrase-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:14px;padding:24px}.lang-phrase-card h3{font-size:17px;font-weight:600;line-height:1.6}.lang-phrase-card details{color:var(--app-muted);font-size:13px}.lang-phrase-card summary{cursor:pointer}.lang-exercise-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.lang-word-bank button,.lang-answer button{white-space:normal;overflow-wrap:anywhere;border-radius:22px}.lang-word-bank button[draggable=true]{cursor:grab}.lang-phrase-types{border:1px solid var(--app-border);background:var(--app-surface);border-radius:12px;padding:4px}.lang-phrase-types a{text-align:center;border:0;border-radius:8px;flex:1}.lang-phrase-types small{opacity:.7;margin-left:8px}.lang-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.lang-columns>div{gap:12px;display:grid}.lang-memory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.lang-exercise button[aria-pressed=true]{border-color:var(--app-blue);background:var(--app-blue-soft)}@media (max-width:1100px){.lang-learning-layout{grid-template-columns:185px minmax(0,1fr);gap:22px}.lang-game-links a{flex-direction:column;padding:14px}}@media (max-width:760px){.lang-learning-layout{grid-template-columns:minmax(0,1fr);gap:20px}.lang-sidebar{border:1px solid var(--app-border);border-radius:10px;max-height:240px;padding:10px;position:static}.lang-sidebar nav{flex-wrap:wrap;gap:6px;display:flex}.lang-sidebar nav section{display:contents}.lang-sidebar h3{display:none}.lang-sidebar summary{padding:4px 2px 10px}.lang-game-links{grid-template-columns:minmax(0,1fr)}.lang-game-links a{flex-direction:row}.lang-phrase-card{padding:16px}.lang-memory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lang-columns{gap:12px}}.lang-home-header,.lang-course-heading{justify-content:space-between;align-items:center;gap:24px;margin:24px 0 32px;display:flex}.lang-home-header{margin:0 0 28px}.lang-home-header h1{letter-spacing:-.03em;font-size:28px;font-weight:600}.lang-home-empty{border:1px solid var(--app-border);background:var(--app-surface);text-align:center;border-radius:12px;justify-items:center;gap:18px;padding:32px 24px;display:grid}.lang-home-empty p,.lang-course-heading p,.lang-footnote,.lang-card small{color:var(--app-muted)}.lang-course-heading h1{letter-spacing:-.03em;font-size:30px;font-weight:650}.lang-course-grid{grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:18px;display:grid}.lang-course-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:16px;flex-direction:column;gap:14px;min-height:190px;padding:26px;transition:border-color .15s,transform .15s;display:flex}.lang-course-card:hover{border-color:var(--app-blue);transform:translateY(-2px)}.lang-course-icon{color:var(--app-blue);background:var(--app-blue-soft);border-radius:12px;width:fit-content;padding:10px}.lang-course-card h2{font-size:20px;font-weight:650}.lang-course-card p{color:var(--app-muted);font-size:13px}.lang-card-link{color:var(--app-blue);align-items:center;gap:12px;margin-top:auto;font-weight:550;display:flex}.lang-footnote{margin:30px 0;font-size:13px}.lang-back{color:var(--app-muted)}.lang-tabs{border-bottom:1px solid var(--app-border);gap:8px;margin-bottom:28px;display:flex;overflow:auto}.lang-tabs a{white-space:nowrap;border-bottom:2px solid #0000;padding:14px 18px}.lang-tabs a[aria-current],.lang-topics a[aria-current]{color:var(--app-blue);border-color:var(--app-blue);background:var(--app-blue-soft)}.lang-section-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.lang-section-heading h2,.lang-page section>h2{font-size:22px;font-weight:600}.lang-topics{flex-wrap:wrap;gap:8px;display:flex}.lang-topics a{border:1px solid var(--app-border);border-radius:20px;padding:7px 12px}.lang-activity-grid{grid-template-columns:repeat(auto-fill,minmax(295px,1fr));gap:18px;display:grid}.lang-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:14px;flex-direction:column;gap:14px;min-width:0;padding:24px;display:flex}.lang-card h2{overflow-wrap:anywhere;font-size:24px;font-weight:600}.lang-card h2.lang-letter{font-size:60px}.lang-card .app-actions{margin-top:auto}.lang-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.lang-known{color:var(--ui-success);align-items:center;gap:4px;font-size:12px;display:inline-flex}.lang-prompt,.lang-ipa{color:var(--app-muted)}.lang-speech{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lang-speech small{color:var(--app-muted);font-size:11px}.lang-card audio{width:100%}.lang-card details{border-top:1px solid var(--app-border);padding-top:12px}.lang-card summary{cursor:pointer;color:var(--app-blue)}.lang-example,.lang-dialogue>div{border-left:2px solid var(--app-blue);margin-top:12px;padding-left:12px}.lang-practice{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;width:100%;max-width:850px;margin:0 auto;padding:28px}.lang-practice h2{font-size:24px;font-weight:550}.lang-practice-controls{flex-wrap:wrap;gap:18px;display:flex}.lang-practice-controls label{gap:6px;display:grid}.lang-answer{border:1px dashed var(--app-border);background:var(--app-bg);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;min-height:90px;margin:18px 0;padding:16px;display:flex}.lang-answer>span{color:var(--app-muted)}.lang-word-bank{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.lang-quiz-options,.lang-match-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0;display:grid}.lang-match-card{white-space:normal;min-height:70px}.lang-practice button[aria-pressed=true]{border-color:var(--app-blue);background:var(--app-blue-soft)}.lang-trace{background:var(--app-bg);border:1px solid var(--app-border);border-radius:12px;width:100%;height:230px;margin:15px 0;position:relative}.lang-trace>span{color:var(--app-border);pointer-events:none;place-items:center;font-size:130px;display:grid;position:absolute;inset:0}.lang-trace canvas{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.lang-form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.lang-alphabet{gap:22px;display:grid}.lang-alphabet-summary,.lang-alphabet-studio-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.lang-alphabet-summary,.lang-alphabet-detail small,.lang-alphabet-note,.lang-alphabet-drawing-footer small{color:var(--app-muted);font-size:13px}.lang-alphabet-studio{background:var(--app-surface);border:1px solid var(--app-border);border-radius:14px;scroll-margin-top:24px;overflow:hidden}.lang-alphabet-studio-heading{border-bottom:1px solid var(--app-border);padding:14px 22px}.lang-alphabet-studio-heading h3{font-size:16px;font-weight:600}.lang-alphabet-studio-heading span{text-align:center;min-width:52px;color:var(--app-muted);font-variant-numeric:tabular-nums;font-size:13px}.lang-alphabet-workspace{grid-template-columns:minmax(0,1fr) minmax(220px,.65fr);gap:36px;padding:22px;display:grid}.lang-alphabet-drawing{width:100%;min-width:0;max-width:560px}.lang-alphabet-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.lang-alphabet-tools .app-actions{gap:4px}.lang-alphabet-tools .app-button{padding:7px 10px}.lang-alphabet-tools button[aria-pressed=true],.lang-alphabet-tile[aria-pressed=true]{border-color:var(--app-blue);background:var(--app-blue-soft);color:var(--app-blue)}.lang-alphabet-pen{color:var(--app-muted);align-items:center;gap:8px;margin-left:auto;font-size:12px;display:flex}.lang-alphabet-pen select{width:auto;padding:7px 10px}.lang-alphabet-board{aspect-ratio:1.4;background:var(--app-bg);border:1px solid var(--app-border);-webkit-user-select:none;user-select:none;border-radius:10px;position:relative;overflow:hidden}.lang-alphabet-board svg,.lang-alphabet-board canvas{width:100%;height:100%;position:absolute;inset:0}.lang-alphabet-board svg{pointer-events:none}.lang-alphabet-board canvas{touch-action:none;cursor:crosshair;color:var(--app-blue)}.lang-alphabet-lines{stroke:var(--app-border)}.lang-alphabet-guide{fill:var(--app-blue);opacity:.2}.lang-alphabet-drawing-footer{margin:12px 0 0}.lang-alphabet-drawing-footer small{flex:1;min-width:120px}.lang-alphabet-detail{overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:14px;min-width:0;display:flex}.lang-alphabet-forms{align-items:baseline;gap:12px;line-height:1.1;display:flex}.lang-alphabet-forms strong{font-size:76px;font-weight:600}.lang-alphabet-forms>span{color:var(--app-blue);font-size:60px}.lang-alphabet-pronunciation{font-size:20px;font-weight:550}.lang-alphabet-ipa{color:var(--app-muted);font-size:14px}.lang-alphabet-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;display:grid}.lang-alphabet-tile{border:1px solid var(--app-border);background:var(--app-surface);color:var(--app-text);cursor:pointer;overflow-wrap:anywhere;border-radius:10px;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:16px 10px;display:flex}.lang-alphabet-tile:hover{border-color:var(--app-blue)}.lang-alphabet-tile>span:last-child{font-size:13px}.lang-alphabet-tile .lang-alphabet-tile-forms{align-items:baseline;gap:7px;font-size:25px;font-weight:600;display:flex}.lang-alphabet-tile-forms small{color:var(--app-muted);font-size:20px}@media (max-width:700px){.lang-alphabet-workspace{grid-template-columns:1fr;gap:24px;padding:16px}.lang-alphabet-detail{grid-row:1;grid-template-columns:82px minmax(0,1fr);gap:10px 14px;display:grid}.lang-alphabet-detail .lang-alphabet-forms{grid-area:1/1/5;gap:6px}.lang-alphabet-forms strong{font-size:46px}.lang-alphabet-forms>span{font-size:36px}.lang-alphabet-detail>:not(.lang-alphabet-forms){grid-column:2}.lang-alphabet-detail>.lang-alphabet-note{grid-column:1/-1}.lang-alphabet-detail>.lang-status{justify-self:start}.lang-tabs{gap:0}.lang-tabs a{padding:12px;font-size:14px}.lang-alphabet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lang-alphabet-summary>span{width:100%}}.lang-form-grid .wide{grid-column:1/-1}.lang-field{flex-direction:column;gap:6px;display:flex}.lang-field textarea{resize:vertical;min-height:90px}.app-dialog:has(.lang-form-grid){width:min(900px,100vw - 32px);max-width:900px}.lang-studio{background:var(--app-bg);max-width:1600px;min-height:calc(100vh - 120px);margin:auto;padding:32px}.lang-studio-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin:0;display:flex}.lang-studio>.app-page-header{margin-bottom:0}.lang-lesson-choice{border-bottom:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.lang-lesson-choice>div,.lang-lesson-choice>span{overflow-wrap:anywhere;min-width:0}.lang-lesson-choice small{color:var(--app-muted);display:block}.lang-lesson-results{max-height:280px;overflow:auto}.lang-studio-list{gap:10px;display:grid}.lang-studio-row{border:1px solid var(--app-border);background:var(--app-surface);border-radius:12px;align-items:center;gap:16px;padding:18px;display:flex}.lang-studio-row .lang-row-main{overflow-wrap:anywhere;flex:1;min-width:0}.lang-studio-row small{color:var(--app-muted);display:block}.lang-status{background:var(--app-subtle);white-space:nowrap;border-radius:20px;padding:4px 10px;font-size:12px}.app-dialog:has(.lang-preview){width:min(900px,100vw - 32px);max-width:900px}.lang-studio-toolbar label{gap:6px;max-width:340px;display:grid}.lang-studio-toolbar select{width:100%}.lang-preview{padding-top:20px}.lang-preview .lang-activity-grid{grid-template-columns:1fr}.lang-status--submitted{color:var(--app-blue);background:var(--app-blue-soft)}.lang-status--changes_requested{color:var(--ui-warning);background:var(--ui-warning-soft)}.lang-assignment{border:1px solid var(--app-border);border-radius:10px;justify-content:space-between;gap:16px;padding:16px;display:flex}@media (max-width:700px){.lang-home-header,.lang-course-heading{flex-direction:column;align-items:stretch;gap:16px}.lang-course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lang-course-card{padding:18px}.lang-activity-grid,.lang-form-grid{grid-template-columns:1fr}.lang-practice,.lang-studio{padding:18px}.lang-studio-row{flex-wrap:wrap}.lang-studio-row .app-actions{width:100%}}@media (prefers-reduced-motion:reduce){.lang-course-card{transition:none}.lang-course-card:hover{transform:none}}.lang-review,.lang-history{max-height:72vh;padding:2px;overflow-y:auto}.lang-change-head,.lang-change>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.lang-change-head{color:var(--app-muted);padding-bottom:12px;font-size:.8rem}.lang-change{border-top:1px solid var(--app-border);padding:14px 0}.lang-change h3{margin-bottom:8px;font-size:.85rem}.lang-change-value{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9rem}.lang-history-list{gap:8px;display:grid}.lang-change-list{padding-left:18px;list-style:outside}.lang-change-fields{gap:10px;display:grid}.lang-change-fields dt{color:var(--app-muted);font-size:.75rem}.lang-change-fields dd{margin:2px 0 0}.lang-history-row{text-align:left;border:1px solid var(--app-border);border-radius:10px;gap:6px;padding:14px;display:grid}.lang-history-row:hover{background:var(--app-surface)}.lang-history-row span,.lang-history-row small{color:var(--app-muted);overflow-wrap:anywhere;font-size:.8rem}@media (max-width:600px){.lang-change-head,.lang-change>div{gap:10px}}.lang-studio.app-stack{align-content:start}.lang-badges{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.lang-category-row .lang-badges{margin-top:4px}.lang-review-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.lang-feedback{border:1px solid var(--ui-warning);background:var(--ui-warning-soft);border-left-width:4px;border-radius:10px;gap:4px;padding:12px 14px;display:grid}.lang-feedback p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.lang-feedback small{color:var(--app-muted)}.lang-access{border:1px solid var(--app-border);background:var(--app-surface);border-radius:10px;padding:10px 14px}.lang-access summary{cursor:pointer;font-weight:600}.lang-access ul{margin:8px 0;padding-left:20px}.lang-access p{margin:8px 0 0}.lang-override{border:1px dashed var(--app-border);border-radius:10px;gap:8px;padding:10px 14px;display:grid}.lang-count-short{color:var(--ui-danger-text)}.lang-role-help{gap:8px;margin:0;display:grid}.lang-role-help dt{font-weight:600}.lang-role-help dd{color:var(--app-muted);margin:2px 0 0}.lang-builder-tabs small{align-self:center}
