/* "บิลด์แนะนำ" page (builds.php) - uses the tokens of theme.css */
.bd-sec { padding: 30px 0 50px; }
.bd-picker { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); margin-bottom: 22px; }
.bd-pick { text-align: left; padding: 12px 14px 12px 10px; border-radius: 14px; border: 1px solid var(--line); background: var(--card); color: var(--ink); font: inherit; cursor: pointer; display: flex; gap: 10px; align-items: center; }
.bd-txt { display: grid; gap: 4px; min-width: 0; }
/* job picture (walking sprite strip from the jobs page, played with steps()); only the chosen / hovered card walks */
.bd-art { flex: 0 0 72px; height: 104px; display: grid; place-items: end center; border-radius: 10px;
  background: radial-gradient(ellipse at 50% 85%, rgba(139, 92, 246, .28), transparent 70%); }
.walk { display: block; width: calc(var(--w) * var(--s)); height: calc(var(--h) * var(--s)); background-repeat: no-repeat;
  background-size: calc(var(--w) * var(--n) * var(--s)) calc(var(--h) * var(--s)); image-rendering: pixelated;
  animation: bd-walk var(--t) steps(var(--n)) infinite; }
@keyframes bd-walk { to { background-position: calc(var(--w) * var(--n) * var(--s) * -1) 0; } }
.bd-pick:not(.on):not(:hover) .walk { animation-play-state: paused; }
.bd-head { position: relative; }
.bd-head-art { float: right; margin: 0 0 8px 16px; width: 140px; height: 160px; display: grid; place-items: end center; border-radius: 14px;
  background: radial-gradient(ellipse at 50% 88%, rgba(242, 194, 91, .22), transparent 70%); }
@media (max-width: 560px) { .bd-head-art { width: 96px; height: 120px; } .bd-head-art .walk { --s: .5 !important; } }
@media (prefers-reduced-motion: reduce) { .walk { animation: none; } }
.bd-pick:hover { border-color: rgba(168, 138, 255, .45); }
.bd-pick.on { border-color: rgba(242, 194, 91, .7); box-shadow: 0 0 0 1px rgba(242, 194, 91, .35), 0 10px 26px rgba(124, 58, 237, .3); }
.bd-pick b { font-size: 15.5px; color: #fff; }
.bd-pick span { font-size: 13px; color: var(--muted); }
.bd-tags { display: flex; gap: 6px; flex-wrap: wrap; }
.bd-tags i { font-style: normal; font-size: 12px; padding: 2px 9px; border-radius: 99px; background: rgba(139, 92, 246, .2); color: #e4dcff; }
.bd-tags.big i { font-size: 13px; padding: 3px 11px; }

.bd-head h2 { margin: 6px 0 8px; font-size: clamp(22px, 3vw, 30px); }
.bd-sum { margin: 0 0 12px; color: #e4dcff; line-height: 1.65; }
.bd-path { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 14px; }
.bd-path span { padding: 4px 11px; border-radius: 9px; background: rgba(255, 255, 255, .06); border: 1px solid var(--line); font-size: 13.5px; }
.bd-path em { font-style: normal; color: var(--gold); }

.bd-h { display: flex; align-items: center; gap: 10px; font-size: 21px; margin: 30px 0 12px; }
.bd-h span { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--gold); color: #2a1a00; font-size: 15px; }
.tscroll { overflow-x: auto; }
.bd-small { font-size: 12.5px; }
.bd-stats { min-width: 760px; }
.bd-stats td, .bd-stats th { text-align: center; vertical-align: middle; }
.bd-stats .bd-phase, .bd-stats .bd-how { text-align: left; }
.bd-phase { white-space: nowrap; font-weight: 600; }
.bd-num { font: 600 16px Prompt, sans-serif; color: var(--muted); font-variant-numeric: tabular-nums; }
.bd-num.set { color: #fff; }
.bd-num.up { color: var(--gold); }
.bd-how { font-size: 13.5px; min-width: 260px; }
.bd-traits { margin-top: 14px; padding: 12px 14px; border-radius: 12px; border: 1px solid rgba(242, 194, 91, .35); background: var(--gold-soft); }
.bd-traits ul { margin: 6px 0; padding-left: 20px; }
.bd-traits p { margin: 0; font-size: 13.5px; }

.bd-stages { display: grid; gap: 14px; }
.bd-stage-h { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.bd-stage-h b { font-size: 17px; color: #fff; }
.bd-stage-h span { font-size: 13px; color: var(--muted); }
.bd-skills { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 8px; }
.bd-sk { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px 5px 5px; border-radius: 10px; background: rgba(255, 255, 255, .05); border: 1px solid var(--line); }
.bd-sk img { width: 26px; height: 26px; border-radius: 6px; }
.bd-sk b { color: var(--gold); font-size: 14px; min-width: 18px; text-align: right; }
.bd-sk em { font-style: normal; font-size: 13px; }
.bd-order { margin: 6px 0 0; font-size: 14px; color: #e4dcff; line-height: 1.6; }

.bd-gtabs { display: flex; gap: 8px; overflow-x: auto; padding: 2px 2px 10px; }
.bd-gtab { flex: none; padding: 8px 14px; border-radius: 11px; border: 1px solid var(--line); background: rgba(255, 255, 255, .04); color: #d9d0f7; font: 500 14px/1 Prompt, sans-serif; cursor: pointer; }
.bd-gtab.on { background: linear-gradient(135deg, rgba(139, 92, 246, .45), rgba(217, 70, 239, .3)); border-color: rgba(200, 180, 255, .55); color: #fff; }
.bd-gear { min-width: 720px; }
.bd-gear td { vertical-align: top; }
.bd-slot { white-space: nowrap; color: var(--gold); font-weight: 600; }
.bd-ico { width: 24px; height: 24px; vertical-align: middle; margin-right: 6px; image-rendering: pixelated; }
.bd-card { margin-bottom: 6px; }
.bd-card:last-child { margin-bottom: 0; }
.bd-note { font-size: 13.5px; color: var(--muted); }
.bd-tips { margin: 0; padding-left: 20px; }
.bd-tips li { margin: 6px 0; }
