[data-team-roster]{grid-column:1/-1;min-width:0}
.super-path-panel[data-path="team"]{grid-template-columns:60px minmax(0,1fr)}
.super-path-panel[data-path="team"] .super-path-control{grid-column:1/-1;min-width:0}
.super-path-panel[data-path="team"] .super-path-copy h3{line-height:1.3}
.super-path-panel[data-path="team"] .super-path-copy>span{max-width:72ch}
.team-roster{min-width:0;padding:18px;border:1px solid rgba(195,255,0,.55);background:rgba(5,20,42,.28);color:#e7f0f8}
.team-roster .team-roster-title{margin:0 0 10px;font-size:17px;line-height:1.5;letter-spacing:.02em}
.team-roster-description,.team-roster-notice,.team-roster-count,.team-roster-error{margin:0 0 12px;font-size:13px;line-height:1.75;overflow-wrap:anywhere}
.team-roster-description{color:#c5d5e3}
.team-roster-notice{color:#c9d9e7}
.team-roster-count{color:var(--lime,#c7f500);font-weight:700}
.team-roster-list{display:grid;gap:14px;margin-bottom:14px;min-width:0}
.team-roster-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;min-width:0;margin:0;padding:14px;border:1px solid rgba(191,210,231,.38)}
.team-roster-legend{padding:0 7px;font-size:13px;font-weight:700;color:#d4e2ee}
.team-roster-fields{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.7fr) minmax(0,1fr);gap:10px;min-width:0}
.team-roster-field{min-width:0}
.team-roster .team-roster-field label{display:block;margin-bottom:6px;color:#d8e3ed;font-size:12px;font-weight:700;line-height:1.55}
.team-roster .team-roster-field input{box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;padding:10px 11px;border:1px solid rgba(191,210,231,.55);border-radius:3px;background:#0b223c;color:white;font:inherit;font-size:16px;line-height:1.4}
.team-roster input::placeholder{color:#9fb4c8;opacity:1}
.team-roster input:focus{outline:2px solid var(--lime,#c7f500);outline-offset:2px}
.team-roster-add,.team-roster-remove{box-sizing:border-box;min-height:44px;border:1px solid #c5d5e3;border-radius:3px;font:inherit;font-size:14px;font-weight:700;line-height:1.4;cursor:pointer}
.team-roster-add{padding:10px 14px;background:var(--lime,#c7f500);color:#071a30;border-color:var(--lime,#c7f500)}
.team-roster-remove{align-self:end;padding:10px 12px;background:transparent;color:#eef5fa}
.team-roster-add:disabled{background:#344b5f;border-color:#71889b;color:#d1dbe4;cursor:not-allowed}
.team-roster button:focus-visible{outline:2px solid white;outline-offset:3px}
.team-roster-error{margin:10px 0 0;color:#ffd6a8}
.team-roster-error:empty{margin:0}
.team-roster-modes{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.team-roster-modes button,.team-roster-import-actions button,.team-roster-import-apply{min-height:44px;padding:10px 14px;border:1px solid #93acc1;border-radius:3px;background:#102d4b;color:#eef5fa;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.team-roster-modes button[aria-pressed="true"],.team-roster-import-apply{background:var(--lime,#c7f500);border-color:var(--lime,#c7f500);color:#071a30}
.team-roster-import-panel{min-width:0;padding:15px;border:1px solid rgba(191,210,231,.5);background:rgba(5,20,42,.28)}
.team-roster [hidden]{display:none!important}
.team-roster-template{display:inline-block;padding:8px 0;color:var(--lime,#c7f500);font-size:14px;font-weight:700;text-underline-offset:4px}
.team-roster-import-instructions,.team-roster-import-privacy,.team-roster-file-meta,.team-roster-preview-meta,.team-roster-preview-notice,.team-roster-import-status{margin:10px 0;font-size:13px;line-height:1.75;overflow-wrap:anywhere}
.team-roster-import-privacy,.team-roster-preview-notice{color:#c9d9e7}
.team-roster .team-roster-file-label{display:block;margin:14px 0 7px;font-size:13px;line-height:1.5}
.team-roster .team-roster-file{box-sizing:border-box;width:100%;max-width:100%;min-width:0;padding:10px;background:#0b223c;color:white;font-size:16px;line-height:1.5}
.team-roster-file::file-selector-button{max-width:100%;min-height:40px;padding:8px 10px;border:0;border-radius:3px;margin-right:9px;background:#d6e5ef;color:#071a30;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.team-roster-import-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.team-roster-import-actions button:disabled,.team-roster-import-apply:disabled{border-color:#71889b;background:#344b5f;color:#d1dbe4;cursor:not-allowed}
.team-roster-preview{min-width:0;margin-top:18px;padding-top:14px;border-top:1px solid rgba(195,255,0,.55)}
.team-roster-preview-heading{margin:0 0 10px;font-size:16px;line-height:1.6}
.team-roster-preview-list{box-sizing:border-box;max-height:360px;overflow:auto;overscroll-behavior:contain;margin:14px 0;padding:0 0 0 27px;color:#e8f0f7}
.team-roster-preview-row{padding:9px 4px;border-bottom:1px solid rgba(191,210,231,.24);font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.team-roster-preview-row span{display:block}
.team-roster-import-status{color:#d5f87b}
.team-roster-import-status:empty{margin:0}
@media(max-width:1100px){.team-roster-row{grid-template-columns:minmax(0,1fr)}.team-roster-remove{justify-self:start}.team-roster-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.team-roster-field:first-child{grid-column:1/-1}}
@media(max-width:480px){.team-roster{padding:14px}.team-roster-fields{grid-template-columns:minmax(0,1fr)}.team-roster-row{padding:12px}.team-roster-add,.team-roster-modes button,.team-roster-import-actions button,.team-roster-import-apply{width:100%}.team-roster-import-panel{padding:12px}}
