/* Keep Korean names whole; narrow screens show labelled records. */
body{word-break:keep-all;overflow-wrap:break-word}
table{table-layout:auto}
thead th,tbody th,.name-cell{white-space:nowrap}
thead th{min-width:110px}
td.name-cell{min-width:155px}
.job-family h3{border-left:4px solid var(--green);padding-left:12px;margin-top:28px}
.job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.job-figure{margin:0;border:1px solid var(--line);background:#faf9f4;text-align:center;min-width:0}
.job-figure>a{display:block}
.job-figure img{display:block;width:100%;height:240px;object-fit:contain}
.job-figure figcaption{background:white;padding:12px 8px;border-top:1px solid var(--line);font-size:13px}
.job-figure strong{display:block;font-size:17px}
.job-figure .sub{min-height:42px;margin:4px 0}
.job-figure figcaption a{display:inline-block;font-size:12px}
.card-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:17px;background:#f0f7f4;border:1px solid var(--line)}
.card-filters label{display:grid;gap:4px;font-size:12px;font-weight:700;flex:1 1 145px;min-width:0}
.card-filters input,.card-filters select,.card-filters button{font:inherit;font-size:14px;border:1px solid #9caeaa;border-radius:3px;background:#fff;color:#27314a;min-height:42px;padding:8px 10px;width:100%;min-width:0}
.card-filters .card-search{flex-basis:230px}
.card-filters button{width:auto;cursor:pointer;flex:0 0 auto}
.card-filters :focus-visible{outline:3px solid #d68d16;outline-offset:2px}
.card-tag-filters{grid-column:1/-1;margin:0;padding:10px 12px;border:1px solid #c8d9d3;background:#fff}
.card-tag-filters legend{padding:0 5px;font-size:12px;color:#496259}
.card-tag-filters>div{display:flex;flex-wrap:wrap;gap:4px 10px;max-height:88px;overflow:auto}
.card-tag-filters label{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;font-size:12px;font-weight:600;white-space:nowrap}
.card-tag-filters input{min-height:0;width:auto}
.wiki-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0;font-size:12px}
.wiki-card-tag{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid #91b6a9;border-radius:999px;background:#f1faf5;color:#31594d;font-weight:700;line-height:1.3}
.wiki-card-tag--more{border-color:#c4a269;background:#fff5df;color:#765527}
.game-card>.wiki-card-tags{position:absolute;left:7%;right:7%;bottom:3%;justify-content:center;margin:0;overflow:visible;z-index:2}
.game-card>.wiki-card-tags .wiki-card-tag{max-width:31%;overflow:visible;text-overflow:clip;padding:1px 3px;font-size:clamp(8px,4cqw,11px)}
.dialog-card-copy>.wiki-card-tags{margin-top:0}
.card-tag-details{padding:9px 11px;margin:12px 0;background:#fbfcfa}
.card-tag-details summary{font-size:13px}
.card-tag-details dl{margin:4px 0 0}
.card-tag-details dt{font-weight:700;color:#31594d;margin-top:8px}
.card-tag-details dd{margin:2px 0 0;color:#586762}
.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.card-entry{border:1px solid var(--line);min-width:0;background:#fff;align-self:start;scroll-margin-top:76px}
.card-entry[hidden]{display:none}
.card-image{display:block;background:#faf7ef;border-bottom:1px solid var(--line)}
.card-image img{display:block;width:100%;height:250px;object-fit:contain}
.card-copy{padding:18px}
.card-copy h3{font-size:22px;margin:3px 0 8px}
.card-kicker{font-size:12px;color:var(--muted);margin:0}
.card-category{font-size:12px;background:#edf7f3;border:1px solid #cee1d9;padding:3px 7px}
.card-target{font-size:13px;border-bottom:1px solid #e4e8e6;padding-bottom:9px;margin-top:15px}
.card-performance{font-size:15px;line-height:1.85;margin:13px 0}
.card-detail{font-size:13px;color:#586762}
.card-glossary{padding:10px 12px;font-size:13px;margin-bottom:12px}
.card-glossary dt{font-weight:700;margin-top:12px}
.card-glossary dd{margin:3px 0 0}
.card-permalink{font-size:12px}
@media(max-width:640px){
  .table-scroll{overflow:visible;outline-offset:0}
  table,tbody,tr,tbody th,td{display:block;width:100%;min-width:0!important;max-width:100%;white-space:normal!important}
  thead{display:none}
  caption{display:block;width:100%}
  tbody tr{border:1px solid var(--line);margin-bottom:12px}
  tbody th,td{border:0;border-bottom:1px solid #e5e9e7!important}
  tbody th{font-size:15px;background:#eaf5ef;padding:12px}
  td::before{content:attr(data-label);display:block;font-size:11px;font-weight:700;color:#687477;margin-bottom:4px}
  td:last-child{border-bottom:0!important}
  .job-grid{gap:8px}
  .job-figure img{height:160px}
  .job-figure figcaption{padding:10px 5px}
  .job-figure strong{font-size:14px}
  .job-figure .sub{font-size:11px;min-height:62px}
  .job-figure figcaption a{font-size:11px}
  .card-grid{grid-template-columns:1fr}
  .card-filters{padding:12px;gap:10px}
  .card-filters label{flex-basis:calc(50% - 10px)}
  .card-filters .card-search{flex-basis:100%}
  .card-filters button{width:100%}
  .card-tag-filters{grid-column:auto}
  .card-tag-filters>div{max-height:125px}
  .card-image img{height:240px}
}
@media print{.card-filters{display:none}.card-entry[hidden]{display:block}.card-entry{break-inside:avoid}}
