/* BYD Configurator — vanilla styles. Matches byd-design-system tokens. */

.byd-cfg{
  font-family:'Manrope',system-ui,-apple-system,sans-serif;
  color:#141414;
  margin:48px 0;
}
.byd-cfg *{box-sizing:border-box}

.byd-cfg-layout{
  display:grid;
  grid-template-columns:1fr 380px;
  gap:32px;
}
@media (max-width: 960px){
  .byd-cfg-layout{grid-template-columns:1fr}
}

/* Tabs */
.byd-cfg-tabs{
  display:flex;
  gap:8px;
  border-bottom:1px solid #e8e8e8;
  margin-bottom:24px;
  overflow-x:auto;
}
.byd-cfg-tab{
  background:none;
  border:none;
  padding:12px 16px;
  font-family:inherit;
  font-weight:600;
  font-size:14px;
  color:#6b6b6b;
  cursor:pointer;
  border-bottom:2px solid transparent;
  white-space:nowrap;
}
.byd-cfg-tab:hover{color:#141414}
.byd-cfg-tab.is-active{color:#141414;border-bottom-color:#e6002d}
.byd-cfg-count{color:#6b6b6b;font-weight:400;margin-left:4px;font-size:12px}

/* Panels */
.byd-cfg-panel{display:none}
.byd-cfg-panel.is-active{display:block}
.byd-cfg-panel-heading{
  font-size:20px;font-weight:700;margin:0 0 16px;letter-spacing:-0.01em;
}
.byd-cfg-empty{color:#6b6b6b;font-style:italic;padding:32px 0}

/* Option grid */
.byd-cfg-options{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:12px;
}
.byd-cfg-options--color{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.byd-cfg-options--package,
.byd-cfg-options--option{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}

.byd-cfg-option{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:14px;
  border:1px solid #e8e8e8;
  border-radius:4px;
  cursor:pointer;
  transition:border-color .15s, box-shadow .15s;
  background:#fff;
}
.byd-cfg-option:hover{border-color:#141414}
.byd-cfg-option.is-selected{
  border-color:#e6002d;
  box-shadow:0 0 0 1px #e6002d inset;
}
.byd-cfg-option-input{
  position:absolute;top:8px;right:8px;
  accent-color:#e6002d;
}
.byd-cfg-option-image{
  display:block;height:80px;border-radius:3px;
  background-size:cover;background-position:center;background-color:#f5f5f5;
}
.byd-cfg-option-swatch{
  display:block;height:52px;border-radius:3px;
  background:linear-gradient(135deg,#c4c4c4,#6b6b6b);
  border:1px solid #e8e8e8;
}
.byd-cfg-option-body{display:flex;flex-direction:column;gap:4px}
.byd-cfg-option-name{font-weight:600;font-size:14px;line-height:1.3}
.byd-cfg-option-desc{font-size:12px;color:#6b6b6b;line-height:1.4}
.byd-cfg-option-price{
  font-family:'JetBrains Mono',ui-monospace,monospace;
  font-size:12px;color:#141414;margin-top:4px;
}

/* Summary sidebar */
.byd-cfg-summary{
  position:sticky;top:24px;align-self:start;
}
.byd-cfg-summary-inner{
  border:1px solid #e8e8e8;
  border-radius:4px;
  padding:20px;
  background:#fff;
}
.byd-cfg-summary-title{
  font-size:16px;font-weight:700;margin:0 0 16px;
  text-transform:uppercase;letter-spacing:.04em;
}
.byd-cfg-summary-row{
  display:flex;justify-content:space-between;
  font-size:14px;padding:6px 0;
}
.byd-cfg-summary-row--total{
  font-size:20px;font-weight:800;
  font-family:'JetBrains Mono',ui-monospace,monospace;
}
.byd-cfg-summary-row .byd-cfg-base,
.byd-cfg-summary-row .byd-cfg-options-total,
.byd-cfg-summary-row .byd-cfg-total{
  font-family:'JetBrains Mono',ui-monospace,monospace;
}
.byd-cfg-summary-breakdown{
  font-size:12px;color:#6b6b6b;margin:8px 0;
  max-height:140px;overflow-y:auto;
}
.byd-cfg-summary-breakdown ul{margin:0;padding:0;list-style:none}
.byd-cfg-summary-breakdown li{
  display:flex;justify-content:space-between;padding:2px 0;
}
.byd-cfg-summary-sep{border:0;border-top:1px solid #e8e8e8;margin:12px 0}

.byd-cfg-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.byd-cfg-name{
  padding:10px 12px;border:1px solid #e8e8e8;border-radius:4px;
  font-family:inherit;font-size:14px;
}

.byd-btn{
  display:inline-block;padding:12px 18px;
  border:1px solid transparent;border-radius:4px;
  cursor:pointer;font-family:inherit;font-weight:600;font-size:14px;
  text-align:center;text-decoration:none;line-height:1;
  transition:background .15s,color .15s,border-color .15s;
}
.byd-btn--primary{background:#e6002d;color:#fff;border-color:#e6002d}
.byd-btn--primary:hover{background:#b8001f;border-color:#b8001f}
.byd-btn--ghost{background:#fff;color:#141414;border-color:#141414}
.byd-btn--ghost:hover{background:#141414;color:#fff}
.byd-btn--danger{background:#fff;color:#b8001f;border-color:#b8001f}
.byd-btn--danger:hover{background:#b8001f;color:#fff}

.byd-cfg-message{font-size:13px;margin:6px 0 0;min-height:1em}
.byd-cfg-message.is-ok{color:#1fa362}
.byd-cfg-message.is-err{color:#b8001f}

.byd-cfg-resume-banner{
  background:#fff7e6;border:1px solid #f0c36d;color:#8a6d1a;
  padding:10px 12px;border-radius:4px;margin-bottom:16px;font-size:13px;
}

.byd-cfg-error{
  border:1px dashed #e6002d;color:#b8001f;padding:12px;border-radius:4px;
}

/* My Builds table */
.byd-cfg-my-builds{margin:32px 0}
.byd-cfg-my-builds-title{
  font-size:18px;font-weight:700;margin:0 0 12px;
  text-transform:uppercase;letter-spacing:.04em;
}
.byd-cfg-my-builds-table{
  width:100%;border-collapse:collapse;font-size:14px;
}
.byd-cfg-my-builds-table th,
.byd-cfg-my-builds-table td{
  text-align:left;padding:10px 8px;border-bottom:1px solid #e8e8e8;
  vertical-align:middle;
}
.byd-cfg-my-builds-table th{font-weight:600;font-size:12px;color:#6b6b6b;text-transform:uppercase;letter-spacing:.04em}
.byd-cfg-mb-vehicle{display:flex;align-items:center;gap:10px}
.byd-cfg-mb-thumb{width:48px;height:48px;object-fit:cover;border-radius:3px;background:#f5f5f5}
.byd-cfg-mb-status{
  display:inline-block;padding:2px 8px;border-radius:12px;
  font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;
  background:#f5f5f5;color:#141414;
}
.byd-cfg-mb-status--draft{background:#fff7e6;color:#8a6d1a}
.byd-cfg-mb-status--saved{background:#e6f4ea;color:#1f7a46}
.byd-cfg-mb-status--reserved{background:#fde6ea;color:#b8001f}
.byd-cfg-mb-status--converted{background:#e8edff;color:#2a3a88}
.byd-cfg-mb-status--archived{background:#eee;color:#6b6b6b}
.byd-cfg-mb-actions{display:flex;flex-wrap:wrap;gap:6px}
.byd-cfg-mb-actions .byd-btn{padding:6px 10px;font-size:12px}
