:root{font-family:system-ui,-apple-system,PingFang SC,sans-serif;color:#222}body{margin:0}.app-header{display:flex;align-items:baseline;gap:1em;padding:.8em 1.5em;border-bottom:1px solid #e5e5e5}.app-header h1{font-size:1.1em;margin:0}.app-error{color:#b00;font-size:.85em}.app-body{display:flex;align-items:flex-start;gap:2em}.sidebar{width:16em;flex:none;padding:1.2em 1em 6em 1.5em;border-right:1px solid #eee;font-size:.9em}.sidebar-title{font-size:.95em;color:#888;margin:0 0 .6em}.work-list,.episode-list{list-style:none;margin:0;padding:0}.episode-list{margin:.3em 0 .8em .8em}.work-item,.episode-item{display:block;width:100%;text-align:left;background:none;border:none;padding:.35em .4em;cursor:pointer;font:inherit;border-radius:4px}.work-item:hover,.episode-item:hover{background:#f2f2f2}.work-active{font-weight:700}.work-count{color:#999;font-size:.85em;margin-left:.4em}.episode-n{color:#999;margin-right:.4em}.app-main{flex:1;min-width:0}.episode-title{max-width:46em;margin:1.6em auto 0;font-size:1.05em;color:#666}.placeholder{color:#999;padding:3em 0;text-align:center}.control-bar{position:sticky;bottom:0;display:flex;align-items:center;gap:.8em;padding:.7em 1.5em;border-top:1px solid #e5e5e5;background:#fafafa}.control-bar button{padding:.35em .9em;cursor:pointer}.control-label{display:flex;align-items:center;gap:.4em;font-size:.9em;color:#666}.control-value{width:3em}.reader{max-width:46em;margin:0 auto;padding:2em 1.5em 6em;line-height:1.9}.seg{margin:0 0 1.1em;white-space:pre-wrap}.seg-scene{font-weight:700;color:#888;font-size:.95em;margin-top:2em}.seg-voice{margin-left:2em;font-style:italic;color:#444}.seg-active{background:#fff3bf;border-radius:3px}
