body{background:#fff8f2;color:#303034;font:14px Arial,sans-serif}aside:not([hidden]){position:static;width:100%;height:auto;display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:16px 32px;background:white;border-bottom:1px solid #efdfd2;overflow:visible;box-sizing:border-box}aside[hidden]{display:none!important}aside .nihala-logo{width:135px;margin:0;padding:0;background:transparent;border-radius:0}aside .tenant-logo{width:38px;margin:0;padding:0;border-radius:6px}aside p{margin:0;color:#777;font-size:12px;max-width:300px}aside nav{flex:1 0 100%;display:flex;flex-wrap:wrap;gap:5px;margin:0;border-top:1px solid #f1e5dc;padding-top:12px;overflow:visible;max-width:100%}aside nav button{display:block;width:auto;flex:0 0 auto;margin:0;padding:9px 12px;min-height:36px;border:0;background:transparent;color:#74747b;font-size:12px;border-radius:8px;text-align:center}aside nav button[aria-current=page],aside nav button.current{background:#ffeadb;color:#a64715}aside nav button:hover{background:#fff0e4;color:#a64715}[hidden]{display:none!important}main{margin:0 auto!important;max-width:1400px;padding:25px 36px;width:100%;box-sizing:border-box}main>small{font-size:10px;color:#aaa}main>h1{font-size:26px;margin:18px 0}main:has(.dash-heading)>h1{display:none}.tag{font-size:12px;display:block;background:#fff4e8;border:1px solid #f0ddcb;color:#906244;padding:10px 14px;margin:12px 0;border-radius:9px}.card{border:1px solid #efdfd2;border-radius:14px;box-shadow:0 5px 18px #874e1710;padding:22px;margin:18px 0}h2{font-size:23px}h3{font-size:16px;margin:0 0 12px}.secondary{color:#555;background:white}button{font-size:14px;min-height:42px}input,select{border-color:#dedde1}.dash-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:25px 0}.dash-heading h2{font-size:30px;letter-spacing:-1px;margin:0 0 8px}.dash-heading p,.dash-grid p{color:#93939c;font-size:12px;line-height:1.6}.dash-actions{display:flex;gap:12px;align-items:end}.dash-actions label{font-size:11px;color:#888}.dash-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.dash-metrics>div{background:white;border:1px solid #efdfd2;border-radius:14px;padding:22px}.dash-metrics>div:first-child{background:#303034;color:white;border-color:#303034}.dash-metrics small{color:#96969e;letter-spacing:0;font-size:12px}.dash-metrics strong{display:block;font-size:25px;margin:15px 0 10px;letter-spacing:-.5px}.dash-metrics span{font-size:11px;color:#999}.dash-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:20px}.dash-grid .card{min-width:0;margin-bottom:0}.dash-grid svg{width:100%;margin-top:20px;max-height:250px}.dash-legend{display:flex;gap:20px;font-size:11px;color:#999}.dash-task{display:flex;gap:12px;align-items:center;padding:18px 0;width:100%;background:transparent;border:0;border-bottom:1px solid #eee;text-align:left;color:#555}.dash-task b{background:#fff0e4;color:#b46329;border-radius:8px;padding:9px 12px}.dash-task span:last-child{margin-left:auto;color:#bf6b39;font-size:11px;white-space:nowrap}.dash-note{margin-top:22px;color:#999;font-size:11px}.dash-quick{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.dash-quick button{background:#fff0e4;color:#a45f30;border:0}.dash-empty{padding:22px 10px;background:#fffaf6;border-radius:10px;text-align:center}#home-button.current{background:#ffeadb;color:#a64715}body:has(aside[hidden]) main{max-width:750px;padding-top:36px}@media(max-width:950px){.dash-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr}}@media(max-width:700px){aside:not([hidden]){padding:14px 16px;gap:10px}aside nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}main{padding:20px 16px}.dash-heading{align-items:start;flex-direction:column}.dash-heading h2{font-size:26px}.dash-metrics{gap:10px}.dash-metrics>div{padding:16px}.dash-metrics strong{font-size:20px}.dash-actions{width:100%;justify-content:space-between}.dash-grid{gap:0}.card{padding:18px}.pos-layout{grid-template-columns:1fr}}

.nav-group{position:relative;align-self:center}.nav-group summary{cursor:pointer;color:#74747b;padding:10px 12px;font-size:12px;list-style:none}.nav-group summary::after{content:' ▾';color:#aaa}.nav-group>div{position:absolute;top:100%;left:0;z-index:20;background:white;min-width:220px;padding:8px;border:1px solid #efdfd2;border-radius:10px;box-shadow:0 10px 25px #30303420}.nav-group>div button{width:100%;text-align:left}.nav-group:not(:has(button:not([hidden]))){display:none}.nav-utility{font-size:11px!important;color:#999!important}aside nav{align-items:center}aside nav .nav-utility{order:2}@media(max-width:700px){aside nav{flex-wrap:wrap;overflow:visible}.nav-group>div{position:absolute;left:auto;right:0}}

.supplier-picker{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:20px;padding:16px;background:#fff8f2;border-radius:10px}.supplier-picker label{flex:1;min-width:220px;font-size:12px}.supplier-picker select{width:100%;box-sizing:border-box}.supplier-picker small{flex-basis:100%;font-size:11px;letter-spacing:0;color:#888}

#cash-payment{padding:16px;background:#fff2e7;border-radius:10px;margin:16px 0}#cash-payment p{font-weight:bold;color:#a54f1b}

/* Compact POS: keep full product names while reducing card chrome. */
body:has(.pos-layout) main{padding:18px 24px;max-width:1500px}
.pos-layout{gap:18px;grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr)}
.pos-top{gap:10px}.pos-top>div h2{font-size:25px!important;margin:5px 0}.pos-top button{min-height:36px;padding:9px 13px;font-size:12px}.pos-top small{font-size:10px}
.pos-layout .pos-products{padding:16px;background:#fffaf6;border:1px solid #efdfd2;border-radius:14px}
.pos-search{font-size:12px;gap:3px}.pos-search input{min-height:38px;padding:9px 12px;margin-top:3px}
.pos-categories{gap:6px;margin:10px 0;padding-bottom:4px}.pos-categories button{min-height:32px;padding:6px 10px;font-size:12px}
.product-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px;max-height:65vh;padding:2px 4px 2px 0;align-items:stretch}
.product-tile{padding:11px 12px;gap:6px;min-height:124px;border-radius:10px;box-shadow:none;justify-content:flex-start}
.product-tile small{font-size:10px;line-height:1.3;letter-spacing:0;color:#8a8581}
.product-tile strong{font-size:13px;line-height:1.35;font-weight:700;overflow-wrap:anywhere;margin:0}
.product-tile span{font-size:16px;line-height:1.2;align-self:flex-start;margin-top:auto;font-variant-numeric:tabular-nums}
.product-tile small:last-child{font-size:9px;line-height:1.25}
.pos-layout .pos-cart{padding:16px;border-radius:14px;top:12px}
.cart-heading{gap:8px;margin-bottom:10px}.cart-heading h2{font-size:21px}.cart-count{font-size:11px;min-width:24px;padding:2px 5px}
.pos-cart label{font-size:12px;margin:6px 0;gap:3px}.pos-cart input,.pos-cart select{padding:7px 9px;min-height:34px;font-size:12px;border-radius:6px}
.pos-cart .pos-notice{font-size:10px!important;line-height:1.4;margin:5px 0!important}
.cart-line{gap:6px;padding:5px 0}.cart-line label{font-size:12px;min-width:150px;margin:3px 0}
.pos-cart .quantity-controls{gap:5px;width:142px;margin-top:5px}.pos-cart .quantity-controls input{width:64px;flex-basis:64px;min-height:32px;padding:5px}.pos-cart .quantity-controls button{width:32px;flex-basis:32px;min-height:32px}
.pos-cart .cart-line>button{font-size:11px;min-height:30px;padding:6px 9px}
.pos-cart .payment-options{gap:5px;margin:8px 0}.pos-cart .payment-options button{min-height:34px;font-size:12px;padding:7px}
.pos-cart #pos-totals p{font-size:12px;margin:5px 0}.pos-cart #pos-totals .grand-total{font-size:20px;padding-top:7px;margin-top:8px}
.pos-cart #cash-payment{padding:10px;margin:10px 0}.pos-cart #pos-change{font-size:12px;margin:6px 0}
.pos-cart .pos-primary{min-height:40px;padding:9px 12px;font-size:13px;border-radius:8px;margin:5px 0}
.pos-cart .pos-secondary{min-height:32px;padding:6px 10px;font-size:11px;margin:3px 0}
@media(max-width:1000px){.pos-layout{grid-template-columns:1fr}.pos-cart{position:static}.product-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));max-height:45vh}}
@media(max-width:500px){body:has(.pos-layout) main{padding:14px 12px}.pos-layout .pos-products,.pos-layout .pos-cart{padding:12px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-tile{min-height:120px}.product-tile strong{font-size:13px}}

.dash-daily{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.dash-daily .dash-quick{margin:0;margin-left:auto}.dash-daily h3{margin-bottom:6px}.dash-daily p{font-size:12px;color:#999;margin:0}@media(max-width:950px){.dash-daily .dash-quick{margin-left:0}}

.export-buttons{display:inline-flex;gap:6px;flex-wrap:wrap;margin:10px 0}.export-buttons button{font-size:12px;min-height:32px;padding:6px 10px}.view-export{padding:10px 0}

/* Aproximación autorizada del lector PDF: fuentes del sistema, sin inventar una fuente original. */
:root{--reader-paper:#fafaf7;--reader-ink:#2c3030;--reader-accent:#ae6239;--reader-muted:#747d70}
body{font-family:Arial,sans-serif;background:var(--reader-paper);color:var(--reader-ink)}
.dash-heading h2{font-family:Arial,sans-serif;font-size:40px!important;font-weight:800;letter-spacing:-1.5px;line-height:1.05;color:var(--reader-ink)}
.nihala-accent{display:block;color:var(--reader-accent)}
.card h2,.card h3{font-family:Georgia,'Times New Roman',serif;font-weight:500}
.pos-top h2,.cart-heading h2,.invoice-heading h2{font-family:Arial,sans-serif;font-weight:700}
.dash-metrics small,.dash-heading p,.dash-note{color:var(--reader-muted)}
table,input,select,.document-half{font-family:Arial,sans-serif}
@media(max-width:700px){.dash-heading h2{font-size:32px!important}}

/* Cifras: Bahnschrift instalada en Windows, fallback sans; no fuentes de tercero. */
.dash-metrics strong,.metric-grid strong,.grand-total span,#pos-totals span,.product-tile span,.cart-count,.dash-task b,.line-total strong,#pos-change,input[type=number]{letter-spacing:-.2px}
.table-scroll td:nth-last-child(2){font-variant-numeric:tabular-nums}

.dash-metrics strong,.metric-grid strong,.grand-total span,#pos-totals span,.product-tile span,.cart-count,.dash-task b,.line-total strong,#pos-change,input[type=number]{font-family:Bahnschrift,Arial,sans-serif!important;font-weight:400!important;font-variant-numeric:tabular-nums lining-nums}

.supplier-picker input{width:100%;min-width:0;box-sizing:border-box}.item-description [name=productSearch]{margin-bottom:6px}

.supplier-results{flex-basis:100%;display:grid;gap:6px;max-height:240px;overflow:auto}.supplier-results[hidden]{display:none}.supplier-result{text-align:left;padding:10px 12px;width:100%;font-size:13px}
