:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#243b36;background:#f5f4ef;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary,select{cursor:pointer}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.46}button,a,input,select,textarea,summary{outline-offset:4px}:focus-visible{outline:2px solid var(--accent)}[hidden]{display:none!important}.app-shell{--bg: #f5f4ef;--surface: #fffefa;--soft: #eeeee7;--ink: #243b36;--muted: #6b7a74;--line: #e2e5dc;--accent: #285c4a;--accent-soft: #e9f0e5;--danger: #a33c32;--warm: #a56836;--warm-soft: #f9efdf;background:var(--bg);color:var(--ink);min-height:100dvh;display:grid;grid-template-columns:180px minmax(0,1fr)}.app-shell.dark{color-scheme:dark;--bg: #171f1c;--surface: #202b26;--soft: #27362e;--ink: #e5ece2;--muted: #a2b1a5;--line: #37473d;--accent: #a5cdaa;--accent-soft: #2d4536;--danger: #ffaaa1;--warm: #ecc18c;--warm-soft: #403626}.studio-sidebar{height:100dvh;position:sticky;top:0;padding:24px 14px 20px;border-right:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;padding:0 10px;margin-bottom:28px}.brand h1{font-size:21px;letter-spacing:-.8px;margin:0;font-weight:680}.mode-tabs{display:flex;flex-direction:column;gap:8px}.mode-tab{border:1px solid transparent;background:none;text-align:left;padding:15px 12px;border-radius:10px;display:flex;align-items:center;gap:11px;font-size:14px;font-weight:600}.mode-tab:hover{background:var(--soft)}.mode-tab.active{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 15%,transparent)}.mode-tab small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:6px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:21px 8px 0}.language-switch{display:flex;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.language-switch button{flex:1;border:0;border-radius:5px;padding:7px 5px;font-size:11px;background:none;color:var(--muted)}.language-switch button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #0000000d}.appearance-button{border:0;background:none;color:var(--muted);font-size:11px;padding:13px 0;width:100%;text-align:center}.workspace-root{min-width:0;padding:24px;max-width:1800px;width:100%;margin:0 auto}.eyebrow{font-size:9px;letter-spacing:2px;color:var(--muted);font-weight:600;margin:0 0 10px}.studio-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.editor-panel,.settings-panel,.output-panel{border:1px solid var(--line);border-radius:13px;background:var(--surface);min-width:0}.editor-panel{padding:22px 24px 0;min-height:460px;display:flex;flex-direction:column}.panel-heading,.output-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}h3,h4{margin:0;font-size:13px;font-weight:650}h3{display:flex;align-items:center;gap:10px}.step{color:var(--muted);font-size:10px;font-weight:500;border:1px solid var(--line);border-radius:50%;width:24px;height:24px;display:inline-grid;place-items:center}.preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:19px}.preset-card{background:transparent;border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px 9px;text-align:left}.preset-card strong{display:block;font-size:12px;font-weight:600}.preset-card span{display:block;font-size:10px;color:var(--muted);line-height:1.4;margin-top:6px}.preset-card.active,.source-choice.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.preset-card:hover,.source-choice:hover{border-color:var(--accent)}.editor-heading{margin:23px 0 12px;display:flex;justify-content:space-between;align-items:center}.count-badge{font-size:10px;background:var(--soft);color:var(--muted);padding:5px 8px;border-radius:5px;white-space:nowrap}.editor-field{display:flex;flex:1;min-height:0}.editor-field textarea{width:100%;border:0;resize:vertical;background:transparent;color:var(--ink);font-size:16px;line-height:1.85;min-height:195px;height:clamp(195px,24vh,360px);padding:10px 0 20px;font-family:Georgia,Songti SC,serif}textarea::placeholder{color:var(--muted);opacity:.7}.editor-field textarea:focus{outline-offset:7px}.editor-footer{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;padding:14px 0;border-top:1px solid var(--line);line-height:1.5}.editor-footer span:last-child{white-space:nowrap}.sequence-preview{border-top:1px solid var(--line);background:color-mix(in srgb,var(--soft) 45%,var(--surface));border-radius:0 0 13px 13px;margin:0 -24px;padding:17px 24px}.sequence-preview>div{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:10px;color:var(--muted);margin-top:11px}.sequence-word{background:var(--surface);padding:7px 10px;border:1px solid var(--line);border-radius:5px;color:var(--ink)}.reading-editor .editor-field{margin-top:24px}.reading-editor .editor-field textarea{min-height:310px;height:clamp(310px,35vh,460px)}.settings-panel{padding:22px;grid-column:2;grid-row:1 / span 2}.settings-panel>.panel-heading{margin-bottom:23px}fieldset{padding:0;border:0;margin:0 0 16px;min-width:0}legend{font-size:11px;margin-bottom:9px;color:var(--muted)}.source-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.public-vocabulary .preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.public-vocabulary .source-grid{grid-template-columns:1fr}.source-choice{background:transparent;border:1px solid var(--line);border-radius:8px;padding:11px;text-align:left}.source-choice strong{font-size:12px;font-weight:600;display:block}.source-choice small{display:block;margin-top:6px;font-size:10px;color:var(--muted)}.field{display:flex;flex-direction:column;gap:8px;margin-top:15px;min-width:0}.field>span{text-wrap:pretty;font-size:12px;color:var(--muted);line-height:1.4}.field input,.field select,.field textarea{border:1px solid var(--line);color:var(--ink);border-radius:7px;background:var(--surface);padding:10px;width:100%;font-size:12px;min-height:39px}.field select{text-overflow:ellipsis}.field textarea{resize:vertical;line-height:1.6}.row{display:flex;gap:12px}.row>.field{flex:1}.settings-divider{border-top:1px solid var(--line);margin:23px 0 20px}.option-check{display:flex;align-items:center;gap:8px;font-size:11px;margin:16px 0 0;cursor:pointer}input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px}.intro-options{margin-top:16px}.intro-options legend{font-size:12px;color:var(--muted)}.intro-checks{display:flex;gap:24px}.intro-checks .option-check{margin-top:8px}.intro-options small{display:block;margin-top:8px;color:var(--muted);font-size:10px}summary{font-size:11px;color:var(--ink);line-height:1.6}summary::marker{color:var(--muted)}.advanced-settings,.service-details{border-top:1px solid var(--line);margin-top:21px;padding-top:16px}.service-details>summary>span{float:right;color:var(--muted);font-size:10px}.provider-status-list{list-style:none;padding:0;margin:12px 0 0}.provider-status-list li{display:flex;justify-content:space-between;gap:8px;padding:9px 0;font-size:10px}.provider-status-list strong{font-weight:500}.status-ready{color:var(--accent)}.output-panel{grid-column:1;padding:20px 24px}.output-heading{flex-wrap:wrap}.cost-badge{white-space:nowrap;font-size:9px;padding:5px 8px;color:var(--accent);border-radius:5px;background:var(--accent-soft)}.cost-badge.metered{color:var(--warm);background:var(--warm-soft)}.audio-empty{padding:21px 0;margin:0;display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:10px}.studio-audio{width:100%;display:block;margin:18px 0;height:38px}.generation-row{display:flex;gap:14px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px}.generation-status{min-width:0;display:flex;flex-direction:column;gap:7px}.generation-status strong{font-size:11px;font-weight:550}.generation-status>span{color:var(--muted);font-size:10px;line-height:1.5}.tool-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.generate-button{border:0;border-radius:8px;background:var(--accent);color:var(--surface);font-size:12px;font-weight:600;padding:13px 20px;min-width:130px}.generate-button:not(:disabled):hover{filter:brightness(1.12)}.generate-button span{margin-left:10px}.button-secondary,.download-link{border:1px solid var(--line);border-radius:7px;color:var(--ink);background:var(--surface);text-decoration:none;font-size:11px;padding:11px 13px}.progress-track{height:5px;background:var(--soft);border-radius:10px;margin-top:16px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width .3s}.job-details{margin-top:14px;color:var(--muted)}.job-details p{font-size:10px;overflow-wrap:anywhere}.log-box{max-height:130px;overflow:auto;font:10px/1.6 monospace;margin-top:10px}.error{font-size:11px;line-height:1.6;color:var(--danger);overflow-wrap:anywhere}.note{font-size:11px;line-height:1.7;color:var(--warm);background:var(--warm-soft);border-radius:7px;padding:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (min-width: 851px){.studio-grid{height:calc(100dvh - 48px);min-height:490px;grid-template-rows:minmax(0,1fr) auto}.editor-panel{min-height:0;height:100%;overflow:hidden}.editor-panel>:not(.editor-field){flex-shrink:0}.settings-panel{max-height:100%;overflow:auto}.editor-field{flex:1;min-height:0}.editor-field textarea{height:100%;min-height:0;resize:none}.reading-editor .editor-field textarea{height:100%;min-height:0}.editor-footer{font-size:11px}.sequence-preview{padding-block:12px}.audio-empty{padding-block:16px}}@media (min-width: 1600px){.studio-grid{grid-template-columns:minmax(0,1fr) 360px;gap:24px}.settings-panel{padding:27px}}@media (max-width: 1150px){.app-shell{grid-template-columns:175px minmax(0,1fr)}.studio-sidebar{padding:28px 11px 18px}.brand{padding:0 5px;gap:8px}.brand h1{font-size:19px}.workspace-root{padding:20px}.studio-grid{grid-template-columns:minmax(0,1fr) 275px;gap:14px}.editor-panel{padding:19px 19px 0}.settings-panel{padding:19px}.sequence-preview{margin:0 -19px;padding:15px 19px}.preset-grid{grid-template-columns:1fr 1fr}.editor-footer{flex-direction:column;gap:5px}.generation-row{flex-wrap:wrap}.output-panel{padding:18px}}@media (max-width: 850px){.app-shell{grid-template-columns:145px minmax(0,1fr)}.brand{margin-bottom:32px}.mode-tab{padding:12px 7px;font-size:12px;gap:7px}.mode-tab small{font-size:9px}.studio-grid{grid-template-columns:minmax(0,1fr)}.settings-panel{grid-column:1;grid-row:auto}.output-panel{grid-row:auto}.preset-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-root{padding-inline:20px}}@media (max-width: 600px){.app-shell{display:block}.studio-sidebar{position:static;height:auto;padding:16px;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:15px}.brand{margin:0;padding:0}.mode-tabs{flex-direction:row;grid-column:1 / -1;grid-row:2}.mode-tab{flex:1}.appearance-button{display:none}.sidebar-bottom{border:0;padding:0}.language-switch{margin:0}.workspace-root{padding-inline:16px}.preset-grid{grid-template-columns:1fr 1fr}.reading-editor .editor-field textarea{min-height:230px}.tool-actions{justify-content:flex-start}}@media (min-width: 851px) and (max-height: 850px){.studio-grid{height:calc(100dvh - 48px);min-height:530px}.editor-panel{padding:16px 20px 0}.preset-grid{margin-top:12px}.preset-card{padding:8px}.preset-card span{margin-top:4px}.editor-heading{margin-block:14px 8px}.editor-footer{padding-block:8px}.editor-footer span:last-child{display:none}.sequence-preview{margin-inline:-20px;padding:10px 20px}.sequence-preview{display:flex;align-items:center;gap:12px}.sequence-preview>.eyebrow{white-space:nowrap;margin:0}.sequence-preview>div{margin:0;gap:7px}.output-panel{padding:16px 20px}.audio-empty{padding-block:10px}.generation-row{padding-top:12px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition:none!important}}
