:root{--bg: #0d0d12;--bg-card: #15151f;--bg-input: #1a1a26;--border: #2a2a3a;--text: #e8e6e3;--text-muted: #8b8b9e;--accent: #7c5cff;--accent-hover: #9378ff;--score: #ffd93d;--success: #5dd879;--radius: 12px;--font: "Outfit", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;line-height:1.5}#root{min-height:100vh}button{cursor:pointer}input,select,textarea,button{font-family:inherit;font-size:1rem}.app{max-width:1400px;margin:0 auto;padding:1.5rem}.header{text-align:center;margin-bottom:2rem}.header h1{font-size:2.25rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.02em}.tagline{color:var(--text-muted);margin:0;font-size:1rem}.filters{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:2rem}.filters-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:.35rem;min-width:120px}.filter-group span{font-size:.8rem;color:var(--text-muted);font-weight:500}.filter-group input,.filter-group select{background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:.5rem .75rem;color:var(--text)}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--accent)}.filter-group.sort-direction{min-width:100px}.btn-search{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:.5rem 1.25rem;font-weight:600}.btn-search:hover{background:var(--accent-hover)}.filters-advanced{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.filters-advanced summary{cursor:pointer;color:var(--accent);font-weight:500}.chips-row{display:flex;flex-direction:column;gap:1rem;margin-top:.75rem}.chips-group strong{display:block;font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{background:var(--bg-input);border:1px solid var(--border);border-radius:999px;padding:.35rem .75rem;font-size:.85rem;color:var(--text)}.chip:hover{border-color:var(--accent)}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.error-banner{background:#dc3c3c26;border:1px solid rgba(220,60,60,.4);color:#f88;padding:1rem;border-radius:var(--radius);margin-bottom:1rem}.loading{text-align:center;padding:3rem;color:var(--text-muted)}.anime-list{margin-bottom:2rem}.results-count{color:var(--text-muted);font-size:.9rem;margin-bottom:1rem}.anime-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.anime-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .2s,transform .2s}.anime-card:hover{border-color:var(--accent);transform:translateY(-2px)}.anime-card-link{text-decoration:none;color:inherit;display:block;height:100%}.anime-card-image{position:relative;aspect-ratio:3/4;background:var(--bg-input)}.anime-card-image img{width:100%;height:100%;object-fit:cover;display:block}.anime-card-score{position:absolute;bottom:.5rem;right:.5rem;background:#000c;color:var(--score);font-family:var(--font-mono);font-size:.85rem;padding:.25rem .5rem;border-radius:6px}.anime-card-body{padding:.9rem}.anime-card-title{font-size:1rem;font-weight:600;margin:0 0 .25rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.anime-card-title-en{font-size:.8rem;color:var(--text-muted);margin:0 0 .5rem;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;display:-webkit-box}.anime-card-meta{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.8rem;color:var(--text-muted);margin-bottom:.5rem}.anime-card-genres{display:flex;flex-wrap:wrap;gap:.35rem}.genre-tag{font-size:.7rem;background:var(--bg-input);padding:.2rem .5rem;border-radius:4px;color:var(--text-muted)}.anime-card-studios{font-size:.75rem;color:var(--text-muted);margin:.4rem 0 0}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.pagination{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:1.5rem 0}.pagination button{background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:.5rem 1rem;border-radius:8px}.pagination button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.9rem;color:var(--text-muted)}
