:root{
    --bg:#0e1014; --panel:#171b22; --panel2:#1f2530; --line:#2c3442;
    --txt:#e6ecf3; --dim:#8b97a7; --gold:#f4c54a; --accent:#4ea1ff;
    --danger:#ff5d5d; --good:#5dd47e;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html,body{height:100%;overflow:hidden}
  body{background:var(--bg);color:var(--txt);font-family:"Segoe UI",system-ui,sans-serif;user-select:none}
  #game{display:block;position:absolute;inset:0}

  .screen{position:absolute;inset:0;display:none;align-items:center;justify-content:center;
    background:radial-gradient(circle at 50% 30%,rgba(26,34,48,.92),rgba(8,10,14,.97));z-index:10}
  .screen.show{display:flex}

  .card{width:min(900px,95vw);max-height:94vh;overflow-y:auto;background:var(--panel);
    border:1px solid var(--line);border-radius:16px;padding:26px 30px;box-shadow:0 24px 60px rgba(0,0,0,.5)}
  .title{font-size:30px;font-weight:800;letter-spacing:2px}
  .title .sub{font-size:13px;color:var(--dim);font-weight:500;letter-spacing:1px;margin-top:4px}

  .coinbar{display:flex;align-items:center;gap:8px;background:var(--panel2);border:1px solid var(--line);
    border-radius:10px;padding:8px 14px;font-weight:700}
  .coin{color:var(--gold)}
  .rowtop{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}

  .ghead2{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
  .ghead-right{display:flex;align-items:center;gap:10px}
  .netbadge{font-size:12px;font-weight:700;color:#8b97a7;white-space:nowrap}
  .glayout{display:flex;gap:24px;align-items:flex-start}
  .gleft{flex:0 0 260px;display:flex;flex-direction:column;gap:14px;align-items:center}
  .gright{flex:1 1 auto;min-width:0}
  .gright .slot-label:first-child{margin-top:0}
  #preview{width:260px;height:260px;border:1px solid var(--line);border-radius:14px;
    background:radial-gradient(circle at 50% 58%,#1b2433,#0c0e13)}
  @media(max-width:720px){.glayout{flex-direction:column}.gleft{flex:none;width:100%}
    #preview{width:100%;max-width:340px}}

  .grid3{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
  .slot-label{font-size:12px;color:var(--dim);letter-spacing:2px;margin:16px 0 8px;text-transform:uppercase}

  /* カスタムロボ式: カテゴリタブ + 所持パーツのスクロールリスト */
  .cattabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
  .cattab{flex:1 1 0;min-width:80px;text-align:center;background:var(--panel2);border:1px solid var(--line);
    border-radius:10px;padding:9px 8px;cursor:pointer;font-weight:700;font-size:14px;transition:.12s}
  .cattab:hover{border-color:#3d566f}
  .cattab.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:#162338}
  .cattab .eq{display:block;margin-top:3px;font-size:11px;font-weight:600;color:var(--accent);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .partlist{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto;padding-right:4px}
  .partlist::-webkit-scrollbar{width:8px}
  .partlist::-webkit-scrollbar-thumb{background:#2c3442;border-radius:4px}
  /* ガレージ：左(アカウント/スキン)・中央(組み立て)・右(ガチャ/ショップ) の3カード */
  /* スライド式カルーセル：並び順固定、← →で中央が移動。中央(active)のみ操作可、他はグレーで覆う */
  .garage-row{position:relative;overflow:hidden;width:100%}
  .garage-track{position:relative;display:flex;align-items:stretch;gap:28px;transition:transform .28s ease;will-change:transform}
  .gcard{position:relative;flex:none;width:min(720px,80vw);max-height:94vh}
  .gcard.dim{opacity:.92;cursor:pointer}
  .gcover{position:absolute;inset:0;border-radius:16px;background:rgba(10,12,16,.62);display:none;z-index:6;transition:.15s}
  .gcard.dim .gcover{display:block}
  .gcard.dim:hover .gcover{background:rgba(10,12,16,.42)}
  .gnav{position:absolute;top:50%;transform:translateY(-50%);z-index:20;width:46px;height:46px;border-radius:50%;
    background:rgba(31,37,48,.92);border:1px solid var(--line);color:var(--txt);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.12s;backdrop-filter:blur(2px)}
  .gnav:hover:not(:disabled){background:#2a3340;border-color:var(--accent)}
  .gnav:disabled{opacity:.25;cursor:default}
  #gPrev{left:14px} #gNext{right:14px}
  .cardh{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--dim);font-weight:700;
    border-bottom:1px solid var(--line);padding-bottom:7px;margin:2px 0 11px}
  .cardh:not(:first-child){margin-top:20px}
  .acct{display:flex;flex-direction:column;gap:9px;align-items:stretch}
  .namelbl{font-size:11px;letter-spacing:.5px;color:var(--dim);font-weight:600;margin-bottom:-3px}
  .nameedit{display:flex;gap:7px}
  .namein{flex:1;min-width:0;background:var(--panel2);border:1px solid var(--line);color:var(--txt);
    border-radius:8px;padding:8px 10px;font-size:13px;font-family:inherit;outline:none}
  .namein:focus{border-color:var(--accent)}
  .acct .gbtn,.acct .ghostbtn{margin-top:0}
  .nameedit .ghostbtn{width:auto;flex:none;margin:0;padding:8px 16px;font-size:13px;letter-spacing:1px;font-weight:700}
  .shopbox{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:11px 12px;
    display:flex;flex-direction:column;gap:9px;margin-bottom:6px}
  .shopbox .ghostbtn{width:100%;margin:0}
  /* コイン残高（ガチャカード上部に移動） */
  .gacha-coin{justify-content:flex-start;margin-bottom:14px;font-size:18px}
  .gacha-coin .coin{font-size:18px}
  .gacha-coin .coin-lbl{margin-left:auto;font-size:11px;font-weight:600;color:var(--dim);letter-spacing:1px}
  /* ガチャ：1連/10連ボタン */
  .gpulls{display:flex;gap:8px}
  .gpull{flex:1;background:linear-gradient(180deg,#3a4a63,#283750);border:1px solid var(--line);color:var(--txt);
    border-radius:10px;padding:11px 8px;font-weight:700;font-size:14px;cursor:pointer;transition:.12s;line-height:1.25}
  .gpull b{display:block;margin-top:4px;font-size:12px;color:var(--gold)}
  .gpull:hover:not(:disabled){border-color:var(--accent);filter:brightness(1.1)}
  .gpull:disabled{opacity:.4;cursor:default}
  .gpull.big{background:linear-gradient(180deg,#e0bb4e,#b18f2c);border-color:#cda636;color:#241a05}
  .gpull.big b{color:#3a2a06}
  /* 結果スペース（最初から確保）＋獲得タイル */
  .gres{min-height:120px;margin-top:12px;border:1px dashed var(--line);border-radius:10px;
    display:flex;align-items:center;justify-content:center;padding:10px}
  .gres-grid{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;width:100%}
  .gtile{width:84px;background:var(--panel2);border:1px solid var(--c,var(--line));border-radius:10px;padding:6px 5px;text-align:center;
    animation:gpop .34s cubic-bezier(.2,1.35,.45,1) both}
  .gtile canvas{width:72px;height:72px;display:block;margin:0 auto}
  .gtile-nm{font-size:11px;font-weight:700;color:var(--txt);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .gtile-rar{font-size:10px;font-weight:700;margin-top:1px}
  .gtile.epi{box-shadow:0 0 9px rgba(185,138,255,.5)}
  .gtile.leg{border-width:2px;box-shadow:0 0 14px var(--c),0 0 30px rgba(244,197,74,.45)}
  @keyframes gpop{from{opacity:0;transform:scale(.4) translateY(8px)}to{opacity:1;transform:none}}
  /* レジェンド獲得：全画面演出 */
  #celeOverlay{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;overflow:hidden;
    background:radial-gradient(circle at 50% 44%,rgba(60,46,12,.62),rgba(6,7,10,.93));cursor:pointer}
  #celeOverlay.show{display:flex;animation:celefade .25s ease}
  @keyframes celefade{from{opacity:0}to{opacity:1}}
  .cele-flash{position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(circle at 50% 44%,rgba(255,228,140,.92),transparent 60%);animation:celeflash .7s ease-out forwards}
  @keyframes celeflash{0%{opacity:0;transform:scale(.5)}18%{opacity:.95}100%{opacity:0;transform:scale(1.7)}}
  .cele-rays{position:absolute;width:170vmax;height:170vmax;left:50%;top:44%;transform:translate(-50%,-50%);pointer-events:none;
    background:repeating-conic-gradient(from 0deg,rgba(255,216,107,.15) 0deg 8deg,transparent 8deg 20deg);animation:celespin 16s linear infinite}
  @keyframes celespin{to{transform:translate(-50%,-50%) rotate(360deg)}}
  .cele-confetti{position:absolute;inset:0;pointer-events:none}
  .cele-confetti .conf{position:absolute;top:-8%;border-radius:2px;animation:celefall 2s linear forwards;will-change:transform,opacity}
  @keyframes celefall{0%{transform:translateY(-10vh) translateX(0) rotate(0);opacity:1}
    100%{transform:translateY(115vh) translateX(var(--dx)) rotate(var(--rot));opacity:.85}}
  .cele-core{position:relative;z-index:2;text-align:center;animation:celepop .5s cubic-bezier(.2,1.4,.4,1) both}
  @keyframes celepop{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
  .cele-title{font-size:clamp(36px,8vw,74px);font-weight:900;letter-spacing:6px;line-height:1;
    background:linear-gradient(180deg,#fff3c4,#f4c54a,#c8911e);-webkit-background-clip:text;background-clip:text;color:transparent;
    filter:drop-shadow(0 0 26px rgba(244,197,74,.6));animation:celeshake .55s ease}
  @keyframes celeshake{0%,100%{transform:translateX(0)}18%{transform:translateX(-9px)}38%{transform:translateX(9px)}58%{transform:translateX(-6px)}78%{transform:translateX(6px)}}
  .cele-items{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin:20px 0 8px}
  .cele-item{background:rgba(20,16,6,.72);border:2px solid #f4c54a;border-radius:16px;padding:12px;box-shadow:0 0 26px rgba(244,197,74,.6)}
  .cele-item canvas{width:108px;height:108px;display:block}
  .cele-nm{margin-top:6px;font-weight:800;color:#ffe08a;font-size:15px}
  .cele-sub{font-size:19px;font-weight:800;color:#ffd86b;letter-spacing:1px;margin-top:4px}
  .cele-hint{margin-top:14px;font-size:12px;color:#b9a87a;letter-spacing:1px}
  .muted{color:var(--dim);font-size:12px;line-height:1.55}
  .skins .muted{padding:6px 0}
  /* スキン：ミニ実機プレビュー＋tier別スウォッチ＋オーラ＋購入確認バー */
  .skinprev{display:block;margin:0 auto 12px;width:280px;max-width:100%;height:auto;
    border:1px solid var(--line);border-radius:12px;background:radial-gradient(circle at 50% 56%,#1b2433,#0c0e13)}
  .skins{display:flex;flex-direction:column;gap:6px}
  .skin-h{display:flex;justify-content:space-between;align-items:baseline;font-size:11px;font-weight:700;
    letter-spacing:1px;color:var(--txt);margin-top:8px}
  .skin-h:first-child{margin-top:0}
  .skin-h span{font-size:10px;font-weight:600;color:var(--dim);letter-spacing:.5px}
  .skin-row{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 2px}
  .swatch{width:38px;height:38px;flex:none;border-radius:9px;background:var(--c);border:2px solid rgba(255,255,255,.14);
    cursor:pointer;position:relative;padding:0;transition:transform .1s,box-shadow .12s;display:flex;align-items:center;justify-content:center}
  .swatch:hover{transform:translateY(-2px)}
  .swatch.sel{border-color:#fff;box-shadow:0 0 0 2px var(--accent),0 0 10px var(--c)}
  .swatch.locked{opacity:.6}
  .swatch.locked:hover{opacity:.85}
  .swatch.pending{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}
  .swatch .lk{font-size:10px;font-weight:800;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9);letter-spacing:0}
  .swatch.aura{box-shadow:0 0 10px var(--au)}
  .swatch.aura.sel{box-shadow:0 0 0 2px var(--accent),0 0 14px var(--au)}
  .swatch.aura::after{content:"";position:absolute;inset:-4px;border-radius:12px;border:1px solid var(--au);
    opacity:.55;animation:auraPulse 1.6s ease-in-out infinite;pointer-events:none}
  @keyframes auraPulse{0%,100%{opacity:.25;transform:scale(.94)}50%{opacity:.7;transform:scale(1.06)}}
  .skin-buy{display:flex;align-items:center;gap:10px;margin-top:10px;padding:9px 11px;background:var(--panel2);
    border:1px solid var(--line);border-radius:10px}
  .sb-nm{font-weight:700;font-size:13px;color:var(--txt);display:flex;flex-direction:column;gap:2px}
  .sb-buff{font-size:11px;font-weight:700;color:#9fe0b0}
  #skinBuyBtn{margin-left:auto;background:linear-gradient(180deg,#e0bb4e,#b18f2c);border:1px solid #cda636;color:#241a05;
    font-weight:800;font-size:12px;padding:8px 12px;border-radius:8px;cursor:pointer;white-space:nowrap}
  #skinBuyBtn:disabled{opacity:.4;cursor:default;filter:grayscale(.5)}
  .gbtn{display:inline-flex;align-items:center;gap:9px;background:#fff;color:#3c4043;border:1px solid #dadce0;
    border-radius:8px;padding:8px 14px 8px 11px;font-weight:600;font-size:13px;font-family:inherit;cursor:pointer;transition:.12s;line-height:1}
  .gbtn:hover{background:#f6f7f8;box-shadow:0 1px 4px rgba(0,0,0,.3);border-color:#cfd2d6}
  .gbtn svg{display:block;flex:none}
  .prow{display:flex;flex-direction:row;align-items:center;gap:11px;background:var(--panel2);border:1px solid var(--line);
    border-radius:10px;padding:10px 14px;cursor:pointer;transition:.1s}
  .prow .pthumb{width:48px;height:48px;flex:none;background:#0e141d;border:1px solid var(--line);border-radius:8px}
  .prow .ptext{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
  .prow:hover{border-color:#3d566f;transform:translateX(2px)}
  .prow.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:#162338}
  .prow .prow-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .prow .pnm{font-weight:700}
  .prow .pst{font-size:12px;color:var(--dim)}
  .prow .pdesc{font-size:11px;color:#6f7c8c}
  .prow .pct{font-size:12px;font-weight:800;color:var(--gold);min-width:40px;text-align:right}
  .prow .pct.free{color:var(--good)}
  .prow .prar{font-size:11px;font-weight:700;margin-left:8px}

  .opt{position:relative;background:var(--panel2);border:1px solid var(--line);border-radius:12px;
    padding:12px 14px;cursor:pointer;transition:.12s}
  .opt:hover{border-color:#3d566f;transform:translateY(-1px)}
  .opt.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset,0 8px 20px rgba(78,161,255,.15)}
  .opt.locked{opacity:.4;cursor:not-allowed;filter:grayscale(.6)}
  .opt .nm{font-weight:700;margin-bottom:6px}
  .opt .stat{font-size:12px;color:var(--dim);display:flex;justify-content:space-between;margin:2px 0}
  .opt .stat b{color:var(--txt);font-weight:600}
  .badge{position:absolute;top:8px;right:10px;font-size:11px;font-weight:800;letter-spacing:.5px}
  .badge.free{color:var(--good)} .badge.own{color:var(--gold)} .badge.no{color:var(--dim)}

  .bigbtn{margin-top:20px;width:100%;background:linear-gradient(180deg,#4ea1ff,#2f7fe0);border:none;color:#fff;
    font-weight:800;letter-spacing:4px;font-size:18px;padding:15px;border-radius:12px;cursor:pointer;transition:.12s}
  .bigbtn:hover{filter:brightness(1.1);transform:translateY(-1px)}
  /* 出陣の合言葉ルーム行 */
  .roomrow{display:flex;gap:7px;margin-top:8px}
  .roomin{flex:1;min-width:0;background:var(--panel2);border:1px solid var(--line);color:var(--txt);
    border-radius:8px;padding:9px 11px;font-size:13px;font-family:inherit;outline:none}
  .roomin:focus{border-color:var(--accent)}
  .roomrow .ghostbtn{width:auto;flex:none;margin:0;padding:9px 14px;font-size:12px;letter-spacing:.5px;font-weight:700;white-space:nowrap}
  .bigbtn.danger{background:linear-gradient(180deg,#ff7a7a,#e04444)}
  .ghostbtn{margin-top:10px;width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--txt);
    font-weight:700;letter-spacing:2px;font-size:15px;padding:13px;border-radius:12px;cursor:pointer}
  .ghostbtn:hover{border-color:#3d566f}
  .adbtn{margin-top:14px;width:100%;background:linear-gradient(180deg,#ffd86b,#e6b53a);border:none;color:#241a05;
    font-weight:800;letter-spacing:1px;font-size:16px;padding:14px;border-radius:12px;cursor:pointer}
  .adbtn:disabled{opacity:.45;cursor:not-allowed}

  .stat-preview{display:flex;flex-direction:column;gap:12px;margin-top:4px;width:100%}
  .chip{background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:6px 12px;font-size:13px}
  .chip b{color:var(--accent)}
  /* スペックは表 */
  .spec{width:100%;border-collapse:collapse;font-size:13px}
  .spec th{text-align:left;color:var(--dim);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line)}
  .spec td{text-align:right;color:var(--txt);font-weight:800;padding:6px 8px;border-bottom:1px solid var(--line)}
  .spec tr:last-child th,.spec tr:last-child td{border-bottom:none}
  /* 失う恐れは箇条書き */
  .risk-h{font-size:12px;color:var(--danger);letter-spacing:1px;font-weight:700;margin-bottom:5px}
  .risk ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}
  .risk li{font-size:13px;color:#ff9b9b;padding-left:16px;position:relative}
  .risk li::before{content:"›";position:absolute;left:3px;color:var(--danger);font-weight:800}
  .lostbox{display:inline-block;text-align:left;margin-top:14px;max-width:90%}
  .risk li.none{color:var(--dim)}
  .risk li.none::before{content:"·";color:var(--dim)}

  .gacha{display:flex;gap:10px;align-items:center;margin-top:16px;background:var(--panel2);
    border:1px solid var(--line);border-radius:12px;padding:12px 14px;flex-wrap:wrap}
  .gacha button{background:var(--gold);border:none;color:#1a1205;font-weight:800;letter-spacing:1px;
    padding:8px 16px;border-radius:8px;cursor:pointer}
  .gacha button:disabled{opacity:.4;cursor:not-allowed}
  .gacha .inv{font-size:12px;color:var(--dim)}

  .dead-stats{display:flex;gap:30px;justify-content:center;margin:22px 0 6px}
  .dead-stats .num{font-size:32px;font-weight:800}
  .dead-stats .lbl{font-size:12px;color:var(--dim);letter-spacing:2px}
  .lost{color:var(--danger)} .earned{color:var(--gold)}

  /* ad overlay (simulated) */
  #adOverlay{position:absolute;inset:0;z-index:30;display:none;align-items:center;justify-content:center;
    background:rgba(4,6,10,.96);flex-direction:column;gap:14px}
  #adOverlay.show{display:flex}
  .adbox{width:min(560px,90vw);height:min(320px,52vh);border-radius:14px;display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:10px;
    background:linear-gradient(135deg,#1c2740,#2a1c40);border:1px solid #3a4663}
  .adbox .tag{position:absolute;top:8px;left:12px;font-size:11px;color:#9fb0c7;letter-spacing:1px}
  .adbox .big{font-size:26px;font-weight:800;letter-spacing:2px}
  .adbox .small{font-size:13px;color:#9fb0c7}
  .adclose{background:#2a3140;border:1px solid var(--line);color:var(--txt);font-weight:700;
    padding:10px 22px;border-radius:10px;cursor:pointer}
  .adclose:disabled{opacity:.4;cursor:not-allowed}

  #hud{position:absolute;inset:0;pointer-events:none;z-index:5;font-weight:700;display:none}
  #hud.show{display:block}
  .hud-top{position:absolute;top:14px;left:14px;display:flex;gap:10px}
  .hud-pill{background:rgba(20,24,32,.78);border:1px solid var(--line);border-radius:10px;padding:8px 14px;font-size:14px;letter-spacing:1px}
  .hud-help{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);background:rgba(20,24,32,.7);
    border:1px solid var(--line);border-radius:10px;padding:7px 16px;font-size:12px;color:var(--dim);letter-spacing:1px}
  #toast{position:absolute;top:64px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;
    gap:6px;align-items:center;z-index:50;pointer-events:none}
  .toast-item{background:rgba(20,24,32,.9);border:1px solid var(--line);border-radius:8px;padding:6px 14px;
    font-size:13px;font-weight:700;animation:pop .3s ease}
  @keyframes pop{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}

  /* 出撃中の装備変更パネル（リアルタイム＝ゲームは止まらない） */
  /* チュートリアル手順（下中央のカード） */
  #tutBox{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);z-index:9;display:none;
    width:min(560px,92vw);background:rgba(12,15,20,.94);border:1px solid var(--accent);border-radius:14px;
    padding:16px 20px;box-shadow:0 12px 40px rgba(0,0,0,.6);text-align:center}
  #tutBox.show{display:block;animation:tutPop .3s ease}
  @keyframes tutPop{from{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
  #tutBox .tut-step{font-size:11px;letter-spacing:2px;color:var(--accent);font-weight:800}
  #tutBox .tut-title{font-size:20px;font-weight:800;margin:4px 0 6px;color:var(--txt)}
  #tutBox .tut-body{font-size:14px;line-height:1.6;color:#c8d2de}
  #tutBox .tut-body b{color:var(--accent);font-weight:800}
  #tutBox .tut-skip{margin-top:12px;background:transparent;border:1px solid var(--line);color:var(--dim);
    font-size:12px;padding:6px 16px;border-radius:8px;cursor:pointer}
  #tutBox .tut-skip:hover{border-color:#3d566f;color:var(--txt)}
  #equipPanel{position:absolute;top:60px;left:14px;z-index:7;display:none;flex-direction:column;gap:6px;
    background:rgba(16,20,28,.92);border:1px solid var(--line);border-radius:12px;padding:12px 14px;width:228px}
  #equipPanel.show{display:flex}
  #equipPanel .eq-h{font-size:12px;color:var(--accent);letter-spacing:1px;font-weight:700;margin-bottom:2px}
  #equipPanel .eq-cat{font-size:11px;color:var(--dim);letter-spacing:1px;margin-top:6px}
  #equipPanel .eq-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
  #equipPanel .eq-chip{background:var(--panel2);border:1px solid var(--line);border-radius:7px;padding:5px 9px;
    font-size:12px;font-weight:700;cursor:pointer;transition:.1s}
  #equipPanel .eq-chip:hover{border-color:#3d566f}
  #equipPanel .eq-chip.on{border-color:var(--accent);background:#162338;color:var(--accent)}
