/* Formulario de producto: estilos limitados a esta ventana. */
#productModal .dialog.wide{width:min(1060px,100%);max-height:calc(100dvh - 32px);border:1px solid #b8cbdc;border-radius:16px;box-shadow:0 24px 80px #081c3755;font-family:'Segoe UI',Arial,sans-serif}
#productModal .product-editor-head{align-items:center;padding:16px 22px;background:#142e49;border-bottom:3px solid #efbe45;color:#fff}
#productModal .product-eyebrow{display:block;color:#ffd46e;font-size:10px;font-weight:800;letter-spacing:1.3px;margin-bottom:4px}
#productModal .product-editor-head h2{font-size:23px;line-height:1.2;font-weight:750;color:#fff}
#productModal .product-editor-head p{color:#cedced;font-size:12px;margin-top:5px}
#productModal .product-editor-head .close{background:#ffffff12;border:1px solid #819bb5;color:#fff;border-radius:8px}
#productForm{display:block;min-height:0;padding:16px 20px;overflow:auto;overscroll-behavior:contain;background:#f5f8fb;scrollbar-gutter:stable}
#productForm [hidden]{display:none!important}
#productModal .product-editor-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:12px;align-items:stretch}
#productModal .product-panel{min-width:0;border:1px solid #cfdeeb;border-radius:11px;background:#fff;overflow:hidden}
#productModal .product-panel-title{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid #dbe5ef;background:#edf4fc}
#productModal .product-panel-title h3{border:0;padding:0;margin:0;font-size:14px;font-weight:750;color:#173956}
#productModal .product-panel-title p{margin:3px 0 0;font-size:11px;color:#5c7189;line-height:1.3}
#productModal .product-section-icon{display:grid;place-items:center;flex:0 0 31px;height:31px;background:#dbeafa;border:1px solid #b5d1ec;border-radius:8px;color:#215583}
#productModal .product-section-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
#productModal .product-fields{padding:13px 14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
#productModal label{min-width:0;display:grid;gap:5px;font-size:12px;font-weight:650;color:#28435e}
#productModal :is(input,select,textarea){min-width:0;width:100%;border:1px solid #bfd0e0;border-radius:7px;background:#fff;padding:8px 10px;font-family:inherit;font-size:14px;line-height:1.3;color:#172f48;font-weight:500;box-shadow:none}
#productModal :is(input,select){height:38px}
#productModal input::placeholder,#productModal textarea::placeholder{color:#7d8da0;font-weight:400;font-size:12px}
#productModal :is(input,select,textarea):focus{outline:3px solid #3184d320;border-color:#367fbd}
#productModal input[name=name]{font-weight:650}
#productModal input[type=number]{font-variant-numeric:tabular-nums}
#productModal .product-full{grid-column:1/-1}
#productModal .inline{gap:5px;min-width:0}
#productModal .inline input{width:0;flex:1 1 0}
#productModal .btn{border:1px solid #bdcede;border-radius:7px;box-shadow:none;font-size:12px;font-weight:700;padding:9px 13px;background:#fff;color:#173956}
#productModal .inline .btn{font-size:11px;padding:7px 9px;background:#edf4fc;flex-shrink:0}
#productModal .btn:hover{transform:none;background:#eaf2fa;border-color:#6d97bd}
#productModal .product-right-column{min-width:0;display:flex}
#productModal .product-pricing{width:100%}
#productModal .product-pricing .product-panel-title{background:#fff7e5;border-color:#ecdcb6}
#productModal .product-pricing .product-section-icon{color:#986616;background:#ffedbe;border-color:#e6cd92}
#productModal .cost-input-group{margin-top:0;min-width:0}
#productModal .product-sale-price input{background:#f2faf6;border-color:#a3cdba;font-weight:700;color:#12624e}
#productModal .product-card-price{grid-template-columns:1fr 130px;align-items:center;padding:8px 10px;border-radius:8px;background:#f2f5fa;border:1px solid #dce5ef;gap:3px 8px}
#productModal .product-card-price input{grid-column:2;grid-row:1/3;background:#e9eef6;border-color:#cbd8e6;color:#345574;font-weight:700;text-align:right}
#productModal .product-card-price small{font-size:10px;font-weight:400;line-height:1.4;color:#687c93}
#productModal .product-stock .product-panel-title{background:#edf7f4;border-color:#d1e6dc;padding-top:9px;padding-bottom:9px}
#productModal .product-stock .product-section-icon{background:#d7eee5;border-color:#acd3c4;color:#177963}
#productModal .product-stock-fields{display:grid;grid-template-columns:1fr 1fr 1.7fr;gap:12px;padding:12px 14px;align-items:end}
#productModal .product-serial-switch{display:flex;align-items:center;gap:10px;border:1px solid #cbdbe6;border-radius:8px;background:#f7fafc;padding:9px 12px;min-height:60px;cursor:pointer}
#productModal .product-serial-switch input{width:18px;height:18px;flex:0 0 18px;accent-color:#087d69}
#productModal .product-serial-switch small{display:block;margin-top:4px;font-size:11px;font-weight:400;color:#62798d}
#productModal #serialField{margin:0 14px 13px;padding-top:10px;border-top:1px solid #dce7ef}
#productModal #serialField textarea{resize:vertical;min-height:78px;font-family:Consolas,monospace}
#productModal #serialCount{font-size:11px;color:#567088;font-weight:500}
#productModal input:disabled{background:#edf1f5;color:#536980;cursor:not-allowed}
#productModal .product-extra{margin-top:12px;border:1px solid #d1deea;border-radius:9px;background:#fff;overflow:hidden}
#productModal .product-extra summary{padding:12px 14px;color:#264862;font-size:12px;cursor:pointer;font-weight:700}
#productModal .product-extra summary small{font-size:11px;font-weight:400;margin-left:12px;color:#698096}
#productModal .product-extra summary:focus-visible{outline:2px solid #367fbd;outline-offset:-3px}
#productModal .product-extra-fields{padding:2px 14px 14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#productModal .product-editor-footer{background:#f8fafc;padding:12px 20px;align-items:center;gap:9px;flex-shrink:0}
#productModal .product-editor-footer>span{margin-right:auto;font-size:11px;color:#6c8195}
#productModal .product-editor-footer .primary{background:#087d69;border:1px solid #087d69;color:#fff;padding:11px 19px;box-shadow:0 2px 0 #056553}
#productModal .product-editor-footer .primary:hover{background:#066956}
#productModal #formError{margin:10px 0 0;min-height:0;font-size:12px;line-height:1.4}
#productModal #formError:empty{display:none}
#productModal #formError:not(:empty){padding:10px 12px;background:#fff0f2;border:1px solid #edbec7;border-radius:7px;color:#a52943}
#productModal #traceabilitySection{margin-top:12px;background:#fff;border-radius:9px}
#productModal .traceability-table-wrap{overflow:auto}
@media(max-width:760px){
 #productModal{padding:8px}
 #productModal .dialog.wide{max-height:calc(100dvh - 16px)}
 #productModal .product-editor-head{padding:13px 15px}
 #productForm{padding:12px}
 #productModal .product-editor-grid{grid-template-columns:1fr}
 #productModal .product-stock-fields{grid-template-columns:1fr 1fr}
 #productModal .product-serial-switch{grid-column:1/-1;min-height:52px}
 #productModal .product-extra-fields{grid-template-columns:1fr 1fr}
 #productModal .product-extra summary small{display:block;margin:5px 0 0 16px}
 #productModal .product-editor-footer{padding:12px}
 #productModal .product-editor-footer>span{display:none}
}
@media(max-width:420px){
 #productModal .product-fields{grid-template-columns:1fr}
 #productModal .product-extra-fields{grid-template-columns:1fr}
 #productModal .product-editor-head p{max-width:240px;line-height:1.4}
 #productModal .product-editor-footer .btn{flex:1;padding:10px 8px}
}
/* Registro manual y conversión: el contenido desplaza dentro de la ventana. */
#productModal .serial-register-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;color:#173956;font-size:14px}
#productModal .serial-register-heading select{width:auto;max-width:280px;background:#edf7f4;border-color:#92bfad;font-weight:600}
#productModal #convertedCost{font-size:11px;font-weight:400;color:#42637d;line-height:1.4}
#productModal #serialCostsPanel>p{font-size:12px;color:#577189;margin:10px 0}
#productModal .serial-costs-scroll{max-height:220px;overflow:auto;border:1px solid #cadce7;border-radius:8px}
#productModal .serial-costs-table{width:100%;border-collapse:collapse;table-layout:fixed}
#productModal .serial-costs-table th{background:#eaf3f8;color:#284862;font-size:11px;padding:9px 10px;position:sticky;top:0;z-index:1;text-align:left}
#productModal .serial-costs-table td{padding:7px 10px;font-size:13px;border-bottom:1px solid #e0e8f0;overflow-wrap:anywhere}
#productModal .serial-costs-table th:first-child{width:44%}
#productModal .serial-costs-table input{height:34px}
#productModal .serial-cost-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:10px;background:#edf7f4;border-radius:7px;color:#11644e;font-size:13px}
#productModal #initialReceiptNotice{margin:0 14px 12px;font-size:12px;color:#516a81;line-height:1.5}
#productModal input[readonly]{background:#eef3f7}
@media(max-width:760px){#productModal .serial-register-heading{align-items:stretch;flex-direction:column}#productModal .serial-register-heading select{max-width:none;width:100%}#productModal .serial-cost-summary{align-items:flex-start;flex-direction:column}#productModal .serial-costs-table td,#productModal .serial-costs-table th{padding:6px}#productModal .serial-costs-table th:first-child{width:38%}}
