:root{color:#1a1f2b;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden}button,input,select{font:inherit}button{border:1px solid #ccd4df;border-radius:8px;background:#fff;color:#1c2430;cursor:pointer;min-height:40px;padding:0 14px}button:disabled{cursor:not-allowed;opacity:.55}.shell{display:grid;grid-template-columns:260px minmax(0,1fr);height:100vh;overflow:hidden}.sidebar{align-content:start;background:#14213d;color:#fff;display:grid;gap:32px;height:100vh;overflow:auto;padding:32px 24px}.sidebar h1,.workspace h2{letter-spacing:0;margin:0}.sidebar h1{font-size:28px;line-height:1.15}.eyebrow{color:#6b7a90;font-size:12px;font-weight:700;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}.sidebar .eyebrow{color:#f4c95d}nav{display:grid;gap:10px}nav button{background:transparent;border-color:#ffffff3d;color:#fff;text-align:left}nav button.active{background:#fff;color:#14213d}.workspace{background:#eef2f6;height:100vh;min-width:0;overflow:hidden;padding:0}.recorder-page{background:#eef2f6;display:grid;grid-template-rows:auto minmax(0,1fr);height:100vh;min-width:0;overflow:hidden}.recorder-toolbar{align-items:center;background:#fffffffa;border-bottom:1px solid #d8e0e8;box-shadow:0 8px 22px #14213d14;display:grid;gap:12px 16px;grid-template-areas:"title settings run" "wave wave wave" "errors errors errors";grid-template-columns:minmax(280px,.9fr) minmax(390px,1.16fr) minmax(500px,1.28fr);padding:12px 18px 10px;position:relative;z-index:4}.toolbar-title{align-items:center;display:flex;gap:14px;grid-area:title;min-width:0}.toolbar-title .eyebrow{color:#607086;flex:none;margin:0}.inline-title{display:grid;gap:4px;min-width:260px}.inline-title span,.compact-setting>span{color:#405066;font-size:12px;font-weight:750}.inline-title input{min-height:38px}.toolbar-settings{align-items:center;display:flex;flex-wrap:wrap;gap:8px 14px;grid-area:settings;min-width:0}.compact-setting{align-items:center;display:flex;gap:8px}.compact-segmented{min-width:184px}.switch-line{align-items:center;background:#f8fafc;border:1px solid #dfe5ec;border-radius:8px;color:#405066;display:inline-flex;gap:8px;min-height:38px;padding:0 10px;white-space:nowrap}.switch-line span{font-size:13px;font-weight:700}.setting-hint{color:#607086;flex-basis:100%;font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inline-error{color:#9b1c1c;font-size:12px;margin:6px 0 0}.toolbar-run{align-items:center;display:flex;gap:10px;grid-area:run;justify-content:flex-end;min-width:0}.recorder-toolbar .status-pill{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recorder-toolbar .actions{flex-wrap:nowrap;gap:8px}.recorder-toolbar .actions button{min-height:36px;padding:0 12px}.recorder-toolbar .time-block strong{font-size:30px}.waveform-panel{align-items:center;background:#f8fafc;border:1px solid #dfe5ec;border-radius:8px;display:grid;gap:14px;grid-area:wave;grid-template-columns:150px minmax(0,1fr);min-height:60px;padding:7px 12px}.wave-meta{display:grid;gap:4px}.wave-meta span{color:#607086;font-size:12px;font-weight:750}.wave-meta b{color:#14213d;font-size:22px;font-variant-numeric:tabular-nums}.waveform{align-items:center;background:#edf3f7;border:1px solid #dce5ee;border-radius:8px;display:grid;gap:0;grid-auto-columns:minmax(1px,1fr);grid-auto-flow:column;height:44px;overflow:hidden;padding:7px}.waveform i{align-self:center;background:#4d83cf;border-radius:999px;display:block;min-height:4px;opacity:.5;transition:height 80ms ease,opacity .12s ease,transform .12s ease}.waveform i:nth-child(3n){background:#2d9a72}.waveform i:nth-child(5n){background:#d69e2e}.waveform.active i{animation:waveform-pulse 1.1s ease-in-out infinite;opacity:.78}.waveform.active i:last-child{box-shadow:0 0 0 4px #4d83cf24;transform:scaleY(1.12)}@keyframes waveform-pulse{0%,to{filter:saturate(1)}50%{filter:saturate(1.35)}}.toolbar-error{grid-area:errors;margin:0}.recorder-content{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(320px,.62fr) minmax(560px,1.38fr);min-height:0;overflow:auto;padding:16px 20px 88px;width:100%}.recorder-content>.live-summary,.recorder-content>.transcript-live{background:#fff;border:1px solid #dfe5ec;border-radius:8px;margin:0;padding:16px}.recorder-content>.live-summary{display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:calc(100vh - 190px);min-height:260px;overflow:hidden;position:sticky;top:16px}.recorder-content>.live-summary .summary-text{max-height:none;overflow:auto}.recorder-content>.transcript-live{border-top:1px solid #dfe5ec;min-height:calc(100vh - 190px)}.recorder-content .transcript-list li{grid-template-columns:118px minmax(0,1fr);padding:12px 6px}.recorder-content .transcript-list p{font-size:16px;line-height:1.65}.typing-cursor{animation:cursor-blink .92s steps(2,start) infinite;background:#154f9f;display:inline-block;height:1em;margin-left:2px;vertical-align:-2px;width:2px}@keyframes cursor-blink{0%,45%{opacity:1}46%,to{opacity:0}}.panel{background:#fff;border:0;border-radius:0;box-shadow:none;height:100vh;margin:0;max-width:none;overflow:auto;padding:24px}.section-head{align-items:center;display:flex;gap:18px;justify-content:space-between;margin-bottom:28px}.section-head h2{font-size:26px}.status-pill{align-items:center;background:#e8edf3;border-radius:999px;color:#405066;display:inline-flex;font-size:14px;min-height:34px;padding:0 14px}.status-pill.recording{background:#e9f7ef;color:#116b3a}.field{display:grid;gap:8px;margin-bottom:20px}.field span,.toggle-row span{color:#405066;font-size:14px;font-weight:650}input[type=text],input:not([type]){border:1px solid #ccd4df;border-radius:8px;min-height:44px;padding:0 14px;width:100%}.toggle-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:28px}.toggle-row label{align-items:center;display:flex;gap:10px}.hint{color:#6b7a90;font-size:13px}.settings-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);margin:0 0 22px}.setting-block{align-content:start;background:#f8fafc;border:1px solid #dfe5ec;border-radius:8px;display:grid;gap:10px;padding:14px}.setting-block>span{color:#405066;font-size:14px;font-weight:700}.setting-block small{color:#607086;line-height:1.45}.segmented{background:#e8edf3;border-radius:8px;display:grid;gap:4px;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px}.segment{background:transparent;border:0;border-radius:6px;min-height:34px;padding:0 8px}.segment.active{background:#fff;box-shadow:0 1px 4px #14213d24;color:#154f9f;font-weight:750}.check-setting{grid-template-columns:minmax(0,1fr) auto}.check-setting small{grid-column:1 / -1}.meter{background:#e8edf3;border-radius:8px;height:18px;margin:20px 0;overflow:hidden}.meter-bar{background:linear-gradient(90deg,#2f80ed,#2eb67d,#f4c95d);height:100%;transform-origin:left center;transition:transform .12s ease}.control-strip{align-items:center;background:#f8fafc;border:1px solid #dfe5ec;border-radius:8px;display:flex;gap:18px;justify-content:space-between;padding:14px 16px}.time-block{display:grid;gap:2px}.time-block strong{font-size:38px;letter-spacing:0;line-height:1}.time-block span{color:#607086;font-size:13px;font-weight:700}.actions{display:flex;flex-wrap:wrap;gap:10px}.primary{background:#2f80ed;border-color:#2f80ed;color:#fff}.danger{background:#c44949;border-color:#c44949;color:#fff}.ghost{background:#f8fafc}.error{background:#fff0f0;border:1px solid #f0b4b4;border-radius:8px;color:#9b1c1c;margin:20px 0 0;padding:12px 14px}.empty{background:#f8fafc;border:1px dashed #b8c4d2;border-radius:8px;color:#607086;padding:28px;text-align:center}.meeting-list{display:grid;gap:12px}.meeting-item{align-items:center;border:1px solid #dfe5ec;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:12px}.meeting-main{border:0;display:grid;gap:5px;justify-items:start;min-width:0;padding:8px;text-align:left}.meeting-main span{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.meeting-main small{color:#6b7a90}.meta-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 24px}.meta-grid div{background:#f8fafc;border:1px solid #dfe5ec;border-radius:8px;padding:14px}.meta-grid dt{color:#6b7a90;font-size:13px;margin-bottom:6px}.meta-grid dd{font-weight:750;margin:0}.player{display:grid;gap:14px}.player audio{width:100%}.player a{color:#2f5f9f;font-weight:700;text-decoration:none}.download-row{display:flex;flex-wrap:wrap;gap:14px}.transcript-live{border-top:1px solid #dfe5ec;margin-top:18px;padding-top:16px}.content-head{align-items:center;display:flex;justify-content:space-between;margin:0 0 10px}.content-head h3{font-size:18px;letter-spacing:0;margin:0}.content-head span{color:#607086;font-size:13px;font-weight:700}.live-summary{background:#f8fafc;border:1px solid #dfe5ec;border-radius:8px;margin-top:18px;padding:14px}.detail-summary{margin:0 0 14px}.summary-text{color:#1c2430;font-size:14px;line-height:1.6;margin:0;max-height:260px;overflow:auto;white-space:pre-wrap}.summary-analysis{border-top:1px solid #e6ecf2;color:#607086;font-size:12px;line-height:1.55;margin-top:12px;padding-top:8px}.summary-analysis summary{cursor:pointer;display:inline-flex;font-weight:750}.summary-analysis div{margin-top:8px;max-height:180px;overflow:auto;white-space:pre-wrap}.empty.compact{padding:16px}.compact-error{margin-top:10px}.transcript-list{display:grid;gap:0;list-style:none;margin:0;padding:0 0 72px}.transcript-list li{align-items:start;border-bottom:1px solid #e6ecf2;display:grid;gap:14px;grid-template-columns:132px minmax(0,1fr);padding:10px 4px}.transcript-list li:first-child{border-top:1px solid #e6ecf2}.line-meta{display:flex;gap:8px;justify-content:flex-start;min-width:0}.line-meta time{color:#607086;font-variant-numeric:tabular-nums;font-size:13px;font-weight:650}.transcript-list p{line-height:1.55;margin:0}.speaker-label{color:#154f9f;display:inline-block;font-size:13px;min-width:46px;white-space:nowrap}.draft-label{background:#fff7df;border:1px solid #f2d589;border-radius:999px;color:#8a5b08;display:inline-block;font-size:12px;line-height:1;padding:4px 7px;white-space:nowrap}.scroll-anchor{height:1px}.shell{grid-template-columns:232px minmax(0,1fr)}.sidebar{background:#122033;gap:24px;padding:24px 18px}.sidebar h1{font-size:25px}nav{gap:8px}nav button{border-radius:7px;min-height:36px;padding:0 12px}button{min-height:36px;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}button:hover:not(:disabled){border-color:#9eb0c5;box-shadow:0 2px 8px #14213d1a}button:active:not(:disabled){transform:translateY(1px)}.recorder-toolbar{gap:8px 12px;grid-template-areas:"title settings run" "wave wave wave" "errors errors errors";grid-template-columns:minmax(300px,.92fr) minmax(360px,.9fr) minmax(480px,1.18fr);padding:9px 14px 8px}.toolbar-title{gap:10px}.toolbar-title .eyebrow{min-width:78px}.inline-title{gap:3px;min-width:220px}.inline-title input{border:1px solid #c7d1dd;border-radius:7px;min-height:34px;padding:0 10px}.toolbar-settings{gap:7px 10px}.switch-line,.compact-config{min-height:34px}.switch-line{background:#fbfcfe;border-radius:7px;padding:0 9px}.switch-line span{font-size:12px}.setting-hint{color:#52647a;font-size:11px;max-width:100%}.compact-config{font-size:12px;padding:0 11px}.toolbar-run{gap:8px}.recorder-toolbar .time-block{min-width:82px}.recorder-toolbar .time-block strong{font-size:26px}.recorder-toolbar .time-block span{font-size:11px}.recorder-toolbar .actions{gap:6px}.recorder-toolbar .actions button{min-height:34px;padding:0 11px}.status-pill{border-radius:999px;font-size:12px;min-height:30px;padding:0 12px}.record-state{border:1px solid #d6e0ea;overflow:visible;position:relative}.record-state.recording{animation:record-breathe 1.7s ease-in-out infinite;background:#f4fff8;border-color:transparent;color:#0b6a3b}.record-state.recording:before{animation:record-ring 1.45s linear infinite;background:conic-gradient(from 0deg,#2f80ed,#2eb67d,#f4c95d,#e65f5c,#2f80ed);border-radius:inherit;content:"";top:-3px;right:-3px;bottom:-3px;left:-3px;padding:2px;pointer-events:none;position:absolute;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.record-state.paused{background:#fff8e6;color:#8a5b08}.record-state.finishing{background:#edf4ff;color:#154f9f}@keyframes record-ring{to{transform:rotate(360deg)}}@keyframes record-breathe{0%,to{box-shadow:0 0 #2eb67d33}50%{box-shadow:0 0 0 7px #2f80ed14}}.waveform-panel{gap:10px;grid-template-columns:126px minmax(0,1fr);min-height:54px;padding:6px 10px}.wave-meta{gap:2px}.wave-meta span{font-size:11px}.wave-meta b{font-size:20px}.waveform{background:linear-gradient(180deg,#ffffffc7,#edf3f7db),#edf3f7;display:grid;gap:2px;grid-auto-flow:unset;grid-template-columns:repeat(240,minmax(1px,1fr));height:42px;padding:6px 8px}.waveform i{background:linear-gradient(180deg,#4a8fe7,#2f80ed);min-height:3px;opacity:calc(.28 + var(--bar-level) * .56);transform:scaleY(calc(.72 + var(--bar-level) * .28));transition:height 58ms ease-out,opacity 86ms ease-out,transform 86ms ease-out}.waveform i:nth-child(3n){background:linear-gradient(180deg,#3abf88,#2d9a72)}.waveform i:nth-child(5n){background:linear-gradient(180deg,#f0b64a,#d69e2e)}.waveform.active i{animation:waveform-pulse .78s ease-in-out infinite;animation-delay:calc(var(--bar-index) * -5ms)}.waveform.active i:last-child{box-shadow:0 0 0 3px #2f80ed29}.recorder-content{gap:12px;grid-template-columns:minmax(280px,.44fr) minmax(620px,1.56fr);padding:12px 14px 72px}.recorder-content>.live-summary,.recorder-content>.transcript-live{border-color:#d8e1ea;padding:12px}.recorder-content>.live-summary{max-height:calc(100vh - 160px);min-height:210px;top:12px}.recorder-content>.transcript-live{min-height:calc(100vh - 160px)}.content-head{margin-bottom:8px}.content-head h3{font-size:16px}.content-head span{font-size:12px}.summary-text{font-size:13px;line-height:1.52}.summary-analysis{font-size:11px;margin-top:8px;padding-top:7px}.empty{padding:18px}.empty.compact{font-size:12px;padding:11px}.recorder-content .transcript-list{padding-bottom:96px}.recorder-content .transcript-list li,.transcript-list li{gap:10px;grid-template-columns:104px minmax(0,1fr);padding:7px 4px}.recorder-content .transcript-list p,.transcript-list p{color:#182230;font-size:14px;line-height:1.48}.line-meta{align-items:center;gap:6px}.line-meta time,.speaker-label{font-size:12px}.speaker-label{min-width:42px}.draft-label{font-size:11px;padding:3px 6px}.panel{background:#f7f9fc;padding:18px}.section-head{background:#fff;border:1px solid #dfe5ec;border-radius:8px;margin-bottom:12px;padding:12px 14px}.section-head h2{font-size:22px;line-height:1.2}.head-note{color:#607086;display:block;font-size:12px;margin-top:4px}.settings-head{align-items:center}.settings-actions,.settings-dashboard,.config-form-grid,.model-table,.status-list{display:grid}.settings-actions{grid-auto-flow:column;gap:8px}.settings-dashboard{gap:12px;grid-template-columns:repeat(2,minmax(280px,1fr))}.setting-card{align-content:start;background:#fff;border:1px solid #dfe5ec;border-radius:8px;display:grid;gap:10px;padding:12px}.setting-card.wide{grid-column:1 / -1}.card-head{align-items:center;border-bottom:1px solid #eef2f6;display:flex;gap:10px;justify-content:space-between;padding-bottom:8px}.card-head h3{font-size:16px;margin:0}.card-head span{color:#607086;font-size:12px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-list{gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.status-list div{background:#f8fafc;border:1px solid #e4eaf0;border-radius:7px;min-width:0;padding:8px}.status-list dt{color:#607086;font-size:11px;margin-bottom:4px}.status-list dd{color:#1c2430;font-size:12px;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-segmented{max-width:360px}.switch-field{align-items:center;background:#f8fafc;border:1px solid #e4eaf0;border-radius:7px;display:flex;gap:8px;min-height:34px;padding:0 10px}.switch-field span{color:#405066;font-size:13px;font-weight:700}.dense-hint{margin:0}.config-form-grid{gap:8px;grid-template-columns:minmax(220px,1.2fr) minmax(220px,1.2fr) repeat(5,minmax(120px,.62fr))}.form-field{display:grid;gap:4px;min-width:0}.form-field span{color:#52647a;font-size:11px;font-weight:800}.form-field input,.form-field select{background:#fff;border:1px solid #c7d1dd;border-radius:7px;color:#1c2430;min-height:34px;min-width:0;padding:0 9px;width:100%}.model-table{gap:8px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.model-table button{align-content:center;background:#f8fafc;border-color:#dfe5ec;display:grid;gap:3px;justify-items:start;min-height:48px;padding:7px 10px;text-align:left}.model-table button.active{background:#edf7ff;border-color:#2f80ed;box-shadow:inset 3px 0 #2f80ed}.model-table span{font-size:13px;font-weight:750;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-table small{color:#607086;font-size:11px}.save-note{background:#edf9f2;border:1px solid #bde8ce;border-radius:8px;color:#116b3a;margin:12px 0 0;padding:10px 12px}@media(max-width:1500px){.recorder-toolbar{grid-template-areas:"title run" "settings wave" "errors errors";grid-template-columns:minmax(420px,.96fr) minmax(420px,1.04fr)}.toolbar-run{justify-content:flex-end}}@media(max-width:980px){.recorder-toolbar{grid-template-areas:"title" "run" "settings" "wave" "errors";grid-template-columns:1fr}}@media(max-width:1120px){.recorder-content,.settings-dashboard,.config-form-grid{grid-template-columns:1fr}.recorder-content>.live-summary{max-height:none;min-height:0;position:static}.recorder-content>.transcript-live{min-height:480px}}@media(max-width:760px){.shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.sidebar{gap:14px;height:auto;padding:18px 20px}.sidebar h1{font-size:22px}nav{display:flex}nav button{flex:1;text-align:center}.workspace{height:100%;min-height:0;padding:0}.recorder-page{height:100%}.recorder-toolbar{align-items:stretch;grid-template-areas:"title" "settings" "run" "wave" "errors";grid-template-columns:1fr;max-height:54vh;overflow:auto;padding:12px}.toolbar-title,.toolbar-settings,.toolbar-run{align-items:stretch;flex-direction:column}.toolbar-run{justify-content:stretch}.inline-title{min-width:0}.compact-setting{align-items:stretch;flex-direction:column}.compact-segmented{min-width:0}.recorder-toolbar .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.waveform-panel{grid-template-columns:1fr}.recorder-content{grid-template-columns:1fr;padding:12px 12px 88px}.panel{padding:20px}.section-head,.control-strip{align-items:stretch;flex-direction:column}.time-block strong{font-size:34px}.meta-grid,.meeting-item,.settings-dashboard,.status-list,.config-form-grid,.model-table,.transcript-list li{grid-template-columns:1fr}.settings-actions{grid-auto-flow:row;grid-template-columns:1fr}.recorder-content .transcript-list li{grid-template-columns:1fr}.line-meta{justify-content:space-between}}
