:root{--bg-dark:#1a1a1e;--bg-panel:#26262b;--bg-box:#0e0e10;--red:#a01818;--red-bright:#c02020;--green:#14602a;--green-bright:#1e8a3e;--text:#f0ece4;--text-dim:#9a958c;--border:#3a3a40}*{box-sizing:border-box}body{background:var(--bg-dark);color:var(--text);margin:0;font-family:Segoe UI,system-ui,sans-serif}.app{max-width:1400px;margin:0 auto;padding:16px 24px 48px}.setup-screen{background:var(--bg-panel);border-radius:12px;max-width:520px;margin:60px auto;padding:24px}.setup-screen h1{margin-bottom:16px;font-size:1.3rem}.setup-hint{color:var(--text-dim);margin-bottom:20px;font-size:.85rem;line-height:1.5}.setup-hint--small{margin-top:6px;margin-bottom:0}.setup-hint code{background:var(--bg-box);border-radius:4px;padding:1px 6px}.setup-row{margin-bottom:20px}.setup-row label{color:var(--text-dim);margin-bottom:8px;font-size:.9rem;display:block}.setup-row input{background:var(--bg-box);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;padding:12px;font-size:1rem}.start-btn{background:var(--red);width:100%;color:var(--text);cursor:pointer;border:none;border-radius:8px;padding:16px;font-size:1.1rem;font-weight:700}.start-btn:disabled{opacity:.4;cursor:not-allowed}.app__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 0;display:flex}.app__title{align-items:baseline;gap:8px;display:flex}.app__header h1{margin:0;font-size:1.4rem}.app__version{color:var(--text-dim);font-size:.75rem}.app__header-actions{align-items:center;gap:12px;display:flex}.app__loading{color:var(--text-dim);font-size:.85rem}.settings-btn{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;padding:8px 14px;font-size:.85rem}.settings-btn:hover{color:var(--text);border-color:var(--red-bright)}.app__error{border:1px solid var(--red-bright);background:#a0181833;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:10px 14px;font-size:.9rem;display:flex}.app__error button{color:var(--text);cursor:pointer;background:0 0;border:none;font-size:1rem}.app__section{margin-bottom:32px}.app__section h2{align-items:center;gap:10px;margin-bottom:12px;font-size:1.1rem;display:flex}.pending-badge{background:var(--red);border-radius:12px;padding:2px 10px;font-size:.75rem;font-weight:700}.empty-hint{color:var(--text-dim);font-size:.9rem}.board-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.board-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.board-card--pending{border-color:var(--red-bright)}.board-card__header{justify-content:space-between;align-items:center;display:flex}.board-card__name{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:700}.board-card__score{justify-content:space-between;align-items:center;gap:8px;font-size:1.1rem;display:flex}.board-card__score span:first-child,.board-card__score span:last-child{text-overflow:ellipsis;white-space:normal;word-break:break-word;flex:1;line-height:1.2;overflow:hidden}.board-card__score span:last-child{text-align:right}.board-card__legs{white-space:nowrap;font-size:1.4rem;font-weight:700}.board-card__highlights{color:var(--text-dim);margin:0;padding-left:18px;font-size:.85rem}.board-card__footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.board-card__time{color:var(--text-dim);font-size:.75rem}.ack-btn{background:var(--green);border:1px solid var(--green-bright);color:var(--text);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:.8rem}.ack-btn:disabled{opacity:.5;cursor:not-allowed}.ack-done{color:#3ecf6e;font-size:.8rem}.player-manager{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:16px}.player-manager__add{gap:8px;margin-bottom:14px;display:flex}.player-manager__add input{background:var(--bg-box);border:1px solid var(--border);color:var(--text);border-radius:8px;flex:1;padding:10px;font-size:.95rem}.player-manager__add button{background:var(--red);color:var(--text);cursor:pointer;border:none;border-radius:8px;padding:10px 16px}.player-manager__add button:disabled{opacity:.4;cursor:not-allowed}.player-manager__empty{color:var(--text-dim);font-size:.9rem}.player-manager__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.player-manager__list li{background:var(--bg-box);border:1px solid var(--border);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.player-manager__list button{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:.8rem}.player-manager__list button:hover{color:var(--red-bright);border-color:var(--red-bright)}.player-manager__list button:disabled{opacity:.4;cursor:not-allowed}.history-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.history-list__row{background:var(--bg-panel);border:1px solid var(--border);border-radius:6px;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 14px;font-size:.9rem;display:flex}.history-list__main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.history-list__top{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-list__board{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:.7rem}.history-list__names{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-list__names strong{margin:0 6px}.history-list__highlights{color:var(--text-dim);margin:2px 0 0;padding-left:16px;font-size:.8rem}.history-list__time{color:var(--text-dim);white-space:nowrap;font-size:.75rem}.history-list__delete{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:4px 10px;font-size:.75rem}.history-list__delete:hover{color:var(--red-bright);border-color:var(--red-bright)}.history-list__delete:disabled{opacity:.4;cursor:not-allowed}.section-toggle{width:100%;color:var(--text-dim);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;margin-bottom:10px;padding:0;font-size:1rem;font-weight:600;display:flex}.section-toggle:hover{color:var(--text)}.section-toggle__caret{font-size:.8rem}.history-list__deleted-at{color:var(--text-dim);font-size:.75rem}.trash-list__actions{flex-direction:column;gap:6px;display:flex}.trash-list__purge:hover{color:var(--red-bright);border-color:var(--red-bright)}.tournament-stats{border-collapse:collapse;background:var(--bg-panel);border:1px solid var(--border);border-radius:8px;width:100%;font-size:.9rem;overflow:hidden}.tournament-stats th,.tournament-stats td{text-align:left;border-bottom:1px solid var(--border);padding:10px 14px}.tournament-stats th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;background:var(--bg-box);font-size:.75rem}.tournament-stats tr:last-child td{border-bottom:none}.tournament-stats__highlights{color:var(--text-dim);font-size:.85rem}.tournament-stats__highlights ul{margin:0;padding-left:16px}.app__user{color:var(--text-dim);font-size:.85rem}
