
  /* ── 遊戯王ニューロン風の配色と造形 ──
     濃紺の地に六角形の格子、シアンの縁と発光。
     ゴールドの有無だけは金色で示して、UIの色と役割を分ける。 */
  :root{
    --deep:#04101c;
    --bg:#071726;
    --bg2:#0b2338;
    --panel:#0e2b45;
    --panel2:#143b5c;
    --line:#2a6b91;
    --line2:#194762;
    --cy:#4ad9f0;
    --cy2:#2a9dc0;
    --cy3:#1b6b8c;
    --gold:#f2ca55;
    --gold2:#c79a26;
    --gold3:#7a5f18;
    --text:#e8f5fb;
    --dim:#95bcd2;
    --dim2:#6a90a7;
    --bad:#ff7a7a;
    --cut:polygon(0 0, calc(100% - 13px) 0, 100% 13px, 100% 100%, 13px 100%, 0 calc(100% - 13px));
    --hex:polygon(17px 0, calc(100% - 17px) 0, 100% 50%, calc(100% - 17px) 100%, 17px 100%, 0 50%);
  }
  *{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
  html,body{margin:0;padding:0;min-height:100%;}
  body{
    background:
      radial-gradient(120% 60% at 50% 0%, rgba(42,157,192,.16), transparent 62%),
      radial-gradient(90% 50% at 50% 100%, rgba(42,157,192,.10), transparent 60%),
      url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27102.00%27%20height%3D%2758.89%27%20viewBox%3D%270%200%20102.00%2058.89%27%3E%3Cpath%20d%3D%27M34.00%200.00L17.00%2029.44L-17.00%2029.44L-34.00%200.00L-17.00%20-29.44L17.00%20-29.44ZM34.00%2058.89L17.00%2088.33L-17.00%2088.33L-34.00%2058.89L-17.00%2029.44L17.00%2029.44ZM136.00%200.00L119.00%2029.44L85.00%2029.44L68.00%200.00L85.00%20-29.44L119.00%20-29.44ZM136.00%2058.89L119.00%2088.33L85.00%2088.33L68.00%2058.89L85.00%2029.44L119.00%2029.44ZM85.00%2029.44L68.00%2058.89L34.00%2058.89L17.00%2029.44L34.00%200.00L68.00%200.00ZM85.00%20-29.44L68.00%200.00L34.00%200.00L17.00%20-29.44L34.00%20-58.89L68.00%20-58.89ZM85.00%2088.33L68.00%20117.78L34.00%20117.78L17.00%2088.33L34.00%2058.89L68.00%2058.89Z%27%20fill%3D%27none%27%20stroke%3D%27%2312374f%27%20stroke-width%3D%271%27%2F%3E%3C%2Fsvg%3E"),
      linear-gradient(180deg,var(--bg) 0%, var(--deep) 100%);
    background-attachment:fixed;
    color:var(--text);
    font-family:'Noto Sans JP',system-ui,sans-serif;
    font-size:15px;line-height:1.7;
    padding:0;
  }
  /* 斜めのストライプ。ニューロンの背景にある装飾 */
  body::before{
    content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
    background:repeating-linear-gradient(115deg,
      rgba(74,217,240,.030) 0 2px, transparent 2px 46px);
  }
  .wrap{max-width:760px;margin:0 auto;padding:0 14px;position:relative;z-index:1;}

  /* ── 上部バー ── */
  header{
    position:sticky;top:0;z-index:30;
    background:linear-gradient(180deg,#020a12 0%, #04101c 78%, rgba(4,16,28,.86) 100%);
    border-bottom:1px solid var(--line2);
    padding:max(8px,env(safe-area-inset-top)) 0 0;
    box-shadow:0 6px 18px rgba(0,0,0,.5);
  }
  .plate{
    width:max-content;max-width:92%;margin:0 auto;padding:7px 30px 6px;
    background:linear-gradient(180deg,var(--panel2),var(--panel));
    clip-path:var(--hex);position:relative;
  }
  .plate::before{
    content:"";position:absolute;inset:-2px;clip-path:var(--hex);
    background:linear-gradient(180deg,var(--cy),var(--cy3));z-index:-1;
  }
  h1{
    margin:0;font-family:'Chakra Petch','Noto Sans JP',sans-serif;
    font-size:16px;font-weight:700;letter-spacing:.12em;text-align:center;
    color:#fff;text-shadow:0 0 12px rgba(74,217,240,.6);white-space:nowrap;
  }
  h1 .g{color:var(--gold);text-shadow:0 0 12px rgba(242,202,85,.45);}
  /* スクロールしたらヘッダーを縮めて、見える範囲を広げる */
  header .sub,header .dots{
    overflow:hidden;transition:max-height .22s ease, opacity .18s ease, margin .22s ease;
    max-height:30px;opacity:1;
  }
  header.min .sub,header.min .dots{max-height:0;opacity:0;margin-top:0;margin-bottom:0;padding-bottom:0;}
  header.min .plate{padding-top:4px;padding-bottom:3px;}
  header.min h1{font-size:13.5px;}
  header{transition:padding .22s ease;}
  .plate{transition:padding .22s ease;}
  h1{transition:font-size .22s ease;}
  .sub{
    margin:5px 0 8px;font-size:10.5px;text-align:center;color:var(--dim2);
    letter-spacing:.06em;font-family:'Chakra Petch','Noto Sans JP',sans-serif;
  }
  .sub b{color:var(--cy);font-weight:600;}

  /* 小さな四角を並べたアクセント。ニューロンのボタン下の印 */
  .dots{display:flex;gap:3px;justify-content:center;padding-bottom:7px;}
  .dots i{width:5px;height:3px;background:var(--cy3);display:block;}
  .dots i:nth-child(-n+3){background:var(--cy);box-shadow:0 0 5px var(--cy);}

  /* ── 表示の切り替え ── */
  .view{display:none;padding-bottom:96px;}
  .view.on{display:block;}

  /* ── 検索 ── */
  .searchrow{display:flex;gap:8px;margin:16px 0 12px;}
  .searchbox{position:relative;flex:1;}
  #q{
    width:100%;height:46px;padding:0 40px 0 14px;
    background:rgba(9,32,52,.92);color:var(--text);
    border:1px solid var(--line2);border-left:3px solid var(--cy3);
    font-size:16px;font-family:inherit;outline:none;
    transition:border-color .15s,box-shadow .15s;
  }
  #q::placeholder{color:var(--dim2);}
  #q:focus{border-color:var(--line);border-left-color:var(--cy);
    box-shadow:0 0 0 3px rgba(74,217,240,.14), inset 0 0 18px rgba(74,217,240,.07);}
  #clr{
    position:absolute;right:2px;top:0;width:38px;height:46px;
    background:none;border:none;color:var(--dim2);font-size:20px;cursor:pointer;
    opacity:0;pointer-events:none;
  }
  #clr.on{opacity:1;pointer-events:auto;}
  .gobtn{
    height:46px;padding:0 26px;border:none;cursor:pointer;
    background:linear-gradient(180deg,var(--cy),var(--cy2));
    color:#04222e;font-weight:700;font-size:14px;letter-spacing:.08em;
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;
    clip-path:var(--hex);position:relative;
    filter:drop-shadow(0 0 9px rgba(74,217,240,.45));
  }
  .gobtn:active{filter:brightness(1.15) drop-shadow(0 0 9px rgba(74,217,240,.45));}

  .filters{
    display:flex;gap:6px;overflow-x:auto;padding:0 0 10px;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
    -webkit-mask-image:linear-gradient(90deg,#000 0, #000 90%, transparent 100%);
    mask-image:linear-gradient(90deg,#000 0, #000 90%, transparent 100%);
  }
  .filters::-webkit-scrollbar{display:none;}
  .chip{
    flex:0 0 auto;padding:6px 12px;font-size:11.5px;cursor:pointer;
    background:linear-gradient(180deg,rgba(20,59,92,.8),rgba(14,43,69,.8));
    border:1px solid var(--line2);color:var(--dim);
    font-family:inherit;letter-spacing:.03em;white-space:nowrap;
    clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
  }
  .chip .n{margin-left:6px;color:var(--dim2);font-size:10.5px;}
  .chip.on{
    border-color:var(--cy);color:#fff;
    background:linear-gradient(180deg,rgba(42,157,192,.55),rgba(20,80,110,.55));
    box-shadow:0 0 12px rgba(74,217,240,.25);
  }
  .chip.on .n{color:var(--cy);}
  .count{font-size:11px;color:var(--dim2);margin:0 0 12px;letter-spacing:.04em;
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;}
  .count b{color:var(--cy);font-weight:700;font-size:13px;}

  /* ── 案内・該当なし ── */
  .start,.none{
    text-align:center;padding:32px 18px;color:var(--dim2);font-size:12.5px;line-height:2.1;
    background:linear-gradient(180deg,rgba(14,43,69,.6),rgba(7,23,38,.6));
    border:1px solid var(--line2);clip-path:var(--cut);
  }
  .start b,.none b{display:block;color:var(--cy);font-size:15px;margin-bottom:8px;letter-spacing:.05em;}
  .start code{
    display:inline-block;background:rgba(74,217,240,.1);border:1px solid var(--line2);
    color:var(--cy);padding:2px 8px;font-size:12px;margin:3px 2px;font-family:inherit;
  }
  .none u{text-decoration:none;color:var(--gold);}
  .none .hint{margin-top:10px;font-size:11px;color:var(--dim2);}

  /* ── 結果の一覧 ── */
  details.card{
    background:linear-gradient(180deg,rgba(14,43,69,.82),rgba(8,26,42,.82));
    border:1px solid var(--line2);border-left:3px solid var(--cy3);
    margin-bottom:8px;position:relative;
  }
  details.card[open]{border-left-color:var(--cy);box-shadow:0 0 18px rgba(74,217,240,.12);}
  details.card summary{list-style:none;cursor:pointer;padding:11px 13px;}
  details.card summary::-webkit-details-marker{display:none;}
  details.card summary::after{
    content:"";position:absolute;right:13px;top:16px;
    width:7px;height:7px;border-right:2px solid var(--cy2);border-bottom:2px solid var(--cy2);
    transform:rotate(45deg);transition:transform .18s;
  }
  details.card[open] summary::after{transform:rotate(-135deg);border-color:var(--cy);}
  .head{display:flex;gap:11px;align-items:flex-start;}
  .thumb{flex:0 0 52px;}
  .thumb img{width:52px;height:auto;display:block;border:1px solid var(--line2);}
  .txtcol{flex:1;min-width:0;padding-right:18px;}
  .nm{font-weight:700;font-size:14.5px;line-height:1.45;}
  .yo{font-size:11px;color:var(--dim2);margin-top:1px;}
  .en{font-size:12.5px;color:var(--dim);margin-top:2px;letter-spacing:.02em;
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;}
  mark{background:rgba(242,202,85,.24);color:var(--gold);padding:0 1px;}
  .tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;}
  .tag{
    font-size:10.5px;padding:2px 7px;letter-spacing:.03em;
    background:rgba(242,202,85,.13);border:1px solid rgba(242,202,85,.36);color:var(--gold);
  }
  .tag.l{background:transparent;border-color:var(--line2);color:var(--dim2);font-size:10px;padding:2px 6px;}
  .detail{padding:0 13px 14px;border-top:1px solid var(--line2);}
  .big{margin:13px 0;text-align:center;}
  .big img{max-width:216px;width:100%;height:auto;border:1px solid var(--line);
    box-shadow:0 0 22px rgba(74,217,240,.14);}
  .imgcap{font-size:10.5px;color:var(--dim2);margin-top:6px;letter-spacing:.03em;}
  .lang{margin-top:12px;}
  .lang h4{
    margin:0 0 5px;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--cy);
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;
  }
  .lang table{width:100%;border-collapse:collapse;font-size:11.5px;}
  .lang td{padding:4px 6px;border-top:1px solid var(--line2);vertical-align:top;color:var(--dim);}
  .lang td.c{white-space:nowrap;color:var(--cy);font-family:'Chakra Petch',monospace;}
  .lang td.r{white-space:nowrap;color:var(--gold);text-align:right;font-size:10.5px;}
  .lang td.s .dt{color:var(--dim2);}
  .more{
    display:block;width:100%;margin-top:12px;padding:12px;cursor:pointer;
    background:linear-gradient(180deg,rgba(20,59,92,.8),rgba(14,43,69,.8));
    border:1px solid var(--line2);color:var(--cy);font-size:12.5px;
    font-family:inherit;letter-spacing:.06em;clip-path:var(--cut);
  }

  /* ── デッキ判定 ── */
  .lead{margin:16px 0 16px;font-size:12px;color:var(--dim2);line-height:2;}
  #dzone{
    display:block;width:100%;padding:30px 20px;text-align:center;cursor:pointer;
    background:linear-gradient(168deg,#2ba7cb 0%, #1a7ba1 48%, #12587a 100%);
    color:rgba(255,255,255,.86);font-size:11.5px;line-height:1.9;position:relative;
    clip-path:var(--hex);transition:filter .15s;
    filter:drop-shadow(0 0 14px rgba(74,217,240,.34));
  }
  #dzone::before{
    content:"";position:absolute;inset:-2px;clip-path:var(--hex);
    background:linear-gradient(180deg,#8ceaff,var(--cy2) 45%,var(--cy3));z-index:-1;
  }
  /* ニューロンのタイルにある、右下の小さな四角 */
  #dzone::after{
    content:"";position:absolute;right:20px;bottom:11px;width:7px;height:7px;
    background:rgba(255,255,255,.85);box-shadow:0 0 7px rgba(255,255,255,.7);
  }
  #dzone b{
    display:block;font-size:16px;color:#fff;margin-bottom:5px;font-weight:700;
    letter-spacing:.1em;text-shadow:0 0 14px rgba(74,217,240,.7);
  }
  #dzone:hover,#dzone.on{filter:brightness(1.22);}
  #dzone .ic{
    display:block;width:34px;height:34px;margin:0 auto 8px;opacity:.9;
  }
  #dfile{display:none;}
  #dstat{
    margin:14px 0 0;font-size:12px;color:var(--cy);min-height:1.5em;text-align:center;
    letter-spacing:.04em;font-family:'Chakra Petch','Noto Sans JP',sans-serif;
  }
  #dres{margin-top:20px;}
  .dsum{
    text-align:center;padding:20px 16px 18px;position:relative;
    background:linear-gradient(180deg,rgba(20,59,92,.75),rgba(8,26,42,.75));
    border:1px solid var(--line2);clip-path:var(--cut);
  }
  .dsum-big{font-size:14px;color:var(--dim);font-family:'Chakra Petch','Noto Sans JP',sans-serif;}
  .dsum-big b{
    font-size:46px;line-height:1;margin-right:3px;font-weight:700;
    color:var(--gold);text-shadow:0 0 20px rgba(242,202,85,.45);
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;
  }
  .dsum-sub{font-size:12px;color:var(--dim2);margin-top:4px;}
  .dbar{height:7px;background:rgba(255,255,255,.07);margin:16px auto 0;max-width:420px;
    border:1px solid var(--line2);overflow:hidden;}
  .dbar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold2),var(--gold));
    box-shadow:0 0 12px rgba(242,202,85,.5);}
  .dsecs{display:flex;gap:7px;margin:14px 0 4px;}
  .dsec{
    flex:1 1 0;padding:10px 6px;text-align:center;font-size:11.5px;color:var(--dim2);
    background:linear-gradient(180deg,rgba(20,59,92,.7),rgba(10,32,52,.7));
    border:1px solid var(--line2);
    clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);
  }
  .dsec span{display:block;font-size:10px;letter-spacing:.05em;margin-bottom:3px;color:var(--cy2);}
  .dsec b{font-size:21px;color:var(--gold);font-weight:700;
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;}
  .dcanvas{margin:20px 0 6px;}
  .dcanvas canvas{width:100%;height:auto;border:1px solid var(--line);display:block;
    box-shadow:0 0 22px rgba(74,217,240,.10);}
  .dlistwrap{margin-top:22px;}
  .dh{
    margin:0 0 9px;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--cy);
    border-bottom:1px solid var(--line2);padding-bottom:6px;position:relative;
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;
  }
  .dh::after{content:"";position:absolute;left:0;bottom:-1px;width:46px;height:2px;
    background:var(--cy);box-shadow:0 0 8px var(--cy);}
  .dlab{margin:11px 0 6px;font-size:11px;letter-spacing:.05em;}
  .dlab.ok{color:var(--gold);} .dlab.ng{color:var(--dim2);}
  .dlist{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:5px;}
  .dlist li{
    font-size:12px;border:1px solid var(--line2);
    background:rgba(14,43,69,.7);color:var(--dim);
    clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);
  }
  .dlist li:not(:has(.dgo)){padding:4px 9px;}
  .dlist.ok li{border-color:rgba(242,202,85,.4);background:rgba(242,202,85,.11);color:var(--gold);}
  .dlist li em{font-style:normal;opacity:.65;font-size:11px;}
  /* 押すと検索タブでそのカードを引き直せる */
  .dgo{
    display:flex;align-items:center;gap:6px;
    padding:6px 9px 6px 10px;min-height:32px;
    background:none;border:none;color:inherit;font:inherit;font-size:12px;
    cursor:pointer;letter-spacing:.01em;
  }
  .dgo i{
    flex:0 0 auto;width:6px;height:6px;display:block;opacity:.55;
    border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;
    transform:rotate(45deg);transition:transform .15s,opacity .15s;
  }
  .dlist li:active,.dlist li:hover{border-color:var(--cy);background:rgba(74,217,240,.13);}
  .dlist.ok li:active,.dlist.ok li:hover{border-color:var(--gold);background:rgba(242,202,85,.2);}
  .dlist li:hover .dgo i{opacity:1;transform:rotate(45deg) translate(1px,-1px);}

  /* ── 下部のタブ ── */
  .tabbar{
    position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;
    background:linear-gradient(180deg,rgba(4,16,28,.94),#020a12);
    border-top:1px solid var(--line);
    padding-bottom:env(safe-area-inset-bottom);
    box-shadow:0 -6px 20px rgba(0,0,0,.55);
    backdrop-filter:blur(6px);
  }
  .tab{
    flex:1;background:none;border:none;cursor:pointer;position:relative;
    padding:9px 4px 8px;color:var(--dim2);font-family:inherit;
    display:flex;flex-direction:column;align-items:center;gap:3px;
    min-height:56px;justify-content:center;
  }
  .tab svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.6;
    stroke-linecap:round;stroke-linejoin:round;}
  .tab span{font-size:10.5px;letter-spacing:.08em;font-weight:500;}
  .tab.on{color:var(--cy);}
  .tab.on svg{filter:drop-shadow(0 0 6px rgba(74,217,240,.75));}
  .tab.on::before{
    content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
    width:56px;height:2px;background:var(--cy);box-shadow:0 0 10px var(--cy);
  }
  .tab.on::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg,rgba(74,217,240,.16),transparent 70%);
  }

  footer{
    margin-top:34px;padding:16px 0 24px;border-top:1px solid var(--line2);
    font-size:10.5px;color:var(--dim2);line-height:2;
  }
  footer b{color:var(--gold);font-weight:600;}
  footer a{color:var(--cy);}
  @media (max-width:420px){
    h1{font-size:14px;letter-spacing:.08em;}
    .plate{padding:7px 22px 6px;}
    .dsum-big b{font-size:40px;}
  }
  @media (prefers-reduced-motion:reduce){*{transition:none!important;}}


  /* ===== ここから全レアリティ版の追加分 ===== */
  /* 言語切り替え（右上） */
  .langsw{position:absolute;right:10px;top:max(10px,env(safe-area-inset-top));display:flex;gap:4px;z-index:2;}
  .langsw a{font-size:10.5px;letter-spacing:.08em;padding:3px 9px;color:var(--dim2);text-decoration:none;
    border:1px solid var(--line2);background:rgba(9,32,52,.9);font-family:'Chakra Petch','Noto Sans JP',sans-serif;
    clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);}
  .langsw a.on{color:#04222e;background:linear-gradient(180deg,var(--cy),var(--cy2));border-color:var(--cy);}
  header .plate a{color:inherit;text-decoration:none;}
  @media (max-width:520px){ .langsw{top:auto;bottom:6px;right:8px;} }

  /* 絞り込みの2段目（言語） */
  .filters.lg{padding-bottom:12px;}
  .chip.l.on{border-color:var(--gold);background:linear-gradient(180deg,rgba(199,154,38,.45),rgba(122,95,24,.45));box-shadow:0 0 12px rgba(242,202,85,.22);}
  .chip.l.on .n{color:var(--gold);}

  /* レアリティのタグ：金枠系だけ金色、ほかはシアン系で系統ごとに少しずつ変える */
  .tag{background:rgba(74,217,240,.10);border-color:rgba(74,217,240,.34);color:var(--cy);}
  .tag.f-gold{background:rgba(242,202,85,.13);border-color:rgba(242,202,85,.36);color:var(--gold);}
  .tag.f-secret{background:rgba(214,160,255,.12);border-color:rgba(214,160,255,.40);color:#e3c6ff;}
  .tag.f-ultra{background:rgba(255,196,120,.10);border-color:rgba(255,196,120,.34);color:#ffd49a;}
  .tag.f-mill{background:rgba(222,160,110,.12);border-color:rgba(222,160,110,.38);color:#f0bf92;}
  .tag.f-plain{background:transparent;border-color:var(--line2);color:var(--dim);}
  .lang td.r .tag{font-size:10px;padding:1px 6px;}
  .lang td.go{white-space:nowrap;text-align:right;}
  .lang td.go a{font-size:10.5px;color:var(--cy2);}
  .lang .note{color:var(--dim2);font-size:10.5px;}

  /* 売る・買う */
  .money{margin:14px 0 4px;}
  .money h4{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--gold);
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;display:flex;align-items:center;gap:6px;}
  .pr{font-size:9.5px;letter-spacing:.08em;color:#04222e;background:var(--gold);padding:0 5px;font-weight:700;}
  .buy{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;}
  .buy a{display:block;padding:8px 10px;text-decoration:none;color:var(--text);font-size:12px;line-height:1.5;
    background:linear-gradient(180deg,rgba(20,59,92,.85),rgba(14,43,69,.85));border:1px solid var(--line2);
    clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);}
  .buy a small{display:block;color:var(--dim2);font-size:10.5px;}
  .buy a.sell{border-color:rgba(242,202,85,.55);background:linear-gradient(180deg,rgba(122,95,24,.55),rgba(60,46,10,.55));}
  .buy a.sell b{color:var(--gold);}
  .buy a:hover{border-color:var(--cy);}
  .permalink{display:inline-block;margin-top:12px;font-size:11.5px;color:var(--cy);}

  /* 広告枠：高さを先に確保してずれを防ぐ */
  .ad{margin:16px 0;min-height:100px;display:grid;place-items:center;border:1px solid var(--line2);
    background:rgba(9,32,52,.6);clip-path:var(--cut);}

  /* 個別ページ（カード・レアリティ別・運営者情報） */
  .crumb{margin:14px 0 10px;font-size:11px;color:var(--dim2);letter-spacing:.04em;}
  .crumb a{color:var(--cy2);text-decoration:none;}
  .pagehead{margin:6px 0 12px;}
  .pagehead h2{margin:0;font-size:20px;line-height:1.4;}
  .pagehead p{margin:6px 0 0;font-size:12px;color:var(--dim2);line-height:1.9;}
  details.card.static summary{cursor:default;}
  details.card.static summary::after{display:none;}
  a.row{display:block;text-decoration:none;color:inherit;padding:10px 13px;margin-bottom:6px;
    background:linear-gradient(180deg,rgba(14,43,69,.82),rgba(8,26,42,.82));
    border:1px solid var(--line2);border-left:3px solid var(--cy3);}
  a.row:hover{border-left-color:var(--cy);}
  a.row .nm{font-size:14px;}
  .pager{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0;}
  .pager a,.pager b{font-size:11.5px;padding:4px 10px;border:1px solid var(--line2);color:var(--dim);text-decoration:none;}
  .pager b{border-color:var(--cy);color:var(--cy);}
  .prose{font-size:13px;color:var(--dim);line-height:2;}
  .prose h3{font-size:12px;letter-spacing:.1em;color:var(--cy);margin:22px 0 4px;}
  .tabbar a.tab{text-decoration:none;}

  /* デッキ判定：条件の選択 */
  .dctl{margin:16px 0 14px;}
  .dctl label.t{display:block;font-size:11px;letter-spacing:.08em;color:var(--cy);margin:0 0 6px;
    font-family:'Chakra Petch','Noto Sans JP',sans-serif;}
  .dctl select{width:100%;height:42px;padding:0 12px;background:rgba(9,32,52,.92);color:var(--text);
    border:1px solid var(--line2);border-left:3px solid var(--cy3);font:inherit;font-size:14px;margin-bottom:12px;}
  .dctl .filters{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none;}

  /* 検索結果：押すとカードページへ */
  a.card{display:block;text-decoration:none;color:inherit;position:relative;margin-bottom:8px;padding:11px 34px 11px 13px;
    background:linear-gradient(180deg,rgba(14,43,69,.82),rgba(8,26,42,.82));
    border:1px solid var(--line2);border-left:3px solid var(--cy3);}
  a.card:hover,a.card:active{border-left-color:var(--cy);box-shadow:0 0 18px rgba(74,217,240,.12);}
  a.card::after{content:"";position:absolute;right:15px;top:50%;width:7px;height:7px;
    border-right:2px solid var(--cy2);border-top:2px solid var(--cy2);transform:translateY(-50%) rotate(45deg);}
  a.card:hover::after{border-color:var(--cy);}

  /* カードページ */
  .cardhead{margin:4px 0 6px;padding:13px 14px;border:1px solid var(--line2);border-left:3px solid var(--cy);
    background:linear-gradient(180deg,rgba(14,43,69,.82),rgba(8,26,42,.82));box-shadow:0 0 18px rgba(74,217,240,.12);}
  .cardhead .nm{margin:0;font-size:19px;line-height:1.4;}
  .count b{color:var(--cy);}
  .clrbtn{margin-left:8px;font:inherit;font-size:10.5px;color:var(--cy2);background:none;border:1px solid var(--line2);padding:2px 8px;cursor:pointer;}
  .prints .lang{margin-top:14px;}
  .hide{display:none!important;}
  #drf{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none;}

  /* チップを横スクロールさせず折り返す（カードページの2段と、検索の言語段） */
  #crf,#clf,#lf{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none;}

  /* 収録の行：型番｜レアリティ｜店 を全言語で同じ幅に揃え、2行目にセット名と発売日 */
  .pts{border-top:1px solid var(--line2);}
  .pt{display:grid;grid-template-columns:8.8em minmax(0,1fr) 4.6em;column-gap:8px;row-gap:3px;align-items:center;
    padding:7px 4px;border-bottom:1px solid var(--line2);font-size:11.5px;}
  .pt .c{color:var(--cy);font-family:'Chakra Petch',monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .pt .r{min-width:0;}
  .pt .r .tag{display:inline-block;max-width:100%;white-space:normal;line-height:1.4;}
  .pt .go{font-size:10.5px;white-space:nowrap;}
  .pt .go a{color:var(--cy2);}
  .pt .s{grid-column:1 / -1;color:var(--dim);line-height:1.55;}
  .pt .s .dt{color:var(--dim2);}
  .pt .note{color:var(--dim2);font-size:10.5px;}

  /* 行の右端の「探す」ボタンと、押すと出る店のメニュー */
  .pt{position:relative;}
  .shopbtn{font:inherit;font-size:10.5px;letter-spacing:.04em;color:var(--cy);cursor:pointer;padding:3px 9px;
    background:rgba(9,32,52,.9);border:1px solid var(--line2);
    clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);}
  .shopbtn:hover,.shopbtn[aria-expanded="true"]{border-color:var(--cy);background:rgba(42,157,192,.3);color:#fff;}
  .shopmenu{position:absolute;right:4px;top:calc(100% - 4px);z-index:20;min-width:170px;padding:6px;
    background:linear-gradient(180deg,#0f2f4c,#0a2238);border:1px solid var(--cy2);
    box-shadow:0 10px 26px rgba(0,0,0,.55),0 0 14px rgba(74,217,240,.18);}
  .shopmenu-h{font-size:10px;color:var(--dim2);padding:2px 6px 6px;letter-spacing:.05em;font-family:'Chakra Petch',monospace;}
  .shopmenu a{display:block;padding:8px 10px;font-size:12.5px;color:var(--text);text-decoration:none;border-top:1px solid var(--line2);}
  .shopmenu a:hover{background:rgba(74,217,240,.12);color:var(--cy);}

  /* 右端：いちばん使う店のボタン＋その下に「ほかの店」 */
  .pt{grid-template-columns:8.8em minmax(0,1fr) 6.4em;}
  .pt .go{display:flex;flex-direction:column;align-items:stretch;gap:3px;}
  .pt .go a.shop1{display:block;text-align:center;font-size:11px;font-weight:600;letter-spacing:.02em;color:#04222e;text-decoration:none;
    padding:4px 6px;background:linear-gradient(180deg,var(--cy),var(--cy2));
    clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);}
  .pt .go a.shop1:hover{filter:brightness(1.12);}
  .pt .go .shopbtn{background:none;border:none;clip-path:none;padding:1px 2px;font-size:10px;color:var(--dim2);text-align:center;}
  .pt .go .shopbtn:hover,.pt .go .shopbtn[aria-expanded="true"]{background:none;color:var(--cy);}
