:root{--page:#070a12;--surface:#0d1320;--panel:#121a2b;--chip:#1a2436;--raise:#26334d;--line:rgba(140,175,225,.1);--line-2:rgba(140,175,225,.22);--white:#f4f7fc;--fog:#9fb2cc;--greyple:#62748f;--accent:#2fb6f0;--accent-d:#1d8fc4;--accent-h:#74d4ff;--amber:#f5a623;--amber-h:#ffc35a;--r-dps:#ff5a3c;--r-logi:#3ddc84;--r-tackle:#f5a623;--r-ewar:#a78bfa;--r-scout:#ec4899;--red:#ff4d6d;--disp:"Poppins",sans-serif;--body:"Inter",ui-sans-serif,system-ui,sans-serif;--topbar-h:60px;--pad:clamp(16px,2.2vw,32px)}*{box-sizing:border-box}html,body{margin:0;height:100%}#root{flex:1;min-height:0;display:flex;flex-direction:column}body{background:var(--page);color:var(--white);font-family:var(--body);font-weight:400;letter-spacing:.014em;-webkit-font-smoothing:antialiased;height:100vh;display:flex;flex-direction:column;overflow:hidden;background-image:radial-gradient(1100px 640px at 88% -10%,rgba(245,166,35,.13),transparent 56%),radial-gradient(900px 680px at -8% 4%,rgba(47,182,240,.13),transparent 56%)}.topbar{height:var(--topbar-h);flex:none;display:flex;align-items:center;gap:24px;padding:0 var(--pad);border-bottom:1px solid var(--line);background:#0d132099;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand{display:flex;align-items:center;gap:11px}.logo{width:34px;height:34px;border-radius:9px;background:linear-gradient(150deg,var(--amber),#d4880a);display:grid;place-items:center;flex:none;box-shadow:0 0 22px -6px #f5a6238c}.logo:before{content:"";width:16px;height:12px;background:var(--page);clip-path:polygon(0 0,100% 0,100% 70%,72% 70%,60% 100%,52% 70%,0 70%)}.brand b{font-family:var(--disp);font-weight:800;font-size:16px;letter-spacing:.03em;text-transform:uppercase}.tabs{display:flex;gap:4px;margin-left:8px}.tabs button{font-family:var(--body);font-size:14px;font-weight:500;color:var(--fog);background:none;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;transition:.14s}.tabs button:hover{color:var(--white);background:#8cafe112}.tabs button.on{color:var(--white);background:var(--chip)}.topbar .spacer{flex:1}.btn{font-family:var(--body);font-weight:600;font-size:14px;border-radius:9px;cursor:pointer;border:none;letter-spacing:.014em;transition:background .15s,transform .12s,box-shadow .15s}.btn-ghost{background:transparent;color:#fff;border:1px solid var(--line-2);padding:9px 15px}.btn-ghost:hover{border-color:var(--accent-h);color:var(--accent-h)}.btn-accent{background:var(--accent);color:#04121c;padding:10px 18px}.btn-accent:hover{background:var(--accent-h);transform:translateY(-1px);box-shadow:0 8px 22px -8px #2fb6f099}.eve-id{display:flex;align-items:center;gap:8px;padding:4px 6px 4px 4px;border:1px solid var(--line-2);border-radius:999px;background:var(--chip)}.eve-portrait{width:28px;height:28px;border-radius:50%;flex:none;object-fit:cover;background:var(--page)}.eve-name{font-size:13px;font-weight:600;color:var(--white);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eve-logout{flex:none;width:20px;height:20px;border:none;border-radius:50%;background:transparent;color:var(--fog);cursor:pointer;display:grid;place-items:center}.eve-logout svg{width:13px;height:13px}.eve-logout:hover{color:var(--white);background:var(--red)}.saved-wrap{position:relative;display:flex;align-items:center;gap:8px}.saved-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:20;width:260px;max-height:340px;overflow-y:auto;background:var(--panel);border:1px solid var(--line-2);border-radius:11px;padding:6px;box-shadow:0 18px 40px -14px #000000b3}.saved-empty{color:var(--fog);font-size:13px;padding:12px;text-align:center}.saved-row{display:flex;align-items:center;gap:4px}.saved-load{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:none;border:none;border-radius:8px;padding:9px 10px;cursor:pointer;text-align:left;transition:.14s}.saved-load:hover{background:var(--chip)}.saved-name{font-size:14px;font-weight:600;color:var(--white)}.saved-meta{font-size:12px;color:var(--fog)}.saved-del{flex:none;width:26px;height:26px;border:none;border-radius:6px;background:none;color:var(--fog);cursor:pointer;display:grid;place-items:center}.saved-del svg{width:15px;height:15px}.saved-del:hover{color:var(--white);background:var(--red)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#04070e9e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{width:min(420px,100%);background:var(--panel);border:1px solid var(--line-2);border-radius:14px;padding:22px;box-shadow:0 28px 64px -18px #000000bf}.modal-title{margin:0 0 14px;font-family:var(--disp);font-weight:700;font-size:18px;letter-spacing:.01em}.modal-label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--greyple);margin-bottom:6px}.modal-input{width:100%;background:var(--surface);border:1px solid var(--line-2);border-radius:9px;color:var(--white);font-family:var(--body);font-size:15px;padding:11px 13px;outline:none;transition:border-color .14s}.modal-input:focus{border-color:var(--accent)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.app{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--pad)}.ftbar{flex:none;display:flex;align-items:center;gap:18px;margin-bottom:16px}.ftname{display:flex;align-items:baseline;gap:14px;min-width:0}.ftname h1{font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.01em;font-size:clamp(22px,2.4vw,30px);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ftname .edit{font-size:13px;color:var(--accent-h);background:none;border:none;cursor:pointer;font-weight:600;flex:none}.ftbar .spacer{flex:1}.stats{display:flex;gap:22px;flex:none}.stat{display:flex;flex-direction:column;line-height:1.1}.stat b{font-family:var(--disp);font-weight:700;font-size:20px;font-variant-numeric:tabular-nums}.stat span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--greyple);margin-top:2px}.stat b.acc{color:var(--accent-h)}.stat b.amb{color:var(--amber)}.board{flex:1;min-height:0;display:grid;grid-template-columns:300px 1fr;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}.board.with-rail{grid-template-columns:300px 1fr 260px}.bay{display:flex;flex-direction:column;min-height:0;background:var(--panel);border-right:1px solid var(--line);padding:18px}.bay h4{font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--greyple);margin:0 0 12px;flex:none}.search{flex:none;width:100%;font-family:var(--body);font-size:15px;color:var(--white);background:var(--page);border:1px solid var(--line);border-radius:99px;padding:10px 16px;outline:none;margin-bottom:12px;transition:border-color .15s}.search::placeholder{color:var(--greyple)}.search:focus{border-color:var(--accent)}.filter{flex:none;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.filter button{font-family:var(--body);font-size:12px;font-weight:500;color:var(--fog);background:var(--chip);border:1px solid transparent;border-radius:99px;padding:6px 12px;cursor:pointer;transition:.14s}.filter button:hover{color:var(--white);background:var(--raise)}.filter button.on{color:#04121c;background:var(--accent);border-color:var(--accent)}.baylist{flex:1 1 auto;min-height:0;overflow-y:auto;margin-right:-8px;padding-right:8px}.baylist::-webkit-scrollbar{width:7px}.baylist::-webkit-scrollbar-thumb{background:var(--raise);border-radius:99px}.baylist::-webkit-scrollbar-thumb:hover{background:var(--accent-d)}.classhdr{font-family:var(--body);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--greyple);margin:13px 2px 7px;display:flex;justify-content:space-between;position:sticky;top:0;background:var(--panel);padding:4px 0;z-index:2}.classhdr:first-child{margin-top:0}.chip{display:flex;align-items:center;gap:11px;padding:7px 10px;margin-bottom:6px;background:var(--chip);border:1.5px solid transparent;border-radius:10px;font-size:14.5px;font-weight:500;cursor:grab;transition:.14s;position:relative}.chip:hover{background:var(--raise)}.chip:active{cursor:grabbing}.chip.sel{border-color:var(--accent);background:var(--raise)}.chip .sicon{width:28px;height:28px;flex:none;background:var(--page);border-radius:6px;object-fit:contain}.chip .nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip .add{width:23px;height:23px;flex:none;border:none;background:var(--page);border-radius:50%;display:grid;place-items:center;color:var(--fog);cursor:pointer;transition:.14s;opacity:0}.chip .add svg{width:14px;height:14px}.chip:hover .add{opacity:1}.chip .add:hover{background:var(--accent);color:#04121c}.chip .fav{flex:none;border:none;background:none;padding:0;display:grid;place-items:center;cursor:pointer;color:var(--greyple);transition:.14s;opacity:0}.chip .fav svg{width:15px;height:15px}.chip:hover .fav{opacity:1}.chip .fav:hover{color:var(--amber)}.chip .fav.on{opacity:1;color:var(--amber)}.qa{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:30;background:var(--raise);border:1px solid var(--line-2);border-radius:12px;padding:7px;display:none;flex-direction:column;gap:2px;box-shadow:0 16px 40px -12px #000000b3}.chip.open .qa{display:flex}.qa .h{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--greyple);padding:6px 9px 7px}.qa button{display:flex;align-items:center;gap:9px;font-family:var(--body);text-align:left;font-size:14px;font-weight:500;color:var(--fog);background:transparent;border:none;padding:8px 10px;border-radius:8px;cursor:pointer;transition:.12s}.qa button:hover{background:#8cafe11a;color:#fff}.qa button .rdot{width:9px;height:9px;border-radius:50%;flex:none}.center{display:flex;flex-direction:column;min-height:0;min-width:0}.cols{flex:1;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:14px 14px 10px;min-height:0;overflow:hidden}.col{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:12px;display:flex;flex-direction:column;min-height:0;transition:.15s}.col.over{border-color:var(--accent);background:var(--raise)}.col-h{flex:none;display:flex;align-items:center;gap:8px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--line)}.col-h .rdot{width:10px;height:10px;border-radius:50%;flex:none}.col-h .rn{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:12.5px;flex:1}.col-h .rc{font-size:12px;color:var(--greyple);font-variant-numeric:tabular-nums}.col-clear{font-family:var(--body);font-size:11px;font-weight:500;color:var(--greyple);background:none;border:none;cursor:pointer;padding:2px 4px;transition:.12s}.col-clear:hover{color:var(--red)}.col-clear:disabled{opacity:.3;cursor:default}.drop{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin-right:-6px;padding-right:6px}.drop::-webkit-scrollbar{width:6px}.drop::-webkit-scrollbar-thumb{background:var(--raise);border-radius:99px}.endcap{flex:1;min-height:46px;border:1.5px dashed var(--line-2);border-radius:11px;display:grid;place-items:center;font-size:12px;font-weight:500;color:var(--greyple);opacity:0;transition:.15s}.drop.empty .endcap{opacity:.7}.col.over .endcap{opacity:1;border-color:var(--accent);color:var(--white)}.unit{flex:none;background:var(--chip);border:1.5px solid transparent;border-left-width:3px;border-radius:11px;padding:10px 11px;cursor:grab;transition:.14s;position:relative}.unit:hover{background:var(--raise)}.unit.sel{border-color:var(--accent);border-left-color:var(--accent)}.unit .u-row{display:flex;align-items:center;gap:10px}.unit .sicon{width:30px;height:30px;flex:none;background:var(--page);border-radius:6px;object-fit:contain}.unit .nm{font-size:14.5px;font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unit .pbadge{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--greyple);margin-top:8px}.unit .pbadge .d{width:7px;height:7px;border-radius:50%;background:var(--r-logi)}.unit .utags{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.utag{font-size:11px;font-weight:500;color:var(--fog);background:var(--page);border-radius:99px;padding:3px 10px}.bench{flex:none;display:flex;flex-direction:column;margin:0 14px 14px;background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:11px 13px;transition:.15s}.bench.over{border-color:var(--accent);background:var(--raise)}.bench.empty{opacity:.85}.bench-h{display:flex;align-items:center;gap:8px;margin-bottom:9px}.bench-h .rdot{width:10px;height:10px;border-radius:50%;flex:none}.bench-h .rn{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:12.5px}.bench-h .rc{font-size:12px;color:var(--greyple);font-variant-numeric:tabular-nums}.bench-hint{margin-left:auto;font-size:11px;color:var(--greyple);font-style:italic}.bench-list{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;min-height:46px;align-items:stretch}.bench-list::-webkit-scrollbar{height:7px}.bench-list::-webkit-scrollbar-thumb{background:var(--raise);border-radius:99px}.bench-empty{display:flex;align-items:center;justify-content:center;width:100%;border:1.5px dashed var(--line-2);border-radius:11px;font-size:12.5px;font-weight:500;color:var(--greyple)}.bench.over .bench-empty{border-color:var(--accent);color:var(--white)}.bench-card{flex:none;display:flex;align-items:center;gap:9px;max-width:240px;padding:7px 9px;background:var(--chip);border:1.5px solid transparent;border-left-width:3px;border-left-color:var(--greyple);border-radius:10px;cursor:grab;transition:.14s}.bench-card:hover{background:var(--raise)}.bench-card:active{cursor:grabbing}.bench-card .sicon{width:28px;height:28px;flex:none;background:var(--page);border-radius:6px;object-fit:contain}.bench-meta{display:flex;flex-direction:column;line-height:1.2;min-width:0}.bench-meta .nm{font-size:13.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bench-meta .pl{font-size:11px;color:var(--greyple);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bench-x{flex:none;background:none;border:none;color:var(--greyple);cursor:pointer;padding:0;display:grid;place-items:center}.bench-x svg{width:13px;height:13px}.bench-x:hover{color:var(--red)}.rail{display:flex;flex-direction:column;min-height:0;background:var(--panel);border-left:1px solid var(--line);padding:18px}.rail-h{flex:none;display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rail-h h4{margin:0;font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--greyple)}.rail-add{display:inline-flex;align-items:center;gap:5px;font-family:var(--body);font-size:12px;font-weight:600;color:#04121c;background:var(--accent);border:none;border-radius:99px;padding:6px 12px 6px 10px;cursor:pointer}.rail-add svg{width:13px;height:13px}.rail-list{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;margin-right:-8px;padding-right:8px}.rail-empty{color:var(--greyple);font-size:13px;padding:8px 2px}.player{background:var(--chip);border:1px solid var(--line);border-radius:11px;padding:10px;cursor:grab}.player:active{cursor:grabbing}.player-top{display:flex;align-items:center;gap:7px}.player-name{font-weight:600;font-size:14.5px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player .fav{flex:none;border:none;background:none;padding:0;display:grid;place-items:center;cursor:pointer;color:var(--greyple);transition:.14s}.player .fav svg{width:15px;height:15px}.player .fav:hover,.player .fav.on{color:var(--amber)}.player-x,.hull-x{flex:none;background:none;border:none;color:var(--greyple);cursor:pointer;padding:0;display:grid;place-items:center}.player-x svg{width:14px;height:14px}.hull-x svg{width:12px;height:12px}.player-x:hover,.hull-x:hover{color:var(--red)}.player-note{font-size:12px;color:var(--fog);margin:3px 0 0}.player-allin{font-size:11.5px;color:var(--greyple);font-style:italic}.player-hulls{display:flex;flex-direction:column;gap:5px;margin-top:8px}.hullchip{display:flex;align-items:center;gap:8px;padding:5px 8px;background:var(--raise);border-radius:8px;font-size:13.5px;cursor:grab}.hullchip.static{cursor:default;display:inline-flex}.hullchip:active{cursor:grabbing}.hullchip .sicon{width:22px;height:22px;flex:none;background:var(--page);border-radius:5px;object-fit:contain}.hullchip .nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signup{flex:none;display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:10px;margin-bottom:12px}.signup-matches{display:flex;flex-direction:column;gap:2px}.signup-matches button{text-align:left;font-family:var(--body);font-size:13.5px;color:var(--fog);background:transparent;border:none;padding:6px 8px;border-radius:6px;cursor:pointer}.signup-matches button:hover{background:var(--raise);color:#fff}.signup-picked{display:flex;flex-wrap:wrap;gap:5px}.signup-actions{display:flex;gap:8px}.unit.crewable{outline:2px dashed var(--accent);outline-offset:-2px}@media (max-width:1100px){.board{grid-template-columns:1fr;overflow-y:auto}.bay{border-right:0;border-bottom:1px solid var(--line)}.baylist{max-height:300px}.cols{grid-template-columns:repeat(2,1fr);overflow:visible}.col{min-height:280px}.drop{overflow:visible}}.pilot-input{background:none;border:none;color:var(--greyple);font:inherit;outline:none;width:100%}.pilot-input:focus{color:var(--white)}.u-act{flex:none;width:24px;height:24px;border:none;border-radius:6px;background:var(--page);color:var(--fog);cursor:pointer;display:grid;place-items:center;transition:.14s}.u-act svg{width:14px;height:14px}.u-act:hover{color:var(--white);background:var(--raise)}.u-act-danger:hover{color:var(--white);background:var(--red)}.utag{border:none;cursor:pointer}.utag:hover{color:var(--white)}.utag.on{color:var(--page);background:var(--accent)}.tag-editor{margin-top:9px;padding-top:9px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.tag-palette{display:flex;flex-wrap:wrap;gap:6px}.tag-input{background:var(--page);border:1px solid var(--line);border-radius:7px;color:var(--white);font:inherit;font-size:12px;padding:5px 9px;outline:none}.tag-input:focus{border-color:var(--accent)}.notfound{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px}.notfound h1{font-family:var(--disp);font-weight:800;text-transform:uppercase;color:var(--white);margin:0}.notfound p{color:var(--fog);margin:0}.notfound .row{display:flex;gap:10px}.loading{height:100vh;display:flex;align-items:center;justify-content:center;color:var(--fog)}
