*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif;background:#f5f7fa;color:#1e2b3c}button{font:inherit;cursor:pointer;border:0;background:transparent;color:#007aff;padding:6px 9px;border-radius:6px}button:focus-visible,.divider:focus-visible{outline:2px solid #007aff}button:disabled{opacity:.55;cursor:wait}[hidden]{display:none!important}main{height:100vh;height:100dvh;max-width:1200px;margin:auto;display:flex;flex-direction:column;padding:env(safe-area-inset-top) 8px env(safe-area-inset-bottom)}.top{height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.top h1{font-size:19px;margin:0 4px}.top nav{display:flex;font-size:12px}.top button{color:#52677c}#panels{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.card{flex:1 1 0;min-height:0;display:flex;flex-direction:column;padding:5px 8px;background:#fff;border:1px solid #e1e7ee;border-radius:10px;overflow:hidden}.card header,.card footer{display:flex;align-items:center;flex-shrink:0;height:28px;font-size:12px}.card label{flex:1;font-size:14px;font-weight:500;white-space:nowrap}.card header button{color:#687582;font-size:11px}.source{color:#007aff;font-size:10px}.card footer span{flex:1;font-size:10px;color:#8592a0}textarea{flex:1;min-height:0;height:0;width:100%;resize:none;border:1px solid #e4e9ef;border-radius:7px;background:#f8fafc;color:#1e2b3c;font:16px/1.4 system-ui;padding:5px 7px;overflow:auto}textarea:focus{outline:1px solid #74b2ee}textarea::placeholder{font-size:16px;color:#9099a4}.divider{height:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center;touch-action:none;cursor:row-resize}.divider span{width:40px;height:3px;background:#bdc9d6;border-radius:4px}.bottom{padding:6px 0 8px;flex-shrink:0}.actions{display:flex;gap:8px}#translate,.primary{background:#1e2b3c;color:#fff}#translate{flex:1;height:42px;font-size:15px;font-weight:600}#translate span{font-size:11px;font-weight:400}#cancel{background:#e5ebf2}#status{display:block;max-width:100%;text-align:left;font-size:12px;color:#b42318;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:24px;padding:0 4px}dialog{border:0;border-radius:12px;width:min(520px,calc(100% - 32px));max-height:85dvh;padding:16px;color:#1e2b3c;overflow:auto}dialog::backdrop{background:#0f172a66}dialog header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}dialog h2{font-size:17px;margin:0}dialog label{display:block;font-size:13px;margin:12px 0 6px}dialog input{width:100%;border:1px solid #d6dee6;border-radius:6px;padding:10px;font-size:16px}dialog p{font-size:12px;color:#687582}dialog .primary{width:100%;padding:10px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.6 system-ui;margin:0}@media(max-height:500px){.top{height:36px}.card header,.card footer{height:22px}.divider{height:10px}#translate{height:34px}.bottom{padding:4px 0}}
.card footer button{padding:6px;font-size:12px}.voice-button.recording{color:#c52626;background:#fff0ef}.card footer .voice-button{white-space:nowrap}@media(max-width:360px){.card footer button{padding:6px 4px;font-size:11px}.card footer span{font-size:9px}}

.voice-status{flex-shrink:0;padding:5px 6px;background:#fff3f1;border-radius:6px;margin-top:3px}.voice-line{display:flex;align-items:center;gap:6px;height:24px}.record-dot{width:7px;height:7px;background:#e34a40;border-radius:50%}.voice-line strong{font-size:11px;font-weight:500;white-space:nowrap}.wave{height:24px;display:flex;align-items:center;gap:2px;overflow:hidden;flex:1;justify-content:flex-end}.wave i{display:block;width:3px;min-height:2px;background:#e56c60;border-radius:2px;transition:height .1s}.stop-hint{display:block;width:100%;text-align:left;font-size:10px;padding:2px 0;color:#a93b32}.option{display:flex;align-items:center;gap:8px}.option input{width:18px;height:18px}.reading-tools{display:flex;justify-content:flex-end;gap:8px;flex-shrink:0}#textDialog{width:calc(100% - 16px);max-width:1100px;height:94vh;height:94dvh;max-height:94dvh;padding:16px;overflow:hidden}#textDialog[open]{display:flex;flex-direction:column}#detailText{font-size:20px;line-height:1.8;flex:1;min-height:0;overflow:auto;padding:10px 6px 18px}#textDialog header{margin-bottom:4px}
