:root{--bg-primary-base:15, 15, 25;--bg-opacity:.85;--bg-primary:rgba(var(--bg-primary-base), var(--bg-opacity));--bg-secondary:#19192dd9;--bg-tertiary:#232337b3;--glass-border:#ffffff14;--glass-border-hover:#ffffff26;--accent-cyan:#00d4ff;--accent-purple:#8b5cf6;--accent-gradient:linear-gradient(135deg, #00d4ff, #8b5cf6);--accent-gradient-reverse:linear-gradient(135deg, #8b5cf6, #00d4ff);--text-primary:#e8e8f0;--text-secondary:#e8e8f099;--text-dim:#e8e8f059;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--radius-full:50%;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 8px 40px #00000080;--shadow-glow-cyan:0 0 20px #00d4ff4d;--shadow-glow-purple:0 0 20px #8b5cf64d;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--scrollbar-track:#161626d9;--scrollbar-thumb:#64628c8c;--scrollbar-thumb-hover:#8280afbf}.app-container{background:var(--bg-primary);border-radius:var(--radius-xl);border:1px solid var(--glass-border);width:100%;height:100%;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:relative;overflow:hidden}.title-bar{cursor:grab;border-bottom:1px solid var(--glass-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.platform-darwin .title-bar{cursor:default}.title-bar-left{align-items:center;gap:8px;display:flex}.app-logo{justify-content:center;align-items:center;display:flex}.app-title{letter-spacing:.3px;background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:13px;font-weight:600}.title-bar-right{gap:4px;display:flex}.title-btn{width:28px;height:28px;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.title-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.close-btn:hover{color:var(--error);background:#ef444433}.main-content{transition:transform var(--transition-slow), opacity var(--transition-slow);flex-direction:column;flex:1;gap:14px;padding:16px;display:flex;overflow:hidden}.main-content.slide-out{opacity:0;transform:translate(-100%)}.main-content.shift-right{transform:translate(330px)}.status-bar{align-items:center;gap:8px;padding:0 4px;display:flex}.status-dot{border-radius:var(--radius-full);background:var(--text-dim);width:8px;height:8px;transition:background var(--transition-normal);flex-shrink:0}.status-dot.ready{background:var(--success)}.status-dot.recording{background:var(--error);animation:1s ease-in-out infinite pulse-dot}.status-dot.processing{background:var(--warning);animation:.6s ease-in-out infinite pulse-dot}.status-dot.error{background:var(--error)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.status-text{color:var(--text-secondary);flex:1;font-size:12px;font-weight:500}.engine-badge{border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--glass-border);color:var(--text-dim);cursor:pointer;transition:all var(--transition-fast);outline:none;align-items:center;gap:5px;padding:3px 10px;font-size:10px;font-weight:500;display:flex}.engine-badge:hover{background:var(--bg-secondary);color:var(--accent-cyan);border-color:var(--accent-cyan)}.mic-container{flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;gap:20px;min-height:110px;margin-top:-10px;padding:8px 16px;display:flex;position:relative}.mic-ring{border-radius:var(--radius-full);border:2px solid var(--glass-border);width:88px;height:88px;transition:all var(--transition-normal);z-index:2;background:0 0;justify-content:center;align-items:center;display:flex;position:relative}.mic-ring:before{content:"";border-radius:var(--radius-full);background:var(--accent-gradient);opacity:0;transition:opacity var(--transition-normal);z-index:-1;filter:blur(8px);position:absolute;inset:-4px}.mic-ring.active{background:linear-gradient(var(--bg-primary), var(--bg-primary)) padding-box, var(--accent-gradient) border-box;border:2px solid #0000}.mic-ring.active:before{opacity:.5;animation:2s ease-in-out infinite pulse-ring}@keyframes pulse-ring{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.08)}}.mic-button{border-radius:var(--radius-full);background:var(--accent-gradient);cursor:pointer;width:68px;height:68px;transition:all var(--transition-normal);box-shadow:var(--shadow-glow-cyan);border:none;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.mic-button:after{content:"";border-radius:var(--radius-full);opacity:0;transition:opacity var(--transition-fast);background:#ffffff1a;position:absolute;inset:0}.mic-button:hover{box-shadow:var(--shadow-glow-cyan), var(--shadow-glow-purple);transform:scale(1.05)}.mic-button:hover:after{opacity:1}.mic-button:active{transform:scale(.97)}.mic-button.recording{background:linear-gradient(135deg, var(--error), #dc2626);animation:1.5s ease-in-out infinite pulse-btn;box-shadow:0 0 20px #ef444466}@keyframes pulse-btn{0%,to{box-shadow:0 0 20px #ef44444d}50%{box-shadow:0 0 35px #ef444499}}.hidden{display:none!important}.waveform{opacity:0;height:40px;transition:opacity var(--transition-normal), transform var(--transition-normal);pointer-events:none;align-items:center;gap:4px;display:flex}#waveform-left{transform:translate(10px)}#waveform-right{transform:translate(-10px)}.waveform.active{opacity:1;transform:translate(0)!important}.wave-bar{background:var(--accent-gradient);width:3px;height:6px;transition:height var(--transition-fast);border-radius:2px}.waveform.active .wave-bar{animation:.8s ease-in-out infinite wave}.waveform.active .wave-bar:first-child{animation-delay:0s}.waveform.active .wave-bar:nth-child(2){animation-delay:.1s}.waveform.active .wave-bar:nth-child(3){animation-delay:.2s}.waveform.active .wave-bar:nth-child(4){animation-delay:.3s}.waveform.active .wave-bar:nth-child(5){animation-delay:.4s}.waveform.active .wave-bar:nth-child(6){animation-delay:.5s}.waveform.active .wave-bar:nth-child(7),#waveform-left.active .wave-bar:first-child{animation-delay:.6s}#waveform-left.active .wave-bar:nth-child(2){animation-delay:.5s}#waveform-left.active .wave-bar:nth-child(3){animation-delay:.4s}#waveform-left.active .wave-bar:nth-child(4){animation-delay:.3s}#waveform-left.active .wave-bar:nth-child(5){animation-delay:.2s}#waveform-left.active .wave-bar:nth-child(6){animation-delay:.1s}#waveform-left.active .wave-bar:nth-child(7){animation-delay:0s}@keyframes wave{0%,to{height:6px}50%{height:22px}}.quick-settings{border-bottom:1px solid var(--glass-border);justify-content:center;align-items:center;gap:12px 14px;margin-bottom:8px;padding:8px 12px 12px;display:flex}.quick-setting-item{color:var(--text-dim);transition:color var(--transition-fast);flex-direction:column;align-items:center;gap:6px;display:flex}.quick-setting-item:hover{color:var(--text-secondary)}.quick-setting-item svg{opacity:.7}.quick-setting-item:hover svg{opacity:1}.progress-container{flex-direction:column;gap:6px;padding:8px 0;display:flex}.progress-text{color:var(--text-secondary);text-align:center;font-size:11px}.progress-bar{background:var(--bg-tertiary);border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-fill{background:var(--accent-gradient);width:0%;height:100%;transition:width var(--transition-normal);border-radius:2px}.transcription-container{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex}.transcription-header{justify-content:space-between;align-items:center;display:flex}.transcription-tabs{align-items:center;gap:6px;display:inline-flex}.transcription-tab{color:var(--text-dim);letter-spacing:.02em;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:2px 6px;font-size:10px;font-weight:600}.transcription-tab:hover{color:var(--text-secondary);background:#ffffff0a}.transcription-tab.active{color:var(--accent-cyan);background:#00d4ff1f}.transcription-actions{gap:2px;display:flex}.action-btn{width:26px;height:26px;color:var(--text-dim);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.action-btn:hover{background:var(--bg-tertiary);color:var(--accent-cyan)}.action-btn.copied{color:var(--success)}.transcription-text{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--transition-fast);cursor:text;-webkit-app-region:no-drag;-webkit-user-select:text;user-select:text;outline:none;flex:1;min-height:40px;padding:10px 12px;font-size:12px;line-height:1.5;overflow-y:auto}.transcription-text:focus{border-color:var(--glass-border-hover)}.transcription-text:empty:before{content:attr(data-placeholder);color:var(--text-dim);font-size:11px;font-style:italic}.transcription-text.processing{opacity:.6;pointer-events:none;cursor:wait}.history-text{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);-webkit-app-region:no-drag;flex:1;min-height:40px;padding:10px 12px;overflow-y:auto}.history-list{flex-direction:column;gap:8px;display:flex}.history-empty{color:var(--text-dim);font-size:11px;font-style:italic}.history-item{border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);background:#00000029;padding:8px 10px}.history-item:hover{border-color:var(--glass-border-hover)}.history-item.selected{background:#00d4ff14;border-color:#00d4ff73}.history-item-index{color:var(--text-dim);margin-bottom:4px;font-size:10px;display:block}.history-item-text{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;-webkit-user-select:text;user-select:text;cursor:text;font-size:12px;line-height:1.45}.transcription-footer{border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);background:#0f172a66;border-top:none;flex-shrink:0;justify-content:space-between;align-items:center;min-height:38px;padding:6px 10px;display:flex}.transcription-footer.hidden{display:none!important}.ai-actions-group{gap:4px;display:flex}#ai-actions-toolbar .ai-actions-group .action-btn{border:1px solid var(--glass-border);box-sizing:border-box;background:#0003}#ai-actions-toolbar .ai-actions-group .action-btn:hover{border-color:var(--glass-border-hover);background:var(--bg-tertiary)}.ai-btn svg{transition:transform var(--transition-fast)}.ai-btn:hover svg{transform:scale(1.1)}#ai-fix-btn:hover{color:gold}#ai-formal-btn:hover{color:#ec4899}#ai-summary-btn:hover{color:#10b981}#ai-reply-btn:hover{color:#00d4ff}#ai-shorten-btn:hover{color:#f59e0b}#ai-rephrase-btn:hover{color:#38bdf8}#region-ocr-btn:hover{color:#a78bfa}#ai-expand-btn:hover{color:#8b5cf6}#ai-custom-btn:hover{color:#22d3ee}.custom-prompt-container{border:1px solid var(--glass-border);border-radius:var(--radius-md);transition:all var(--transition-normal);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#1e293bb3;flex-shrink:0;align-items:center;gap:8px;margin:6px 0;padding:8px 12px;display:flex}.custom-prompt-container.hidden{display:none!important}#custom-prompt-input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px}#custom-prompt-input::placeholder{color:var(--text-dim)}#custom-prompt-go{background:var(--accent-gradient);color:#fff;cursor:pointer;transition:opacity var(--transition-fast), transform var(--transition-fast);border:none;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:600}#custom-prompt-go:hover{opacity:.9;transform:translateY(-1px)}#custom-prompt-go:active{transform:translateY(0)}.ai-thinking-dots{gap:3px;padding:0 4px;display:flex}.ai-thinking-dots span{background:var(--accent-cyan);border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite both bounce}.ai-thinking-dots span:first-child{animation-delay:-.32s}.ai-thinking-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{opacity:.3;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.transcription-text::-webkit-scrollbar{width:4px}.transcription-text::-webkit-scrollbar-track{background:0 0}.transcription-text::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:2px}.history-text::-webkit-scrollbar{width:4px}.history-text::-webkit-scrollbar-track{background:0 0}.history-text::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:2px}.hotkey-hint{text-align:center;color:var(--text-dim);white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0;padding:5px 10px 6px;font-size:10px;line-height:1.35;overflow:auto hidden}.hotkey-hint::-webkit-scrollbar{height:0}.hotkey-hint-inner{white-space:nowrap;flex-wrap:nowrap;justify-content:center;align-items:center;gap:4px 8px;display:inline-flex}.hotkey-hint-group{flex-shrink:0;align-items:center;gap:3px;display:inline-flex}.hotkey-hint-cap{letter-spacing:.02em;color:var(--text-dim);margin-left:3px;font-size:10px;font-weight:500}.hotkey-hint-gap{opacity:.4;-webkit-user-select:none;user-select:none;flex-shrink:0;padding:0 1px}.hotkey-hint-mark{opacity:.85;flex-shrink:0;margin-right:1px;font-size:11px;line-height:1}.hotkey-hint kbd{box-sizing:border-box;border-radius:3px;justify-content:center;align-items:center;min-width:0;min-height:17px;padding:2px 5px;font-size:9px;line-height:1.25;display:inline-flex}kbd{background:var(--bg-tertiary);border:1px solid var(--glass-border);color:var(--text-secondary);border-radius:3px;padding:1px 5px;font-family:Inter,sans-serif;font-size:10px;display:inline-block}.settings-panel{background:var(--bg-primary);z-index:10;transition:transform var(--transition-slow);backface-visibility:hidden;flex-direction:column;display:flex;position:absolute;inset:41px 0 0;transform:translate(100%)}.settings-panel.visible{transform:translate(0,0)}.settings-panel.hidden{pointer-events:none;transform:translate(100%);display:flex!important}.settings-panel.visible,.about-panel.visible{pointer-events:all}.about-panel{background:var(--bg-primary);z-index:10;transition:transform var(--transition-slow);backface-visibility:hidden;flex-direction:column;display:flex;position:absolute;inset:41px 0 0;transform:translate(-100%)}.about-panel.visible{transform:translate(0,0)}.about-panel.hidden{pointer-events:none;transform:translate(-100%);display:flex!important}.settings-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.about-hero-title{text-transform:none;letter-spacing:-.5px;color:var(--accent-cyan);margin-bottom:4px;font-size:24px;font-weight:700;line-height:1.25}.about-hero-lead{color:var(--text-primary);font-size:13px}.settings-title{background:var(--accent-gradient);-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:1px;-webkit-background-clip:text;background-clip:text;font-size:15px;font-weight:700}.settings-body{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.settings-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);flex-direction:column;flex:1;gap:16px;min-height:0;padding:14px;display:flex;overflow:hidden auto}.settings-scroll::-webkit-scrollbar{width:8px}.settings-scroll::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-sm);margin:4px 0}.settings-scroll::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm);background-clip:padding-box;border:2px solid #0000}.settings-scroll::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box;border:2px solid #0000}.settings-overlay-open .main-content{visibility:hidden;pointer-events:none}.settings-overlay-open .app-container{box-shadow:none}.settings-overlay-open .main-content,.settings-overlay-open .main-content *,.about-overlay-open .main-content,.about-overlay-open .main-content *{animation-play-state:paused!important}.settings-overlay-open .mic-ring:before,.about-overlay-open .mic-ring:before{opacity:0!important;filter:none!important;animation:none!important}.settings-body a.about-link,.settings-scroll a.about-link{color:var(--accent-cyan);text-underline-offset:2px;cursor:pointer;-webkit-user-select:text;user-select:text;text-decoration:underline}.settings-body a.about-link:hover,.settings-scroll a.about-link:hover{color:var(--accent-purple)}.about-developer{padding-top:4px}.about-developer .setting-description{color:var(--text-secondary)}.setting-group{flex-direction:column;gap:6px;display:flex}.setting-label{color:var(--text-primary);font-size:12px;font-weight:600}.setting-description{color:var(--text-dim);font-size:11px;line-height:1.4}.setting-select,.setting-input{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color var(--transition-fast);-webkit-app-region:no-drag;outline:none;padding:8px 10px;font-family:Inter,sans-serif;font-size:12px}.setting-select:focus,.setting-input:focus{border-color:var(--accent-cyan)}.setting-group.dimmed{opacity:.5;pointer-events:none;filter:grayscale(.5)}.setting-info{color:var(--warning);margin-top:6px;font-size:10px;line-height:1.4;display:none}.setting-group.dimmed .setting-info{display:block}.setting-select option{color:var(--text-primary);background:#1a1a2e}.toggle-switch{cursor:pointer;width:42px;height:22px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{background-color:#ffffff08;border:1px solid #ffffff26;border-radius:20px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.toggle-slider:before{content:"";background-color:#fff6;border-radius:50%;width:10px;height:10px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:2px;left:3px}.toggle-switch.mini{width:32px;height:18px}.toggle-switch.mini .toggle-slider:before{width:8px;height:8px;bottom:4px;left:3px}.toggle-switch input:checked+.toggle-slider,.toggle-switch.mini input:checked+.toggle-slider{background:0 0!important;border:1px solid #00d4ff!important;box-shadow:0 0 10px #00d4ff33!important}.toggle-switch input:checked+.toggle-slider:before,.toggle-switch.mini input:checked+.toggle-slider:before{background-color:#00d4ff!important;transform:translate(13px)!important;box-shadow:0 0 8px #00d4ff99!important}.save-btn{background:var(--accent-gradient);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);border:none;margin-top:auto;padding:10px 16px;font-family:Inter,sans-serif;font-size:13px;font-weight:600}.save-btn:hover{box-shadow:var(--shadow-glow-cyan);transform:translateY(-1px)}.save-btn:active{transform:translateY(0)}.api-key-group{display:none}.api-key-group.visible{display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn var(--transition-slow) forwards}.shine-btn{animation:2s ease-in-out infinite shine-pulse;position:relative;overflow:hidden}@keyframes shine-pulse{0%{box-shadow:0 0 #00d4ff00}50%{box-shadow:0 0 20px 4px #00d4ff66}to{box-shadow:0 0 #00d4ff00}}.shine-btn:after{content:"";background:linear-gradient(45deg,#0000 45%,#fff6 50%,#0000 55%);width:200%;height:200%;animation:1.5s infinite shine-sweep;position:absolute;top:-50%;left:-50%;transform:rotate(45deg)}@keyframes shine-sweep{0%{transform:translate(-100%)rotate(45deg)}to{transform:translate(100%)rotate(45deg)}}@keyframes shine-pulse-once{0%{box-shadow:0 0 #00d4ff00}45%{box-shadow:0 0 24px 6px #00d4ff8c,0 0 12px 2px #8b5cf659}to{box-shadow:0 0 #00d4ff00}}.shine-btn-once{animation:1.2s ease-in-out forwards shine-pulse-once;position:relative;overflow:hidden}@keyframes shine-sweep-once{0%{opacity:1;transform:translate(-115%)rotate(45deg)}to{opacity:0;transform:translate(115%)rotate(45deg)}}.shine-btn-once:after{content:"";pointer-events:none;opacity:0;background:linear-gradient(45deg,#0000 44%,#ffffff61 50%,#0000 56%);width:200%;height:200%;animation:1.15s ease-out forwards shine-sweep-once;position:absolute;top:-50%;left:-50%;transform:translate(-115%)rotate(45deg)}.toast{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);box-shadow:var(--shadow-md);transition:transform var(--transition-slow);z-index:100;flex-direction:column;align-items:stretch;max-width:min(320px,92vw);padding:8px 16px;font-size:12px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)translateY(100px)}.toast.show{transform:translate(-50%)translateY(0)}.toast.success{border-color:var(--success)}.toast.error{border-color:var(--error)}.toast .toast-message{line-height:1.35}.toast .toast-action{border-radius:var(--radius-sm);border:1px solid var(--glass-border-hover);color:var(--accent-cyan);cursor:pointer;background:#00d4ff1f;align-self:flex-start;margin-top:8px;padding:4px 10px;font-size:11px}.toast .toast-action:hover{background:#00d4ff33}.range-container{flex:1;align-items:center;display:flex}input[type=range]{appearance:none;background:var(--bg-tertiary);cursor:pointer;border-radius:2px;outline:none;width:100%;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-gradient);cursor:pointer;border-radius:50%;width:14px;height:14px;transition:transform .1s;box-shadow:0 0 10px #00d4ff66}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.2)}.setting-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.setting-name{color:var(--text-secondary);white-space:nowrap;min-width:80px;font-size:11px}.spinner-overlay{-webkit-backdrop-filter:none;border-radius:var(--radius-md);z-index:20;opacity:0;pointer-events:none;transition:opacity var(--transition-base);background:0 0;justify-content:center;align-items:flex-start;padding-top:32%;display:flex;position:absolute;inset:0}.spinner-overlay.visible{opacity:1}.spinner-visual-container{background:#19192d;border:1px solid #ffffff08;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 0 20px 8px #19192d}@keyframes grspin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#transcription-container{position:relative}.about-developer{margin-top:12px}.about-link{color:var(--accent-cyan);transition:color var(--transition-base);font-weight:600;text-decoration:none}.about-link:hover{color:var(--accent-purple);text-decoration:underline}body.grammar-float-body{height:auto;min-height:0;margin:0;padding:0;overflow:hidden}html:has(body.grammar-float-body){height:auto;min-height:0;margin:0;padding:0;overflow:hidden}body.grammar-float-body.resizable-active{height:100%!important}html:has(body.grammar-float-body.resizable-active){height:100%!important}.grammar-float-body{-webkit-app-region:no-drag;margin:0;padding:0;overflow:hidden;background:0 0!important}.grammar-float-root{box-sizing:border-box;background:rgb(var(--bg-primary-base));border:1px solid var(--glass-border);border-radius:var(--radius-md);height:auto;min-height:0;box-shadow:var(--shadow-lg);flex-direction:column;flex:none;align-self:flex-start;align-items:stretch;padding:10px 12px 12px;display:flex;position:relative;overflow:hidden;width:320px!important;min-width:320px!important;max-width:320px!important}.float-chrome-row.float-chrome-header{box-sizing:border-box;flex-shrink:0;align-items:center;gap:8px;width:100%;min-width:0;min-height:32px;margin-bottom:10px;padding:2px 0 0;display:flex}.platform-darwin .float-chrome-row.float-chrome-header{cursor:default}.fab-dot-wrap{flex-shrink:0;justify-content:center;align-items:center;display:flex}.float-header-mid{flex:1;align-items:center;min-width:0;min-height:28px;display:flex}.panel-hint.header-hint-inline{min-width:0;color:var(--text-secondary);white-space:normal;text-overflow:clip;-webkit-user-select:none;user-select:none;pointer-events:none;cursor:inherit;flex:1;margin:0;font-size:11px;font-weight:500;line-height:1.35;overflow:visible}.float-close-btn{-webkit-app-region:no-drag;flex-shrink:0;width:28px;height:28px}@keyframes fab-dot-pulse{0%,to{filter:brightness();transform:scale(1)}40%{filter:brightness(1.18);transform:scale(1.12)}60%{filter:brightness(1.1);transform:scale(1.06)}}.fab-dot-btn{cursor:pointer;z-index:1;-webkit-app-region:no-drag;width:14px;min-width:14px;height:14px;min-height:14px;transition:box-shadow var(--transition-fast);will-change:transform;background:linear-gradient(135deg,#00d4ff,#8b5cf6);border:none;border-radius:50%;flex-shrink:0;padding:0;animation:2.4s ease-in-out infinite fab-dot-pulse;position:relative;box-shadow:0 0 12px #8b5cf68c}.fab-dot-btn:hover{filter:brightness(1.12);animation-play-state:paused;transform:scale(1.14);box-shadow:0 0 16px #00d4ff73,0 0 14px #8b5cf680}@media (prefers-reduced-motion:reduce){.fab-dot-btn{filter:none;animation:none}.fab-dot-btn:hover{transform:none}}.fab-dot-btn.state-idle{background:linear-gradient(135deg,#00d4ff,#8b5cf6)}.fab-dot-btn.state-warn{background:linear-gradient(135deg,#fcd34d,#f59e0b);box-shadow:0 0 12px #f59e0bb3}.fab-dot-btn.state-ok{background:linear-gradient(135deg,#6ee7b7,#10b981);box-shadow:0 0 10px #10b9818c}.fab-dot-btn.state-neutral{background:linear-gradient(135deg,#a78bfa,#6366f1);box-shadow:0 0 10px #6366f180}.grammar-panel{box-shadow:none;-webkit-app-region:no-drag;background:0 0;border:none;border-radius:0;flex-direction:column;flex:none;gap:8px;margin:0;padding:0;display:none}.grammar-panel.open{display:flex;width:100%!important;min-width:0!important}.thinking-float{min-height:14px}.transcription-footer.grammar-ai-toolbar{border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:#00000038;flex-wrap:wrap;justify-content:flex-start;margin:0}.grammar-ai-toolbar .ai-actions-group .action-btn{border:1px solid var(--glass-border);box-sizing:border-box;background:#0003}.grammar-ai-toolbar .ai-actions-group .action-btn:hover{border-color:var(--glass-border-hover);background:var(--bg-tertiary)}.grammar-custom{margin:0!important}.grammar-result{color:var(--text-primary);border-radius:var(--radius-sm);border:1px solid var(--glass-border);-webkit-user-select:text;user-select:text;background:#00000038;max-height:800px;padding:8px;font-size:12px;line-height:1.45;display:none;overflow-y:auto}.grammar-result.visible{display:block}.grammar-rephrase-picks{flex-direction:column;gap:6px;max-height:420px;padding:2px 0;overflow-y:auto}.rephrase-picks-label{color:var(--text-secondary);-webkit-user-select:none;user-select:none;margin:0 0 2px;font-size:11px;font-weight:600}.rephrase-option-btn{box-sizing:border-box;text-align:left;width:100%;color:var(--text-primary);border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);-webkit-user-select:text;user-select:text;background:#00000038;margin:0;padding:8px 10px;font-family:inherit;font-size:12px;line-height:1.45;display:block}.rephrase-option-btn:hover{background:#00d4ff14;border-color:#00d4ff73}.rephrase-picks-cancel{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-self:flex-start;margin-top:2px;padding:6px 10px;font-family:inherit;font-size:11px;font-weight:500}.rephrase-picks-cancel:hover{color:var(--text-primary);border-color:var(--glass-border-hover)}.apply-row{gap:8px;margin-top:2px;display:flex}.apply-row button{border-radius:var(--radius-sm);color:var(--accent-cyan);cursor:pointer;transition:opacity var(--transition-fast);background:#00d4ff1f;border:1px solid #00d4ff73;flex:1;padding:8px 10px;font-family:inherit;font-size:11px;font-weight:600}.apply-row button:hover{opacity:.92}.apply-row button.secondary{border-color:var(--glass-border-hover);color:var(--text-secondary);background:0 0}.float-resize-gutter{z-index:60;-webkit-app-region:no-drag;box-sizing:border-box;pointer-events:auto;background:0 0;position:absolute}.float-resize-e{cursor:ew-resize;width:8px;top:42px;bottom:10px;right:0}.float-resize-w{cursor:ew-resize;width:8px;top:42px;bottom:10px;left:0}.float-resize-se{cursor:nwse-resize;width:16px;height:16px;bottom:0;right:0}.float-resize-sw{cursor:nesw-resize;width:16px;height:16px;bottom:0;left:0}.fab-container{cursor:pointer;-webkit-app-region:no-drag;justify-content:center;align-items:center;width:90px;height:90px;display:flex;position:absolute}.fab-circle{background:var(--accent-gradient);-webkit-user-select:none;user-select:none;background-clip:padding-box;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 15px #0006,0 0 10px #00d4ff4d}.fab-circle:hover,.fab-circle.pretend-hover{transform:scale(1.08);box-shadow:0 6px 20px #00000080,0 0 15px #00d4ff80}.fab-circle.recording{background:var(--error-gradient,linear-gradient(135deg, #ef4444, #dc2626));animation:1.5s ease-in-out infinite pulse-recording;box-shadow:0 0 20px #ef444499}@keyframes pulse-recording{0%,to{transform:scale(1);box-shadow:0 0 15px #ef444466}50%{transform:scale(1.05);box-shadow:0 0 30px #ef4444b3}}.fab-circle .mic-icon,.fab-circle .stop-icon{transition:opacity .2s}.spinner-visual-container{width:44px;height:44px;box-shadow:none;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.rotating-spinner{z-index:21;background:conic-gradient(#00d4ff,#22d3ee,#6366f1,#8b5cf6,#a78bfa,#00d4ff);border-radius:50%;flex-shrink:0;width:32px;height:32px;animation:.75s linear infinite grspin;position:relative;-webkit-mask:radial-gradient(circle closest-side,#0000 10px,#000 11px 14px,#0000 15px);mask:radial-gradient(circle closest-side,#0000 10px,#000 11px 14px,#0000 15px)}.fab-container:after{content:"";pointer-events:none;opacity:.5;border:1px solid #ffffff1a;border-radius:50%;position:absolute;inset:12px}.expand-btn{cursor:pointer;opacity:0;z-index:10;background:#1e1e2df2;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute;top:12px;right:12px;transform:scale(.5);box-shadow:0 2px 8px #00000080}.fab-container:hover .expand-btn,.fab-container.pretend-hover .expand-btn{opacity:1;transform:scale(1)}.expand-btn:hover,.expand-btn.pretend-hover{background:var(--accent-purple);transform:scale(1.15)}.fab-waveform{pointer-events:none;opacity:0;z-index:20;align-items:center;gap:3px;height:30px;transition:opacity .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.fab-waveform.active{opacity:1}.fab-waveform.left{flex-direction:row-reverse;right:calc(100% + 12px)}.fab-waveform.right{left:calc(100% + 12px)}.fab-waveform .wave-bar{background:var(--accent-gradient);border-radius:1px;width:2px;height:6px}@keyframes fab-wave{0%,to{height:6px}50%{height:24px}}.fab-waveform.active .wave-bar{animation:.8s ease-in-out infinite fab-wave}.fab-waveform.active .wave-bar:first-child{animation-delay:0s}.fab-waveform.active .wave-bar:nth-child(2){animation-delay:.15s}.fab-waveform.active .wave-bar:nth-child(3){animation-delay:.3s}.fab-waveform.active .wave-bar:nth-child(4){animation-delay:.45s}[data-tooltip-pos=bottom]:after{top:calc(100% + 10px);bottom:auto}[data-tooltip-pos=bottom]:before{border-width:0 6px 6px;border-color:#0000 #0000 #0f172af2;top:calc(100% + 4px);bottom:auto}.fab-dot-pulse{animation:2.4s ease-in-out infinite fab-dot-pulse}
