@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=Fredoka+One&display=swap";
:root{--bg:#f0f4f8;--card-bg:#fff;--border:#e2e8f0;--text:#0f172a;--muted:#94a3b8;--primary:#58cc02;--primary-dark:#46a302;--secondary:#1cb0f6;--accent:#ff9600;--danger:#ff4b4b;--purple:#ce82ff;--sidebar-bg:#fff;--sidebar-w:240px;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 1px 4px #0000000f,0 2px 8px #0000000a;--shadow-md:0 4px 16px #00000014,0 1px 4px #0000000a;--shadow-lg:0 8px 40px #0000001f,0 2px 8px #0000000f}.dark{--bg:#0a0a0f;--card-bg:#13131a;--border:#1e1e2e;--text:#e2e8f0;--muted:#64748b;--sidebar-bg:#0f0f18;--shadow-sm:0 1px 4px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 40px #00000080}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Nunito,sans-serif;transition:background .3s,color .3s}.app-shell{min-height:100vh;display:flex}.main-content{margin-left:var(--sidebar-w);flex:1;min-height:100vh;padding:36px}@media (max-width:768px){.main-content{margin-left:0;padding:16px 16px 88px}}.card{background:var(--card-bg);border:1.5px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px;transition:transform .18s,box-shadow .18s}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn{border-radius:var(--radius-xl);cursor:pointer;letter-spacing:.3px;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:6px;padding:10px 22px;font-family:Nunito,sans-serif;font-size:14px;font-weight:800;transition:transform .12s,box-shadow .12s,filter .12s,background .15s;display:inline-flex}.btn:active{transform:translateY(2px)scale(.98)}.btn-primary{color:#fff;box-shadow:0 4px 0 var(--primary-dark),0 8px 20px #58cc0240;text-shadow:0 1px 2px #00000026;background:linear-gradient(#67e002 0%,#58cc02 60%)}.btn-primary:hover{filter:brightness(1.07);box-shadow:0 4px 0 var(--primary-dark),0 10px 28px #58cc0259}.btn-primary:active{box-shadow:0 2px 0 var(--primary-dark),0 4px 12px #58cc0233}.btn-secondary{background:var(--card-bg);color:var(--text);border:1.5px solid var(--border);box-shadow:0 4px 0 var(--border)}.btn-secondary:hover{background:var(--bg);border-color:var(--muted)}.btn-secondary:active{box-shadow:0 2px 0 var(--border)}.btn-danger{color:#fff;background:linear-gradient(#ff6464 0%,#ff4b4b 60%);box-shadow:0 4px #c73a3a}.btn-purple{color:#fff;background:linear-gradient(#d98fff 0%,#ce82ff 60%);box-shadow:0 4px #a855f7}.input{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);width:100%;color:var(--text);outline:none;padding:12px 16px;font-family:Nunito,sans-serif;font-size:15px;font-weight:600;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #58cc0226}.input::placeholder{color:var(--muted)}.page{min-height:100vh}.container{max-width:900px;margin:0 auto}.section{margin-bottom:28px}.title{color:var(--text);letter-spacing:.5px;font-family:Fredoka One,cursive;font-size:28px;line-height:1.2}.subtitle{color:var(--muted);font-size:14px;font-weight:600;line-height:1.5}.quiz-container{justify-content:center;align-items:flex-start;min-height:100vh;padding:40px 16px;display:flex}.quiz-card{background:var(--card-bg);border:1.5px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:640px;box-shadow:var(--shadow-md);padding:36px}.question{color:var(--text);margin-bottom:24px;font-family:Fredoka One,cursive;font-size:22px;line-height:1.45}.answers{flex-direction:column;gap:10px;display:flex}.answer{border:1.5px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);width:100%;color:var(--text);text-align:left;cursor:pointer;padding:14px 20px;font-family:Nunito,sans-serif;font-size:15px;font-weight:700;transition:all .15s;position:relative;overflow:hidden}.answer:before{content:"";background:0 0;width:3px;transition:background .15s;position:absolute;top:0;bottom:0;left:0}.answer:hover:not(:disabled){border-color:var(--primary);background:#58cc020f;transform:translate(4px)}.answer:hover:not(:disabled):before{background:var(--primary)}.answer.selected{border-color:var(--secondary);background:#1cb0f614}.answer.selected:before{background:var(--secondary)}.answer.correct{border-color:var(--primary);background:#58cc021f}.answer.correct:before{background:var(--primary)}.answer.wrong{border-color:var(--danger);background:#ff4b4b14}.answer.wrong:before{background:var(--danger)}.progress{background:var(--border);border-radius:999px;height:10px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:999px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px #58cc0266}.modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#00000073;justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border-radius:var(--radius-xl);border:1.5px solid var(--border);width:100%;max-width:700px;max-height:90vh;box-shadow:var(--shadow-lg);padding:28px;animation:.2s slideUp;overflow-y:auto}.badge{letter-spacing:.4px;border-radius:999px;align-items:center;padding:4px 12px;font-size:12px;font-weight:800;display:inline-flex}.badge-pro{color:#fff;background:linear-gradient(135deg,#a855f7,#6366f1);box-shadow:0 2px 8px #a855f74d}.badge-green{color:var(--primary);background:#58cc021f;border:1px solid #58cc0233}.badge-blue{color:var(--secondary);background:#1cb0f61f;border:1px solid #1cb0f633}.toggle{cursor:pointer;width:48px;height:26px;display:inline-block;position:relative}.toggle input{opacity:0;width:0;height:0}.toggle-slider{background:var(--border);border-radius:999px;transition:background .25s;position:absolute;inset:0}.toggle-slider:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.toggle input:checked+.toggle-slider{background:var(--primary)}.toggle input:checked+.toggle-slider:before{transform:translate(22px)}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pop{animation:.3s pop}.animate-slide{animation:.3s slideIn}.animate-spin{animation:1s linear infinite spin}.animate-pulse{animation:1.5s ease-in-out infinite pulse}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}.dark *{border-color:var(--border)}.dark p,.dark span,.dark div,.dark label{color:inherit}.compact .card{padding:12px!important}.compact .section{margin-bottom:16px!important}.compact .page{padding:16px!important}
@media (max-width:768px){.app-shell{flex-direction:column}.main-content{margin-left:0!important;padding:16px 16px 90px!important}.card{border-radius:16px!important;padding:14px!important}.quiz-container{align-items:flex-start;padding:16px!important}.quiz-card{border-radius:18px!important;padding:20px!important}.question{font-size:18px!important}.answer{padding:12px 16px!important;font-size:14px!important}.btn{padding:10px 18px!important;font-size:14px!important}.title{font-size:22px!important}.modal-content{max-height:85vh;border-radius:18px!important;padding:18px!important}.input{font-size:16px!important}.flex-mobile-col{flex-direction:column!important}.hide-on-mobile{display:none!important}.full-width-mobile{width:100%!important}.settings-tabs{padding-bottom:4px;overflow-x:auto;flex-wrap:nowrap!important}.notes-mode-buttons{gap:6px!important}.notes-mode-buttons button{padding:5px 10px!important;font-size:12px!important}.leaderboard-row{flex-wrap:wrap;gap:8px}.progress{height:10px!important}.study-grid{grid-template-columns:1fr!important}.premium-features{font-size:13px!important}.sidebar-xp-widget{display:none!important}}@media (max-width:375px){.main-content{padding:12px!important}.quiz-card{padding:16px!important}.question{font-size:16px!important}.btn{padding:8px 14px!important;font-size:13px!important}}@media (min-width:769px) and (max-width:1024px){:root{--sidebar-w:200px}.main-content{padding:24px!important}}
