.lb-board{--lb-bg:#000000;--lb-text:#999999;--lb-border:#333333;--lb-accent:#ffd740;--lb-current:#ffffff;--lb-title-bg:#1a1a1a;--lb-row-bg:#0d0d0d;--lb-row-text:#ffffff;background:var(--lb-bg);border-radius:8px;overflow:hidden;border:1px solid var(--lb-border);padding:1rem;margin-bottom:1rem}
.lb-title{text-align:center;font-weight:700;font-size:1em;letter-spacing:.06em;color:var(--lb-current);background:var(--lb-title-bg);border-bottom:1px solid var(--lb-border);margin:-1rem -1rem 1rem;padding:.6rem .75rem}
.lb-table{display:flex;flex-direction:column;gap:4px}
.lb-row{display:grid;grid-template-columns:3em 1fr 4em;align-items:center;gap:.6rem;padding:.45em .7em;background:var(--lb-row-bg);color:var(--lb-row-text);border:1px solid var(--lb-border);border-radius:5px;font-size:clamp(.8rem,1.6vw,1rem);transition:background .15s}
.lb-row--header{background:var(--lb-title-bg);font-size:.7em;font-weight:700;letter-spacing:.08em;color:var(--lb-text);padding:.35em .7em}
.lb-table--editable .lb-row{grid-template-columns:3em 1fr auto 4.5em}
.lb-table--no-rank .lb-row{grid-template-columns:1fr 4em}
.lb-table--editable.lb-table--no-rank .lb-row{grid-template-columns:1fr auto 4.5em}
.lb-table--no-score .lb-row{grid-template-columns:3em 1fr}
.lb-table--editable.lb-table--no-score .lb-row{grid-template-columns:3em 1fr auto}
.lb-table--no-rank.lb-table--no-score .lb-row{grid-template-columns:1fr}
.lb-table--editable.lb-table--no-rank.lb-table--no-score .lb-row{grid-template-columns:1fr auto}
.lb-table--zebra .lb-row:not(.lb-row--header):nth-child(2n){background:color-mix(in srgb,var(--lb-row-bg) 78%,var(--lb-row-text) 12%)}
@supports not (background:color-mix(in srgb,red,blue)){.lb-table--zebra .lb-row:not(.lb-row--header):nth-child(2n){background:linear-gradient(rgba(127,127,127,.18),rgba(127,127,127,.18)),var(--lb-row-bg)}
}
.lb-cell{display:flex;align-items:center;min-width:0}
.lb-cell--rank{justify-content:flex-end;text-align:right;gap:.3em;font-weight:700;color:var(--lb-text)}
.lb-cell--name{overflow:hidden;font-weight:600}
.lb-cell--score{justify-content:flex-end;font-weight:700;font-family:"Roboto Mono",monospace;color:var(--lb-accent);font-size:1.1em}
.lb-cell--actions{display:flex;gap:.25em;justify-content:flex-end;align-self:stretch}
.lb-medal{font-size:1.25em;line-height:1}
.lb-rank-num{min-width:1.2em;text-align:right;font-variant-numeric:tabular-nums}
.lb-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb-row--leader{border-color:var(--lb-accent);box-shadow:inset 0 0 0 1px var(--lb-accent)}
.lb-row--leader .lb-cell--name,.lb-row--leader .lb-name{color:var(--lb-accent)}
.lb-row--rank1{border-left:3px solid gold}
.lb-row--rank2{border-left:3px solid silver}
.lb-row--rank3{border-left:3px solid #cd7f32}
.lb-row--empty .lb-name,.lb-row--empty-state{color:var(--lb-text);font-style:italic;opacity:.5}
.lb-row--empty-state{justify-content:center;text-align:center;opacity:.6;grid-template-columns:1fr}
.lb-name-input{flex:1;min-width:0;background:0 0;border:1px solid transparent;border-radius:3px;color:inherit;font:inherit;font-weight:600;padding:.1em .3rem}
.lb-name-input:hover{border-color:rgba(255,255,255,.2)}
.lb-name-input:focus{outline:0;border-color:var(--lb-accent);background:rgba(0,0,0,.3)}
.lb-row--leader .lb-name-input,.lb-score-input{color:var(--lb-accent)}
.lb-score-input{background:0 0;border:1px solid transparent;border-radius:3px;font:inherit;font-weight:700;font-family:"Roboto Mono",monospace;text-align:right;width:3.5em;padding:.1em .25em;font-size:1em;-moz-appearance:textfield}
.lb-score-input::-webkit-inner-spin-button,.lb-score-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.lb-score-input:hover{border-color:rgba(255,255,255,.2)}
.lb-score-input:focus{outline:0;border-color:var(--lb-accent);background:rgba(0,0,0,.3)}
.lb-btn{background:0 0;border:1px solid var(--lb-border);border-radius:3px;color:var(--lb-text);font-size:.85em;line-height:1;min-width:1.8em;height:1.8em;cursor:pointer;opacity:.75;transition:opacity .15s,color .15s,border-color .15s;font-family:inherit;font-weight:700}
.lb-btn:hover{opacity:1;border-color:var(--lb-accent);color:var(--lb-accent)}
.lb-btn--dec,.lb-btn--inc{height:auto;align-self:stretch}
.lb-btn--remove{margin-left:.5em}
.lb-btn--inc:hover{color:#4caf50;border-color:#4caf50}
.lb-btn--dec:hover{color:#ff9800;border-color:#ff9800}
.lb-btn--remove:hover{color:#ef5350;border-color:#ef5350}
.leaderboard-home{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:1.5rem;max-width:1200px;margin:0 auto;padding:1.5rem 1rem;align-items:start}
.leaderboard-home__form{display:flex;flex-direction:column;gap:.75rem}
.leaderboard-home__preview{position:sticky;top:3rem}
.leaderboard-home__hint{margin:.5rem 0;color:var(--muted);text-align:center}
.form-check+.form-check{margin-top:.2rem}
.form-row{display:flex;gap:.4rem;margin-top:.4rem}
.form-row .form-input{margin:0}
.demo-styles{margin-top:.5rem;display:flex;flex-wrap:wrap;gap:.35rem}
.leaderboard-admin{display:grid;grid-template-columns:340px 1fr;grid-template-areas:"controls board";gap:1.25rem;max-width:1100px;margin:0 auto;padding:1rem;align-items:start}
.leaderboard-admin__board{position:sticky;top:1rem;min-width:0;grid-area:board}
.leaderboard-admin__controls{display:flex;flex-direction:column;gap:.75rem;min-width:0;grid-area:controls}
.leaderboard-admin__controls>.page-badge{grid-area:badge;justify-self:start;margin:0}
.ctrl-section--options{grid-area:options}
.ctrl-section--actions{grid-area:actions}
.ctrl-section--links{grid-area:links}
.board-hint{text-align:center;color:var(--muted);margin:.5rem 0 0}
.ctrl-input{background:var(--input-bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.75rem;padding:.25rem .4rem;font-family:monospace;min-width:0;flex:1}
.leaderboard-live-body{margin:0;padding:0;background:#000;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;font-family:Arial,sans-serif}
.leaderboard-live{width:96vw;max-width:900px}
.leaderboard-live .lb-board{font-size:clamp(.9rem,2.2vw,1.2rem)}
.fullscreen-btn,.leaderboard-live-overlay{position:fixed;color:#fff;font-family:Arial,sans-serif}
.leaderboard-live-overlay{inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:100;text-align:center;padding:2rem;font-size:1.1rem;line-height:1.6}
.leaderboard-live-overlay[hidden]{display:none}
.leaderboard-live-overlay a{color:#3773c1}
.fullscreen-btn{bottom:.75rem;right:.75rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:.4rem .6rem;font-size:.8rem;cursor:pointer;z-index:40;opacity:.5;transition:opacity .2s}
.fullscreen-btn:hover{opacity:1;background:rgba(255,255,255,.2)}
@media (max-width:768px){.leaderboard-home{grid-template-columns:1fr}
.leaderboard-home__preview{position:static;order:-1}
.leaderboard-admin{grid-template-columns:1fr;grid-template-areas:"board""controls"}
.leaderboard-admin__board{position:static}
}