/* FTS V212 — Supply Crates product-ready polish */
.crate-page-v211{padding-top:28px;padding-bottom:42px}
.crate-page-v211 .kicker{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:800}
.crate-page-v211 h1,.crate-page-v211 h2,.crate-page-v211 h3{margin:0;line-height:.9}
.crate-page-v211 p{color:var(--muted);line-height:1.55}
.crate-v211-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.62fr);gap:18px;align-items:stretch}
.crate-v211-copy,.crate-v211-signal,.crate-v211-card,.crate-v211-panel{border:1px solid var(--line);background:linear-gradient(135deg,var(--soft),rgba(0,0,0,0));box-shadow:var(--shadow)}
.crate-v211-copy{padding:clamp(24px,4vw,46px);min-width:0}
.crate-v211-copy h1{font-size:clamp(66px,9.5vw,148px);max-width:1050px;margin-top:18px}
.crate-v211-copy .lead{max-width:760px;font-size:clamp(18px,2vw,28px);font-weight:800;color:var(--ink);margin:22px 0 0}
.crate-v211-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.crate-v211-signal{padding:clamp(24px,3vw,38px);background:var(--cream);color:#080808;display:flex;flex-direction:column;justify-content:space-between;min-height:360px}
.crate-v211-signal span{font-family:var(--mono);font-size:14px;letter-spacing:.22em;text-transform:uppercase;color:#5d5b54}
.crate-v211-signal strong{display:block;font-family:var(--display);font-size:clamp(46px,5.6vw,88px);line-height:.82;letter-spacing:.02em;color:#050505}
.crate-v211-signal p{color:#5d5b54;font-weight:800;font-size:18px;max-width:360px;margin:0}
.crate-v211-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px;border:1px solid var(--line);background:var(--soft)}
.crate-v211-menu a{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding:17px 18px;border-right:1px solid var(--line);text-align:center}
.crate-v211-menu a:last-child{border-right:0}
.crate-v211-menu a:hover{color:var(--ink);background:rgba(242,239,232,.05)}
.crate-v211-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}
.crate-v211-section-head{grid-column:1/-1;border-top:1px solid var(--line);padding-top:24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.62fr);gap:20px;align-items:end}
.crate-v211-section-head h2{font-size:clamp(52px,6.6vw,108px);margin-top:12px}
.crate-v211-section-head p{margin:0;max-width:620px;font-weight:700}
.crate-v211-card{padding:16px;display:flex;flex-direction:column;gap:12px;min-height:100%;transition:transform .16s ease,border-color .16s ease;background:linear-gradient(145deg,var(--soft),rgba(0,0,0,0))}
.crate-v211-card:hover{transform:translateY(-2px);border-color:var(--line2)}
.crate-v211-card.featured{border-color:var(--line2)}
.crate-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.crate-card-top b{color:var(--ink);border:1px solid var(--line);background:var(--soft);padding:7px 9px;white-space:nowrap}
.crate-pack{min-height:185px;border:1px solid var(--line);display:flex;align-items:flex-end;padding:14px;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(242,239,232,.04) 1px,transparent 1px),linear-gradient(0deg,rgba(242,239,232,.03) 1px,transparent 1px),radial-gradient(circle at 62% 34%,rgba(183,196,154,.16),transparent 33%),linear-gradient(135deg,rgba(91,71,54,.24),rgba(0,0,0,.1));background-size:18px 18px,18px 18px,auto,auto}
.crate-pack:before{content:'';position:absolute;inset:18px;border:1px solid var(--line2);opacity:.55}
.crate-pack:after{content:'';position:absolute;left:18px;right:18px;top:50%;height:1px;background:var(--line);opacity:.7}
.crate-pack strong{position:relative;z-index:1;font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.crate-v211-card h3{font-size:clamp(34px,3vw,50px)}
.crate-v211-card p{font-size:14px;margin:0}
.crate-v211-card ul{list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:7px}
.crate-v211-card li{font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.crate-v211-card li:before{content:'+';color:var(--accent);margin-right:8px}
.crate-v211-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.crate-v211-lower{display:grid;gap:20px;margin-top:28px}
.crate-v211-panel{padding:22px}
.crate-v211-panel h2{font-size:clamp(42px,5.2vw,86px);margin-top:10px}
.crate-v211-how{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1fr);gap:22px;align-items:start}
.crate-v211-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.crate-v211-steps div{border:1px solid var(--line);background:var(--soft);padding:16px;min-height:168px}
.crate-v211-steps b{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--accent)}
.crate-v211-steps h3{font-size:28px;margin-top:24px}
.crate-v211-steps p{font-size:14px;margin-bottom:0}
.crate-v211-custom{display:grid;grid-template-columns:minmax(260px,.48fr) minmax(0,1fr);gap:22px;align-items:start}
.crate-v211-builder{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:14px;align-items:start}
.crate-builder-form,.crate-total-card{border:1px solid var(--line);background:linear-gradient(135deg,var(--soft),rgba(0,0,0,0));padding:16px;min-width:0}
.crate-fieldset{border:0;margin:0 0 14px;padding:0;display:grid;gap:8px}
.crate-fieldset legend{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding:0 0 10px}
.crate-fieldset label{border:1px solid var(--line);background:var(--soft);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;color:var(--muted)}
.crate-fieldset label span{color:var(--ink);font-weight:800}
.crate-fieldset label b{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.crate-items{grid-template-columns:repeat(2,minmax(0,1fr))}
.crate-items legend{grid-column:1/-1}
.crate-builder-form textarea.field{min-height:92px;resize:vertical;margin:2px 0 12px;width:100%}
.crate-total-card{position:sticky;top:148px}
.crate-total-card .builder-total{font-family:var(--display);font-size:clamp(58px,7vw,92px);line-height:.85;color:var(--ink)}
.crate-v211-request{display:flex;justify-content:space-between;gap:20px;align-items:end}
.crate-v211-request p{max-width:760px}
.crate-request-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
html[data-theme="light"] .crate-v211-copy,
html[data-theme="light"] .crate-v211-card,
html[data-theme="light"] .crate-v211-panel,
html[data-theme="light"] .crate-builder-form,
html[data-theme="light"] .crate-total-card{background:linear-gradient(135deg,rgba(112,71,47,.06),rgba(255,255,255,0))}
html[data-theme="light"] .crate-v211-signal{background:#f2efe8;color:#0a0a0a}
html[data-theme="light"] .crate-page-v211 .kicker,
html[data-theme="light"] .crate-v211-card li:before,
html[data-theme="light"] .crate-v211-steps b{color:#4b3727}
@media(max-width:1180px){
  .crate-v211-hero,.crate-v211-section-head,.crate-v211-how,.crate-v211-custom{grid-template-columns:1fr}
  .crate-v211-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .crate-v211-signal{min-height:260px}
  .crate-v211-builder{grid-template-columns:1fr}
  .crate-total-card{position:relative;top:auto}
}
@media(max-width:760px){
  .crate-page-v211{width:min(100vw - 20px,1280px)!important;padding-top:18px}
  .crate-v211-copy,.crate-v211-signal,.crate-v211-card,.crate-v211-panel{padding:16px}
  .crate-v211-copy h1{font-size:clamp(54px,15vw,82px)}
  .crate-v211-copy .lead{font-size:18px}
  .crate-v211-actions,.crate-v211-card-actions,.crate-request-actions{display:grid;grid-template-columns:1fr;width:100%}
  .crate-v211-menu{display:flex;overflow-x:auto;margin-left:-10px;margin-right:-10px;border-left:0;border-right:0}
  .crate-v211-menu a{flex:0 0 auto;padding:14px 16px;border-right:1px solid var(--line)}
  .crate-v211-grid,.crate-v211-steps,.crate-items{grid-template-columns:1fr}
  .crate-v211-signal{min-height:230px}
  .crate-pack{min-height:165px}
  .crate-v211-request{display:grid}
  .crate-fieldset label{grid-template-columns:auto 1fr}
  .crate-fieldset label b{grid-column:2}
}


/* V212 — Supply Crates empty-space + custom builder refinement */
.crate-page-v212 .crate-v211-lower{gap:24px;margin-top:30px}
.crate-page-v212 .crate-v212-how{display:grid;grid-template-columns:minmax(320px,.76fr) minmax(520px,1fr) minmax(260px,.46fr);gap:18px;align-items:stretch;padding:22px}
.crate-page-v212 .crate-how-copy{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.crate-page-v212 .crate-how-copy h2{font-size:clamp(54px,6vw,104px);margin-top:12px;max-width:760px}
.crate-page-v212 .crate-how-copy p{font-weight:750;max-width:620px;margin:0;color:var(--muted)}
.crate-page-v212 .crate-how-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.crate-page-v212 .crate-how-tags span,.crate-page-v212 .crate-total-mini span{border:1px solid var(--line);background:var(--soft);font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding:10px 11px}
.crate-page-v212 .crate-v212-steps{grid-template-columns:1fr;gap:10px}
.crate-page-v212 .crate-v212-steps div{min-height:0;display:grid;grid-template-columns:44px minmax(0,.46fr) minmax(0,.9fr);gap:12px;align-items:center;padding:14px 16px}
.crate-page-v212 .crate-v212-steps h3{font-size:clamp(24px,2.2vw,36px);margin:0}
.crate-page-v212 .crate-v212-steps p{margin:0;font-size:14px}
.crate-page-v212 .crate-how-note{border:1px solid var(--line);background:linear-gradient(135deg,rgba(183,196,154,.08),rgba(0,0,0,0));padding:18px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-width:0}
.crate-page-v212 .crate-how-note span{font-family:var(--mono);font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--accent);font-weight:800}
.crate-page-v212 .crate-how-note strong{font-family:var(--display);font-size:clamp(28px,2.7vw,44px);line-height:.94;color:var(--ink);display:block}
.crate-page-v212 .crate-v212-custom{display:grid;grid-template-columns:1fr;gap:18px;padding:24px}
.crate-page-v212 .crate-custom-head{display:grid;grid-template-columns:minmax(300px,.58fr) minmax(420px,1fr);gap:24px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:18px}
.crate-page-v212 .crate-custom-head h2{font-size:clamp(62px,7.4vw,118px);margin-top:12px}
.crate-page-v212 .crate-custom-head p{font-size:clamp(18px,1.6vw,24px);font-weight:800;max-width:760px;margin:0;color:var(--ink)}
.crate-page-v212 .crate-v212-builder{grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:16px;align-items:stretch}
.crate-page-v212 .crate-builder-form-v212{display:grid;gap:14px;padding:18px}
.crate-page-v212 .crate-base-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:0}
.crate-page-v212 .crate-base-cards legend,.crate-page-v212 .crate-items-v212 legend{grid-column:1/-1}
.crate-page-v212 .crate-base-cards label,.crate-page-v212 .crate-items-v212 label{position:relative;min-height:84px;align-items:start;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.crate-page-v212 .crate-base-cards label:hover,.crate-page-v212 .crate-items-v212 label:hover{border-color:var(--line2);transform:translateY(-1px)}
.crate-page-v212 .crate-base-cards label:has(input:checked),.crate-page-v212 .crate-items-v212 label:has(input:checked){background:rgba(242,239,232,.08);border-color:var(--line2)}
.crate-page-v212 .crate-fieldset label span{display:grid;gap:4px}
.crate-page-v212 .crate-fieldset label strong{color:var(--ink);font-weight:900;line-height:1.05}
.crate-page-v212 .crate-fieldset label em{font-style:normal;font-size:12px;color:var(--muted);font-weight:750;line-height:1.2}
.crate-page-v212 .crate-items-v212{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:0}
.crate-page-v212 .crate-note-label{display:grid;gap:8px;margin:0}
.crate-page-v212 .crate-note-label span{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.crate-page-v212 .crate-note-label textarea.field{min-height:88px;margin:0;resize:vertical;width:100%}
.crate-page-v212 .crate-total-card-v212{position:relative;top:auto;display:flex;flex-direction:column;gap:14px;min-height:100%;padding:18px;background:linear-gradient(135deg,rgba(183,196,154,.1),rgba(0,0,0,.04))}
.crate-page-v212 .crate-total-card-v212 .builder-total{font-size:clamp(66px,7vw,104px)}
.crate-page-v212 .crate-total-card-v212 p{margin:0}
.crate-page-v212 .crate-total-mini{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}
.crate-page-v212 .crate-total-mini span{padding:8px 9px;font-size:8px}
html[data-theme="light"] .crate-page-v212 .crate-how-note,
html[data-theme="light"] .crate-page-v212 .crate-total-card-v212{background:linear-gradient(135deg,rgba(112,71,47,.07),rgba(255,255,255,0))}
@media(max-width:1280px){
  .crate-page-v212 .crate-v212-how{grid-template-columns:1fr;gap:14px}
  .crate-page-v212 .crate-v212-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .crate-page-v212 .crate-v212-steps div{grid-template-columns:1fr;align-content:start;min-height:150px}
  .crate-page-v212 .crate-custom-head,.crate-page-v212 .crate-v212-builder{grid-template-columns:1fr}
  .crate-page-v212 .crate-total-card-v212{min-height:0}
}
@media(max-width:980px){
  .crate-page-v212 .crate-base-cards{grid-template-columns:1fr}
  .crate-page-v212 .crate-items-v212{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .crate-page-v212 .crate-v212-how,.crate-page-v212 .crate-v212-custom{padding:16px}
  .crate-page-v212 .crate-v212-steps,.crate-page-v212 .crate-items-v212{grid-template-columns:1fr}
  .crate-page-v212 .crate-custom-head h2{font-size:clamp(50px,15vw,76px)}
  .crate-page-v212 .crate-custom-head p{font-size:17px}
  .crate-page-v212 .crate-base-cards label,.crate-page-v212 .crate-items-v212 label{grid-template-columns:auto 1fr auto;min-height:0}
}


/* V213 — Custom Crate stock logic + naming cleanup */
.crate-page-v213 .crate-custom-head p{max-width:900px}
.crate-page-v213 .crate-base-cards legend{color:var(--accent)}
.crate-page-v213 .crate-base-cards label strong{font-size:clamp(22px,1.8vw,30px)}
.crate-page-v213 .crate-items-v213 label{min-height:78px}
.crate-page-v213 .crate-stock-rule{border:1px solid var(--line);background:linear-gradient(135deg,rgba(183,196,154,.08),rgba(0,0,0,.02));padding:14px 15px;display:grid;grid-template-columns:minmax(160px,.36fr) minmax(0,1fr) auto;gap:14px;align-items:center}
.crate-page-v213 .crate-stock-rule b{font-family:var(--display);font-size:clamp(22px,1.9vw,34px);line-height:.92;color:var(--ink);text-transform:uppercase}
.crate-page-v213 .crate-stock-rule span{font-size:13px;line-height:1.45;color:var(--muted);font-weight:750}
.crate-page-v213 .crate-stock-rule a{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);border:1px solid var(--line);padding:11px 12px;white-space:nowrap;background:rgba(242,239,232,.04)}
.crate-page-v213 .crate-stock-rule a:hover{background:var(--cream);color:#080808}
.crate-page-v213 .crate-total-card-v212 .small{font-size:12px;line-height:1.45}
@media(max-width:980px){
  .crate-page-v213 .crate-stock-rule{grid-template-columns:1fr;align-items:start}
  .crate-page-v213 .crate-stock-rule a{width:max-content}
}
