:root{--bg: #0b0f1a;--card: #151b2b;--card2: #1c2438;--line: #2a3450;--text: #e8ecf6;--muted: #8a94ad;--gold: #f5c04a;--blue: #3d8bff;--green: #2ecc71;--red: #ff5a5f;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text)}body{font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-tap-highlight-color:transparent}a{color:var(--blue);text-decoration:none}h1{font-size:1.45rem;margin:.4rem 0 .6rem}h2{font-size:1.05rem;margin:1.2rem 0 .5rem;color:var(--gold)}.card h2{margin-top:0}code{background:var(--card2);padding:0 .3em;border-radius:4px}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;padding-top:max(.7rem,env(safe-area-inset-top));background:#0b0f1aeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.brand{color:var(--text);font-weight:700;font-size:1.05rem}.banner{background:#3a2d0b;color:var(--gold);padding:.6rem 1rem;font-size:.9rem;text-align:center}.wrap{max-width:640px;margin:0 auto;padding:1rem 1rem 4rem}.muted{color:var(--muted)}.small{font-size:.85rem}.center{text-align:center}.mono{font-family:ui-monospace,monospace;word-break:break-all}.error{background:#3a1416;color:#ffb3b5;padding:.7rem .9rem;border-radius:10px;cursor:pointer}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1rem;margin:.6rem 0}.stack{display:flex;flex-direction:column;gap:.6rem}.row{display:flex;gap:.5rem;align-items:center}.grow{flex:1;min-width:0}.list{list-style:none;padding:0;margin:0}.tlink{color:var(--text);font-weight:600;padding:.3rem 0;display:block}label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem;color:var(--muted)}input,select,textarea{font:inherit;color:var(--text);background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:.75rem .8rem;min-height:48px;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:1px}.btn{font:inherit;font-weight:600;color:var(--text);background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;min-height:48px;cursor:pointer}.btn:disabled{opacity:.55;cursor:default}.btn.block{width:100%;display:block;font-size:1.1rem;min-height:56px;margin-top:.4rem}.btn.small{font-size:.9rem;min-height:42px;padding:.5rem .8rem}.btn.primary{background:var(--gold);color:#1a1300;border-color:var(--gold)}.btn.join{background:var(--green);color:#04210f;border-color:var(--green)}.btn.ghost{background:transparent}.btn.danger{background:transparent;color:var(--red);border-color:#5a2629}.chip{font:inherit;font-size:.85rem;color:var(--text);background:var(--card2);border:1px solid var(--line);border-radius:999px;padding:.45rem .8rem;min-height:38px}.chip.ghost{background:transparent;color:var(--muted)}.myteam{margin:1rem 0 .5rem}.tabs{display:flex;gap:.3rem;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.25rem;margin:.8rem 0}.tabs button{flex:1;font:inherit;font-weight:600;color:var(--muted);background:none;border:0;border-radius:9px;min-height:44px}.tabs button.on{background:var(--card2);color:var(--text)}.match.hl{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}.match.done{opacity:.8}.mhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.badge{font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;background:var(--card2);color:var(--muted)}.badge.lobby_created{background:#0f3320;color:var(--green)}.badge.finished{background:#2a2a2a;color:#bbb}.vs{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;margin:.3rem 0 .6rem}.vs .team:last-child{text-align:right}.vs-x{color:var(--muted);font-weight:800;font-size:.95rem}.tname{font-weight:700;font-size:1.05rem;overflow-wrap:anywhere}.team.win .tname{color:var(--green)}.team.lose{opacity:.5}.team.me .tname:after{content:" (you)";color:var(--gold);font-weight:500;font-size:.8rem}.tools{margin-top:.5rem}.qr{text-align:center;margin-top:.6rem}.qr img{background:#fff;padding:8px;border-radius:10px;max-width:100%;height:auto}.admin{margin-top:.8rem;border-top:1px dashed var(--line);padding-top:.6rem}.admin summary{color:var(--muted);font-size:.9rem;cursor:pointer;padding:.3rem 0}.admin .stack{margin-top:.5rem}.result{background:var(--card2);border-radius:10px;padding:.7rem;font-size:.92rem}.result pre{font-size:.72rem;overflow:auto;max-height:260px;white-space:pre-wrap;word-break:break-all}.bracket{display:flex;gap:.8rem;overflow-x:auto;padding-bottom:1rem;-webkit-overflow-scrolling:touch}.bcol{min-width:170px;display:flex;flex-direction:column}.bhead{font-size:.8rem;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem}.bmatches{display:flex;flex-direction:column;justify-content:space-around;flex:1;gap:.6rem}.bmatch{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}.bmatch.lobby_created{border-color:var(--green)}.bteam{padding:.45rem .6rem;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bteam+.bteam{border-top:1px solid var(--line)}.bteam.win{color:var(--green);font-weight:700}.bteam.lose{opacity:.45}.bteam.me{box-shadow:3px 0 0 var(--gold) inset}.bscore{font-size:.72rem;color:var(--muted);text-align:center;padding:.15rem;background:var(--card2)}textarea{min-height:0;font-family:ui-monospace,monospace;font-size:.95rem;resize:vertical}.warn{color:var(--gold)}.who{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.7rem .9rem;font-size:.92rem}.linkbtn{font:inherit;color:var(--blue);background:none;border:0;padding:.4rem 0;cursor:pointer;text-decoration:underline}.count{margin:.4rem 0;font-size:.95rem}.roundhead{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:1.2rem}.roundhead h2{margin:0}.btn.locked{color:var(--muted)}.btn.social{display:flex;align-items:center;justify-content:center;gap:.6rem;margin-top:0}.btn.google{background:#fff;color:#1f1f1f;border-color:#dadce0}.btn.facebook{background:#1877f2;color:#fff;border-color:#1877f2}.divider{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.85rem;margin:.4rem 0}.divider:before,.divider:after{content:"";flex:1;border-top:1px solid var(--line)}.error.small{font-size:.9rem}.filters{margin:.8rem 0 .4rem}.seg{display:flex;gap:.3rem;background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:.2rem}.seg button{flex:1;font:inherit;font-size:.9rem;font-weight:600;color:var(--muted);background:none;border:0;border-radius:9px;min-height:40px;cursor:pointer}.seg button.on{background:var(--card);color:var(--text)}.pills{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.pill{font:inherit;font-size:.85rem;color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:999px;padding:.35rem .75rem;min-height:36px;cursor:pointer}.pill.on{background:#2c2410;color:var(--gold);border-color:var(--gold)}.pill.tag{min-height:0;padding:.15rem .55rem;cursor:default;color:var(--text);background:var(--card2)}.check{flex-direction:row;align-items:center;gap:.4rem;font-size:.85rem}.check input{width:auto;min-height:0}.post .ptitle{font-weight:700;font-size:1.05rem;display:flex;gap:.5rem;align-items:center;overflow-wrap:anywhere}.post.own{border-color:var(--gold)}.post .pills{margin:.5rem 0 .2rem}.pnote{margin:.4rem 0;font-size:.92rem;white-space:pre-wrap;overflow-wrap:anywhere}.row.pactions{flex-wrap:wrap;align-content:flex-start;margin-top:.4rem}.row.pactions .actions{display:flex;gap:.5rem;margin-left:auto}.req+.req{border-top:1px solid var(--line);padding-top:.5rem}@media (max-width: 420px){.filters .row{flex-direction:column;align-items:stretch}}fieldset.player{border:1px solid var(--line);border-radius:12px;padding:.7rem .8rem .8rem;margin:0;display:flex;flex-direction:column;gap:.5rem;min-width:0}fieldset.player legend{color:var(--gold);font-weight:700;font-size:.9rem;padding:0 .3rem}label.check{flex-direction:row;align-items:flex-start;gap:.6rem;color:var(--text);font-size:.9rem}label.check input{width:auto;min-height:0;margin-top:.2rem}.steps{margin:0;padding-left:1.2rem}.import-list .imp{border:1px solid var(--line);border-radius:10px;padding:.55rem .7rem;margin:.4rem 0}.imp.good{border-color:#1f5c3a}.imp.warnrow{border-color:#6b5313}.imp.bad{border-color:#5a2629;opacity:.85}.bad-text{color:#ffb3b5}.ok{color:var(--green)}.details{margin-top:.6rem;border-top:1px dashed var(--line);padding-top:.6rem}table.roster{width:100%;border-collapse:collapse;margin-top:.5rem}table.roster td{padding:.35rem .3rem;border-top:1px solid var(--line);vertical-align:top}table.roster td:first-child{width:2.2rem}.count-badge{display:inline-block;min-width:1.3rem;margin-left:.35rem;padding:0 .35rem;border-radius:999px;background:var(--red);color:#fff;font-size:.75rem;line-height:1.3rem;text-align:center}button.card.notice{width:100%;font:inherit;color:var(--text);text-align:left;cursor:pointer;border-color:var(--gold)}.card.iab{display:flex;flex-direction:column;gap:.5rem;border-color:var(--blue)}.roster-list{margin:.4rem 0 0;padding-left:1.1rem}.roster-list li{margin:.15rem 0}fieldset.player .ptoggle{display:flex;align-items:center;gap:.5rem;width:100%;background:none;border:0;color:var(--gold);font:inherit;font-weight:700;font-size:.92rem;padding:.2rem 0;text-align:left;cursor:pointer;min-height:40px}fieldset.player:not(.open){padding-top:.35rem;padding-bottom:.35rem}.toolbar{flex-wrap:wrap;margin:.4rem 0}.mlbb-id{display:flex;flex-direction:column;gap:.35rem}.mlbb-id .server-box{width:7.5rem;flex:none}.mlbb-id p{margin:0}.splits{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.3rem}.id-preview li{border:1px solid var(--line);border-radius:10px;padding:.45rem .6rem;margin:.3rem 0;font-size:.92rem}.id-preview li.good{border-color:#1f5c3a}.id-preview li.warnrow{border-color:#6b5313}.id-preview li.bad{border-color:#5a2629;opacity:.85}.bslot{display:flex;align-items:center;gap:.35rem}.bslot.ghost{visibility:hidden}.bnum{width:1.3rem;flex:none;text-align:right;font-size:.72rem;color:var(--muted)}.bslot .bmatch{flex:1;min-width:0}.bteam{display:flex;align-items:center;gap:.4rem;min-height:2.1rem}.bseed{flex:none;min-width:1.3rem;padding:0 .25rem;border-radius:4px;background:var(--card2);color:var(--muted);font-size:.72rem;text-align:center}.bname{overflow:hidden;text-overflow:ellipsis}.bracket.preview .bmatch{border-style:dashed}.seed-no{flex:none;min-width:2rem;font-weight:800;color:var(--gold)}.seed-move{display:flex;flex-direction:column;gap:.2rem;flex:none}.seed-move .btn.small{min-height:30px;padding:.1rem .55rem}
