:root { --bg: #0a1428; --card: #101f3c; --fg: #e8e8f0; --muted: #8a93a6; --gold: #c8aa6e; }
* { box-sizing: border-box; margin: 0; }
body { background: var(--bg); color: var(--fg); font-family: -apple-system, system-ui, sans-serif; padding-bottom: 2rem; }
header { padding: max(env(safe-area-inset-top), 12px) 16px 8px; position: sticky; top: 0; background: var(--bg); border-bottom: 1px solid #1e2d50; }
h1 { font-size: 1.2rem; color: var(--gold); }
.patch { font-size: 0.75rem; color: var(--muted); }
nav a { color: var(--fg); margin-right: 1rem; text-decoration: none; font-size: 0.9rem; }
nav a.new::after { content: ''; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--gold); margin-left: 4px; vertical-align: super; }
.fav { background: none; border: none; color: var(--gold); font-size: 1.3rem; cursor: pointer; }
main { padding: 12px 16px; }
input { width: 100%; padding: 10px; border-radius: 8px; border: 1px solid #1e2d50; background: var(--card); color: var(--fg); margin-bottom: 8px; }
.lanes { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 10px; }
.lanes button { padding: 6px 10px; border-radius: 999px; border: 1px solid #1e2d50; background: var(--card); color: var(--fg); font-size: 0.8rem; }
.lanes button.on { background: var(--gold); color: #0a1428; }
ul, ol { list-style: none; padding: 0; }
.champs li a, .build li, .items li { display: block; background: var(--card); border-radius: 10px; padding: 10px 12px; margin-bottom: 6px; color: var(--fg); text-decoration: none; }
.muted { color: var(--muted); font-size: 0.8rem; }
.lane-tag { float: right; color: var(--gold); font-size: 0.8rem; }
.score { color: var(--gold); font-weight: 600; margin-left: 6px; }
.up { color: #6fdc8c; } .down { color: #ff7d7d; }
.back { color: var(--muted); text-decoration: none; display: inline-block; margin-bottom: 8px; }
h2 { margin: 8px 0; } h3 { margin: 14px 0 6px; color: var(--gold); font-size: 0.95rem; }
table { border-collapse: collapse; } td { padding: 4px 12px 4px 0; }
.err { color: #ff7d7d; }
.icon { width: 32px; height: 32px; border-radius: 6px; vertical-align: middle; margin-right: 8px; object-fit: cover; }
.rune { display: inline-block; background: var(--card); border: 1px solid #1e2d50; border-radius: 999px; padding: 3px 10px; margin: 2px 2px 2px 0; font-size: 0.85rem; color: var(--gold); }
.micon { width: 18px; height: 18px; border-radius: 4px; vertical-align: text-bottom; margin-right: 5px; }
.fungroup { background: var(--card); border-radius: 10px; padding: 8px 12px; margin-bottom: 8px; }
.fungroup summary { cursor: pointer; color: var(--gold); font-weight: 600; }
.fungroup ul.champs { margin-top: 8px; }
