.app-main.roster-main{max-width:none;padding-right:24px}.roster-layout{width:min(100%,1540px);margin:0 auto}.roster-card{display:grid;gap:18px;width:100%;background:linear-gradient(135deg,rgba(16,29,56,.95),rgba(20,36,66,.88));border-color:rgba(93,180,255,.34)}.roster-header{align-items:flex-start;justify-content:space-between;gap:16px}.roster-header-actions{display:grid;gap:10px;justify-items:end}.roster-tabs{margin-bottom:0;padding-bottom:8px}.roster-live-actions{justify-content:flex-end}.roster-pool-card{margin-bottom:0;border-color:rgba(93,180,255,.25);background:linear-gradient(135deg,rgba(10,20,42,.62),rgba(14,26,50,.54))}.roster-pool-header{justify-content:space-between;margin-bottom:12px}.roster-event-controls{justify-content:flex-end}.roster-event-controls select{min-width:260px}.roster-selected-event{margin-bottom:12px}.roster-pool-header h3{margin:0;font-size:1.2rem}.roster-pool-empty{min-height:24px}.roster-pool-list{display:flex;flex-wrap:wrap;gap:10px;max-height:212px;overflow-y:auto;padding-right:4px}.roster-pool-list::-webkit-scrollbar{width:10px}.roster-pool-list::-webkit-scrollbar-track{background:rgba(20,38,72,.35);border-radius:10px}.roster-pool-list::-webkit-scrollbar-thumb{background:rgba(118,170,240,.55);border-radius:10px}.roster-pool-item-wrap{display:flex;align-items:center;gap:6px}.roster-pool-item{display:inline-flex;align-items:center;justify-content:flex-start;width:fit-content;min-width:0;max-width:100%;text-align:left;transition:transform .12s ease,box-shadow .2s ease,border-color .2s ease,background-color .2s ease}.roster-pool-item strong{white-space:nowrap}.roster-pool-item span{color:var(--muted);font-size:.78rem}.roster-pool-item-event{align-content:start}.roster-pool-item:focus-visible,.roster-pool-item:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px rgba(10,22,45,.45)}.roster-pool-item:focus-visible{outline:none}.roster-pool-item-event.rh-tone-black{border-color:rgba(17,24,39,.9);background:rgba(15,23,42,.95);color:#f9fafb}.roster-pool-item-event.rh-tone-black:focus-visible,.roster-pool-item-event.rh-tone-black:hover:not(:disabled){border-color:rgba(75,85,99,.95);background:rgba(3,7,18,.95)}.roster-pool-item-event.rh-tone-blue{border-color:rgba(59,130,246,.65);background:rgba(30,58,138,.34)}.roster-pool-item-event.rh-tone-blue:focus-visible,.roster-pool-item-event.rh-tone-blue:hover:not(:disabled){border-color:rgba(96,165,250,.85);background:rgba(30,64,175,.48)}.roster-pool-item-event.rh-tone-red{border-color:rgba(239,68,68,.65);background:rgba(127,29,29,.34)}.roster-pool-item-event.rh-tone-red:focus-visible,.roster-pool-item-event.rh-tone-red:hover:not(:disabled){border-color:rgba(248,113,113,.85);background:rgba(127,29,29,.5)}.roster-pool-item-event.rh-tone-green{border-color:rgba(34,197,94,.65);background:rgba(20,83,45,.34)}.roster-pool-item-event.rh-tone-green:focus-visible,.roster-pool-item-event.rh-tone-green:hover:not(:disabled){border-color:rgba(74,222,128,.85);background:rgba(21,128,61,.45)}.roster-pool-item-event.rh-tone-purple{border-color:rgba(168,85,247,.65);background:rgba(88,28,135,.34)}.roster-pool-item-event.rh-tone-purple:focus-visible,.roster-pool-item-event.rh-tone-purple:hover:not(:disabled){border-color:rgba(192,132,252,.85);background:rgba(107,33,168,.48)}.roster-pool-item-event.rh-tone-cyan{border-color:rgba(34,211,238,.65);background:rgba(22,78,99,.34)}.roster-pool-item-event.rh-tone-cyan:focus-visible,.roster-pool-item-event.rh-tone-cyan:hover:not(:disabled){border-color:rgba(103,232,249,.85);background:rgba(14,116,144,.44)}.roster-pool-item-event.rh-tone-amber{border-color:rgba(245,158,11,.65);background:rgba(120,53,15,.34)}.roster-pool-item-event.rh-tone-amber:focus-visible,.roster-pool-item-event.rh-tone-amber:hover:not(:disabled){border-color:rgba(251,191,36,.85);background:rgba(146,64,14,.45)}.roster-pool-item-event.rh-tone-gray{border-color:rgba(148,163,184,.65);background:rgba(51,65,85,.38)}.roster-pool-item-event.rh-tone-gray:focus-visible,.roster-pool-item-event.rh-tone-gray:hover:not(:disabled){border-color:rgba(203,213,225,.85);background:rgba(71,85,105,.5)}.roster-pool-badge{display:inline-flex;align-items:center;width:fit-content;min-height:18px;padding:1px 6px;border-radius:999px;border:1px solid rgba(93,180,255,.45);background:rgba(93,180,255,.14);color:#d6ebff;font-size:.68rem;font-weight:700}.roster-mercenary-remove{min-width:34px;min-height:34px;padding:0;font-size:1rem;line-height:1;justify-content:center;color:#ffd7d7;border-color:transparent;background:transparent;box-shadow:none}.roster-board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:14px;align-items:start}.roster-group-card{display:grid;gap:6px;padding:10px;border:1px solid rgba(93,180,255,.22);border-radius:12px;background:linear-gradient(135deg,rgba(10,20,42,.62),rgba(14,26,50,.54))}.roster-group-card.disabled{opacity:.45;background:rgba(45,45,52,.7);border-color:rgba(148,163,184,.2)}.roster-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.roster-group-actions{display:flex;align-items:center;gap:6px}.roster-group-header h3{margin:0;font-size:.95rem}.roster-toggle-label{display:inline-flex;align-items:center;justify-content:center}.roster-toggle-label input{width:14px;height:14px;cursor:pointer;margin:0}.roster-slots{display:grid;gap:4px}.roster-slot{min-height:34px;display:flex;align-items:center;justify-content:center;padding:4px 6px;border:1px dashed rgba(140,190,255,.34);border-radius:6px;background:rgba(14,24,46,.72)}.roster-archive-detail{margin-top:.6em;padding:10px 12px;border:1px solid rgba(93,180,255,.24);border-radius:10px;background:rgba(8,19,40,.5)}.roster-slot.filled{border-style:solid;background:rgba(18,34,65,.92)}.roster-slot.filled.rh-tone-black{border-color:rgba(75,85,99,.9);background:rgba(3,7,18,.9)}.roster-slot.filled.rh-tone-blue{border-color:rgba(96,165,250,.7);background:rgba(30,64,175,.25)}.roster-slot.filled.rh-tone-red{border-color:rgba(248,113,113,.7);background:rgba(127,29,29,.26)}.roster-slot.filled.rh-tone-green{border-color:rgba(74,222,128,.7);background:rgba(21,128,61,.25)}.roster-slot.filled.rh-tone-purple{border-color:rgba(192,132,252,.7);background:rgba(107,33,168,.26)}.roster-slot.filled.rh-tone-cyan{border-color:rgba(103,232,249,.7);background:rgba(14,116,144,.26)}.roster-slot.filled.rh-tone-amber{border-color:rgba(251,191,36,.7);background:rgba(146,64,14,.27)}.roster-slot.filled.rh-tone-gray{border-color:rgba(203,213,225,.7);background:rgba(71,85,105,.3)}.roster-member-cell{min-width:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.roster-member-meta{color:var(--muted);font-size:.73rem}.roster-member-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px}.roster-member-card.mercenary{border-left:3px solid #f59e0b;padding-left:6px}.roster-member-card strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem}.roster-member-badge{display:inline-flex;align-items:center;min-height:18px;padding:1px 6px;border-radius:999px;background:rgba(245,158,11,.18);border:1px solid rgba(245,158,11,.45);color:#ffd08a;font-size:.68rem;font-weight:700}.roster-member-badge.secondary{background:rgba(93,180,255,.16);border-color:rgba(93,180,255,.4);color:#d6ebff}.roster-merc-toggle{display:inline-flex;align-items:center;gap:0;min-height:22px;font-size:.72rem;color:var(--muted)}.roster-merc-toggle input{margin:0;width:13px;height:13px}.roster-remove{min-width:26px;min-height:22px;padding:0;font-size:.95rem;line-height:1;justify-content:center;color:#ffd7d7;border-color:transparent;background:transparent;box-shadow:none}.roster-mercenary-remove:hover:not(:disabled),.roster-remove:hover:not(:disabled){border-color:transparent;background:rgba(220,38,38,.14);box-shadow:none;transform:none}.roster-empty-action{min-width:24px;min-height:24px;padding:0;font-size:.95rem;line-height:1}@media (max-width:1100px){.roster-board{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.roster-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.roster-header{flex-direction:column;align-items:stretch}.roster-header-actions{justify-items:stretch}.roster-event-controls,.roster-live-actions{justify-content:stretch}.roster-event-controls{width:100%}.roster-event-controls select{min-width:0;flex:1 1}.roster-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.roster-board{grid-template-columns:1fr}}