.si-font-size-control{display:inline-flex;align-items:center;gap:4px;padding:3px;border-radius:9px;background:#f1f3f5;border:1px solid #e4e7eb}.si-font-size-label{font-size:.72rem;color:#6b7280;padding:0 4px 0 2px;white-space:nowrap}.si-font-size-btn{min-width:30px;height:26px;padding:0 8px;border:none;border-radius:6px;background:transparent;color:#4b5563;font-size:.8rem;line-height:1;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.si-font-size-btn:hover{background:#e2e6ea}.si-font-size-btn.is-active{background:#fff;color:#1d4ed8;font-weight:600;box-shadow:0 1px 2px #0f172a1f}*{box-sizing:border-box;margin:0;padding:0}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.45;color:#1a1a1a}body{min-height:100vh;background:#e8e8ea}#root{min-height:100vh}.si-root{height:100vh;overflow:hidden;display:flex;flex-direction:column;padding:.75rem 1.15rem 1rem;max-width:100%}.si-hover-sidebar{position:fixed;top:50%;right:0;z-index:50;width:15.75rem;transform:translate(calc(100% - 20px),-50%);transition:transform .22s ease,filter .22s ease}.si-hover-sidebar:hover,.si-hover-sidebar:focus-within{transform:translateY(-50%)}.si-hover-sidebar-grip{position:absolute;left:0;top:50%;width:20px;height:5rem;border-radius:999px 0 0 999px;background:radial-gradient(circle at 52% 30%,rgba(255,255,255,.72) 0 2px,transparent 3px),radial-gradient(circle at 52% 50%,rgba(255,255,255,.72) 0 2px,transparent 3px),radial-gradient(circle at 52% 70%,rgba(255,255,255,.72) 0 2px,transparent 3px),linear-gradient(180deg,#111827,#2563eb);box-shadow:0 10px 30px #0f172a47;transform:translateY(-50%)}.si-hover-sidebar-panel{margin-left:20px;padding:.75rem;border:1px solid rgba(255,255,255,.16);border-right:none;border-radius:16px 0 0 16px;background:#111827eb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 44px #0f172a42;display:flex;flex-direction:column;gap:.5rem}.si-side-action{width:100%;min-height:2.4rem;display:flex;align-items:center;gap:.65rem;padding:0 .7rem;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff0f;color:#f8fafc;font-size:.82rem;font-weight:650;cursor:pointer;text-align:left;transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease}.si-side-action:hover{border-color:#93c5fd5c;background:#3b82f638;color:#fff;transform:translate(-2px)}.si-side-action:disabled{opacity:.45;cursor:not-allowed}.si-side-action-icon{width:16px;height:16px;display:inline-grid;place-items:center;border-radius:6px;background:#ffffff24;color:#bfdbfe;font-size:.66rem;font-weight:800}.si-topbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;padding:.5rem 0 1rem;border-bottom:1px solid #d8d8dc}.si-topbar-left{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;min-width:0}.si-brand{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:#0a0a0a}.si-brand-sub{font-size:.78rem;color:#8e8e93;font-weight:400}.si-topbar-right{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem}.si-manual-voice-select{display:inline-flex;align-items:center;gap:.35rem;min-width:0}.si-manual-voice-select span{color:#636366;font-size:.72rem;font-weight:700}.si-manual-voice-select select{width:11.5rem;max-width:28vw;height:2rem;border:1px solid #d1d1d6;border-radius:8px;background:#fff;color:#1f2937;font:inherit;font-size:.74rem;font-weight:650;padding:0 .5rem}.si-manual-voice-select select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.si-manual-voice-select select:disabled{opacity:.55;cursor:not-allowed}.si-pill-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .75rem;border-radius:999px;border:1px solid #d1d1d6;background:#fff;color:#3a3a3c;font-size:.8rem;font-weight:600;cursor:pointer;box-shadow:0 1px 2px #0000000a}.si-pill-btn:hover{background:#f9f9fb}.si-logout-btn{padding:.35rem .65rem;font-size:.72rem;font-weight:600;border:1px solid #d1d1d6;border-radius:8px;background:#fff;color:#636366;cursor:pointer}.si-logout-btn:hover{background:#fff0f0;color:#c41e1e;border-color:#f5b5b5}.si-logout-btn:disabled{opacity:.55;cursor:not-allowed}.si-main{flex:1;display:flex;flex-direction:column;min-height:0;padding-top:.5rem}.si-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}.si-trilingual{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;background:#fff;border:1px solid #d8d8dc;border-radius:14px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.si-tri-host-layout{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.si-tri-toolbar{display:flex;align-items:center;gap:.75rem;min-height:3rem;padding:.65rem 1rem;border-bottom:1px solid #ececee;background:#fafafa}.si-tri-toolbar-spacer{flex:1;min-width:0}.si-live-indicator{width:.65rem;height:.65rem;border-radius:999px;background:#a1a1aa;box-shadow:0 0 0 4px #a1a1aa24}.si-live-indicator.is-running{background:#22c55e;box-shadow:0 0 0 4px #22c55e29}.si-current-voice-code{display:inline-flex;align-items:center;min-height:1.6rem;padding:0 .55rem;border-radius:6px;background:#f2f4f7;color:#475467;font-size:.74rem;font-weight:700;font-variant-numeric:tabular-nums}.si-current-voice-code{background:#eef2ff;color:#3730a3}.si-tri-title{font-weight:700;font-size:.95rem;color:#1c1c1e}.si-tri-target{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;font-weight:600;color:#636366}.si-tri-target select{min-width:6.5rem;height:1.75rem;padding:0 .45rem;border:1px solid #d1d1d6;border-radius:6px;background:#fff;color:#1c1c1e;font-size:.76rem}.si-tri-target select:disabled{color:#8e8e93;background:#f2f2f7}.si-tri-detected{font-size:.78rem;color:#636366;background:#f2f2f7;padding:2px 8px;border-radius:6px}.si-tri-detected-lang{font-size:.72rem;font-weight:600;color:#636366;background:#f2f2f7;padding:2px 8px;border-radius:6px}.si-tri-transcript-dock{flex:1;min-height:0;display:flex;flex-direction:column;border-top:1px solid #e8e8ec;background:#f5f5f7;position:relative}.si-tri-transcript-dock-inner{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:.35rem 0}.si-auto-scroll-btn{position:absolute;right:18px;bottom:18px;min-height:32px;padding:0 12px;border:1px solid rgba(91,91,214,.24);border-radius:7px;background:#fffffff5;color:#4f46e5;font-size:12px;font-weight:700;box-shadow:0 8px 22px #0f172a24;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}.si-auto-scroll-btn:hover{background:#f5f4ff;border-color:#5b5bd66b;transform:translateY(-1px)}.si-tri-empty{padding:2.5rem 1rem;text-align:center;font-size:.9rem;color:#c7c7cc}.si-tri-empty--capture-wait{text-align:left;max-width:36rem;margin:0 auto;padding-left:1.25rem;padding-right:1.25rem}.si-tri-capture-warn{margin-top:1rem;padding:.65rem .75rem;font-size:.82rem;line-height:1.55;color:#8b4513;background:#fff8e6;border:1px solid #f0d090;border-radius:6px}.si-tri-capture-tips{margin:.85rem 0 0;padding-left:1.1rem;font-size:.78rem;line-height:1.5;color:#9a9aa3}.si-tri-capture-tips li{margin-bottom:.35rem}.si-tri-block{padding:.65rem .85rem .75rem;border-bottom:1px solid #e0e0e4;background:#f5f5f7}.si-tri-block:last-child{border-bottom:none}.si-tri-block--playing{background:#eef4ff}.si-tri-block--partial{border-left:3px solid #93c5fd;background:#f1f5f9}.si-tri-block-latency{display:flex;align-items:center;gap:.35rem;margin-bottom:.45rem;font-size:.78rem;font-weight:600;color:#64748b;font-variant-numeric:tabular-nums}.si-tri-block-latency--streaming{color:#64748b;font-weight:500}.si-tri-block-latency--wait{color:#94a3b8;font-weight:500}.si-tri-partial-live-text{color:#1e293b;font-size:calc(1.2rem * var(--si-tri-font-scale, 1));line-height:1.6;word-break:break-word}.si-tri-speaker-header{display:flex;align-items:center;margin-bottom:.25rem}.si-tri-block-line{display:flex;align-items:flex-start;gap:.5rem;font-size:calc(1.05rem * var(--si-tri-font-scale, 1));line-height:1.6;color:#1e293b;word-break:break-word;padding:.2rem 0}.si-tri-block-line-body{flex:1;min-width:0}.si-tri-block-line+.si-tri-block-line{border-top:1px dashed #e2e8f0;margin-top:.15rem;padding-top:.45rem}.si-tri-line-lang-badge{flex-shrink:0;margin-top:.12em;min-width:4.5rem;max-width:8rem;font-size:.62rem;font-weight:700;letter-spacing:0;padding:.15rem .4rem;border-radius:4px;line-height:1.2;color:#4338ca;background:#e0e7ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.si-tri-line-lang-badge--partial{opacity:.92}.si-tri-line-lang-badge--unknown{color:#94a3b8;background:#f1f5f9;font-weight:400;font-style:italic}.si-tri-line-lang-badge--zh{color:#9d174d;background:#fce7f3}.si-tri-line-lang-badge--en{color:#6b21a8;background:#f3e8ff}.si-tri-line-lang-badge--id{color:#166534;background:#dcfce7}.si-tri-seg-pending{color:#aaa;font-size:calc(.95rem * var(--si-tri-font-scale, 1));font-style:italic}.si-tri-line-plain{color:#333}.si-tri-line-playing{color:#1d5eff;font-weight:600}.si-tri-share-line{color:#1d2939;font-size:calc(15px * var(--si-tri-font-scale, 1));line-height:1.65;word-break:break-word}.si-tri-share-line+.si-tri-share-line{margin-top:12px;padding-top:12px;border-top:1px solid #edf2f7}.si-tri-share-line--translated{color:#344054}.si-tri-footer{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.75rem 1rem;border-top:1px solid #ececee;background:#fafafa}.si-run-control{display:inline-flex;align-items:center;gap:.75rem;padding:.35rem;border:1px solid #e5e7eb;border-radius:999px;background:#fff;box-shadow:0 8px 24px #0f172a14}.si-run-status{display:inline-flex;align-items:center;gap:.45rem;min-width:6.6rem;padding-left:.75rem;color:#475467;font-size:.78rem;font-weight:700}.si-run-dot{width:.5rem;height:.5rem;border-radius:999px;background:#a1a1aa}.si-run-dot.is-running{background:#22c55e}.si-engine-btn{min-width:5.7rem;min-height:2.35rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .8rem;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:.82rem;font-weight:750;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s}.si-engine-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8;transform:translateY(-1px)}.si-engine-btn.is-openai{border-color:#0f766e;background:#ecfdf5;color:#0f766e}.si-engine-btn:disabled{opacity:.55;cursor:not-allowed}.si-setup-rail{min-height:0;overflow:hidden;border:1px solid #d8d8dc;border-radius:10px;background:#fff;display:flex;flex-direction:column}.si-setup-toggle{height:2.75rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 .85rem;border:0;border-bottom:1px solid #ececee;background:#fafafa;color:#1d2939;font-weight:700;cursor:pointer}.si-setup-toggle span:last-child{color:#667085;font-size:.76rem;font-weight:600}.si-setup-body{min-height:0;overflow-y:auto;padding:.85rem;display:flex;flex-direction:column;gap:1rem}.si-setup-section{display:flex;flex-direction:column;gap:.7rem}.si-setup-section h2{font-size:.82rem;line-height:1.2;color:#344054}.si-setup-save{align-self:flex-start;height:2rem;padding:0 .75rem;border:1px solid #d0d5dd;border-radius:6px;background:#fff;color:#344054;cursor:pointer}.si-setup-save:disabled{opacity:.55;cursor:not-allowed}.si-setup-empty{color:#98a2b3;font-size:.78rem}.si-session-hotwords{display:flex;flex-wrap:wrap;gap:8px}.si-session-languages{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.si-session-languages label{display:inline-flex;align-items:center;gap:6px}.si-session-languages button{height:30px;padding:0 12px}.si-session-hotwords label{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#344054;font-size:12px}.si-tri-btn{min-width:7rem;min-height:2.65rem;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.45rem 1.15rem;font-size:.9rem;font-weight:750;border:none;border-radius:999px;background:#2563eb;color:#fff;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s;box-shadow:0 6px 18px #2563eb42}.si-tri-btn:hover{background:#1d4ed8;transform:translateY(-1px)}.si-tri-btn--stop{background:#dc2626;box-shadow:0 6px 18px #dc26263b}.si-tri-btn--stop:hover{background:#b91c1c}.si-tri-btn:disabled{opacity:.55;cursor:not-allowed}.si-tri-warn{margin:0;padding:6px 1rem;font-size:.78rem;color:#a68307;background:#fef9e7;border-bottom:1px solid #f0e6b0}.si-tri-err{margin:0;padding:8px 1rem;font-size:.82rem;color:#c53030;background:#fff5f5;border-bottom:1px solid #fecaca}.si-voice-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .6rem;border-radius:999px;border:1px solid #34c759;background:#e8f9ef;color:#1a7f3c;font-size:.72rem;font-weight:600}.si-device-settings{background:#fafafa;border-bottom:1px solid #e0e0e4;padding:.75rem 1rem}.si-device-settings-panel{background:#fff;border:1px solid #e0e0e4;border-radius:8px;padding:.75rem 1rem}.si-device-settings-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.si-device-settings-row:last-child{margin-bottom:0}.si-device-settings-row label{flex-shrink:0;font-size:.82rem;font-weight:600;color:#3a3a3c;min-width:140px}.si-device-settings-row select{flex:1;padding:.35rem .5rem;font-size:.82rem;border:1px solid #d1d1d6;border-radius:6px;background:#fff;color:#1a1a1a;max-width:300px}.si-device-settings-hint{margin-top:.5rem;font-size:.75rem;color:#8e8e93;line-height:1.5}@media (max-width: 768px){.si-workspace{display:grid}.si-hover-sidebar{top:auto;bottom:5rem;transform:translate(calc(100% - 20px))}.si-hover-sidebar:hover,.si-hover-sidebar:focus-within{transform:translate(0)}.si-tri-toolbar{flex-wrap:wrap}.si-tri-footer{align-items:stretch;flex-direction:column}}.si-meeting-selector{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f8f8fa;border-top:1px solid #e0e0e8;flex-wrap:wrap}.si-meeting-selector-label{font-size:12px;color:#6b7280;white-space:nowrap}.si-meeting-selector-select{flex:1;min-width:160px;font-size:12px;padding:4px 8px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#1a1a1a}.si-meeting-selector-toggle{display:flex;align-items:center;gap:4px;font-size:12px;color:#6b7280;cursor:pointer;white-space:nowrap}.si-meeting-selector-recipients{flex:1;min-width:200px;font-size:12px;padding:4px 8px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#1a1a1a}.si-language-checkboxes{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.si-language-checkbox-item{display:flex;align-items:center;gap:4px;font-size:12px;color:#374151;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.si-language-checkbox-item input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:#5b5bd6}.si-send-settings{width:100%;border-top:1px solid #f1f1f4;padding-top:8px;margin-top:6px;display:flex;flex-direction:column;gap:6px}.si-send-settings-label{font-size:11px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.si-send-settings-req{width:100%;font-size:12px;padding:5px 8px;border:1px solid #e5e7eb;border-radius:6px;resize:vertical;background:#fafafa;color:#374151;font-family:inherit;box-sizing:border-box}.si-send-settings-req:focus{outline:none;border-color:#5b5bd6;background:#fff}.si-send-settings-list{display:flex;flex-wrap:wrap;gap:4px 10px}.si-send-settings-item{display:flex;align-items:center;gap:4px;font-size:12px;color:#374151;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.si-send-settings-item input[type=checkbox]{width:13px;height:13px;cursor:pointer;accent-color:#5b5bd6}.si-send-settings-item--chat span{color:#0078d4;font-weight:500}.si-share-invalid{max-width:420px;margin:12vh auto 0;padding:0 24px;text-align:center}.si-share-invalid-icon{font-size:44px;margin-bottom:12px}.si-share-invalid-title{font-size:18px;font-weight:700;color:#1d2939;margin:0 0 8px}.si-share-invalid-text{font-size:14px;line-height:1.7;color:#667085;margin:0}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:linear-gradient(180deg,#ffffffdb,#eef2f7b8),radial-gradient(circle at top left,rgba(38,132,255,.18),transparent 34rem),#eef2f7}.login-form{width:100%;max-width:420px;padding:34px;border:1px solid rgba(203,213,225,.9);border-radius:8px;background:#fffffff0;box-shadow:0 22px 60px #0f172a1a}.login-title{margin:0;color:#101828;text-align:center;font-size:28px;font-weight:780;letter-spacing:0}.login-subtitle{margin:8px 0 30px;color:#667085;text-align:center;font-size:13px;font-weight:500}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:8px;color:#344054;font-size:13px;font-weight:700}.form-group input{width:100%;min-height:44px;padding:0 13px;border:1px solid #d5dde8;border-radius:8px;outline:none;background:#fff;color:#172033;font-size:15px;transition:border-color .18s ease,box-shadow .18s ease}.form-group input:focus{border-color:#155eef;box-shadow:0 0 0 4px #155eef1a}.form-group input::placeholder{color:#98a2b3}.captcha-group{margin-top:-2px}.captcha-row{display:grid;grid-template-columns:minmax(92px,1fr) minmax(96px,116px) auto;gap:8px;align-items:stretch}.captcha-question{display:flex;align-items:center;min-height:44px;padding:0 12px;border:1px solid #d5dde8;border-radius:8px;background:#f8fafc;color:#172033;font-size:14px;font-weight:700;white-space:nowrap}.captcha-refresh{min-width:58px;min-height:44px;padding:0 12px;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#155eef;font-size:13px;font-weight:740;cursor:pointer}.captcha-refresh:hover:not(:disabled){border-color:#155eef;background:#eff6ff}.captcha-refresh:disabled{opacity:.58;cursor:not-allowed}.login-button{width:100%;min-height:44px;margin-top:4px;border:0;border-radius:8px;background:#155eef;color:#fff;font-size:15px;font-weight:760;cursor:pointer;box-shadow:0 10px 22px #155eef38;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.login-button:hover:not(:disabled){background:#004eeb;box-shadow:0 14px 30px #155eef47;transform:translateY(-1px)}.login-button:disabled{opacity:.58;cursor:not-allowed;box-shadow:none}.error-message,.error-banner{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:10px 12px;border:1px solid #fecdca;border-radius:8px;background:#fffbfa;color:#b42318;font-size:13px}.error-banner__message{flex:1}.error-banner__close{border:0;background:transparent;color:#b42318;font-size:18px;cursor:pointer}@media (max-width: 460px){.captcha-row{grid-template-columns:1fr}.captcha-question{justify-content:center}}.history-main{flex:1;min-height:0;display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px}.history-sidebar,.history-detail{min-height:0;border:1px solid rgba(203,213,225,.85);border-radius:12px;background:#fffffff5;box-shadow:0 1px 3px #0f172a0d,0 12px 40px #0f172a12}.history-sidebar{display:flex;flex-direction:column;padding:14px 12px;gap:10px}.history-search{display:flex;gap:7px}.history-search input{flex:1;min-width:0;height:36px;padding:0 11px;border:1px solid #dce3ee;border-radius:8px;font-size:13px;color:#1d2939;background:#f8faff;outline:none;transition:border-color .15s,background .15s}.history-search input:focus{border-color:#93c5fd;background:#fff}.history-search button{min-height:36px;padding:0 13px;border:1px solid #dce3ee;border-radius:8px;background:#fff;color:#344054;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.history-search button:hover{background:#f0f5ff;border-color:#93c5fd}.history-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.history-empty{padding:32px 12px;color:#98a2b3;text-align:center;font-size:13px}.history-item{display:flex;align-items:stretch;gap:6px;padding:10px 10px 10px 12px;border:1px solid #e9edf5;border-radius:9px;background:#fafbfe;transition:border-color .15s,background .15s,box-shadow .15s}.history-item:hover{border-color:#b0c4f5;background:#f5f8ff}.history-item--active{border-color:#2563eb!important;background:#eff4ff!important;box-shadow:0 0 0 3px #2563eb14}.history-item-main{display:flex;min-width:0;flex:1;flex-direction:column;align-items:flex-start;gap:4px;border:0;background:transparent;text-align:left;cursor:pointer;padding:0}.history-item-title{color:#101828;font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.history-item-meta{color:#8898aa;font-size:11.5px}.history-item-export{align-self:center;flex-shrink:0;min-height:28px;padding:0 9px;border:1px solid #dce3ee;border-radius:7px;background:#fff;color:#2563eb;font-size:11.5px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s}.history-item-export:hover{background:#eff4ff;border-color:#93c5fd}.history-item-export:disabled{color:#c0cad8;cursor:not-allowed;background:#fafbfc}.history-detail{display:flex;flex-direction:column;overflow:hidden}.history-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;border-bottom:1px solid #eef2f8;flex-shrink:0}.history-detail-toolbar h2{margin:0;color:#101828;font-size:16px;font-weight:700}.history-detail-toolbar p{margin:4px 0 0;color:#8898aa;font-size:12px}.history-detail-actions{display:flex;gap:7px;flex-shrink:0}.history-detail-actions button{min-height:34px;padding:0 13px;border:1px solid #dce3ee;border-radius:8px;background:#fff;color:#344054;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.history-detail-actions button:hover{background:#f5f8ff;border-color:#b0c4f5}.history-detail-actions .history-danger{border-color:#fecdca;background:#fffbfa;color:#b42318}.history-detail-actions .history-danger:hover{background:#fff1f0;border-color:#f97066}.history-tab-nav{display:flex;padding:0 20px;border-bottom:1px solid #eef2f8;background:#fafbfd;flex-shrink:0;gap:2px}.history-tab-btn{position:relative;padding:11px 16px;border:0;border-bottom:2px solid transparent;background:transparent;color:#8898aa;font-size:13px;font-weight:600;cursor:pointer;transition:color .15s;margin-bottom:-1px;white-space:nowrap}.history-tab-btn:hover{color:#475467}.history-tab-btn--active{color:#2563eb;border-bottom-color:#2563eb}.history-transcripts{flex:1;min-height:0}.history-transcript-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;padding:10px 12px;border:1px solid #e5eaf3;border-radius:9px;background:#f8faff}.history-transcript-search{display:flex;align-items:center;gap:8px;flex:1;min-width:240px}.history-transcript-search span{flex-shrink:0;color:#475467;font-size:12px;font-weight:700}.history-transcript-search input{flex:1;min-width:0;height:34px;padding:0 11px;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#101828;font-size:13px;outline:none}.history-transcript-search input:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #2563eb14}.history-transcript-search-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}.history-transcript-search-count{min-width:58px;color:#667085;font-size:12px;font-weight:700;text-align:center}.history-transcript-search-count--empty{color:#b42318}.history-transcript-nav-btn{min-height:32px;padding:0 10px;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#344054;font-size:12px;font-weight:700;cursor:pointer}.history-transcript-nav-btn:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.history-transcript-nav-btn:disabled{opacity:.45;cursor:not-allowed}.history-transcript-highlight{padding:0 2px;border-radius:3px;background:#fde68a;color:inherit}.history-transcript-highlight--fuzzy{background:#fed7aa;box-shadow:0 0 0 1px #ea580c38}.history-transcript-block--matched{background:#fffdf1}.history-transcript-block--fuzzy{background:#fff7ed}.history-transcript-block--active{border-left:4px solid #2563eb;background:#eff6ff;box-shadow:inset 0 0 0 1px #2563eb1f}.history-meeting-title-strip{display:flex;align-items:baseline;gap:8px;padding:10px 20px;border-bottom:1px solid #eef2f8;background:#fff;color:#101828;flex-shrink:0}.history-meeting-title-strip span{color:#667085;font-size:12px;font-weight:700}.history-meeting-title-strip strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}@media (max-width: 900px){.history-transcript-toolbar{align-items:stretch;flex-wrap:wrap}.history-transcript-search{flex-basis:100%;min-width:0}.history-transcript-search-actions{flex-wrap:wrap}}.history-summary-tab{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.history-summary-requirements{padding:12px 16px;border-bottom:1px solid var(--si-border, rgba(255,255,255,.1));flex-shrink:0}.history-summary-requirements-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.history-summary-requirements-label{font-size:12px;color:var(--si-muted, #8a9bb0);font-weight:600}.history-summary-requirements-default-btn{font-size:12px;padding:3px 10px;border-radius:6px;border:1px solid var(--si-border, rgba(255,255,255,.15));background:#ffffff0f;color:var(--si-muted, #8a9bb0);cursor:pointer}.history-summary-requirements-default-btn:hover{background:#ffffff1f;color:var(--si-text, #edf6ff)}.history-summary-requirements-input{width:100%;resize:vertical;min-height:60px;padding:8px 10px;border-radius:8px;border:1px solid var(--si-border, rgba(255,255,255,.12));background:#0003;color:var(--si-text, #edf6ff);font-size:13px;font-family:inherit;line-height:1.5;box-sizing:border-box}.history-summary-requirements-input::placeholder{color:var(--si-muted, #8a9bb0);opacity:.7}.history-summary-regen-row{padding:12px 16px;display:flex;justify-content:flex-end}.history-summary-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 20px;border-bottom:1px solid #eef2f8;background:#fafbfd;flex-shrink:0}.history-summary-toolbar-actions{display:flex;gap:7px}.history-summary-export-btn{min-height:31px;padding:0 13px;border:1px solid #b0c4f5;border-radius:8px;background:linear-gradient(135deg,#eff4ff,#e0eaff);color:#2457c5;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,transform .1s}.history-summary-export-btn:hover{background:linear-gradient(135deg,#dce8ff,#c7d9ff);transform:translateY(-1px)}.history-summary-export-btn:disabled,.history-summary-regen-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.history-summary-export-btn:active{transform:translateY(0)}.history-summary-export-btn--preferred{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#3b82f6;color:#1d4ed8;font-weight:500}.history-summary-export-btn--preferred:hover{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.history-summary-regen-btn{min-height:31px;padding:0 13px;border:1px solid #e0e7f0;border-radius:8px;background:#fff;color:#667085;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.history-summary-regen-btn:hover{background:#f5f8ff;border-color:#b0c4f5;color:#344054}.history-summary-body{flex:1;min-height:0;overflow-y:auto;padding:22px 24px}.history-summary-text{margin:0;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.9;color:#1d2939;font-family:inherit}.history-summary-edit-hint{font-size:12px;color:#98a2b3;margin-bottom:6px}.history-summary-edit{width:100%;min-height:220px;resize:vertical;padding:12px 14px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;font-family:inherit;font-size:14px;line-height:1.9;color:#1d2939}.history-speaker-record-edit{width:100%;min-height:120px;resize:vertical;margin-top:6px;padding:10px 12px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;font-family:inherit;font-size:13px;line-height:1.75;color:#1f2937}.history-summary-edit:focus,.history-speaker-record-edit:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.history-summary-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:14px;color:#8898aa}.history-summary-spinner{display:inline-block;width:28px;height:28px;border:3px solid #dce3ee;border-top-color:#2563eb;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.history-summary-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:14px;color:#98a2b3;padding:32px;text-align:center}.history-cost-global-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#f0f4ff;border:1px solid #c7d7ff;border-radius:8px;margin-bottom:4px}.history-cost-global-hint{font-size:12px;color:#6b7280}.history-cost-global-btn{font-size:12px;font-weight:600;color:#3b82f6;background:none;border:none;cursor:pointer;padding:0;white-space:nowrap}.history-cost-global-btn:hover{text-decoration:underline}.history-cost-tab{flex:1;min-height:0;overflow-y:auto;padding:20px 22px;display:flex;flex-direction:column;gap:14px}.history-cost-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.history-cost-card{position:relative;padding:16px 18px 16px 22px;border:1px solid #e9edf5;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:3px;overflow:hidden;transition:box-shadow .18s,transform .18s}.history-cost-card:hover{box-shadow:0 4px 18px #0f172a14;transform:translateY(-2px)}.history-cost-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:12px 0 0 12px;background:var(--accent, #2563eb)}.history-cost-card--asr{--accent: #7c3aed}.history-cost-card--trans{--accent: #2563eb}.history-cost-card--tts{--accent: #059669}.history-cost-card--llm{--accent: #d97706}.history-cost-card-icon{font-size:18px;margin-bottom:4px;line-height:1}.history-cost-card-label{font-size:11px;font-weight:800;color:#8898aa;text-transform:uppercase;letter-spacing:.07em}.history-cost-card-usage{font-size:13px;color:#475467;margin-top:5px}.history-cost-card-price{font-size:22px;font-weight:800;color:#101828;margin-top:5px;letter-spacing:-.5px}.history-cost-card-rate{font-size:11px;color:#b0bac8;margin-top:2px}.history-cost-card-note{font-size:11px;color:#d97706;margin-top:4px;font-style:italic}.history-cost-total-row{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-radius:12px;background:linear-gradient(135deg,#eff4ff,#e0eaff);border:1px solid #c0d2fa}.history-cost-total-label{font-size:14px;font-weight:700;color:#344054}.history-cost-total-sub{font-size:12px;color:#8898aa;margin-top:2px}.history-cost-total-value{font-size:26px;font-weight:900;color:#2563eb;letter-spacing:-1px}.history-cost-disclaimer{font-size:11.5px;color:#b0bac8;text-align:center;line-height:1.6}.history-speaker-record{border:1px solid rgba(203,213,225,.7);border-radius:10px;padding:14px 16px;margin-bottom:12px;background:#f8fafc}.history-speaker-record-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;flex-wrap:wrap}.history-speaker-record-title-group{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.history-speaker-record-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.history-speaker-record-name-input{flex:0 1 180px;min-width:120px;max-width:220px;height:30px;padding:0 9px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;font-weight:600;font-size:13px;color:#1e40af}.history-speaker-record-name-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.history-speaker-save-btn{color:#1d4ed8;border-color:#bfdbfe;background:#eff6ff}.history-speaker-record-title{font-size:13px;color:#374151;font-weight:500}.history-speaker-record-time{font-size:11px;color:#94a3b8}.history-speaker-record-summary{font-family:inherit;font-size:13px;line-height:1.75;white-space:pre-wrap;word-break:break-word;color:#1f2937;margin:0}.history-session-selector{display:flex;align-items:center;gap:10px;padding:8px 20px;border-bottom:1px solid #eef2f8;background:#fafbfd;flex-shrink:0;flex-wrap:wrap}.history-session-label{font-size:12px;font-weight:700;color:#667085;white-space:nowrap}.history-session-selector select{flex:1;min-width:0;height:30px;padding:0 8px;border:1px solid #dce3ee;border-radius:7px;font-size:12.5px;color:#344054;background:#fff;outline:none}.history-inline-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 20px;border-bottom:1px solid #fecaca;background:#fef2f2;color:#991b1b;font-size:12.5px;font-weight:600}.history-inline-error span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-inline-error button{flex-shrink:0;border:1px solid #fecaca;border-radius:6px;background:#fff;color:#991b1b;font-size:12px;font-weight:700;cursor:pointer}.history-danger{min-height:28px;padding:0 10px;border:1px solid #fecdca;border-radius:7px;background:#fffbfa;color:#b42318;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.history-danger:hover{background:#fff1f0;border-color:#f97066}.history-tab-content{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;padding:16px 20px;gap:12px}.history-meeting-file-card{border:1px solid #e2e8f3;border-radius:10px;padding:14px 16px;background:#fff;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.history-meeting-file-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.history-meeting-file-name{font-size:13.5px;font-weight:700;color:#1d2939;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-meeting-file-type{font-size:10.5px;font-weight:800;color:#2563eb;background:#eff4ff;border:1px solid #c0d2fa;border-radius:5px;padding:1px 6px;flex-shrink:0;letter-spacing:.04em;text-transform:uppercase}.history-meeting-file-time{font-size:11px;color:#94a3b8;flex-shrink:0}.history-meeting-file-summary{margin:0;padding:10px 12px;background:#f8fafc;border:1px solid #e9edf5;border-radius:7px;font-family:inherit;font-size:13px;line-height:1.8;white-space:pre-wrap;word-break:break-word;color:#1f2937}.history-meeting-file-nosummary{font-size:12.5px;color:#98a2b3;font-style:italic;padding:4px 0}.history-file-toggle-btn{margin-left:auto;flex-shrink:0;min-height:24px;padding:0 9px;border:1px solid #dce3ee;border-radius:6px;background:#fff;color:#2563eb;font-size:11.5px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.history-file-toggle-btn:hover{background:#eff4ff;border-color:#93c5fd}.history-file-toggle-btn:disabled,.history-audio-btn:disabled{opacity:.55;cursor:not-allowed;background:#f8fafc}.history-summary-send-panel{margin-top:.75rem;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem;background:#f8fafc}.history-summary-send-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.history-summary-send-label{font-size:.82rem;font-weight:600;color:#475569}.history-summary-send-all-btn{font-size:.78rem;color:#3b82f6;background:none;border:none;cursor:pointer;padding:0}.history-summary-send-list{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:.65rem}.history-summary-send-item{display:flex;align-items:center;gap:.35rem;font-size:.83rem;cursor:pointer;color:#374151}.history-summary-send-hint{margin-top:.75rem;font-size:.82rem;color:#94a3b8}.history-summary-send-settings{margin-top:.5rem;display:flex;flex-direction:column;gap:0}.history-recipient-section{margin-top:.75rem;position:relative}.history-recipient-save-hint{margin-left:.5rem;font-size:.75rem;font-weight:400}.history-recipient-save-hint--saving{color:#94a3b8}.history-recipient-save-hint--saved{color:#22c55e}.history-recipient-save-hint--error{color:#ef4444}.history-recipient-box{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;min-height:2.4rem;padding:.3rem .5rem;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;cursor:text;margin-top:.35rem}.history-recipient-tag{display:inline-flex;align-items:center;gap:.2rem;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:.15rem .45rem .15rem .6rem;font-size:.8rem;white-space:nowrap}.history-recipient-tag-x{background:none;border:none;cursor:pointer;color:#60a5fa;font-size:1.05rem;line-height:1;padding:0 .05rem;display:flex;align-items:center}.history-recipient-tag-x:hover{color:#1d4ed8}.history-recipient-input{flex:1;min-width:140px;border:none;background:transparent;outline:none;font-size:.83rem;color:#374151;padding:.15rem .2rem}.history-recipient-input::placeholder{color:#94a3b8}.history-recipient-dropdown{position:absolute;top:calc(100% + 2px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #0000001a;z-index:100;max-height:220px;overflow-y:auto}.history-recipient-dropdown-item{padding:.5rem .75rem;font-size:.83rem;color:#374151;cursor:pointer}.history-recipient-dropdown-item:hover{background:#f1f5f9;color:#1d4ed8}.history-summary-chat-toggle{display:flex;align-items:center;gap:.45rem;font-size:.84rem;color:#374151;cursor:pointer;padding:.45rem 0;-webkit-user-select:none;user-select:none}.history-teams-send-result{display:flex;flex-direction:column;gap:.55rem;margin:.75rem 20px 0}.history-speaker-record .history-teams-send-result{margin:.65rem 0 0}.history-teams-send-group{border:1px solid #e2e8f0;border-radius:8px;padding:.65rem .75rem;background:#f8fafc}.history-teams-send-group--success{border-color:#bbf7d0;background:#f0fdf4}.history-teams-send-group--failure{border-color:#fecaca;background:#fef2f2}.history-teams-send-title{margin-bottom:.45rem;font-size:.78rem;font-weight:800;color:#334155}.history-teams-send-tags{display:flex;flex-wrap:wrap;gap:.45rem}.history-teams-send-tag{min-width:0;max-width:100%;display:inline-flex;flex-direction:column;gap:.12rem;padding:.32rem .55rem;border-radius:7px;background:#fffc;border:1px solid rgba(148,163,184,.28)}.history-teams-send-tag strong,.history-teams-send-tag small{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-teams-send-tag strong{color:#0f172a;font-size:.8rem}.history-teams-send-tag small{color:#64748b;font-size:.72rem}.history-teams-send-empty{border:1px solid #fecaca;border-radius:8px;padding:.65rem .75rem;background:#fef2f2;color:#991b1b;font-size:.8rem}.history-action-items{margin-top:1.5rem;border-top:1px solid #e5e7eb;padding-top:1rem}.history-action-items-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.history-action-items-title{font-size:.95rem;font-weight:600;color:#111827}.history-action-items-extract-btn{font-size:.82rem;padding:.3rem .75rem;background:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .15s}.history-action-items-extract-btn:hover:not(:disabled){background:#1d4ed8}.history-action-items-extract-btn:disabled{opacity:.6;cursor:not-allowed}.history-action-items-empty{font-size:.85rem;color:#9ca3af;padding:.5rem 0}.history-action-items-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.history-action-item{display:flex;align-items:flex-start;gap:.6rem;padding:.55rem .75rem;border-radius:8px;background:#f9fafb;border:1px solid #e5e7eb;transition:background .1s}.history-action-item.done{background:#f0fdf4;border-color:#bbf7d0;opacity:.75}.history-action-item-check{flex-shrink:0;width:1.6rem;height:1.6rem;border-radius:50%;border:1.5px solid #9ca3af;background:#fff;color:#16a34a;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.history-action-item.done .history-action-item-check{border-color:#16a34a;background:#dcfce7}.history-action-item-body{flex:1;display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem;font-size:.87rem;color:#374151}.history-action-item.done .history-action-item-content{text-decoration:line-through;color:#9ca3af}.history-action-item-assignee{font-weight:600;color:#2563eb}.history-action-item-deadline{font-size:.78rem;color:#6b7280;margin-left:.25rem}.history-audio-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.history-audio-search{flex:1;padding:.35rem .7rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.88rem;background:#f8fafc;outline:none}.history-audio-search:focus{border-color:#6366f1;background:#fff}.history-audio-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.history-audio-item{border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1rem;background:#fafafa;display:flex;flex-direction:column;gap:.5rem}.history-audio-meta{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.history-audio-name{font-weight:600;font-size:.95rem;color:#1e293b;cursor:default}.history-audio-info{font-size:.78rem;color:#64748b}.history-audio-player{width:100%;height:36px;accent-color:#6366f1}.history-audio-actions{display:flex;gap:.5rem;flex-wrap:wrap}.history-audio-btn{padding:3px 12px;font-size:.8rem;border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#374151;cursor:pointer;text-decoration:none;display:inline-block;line-height:1.6}.history-audio-btn:hover{background:#f1f5f9}.history-audio-btn--danger{color:#dc2626;border-color:#fca5a5}.history-audio-btn--danger:hover{background:#fef2f2}.history-audio-rename-input{flex:1;font-size:.95rem;font-weight:600;padding:2px 6px;border:1px solid #6366f1;border-radius:4px;outline:none}@media (max-width: 960px){.history-main{grid-template-columns:1fr}.history-sidebar{max-height:320px}.history-cost-grid{grid-template-columns:1fr}}.terminology-main{flex:1;min-height:0;display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px}.asset-tabs{display:flex;gap:8px;padding:0 0 14px}.asset-tabs button{min-height:36px;padding:0 14px;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#344054;font-size:13px;font-weight:700;cursor:pointer}.asset-tabs button.is-active{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.terminology-editor,.terminology-table-panel{min-height:0;border:1px solid #d8d8dc;border-radius:8px;background:#fff}.terminology-editor{padding:16px;overflow-y:auto}.terminology-editor h2{margin:0 0 14px;font-size:17px}.terminology-editor form{display:grid;gap:12px}.terminology-editor label{display:grid;gap:5px;color:#344054;font-size:13px;font-weight:700}.terminology-editor input,.terminology-editor select,.terminology-editor textarea,.terminology-toolbar input,.terminology-toolbar select{width:100%;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#101828;font-size:13px}.terminology-editor input,.terminology-editor select,.terminology-toolbar input,.terminology-toolbar select{height:38px;padding:0 10px}.terminology-editor textarea{min-height:80px;padding:10px;resize:vertical}.terminology-toggle{display:flex!important;align-items:center;gap:8px}.terminology-toggle input{width:16px;height:16px}.terminology-editor-actions,.terminology-toolbar{display:flex;gap:8px}.terminology-editor-actions button,.terminology-toolbar button,.terminology-table-wrap button{min-height:34px;padding:0 11px;border:1px solid #d5dde8;border-radius:8px;background:#fff;color:#344054;font-size:13px;font-weight:700;cursor:pointer;transition:background .13s,border-color .13s,color .13s}.terminology-toolbar .term-clear-all-btn{margin-left:auto;border-color:#f1b0b7;color:#b42318;background:#fff5f5}.terminology-toolbar .term-clear-all-btn:hover:not(:disabled){background:#b42318;border-color:#b42318;color:#fff}.terminology-toolbar .term-clear-all-btn:disabled{opacity:.5;cursor:not-allowed}.term-test-panel{margin-top:14px;padding-top:14px;border-top:1px solid #e7ecf3}.term-test-panel h3{margin:0 0 8px;font-size:14px;color:#101828}.term-test-input{width:100%;min-height:56px;border:1px solid #d5dde8;border-radius:8px;padding:8px 10px;font-size:13px;resize:vertical}.term-test-langs{display:flex;align-items:center;gap:8px;margin-top:8px}.term-test-langs select{height:34px;border:1px solid #d5dde8;border-radius:8px;padding:0 8px;background:#fff}.term-test-arrow{color:#667085}.term-test-result{margin-top:10px;padding:10px 12px;background:#f4f8ff;border:1px solid #cfe0ff;border-radius:8px;font-size:14px;color:#101828;white-space:pre-wrap;word-break:break-word}.terminology-editor-actions button:hover,.terminology-toolbar button:hover,.terminology-table-wrap button:hover{background:#f5f8ff;border-color:#93c5fd}.terminology-editor-actions button[type=submit],.terminology-editor-actions button:first-child{background:#2563eb;border-color:#2563eb;color:#fff}.terminology-editor-actions button[type=submit]:hover,.terminology-editor-actions button:first-child:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.terminology-editor-actions button:disabled{opacity:.45;cursor:not-allowed}.user-import-panel{display:grid;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid #eef2f6}.user-import-button{display:inline-flex!important;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border:1px solid #93c5fd;border-radius:8px;background:#eff6ff;color:#1d4ed8!important;font-size:13px;font-weight:700;cursor:pointer}.user-import-button input{display:none}.user-import-message{padding:8px 10px;border-radius:8px;background:#ecfdf3;color:#067647;font-size:12px}.terminology-table-wrap button:last-child{border-color:#fecdca;color:#b42318;background:#fffbfa}.terminology-table-wrap button:last-child:hover{background:#fff1f0;border-color:#fca5a5}.terminology-table-panel{display:flex;flex-direction:column;overflow:hidden}.terminology-toolbar{padding:14px;border-bottom:1px solid #eef2f6}.terminology-toolbar input{flex:1}.terminology-toolbar select{width:96px}.terminology-error{padding:10px 14px;border-bottom:1px solid #fecaca;background:#fff5f5;color:#c53030;font-size:13px}.terminology-table-wrap{flex:1;min-height:0;overflow:auto}.terminology-table-wrap table{width:100%;border-collapse:collapse;font-size:13px}.terminology-table-wrap th,.terminology-table-wrap td{padding:11px 12px;border-bottom:1px solid #eef2f6;text-align:left;vertical-align:top}.terminology-table-wrap th{position:sticky;top:0;background:#fafafa;color:#475467;z-index:1}.terminology-table-wrap td:last-child{display:flex;flex-wrap:wrap;gap:6px}.is-enabled{color:#067647}.is-disabled{color:#b42318}@media (max-width: 900px){.terminology-main{grid-template-columns:1fr}}.term-group-header td{background:#f0f4ff;padding:7px 12px!important;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex!important;align-items:center;gap:8px}.term-group-header:hover td{background:#e8eeff}.term-group-toggle{font-size:10px;color:#6b7280}.term-group-name{font-weight:600;font-size:13px;color:#1e3a5f}.term-group-count{font-size:12px;color:#6b7280}.extract-btn{background:#eff6ff!important;border-color:#93c5fd!important;color:#1d4ed8!important;white-space:nowrap}.extract-btn:hover{background:#dbeafe!important}.extract-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.extract-modal{background:#fff;border-radius:14px;box-shadow:0 8px 40px #0f172a2e;width:520px;max-width:96vw;max-height:82vh;display:flex;flex-direction:column;overflow:hidden}.extract-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid #e5e7eb}.extract-modal-title{font-size:15px;font-weight:700;color:#111827}.extract-modal-close{background:none;border:none;font-size:16px;color:#6b7280;cursor:pointer;padding:2px 6px;border-radius:4px}.extract-modal-close:hover{background:#f3f4f6}.extract-modal-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;padding:16px 18px;overflow-y:auto}.extract-hint{font-size:13px;color:#6b7280;margin:0}.extract-loading{text-align:center;padding:20px 0;color:#9ca3af;font-size:13px}.extract-session-select{width:100%;height:38px;padding:0 10px;border:1px solid #d5dde8;border-radius:8px;font-size:13px;color:#101828;background:#fff}.extract-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.extract-preview-toolbar button{min-height:30px;padding:0 10px;border:1px solid #d5dde8;border-radius:6px;background:#fff;font-size:12px;cursor:pointer;white-space:nowrap}.extract-suggestion-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px;border:1px solid #e5e7eb;border-radius:8px;padding:8px}.extract-suggestion-item{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;cursor:pointer;font-size:13px}.extract-suggestion-item:hover{background:#f9fafb}.extract-phrase{flex:1;font-weight:500;color:#111827}.extract-cat{font-size:11px;padding:1px 6px;border-radius:10px;background:#f3f4f6;color:#374151}.extract-lang{font-size:11px;color:#6b7280;min-width:36px}.badge-new{font-size:11px;padding:1px 6px;border-radius:10px;background:#dcfce7;color:#166534}.badge-exists{font-size:11px;padding:1px 6px;border-radius:10px;background:#f3f4f6;color:#9ca3af}.extract-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px;border-top:1px solid #f3f4f6}.extract-modal-actions button{min-height:34px;padding:0 14px;border:1px solid #d5dde8;border-radius:8px;background:#fff;font-size:13px;font-weight:600;cursor:pointer}.extract-btn-primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}.extract-btn-primary:disabled{opacity:.45;cursor:not-allowed}.user-import-panel{margin-top:14px;padding-top:14px;border-top:1px solid #e5e7eb}.user-import-button{display:inline-block;padding:8px 16px;border-radius:8px;background:#2563eb;color:#fff;font-size:14px;font-weight:600;cursor:pointer}.user-import-button input[type=file]{display:none}.user-import-hint{margin-top:8px;font-size:12px;color:#6b7280;line-height:1.5}.user-import-message{margin-top:8px;font-size:13px;color:#059669}.voice-root{min-height:100vh;background:#f1f5f9;color:#111827}.voice-topbar{height:70px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dbe3ee;background:#ffffffdb}.voice-topbar h1{margin:0;font-size:22px;font-weight:800}.voice-main{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:28px 0 42px;display:grid;gap:18px}.voice-section{padding:24px;border:1px solid #dbe3ee;border-radius:8px;background:#fff;box-shadow:0 10px 24px #0f172a0d}.voice-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.voice-section-header h2{margin:0;font-size:18px;font-weight:800}.voice-section-header span,.voice-row span{color:#64748b;font-size:13px}.voice-controls{display:grid;grid-template-columns:180px 160px minmax(220px,1fr);gap:14px;align-items:end}.voice-controls label{min-width:0;display:flex;flex-direction:column;gap:7px}.voice-controls span{font-size:13px;font-weight:700;color:#475569}.voice-controls select,.voice-controls input{width:100%;height:38px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#111827;font:inherit;font-size:14px;padding:0 10px}.voice-controls select:focus,.voice-controls input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.voice-actions{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px}.voice-helper{margin:12px 0 0;color:#64748b;font-size:13px;line-height:1.6}.voice-primary-btn,.voice-stop-btn,.voice-delete-btn{min-height:36px;padding:0 14px;border-radius:7px;font-weight:750;cursor:pointer}.voice-primary-btn{border:1px solid #8ea2f6;background:#8ea2f6;color:#fff}.voice-stop-btn{border:1px solid #dc2626;background:#dc2626;color:#fff}.voice-delete-btn{border:1px solid #fecaca;background:#fff5f5;color:#b91c1c}.voice-primary-btn:disabled,.voice-stop-btn:disabled,.voice-delete-btn:disabled{opacity:.55;cursor:not-allowed}.voice-preview{width:100%;margin-top:18px}.voice-list{display:grid;gap:10px}.voice-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.voice-row div{min-width:0;display:grid;gap:3px}.voice-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-empty{min-height:96px;display:grid;place-items:center;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b}@media (max-width: 720px){.voice-topbar{padding:0 16px}.voice-main{width:calc(100% - 20px);padding-top:14px}.voice-section{padding:16px}.voice-section-header,.voice-row{align-items:stretch;flex-direction:column}.voice-controls{grid-template-columns:1fr}.voice-primary-btn,.voice-stop-btn,.voice-delete-btn{width:100%}}.meetings-root{width:100%;max-width:100vw;min-height:100vh;overflow-x:hidden;background:#f3f4f6;color:#1f2937}.meetings-topbar{width:100%;max-width:100%;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px;border-bottom:1px solid #d8dde6;background:#f9fafb}.meetings-title{margin:0;font-size:20px;font-weight:750;color:#111827}.meetings-main{width:min(1120px,calc(100vw - 40px));max-width:100%;margin:0 auto;padding:24px 0 40px;display:flex;flex-direction:column;gap:18px}.meetings-section{min-width:0;max-width:100%;padding:18px 20px;border:1px solid #dfe5ee;border-radius:8px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.meetings-section-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.meetings-section-header h2{margin:0;font-size:16px;font-weight:750;color:#111827}.meetings-muted{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:#8a94a6}.meetings-form-row{display:flex;align-items:center;gap:12px}.meetings-form-row{margin-bottom:14px}.meetings-field{width:min(520px,100%);display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:10px}.meetings-field span{font-size:13px;font-weight:700;color:#4b5563}.meetings-field select{min-height:36px;padding:0 10px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#111827;font:inherit;font-size:14px}.meetings-field select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.meetings-primary-btn,.meetings-delete-btn{min-height:36px;padding:0 16px;border-radius:7px;border:1px solid transparent;font-size:13px;font-weight:750;cursor:pointer}.meetings-primary-btn{background:#2563eb;color:#fff}.meetings-primary-btn:hover:not(:disabled){background:#1d4ed8}.meetings-primary-btn:disabled,.meetings-delete-btn:disabled{opacity:.55;cursor:not-allowed}.meetings-upload{min-height:118px;display:flex;align-items:center;justify-content:center;gap:14px;padding:18px;border:2px dashed #cbd5e1;border-radius:8px;background:#f8fafc;cursor:pointer;transition:border-color .15s ease,background .15s ease}.meetings-upload:hover{border-color:#2563eb;background:#eff6ff}.meetings-upload.is-uploading{pointer-events:none;border-color:#93c5fd}.meetings-upload-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:#dbeafe;color:#1d4ed8;font-size:13px;font-weight:850}.meetings-upload strong,.meetings-upload span{display:block}.meetings-upload strong{font-size:15px;color:#1f2937}.meetings-upload span{margin-top:3px;font-size:13px;color:#64748b}.meetings-notice-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);align-items:end;gap:14px}.meetings-link-field,.meetings-notice-field{min-width:0;display:flex;flex-direction:column;gap:7px}.meetings-link-field span,.meetings-notice-field span{font-size:13px;font-weight:700;color:#4b5563}.meetings-link-field input{width:100%;min-height:44px;padding:0 12px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#111827;font:inherit;font-size:14px}.meetings-link-field input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.meetings-notice-upload{min-height:44px;padding:0 14px;gap:12px;justify-content:flex-start}.meetings-notice-upload .meetings-upload-icon{width:30px;height:30px;font-size:11px;border-radius:6px;flex-shrink:0}.meetings-upload-text{min-width:0;text-align:left}.meetings-notice-upload .meetings-upload-text strong{font-size:13px}.meetings-notice-upload .meetings-upload-text span{margin-top:1px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meetings-notification-content{min-width:0;display:flex;flex-direction:column;gap:7px}.meetings-notification-content span{font-size:13px;font-weight:700;color:#4b5563}.meetings-notification-content textarea{width:100%;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#111827;font:inherit;font-size:14px}.meetings-notification-content textarea{resize:vertical;min-height:168px;padding:10px;line-height:1.55}.meetings-notification-content textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.meetings-secondary-btn{min-height:32px;padding:0 12px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#334155;font-size:13px;font-weight:750;cursor:pointer}.meetings-secondary-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.meetings-secondary-btn:disabled{opacity:.55;cursor:not-allowed}.meetings-notification-preview{margin-top:16px;padding-top:16px;border-top:1px solid #e2e8f0}.meetings-preview-stats,.meetings-notice-warnings{display:flex;flex-wrap:wrap;gap:8px}.meetings-preview-stats span,.meetings-notice-warnings span{min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;font-size:12px;font-weight:750}.meetings-preview-stats span{background:#eef2ff;color:#3730a3}.meetings-notice-warnings{margin-top:12px}.meetings-notice-warnings span{background:#fff7ed;color:#9a3412}.meetings-recipient-toolbar{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.meetings-recipient-toolbar strong{font-size:14px;color:#111827}.meetings-recipient-list{margin-top:8px;border-top:1px solid #e2e8f0}.meetings-recipient-row{min-width:0;display:grid;grid-template-columns:28px minmax(110px,.8fr) minmax(110px,.8fr) minmax(160px,1.4fr);align-items:center;gap:10px;min-height:42px;padding:8px 0;border-bottom:1px solid #eef2f7;font-size:13px;color:#334155}.meetings-recipient-row input{width:16px;height:16px}.meetings-recipient-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meetings-notification-content{margin-top:14px}.meetings-send-row{margin-top:12px;display:flex;justify-content:flex-end}.meetings-delivery-result{margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0;color:#334155;font-size:13px}.meetings-delivery-result div{display:flex;align-items:center;justify-content:space-between;gap:12px}.meetings-delivery-result strong{color:#111827}.meetings-delivery-result p{margin:8px 0 0;line-height:1.55;overflow-wrap:anywhere}.meetings-empty{padding:28px 12px;text-align:center;color:#94a3b8;font-size:14px}.meetings-file-list{margin-top:14px;display:flex;flex-direction:column;gap:8px}.meetings-file-row{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.meetings-file-meta{min-width:0;display:flex;align-items:center;gap:10px}.meetings-file-type{min-width:44px;padding:3px 6px;border-radius:6px;background:#eef2ff;color:#3730a3;font-size:11px;font-weight:800;text-align:center}.meetings-file-meta div{min-width:0}.meetings-file-meta strong,.meetings-file-meta span{display:block}.meetings-file-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:#1f2937}.meetings-file-meta span{margin-top:2px;font-size:12px;color:#8a94a6}.meetings-delete-btn{flex-shrink:0;background:#fff;border-color:#fecaca;color:#b91c1c}.meetings-delete-btn:hover:not(:disabled){background:#fef2f2}@media (max-width: 640px){.meetings-topbar{min-height:auto;flex-wrap:wrap;align-items:flex-start;padding:12px 14px}.meetings-topbar .si-pill-btn{margin-left:auto}.meetings-main{width:100%;padding:14px 12px 32px}.meetings-section{padding:16px}.meetings-section-header,.meetings-form-row,.meetings-recipient-toolbar,.meetings-delivery-result div,.meetings-file-row{align-items:stretch;flex-direction:column}.meetings-field{width:100%;grid-template-columns:1fr}.meetings-file-meta,.meetings-primary-btn,.meetings-secondary-btn,.meetings-delete-btn{width:100%}.meetings-notice-grid{grid-template-columns:1fr}.meetings-recipient-row{grid-template-columns:24px minmax(0,1fr);gap:6px 10px}.meetings-recipient-row span:nth-child(3),.meetings-recipient-row span:nth-child(4){grid-column:2}.meetings-upload{align-items:center;flex-direction:column;text-align:center}}.ca-root{height:auto;min-height:100%;overflow:visible}.ca-topbar{position:sticky;top:0;z-index:5;background:#f6f8fb}.ca-main{flex:1;min-height:0;padding:1rem 1.25rem 2rem;display:flex;flex-direction:column;gap:1rem}.ca-loading{display:flex;align-items:center;justify-content:center;height:200px;color:#8e8e93;font-size:.95rem}.ca-range-bar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ca-range-label{font-size:.82rem;color:#8e8e93;margin-right:.25rem}.ca-range-btn{padding:.3rem .75rem;border-radius:20px;border:1px solid #d1d5db;background:#fff;font-size:.82rem;color:#374151;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.ca-range-btn:hover{background:#f3f4f6}.ca-range-btn--active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.ca-range-count{margin-left:auto;font-size:.82rem;color:#8e8e93}.ca-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.ca-stat-card{border-radius:10px;padding:.9rem 1rem;background:#fff;border:1px solid rgba(203,213,225,.85);box-shadow:0 1px 3px #0f172a0a;display:flex;flex-direction:column;gap:.25rem}.ca-stat-card--total{border-left:3px solid #1d4ed8}.ca-stat-card--avg{border-left:3px solid #6366f1}.ca-stat-card--asr{border-left:3px solid #3b82f6}.ca-stat-card--trans{border-left:3px solid #22c55e}.ca-stat-card--tts{border-left:3px solid #a855f7}.ca-stat-card--llm{border-left:3px solid #f59e0b}.ca-stat-label{font-size:.75rem;color:#6b7280;font-weight:500}.ca-stat-value{font-size:1.1rem;font-weight:700;color:#111827;letter-spacing:-.02em}.ca-stat-sub{font-size:.72rem;color:#9ca3af}.ca-chart-row{display:grid;grid-template-columns:1fr 260px;gap:.75rem}@media (max-width: 700px){.ca-chart-row{grid-template-columns:1fr}}.ca-card{background:#fff;border:1px solid rgba(203,213,225,.85);border-radius:12px;padding:1rem 1.1rem;box-shadow:0 1px 3px #0f172a0a}.ca-card-title{font-size:.85rem;font-weight:600;color:#374151;margin-bottom:.65rem}.ca-bar-legend{display:flex;gap:.85rem;margin-bottom:.4rem;flex-wrap:wrap}.ca-legend-item{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:#6b7280}.ca-legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.ca-bar-svg{width:100%;height:auto;display:block;overflow:visible}.ca-bar-empty{display:flex;align-items:center;justify-content:center;height:120px;color:#9ca3af;font-size:.85rem}.ca-axis-label{font-size:9px;fill:#9ca3af;font-family:inherit}.ca-card--donut{display:flex;flex-direction:column;align-items:stretch}.ca-donut-svg{width:160px;height:160px;display:block;margin:0 auto;overflow:visible}.ca-donut-empty{display:flex;align-items:center;justify-content:center;height:160px;color:#9ca3af;font-size:.85rem}.ca-donut-center-label{font-size:11px;fill:#6b7280;font-family:inherit}.ca-donut-center-value{font-size:10px;fill:#111827;font-weight:700;font-family:inherit}.ca-donut-breakdown{margin-top:.75rem;display:flex;flex-direction:column;gap:.3rem}.ca-donut-row{display:flex;align-items:center;gap:.35rem;font-size:.78rem}.ca-donut-row-label{flex:1;color:#374151}.ca-donut-row-pct{color:#6b7280;min-width:36px;text-align:right}.ca-donut-row-val{color:#111827;font-variant-numeric:tabular-nums;min-width:80px;text-align:right;font-weight:500}.ca-card--table{overflow:hidden}.ca-table-wrap{overflow-x:auto;overflow-y:auto;max-height:320px}.ca-table{width:100%;border-collapse:collapse;font-size:.82rem}.ca-table thead tr{border-bottom:1px solid #e5e7eb}.ca-table th{padding:.4rem .6rem;text-align:left;font-weight:600;color:#6b7280;white-space:nowrap}.ca-th-num{text-align:right!important}.ca-table tbody tr:hover{background:#f9fafb}.ca-table td{padding:.45rem .6rem;border-bottom:1px solid #f3f4f6;color:#374151}.ca-td-title{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ca-td-meta{color:#9ca3af;white-space:nowrap}.ca-td-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ca-td-total{font-weight:600;color:#1d4ed8}.ca-table-empty{padding:1.5rem 0;text-align:center;color:#9ca3af;font-size:.85rem}.ca-disclaimer{font-size:.72rem;color:#9ca3af;line-height:1.5;padding:0 .1rem}.ca-tab-bar{display:flex;gap:.5rem;margin-bottom:1rem}.ca-tab-btn{padding:.4rem 1rem;border-radius:20px;border:1.5px solid #d1d5db;background:#fff;font-size:.85rem;color:#374151;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ca-tab-btn--active{background:#2563eb;color:#fff;border-color:#2563eb}.ca-budget-bar-wrap{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:.75rem 1rem;margin-bottom:1rem}.ca-budget-bar-header{display:flex;justify-content:space-between;font-size:.82rem;color:#4b5563;margin-bottom:.4rem}.ca-budget-bar-track{height:10px;border-radius:5px;background:#e5e7eb;overflow:hidden}.ca-budget-bar-fill{height:100%;border-radius:5px;background:#3b82f6;transition:width .4s ease}.ca-budget-bar-fill--over{background:#ef4444}.ca-monthly-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.ca-tr-current{background:#eff6ff;font-weight:600}.secops-main{flex:1;min-height:0;padding:16px;overflow:auto;display:flex;flex-direction:column;gap:14px}.secops-banner{padding:10px 14px;border-radius:8px;font-size:13px;font-weight:700}.secops-banner--error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.secops-banner--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d}.secops-panel{border:1px solid #d8d8dc;border-radius:8px;background:#fff;padding:14px}.secops-panel h2{margin:0 0 12px;font-size:15px;font-weight:800;color:#1f2937}.secops-form{display:grid;gap:10px;align-items:end;margin-bottom:12px}.secops-form--inline{grid-template-columns:repeat(3,minmax(120px,180px)) auto auto}.secops-form--grant{grid-template-columns:minmax(120px,160px) minmax(120px,160px) minmax(240px,1fr) auto}.secops-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#475467}.secops-form input,.secops-form select{min-height:36px;padding:0 10px;border:1px solid #d5dde8;border-radius:7px;background:#fff;color:#1f2937}.secops-form button,.secops-mini{min-height:34px;padding:0 12px;border:1px solid #2563eb;border-radius:7px;background:#2563eb;color:#fff;font-size:12px;font-weight:800;cursor:pointer}.secops-mini--ghost{background:#fff;color:#344054;border-color:#d5dde8}.secops-form button:disabled,.secops-mini:disabled{opacity:.55;cursor:not-allowed}.secops-table-wrap{overflow:auto}.secops-table{width:100%;border-collapse:collapse;font-size:13px}.secops-table th{text-align:left;padding:9px 10px;color:#667085;font-weight:800;border-bottom:1px solid #eaecf0;background:#f9fafb}.secops-table td{padding:9px 10px;border-bottom:1px solid #f2f4f7;color:#1f2937;vertical-align:middle}.secops-actions{display:flex;gap:6px;flex-wrap:wrap}@media (max-width: 900px){.secops-form--inline,.secops-form--grant{grid-template-columns:1fr}}.usermgmt-main{flex:1;min-height:0;padding:16px;overflow:auto}.usermgmt-banner{margin:0 0 12px;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:600}.usermgmt-banner--error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.usermgmt-banner--success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.usermgmt-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start}.usermgmt-card{border:1px solid #d8d8dc;border-radius:10px;background:#fff;padding:16px 18px}.usermgmt-card h2{margin:0 0 14px;font-size:15px;font-weight:800;color:#1f2937;display:flex;align-items:center;gap:8px}.usermgmt-count{font-size:12px;font-weight:700;color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:1px 9px}.usermgmt-form{display:flex;flex-direction:column;gap:12px}.usermgmt-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#475467}.usermgmt-form input,.usermgmt-form select{min-height:38px;padding:0 10px;border:1px solid #d5dde8;border-radius:8px;background:#fff;font-size:14px;color:#1f2937}.usermgmt-form input:focus,.usermgmt-form select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.usermgmt-form button[type=submit]{margin-top:4px;min-height:40px;border:none;border-radius:8px;background:#2563eb;color:#fff;font-size:14px;font-weight:700;cursor:pointer}.usermgmt-form button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.usermgmt-role-help{margin-top:16px;padding-top:14px;border-top:1px solid #edf0f5;display:flex;flex-direction:column;gap:10px}.usermgmt-role-help-item{display:flex;flex-direction:column;gap:3px}.usermgmt-role-help-item strong{font-size:12px;color:#1f2937}.usermgmt-role-help-item span{font-size:12px;line-height:1.55;color:#667085}.usermgmt-table-card{overflow:hidden}.usermgmt-table{width:100%;border-collapse:collapse;font-size:13px}.usermgmt-table th{text-align:left;padding:10px 12px;color:#667085;font-weight:700;border-bottom:1px solid #eaecf0;background:#f9fafb}.usermgmt-table td{padding:10px 12px;border-bottom:1px solid #f2f4f7;color:#1f2937;vertical-align:middle}.usermgmt-table tr.is-disabled td{color:#98a2b3}.usermgmt-role-select{min-height:32px;padding:0 8px;border:1px solid #d5dde8;border-radius:7px;background:#fff;font-size:13px;font-weight:600;color:#344054}.usermgmt-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700}.usermgmt-badge--active{background:#ecfdf3;color:#027a48}.usermgmt-badge--disabled{background:#fef3f2;color:#b42318}.usermgmt-badge--pending{background:#fffaeb;color:#b54708}.usermgmt-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.usermgmt-mini{min-height:30px;padding:0 12px;border:1px solid #2563eb;border-radius:7px;background:#2563eb;color:#fff;font-size:12px;font-weight:700;cursor:pointer}.usermgmt-mini--ghost{background:#fff;color:#344054;border-color:#d5dde8}.usermgmt-mini:disabled{opacity:.55;cursor:not-allowed}.usermgmt-reset-inline{display:flex;gap:6px;align-items:center}.usermgmt-reset-inline input{min-height:30px;padding:0 9px;border:1px solid #d5dde8;border-radius:7px;font-size:13px;width:130px}.usermgmt-empty{padding:40px 16px;text-align:center;color:#98a2b3;font-size:14px}@media (max-width: 860px){.usermgmt-grid{grid-template-columns:1fr}.usermgmt-table th:nth-child(2),.usermgmt-table td:nth-child(2){display:none}}.admin-console{background:#eef0f3}.admin-console-topbar{justify-content:space-between}.admin-console-tabs{display:flex;align-items:center;gap:6px;padding:12px 0 0;border-bottom:1px solid #d8d8dc}.admin-console-tabs button{min-height:38px;padding:0 18px;border:0;border-bottom:3px solid transparent;background:transparent;color:#667085;font-size:14px;font-weight:750;cursor:pointer}.admin-console-tabs button:hover{color:#1f2937;background:#ffffff85}.admin-console-tabs button.is-active{color:#1d4ed8;border-bottom-color:#2563eb}.admin-console-content{flex:1;min-height:0;display:flex;flex-direction:column}.admin-console-content .usermgmt-main,.admin-console-content .secops-main{padding:16px 0 0}@media (max-width: 720px){.admin-console-topbar{align-items:flex-start}.admin-console-tabs{overflow-x:auto}.admin-console-tabs button{flex:0 0 auto}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background-color:#f5f5f7;color:#1a1a1a;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}.route-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#f6f8fb}.auth-loading{display:flex;min-height:100vh;align-items:center;justify-content:center;color:#475467;font-size:14px;font-weight:600}.header{display:flex;justify-content:space-between;align-items:center;padding:16px 32px;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e0e0e4;position:sticky;top:0;z-index:100}.header__title{font-size:20px;font-weight:700;color:#1a1a1a}.header__actions{display:flex;gap:20px;align-items:center}.btn-link{background:none;border:none;color:#636366;font-size:14px;cursor:pointer;transition:color .2s}.btn-link:hover{color:#1a1a1a}.main-content{flex:1;padding:48px 64px;width:100%}
