:root{--bg:#f7f9fb;--card:#fff;--ink:#191c1e;--muted:#5a4136;--line:#cbd5e1;--orange:#a04100;--orange2:#ff6b00;--slate:#515f74;--danger:#ba1a1a;--ok:#177245}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,sans-serif;padding-bottom:78px}a{color:inherit}.top{height:58px;position:sticky;top:0;z-index:10;background:var(--card);border-bottom:2px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 16px}.brand{font-family:'Arial Narrow',Arial,sans-serif;font-weight:800;color:var(--orange);font-size:20px;text-decoration:none}.container{max-width:1120px;margin:auto;padding:20px 16px}.title{font-family:'Arial Narrow',Arial,sans-serif;text-transform:uppercase;margin:0 0 6px;font-size:28px}.muted{color:var(--muted)}.grid{display:grid;gap:16px}.grid3{grid-template-columns:repeat(3,1fr)}.grid2{grid-template-columns:repeat(2,1fr)}.card{background:var(--card);border:1px solid var(--line);padding:16px}.hard{box-shadow:4px 4px 0 var(--slate)}.choice{min-height:150px;text-decoration:none;display:flex;flex-direction:column;justify-content:center}.choice strong{font-size:22px;color:var(--orange);text-transform:uppercase}.btn{min-height:50px;padding:12px 18px;border:0;border-radius:4px;background:var(--slate);color:#fff;font-weight:800;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background:var(--orange2);color:#351000}.btn-danger{background:var(--danger)}label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;margin-bottom:6px}input,select,textarea{width:100%;min-height:52px;padding:12px;border:1px solid var(--line);background:#fff;font-size:16px;border-radius:4px}textarea{min-height:100px}input:focus,select:focus,textarea:focus{outline:2px solid var(--orange);border-color:var(--orange)}.field{margin-bottom:16px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.nav{position:fixed;bottom:0;left:0;right:0;height:72px;background:#fff;border-top:2px solid var(--line);display:flex;justify-content:space-around;z-index:10}.nav a{flex:1;text-align:center;padding:12px 5px;text-decoration:none;font-size:12px;font-weight:bold}.nav span{display:block;font-size:22px}.alert{padding:12px;border:2px solid var(--line);margin-bottom:16px}.alert-ok{border-color:var(--ok);background:#e7f6ee}.alert-error{border-color:var(--danger);background:#ffdad6}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;min-width:800px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}th{background:var(--slate);color:#fff;text-transform:uppercase;font-size:12px}tr:nth-child(even){background:#f2f4f6}.badge{display:inline-block;padding:4px 7px;border:1px solid currentColor;font-family:monospace;font-size:12px}.photo-box{border:2px dashed var(--line);padding:20px;text-align:center}.make-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.make-option{min-height:52px;background:#fff;border:2px solid var(--line);font-weight:bold}.make-option.selected{border-color:var(--orange);color:var(--orange)}@media(max-width:720px){.grid3,.grid2{grid-template-columns:1fr}.choice{min-height:112px}.make-grid{grid-template-columns:repeat(2,1fr)}.desktop-only{display:none}}
/* Version 1.3.0 */
.v13-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.version-chip{font:700 12px JetBrains Mono,monospace;background:var(--primary,#a04100);color:#fff;padding:8px;border-radius:4px}.activity-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border,#cbd5e1);color:inherit;text-decoration:none}.activity-row small,.history-row small{display:block;color:var(--muted,#64748b)}.dashboard-work{margin:24px 0}.year-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dynamic-fields [data-for]{display:none}.dynamic-fields [data-for~="all"],.dynamic-fields [data-show="1"]{display:block}.photo-previews{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.photo-previews img{width:100%;aspect-ratio:4/3;object-fit:cover;border:2px solid #cbd5e1;border-radius:4px}.duplicate-warning{margin:16px 0;padding:16px;border:2px solid #d97706;background:#fff7ed;color:#7c2d12}.full-action{width:100%;min-height:56px}.action-field{display:flex;align-items:end}.history-row{display:grid;gap:3px;padding:12px 0;border-bottom:1px solid var(--border,#cbd5e1)}.status{display:inline-block;padding:7px 10px;margin-bottom:12px;font:700 12px JetBrains Mono,monospace;text-transform:uppercase;border:2px solid currentColor}.status-disponible{color:#177245}.status-reservado{color:#9a6700}.status-vendido,.status-desechado{color:#64748b}.status-danado{color:#ba1a1a}.quick-add{position:fixed;right:18px;bottom:84px;z-index:50}.quick-add>button{width:58px;height:58px;border:0;border-radius:50%;background:#ff6b00;color:#fff;font-size:34px;font-weight:700;box-shadow:4px 4px 0 #515f74}.quick-add-menu{position:absolute;right:0;bottom:68px;display:none;width:170px;background:var(--surface,#fff);border:2px solid #a04100;box-shadow:4px 4px 0 #515f74}.quick-add.open .quick-add-menu{display:grid}.quick-add-menu a{padding:14px 16px;border-bottom:1px solid #cbd5e1;color:inherit;text-decoration:none;font-weight:700}.qr-video{width:100%;max-width:480px;margin-top:12px;border:3px solid #a04100}.label-sheet{display:grid;grid-template-columns:repeat(2,1fr);gap:10mm}.batch-label{min-height:42mm;border:2px solid #111;padding:5mm;display:grid;grid-template-columns:34mm 1fr;gap:4mm;align-items:center;background:#fff;color:#111}.batch-label .qr-code{width:32mm;height:32mm}.batch-label h3,.batch-label p{margin:3px 0}.system-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.system-test{display:flex;gap:12px;align-items:center}.system-test>span{width:16px;height:16px;border-radius:50%}.test-ok{background:#177245}.test-error{background:#ba1a1a}.test-warn{background:#d97706}.test-info{background:#515f74}.system-test small{display:block}.log-view{white-space:pre-wrap;max-height:340px;overflow:auto;background:#191c1e;color:#eff1f3;padding:16px}.no-print{display:flex}
@media(max-width:720px){.photo-previews{grid-template-columns:repeat(2,1fr)}.system-grid{grid-template-columns:1fr}.batch-label{grid-template-columns:28mm 1fr}.label-sheet{grid-template-columns:1fr}.quick-add{bottom:92px}.dashboard-work{grid-template-columns:1fr}}
@media print{.top,.nav,.quick-add,.no-print{display:none!important}.container{max-width:none;padding:0}.label-sheet{grid-template-columns:repeat(2,1fr);gap:5mm}.batch-label{break-inside:avoid}}
/* Version 1.4.0 */
.v14-tools{margin:28px 0}.user-links{display:flex;align-items:center;gap:7px}.user-links a{color:inherit}.progress{height:16px;background:#d8dadc;border:2px solid #515f74;margin:12px 0 20px}.progress span{display:block;height:100%;background:#ff6b00}.dismantle-row{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(150px,.8fr) minmax(180px,1fr) auto auto;gap:10px;align-items:center}.dismantle-row small{display:block}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.check-grid label{min-height:48px;display:flex;align-items:center;gap:8px;border:1px solid #cbd5e1;padding:10px}.photo-quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.photo-quality-grid form{display:grid;gap:10px}.photo-quality-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.notification-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;color:inherit;text-decoration:none;margin-bottom:8px}.bulk-table input,.bulk-table select{min-width:120px}.bulk-table td{vertical-align:top}
.quick-add-menu{background:var(--card,#fff);color:var(--ink,#191c1e);border-color:var(--orange,#a04100)}.quick-add-menu a{background:var(--card,#fff)!important;color:var(--ink,#191c1e)!important;border-color:var(--line,#cbd5e1)}.quick-add-menu a:hover,.quick-add-menu a:focus{background:var(--row,#f2f4f6)!important;color:var(--orange,#a04100)!important;outline:2px solid var(--orange,#a04100);outline-offset:-2px}
@media(max-width:900px){.dismantle-row{grid-template-columns:1fr 1fr}.dismantle-row>div,.dismantle-row input{grid-column:1/-1}.photo-quality-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.check-grid,.photo-quality-grid{grid-template-columns:1fr}.notification-row{grid-template-columns:auto 1fr}.notification-row small{grid-column:2}.dismantle-row{grid-template-columns:1fr}}
/* Version 1.5.0 */
.v15-tools{margin:28px 0}.ai-card{border:2px solid var(--orange,#a04100)}.money-positive{color:#177245;font-weight:800}.money-negative{color:#ba1a1a;font-weight:800}.age{display:inline-block;padding:5px 8px;border:1px solid currentColor;font-family:monospace}.age-old{color:#ba1a1a}.map-editor{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:10px;margin-bottom:18px}.location-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.location-cell{display:grid;gap:7px;min-height:145px;padding:16px;background:var(--card,#fff);border:2px solid var(--line,#cbd5e1);color:inherit;text-decoration:none}.location-cell strong{font:800 18px monospace;color:var(--orange,#a04100)}.capacity{height:12px;background:var(--line,#cbd5e1)}.capacity i{display:block;height:100%;background:#177245}.over-capacity{border-color:#ba1a1a}.over-capacity .capacity i{background:#ba1a1a}.ai-result dl{display:grid;grid-template-columns:minmax(120px,1fr) 3fr;gap:8px 16px}.ai-result dt{font-weight:800;text-transform:capitalize}.ai-result dd{margin:0}.ai-result code,code{overflow-wrap:anywhere}
@media(max-width:900px){.location-map{grid-template-columns:repeat(2,minmax(0,1fr))}.map-editor{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.location-map,.map-editor{grid-template-columns:1fr}.ai-result dl{grid-template-columns:1fr}.ai-result dd{margin-bottom:8px}}
/* V1.5.3 - respaldo de contraste para tarjetas de fotos y alertas */
html[data-theme="dark"] body .photo-slot{background:#20262b!important;color:#fff!important;border-color:#8b99a5!important}
html[data-theme="dark"] body .photo-slot .photo-preview{background:#303940!important;color:#fff!important}
html[data-theme="dark"] body .photo-slot .photo-preview strong,
html[data-theme="dark"] body .photo-slot .photo-preview small,
html[data-theme="dark"] body .photo-slot b{color:#fff!important;opacity:1!important;-webkit-text-fill-color:#fff!important}
html[data-theme="dark"] body .photo-slot em{color:#ffc7a3!important;opacity:1!important;-webkit-text-fill-color:#ffc7a3!important}
html[data-theme="dark"] body .photo-slot.complete em{color:#7ee2ad!important;-webkit-text-fill-color:#7ee2ad!important}
html[data-theme="dark"] body .alert{background:#293138!important;color:#fff!important;border-color:#8b99a5!important;-webkit-text-fill-color:#fff!important}
html[data-theme="dark"] body .alert-ok{background:#123c2a!important;color:#e8fff2!important;border-color:#56d394!important;-webkit-text-fill-color:#e8fff2!important}
html[data-theme="dark"] body .alert-error{background:#4a2024!important;color:#fff0f0!important;border-color:#ff7b7b!important;-webkit-text-fill-color:#fff0f0!important}

/* Version 1.7.0 */
.v17-tools{margin:28px 0}.work-order-grid,.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.work-order{display:grid;gap:8px;color:inherit;text-decoration:none}.work-order progress{width:100%;height:18px;accent-color:var(--orange2)}.priority-urgente{color:#ba1a1a}.priority-alta{color:#d97706}.quick-part-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.check-card{display:grid;gap:5px;grid-template-columns:auto 1fr;align-items:center;min-height:72px;padding:12px;border:2px solid var(--line);background:var(--card)}.check-card input{width:24px;min-height:24px;grid-row:1/3}.check-card small{grid-column:2}.review-card{display:grid;gap:10px}.compact-check{display:flex;gap:8px;list-style:none;padding:0;flex-wrap:wrap}.compact-check li{padding:5px 8px;border:1px solid currentColor}.compact-check .ok{color:#177245}.compact-check .bad{color:#ba1a1a}.compact-check .warn{color:#9a6700}.alert-info{border-color:#515f74;background:#d5e3fd;color:#0d1c2f}.connection-status{position:fixed!important;top:66px!important;right:10px!important;bottom:auto!important;left:auto!important;display:inline-flex!important;align-items:center!important;width:max-content!important;max-width:calc(100vw - 20px)!important;height:auto!important;min-height:0!important;max-height:32px!important;padding:5px 9px!important;z-index:80;background:#177245;color:#fff;font:700 11px/1.2 monospace;white-space:nowrap!important;writing-mode:horizontal-tb!important}.connection-status.offline{background:#ba1a1a}.draft-link{display:block;margin:8px 0;color:inherit;text-decoration:none}
@media(max-width:900px){.work-order-grid,.review-grid,.quick-part-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.work-order-grid,.review-grid,.quick-part-grid{grid-template-columns:1fr}.connection-status{top:auto!important;bottom:78px!important;right:8px!important}}
/* Version 1.6.0 */
.duplicate-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin-bottom:10px}.sale-line{display:grid;grid-template-columns:auto 1fr auto;gap:10px;padding:12px;border-bottom:1px solid var(--line)}.sale-total{font-size:22px;font-weight:900}.quality-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.qa-check{display:flex;align-items:flex-start;gap:12px}.qa-check input{width:28px;min-height:28px}.qa-check small{display:block;color:var(--muted)}.update-banner{position:fixed;left:50%;transform:translateX(-50%);bottom:84px;z-index:1000;background:#ff6b00;color:#351000;border:3px solid #fff;padding:14px 18px;font-weight:900;box-shadow:4px 4px 0 #515f74}
@media(max-width:650px){.duplicate-pair,.quality-grid{grid-template-columns:1fr}.duplicate-pair span{text-align:center}}

/* Version 1.8.0 */
.v18-tools{margin:28px 0}.quality-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.quality-checks label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:10px}.quality-checks input{width:24px;min-height:24px}.grade-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}.grade-card{display:grid;gap:6px;text-align:center;padding:14px;border:2px solid var(--line);background:var(--card)}.grade-card input{width:24px;min-height:24px;margin:auto}.grade-card strong{font-size:30px;color:var(--orange)}.match-grid,.quality-score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.match-grid form{display:grid;gap:8px}.score-badge{justify-self:start;background:var(--orange2);color:#351000;padding:6px 9px;font-weight:900}.timeline{display:grid;gap:10px;border-left:4px solid var(--orange);padding-left:18px}.timeline-event{display:grid;gap:5px}.timeline-event strong{color:var(--orange)}.timeline-event p{margin:0}.score-card{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center;color:inherit;text-decoration:none}.score-card small{grid-column:2}.score-ring{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-weight:900;background:conic-gradient(var(--orange2) calc(var(--score)*1%),var(--line) 0);border:5px solid var(--card)}
@media(max-width:900px){.grade-grid{grid-template-columns:repeat(3,1fr)}.match-grid,.quality-score-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.quality-checks,.grade-grid,.match-grid,.quality-score-grid{grid-template-columns:1fr}.score-card{grid-template-columns:auto 1fr}}

/* Version 1.9.0 - POS */
.v19-tools{margin:28px 0}.pos-launch{background:var(--orange2)!important;color:#351000!important;border:3px solid var(--orange)!important}.pos-top{display:grid;grid-template-columns:1fr 2fr;gap:16px}.pos-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pos-product{display:grid;gap:6px}.pos-product img{width:100%;aspect-ratio:4/3;object-fit:cover}.pos-product h3,.cart-line h3{margin:2px 0}.recent-sales{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.recent-sales a{display:grid;gap:5px;text-decoration:none;color:inherit}.pos-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:18px;align-items:start}.pos-summary{position:sticky;top:72px}.pos-summary summary{cursor:pointer;font-weight:800;padding:12px 0}.cart-lines{display:grid;gap:10px;margin-top:12px}.cart-line{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center}.pos-summary dl,.invoice-totals{display:grid;grid-template-columns:1fr auto;gap:8px}.pos-summary dd,.invoice-totals dd{margin:0;text-align:right}.grand-total{font-size:28px;font-weight:900;color:var(--orange)}.payment-row{display:grid;grid-template-columns:90px 1fr 1fr;gap:7px;align-items:center;margin-bottom:7px}.payment-row label{margin:0}.hold-clock{padding:8px 10px;background:#d5e3fd;color:#0d1c2f;font:700 12px monospace}.hold-clock.expired{background:#ffdad6;color:#93000a}.invoice{margin:20px auto;background:#fff;color:#111;padding:24px;border:1px solid #aaa}.invoice-a4{max-width:850px;min-height:1050px}.invoice-thermal{width:80mm;padding:4mm;font-size:12px}.invoice header{text-align:center;border-bottom:2px solid #111}.invoice header h1{margin:0}.invoice-meta{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.invoice table{min-width:0;background:#fff}.invoice table th{background:#222}.invoice footer{text-align:center;border-top:1px dashed #555;margin-top:18px}.invoice footer .qr-code{display:inline-block}.invoice-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:20px}.invoice-thermal .invoice-meta{grid-template-columns:1fr}.invoice-thermal table th,.invoice-thermal table td{padding:4px;font-size:10px}
@media(max-width:1000px){.pos-product-grid{grid-template-columns:repeat(3,1fr)}.pos-layout{grid-template-columns:1fr}.pos-summary{position:static}.recent-sales{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.pos-top,.invoice-meta{grid-template-columns:1fr}.pos-product-grid,.recent-sales{grid-template-columns:1fr 1fr}.cart-line{grid-template-columns:1fr auto}.cart-line form{grid-column:1/-1}.payment-row{grid-template-columns:1fr}.invoice-a4{padding:12px;min-height:0}.invoice table{font-size:11px}}
@media(max-width:420px){.pos-product-grid,.recent-sales{grid-template-columns:1fr}}
.signature-pad{display:block;width:100%;max-width:600px;height:180px;background:#fff;border:2px solid var(--border,#cbd5e1);touch-action:none;margin:8px 0 16px}
@media print{.invoice-actions,.top,.nav,.quick-add,.connection-status{display:none!important}.invoice{border:0;margin:0;box-shadow:none}.invoice-a4{max-width:none}.invoice-thermal{width:80mm}}
