#js-tool-container-pallet-box-layout-calculator .pallet-app {
  display: flex;
  flex-direction: column;
  gap: 14px;
  --pallet-violet: #7652d7;
  --pallet-violet-light: rgba(118,82,215,.12);
  --pallet-wood: #c98b45;
  --pallet-wood-light: rgba(201,139,69,.15);
}
#js-tool-container-pallet-box-layout-calculator .pallet-fieldset { min-width: 0; border: 0; padding: 0; margin: 0; }
#js-tool-container-pallet-box-layout-calculator .pallet-legend { padding: 0; margin: 0 0 12px; color: var(--text-secondary); font-size: .82rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
#js-tool-container-pallet-box-layout-calculator .pallet-field { display: flex; flex-direction: column; gap: 8px; }
#js-tool-container-pallet-box-layout-calculator .pallet-field label { color: var(--text-primary); font-weight: 650; }
#js-tool-container-pallet-box-layout-calculator .pallet-field input,
#js-tool-container-pallet-box-layout-calculator .pallet-field select { width: 100%; min-height: 44px; border: 1px solid var(--border-color); border-radius: var(--radius-sm); padding: 9px 12px; background: var(--bg-secondary); color: var(--text-primary); font: inherit; }
#js-tool-container-pallet-box-layout-calculator .pallet-field input:focus,
#js-tool-container-pallet-box-layout-calculator .pallet-field select:focus { border-color: var(--border-focus); outline: 2px solid var(--accent-light); }
#js-tool-container-pallet-box-layout-calculator .tbcalc-hint { display: block; color: var(--text-muted); font-size: .76rem; line-height: 1.35; }
#js-tool-container-pallet-box-layout-calculator .pallet-hero { position: relative; overflow: hidden; border: 1px solid var(--pallet-violet); border-radius: var(--radius-lg); padding: 20px; background: linear-gradient(135deg, var(--pallet-violet-light), var(--bg-secondary) 62%); }
#js-tool-container-pallet-box-layout-calculator .pallet-hero::after { content: ""; position: absolute; right: 22px; bottom: -25px; width: 112px; height: 112px; border: 15px solid var(--pallet-violet-light); transform: rotate(45deg); }
#js-tool-container-pallet-box-layout-calculator .pallet-chip-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
#js-tool-container-pallet-box-layout-calculator .pallet-chip { display: inline-flex; align-items: center; min-height: 28px; padding: 4px 9px; border: 1px solid var(--border-color); border-radius: 999px; background: var(--bg-secondary); color: var(--text-secondary); font-size: .75rem; font-variant-numeric: tabular-nums; }
#js-tool-container-pallet-box-layout-calculator .pallet-architecture { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(180px, .75fr); gap: 12px; }
#js-tool-container-pallet-box-layout-calculator .pallet-plan,
#js-tool-container-pallet-box-layout-calculator .pallet-tower { min-width: 0; border: 1px solid var(--border-color); border-radius: var(--radius-md); padding: 14px; background: var(--bg-tertiary); }
#js-tool-container-pallet-box-layout-calculator .pallet-plan-head,
#js-tool-container-pallet-box-layout-calculator .pallet-plan-foot,
#js-tool-container-pallet-box-layout-calculator .pallet-tower-head { display: flex; justify-content: space-between; gap: 10px; color: var(--text-secondary); font-size: .78rem; }
#js-tool-container-pallet-box-layout-calculator .pallet-plan-head output,
#js-tool-container-pallet-box-layout-calculator .pallet-plan-foot output,
#js-tool-container-pallet-box-layout-calculator .pallet-tower-head output { color: var(--pallet-violet); font-weight: 800; font-variant-numeric: tabular-nums; }
#js-tool-container-pallet-box-layout-calculator .pallet-plan-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 30px; gap: 5px; margin: 14px 0 10px; }
#js-tool-container-pallet-box-layout-calculator .pallet-plan-cell { display: grid; place-items: center; border: 1px solid var(--border-color); border-radius: 5px; background: var(--bg-secondary); color: var(--text-muted); font-size: .7rem; }
#js-tool-container-pallet-box-layout-calculator .pallet-plan-cell.is-filled { border-color: var(--pallet-violet); background: var(--pallet-violet-light); color: var(--pallet-violet); }
#js-tool-container-pallet-box-layout-calculator .pallet-tower { display: flex; flex-direction: column; gap: 12px; }
#js-tool-container-pallet-box-layout-calculator .pallet-tower-stack { display: flex; flex: 1; flex-direction: column-reverse; justify-content: flex-start; gap: 4px; min-height: 176px; border-bottom: 8px solid var(--pallet-wood); padding: 8px 18px 0; }
#js-tool-container-pallet-box-layout-calculator .pallet-layer { display: grid; place-items: center; min-height: 24px; border: 1px solid var(--pallet-violet); border-radius: 4px; background: var(--pallet-violet-light); color: var(--pallet-violet); font-size: .66rem; font-weight: 800; }
#js-tool-container-pallet-box-layout-calculator .pallet-layer:not(.is-filled) { display: none; }
#js-tool-container-pallet-box-layout-calculator .pallet-layer.pallet-base { border-color: var(--pallet-wood); background: var(--pallet-wood-light); color: var(--pallet-wood); display: grid; }
#js-tool-container-pallet-box-layout-calculator .pallet-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
#js-tool-container-pallet-box-layout-calculator .pallet-metric { display: flex; flex-direction: column; gap: 5px; border-left: 3px solid var(--pallet-violet); padding: 8px 10px; background: var(--bg-secondary); }
#js-tool-container-pallet-box-layout-calculator .pallet-metric.is-limit { border-left-color: var(--pallet-wood); }
#js-tool-container-pallet-box-layout-calculator .pallet-metric span { color: var(--text-secondary); font-size: .73rem; }
#js-tool-container-pallet-box-layout-calculator .pallet-metric strong { color: var(--text-primary); font-size: .95rem; font-variant-numeric: tabular-nums; }
#js-tool-container-pallet-box-layout-calculator .pallet-rules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
#js-tool-container-pallet-box-layout-calculator .pallet-rules > div { display: flex; flex-direction: column; gap: 8px; border: 1px solid var(--border-color); border-radius: var(--radius-md); padding: 13px; background: var(--bg-tertiary); }
#js-tool-container-pallet-box-layout-calculator .pallet-rules p { margin: 0; color: var(--text-secondary); font-size: .78rem; line-height: 1.45; }
#js-tool-container-pallet-box-layout-calculator .pallet-rule-number { color: var(--pallet-violet); font-size: .72rem; font-weight: 900; letter-spacing: .1em; }
#js-tool-container-pallet-box-layout-calculator html[data-theme="dark"] .pallet-app { --pallet-violet-light: rgba(118,82,215,.18); --pallet-wood-light: rgba(201,139,69,.18); }
@media (max-width: 760px) {
  #js-tool-container-pallet-box-layout-calculator .tb-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #js-tool-container-pallet-box-layout-calculator .pallet-architecture { grid-template-columns: 1fr; }
  #js-tool-container-pallet-box-layout-calculator .pallet-rules { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  #js-tool-container-pallet-box-layout-calculator .tb-grid-3 { grid-template-columns: 1fr; }
  #js-tool-container-pallet-box-layout-calculator .pallet-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #js-tool-container-pallet-box-layout-calculator .pallet-hero { padding: 16px; }
}