:root{--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--primary-800:#1e40af;--primary-900:#1e3a8a;--teal-50:#f0fdfa;--teal-100:#ccfbf1;--teal-500:#14b8a6;--teal-600:#0d9488;--teal-700:#0f766e;--emerald-50:#ecfdf5;--emerald-100:#d1fae5;--emerald-500:#10b981;--emerald-600:#059669;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--amber-50:#fffbeb;--amber-100:#fef3c7;--amber-600:#d97706;--rose-50:#fff1f2;--rose-100:#ffe4e6;--rose-600:#e11d48;--bg-app:#f8fafc;--bg-card:#fff;--bg-card-subtle:#f8fafc;--text-main:#0f172a;--text-muted:#475569;--text-subtle:#64748b;--text-inverse:#fff;--border-color:#e2e8f0;--border-hover:#cbd5e1;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000012, 0 4px 6px -4px #0000000d;--shadow-card:0 1px 3px 0 #0000000f, 0 1px 2px -1px #0000000a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--container-max-width:1200px;--navbar-height:70px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{color:var(--text-main);background-color:var(--bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}body,#root{flex-direction:column;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;background:0 0;border:none}img,svg{max-width:100%;display:block}.app-layout{flex-direction:column;min-height:100vh;display:flex}.main-content{flex-direction:column;flex:1;display:flex}.container{width:100%;max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}.navbar{z-index:50;-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border-color);height:var(--navbar-height);background:#ffffffeb;position:sticky;top:0}.navbar-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.brand-logo{color:var(--slate-900);letter-spacing:-.02em;align-items:center;gap:.65rem;font-size:1.25rem;font-weight:700;display:flex}.brand-icon-wrapper{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--primary-600), var(--teal-600));color:#fff;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 2px 6px #2563eb40}.brand-text-accent{color:var(--teal-600)}.nav-links-desktop{align-items:center;gap:1.25rem;display:flex}.nav-link{color:var(--slate-600);border-radius:var(--radius-sm);align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.925rem;font-weight:500;transition:all .15s ease-in-out;display:inline-flex}.nav-link:hover{color:var(--primary-700);background-color:var(--slate-100)}.nav-link.active{color:var(--primary-600);background-color:var(--primary-50);font-weight:600}.nav-actions-desktop{align-items:center;gap:.75rem;display:flex}.mobile-toggle-btn{color:var(--slate-700);border-radius:var(--radius-sm);padding:.5rem;display:none}.mobile-toggle-btn:hover{background-color:var(--slate-100)}.mobile-nav-menu{border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-lg);background:#fff;flex-direction:column;gap:.5rem;padding:1rem 1.5rem 1.5rem;display:flex}.mobile-nav-link{border-radius:var(--radius-md);color:var(--slate-700);align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;transition:background-color .15s;display:flex}.mobile-nav-link:hover,.mobile-nav-link.active{background-color:var(--primary-50);color:var(--primary-700)}.mobile-nav-actions{border-top:1px solid var(--border-color);flex-direction:column;gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:flex}.btn{border-radius:var(--radius-md);white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.925rem;font-weight:600;line-height:1.25;transition:all .15s ease-in-out;display:inline-flex}.btn-sm{padding:.4rem .85rem;font-size:.85rem}.btn-lg{padding:.8rem 1.75rem;font-size:1.05rem}.btn-primary{background-color:var(--primary-600);color:var(--text-inverse);box-shadow:0 1px 2px #0000000d}.btn-primary:hover{background-color:var(--primary-700);transform:translateY(-1px);box-shadow:0 4px 10px #2563eb33}.btn-secondary{background-color:var(--teal-600);color:var(--text-inverse)}.btn-secondary:hover{background-color:var(--teal-700);transform:translateY(-1px);box-shadow:0 4px 10px #0d948833}.btn-outline{border:1px solid var(--border-color);color:var(--slate-700);background-color:#fff}.btn-outline:hover{border-color:var(--slate-400);background-color:var(--slate-50)}.btn-ghost{color:var(--slate-600);background:0 0}.btn-ghost:hover{background-color:var(--slate-100);color:var(--slate-900)}.card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.5rem;transition:all .2s ease-in-out}.card:hover{border-color:var(--border-hover)}.card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--primary-200);transform:translateY(-2px)}.badge{border-radius:var(--radius-full);letter-spacing:.01em;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.775rem;font-weight:600;display:inline-flex}.badge-blue{background-color:var(--primary-50);color:var(--primary-700);border:1px solid var(--primary-100)}.badge-teal{background-color:var(--teal-50);color:var(--teal-700);border:1px solid var(--teal-100)}.badge-emerald{background-color:var(--emerald-50);color:var(--emerald-600);border:1px solid var(--emerald-100)}.badge-amber{background-color:var(--amber-50);color:var(--amber-600);border:1px solid var(--amber-100)}.badge-slate{background-color:var(--slate-100);color:var(--slate-700);border:1px solid var(--slate-200)}.disclaimer-banner{border-left:4px solid var(--teal-600);border-radius:var(--radius-sm);color:var(--slate-700);background-color:#f1f5f9;align-items:flex-start;gap:.65rem;padding:.75rem 1rem;font-size:.825rem;line-height:1.45;display:flex}.disclaimer-banner svg{color:var(--teal-600);flex-shrink:0;margin-top:.1rem}.site-footer{border-top:1px solid var(--border-color);background-color:#fff;margin-top:auto;padding:3rem 0 2rem}.footer-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:2.5rem;display:grid}.footer-brand p{color:var(--slate-600);max-width:320px;margin-top:.75rem;font-size:.9rem;line-height:1.6}.footer-heading{text-transform:uppercase;letter-spacing:.05em;color:var(--slate-900);margin-bottom:1rem;font-size:.85rem;font-weight:700}.footer-links{flex-direction:column;gap:.6rem;list-style:none;display:flex}.footer-links a{color:var(--slate-600);font-size:.875rem;transition:color .15s}.footer-links a:hover{color:var(--primary-600)}.footer-academic-badge{color:var(--slate-600);background:var(--slate-100);border-radius:var(--radius-sm);border:1px solid var(--slate-200);margin-top:1rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.footer-bottom{border-top:1px solid var(--border-color);flex-direction:column;gap:1rem;padding-top:2rem;display:flex}.footer-disclaimer-text{color:var(--slate-500);background-color:var(--slate-50);border-radius:var(--radius-sm);border:1px solid var(--slate-200);padding:.75rem 1rem;font-size:.8rem;line-height:1.5}.footer-copyright{color:var(--slate-500);justify-content:space-between;align-items:center;font-size:.825rem;display:flex}.page-header{border-bottom:1px solid var(--border-color);background:linear-gradient(to bottom, #fff, var(--slate-50));margin-bottom:2rem;padding:2.5rem 0 1.5rem}.page-title{letter-spacing:-.03em;color:var(--slate-900);font-size:2rem;font-weight:800}.page-subtitle{color:var(--slate-600);max-width:680px;margin-top:.5rem;font-size:1.05rem}.grid-2{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:1.25rem;display:grid}@media (width<=992px){.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.nav-links-desktop,.nav-actions-desktop{display:none}.mobile-toggle-btn{display:block}.footer-grid{grid-template-columns:1fr;gap:1.5rem}.footer-copyright{flex-direction:column;align-items:flex-start;gap:.5rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page-title{font-size:1.6rem}}
