:root{--bg:#07070c;--card:#11111b;--line:#25253a;--red:#ff2d55;--cyan:#00e5ff;--gold:#ffd23f;--txt:#f2f2f7;--mut:#9a9ab0}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--txt);font-family:Inter,system-ui,sans-serif;min-height:100vh}
.bg{position:fixed;inset:0;z-index:-1;background:radial-gradient(60% 40% at 20% 0%,#ff2d5533,transparent),radial-gradient(50% 40% at 100% 30%,#00e5ff22,transparent),repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 40px),repeating-linear-gradient(90deg,#ffffff05 0 1px,transparent 1px 40px)}
header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;position:sticky;top:0;backdrop-filter:blur(12px);background:#07070ccc;border-bottom:1px solid var(--line);z-index:5}
.brand{font-family:Orbitron;font-weight:900;font-size:22px;color:#fff;text-decoration:none;line-height:1}
.brand .g{color:var(--red);text-shadow:0 0 12px var(--red)}
.brand small{display:block;font-family:Inter;font-size:10px;font-weight:600;color:var(--cyan);letter-spacing:2px;text-transform:uppercase;margin-top:3px}
main{max-width:720px;margin:auto;padding:0 16px 40px}
.hero{text-align:center;padding:34px 0 22px}
.hero h1{font-family:Orbitron;font-size:clamp(34px,9vw,58px);line-height:1.02}
.hero h1 span{background:linear-gradient(90deg,var(--red),var(--gold));-webkit-background-clip:text;color:transparent}
.hero p{color:var(--mut);margin:14px auto 20px;max-width:440px;font-size:17px}
.btn{border:0;border-radius:12px;padding:13px 20px;font:800 16px Inter;cursor:pointer;color:#fff;background:#22223a}
.btn.primary{background:linear-gradient(90deg,var(--red),#ff5e3a);box-shadow:0 0 24px #ff2d5566}
.btn.google{background:#fff;color:#111;width:100%}
.btn.sm{padding:8px 12px;font-size:13px}
.tabs{display:flex;gap:8px;margin-bottom:14px;overflow-x:auto}
.tabs button{flex:1;background:var(--card);border:1px solid var(--line);color:var(--mut);padding:11px;border-radius:12px;font:700 15px Inter;cursor:pointer;white-space:nowrap}
.tabs button.on{color:#fff;border-color:var(--cyan);box-shadow:0 0 14px #00e5ff44 inset}
.list{display:flex;flex-direction:column;gap:12px}
.fight{background:linear-gradient(160deg,#16162a,var(--card));border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;position:relative}
.fight.top{border-color:var(--gold);box-shadow:0 0 22px #ffd23f33}
.rank{font-family:Orbitron;font-size:24px;color:var(--mut);text-align:center}
.fight.top .rank{color:var(--gold)}
.names{font-weight:800;font-size:19px;line-height:1.2}
.names .vs{font-family:Orbitron;color:var(--red);font-size:13px;margin:0 6px}
.meta{color:var(--cyan);font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-top:4px}
.why{color:var(--mut);font-size:14px;margin-top:6px}
.by{color:#666680;font-size:12px;margin-top:6px}
.vote{display:flex;flex-direction:column;align-items:center;background:#1c1c30;border:1px solid var(--line);border-radius:14px;padding:8px 12px;cursor:pointer;color:#fff;min-width:64px}
.vote b{font-family:Orbitron;font-size:20px}
.vote span{font-size:11px;color:var(--mut);font-weight:700}
.vote.on{background:var(--red);border-color:var(--red);box-shadow:0 0 18px #ff2d5588}
.vote.on span{color:#fff}
.acts{grid-column:2/4;display:flex;gap:8px;flex-wrap:wrap}
.acts button{background:none;border:1px solid var(--line);color:var(--mut);border-radius:10px;padding:6px 10px;font:600 12px Inter;cursor:pointer}
.fight.focus{border-color:var(--cyan);box-shadow:0 0 26px #00e5ff55}
.empty{text-align:center;color:var(--mut);padding:40px}
dialog{margin:auto;background:#12121e;color:var(--txt);border:1px solid var(--line);border-radius:20px;padding:24px;width:min(92vw,440px)}
dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}
dialog form{display:flex;flex-direction:column;gap:10px;position:relative}
dialog h2{font-family:Orbitron;font-size:22px;margin-bottom:6px}
input,textarea{background:#0b0b14;border:1px solid var(--line);color:#fff;border-radius:12px;padding:13px;font:16px Inter;width:100%}
textarea{min-height:90px;resize:vertical}
input:focus,textarea:focus{outline:none;border-color:var(--cyan)}
.vsrow{display:flex;gap:8px;align-items:center}.vsrow b{font-family:Orbitron;color:var(--red)}
.or{text-align:center;color:var(--mut);font-size:13px}
.err{color:var(--red);font-size:13px;min-height:1em}
.small{font-size:13px;color:var(--mut);text-align:center}.small a{color:var(--cyan)}
.x{position:absolute;top:-8px;right:-6px;background:none;border:0;color:var(--mut);font-size:20px;cursor:pointer}
#authArea{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--mut)}
#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--cyan);color:#000;font-weight:800;padding:12px 18px;border-radius:12px;opacity:0;transition:.3s;pointer-events:none}
#toast.show{opacity:1}
footer{text-align:center;color:#555570;font-size:12px;padding:24px}
.fighters{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.av{width:52px;height:52px;border-radius:50%;flex:none;display:grid;place-items:center;font:900 17px Orbitron;color:#fff;background:linear-gradient(135deg,#ff2d55,#7a1fff);border:2px solid var(--line);object-fit:cover}
.av.b{background:linear-gradient(135deg,#00b3ff,#00e5ff)}
.photos{display:flex;gap:8px}.pick{flex:1;border:1px dashed var(--line);border-radius:12px;padding:12px;text-align:center;font-size:13px;color:var(--mut);cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pick input{display:none}.pick.has{border-color:var(--cyan);color:var(--cyan)}
.pend{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px;display:flex;gap:12px;align-items:center}
.pend img{width:90px;height:90px;border-radius:12px;object-fit:cover}
.pend .acts{display:flex;gap:8px;margin-top:8px}
.fighters .vs{font-family:Orbitron;color:var(--red);font-size:13px}
.sharemenu a.btn{display:block;text-align:center;text-decoration:none}
.search{margin-bottom:10px}
.cslot{grid-column:1/4}
.cpanel{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;display:flex;flex-direction:column;gap:8px}
.cform{display:flex;gap:8px;align-items:flex-end}.cform textarea{min-height:46px;font-size:14px;padding:10px}
.cmt{background:#0b0b14;border:1px solid var(--line);border-radius:12px;padding:8px 10px;font-size:14px}
.cmt b{font-size:13px}.cmt span{color:var(--mut);font-size:12px}.cmt p{margin-top:3px;word-break:break-word}.cmt.hid{opacity:.5}
.cacts{display:flex;gap:6px;margin-top:4px}.cacts button,.acts button.on{background:none;border:1px solid var(--line);color:var(--mut);border-radius:8px;padding:3px 8px;font:600 11px Inter;cursor:pointer}
.acts button.on{color:var(--cyan);border-color:var(--cyan);font-size:12px;padding:6px 10px}
#authSub{margin-top:-4px}
.fight.pinned{border-color:var(--cyan);box-shadow:0 0 26px #00e5ff44;padding-top:34px}
.fight.pinned .rank{font-size:22px}
.badge{position:absolute;top:10px;left:14px;background:linear-gradient(90deg,var(--cyan),#7af);color:#001;font:800 11px Inter;letter-spacing:1px;text-transform:uppercase;padding:4px 10px;border-radius:999px}

.hdr{display:flex;align-items:center;gap:12px}.hdrlink{color:var(--gold);font:700 13px Inter;text-decoration:none;white-space:nowrap}.hdrlink:hover{text-decoration:underline}
