*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#111;color:#eee}a{color:#d8b45d}button,.button{background:#d8b45d;color:#111;border:0;padding:.75rem 1rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}button:disabled{opacity:.4;cursor:not-allowed}.secondary{background:#333;color:#eee}.danger{background:#9e3d3d;color:#fff}.shell{max-width:1500px;margin:auto;padding:24px}.narrow{max-width:650px}.top{display:flex;justify-content:space-between;align-items:center;gap:20px}.top h1{margin:.2rem 0}.top-nav{display:flex;gap:8px;align-items:center}.top-nav .selected{font-weight:800;text-decoration:none;color:#fff}.muted{color:#aaa}.card{background:#1b1b1b;border:1px solid #333;padding:18px;margin:16px 0}.compact-card{padding:12px 16px}.form{display:grid;gap:12px}.form label,.pickgrid label,#teamFields label{display:grid;gap:6px}input,select{width:100%;background:#0f0f0f;color:#fff;border:1px solid #444;padding:.75rem}.wide{margin-top:10px}.alert{padding:12px 15px;margin:15px 0}.good{background:#173b27}.bad{background:#4b2020}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.row{display:flex;justify-content:space-between;border-bottom:1px solid #333;padding:8px 0}.buttons{display:flex;gap:8px;flex-wrap:wrap}.turn{position:sticky;top:0;z-index:30;background:#d8b45d;color:#111;padding:12px 16px;margin:12px 0;display:flex;gap:12px;justify-content:center;box-shadow:0 3px 14px #0008}.turn span{font-weight:400}.recent-strip{background:#171717;border:1px solid #2e2e2e;padding:10px 12px;margin:12px 0;display:flex;align-items:center;gap:14px;overflow:hidden}.recent-list{display:flex;gap:10px;overflow-x:auto}.recent-list span{white-space:nowrap;background:#222;padding:6px 9px;font-size:.82rem}.viewer-note{display:flex;flex-direction:column;gap:5px}.checkline{display:flex;align-items:center;gap:10px;cursor:pointer}.checkline input{width:auto}.board-tabs{display:none}.board{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.roster{background:#181818;border:1px solid #333;padding:12px}.roster.active{outline:3px solid #d8b45d}.roster.mine{border-color:#666}.roster h3{margin:0 0 8px}.conf{display:flex;justify-content:space-between;font-size:.85rem;color:#bbb;margin-bottom:8px}.quota-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px 10px;margin:8px 0 12px;padding:8px;background:#141414}.pos-conf{display:flex;justify-content:space-between;gap:8px;font-size:.75rem}.pos-conf small{color:#999}.slot{display:grid;grid-template-columns:42px 1fr;gap:8px;padding:5px 0;border-bottom:1px solid #292929;font-size:.9rem}.slot span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot-conf{margin-left:6px;color:#777}.picker{border-color:#d8b45d}.pickgrid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:10px;margin-bottom:12px}.picktabs{display:flex;gap:8px;margin-bottom:12px}.picktabs button{background:#333;color:#eee}.picktabs button.active{background:#d8b45d;color:#111}.pickgrid label:last-child{position:relative}.suggestions{position:absolute;z-index:50;background:#171717;border:1px solid #555;max-height:360px;overflow-y:auto;min-width:100%}.suggestions button{display:flex;width:100%;justify-content:space-between;gap:14px;text-align:left;background:#171717;color:#eee;border-bottom:1px solid #333;padding:10px}.suggestions button:hover,.suggestions button:focus{background:#292929}.suggestions small{color:#aaa}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:8px;border-bottom:1px solid #333}pre{white-space:pre-wrap}.participant-row span{display:grid}.participant-row small{color:#888}.mini-actions{display:flex;gap:4px}.mini-actions button{padding:.35rem .55rem}.inline{display:flex;gap:6px;align-items:center}.inline select{min-width:90px}.compact{margin-top:12px}.reset-box{border-color:#6f3030}.reset-box summary{cursor:pointer;font-weight:800;color:#e38b8b}.reset-inner{padding-top:12px}.version{text-align:center;color:#666;font-size:.72rem;padding:24px 0 8px}@media(max-width:700px){.shell{padding:12px}.grid2,.pickgrid{grid-template-columns:1fr}.top{align-items:flex-start;flex-direction:column}.turn{justify-content:space-between;flex-wrap:wrap;margin-left:-12px;margin-right:-12px}.recent-strip{align-items:flex-start;flex-direction:column;gap:7px;margin-left:-12px;margin-right:-12px;border-left:0;border-right:0}.board-tabs{display:flex;gap:7px;overflow-x:auto;padding:8px 0;position:sticky;top:48px;background:#111;z-index:20}.board-tabs button{background:#282828;color:#ddd;padding:.55rem .7rem;white-space:nowrap}.board-tabs button.active{background:#d8b45d;color:#111}.board{display:block}.roster{display:none}.roster.mobile-active{display:block;min-width:0}.quota-grid{grid-template-columns:1fr}.suggestions{left:0;right:0}.top-nav{width:100%;justify-content:flex-end}}
/* V1.1 UX polish */
.slot{
    grid-template-columns:72px minmax(0,1fr);
    gap:12px;
}
.slot b{
    white-space:nowrap;
}

