@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-primary:#f5f7fa;--bg-secondary:#fff;--text-primary:#0c1631;--text-secondary:#626d84;--border-color:#e0e4eb;--accent:#5f42f0;--accent-hover:#4b2bee;--accent-glow:#5f42f026;--success:#1fad53;--error:#e8304f;--panel-bg:#ffffffb3;--glass-shadow:0 8px 32px 0 #1f26870d;--card-shadow:0 4px 20px #00000005;--font-display:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--accent-rgb:130, 80, 255}[data-theme=dark]{--bg-primary:#0f1119;--bg-secondary:#181b25;--text-primary:#f8fafc;--text-secondary:#94a3b8;--border-color:#2b2e3b;--accent:#9986f9;--accent-hover:#ad9efa;--accent-glow:#9986f933;--success:#66ea97;--error:#f6657d;--panel-bg:#14192899;--glass-shadow:0 8px 32px 0 #0006;--card-shadow:0 4px 20px #0000004d;--accent-rgb:160, 120, 255}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100dvh;line-height:1.5;transition:background-color .4s,color .4s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.app-container{flex-direction:column;max-width:1400px;height:100dvh;margin:0 auto;padding:0 1.5rem 1rem;display:flex;overflow:hidden}.workspace-grid{flex:1;grid-template-columns:1fr 340px;gap:1.5rem;min-height:0;margin-top:1rem;transition:grid-template-columns .4s cubic-bezier(.4,0,.2,1);display:grid;overflow:hidden}.workspace-grid.sidebar-hidden{grid-template-columns:1fr 0;gap:0}.main-editor-area{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex}.sidebar-panels{height:100%;min-height:0;padding-right:4px;transition:opacity .3s;overflow-y:auto}.sidebar-hidden .sidebar-panels{opacity:0;pointer-events:none}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);box-shadow:var(--glass-shadow);border-radius:16px;transition:border-color .3s,box-shadow .3s}.glass-panel:hover{border-color:#5f42f04d}.ios-spinner{border:2px solid #0000;border-top-color:var(--accent);border-right-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite ios-spin}.icon-btn:hover:not(:disabled){transform:scale(1.08)}@keyframes ios-spin{to{transform:rotate(360deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-ring{0%{opacity:.8;transform:scale(.85)}50%{opacity:.4;transform:scale(1.15)}to{opacity:0;transform:scale(1.4)}}@keyframes wave-bounce{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popoverIn{0%{opacity:0;transform:scale(.92)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.popover-anim{will-change:transform, opacity;transform-origin:100% 0;animation:.18s cubic-bezier(.16,1,.3,1) forwards popoverIn}.floating-ai-menu{will-change:transform, opacity;contain:layout style paint;transform:translateZ(0)}header img[alt=VoiceScribe\ Logo]{display:none!important}@media (width<=1024px){.app-container{height:auto;min-height:100dvh;max-height:none;padding:0 1rem 1rem;overflow-y:auto}.workspace-grid{grid-template-columns:1fr;overflow-y:visible}.workspace-grid.sidebar-hidden{grid-template-columns:1fr}.main-editor-area{height:65vh;min-height:400px}.sidebar-panels{height:auto;margin-top:1rem;overflow-y:visible}.workspace-grid.sidebar-hidden .sidebar-panels{display:none}}@media (width<=768px){.app-container{padding:0 .5rem .5rem}header.glass-panel{flex-wrap:wrap;gap:.5rem;padding:.5rem}header.glass-panel>div:first-child{justify-content:center;width:100%;margin-bottom:.25rem}header.glass-panel>div:last-child{justify-content:space-between;gap:.25rem;width:100%}.editor-toolbar{flex-direction:column;align-items:stretch;gap:.5rem!important;padding:.5rem!important}.editor-toolbar>div{flex-wrap:wrap;justify-content:center;gap:.25rem!important}.editor-toolbar button{padding:.3rem .5rem!important}.floating-ai-menu{justify-content:center;width:auto!important;max-width:none!important;left:10px!important;right:10px!important}.lang-popover,.translate-popover{width:100%!important;max-width:none!important;left:0!important;right:0!important}.settings-panel{width:100%}}.btn-surface{transition:border-color .2s,box-shadow .2s,transform .15s,opacity .2s}.btn-surface:hover:not(:disabled){border-color:var(--accent);box-shadow:0 2px 10px var(--accent-glow)}.btn-surface:active:not(:disabled){transform:translateY(1px)}.btn-surface:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-surface:disabled{cursor:not-allowed}.icon-btn{transition:border-color .2s,background-color .2s,transform .15s}.icon-btn:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.icon-btn:active:not(:disabled){transform:translateY(0)}.icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-link-btn{transition:background-color .2s,color .2s}.nav-link-btn:hover{background:var(--accent-glow);color:var(--accent)}.nav-link-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.text-link-btn{transition:opacity .2s}.text-link-btn:hover{opacity:.7;text-decoration:underline}.text-link-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mic-btn-interactive:hover:not(:disabled){transform:scale(1.06)}.mic-btn-interactive:active:not(:disabled){transform:scale(.95)}.mic-btn-interactive:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.mic-btn-interactive:disabled{opacity:.5;cursor:not-allowed}select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
