@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Vazirmatn:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg-dark:#080c14;--bg-card:#111827bf;--bg-card-hover:#1a243ad9;--bg-glass:#0f172abf;--bg-input:#0f172ad9;--border-glass:#ffffff14;--border-focus:#6366f180;--accent-cyan:#06b6d4;--accent-emerald:#10b981;--accent-indigo:#6366f1;--accent-purple:#a855f7;--accent-amber:#f59e0b;--accent-rose:#f43f5e;--accent-gold:#f59e0b;--accent-silver:#94a3b8;--gradient-brand:linear-gradient(135deg, #06b6d4 0%, #6366f1 50%, #a855f7 100%);--gradient-emerald:linear-gradient(135deg, #10b981 0%, #06b6d4 100%);--gradient-amber:linear-gradient(135deg, #f59e0b 0%, #f97316 100%);--gradient-gold:linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-purple:linear-gradient(135deg, #8b5cf6 0%, #d946ef 100%);--gradient-dark:linear-gradient(180deg, #0b1120 0%, #060911 100%);--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-accent:#38bdf8;--shadow-glow:0 0 25px #6366f140;--shadow-emerald:0 0 25px #10b98140;--shadow-card:0 10px 30px -10px #00000080;--navbar-bg:#080c14e6;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-full:9999px;--font-en:"Outfit", sans-serif;--font-fa:"Vazirmatn", sans-serif;--font-mono:"JetBrains Mono", monospace}[data-theme=light]{--bg-dark:#f8fafc;--bg-card:#fffffff2;--bg-card-hover:#f8fafc;--bg-glass:#ffffffeb;--bg-input:#fff;--border-glass:#e2e8f0f2;--border-focus:#d9770680;--accent-cyan:#0284c7;--accent-emerald:#059669;--accent-indigo:#4f46e5;--accent-purple:#7c3aed;--accent-amber:#d97706;--accent-rose:#e11d48;--accent-gold:#d97706;--accent-silver:#64748b;--gradient-brand:linear-gradient(135deg, #d97706 0%, #f59e0b 50%, #6366f1 100%);--gradient-emerald:linear-gradient(135deg, #059669 0%, #0284c7 100%);--gradient-amber:linear-gradient(135deg, #d97706 0%, #f59e0b 100%);--gradient-gold:linear-gradient(135deg, #f59e0b 0%, #d97706 100%);--gradient-purple:linear-gradient(135deg, #7c3aed 0%, #db2777 100%);--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--text-accent:#d97706;--shadow-glow:0 0 25px #d9770633;--shadow-emerald:0 0 25px #05966933;--shadow-card:0 10px 25px -5px #0f172a14, 0 8px 10px -6px #0f172a0a;--navbar-bg:#ffffffeb}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;margin:0;padding:0}html,body{background-color:var(--bg-dark);max-width:100vw;color:var(--text-primary);font-family:var(--font-fa), var(--font-en), sans-serif;background-image:radial-gradient(at 0 0,#6366f11f 0,#0000 50%),radial-gradient(at 100% 0,#06b6d41f 0,#0000 50%),radial-gradient(at 50% 100%,#a855f714 0,#0000 50%);background-attachment:fixed;min-height:100vh;line-height:1.6;transition:background-color .3s,color .3s;overflow-x:hidden}[data-theme=light] body{background-color:#f8fafc;background-image:radial-gradient(at 0 0,#f59e0b17 0,#0000 40%),radial-gradient(at 100% 0,#cbd5e159 0,#0000 50%),radial-gradient(at 50% 100%,#d977060f 0,#0000 40%)}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:#0a0f1d99}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#6366f159}::-webkit-scrollbar-thumb:hover{background:#6366f199}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.glass-panel-interactive{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:all .25s cubic-bezier(.4,0,.2,1)}.glass-panel-interactive:hover{background:var(--bg-card-hover);border-color:#6366f14d;transform:translateY(-2px);box-shadow:0 15px 35px -10px #0009,0 0 20px #6366f126}.text-gradient{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;display:inline-block}.text-gradient-amber{background:var(--gradient-amber);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.text-gradient-emerald{background:var(--gradient-emerald);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.btn-primary{background:var(--gradient-brand);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:10px 22px;font-family:inherit;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #6366f159}.btn-primary:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 6px 20px #6366f180}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--text-primary);border-radius:var(--radius-md);border:1px solid var(--border-glass);cursor:pointer;background:#ffffff0d;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:.92rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover{background:#ffffff1a;border-color:#fff3}.btn-icon{border-radius:var(--radius-md);border:1px solid var(--border-glass);width:42px;height:42px;color:var(--text-primary);cursor:pointer;background:#ffffff0f;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.btn-icon:hover{color:var(--accent-cyan);background:#ffffff1f;border-color:#6366f166}.badge-pill{border-radius:var(--radius-full);letter-spacing:.02em;align-items:center;gap:6px;padding:4px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.badge-cefr{color:#a5b4fc;background:#6366f126;border:1px solid #6366f159}.badge-streak{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b59}.badge-xp{color:#34d399;background:#10b98126;border:1px solid #10b98159}@keyframes micPulse{0%{box-shadow:0 0 #f43f5e99}70%{box-shadow:0 0 0 16px #f43f5e00}to{box-shadow:0 0 #f43f5e00}}.recording-active{animation:1.5s infinite micPulse;color:#fff!important;background:#f43f5e!important}.waveform-container{align-items:center;gap:3px;height:24px;display:flex}.wave-bar{background:var(--accent-cyan);border-radius:2px;width:3px;height:100%;animation:1.2s ease-in-out infinite alternate soundWave}.wave-bar:first-child{height:35%;animation-delay:.1s}.wave-bar:nth-child(2){height:75%;animation-delay:.3s}.wave-bar:nth-child(3){height:100%;animation-delay:.5s}.wave-bar:nth-child(4){height:50%;animation-delay:.2s}.wave-bar:nth-child(5){height:85%;animation-delay:.4s}@keyframes soundWave{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}.app-container{min-height:calc(100vh - 65px);display:flex;position:relative}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:24px 32px 48px}.mobile-menu-btn,.mobile-only-btn{display:none!important}@media (max-width:768px){.mobile-menu-btn,.mobile-only-btn{display:inline-flex!important}.sidebar-aside{transform:translate(100%);max-width:85vw!important;height:100vh!important;position:fixed!important;top:0!important;bottom:0!important;right:0!important;box-shadow:-10px 0 30px #000c!important}.sidebar-mobile-open{transform:translate(0)!important}.main-content{padding:16px 14px 90px}.mobile-bottom-nav{display:flex!important}.hide-on-mobile{display:none!important}}@media (max-width:520px){.hide-on-tiny,.navbar-subtitle{display:none!important}.user-name-label{max-width:60px!important}}.input-field{background:var(--bg-input);border:1px solid var(--border-glass);color:var(--text-primary);border-radius:var(--radius-md);outline:none;padding:12px 16px;font-family:inherit;font-size:.92rem;transition:all .2s}.input-field:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #d9770626}.flashcard-wrapper{perspective:1200px;width:100%}.flashcard-card{width:100%;min-height:260px;transform-style:preserve-3d;cursor:pointer;transition:transform .65s cubic-bezier(.34,1.56,.64,1);position:relative}.flashcard-card.flipped{transform:rotateY(180deg)}.flashcard-face{backface-visibility:hidden;width:100%;height:100%;box-shadow:var(--shadow-card);border-radius:24px;flex-direction:column;justify-content:space-between;padding:28px;display:flex;position:absolute;top:0;left:0}.flashcard-face-front{background:var(--bg-card);border:2px solid var(--border-glass)}.flashcard-face-back{background:var(--bg-card);border:2px solid var(--accent-gold);transform:rotateY(180deg)}[data-theme=light] .glass-panel{box-shadow:0 10px 25px -5px #0000000d,0 4px 6px -2px #00000005}[data-theme=light] .app-navbar{background:#ffffffeb!important;border-bottom:1px solid #e2e8f0e6!important}[data-theme=light] .mobile-bottom-nav{background:#fffffff5!important;border-top:1px solid #e2e8f0e6!important}
