/* Crossplay Checker tool styles. Follows the GameDailys magazine system:
   cool gray surfaces, forest green accents, coral for signal marks,
   monospace data labels, sharp corners. */
.xp-tool{margin-top:26px}
.xp-hero{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:26px 0 22px}
.xp-hero .eyebrow{font:10px var(--type-data);letter-spacing:.18em;text-transform:uppercase;color:var(--site-accent);margin:0 0 10px}
.xp-hero h1{font-size:clamp(28px,4.6vw,44px);line-height:1.15;margin:0 0 12px;font-weight:800}
.xp-hero p{max-width:var(--measure);font-size:14px;line-height:1.9;color:var(--muted);margin:0}

.xp-builder{margin-top:22px;border:1px solid #ccd3bd;border-top:4px solid #2b4e3e;background-color:#e8ecdf;background-image:linear-gradient(90deg,rgba(45,70,50,.035) 1px,transparent 1px),linear-gradient(rgba(45,70,50,.035) 1px,transparent 1px);background-size:16px 16px;padding:20px 20px 16px;box-shadow:4px 4px 0 rgba(54,77,45,.055)}
.xp-builder-label{font:10px var(--type-data);letter-spacing:.12em;text-transform:uppercase;color:#617153;margin:0 0 10px}
.xp-players{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px 12px}
.xp-player{display:flex;align-items:flex-end;gap:8px}
.xp-player label{display:block;flex:1;min-width:0}
.xp-player label span{display:block;font:10px var(--type-data);color:#617153;margin-bottom:5px}
.xp-player select,.xp-builder select{width:100%;border:1px solid #b9c2ae;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;padding:9px 10px;border-radius:0;min-height:40px}
.xp-remove{border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:11px;padding:9px 10px;cursor:pointer;white-space:nowrap}
.xp-remove:hover{color:var(--ink);border-color:var(--ink)}
.xp-controls{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;margin-top:16px;border-top:1px solid #bdc8b1;padding-top:14px}
.xp-field{min-width:150px;flex:0 1 auto}
.xp-field>span{display:block;font:10px var(--type-data);color:#617153;margin-bottom:5px}
.xp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}
.xp-actions button{border:1px solid var(--site-accent);padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer;border-radius:0}
.xp-actions [data-xp-find]{background:var(--site-accent);color:var(--accent-ink)}
.xp-actions [data-xp-reset],[data-xp-share]{background:var(--surface);color:var(--site-accent)}
.xp-actions button:active{transform:translateY(1px)}
.xp-actions button:focus-visible,.xp-player select:focus-visible,.xp-preset:focus-visible,.xp-chipbtn:focus-visible{outline:2px solid var(--site-accent);outline-offset:2px}
.xp-chips{display:flex;flex-wrap:wrap;gap:6px}
.xp-chipbtn{border:1px solid #b9c2ae;background:var(--surface);color:var(--ink);font-size:12px;padding:8px 14px;cursor:pointer;border-radius:0;min-height:36px}
.xp-chipbtn:hover{border-color:var(--site-accent);color:var(--site-accent)}
.xp-chipbtn[aria-checked="true"]{background:var(--site-accent);border-color:var(--site-accent);color:var(--accent-ink);font-weight:700}
.xp-presets{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.xp-presets>span{font:10px var(--type-data);color:#617153}
.xp-preset{border:1px solid #b9c2ae;background:var(--surface);font-size:11px;padding:7px 12px;cursor:pointer;color:var(--ink)}
.xp-preset:hover{border-color:var(--site-accent);color:var(--site-accent)}

.xp-summary{font:11px var(--type-data);color:var(--muted);margin:26px 0 0}
.xp-section{margin-top:22px}
.xp-h3{font-size:16px;font-weight:800;margin:0 0 14px;display:flex;align-items:center;gap:10px}
.xp-h3 span{font:11px var(--type-data);font-weight:400;color:var(--muted)}
.xp-h3:before{content:'';width:9px;height:9px;flex:0 0 9px;border:2px solid var(--site-accent);transform:rotate(45deg)}
.xp-h3-ok:before{background:var(--site-accent)}
.xp-h3-cond:before{border-color:#b8832f}
.xp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.xp-grid-muted{opacity:.92}
.xp-card{display:flex;flex-direction:column;border:1px solid var(--line);border-top:2px solid var(--line);background:var(--surface);min-width:0;overflow:hidden}
.xp-card-ok{border-top-color:var(--site-accent)}
.xp-card-cond{border-top-color:#b8832f}
.xp-card-no,.xp-card-unk{border-top-style:dashed}
.xp-cover{position:relative;width:100%;aspect-ratio:460/215;background:var(--cover-empty);background-image:linear-gradient(135deg,rgba(43,78,62,.16),transparent 60%),linear-gradient(90deg,rgba(45,70,50,.08) 1px,transparent 1px),linear-gradient(rgba(45,70,50,.08) 1px,transparent 1px);background-size:auto,10px 10px,10px 10px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--line)}
.xp-cover-initials{font-family:var(--type-display);font-size:30px;letter-spacing:.04em;color:#3d4a39;opacity:.8;text-align:center;line-height:1.15;padding:0 10px}
.xp-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.xp-card-body{flex:1;min-width:0;padding:14px;display:flex;flex-direction:column;row-gap:12px}
.xp-card-head h3{font-size:15px;line-height:1.4;margin:0;font-weight:800}
.xp-alt{font-weight:400;font-size:11px;color:var(--muted)}
.xp-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.xp-chip{font:9px var(--type-data);border:1px solid var(--line);padding:3px 8px;color:var(--muted);background:transparent}
.xp-chip-ok{color:var(--site-accent);border-color:var(--site-accent)}
.xp-chip-cond{color:#b8832f;border-color:#b8832f}
.xp-chip-dim{opacity:.8}
.xp-platforms{font-size:11px;color:var(--muted);margin:0;line-height:1.7}
.xp-conds{margin:0;padding:0;list-style:none}
.xp-conds li{font-size:11px;line-height:1.7;color:#617153;padding-left:14px;position:relative}
.xp-conds li:before{content:'';position:absolute;left:0;top:9px;width:5px;height:5px;background:#b8832f}
.xp-why{font-size:11px;line-height:1.7;color:#a34a33;margin:0}
.xp-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line)}
.xp-verified{font:9px var(--type-data);color:var(--muted)}
.xp-details summary{font-size:11px;color:var(--site-accent);cursor:pointer;font-weight:600}
.xp-details[open] summary{margin-bottom:10px}
.xp-detail-grid{display:grid;gap:12px;padding:12px 0 4px}
.xp-detail-block h4{font:9px var(--type-data);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.xp-detail-block p,.xp-detail-block li{font-size:11px;line-height:1.8;color:var(--ink);margin:0}
.xp-detail-block ul{margin:0;padding-left:16px}
.xp-detail-block a{color:var(--site-accent)}
.xp-collapsed{margin-top:22px;border-top:1px solid var(--line);padding-top:14px}
.xp-collapsed summary{font-size:12px;color:var(--muted);cursor:pointer;font-weight:600}
.xp-collapsed summary span{font-family:var(--type-data);font-weight:400}
.xp-collapsed .xp-grid{margin-top:16px}

.xp-seo{border-top:2px solid var(--ink);margin-top:48px;padding-top:28px}
.xp-seo section{margin-bottom:34px}
.xp-seo h2{font-size:20px;line-height:1.4;margin:0 0 14px}
.xp-seo h3{font-size:15px;margin:22px 0 8px}
.xp-seo p,.xp-seo li{font-size:13px;line-height:1.95;color:var(--ink)}
.xp-seo p{color:var(--muted)}
.xp-seo .xp-popular{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 28px;padding:0;list-style:none}
.xp-seo .xp-popular li{border-bottom:1px solid var(--line);padding:10px 0;font-size:12px}
.xp-seo .xp-popular a{color:var(--ink);font-weight:700}
.xp-seo .xp-popular a:hover{color:var(--site-accent)}
.xp-seo .xp-popular span{color:var(--muted);font-size:10px;font-family:var(--type-data);display:block;margin-top:3px}
.xp-faq details{border-bottom:1px solid var(--line);padding:14px 0}
.xp-faq summary{font-size:13px;font-weight:700;cursor:pointer}
.xp-faq p{margin:10px 0 0}
.xp-news-link{display:inline-block;margin-top:4px;font-size:12px;font-weight:700;color:var(--site-accent)}

@media(prefers-color-scheme:dark){
  .xp-builder{background-color:#2d3529;border-color:#49563d}
  .xp-builder-label,.xp-player label span,.xp-field>span,.xp-presets>span{color:#b4c3a4}
  .xp-player select,.xp-builder select,.xp-remove,.xp-preset{background:#272b25;border-color:#4e5d41}
  .xp-controls{border-color:#4e5d41}
  .xp-cover span{color:#c9d4ba}
  .xp-conds li{color:#b4c3a4}
}
@media(max-width:780px){
  .xp-builder{padding:16px 14px}
  .xp-players{grid-template-columns:1fr}
  .xp-actions{margin-left:0;width:100%}
  .xp-actions button{flex:1}
  .xp-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:no-preference){
  .xp-card{transition:border-color .15s ease}
  .xp-card:hover{border-color:var(--site-accent)}
  .xp-preset{transition:border-color .15s ease,color .15s ease}
}
