.phase2-preview{align-items:flex-start;justify-content:flex-start}
.phase2-preview>span:only-child{margin:auto}
.phase2-table-wrap{width:100%;overflow:auto}
.phase2-table{width:100%;border-collapse:collapse;font-size:.88rem}
.phase2-table th,.phase2-table td{padding:8px 10px;border-bottom:1px solid rgba(20,40,80,.1);text-align:left;white-space:nowrap}
.phase2-table th{position:sticky;top:0;background:#eef3fb}
.phase2-palette{width:100%;display:grid;gap:10px}
.phase2-swatch{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:9px;border:1px solid rgba(20,40,80,.12);border-radius:12px}
.phase2-swatch-color{width:64px;height:48px;border-radius:9px;border:1px solid rgba(0,0,0,.12)}
.phase2-swatch-copy{display:grid;gap:2px;min-width:0}
.phase2-swatch-copy strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.phase2-swatch-copy span{font-size:.85rem;color:#5b6678;word-break:break-word}
.phase2-preview .phase2-barcode{width:100%;display:flex;justify-content:center;overflow:auto}
.phase2-preview .phase2-barcode svg{min-width:280px;max-width:100%;height:auto}
.phase2-file-summary{width:100%;display:grid;gap:7px}
.phase2-file-summary strong{font-size:1.05rem}
.phase2-file-summary span{color:#5b6678}
.quick-panel input[type=text]{width:100%;box-sizing:border-box;border:1px solid rgba(20,40,80,.2);border-radius:12px;padding:11px 12px;font:inherit;background:#fff;color:inherit}
.quick-panel input[type=number]{min-height:44px}
[dir=rtl] .phase2-table th,[dir=rtl] .phase2-table td{text-align:right}
[dir=rtl] #jsonCsvText{direction:ltr;text-align:left}
@media(max-width:620px){
  .phase2-swatch{grid-template-columns:52px minmax(0,1fr)}
  .phase2-swatch-color{width:52px;height:44px}
  .phase2-table{font-size:.8rem}
}
