:root{--font-body:"duolingo-sans", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif:"Laila", Georgia, serif;--font-mono:"JetBrains Mono", monospace;--color-primary:#a5ed6e;--color-on-primary:#111;--color-primary-dark:#58a700;--color-primary-border:#79cc33;--color-background:#ddf4ff;--color-card:#fff;--color-card-subtle:#f7fafd;--color-border:#d4e7f0;--color-text:#3c3c3c;--color-text-muted:#777;--color-accent:#1cb0f6;--color-accent-dark:#1899d6;--color-accent-border:#0fa2e4;--bg-main:var(--color-background);--bg-card:var(--color-card);--bg-card-subtle:var(--color-card-subtle);--bg-hover:#eaf6fc;--text-primary:var(--color-text);--text-secondary:#555;--text-muted:var(--color-text-muted);--saffron-50:#fff4e5;--saffron-100:#ffe5c2;--saffron-500:#ff9600;--saffron-600:#e07f00;--saffron-700:#c26900;--emerald-50:#f0fbee;--emerald-100:#d6f8cb;--emerald-500:var(--color-primary);--emerald-600:#58cc02;--emerald-700:var(--color-primary-dark);--amber-500:#ffc800;--rose-500:#ff4b4b;--blue-500:var(--color-accent);--border-light:#e5e5e5;--border-saffron:#ff960066;--border-emerald:#58cc0266;--shadow-sm:0 2px 0 #e5e5e5;--shadow-md:0 4px 0 #e5e5e5;--shadow-lg:0 6px 0 #e5e5e5, 0 10px 20px #0000000f;--space-base:10px;--space-scale-1:10px;--space-scale-2:20px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.3s ease}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-background);color:var(--color-text);-webkit-font-smoothing:antialiased;font-size:13px;font-weight:700;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--color-text);letter-spacing:.8px;font-weight:700}.font-serif{font-family:var(--font-serif)}.font-mono{font-family:var(--font-mono)}.glass-panel{background:var(--color-card);border:2px solid var(--border-light);border-radius:var(--radius-md);border-bottom:4px solid #e0e0e0;box-shadow:0 4px 12px #00000008}@supports ((-webkit-backdrop-filter:blur(12px)) or (backdrop-filter:blur(12px))){.glass-panel-blur{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:2px solid var(--border-light);background:#fffffff0;border-bottom:4px solid #e0e0e0}}button,.btn{letter-spacing:.8px;text-transform:uppercase;border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;min-width:44px;min-height:44px;padding:0 20px;font-family:inherit;font-size:14px;font-weight:700;text-decoration:none;transition:transform .1s,box-shadow .1s,background-color .2s;display:inline-flex;position:relative}button.btn-icon,.btn-icon{gap:0!important;min-width:36px!important;min-height:36px!important;padding:0!important}button:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);border:2px solid var(--color-primary-border);border-bottom:4px solid var(--color-primary-dark);box-shadow:0 2px #0000000a}.btn-primary:hover{background:#b6f385}.btn-primary:active{box-shadow:none;border-bottom-width:2px;transform:translateY(2px)}.btn-secondary{color:var(--color-text);background:#fff;border:2px solid #e5e5e5;border-bottom:4px solid #d4d4d4;box-shadow:0 2px #0000000a}.btn-secondary:hover{background:#f7f7f7;border-color:#d4d4d4}.btn-secondary:active{box-shadow:none;border-bottom-width:2px;transform:translateY(2px)}.btn-accent,.btn-blue{background:var(--color-accent);color:#fff;border:2px solid var(--color-accent-border);border-bottom:4px solid var(--color-accent-dark);box-shadow:0 2px #0000000a}.btn-accent:hover,.btn-blue:hover{background:#39bbf7}.btn-accent:active,.btn-blue:active{box-shadow:none;border-bottom-width:2px;transform:translateY(2px)}.btn-success{background:var(--color-primary);color:var(--color-on-primary);border:2px solid var(--color-primary-border);border-bottom:4px solid var(--color-primary-dark)}.btn-success:active{border-bottom-width:2px;transform:translateY(2px)}.badge{border-radius:var(--radius-md);letter-spacing:.8px;text-transform:uppercase;align-items:center;gap:6px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.badge-emerald{color:#388e00;background:#e8fcd9;border:1.5px solid #a5ed6e}.badge-saffron{color:#c26900;background:#fff4e5;border:1.5px solid #ffc800}.badge-neutral{color:#475569;background:#f1f5f9;border:1.5px solid #e2e8f0}.container{width:100%;max-width:1440px;margin:0 auto;padding:0 20px}@media (width>=1536px){.container{max-width:1600px;padding:0 32px}}@media (width<=640px){.container{padding:0 12px}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0f172aa6;justify-content:center;align-items:center;padding:16px;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-md);width:100%;max-width:620px;max-height:90vh;box-shadow:var(--shadow-lg);background:#fff;border:2px solid #e5e5e5;border-bottom:4px solid #d4d4d4;padding:24px;animation:.3s scaleUp;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.pulse-indicator{background-color:var(--color-primary-dark);border-radius:50%;width:10px;height:10px;animation:2s infinite pulse-green;box-shadow:0 0 #58cc02b3}@keyframes pulse-green{0%{transform:scale(.95);box-shadow:0 0 #58cc02b3}70%{transform:scale(1);box-shadow:0 0 0 8px #58cc0200}to{transform:scale(.95);box-shadow:0 0 #58cc0200}}.form-input,.form-select{border-radius:var(--radius-md);width:100%;min-height:44px;color:var(--color-text);transition:border-color var(--transition-normal);background:#fff;border:2px solid #e5e5e5;outline:none;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:700}.form-input:focus,.form-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #1cb0f633}.form-input::placeholder{color:var(--color-text-muted);font-weight:600}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{border-radius:var(--radius-md);background:#b2dfee}::-webkit-scrollbar-thumb:hover{background:#89cce6}
