@import "https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400;1,600&display=swap";:root{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-glass:#fffffffa;--bg-glass-border:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent-primary:#1d4ed8;--accent-primary-hover:#1e40af;--accent-primary-light:#3b82f6;--accent-secondary:#d97706;--accent-secondary-hover:#b45309;--accent-tertiary:#f59e0b;--accent-gold:#d97706;--accent-gold-hover:#b45309;--accent-gold-subtle:#d9770614;--accent-gold-border:#d9770640;--accent-subtle:#1d4ed80f;--accent-border:#1d4ed833;--danger:#dc2626;--danger-hover:#b91c1c;--danger-glass:#dc26260d;--success:#16a34a;--success-glass:#16a34a0d;--warning:#d97706;--font-heading:"Nunito", -apple-system, BlinkMacSystemFont, sans-serif;--font-body:"Nunito", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm:0px;--radius-md:0px;--radius-lg:0px;--radius-full:0px;--shadow-sm:0 1px 2px 0 #0000000a;--shadow-md:0 4px 12px -2px #0000000d, 0 2px 4px -1px #00000005;--shadow-glow:none;--shadow-danger-glow:none;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.16, 1, .3, 1);--transition-slow:.4s cubic-bezier(.16, 1, .3, 1);--app-padding:2rem;--panel-padding:2rem;--panel-padding-lg:3.5rem;--card-padding:1.5rem;--card-padding-sm:1rem;--header-padding:1rem 2rem;--main-padding:2rem 1rem;--btn-padding:.65rem 1.4rem;--input-padding:.65rem 1rem}*,:before,:after{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#1d4ed847 transparent;margin:0;padding:0;border-radius:0!important}::selection{color:#1e40af;background:#dbeafe}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#1d4ed838;border-radius:0!important}::-webkit-scrollbar-thumb:hover{background:#d9770673}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:none;min-height:100vh;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:600;line-height:1.25}button{font-family:var(--font-heading);cursor:pointer;color:inherit;transition:all var(--transition-fast);background:0 0;border:none;border-radius:0!important}input,select,textarea{font-family:var(--font-body);transition:all var(--transition-fast);border-radius:0!important}.glass-panel,.glass-panel,.double-bezel{background:var(--bg-secondary);border:1px solid var(--bg-glass-border);box-shadow:var(--shadow-sm);border-radius:0!important}.double-bezel-inner{background:0 0;border:none;padding:1.5rem}.app-container{width:100%;padding:var(--app-padding);flex-direction:column;min-height:100vh;margin:0 auto;display:flex}.text-gradient{background:linear-gradient(135deg,#1d4ed8 0%,#d97706 100%);-webkit-text-fill-color:transparent;color:#1d4ed8;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text}.text-gold{color:var(--accent-gold)}.btn{padding:var(--btn-padding);letter-spacing:.01em;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:inline-flex;border-radius:0!important}.btn-primary{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 1px 3px #1d4ed833}.btn-primary:hover{background:var(--accent-primary-hover);border-color:var(--accent-primary-hover);transform:translateY(-1px);box-shadow:0 3px 10px #1d4ed847}.btn-primary:active{transform:translateY(0)}.btn-gold{background:var(--accent-gold);color:#fff;border-color:var(--accent-gold);box-shadow:0 1px 3px #d9770640}.btn-gold:hover{background:var(--accent-gold-hover);border-color:var(--accent-gold-hover);transform:translateY(-1px);box-shadow:0 3px 10px #d9770659}.btn-gold:active{transform:translateY(0)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger);box-shadow:0 1px 2px #dc26261a}.btn-danger:hover{background:var(--danger-hover);border-color:var(--danger-hover);transform:translateY(-1px)}.btn-outline{background:var(--bg-secondary);border:1px solid var(--bg-glass-border);color:var(--text-primary)}.btn-outline:hover{background:var(--bg-tertiary);border-color:var(--accent-border);color:var(--accent-primary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-danger{0%{box-shadow:0 0 #dc262633}70%{box-shadow:0 0 0 8px #dc262600}to{box-shadow:0 0 #dc262600}}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-1px,1px)}40%{transform:translate(-1px,-1px)}60%{transform:translate(1px,1px)}80%{transform:translate(1px,-1px)}to{transform:translate(0)}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.stress-pulse{animation:1.2s infinite pulse-danger}.stress-glitch{color:var(--danger);animation:.3s infinite glitch}.input-field{background:var(--bg-secondary);border:1px solid var(--bg-glass-border);width:100%;padding:var(--input-padding);color:var(--text-primary);font-size:.92rem;border-radius:0!important}.input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary);outline:none}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d4ed8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.25rem!important}select.input-field{background-position:right 1.25rem center;background-size:1.15rem;padding-right:3.25rem!important}.app-header{border-bottom:1px solid var(--bg-glass-border);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.logo{font-family:var(--font-heading);letter-spacing:-.03em;align-items:center;gap:.5rem;font-size:1.4rem;font-weight:700;display:flex}.history-row:hover{background:var(--bg-tertiary)!important;border-color:var(--accent-border)!important}.lesson-card{background:var(--bg-secondary);border:1px solid var(--bg-glass-border);transition:all var(--transition-fast);cursor:pointer;padding:.85rem;border-radius:0!important}.lesson-card:hover{background:var(--bg-tertiary);border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:0 4px 12px #1d4ed81f}.tag-btn{text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--bg-glass-border);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-body);-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;padding:.25rem .65rem;transition:all .15s;display:inline-flex;border-radius:0!important}.tag-btn:hover{background:var(--bg-tertiary);border-color:var(--accent-border);color:var(--accent-primary)}.tag-btn-active{background:var(--accent-primary)!important;color:#fff!important;border-color:var(--accent-primary)!important}.tag-unsure{color:#7e22ce;background:#9333ea14;border-color:#9333ea40}.tag-silly{color:#b45309;background:#d9770614;border-color:#d9770640}.tag-concept{color:#b91c1c;background:#dc262614;border-color:#dc262640}.tag-time{color:#1d4ed8;background:#2563eb14;border-color:#2563eb40}.analytics-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.chat-window-scroll{scrollbar-width:none;-ms-overflow-style:none}.chat-window-scroll::-webkit-scrollbar{display:none}.analytics-chart-panel{background:var(--bg-secondary);border:1px solid var(--bg-glass-border);padding:1.5rem;border-radius:0!important}.topic-breakdown-grid{grid-template-columns:1fr 1fr;gap:1.5rem;width:100%;display:grid}.elo-section{flex-direction:column;gap:1rem;display:flex}.elo-stat-boxes{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width>=900px){.elo-section{flex-direction:row;align-items:stretch}.elo-chart{flex:1 1 0;min-width:0}.elo-stat-boxes{flex:0 0 320px;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;align-content:stretch;gap:.75rem;width:320px;display:grid}.elo-stat-boxes .analytics-stat-card{height:auto}}.analytics-chart-title{color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.92rem;font-weight:600;display:flex}.analytics-stat-card{background:var(--bg-secondary);border:1px solid var(--bg-glass-border);align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex;border-radius:0!important}.analytics-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:600;display:block}.analytics-stat-value{font-size:1.45rem;font-weight:700;font-family:var(--font-heading);letter-spacing:-.02em;display:block}.analytics-empty{color:var(--text-muted);text-align:center;padding:3rem 1rem;font-size:.85rem;font-style:italic}.setup-grid{grid-template-columns:1fr;align-items:stretch;gap:2rem;width:100%;margin:0 auto;display:grid}@media (width>=769px){.setup-grid.two-cols{grid-template-columns:1fr 1fr;width:100%}.dashboard-panel-wrapper{flex-direction:column;height:0;min-height:100%;display:flex}}@media (width<=768px){:root{--app-padding:.75rem;--panel-padding:1rem;--panel-padding-lg:1.5rem;--card-padding:1rem;--card-padding-sm:.75rem;--header-padding:.75rem 1rem;--main-padding:1rem .5rem;--btn-padding:.5rem 1rem;--input-padding:.5rem .75rem}select.input-field{background-position:right .85rem center;background-size:1rem;padding-right:2.5rem!important}.setup-grid{flex-direction:column-reverse;display:flex}.analytics-grid{grid-template-columns:1fr}.analytics-grid .analytics-chart-panel[style*="grid-column: span 2"]{grid-column:span 1}.topic-breakdown-grid{grid-template-columns:1fr}}.animate-spin{transform-origin:50%;animation:1s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.svg-diagram-container{color:var(--text-primary)!important}.svg-diagram-container svg{color:var(--text-primary)!important;border-radius:0!important}.svg-diagram-container svg text{fill:currentColor!important;color:var(--text-primary)!important}.svg-diagram-container svg line,.svg-diagram-container svg path,.svg-diagram-container svg rect,.svg-diagram-container svg circle,.svg-diagram-container svg polygon{transition:stroke .2s,fill .2s;border-radius:0!important}.svg-diagram-container svg [stroke=black],.svg-diagram-container svg [stroke=\#000000],.svg-diagram-container svg [stroke=\#000],.svg-diagram-container svg [stroke=currentColor]{stroke:var(--text-primary)!important}.svg-diagram-container svg [fill=black],.svg-diagram-container svg [fill=\#000000],.svg-diagram-container svg [fill=\#000]{fill:var(--text-primary)!important}.svg-diagram-container svg line:not([stroke]),.svg-diagram-container svg path:not([stroke]),.svg-diagram-container svg rect:not([stroke]),.svg-diagram-container svg circle:not([stroke]),.svg-diagram-container svg polygon:not([stroke]){stroke:currentColor}