.turn{
    width:fit-content;
    padding:7px 12px;
    margin:9px 0;
    justify-content:flex-start;
    background:#2a2518;
    color:#e8ca76;
    border:1px solid #6d5927;
    box-shadow:none;
}

.header-pref{
    display:flex;
    align-items:center;
    gap:7px;
    font-size:.85rem;
    white-space:nowrap;
    cursor:pointer;
}
.header-pref input{
    width:auto;
    margin:0;
}
.nav-sep{
    color:#666;
    margin:0 4px;
}

.bottom-user{
    text-align:center;
    color:#777;
    font-size:.75rem;
    margin-top:22px;
}

.version{
    padding-top:6px;
}

@media(max-width:700px){
    .top-nav{
        flex-wrap:wrap;
        justify-content:flex-start;
    }

    .header-pref{
        width:100%;
        margin-bottom:4px;
    }

    .nav-sep{
        display:none;
    }

    .turn{
        width:auto;
        margin-left:0;
        margin-right:0;
    }

    .slot{
        grid-template-columns:68px minmax(0,1fr);
    }
}

/* V1.1 UX polish */
.slot{
    grid-template-columns:72px minmax(0,1fr);
    gap:12px;
}
.slot b{
    white-space:nowrap;
}

.turn{
    width:fit-content;
    padding:7px 12px;
    margin:9px 0;
    justify-content:flex-start;
    background:#2a2518;
    color:#e8ca76;
    border:1px solid #6d5927;
    box-shadow:none;
}

.header-pref{
    display:flex;
    align-items:center;
    gap:7px;
    font-size:.85rem;
    white-space:nowrap;
    cursor:pointer;
}
.header-pref input{
    width:auto;
    margin:0;
}
.nav-sep{
    color:#666;
    margin:0 4px;
}

.bottom-user{
    text-align:center;
    color:#777;
    font-size:.75rem;
    margin-top:22px;
}

.version{
    padding-top:6px;
}

@media(max-width:700px){
    .top-nav{
        flex-wrap:wrap;
        justify-content:flex-start;
    }

    .header-pref{
        width:100%;
        margin-bottom:4px;
    }

    .nav-sep{
        display:none;
    }

    .turn{
        width:auto;
        margin-left:0;
        margin-right:0;
    }

    .slot{
        grid-template-columns:68px minmax(0,1fr);
    }
}

/* V1.1 participant alias + header switch polish */

.slot{
    grid-template-columns:96px minmax(0,1fr);
    gap:14px;
}

.slot b{
    padding-right:4px;
}

.email-toggle{
    display:flex;
    align-items:center;
    gap:8px;
    white-space:nowrap;
    font-size:.84rem;
    cursor:pointer;
    user-select:none;
}

.email-toggle input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.email-switch{
    position:relative;
    display:inline-block;
    width:34px;
    height:18px;
    border-radius:20px;
    background:#3a3a3a;
    border:1px solid #555;
    transition:.18s ease;
}

.email-switch:after{
    content:"";
    position:absolute;
    width:12px;
    height:12px;
    left:2px;
    top:2px;
    border-radius:50%;
    background:#aaa;
    transition:.18s ease;
}

.email-toggle input:checked + .email-switch{
    background:#d8b45d;
    border-color:#d8b45d;
}

.email-toggle input:checked + .email-switch:after{
    transform:translateX(16px);
    background:#111;
}

.alias-actions{
    align-items:center;
}

.alias-input{
    width:145px;
    padding:.4rem .5rem;
    font-size:.78rem;
}

.bottom-user{
    text-align:left;
    margin-top:12px;
    font-size:.72rem;
}

.version{
    text-align:center;
}

@media(max-width:700px){
    .slot{
        grid-template-columns:92px minmax(0,1fr);
        gap:12px;
    }

    .email-toggle{
        font-size:.78rem;
    }

    .alias-input{
        width:120px;
    }
}
