:root{font:15px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:#292832;background:#fafafa;--accent:#9275e7;--border:#e8e7ed}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:3px}button{cursor:pointer;border:1px solid var(--border);background:white;border-radius:9px;padding:9px 15px;color:inherit}button:hover{background:#f2eefc}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit;text-decoration:none}input,select,textarea{border:1px solid var(--border);border-radius:9px;padding:10px;background:white;color:inherit;width:100%}textarea{resize:vertical;min-height:140px}label{display:block;margin-bottom:15px}label>span{display:block;margin-bottom:7px;font-weight:500}h1,h2,h3,p{margin:0 0 16px}h1{font-size:24px}h2{font-size:21px}h3{font-size:17px}.sidebar{position:fixed;inset:0 auto 0 0;width:205px;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;padding:27px 16px}.brand{font-size:23px;font-weight:700;margin-bottom:36px;padding-left:12px}.brand small{font-size:12px;font-weight:400;color:#888}nav{display:grid;gap:8px}nav a{padding:12px 16px;border-radius:8px}nav a.active{background:#eee8fc;color:#7656d2}.account{margin-top:auto;border-top:1px solid var(--border);padding-top:20px;font-size:13px}.account button{padding:7px 10px;margin:3px}.account p{overflow-wrap:anywhere}main{margin-left:205px;max-width:1640px;padding:26px 34px}header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}header h1{margin:0}#service-status{font-size:12px;color:#73717c;text-align:right}.card{border:1px solid var(--border);background:#fff;border-radius:13px;padding:24px;margin-bottom:20px}.hero{text-align:center;padding:25px 0 16px}.hero h2{font-size:32px;font-weight:600}.hero p{color:#86828f}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:23px}.workspace>.card{margin-bottom:0}.editor{min-height:330px;border:0;padding:3px;font-size:17px;line-height:1.95}.toolbar,.row,.tabs,.filters,.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.toolbar{border-top:1px solid var(--border);padding-top:15px;margin:15px 0}.row{justify-content:space-between}.row>select{max-width:205px}.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.primary:hover{background:#7e61d3}.primary.wide{width:100%;margin-top:12px}.muted{font-size:13px;color:#87838e}.hint{padding:10px 13px;background:#f5f2fb;border-radius:8px;font-size:13px;color:#756792}.tabs{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:13px}.tabs button[aria-selected=true]{background:#eee8fc;color:#7656d2;border-color:#d8cdf5}.filters{margin:14px 0}.filters input{flex:2;min-width:160px}.filters select{flex:1;min-width:100px}.voice-row{display:flex;align-items:center;gap:15px;padding:20px 0;border-bottom:1px solid #efedf3}.voice-row:last-child{border:0}.avatar{width:47px;height:47px;border-radius:50%;background:#eee8fa;color:#8c6ce0;display:flex;align-items:center;justify-content:center;font-size:21px;flex-shrink:0}.voice-info{flex:1;min-width:0}.voice-info h3{margin:0 0 5px;font-size:15px}.voice-info p{margin:0;font-size:13px;color:#807b89}.tags{margin-top:6px;font-size:12px;color:#92849f}.voice-actions{display:flex;gap:7px;flex-wrap:wrap}.voice-actions button{font-size:13px;padding:7px 11px}.empty{text-align:center;color:#92909b;padding:50px 20px}.selected-voice{padding:15px;border:1px solid var(--border);border-radius:9px;cursor:pointer;margin-bottom:18px}.selected-voice strong{display:block;font-size:14px}.selected-voice small{color:#89828d}.counter{font-size:12px;color:#8b8792;text-align:right;margin-bottom:12px}.job{border-bottom:1px solid var(--border);padding:17px 0;overflow-wrap:anywhere}.job h3{margin:0 0 5px}.job p{font-size:13px;color:#7c7687;margin:7px 0}.job audio,.candidate audio{width:100%;margin:14px 0}.badge{display:inline-block;background:#f3effb;color:#8662d3;border-radius:5px;font-size:12px;padding:2px 7px}.error{color:#b34859}.success{color:#35806a}.candidate{padding:20px;border:1px solid var(--border);border-radius:10px;margin-bottom:15px}.candidate h3{margin-bottom:8px}.param{display:grid;grid-template-columns:1fr 74px;gap:10px;align-items:center;margin-top:9px}.param input[type=range]{padding:0;accent-color:var(--accent)}.param input[type=number]{padding:5px 8px}.check{display:flex;gap:10px;align-items:flex-start;font-size:13px}.check input{width:auto;margin-top:6px}.full{grid-column:1/-1}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.metrics{display:flex;gap:24px;margin-bottom:20px}.metrics strong{display:block;font-size:28px}.package{flex:1;min-width:120px;padding:20px;text-align:center;border:1px solid var(--border);border-radius:10px}.package strong{display:block;font-size:22px;margin:10px}dialog{border:1px solid var(--border);border-radius:14px;max-width:900px;width:calc(100% - 40px);max-height:88vh;padding:25px}dialog::backdrop{background:#20202c55}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-head h2{margin:0}.dialog-head button{font-size:23px;border:0;padding:0 8px}.dialog-body{max-height:68vh;overflow:auto}#notice{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);padding:13px 24px;border-radius:10px;background:#302c3e;color:white;max-width:90%;z-index:9}#player{position:fixed;bottom:20px;left:20px;width:185px;z-index:3}#reference-player{width:100%;margin:10px 0}[hidden]{display:none!important}.recording{color:#ce4e62}.description{line-height:1.8}.inline{display:inline-flex;align-items:center;gap:8px}.inline input{width:auto}
@media(max-width:1050px){.workspace{grid-template-columns:minmax(0,1fr) 280px}main{padding:22px}.sidebar{width:175px}main{margin-left:175px}.voice-row{flex-wrap:wrap}.voice-actions{margin-left:auto}}
@media(max-width:760px){.sidebar{position:static;width:auto;padding:14px;border-right:0;border-bottom:1px solid var(--border)}.brand{margin:0 0 12px;font-size:19px}nav{display:flex;overflow:auto;gap:3px}nav a{white-space:nowrap;padding:7px 10px;font-size:13px}.account{margin:10px 0 0;padding:8px 0 0;display:flex;align-items:center;gap:8px}.account p{margin:0;flex:1}main{margin:0;padding:18px}.workspace,.two-columns{grid-template-columns:1fr}header{margin-bottom:18px;align-items:flex-start}.hero h2{font-size:25px}.card{padding:18px}.editor{min-height:260px}#player{width:calc(100% - 40px);bottom:12px}.voice-row{gap:10px}.voice-actions{width:100%;padding-left:55px}.workspace aside{order:1}}
.editor-label{font-size:13px;font-weight:500;color:#7c7687}.editor-tools{border-top:1px solid var(--border);padding-top:14px;margin-bottom:20px}.editor-tools .actions{margin-bottom:12px}.editor-tools select{width:auto;min-width:80px}.editor-tools p{margin:7px 0}.editor-tools .check{margin:0 0 0 auto}.pause-tools input{width:90px}.span-list{display:flex;flex-wrap:wrap;gap:7px}.emotion-chip{font-size:12px;display:inline-flex;gap:6px;align-items:center;padding:3px 8px;background:#f0eafa;border-radius:6px;max-width:100%;overflow-wrap:anywhere}.emotion-chip button{border:0;padding:0 3px;color:#7656d2;background:transparent}.settings-detail{margin:22px 0;padding:15px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}summary{cursor:pointer;font-weight:500;padding:7px 0}.settings-detail .muted{margin-top:10px}.effect-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.effect-options .check{margin:0}.filters label{flex:1;min-width:150px;margin:0}.filters label span{font-size:12px;color:#7c7687;margin-bottom:3px}.snapshot{display:grid;grid-template-columns:130px 1fr;gap:8px;margin:20px 0}.snapshot dt{font-size:13px;color:#87838e}.snapshot dd{margin:0;font-size:14px}.original-text,pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.7 inherit;max-height:260px;overflow:auto;padding:13px;background:#faf9fc;border-radius:8px}.segment-list{max-height:48vh;overflow:auto;margin:16px 0}.segment{padding:14px 5px;border-bottom:1px solid var(--border)}.segment .check{margin:0;font-size:14px}.segment label span{margin:0}.segment p{margin:6px 0}.segment button{font-size:12px;padding:5px 10px}.pronunciation-row{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;margin-bottom:12px}.utterance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}#dialog-body{max-height:72vh;overflow:auto}.job .actions button{font-size:12px;padding:6px 9px}.workspace aside>h3:not(:first-child){margin-top:25px}.editor-tools button{font-size:13px;padding:7px 11px}
@media(max-width:760px){.editor-tools .check{margin-left:0}.utterance-grid{grid-template-columns:1fr 1fr}.snapshot{grid-template-columns:100px 1fr}.pronunciation-row{grid-template-columns:1fr auto}.pronunciation-row input[data-rule-replacement]{grid-row:2}.pronunciation-row button{grid-column:2;grid-row:1/3}.editor-tools .actions{gap:7px}}
#live-player{position:fixed;bottom:20px;right:20px;max-width:450px;padding:12px 15px;border:1px solid #d4c5f2;border-radius:10px;background:#f2ecfc;z-index:4;display:flex;align-items:center;gap:12px;font-size:13px;box-shadow:0 4px 20px #302c3e15}#live-player button{font-size:12px;white-space:nowrap;padding:5px 8px}
@media(max-width:760px){#live-player{left:15px;right:15px;max-width:none;bottom:15px}#live-player span{flex:1;min-width:0}}
.voice-menu{position:relative}.voice-menu summary{list-style:none;padding:3px 10px;border:1px solid var(--border);border-radius:8px;font-weight:600;cursor:pointer}.voice-menu summary::-webkit-details-marker{display:none}.voice-menu-items{position:absolute;right:0;top:100%;min-width:135px;padding:6px;background:#fff;border:1px solid var(--border);border-radius:9px;box-shadow:0 5px 18px #29283218;z-index:5}.voice-menu-items button{display:block;width:100%;text-align:left;border:0;font-size:13px;white-space:nowrap}#edit-voice-form .actions{justify-content:flex-end}
.history-paging{padding-top:12px}.history-paging p{font-size:12px}.history-paging button{font-size:13px}.job-progress{margin:10px 0}.job-progress progress{width:100%;height:8px;accent-color:var(--accent)}.job-progress p{margin:3px 0;font-size:12px}
#segment-player{position:fixed;bottom:90px;left:20px;max-width:520px;padding:10px 13px;border:1px solid var(--border);border-radius:9px;background:#fff;display:flex;align-items:center;gap:10px;font-size:12px;z-index:4}#segment-player button{white-space:nowrap;padding:5px 8px;font-size:12px}@media(max-width:760px){#segment-player{left:15px;right:15px;bottom:72px;max-width:none}#segment-player span{flex:1;min-width:0}}
.asr-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}#asr-history .job{margin-top:14px}#asr-live-state{padding:10px 0}
