*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:linear-gradient(135deg,#f5f7fa,#e3eaf3);color:#222;min-height:100vh}.app{max-width:980px;margin:0 auto;padding:32px 24px}.header h1{margin:0 0 8px;font-size:26px;color:#1a3b66}.header p{margin:0 0 24px;color:#555}.tabs{display:flex;gap:8px;margin-bottom:16px}.tab{padding:8px 18px;border-radius:999px;background:#fff;border:1px solid #d6dde6;cursor:pointer;transition:all .2s;font-size:14px}.tab.active{background:#1a73e8;color:#fff;border-color:#1a73e8;box-shadow:0 2px 8px #1a73e84d}.panel{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 16px #0000000f}.controls{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.btn{padding:10px 22px;border-radius:8px;border:none;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.btn-start{background:#34a853;color:#fff}.btn-start:hover:not(:disabled){background:#2c8f46}.btn-stop{background:#ea4335;color:#fff}.btn-stop:hover:not(:disabled){background:#c53929}.btn:disabled{opacity:.5;cursor:not-allowed}.status{font-size:13px;padding:4px 10px;border-radius:4px;background:#eef3fb;color:#1a3b66}.status.recording{background:#fdecea;color:#c53929}.status.connected{background:#e6f4ea;color:#2c8f46}.lang-select{padding:8px 12px;border-radius:6px;border:1px solid #d6dde6;font-size:14px}.results{display:grid;grid-template-columns:1fr 1fr;gap:16px}.results.single{grid-template-columns:1fr}.result-card{border:1px solid #e1e6ee;border-radius:8px;padding:16px;min-height:240px;background:#fafbfd;display:flex;flex-direction:column}.result-card h3{margin:0 0 10px;font-size:14px;color:#1a3b66;letter-spacing:.5px}.text-list{flex:1;overflow-y:auto;max-height:380px;padding-right:4px}.line{padding:8px 10px;margin-bottom:6px;border-radius:6px;font-size:15px;line-height:1.6;background:#fff;border-left:3px solid #d6dde6;word-wrap:break-word}.line.partial{color:#888;border-left-color:#fbbc04;font-style:italic}.line.final{color:#222;border-left-color:#34a853}.empty{color:#aaa;font-size:13px;text-align:center;margin-top:30px}.footer{margin-top:24px;font-size:12px;color:#888;text-align:center}
