:root{--purple:#512a70;--dark:#25132f;--accent:#794a99;--ink:#2a2132;--muted:#857b90;--border:#eae6f0;--bg:#f8f7fb;--white:#fff;--green:#15966c;--red:#c94e65;--shadow:0 8px 30px rgba(43,22,59,.045)}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,'Segoe UI',Arial,sans-serif;color:var(--ink);font-size:13px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}.shell{display:flex;min-height:100vh}.sidebar{width:252px;flex-shrink:0;background:linear-gradient(160deg,#25132f 0%,#361947 66%,#271335 100%);color:white;padding:26px 15px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:0 11px 26px}.brand-logo{width:41px;height:41px;border-radius:13px;background:#8651a3;display:grid;place-items:center;font-size:26px;box-shadow:0 8px 18px #12081950}.brand strong{font-size:20px;letter-spacing:2px;display:block;font-weight:850}.brand small{display:block;color:#c4accf;font-size:9px;letter-spacing:2px;margin-top:3px}.workspace{display:flex;align-items:center;gap:10px;background:#ffffff12;border:1px solid #ffffff18;border-radius:12px;padding:13px 10px;margin-bottom:27px}.workspace-dot{width:29px;height:29px;border-radius:9px;background:#d5b7e6;color:#52276c;display:grid;place-items:center}.workspace-dot:after{content:'◈';font-size:18px}.workspace div{flex:1}.workspace strong,.workspace small{display:block}.workspace strong{font-size:11px}.workspace small{color:#c6b2d0;font-size:10px;margin-top:4px}.side-label{color:#a98bb8;letter-spacing:1.8px;font-size:9px;font-weight:800;margin:0 12px 11px}.nav{display:grid;gap:3px;overflow:auto;scrollbar-width:thin}.nav button{border:0;color:#d9cce0;background:transparent;text-align:left;border-radius:10px;padding:11px 12px;display:flex;align-items:center;gap:12px;width:100%;font-size:12px;font-weight:500;transition:.15s}.nav button:hover{background:#ffffff10;color:white}.nav button.active{background:linear-gradient(100deg,#7c4b98,#71418e);color:white;box-shadow:0 6px 16px #19091e33;font-weight:700}.nav-icon{font-size:17px;width:20px;text-align:center}.side-bottom{margin-top:auto;padding-top:15px}.side-help{border-radius:13px;padding:16px;background:#ffffff0d;border:1px solid #ffffff17;display:grid;gap:7px}.help-icon{font-size:23px;color:#d8b2ee}.side-help strong{font-size:12px}.side-help small{color:#c8b3d1;font-size:10px;line-height:1.5}.version{padding:19px 4px 0;color:#a98eb9;letter-spacing:1.2px;font-size:9px;display:flex;justify-content:space-between}.main-shell{flex:1;min-width:0}.topbar{height:70px;background:#fff;border-bottom:1px solid #eee9f2;display:flex;align-items:center;justify-content:space-between;padding:0 35px}.breadcrumb{display:flex;gap:12px;align-items:center;color:#9b91a4;font-size:12px}.breadcrumb strong{color:#412b4e}.chevron{font-size:20px;color:#bcb1c3}.top-right{display:flex;align-items:center;gap:17px}.demo-tag{font-size:10px;font-weight:800;letter-spacing:.8px;background:#fff3dc;border:1px solid #f6dfb2;color:#936416;padding:8px 11px;border-radius:30px}.demo-tag.live{background:#e9f8f1;color:#16845f;border-color:#caeadb}.today{font-size:11px;color:#8c8294}.avatar{width:35px;height:35px;border:0;background:#eaddf0;color:#6b3885;font-weight:800;border-radius:50%}.content{padding:30px 35px 65px;max-width:1650px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:#9366ab;margin-bottom:9px}.page-head h1{font-size:30px;letter-spacing:-1.15px;margin:0 0 9px;font-weight:800}.page-head p{color:#8a8093;margin:0;font-size:12px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #e7dfee;background:#fff;color:#553b67;padding:11px 16px;border-radius:10px;font-weight:700;box-shadow:0 2px 5px #24122e05;white-space:nowrap}.btn:hover{background:#f8f1fc}.btn.primary{color:#fff;border-color:#784b98;background:linear-gradient(125deg,#70418f,#8956a7);box-shadow:0 6px 16px #643a8624}.btn.primary:hover{filter:brightness(1.05)}.btn.soft{background:#f3ecf8;border-color:#eee2f5}.btn.danger{color:#a82e4e;border-color:#f1d3da}.btn.small{padding:7px 10px;font-size:11px;border-radius:7px}.hero{min-height:214px;background:radial-gradient(circle at 84% 20%,#ad73ce65,transparent 36%),linear-gradient(110deg,#30163d,#582973 73%,#74418d);color:white;border-radius:19px;padding:29px 36px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;box-shadow:0 13px 28px #3e1a5319;margin-bottom:22px}.hero h2{font:700 35px Georgia,serif;letter-spacing:-.6px;line-height:1.18;margin:10px 0}.hero p{color:#e5d3ed;font-size:12px}.hero .eyebrow{color:#dec1ee}.hero .btn{background:white;color:#53286c;border-color:white;margin-top:9px}.hero-art{width:210px;position:relative;text-align:center;font-size:83px;filter:drop-shadow(0 14px 12px #17091b55)}.hero-art:before{content:'';position:absolute;inset:-22px 15px;border:1px solid #ffffff45;border-radius:50%;box-shadow:0 0 0 25px #ffffff0b}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:20px}.metric{background:white;border:1px solid var(--border);border-radius:15px;padding:19px 20px;box-shadow:var(--shadow);min-width:0}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.metric-label{font-size:11px;color:#7c7186;font-weight:600}.metric-icon{height:34px;width:34px;display:grid;place-items:center;border-radius:10px;background:#f0e5f6;color:#794599;font-size:18px}.metric-icon.green{background:#e5f6ee;color:#16966b}.metric-icon.orange{background:#fff1e4;color:#d38a4e}.metric-icon.blue{background:#e8f0fd;color:#5b84c8}.metric strong{display:block;font-size:clamp(19px,2.1vw,27px);letter-spacing:-.8px;margin:15px 0 7px;white-space:nowrap}.metric small{font-size:10px;color:#a095a8}.grid-2{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:18px;margin-bottom:20px}.grid-2.equal{grid-template-columns:1fr 1fr}.panel{background:white;border:1px solid var(--border);border-radius:16px;padding:21px;box-shadow:var(--shadow);min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:19px}.panel-head h3{margin:0 0 5px;font-size:16px;letter-spacing:-.25px}.panel-head p{margin:0;font-size:11px;color:#9b91a2}.panel-head .eyebrow{margin-bottom:6px}.legend{display:flex;gap:14px;font-size:11px;color:#877b91}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px}.chart{height:246px;width:100%}.chart svg{width:100%;height:100%;overflow:visible}.donut-row{display:flex;align-items:center;justify-content:space-around;gap:14px;min-height:246px}.donut-row svg{width:175px;height:175px;flex-shrink:0}.donut-legend{display:grid;gap:14px;flex:1;max-width:170px}.donut-legend>div{display:flex;justify-content:space-between;gap:10px;font-size:11px}.donut-legend i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px}.tablewrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;color:#91869a;background:#faf8fc;padding:14px 12px;text-transform:uppercase;letter-spacing:.5px;font-weight:800}td{padding:13px 12px;border-bottom:1px solid #f1edf4;font-size:12px}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfafe}td strong{font-weight:750}.muted{color:#92879b}.pill{display:inline-block;font-size:10px;font-weight:800;padding:6px 9px;border-radius:25px;background:#f0e8f6;color:#754793}.pill.good{background:#e6f7ed;color:#178a61}.pill.warn{background:#fff2df;color:#b77d29}.pill.bad{background:#fce8ed;color:#bd4260}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:18px;flex-wrap:wrap}.toolbar input,.toolbar select{max-width:290px}.toolbar .push{margin-left:auto}.input, input, select,textarea{border:1px solid #e5deeb;border-radius:9px;padding:11px 12px;background:#fff;color:#302439;outline:none;min-width:0}.input:focus,input:focus,select:focus,textarea:focus{border-color:#9664b2;box-shadow:0 0 0 3px #8e54b015}.form-field{display:grid;gap:7px}.form-field label{font-size:10px;font-weight:800;color:#80718d;letter-spacing:.55px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .wide{grid-column:1/-1}.form-field textarea{min-height:80px;resize:vertical}.sale-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(290px,.9fr);gap:18px}.stack{display:grid;gap:18px;align-content:start}.sale-meta{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:14px;margin-bottom:19px}.sale-meta .panel{padding:14px 18px}.sale-meta input,.sale-meta select{width:100%;margin-top:7px}.sale-meta label{font-size:10px;color:#887b91;font-weight:800;letter-spacing:.7px}.sale-grid .panel{padding:19px}.product-search{width:100%;margin:5px 0 13px}.qty-input{width:88px;padding:8px}.price-input{width:105px;padding:8px}.summary-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;color:#83778c}.summary-line strong{color:#33203f}.summary-total{display:flex;justify-content:space-between;align-items:center;padding:17px 0;margin-top:7px;border-top:1px dashed #e2d8e8}.summary-total strong{font-size:26px;color:#522870;letter-spacing:-.6px}.balance-box{display:flex;justify-content:space-between;align-items:center;background:#fff2f1;padding:16px;border-radius:11px;margin-top:15px}.balance-box strong{color:#b64d59;font-size:20px}.empty{text-align:center;padding:44px 20px;color:#978b9e}.empty-icon{width:58px;height:58px;border-radius:17px;background:#f3eaf8;color:#8e57ac;display:grid;place-items:center;font-size:27px;margin:0 auto 12px}.empty h3{color:#3c2a49;margin:0 0 7px}.empty p{font-size:12px;margin-bottom:17px}.activity{display:grid}.activity-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #f1edf4}.activity-row:last-child{border:0}.activity-icon{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;background:#f1e8f7;color:#78469a;font-size:17px}.activity-icon.green{background:#e6f6ed;color:#169569}.activity-info{flex:1;display:grid;gap:4px}.activity-info strong{font-size:12px}.activity-info small{color:#a095a7;font-size:10px}.activity-amount{font-weight:800;font-size:12px}.stock-row{margin-bottom:19px}.stock-row-top{display:flex;justify-content:space-between;font-size:11px;margin-bottom:8px}.progress{height:8px;border-radius:10px;background:#f0eaf4;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,#774393,#b78bcc);border-radius:10px}.overlay{position:fixed;inset:0;background:#180b20a6;z-index:10;display:grid;place-items:center;padding:18px}.overlay[hidden]{display:none}.modal{background:white;border-radius:19px;width:min(660px,96vw);max-height:94vh;display:flex;flex-direction:column;box-shadow:0 24px 80px #17081d60}.modal-head{padding:24px 27px 16px;border-bottom:1px solid #eee8f1;display:flex;align-items:flex-start;justify-content:space-between}.modal-head h2{margin:0;font-size:22px}.modal-body{padding:24px 27px;overflow:auto}.modal-footer{padding:16px 27px;display:flex;justify-content:flex-end;gap:9px;border-top:1px solid #eee8f1}.icon-btn{background:#f7f3fa;border:0;border-radius:9px;padding:8px 11px;color:#624375}.toast{position:fixed;right:26px;bottom:26px;background:#34213f;color:white;padding:13px 18px;border-radius:10px;box-shadow:0 12px 28px #2113293d;z-index:30;display:none;max-width:350px}.subtle-note{font-size:11px;color:#8d8095;background:#faf7fc;border:1px solid #f0eaf4;padding:12px;border-radius:10px;margin-top:13px}.kpi-badge{font-size:10px;background:#f2ebf6;color:#7b5092;padding:6px 10px;border-radius:20px}.footer-note{font-size:11px;color:#988c9f;margin-top:12px}.mini-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f1edf4}.mini-row:last-child{border:0}.mini-row strong{color:#402851}.danger-zone{border:1px solid #f0dce0;border-radius:12px;padding:17px;margin-top:18px;background:#fffafb}.info-banner{padding:15px 18px;border-radius:12px;background:#f4ecf9;color:#5c3672;margin-bottom:18px;font-size:12px}.select-client{width:100%}.chart-caption{font-size:10px;color:#a498ad}.print-only{display:none}
@media(max-width:1220px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2,.sale-grid{grid-template-columns:1fr}.sidebar{width:220px}.content{padding:24px}.topbar{padding:0 24px}}@media(max-width:760px){.sidebar{width:66px;padding:18px 6px}.brand{padding:0 0 22px;justify-content:center}.brand div:last-child,.workspace,.side-label,.nav button .nav-text,.side-bottom{display:none}.nav button{justify-content:center;padding:13px 5px}.nav-icon{font-size:20px}.content{padding:17px}.topbar{padding:0 16px;height:60px}.today{display:none}.page-head{flex-direction:column}.page-head h1{font-size:25px}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:14px}.metric strong{font-size:20px}.hero{padding:23px}.hero h2{font-size:26px}.hero-art{display:none}.donut-row{flex-wrap:wrap}.sale-meta{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.top-right{gap:8px}.demo-tag{font-size:8px}.grid-2.equal{grid-template-columns:1fr}}
@media print{body{background:white}.sidebar,.topbar,.actions,.btn,.toolbar,.toast,.overlay{display:none!important}.content{padding:0}.panel{box-shadow:none}.print-only{display:block}}

.sales-period{flex-wrap:wrap;gap:10px}.sales-period select,.sales-period input[type=month]{border:1px solid #e3d9ec;background:#fff;border-radius:9px;padding:10px;color:#402454;min-height:40px}.sales-period select{min-width:150px}

/* V11 - ganancias por operación */
.profit-amount{color:#20865d;font-weight:800;white-space:nowrap}
.profit-amount.negative{color:#b63852}
.metric strong{font-variant-numeric:tabular-nums}

.catalog-tabs{display:flex;gap:8px;margin:13px 0}
.catalog-tab{border:1px solid #dfd4e9;border-radius:10px;background:#faf7fd;color:#674a7a;padding:10px 16px;font-weight:750;cursor:pointer}
.catalog-tab.active{background:#613780;color:white;border-color:#613780;box-shadow:0 4px 12px #61378024}
.envase-note{font-size:12px;margin:0 0 12px;padding:10px 12px;background:#f7f0fc;border-left:3px solid #8d62a9}

/* DON LALO PREMIUM V15 — pulido visual */
:root{--purple:#60317f;--dark:#25122f;--accent:#8654a5;--ink:#281c34;--muted:#796f84;--border:#e8e1ed;--bg:#f6f4f9;--green:#188761;--red:#c4475f;--shadow:0 9px 28px rgba(50,22,70,.055)}
body{background:radial-gradient(ellipse at 85% 0%,#f0e8f7 0%,transparent 35%),#f6f4f9;-webkit-font-smoothing:antialiased}
.sidebar{background:linear-gradient(164deg,#261330 0%,#3a194b 65%,#291333 100%);box-shadow:4px 0 25px rgba(37,18,47,.09)}
.brand-logo{background:linear-gradient(135deg,#a979c1,#694088);border:1px solid #ffffff30;box-shadow:0 6px 20px #170b2250}
.workspace{background:#ffffff0d;border-color:#ffffff1f}
.nav button{transition:background .18s ease,transform .18s ease,color .18s ease}
.nav button:hover{transform:translateX(2px);background:#ffffff16}
.nav button.active{background:linear-gradient(100deg,#8654a5,#6b3b89);box-shadow:inset 3px 0 #d8b9e9,0 7px 17px #1c092333}
.topbar{background:rgba(255,255,255,.88);backdrop-filter:blur(8px);border-bottom:1px solid #ebe5f0}
.content{padding-bottom:45px}
.panel,.metric,.card{border-color:#eae4ef!important;box-shadow:0 7px 23px rgba(53,26,71,.045);border-radius:16px}
.panel:hover,.metric:hover{box-shadow:0 10px 30px rgba(53,26,71,.065)}
h1,h2,h3{letter-spacing:-.4px}
button{transition:filter .15s ease,transform .15s ease,box-shadow .15s ease}
button:not(:disabled):hover{filter:brightness(1.035)}
.btn.primary,.btn-primary{background:linear-gradient(115deg,#6d3a8d,#8d58ab);box-shadow:0 5px 13px #6d3a8d26;border-color:transparent}
.btn.primary:hover,.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 18px #6d3a8d36}
input,select,textarea{border-radius:9px;accent-color:#76449a}
input:focus,select:focus,textarea:focus{outline:2px solid #b18bc8;outline-offset:1px;border-color:#9d72b6}
table{border-collapse:separate;border-spacing:0}
thead th{background:#f8f5fa;color:#6f587e;font-size:10px;letter-spacing:.55px;text-transform:uppercase}
tbody tr{transition:background .15s ease}
tbody tr:hover{background:#fbf8fd}
.overlay{background:rgba(25,12,36,.6);backdrop-filter:blur(3px)}
.modal{border-radius:18px;box-shadow:0 26px 80px #1b0c2a4d;border:1px solid #e9e0ef}
.modal-head{background:linear-gradient(100deg,#fff,#faf6fc);border-bottom:1px solid #eee8f2}
.modal-footer{background:#fbf9fc;border-top:1px solid #eee8f2}
.catalog-tab{transition:.15s ease}.catalog-tab.active{background:linear-gradient(115deg,#6d3a8d,#8752a5)}
.demo-tag{letter-spacing:.3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
