:root{--color-bg:#fff;--color-surface:#f1f3f5;--color-accent:#2563eb;--color-accent-hover:#1d4ed8;--color-border:#dee2e6;--color-text:#1a1a2e;--color-text-secondary:#6c757d;--color-error:#dc3545;--color-success:#198754;--color-disabled:#adb5bd;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px}*,:before,:after{box-sizing:border-box}body{color:var(--color-text);background:var(--color-bg);margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}#app{max-width:640px;padding:var(--space-2xl) var(--space-md);margin:0 auto}#barcode-preview{background:var(--color-surface);padding:var(--space-lg);min-height:140px;margin-bottom:var(--space-xl);border-radius:8px;justify-content:center;align-items:center;display:flex;overflow:visible}#barcode-preview svg{width:100%;max-width:400px;height:auto;display:block;overflow:visible}.form-panel{gap:var(--space-lg);flex-direction:column;display:flex}.field-group{gap:var(--space-sm);flex-direction:column;display:flex}label{color:var(--color-text);font-size:14px;font-weight:600;line-height:1.4}input[type=text]{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-bg);border-radius:4px;width:100%;padding:12px 16px;font-size:16px;line-height:1.5;transition:border-color .15s,outline-color .15s}input[type=text]:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}input[type=text].is-valid{border-color:var(--color-success)}input[type=text].is-error{border-color:var(--color-error)}#barcode-error{color:var(--color-error);margin-top:var(--space-xs);min-height:20px;font-size:14px;line-height:1.4}.symbology-picker{gap:var(--space-xs);flex-wrap:wrap;display:flex}.symbology-picker input[type=radio]{opacity:0;width:0;height:0;position:absolute}.symbology-picker label{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;padding:8px 12px;font-size:14px;font-weight:600;transition:background .1s,color .1s}.symbology-picker input[type=radio]:checked+label{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.symbology-picker input[type=radio]:focus+label{outline:2px solid var(--color-accent);outline-offset:2px}.symbology-picker input[value=code128]+label{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.symbology-picker input[value=code128]:checked+label{color:#fff;background:#166534;border-color:#166534}.symbology-picker input[value=ean13]+label{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.symbology-picker input[value=ean13]:checked+label{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.symbology-picker input[value=upca]+label{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.symbology-picker input[value=upca]:checked+label{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.symbology-picker input[value=code39]+label{color:#475569;background:#f8fafc;border-color:#cbd5e1}.symbology-picker input[value=code39]:checked+label{color:#fff;background:#475569;border-color:#475569}.symbology-picker input[value=qrcode]+label{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.symbology-picker input[value=qrcode]:checked+label{color:#fff;background:#9a3412;border-color:#9a3412}.symbology-picker input[value=datamatrix]+label{color:#7e22ce;background:#fdf4ff;border-color:#e9d5ff}.symbology-picker input[value=datamatrix]:checked+label{color:#fff;background:#7e22ce;border-color:#7e22ce}#download-png-btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:4px;width:100%;min-height:44px;padding:12px 24px;font-size:16px;font-weight:600;transition:background .15s}#download-png-btn:hover:not(:disabled){background:var(--color-accent-hover)}#download-png-btn:disabled{background:var(--color-surface);color:var(--color-disabled);border:1px solid var(--color-border);cursor:not-allowed}#download-disabled-reason{color:var(--color-text-secondary);text-align:center;min-height:20px;font-size:14px}h1{color:var(--color-text);margin:0 0 var(--space-xl) 0;font-size:24px;font-weight:600;line-height:1.2}.page-subtitle{color:var(--color-text-secondary);margin:-var(--space-lg) 0 var(--space-xl) 0;font-size:16px}#how-to-section{margin:0 0 var(--space-xl) 0}.how-to-steps{align-items:flex-start;gap:0;display:flex}.how-to-step{text-align:center;background:var(--color-surface);padding:var(--space-lg) var(--space-md) var(--space-md);align-items:center;gap:var(--space-xs);border-radius:8px;flex-direction:column;flex:1;display:flex;position:relative}.step-badge{background:var(--color-accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;line-height:1;display:flex;position:absolute;top:12px;left:12px}.step-icon{color:var(--color-accent);margin-bottom:var(--space-xs);justify-content:center;align-items:center;height:44px;display:flex}.step-title{color:var(--color-text);margin:0;font-size:14px;font-weight:700;line-height:1.3}.step-desc{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.5}.how-to-arrow{color:var(--color-text-secondary);padding:0 var(--space-sm);flex-shrink:0;align-self:center;margin-top:-8px;font-size:18px}.how-to-footer{margin-top:var(--space-sm);justify-content:center;display:flex}.how-to-download-btn{color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs) var(--space-sm);background:0 0;border:none;border-radius:4px;font-size:13px;transition:color .15s}.how-to-download-btn:hover{color:var(--color-accent)}@media (max-width:520px){.how-to-steps{gap:var(--space-sm);flex-direction:column}.how-to-arrow{align-self:center;padding:0;transform:rotate(90deg)}}#barcode-guide-section{margin-bottom:var(--space-xl)}.guide-heading{color:var(--color-text);margin:0 0 var(--space-md) 0;font-size:16px;font-weight:700}.guide-table-wrapper{border:1px solid var(--color-border);border-radius:8px;overflow-x:auto}.barcode-guide-table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.5}.barcode-guide-table th{background:var(--color-surface);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:10px 14px;font-size:11px;font-weight:700}.barcode-guide-table td{color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:middle;padding:10px 14px}.barcode-guide-table tbody tr:last-child td{border-bottom:none}.barcode-guide-table tbody tr:hover td{background:var(--color-surface)}.symbology-chip{white-space:nowrap;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:4px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-block}.chip-ean,.chip-upc{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.chip-128{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.chip-qr{color:#9a3412;background:#fff7ed;border-color:#fed7aa}.chip-dm{color:#7e22ce;background:#fdf4ff;border-color:#e9d5ff}.chip-39{color:#475569;background:#f8fafc;border-color:#cbd5e1}.guide-note{margin:var(--space-sm) 0 0 0;color:var(--color-text-secondary);font-size:12px;line-height:1.5}.guide-note a{color:var(--color-accent);text-decoration:none}.guide-note a:hover{text-decoration:underline}.shared-symbology-picker{margin-bottom:var(--space-lg)}.bulk-section-divider{align-items:center;gap:var(--space-md);margin:var(--space-xl) 0 var(--space-lg) 0;color:var(--color-text-secondary);font-size:14px;display:flex}.bulk-section-divider:before,.bulk-section-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.bulk-section-divider span{white-space:nowrap;font-weight:600}:root{--color-warning-bg:#fff9e6;--color-warning-border:#f59e0b;--color-warning-text:#92400e}#tab-toggle{border-bottom:2px solid var(--color-border);margin-bottom:var(--space-xl);gap:0;display:flex}#tab-toggle button[role=tab]{padding:var(--space-sm) var(--space-lg);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;min-height:44px;margin-bottom:-2px;font-size:15px;font-weight:600;transition:color .15s,border-color .15s}#tab-toggle button[role=tab][aria-selected=true]{color:var(--color-accent);border-bottom-color:var(--color-accent)}#tab-toggle button[role=tab]:hover{color:var(--color-text)}#tab-toggle button[role=tab]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}#bulk-paste{border:1px solid var(--color-border);width:100%;min-height:120px;color:var(--color-text);background:var(--color-bg);resize:vertical;border-radius:4px;padding:12px 16px;font-family:monospace;font-size:14px;line-height:1.6;transition:border-color .15s,outline-color .15s}#bulk-paste:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}#generate-btn,#download-zip-btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:4px;width:100%;min-height:44px;padding:12px 24px;font-size:16px;font-weight:600;transition:background .15s}#generate-btn:hover:not(:disabled),#download-zip-btn:hover:not(:disabled){background:var(--color-accent-hover)}#generate-btn:disabled{background:var(--color-surface);color:var(--color-disabled);border:1px solid var(--color-border);cursor:not-allowed}#progress-section{gap:var(--space-sm);margin:var(--space-md) 0;flex-direction:column;display:flex}#progress-bar-track{background:var(--color-surface);border-radius:4px;height:8px;overflow:hidden}#progress-bar-fill{background:var(--color-accent);width:0%;height:100%;transition:width .15s ease-out}#progress-counter{color:var(--color-text-secondary);min-height:20px;margin:0;font-size:14px}#error-summary{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-md);margin-top:var(--space-md);border-radius:4px}#error-summary-heading{color:var(--color-error);margin:0 0 var(--space-sm) 0;font-size:14px;font-weight:600}#error-list{padding-left:var(--space-lg);color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.6}#error-list li{margin-bottom:var(--space-xs)}.file-upload-separator{text-align:center;color:var(--color-text-secondary);margin:var(--space-md) 0;-webkit-user-select:none;user-select:none;font-size:14px}#file-dropzone{justify-content:center;align-items:center;gap:var(--space-sm);min-height:80px;padding:var(--space-md);border:2px dashed var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:8px;flex-direction:column;transition:border-color .15s,background .15s;display:flex}#file-dropzone:hover{border-color:var(--color-accent)}#file-dropzone:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}#file-dropzone.is-drag-over{border-color:var(--color-accent);background:#eff6ff}.file-dropzone-instruction{color:var(--color-text-secondary);font-size:14px}.file-format-note{color:var(--color-text-secondary);font-size:12px}#file-choose-btn{border:1px solid var(--color-accent);color:var(--color-accent);cursor:pointer;background:0 0;border-radius:4px;min-height:36px;padding:8px 16px;font-size:14px;font-weight:600;transition:background .15s,color .15s}#file-choose-btn:hover{background:var(--color-accent);color:#fff}#file-choose-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.file-selected-name{color:var(--color-text);text-align:center;word-break:break-all;font-size:14px;font-weight:600}.file-clear-btn{border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:4px;min-height:28px;padding:4px 12px;font-size:13px;transition:border-color .15s,color .15s}.file-clear-btn:hover{border-color:var(--color-error);color:var(--color-error)}.file-parse-error{color:var(--color-error);text-align:center;margin:0;font-size:13px}.paste-wins-notice{color:var(--color-text-secondary);background:var(--color-warning-bg);border:1px solid var(--color-warning-border);padding:var(--space-sm) var(--space-md);border-radius:4px;margin:0;font-size:13px;line-height:1.4}.column-mapping-panel{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-md);gap:var(--space-md);border-radius:8px;flex-direction:column;display:flex}.column-mapping-heading{color:var(--color-text);margin:0;font-size:15px;font-weight:600}.mapping-row{gap:var(--space-xs);flex-direction:column;display:flex}#column-mapping select{border:1px solid var(--color-border);width:100%;color:var(--color-text);background:var(--color-bg);-webkit-appearance:auto;appearance:auto;border-radius:4px;padding:10px 12px;font-size:16px;line-height:1.5;transition:border-color .15s,outline-color .15s}#column-mapping select:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.mapping-note{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.4}#leading-zero-warning[hidden]{display:none}#leading-zero-warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-left:4px solid var(--color-warning-border);padding:var(--space-md);color:var(--color-warning-text);justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-md);border-radius:4px;font-size:14px;line-height:1.4;display:flex}#warning-dismiss{color:var(--color-warning-text);cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:20px;line-height:1}.pdf-section-divider{align-items:center;gap:var(--space-md);margin:var(--space-xl) 0 var(--space-lg) 0;display:flex}.pdf-section-divider:before,.pdf-section-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.pdf-section-title{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-size:13px;font-weight:600}.pdf-mode-label{color:var(--color-text);font-size:14px;font-weight:600}.pdf-mode-tabs{gap:var(--space-xs);flex-wrap:wrap;display:flex}.pdf-mode-tab{cursor:pointer;font-weight:600;display:inline-flex}.pdf-mode-tab input[type=radio]{opacity:0;width:0;height:0;position:absolute}.pdf-mode-tab span{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:4px;padding:8px 14px;font-size:14px;font-weight:600;transition:background .1s,color .1s,border-color .1s;display:inline-block}.pdf-mode-tab input[type=radio]:checked+span{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.pdf-mode-tab input[type=radio]:focus+span{outline:2px solid var(--color-accent);outline-offset:2px}.pdf-mode-options{gap:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-md);border-radius:8px;flex-direction:column;display:flex}#pdf-avery-options select{border:1px solid var(--color-border);width:100%;color:var(--color-text);background:var(--color-bg);-webkit-appearance:auto;appearance:auto;border-radius:4px;padding:10px 12px;font-size:15px}#pdf-avery-options select:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.avery-slot-row{align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;display:flex}.avery-slot-row input[type=number]{border:1px solid var(--color-border);width:80px;color:var(--color-text);background:var(--color-bg);border-radius:4px;padding:8px 10px;font-size:15px}.avery-slot-row input[type=number]:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.field-hint{color:var(--color-text-secondary);font-size:13px;line-height:1.4}.mm-input{border:1px solid var(--color-border);width:110px;color:var(--color-text);background:var(--color-bg);border-radius:4px;padding:8px 10px;font-size:15px}.mm-input:focus{outline:2px solid var(--color-accent);outline-offset:2px;border-color:var(--color-accent)}.thermal-presets{gap:var(--space-sm);flex-direction:column;display:flex}.thermal-preset-option{align-items:center;gap:var(--space-sm);cursor:pointer;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;font-weight:400;transition:border-color .1s;display:flex}.thermal-preset-option:has(input:checked){border-color:var(--color-accent);background:#eff6ff}.thermal-preset-option input[type=radio]{accent-color:var(--color-accent);flex-shrink:0}.thermal-preset-label{flex-direction:column;line-height:1.4;display:flex}.thermal-preset-label strong{color:var(--color-text);font-size:14px}.thermal-preset-label small{color:var(--color-text-secondary);font-size:12px}#download-pdf-btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:4px;width:100%;min-height:44px;padding:12px 24px;font-size:16px;font-weight:600;transition:background .15s}#download-pdf-btn:hover:not(:disabled){background:var(--color-accent-hover)}#download-pdf-btn:disabled{background:var(--color-surface);color:var(--color-disabled);border:1px solid var(--color-border);cursor:not-allowed}.pdf-error-msg{color:var(--color-error);min-height:20px;margin:0;font-size:14px;line-height:1.4}#print-instruction-modal[hidden]{display:none}#print-instruction-modal{z-index:1000;padding:var(--space-md);background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-box{background:var(--color-bg);padding:var(--space-xl);gap:var(--space-md);border-radius:8px;flex-direction:column;width:100%;max-width:480px;display:flex;box-shadow:0 8px 32px #0000002e}.modal-title{color:var(--color-text);margin:0;font-size:17px;font-weight:700}.modal-intro{color:var(--color-text-secondary);margin:0;font-size:14px}.print-steps{padding-left:var(--space-lg);color:var(--color-text);margin:0;font-size:14px;line-height:1.8}.print-steps strong{color:var(--color-text)}.modal-tip{color:var(--color-text-secondary);background:var(--color-surface);padding:var(--space-sm) var(--space-md);border-radius:6px;margin:0;font-size:13px;line-height:1.5}.modal-actions{gap:var(--space-sm);padding-top:var(--space-sm);flex-direction:column;display:flex}.btn-primary{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:4px;width:100%;min-height:44px;padding:12px 24px;font-size:15px;font-weight:600;transition:background .15s}.btn-primary:hover{background:var(--color-accent-hover)}.btn-secondary{border:1px solid var(--color-accent);width:100%;min-height:44px;color:var(--color-accent);cursor:pointer;background:0 0;border-radius:4px;padding:10px 24px;font-size:15px;font-weight:600;transition:background .15s,color .15s}.btn-secondary:hover{background:var(--color-accent);color:#fff}.btn-ghost{width:100%;min-height:40px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:8px 24px;font-size:14px;transition:color .15s}.btn-ghost:hover{color:var(--color-text)}.app-header{margin-bottom:var(--space-xl)}.app-layout{gap:var(--space-xl);flex-direction:column;display:flex}.layout-education{order:2}.layout-tool{order:1}@media (min-width:768px){.app-layout{flex-direction:row;align-items:flex-start;gap:40px}.layout-education{flex-shrink:0;order:0;width:320px;max-height:calc(100vh - 48px);position:sticky;top:24px;overflow-y:auto}.layout-tool{flex:1;order:0;min-width:0}}.layout-education .how-to-steps{gap:var(--space-sm);flex-direction:column}.layout-education .how-to-arrow{align-self:center;margin-top:0;padding:0;transform:rotate(90deg)}.layout-education #how-to-section{margin-bottom:var(--space-lg)}.layout-education #barcode-guide-section{margin-bottom:0}.preview-download-row{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}#download-png-btn{border:1px solid var(--color-accent);width:auto;min-height:34px;color:var(--color-accent);cursor:pointer;background:0 0;border-radius:4px;padding:6px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s}#download-png-btn:hover:not(:disabled){background:var(--color-accent);color:#fff}#download-png-btn:disabled{border-color:var(--color-disabled);color:var(--color-disabled);cursor:not-allowed;background:0 0}#barcode-preview{margin-bottom:var(--space-md)}#app{max-width:640px}.app-layout{display:block}.layout-education,.layout-tool{all:unset;display:block}.how-to-compact{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-lg);color:var(--color-text-secondary);flex-wrap:wrap;font-size:13px;display:flex}.how-to-step-chip{align-items:center;gap:6px;display:inline-flex}.how-to-step-num{background:var(--color-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:inline-flex}.how-to-arrow-sm{color:var(--color-border);font-size:12px}.symbology-picker label{position:relative}.symbology-picker label[data-tooltip]:before{content:"";opacity:0;pointer-events:none;z-index:201;border-bottom:6px solid #1a1a2e;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;transition:opacity .15s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.symbology-picker label[data-tooltip]:after{content:attr(data-tooltip);color:#fff;white-space:normal;text-align:left;pointer-events:none;opacity:0;z-index:200;background:#1a1a2e;border-radius:6px;width:220px;padding:8px 12px;font-size:12px;font-weight:400;line-height:1.5;transition:opacity .15s;position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000002e}.symbology-picker label[data-tooltip]:hover:before,.symbology-picker label[data-tooltip]:hover:after,.symbology-picker input[type=radio]:focus+label[data-tooltip]:before,.symbology-picker input[type=radio]:focus+label[data-tooltip]:after{opacity:1}.symbology-picker input[type=radio]:first-of-type+label[data-tooltip]:after{left:0;transform:none}.symbology-picker input[type=radio]:first-of-type+label[data-tooltip]:before{left:14px;transform:none}.unified-input{border:1px solid var(--color-border);background:var(--color-bg);margin-bottom:var(--space-md);border-radius:8px;transition:border-color .15s;overflow:hidden}.unified-input:focus-within{border-color:var(--color-accent)}.unified-input.is-drag-over{border-color:var(--color-accent);background:#eff6ff}.unified-input-top{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:10px 14px 0;display:flex}.unified-input-label{color:var(--color-text);font-size:14px;font-weight:600}.unified-upload-btn{border:1px solid var(--color-accent);color:var(--color-accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:600;transition:background .1s,color .1s}.unified-upload-btn:hover{background:var(--color-accent);color:#fff}.unified-input #bulk-paste{background:0 0;border:none;border-radius:0;outline:none;width:100%;min-height:120px;padding:10px 14px 12px;display:block}.unified-input #bulk-paste:focus{border-color:#0000;outline:none}.file-info-row{background:var(--color-surface);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;padding:8px 14px;display:flex}.unified-input .file-parse-error{padding:6px 14px 10px}.symbology-hint{color:var(--color-text-secondary);margin:6px 0 12px;font-size:13px;line-height:1.4}.edu-hint-link{color:var(--color-accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;text-decoration:underline}.edu-hint-link:hover{color:var(--color-accent-hover)}.edu-panel{border:1px solid var(--color-border);background:#fff;border-radius:8px;margin-bottom:16px;overflow:hidden}.edu-summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--color-surface);border-radius:8px;align-items:center;gap:8px;padding:12px 16px;list-style:none;display:flex}.edu-summary::-webkit-details-marker{display:none}.edu-panel[open] .edu-summary{border-bottom:1px solid var(--color-border);border-radius:8px 8px 0 0}.edu-summary-icon{flex-shrink:0;font-size:16px}.edu-summary-text{color:var(--color-text);font-size:14px;font-weight:600}.edu-summary-sub{color:var(--color-text-secondary);margin-left:4px;font-size:12px}.edu-summary:after{content:"▸";color:var(--color-text-secondary);margin-left:auto;font-size:12px;transition:transform .2s}.edu-panel[open] .edu-summary:after{transform:rotate(90deg)}.edu-content{flex-direction:column;gap:16px;padding:16px;display:flex}.edu-scenarios{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.edu-scenario{border:1px solid var(--color-border);border-radius:6px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.edu-scenario p{color:var(--color-text-secondary);margin:4px 0 0}.edu-scenario strong{font-size:13px}.edu-scenario-icon{flex-shrink:0;font-size:20px;line-height:1}.edu-scenario-body{flex:1}.edu-scenario--green{background:#f0fdf4;border-color:#bbf7d0}.edu-scenario--blue{background:#eff6ff;border-color:#bfdbfe}.edu-scenario--orange{background:#fff7ed;border-color:#fed7aa}.edu-fnsku-box{background:#fff8e1;border:1px solid #ffe082;border-radius:6px;flex-direction:column;gap:6px;padding:10px 14px;font-size:13px;line-height:1.5;display:flex}.edu-fnsku-badge{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#f59e0b;border-radius:20px;align-self:flex-start;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.edu-fnsku-box p{margin:0}.edu-fnsku-box code{background:#00000012;border-radius:3px;padding:1px 4px;font-size:12px}.edu-table-wrap{border:1px solid var(--color-border);border-radius:6px;overflow-x:auto}.edu-table{border-collapse:collapse;width:100%;min-width:440px;font-size:13px}.edu-table th{background:var(--color-surface);text-align:left;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;padding:8px 12px;font-size:12px;font-weight:600}.edu-table td{border-top:1px solid var(--color-border);vertical-align:middle;padding:8px 12px}.edu-table tr:last-child td{border-bottom:none}.edu-table tr:hover td{background:#f8f9fa}.edu-chip{white-space:nowrap;border-radius:20px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.edu-chip--green{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.edu-chip--blue{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.edu-chip--slate{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1}.edu-chip--orange{color:#c2410c;background:#fff7ed;border:1px solid #fed7aa}.edu-chip--purple{color:#6d28d9;background:#f5f3ff;border:1px solid #ddd6fe}.edu-retail-note{color:var(--color-text-secondary);background:#f1f5f9;border-radius:6px;margin:0;padding:10px 14px;font-size:13px;line-height:1.5}.preview-download-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}#download-png-btn,#download-svg-btn{border:1px solid var(--color-border);cursor:pointer;width:auto;color:var(--color-text);background:0 0;border-radius:6px;padding:6px 14px;font-size:13px;transition:border-color .15s,background .15s}#download-png-btn:hover:not(:disabled),#download-svg-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background:#eff6ff}#download-png-btn:disabled,#download-svg-btn:disabled{color:var(--color-disabled);border-color:var(--color-border);cursor:not-allowed}#download-svg-btn{color:#6d28d9;border-color:#ddd6fe}#download-svg-btn:hover:not(:disabled){color:#6d28d9;background:#f5f3ff;border-color:#6d28d9}#download-svg-btn:disabled{color:var(--color-disabled);border-color:var(--color-border)}.generate-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.generate-row #generate-btn{flex:1;min-width:140px}.format-tabs{border:1px solid var(--color-border);border-radius:6px;flex-shrink:0;gap:0;display:flex;overflow:hidden}.format-tab{cursor:pointer}.format-tab input[type=radio]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.format-tab span{color:var(--color-text-secondary);border-right:1px solid var(--color-border);white-space:nowrap;-webkit-user-select:none;user-select:none;background:#fff;padding:6px 14px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:block}.format-tab:last-child span{border-right:none}.format-tab input[type=radio]:checked+span{background:var(--color-accent);color:#fff;font-weight:600}.format-tab:hover input:not(:checked)+span{background:var(--color-surface);color:var(--color-text)}.serial-panel{border:1px solid var(--color-border);background:#fff;border-radius:8px;margin-bottom:10px;overflow:hidden}.serial-summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--color-surface);border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;list-style:none;display:flex}.serial-summary::-webkit-details-marker{display:none}.serial-panel[open] .serial-summary{border-bottom:1px solid var(--color-border);border-radius:8px 8px 0 0}.serial-summary-icon{flex-shrink:0;font-size:15px}.serial-summary-text{color:var(--color-text);font-weight:600}.serial-summary-sub{color:var(--color-text-secondary);margin-left:2px;font-size:12px}.serial-summary:after{content:"▸";color:var(--color-text-secondary);margin-left:auto;font-size:11px;transition:transform .2s}.serial-panel[open] .serial-summary:after{transform:rotate(90deg)}.serial-content{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.serial-fields{flex-wrap:wrap;gap:10px;display:flex}.serial-field{flex-direction:column;flex:1;gap:4px;min-width:80px;display:flex}.serial-field label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.serial-field input{border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:6px;width:100%;min-width:0;padding:6px 10px;font-family:inherit;font-size:13px}.serial-field input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #2563eb26}.serial-preview{color:var(--color-text-secondary);background:var(--color-surface);word-break:break-all;border-radius:5px;margin:0;padding:6px 10px;font-family:ui-monospace,Cascadia Code,Fira Code,monospace;font-size:12px;line-height:1.5}.serial-fill-btn{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:6px;align-self:flex-start;padding:7px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s}.serial-fill-btn:hover{background:var(--color-accent-hover)}.zpl-badge{color:#166534;vertical-align:middle;letter-spacing:.02em;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:20px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.zpl-dpi-tabs{border:1px solid var(--color-border);border-radius:6px;gap:0;width:-moz-fit-content;width:fit-content;display:flex;overflow:hidden}.zpl-dpi-tab{cursor:pointer}.zpl-dpi-tab input[type=radio]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.zpl-dpi-tab span{color:var(--color-text-secondary);border-right:1px solid var(--color-border);white-space:nowrap;-webkit-user-select:none;user-select:none;background:#fff;padding:6px 18px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:block}.zpl-dpi-tab:last-child span{border-right:none}.zpl-dpi-tab input[type=radio]:checked+span{color:#fff;background:#166534;font-weight:600}.zpl-dpi-tab:hover input:not(:checked)+span{background:var(--color-surface);color:var(--color-text)}.zpl-custom-fields{flex-wrap:wrap;gap:12px;padding:0 0 8px;display:flex}.zpl-status{color:var(--color-text-secondary);margin:0;padding:6px 0 0;font-size:13px}.zpl-status--error{color:var(--color-error)}[hidden].zpl-status{display:none}
