*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:#f4f6f8;color:#17202a}.app{min-height:100vh;display:flex}aside{width:250px;background:#111827;color:#fff;padding:20px 14px}.brand{display:flex;align-items:center;gap:10px;padding:8px 8px 22px}.brand b{display:block}.brand small{opacity:.6}.logo{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#fff;color:#111827;font-weight:900}nav{display:flex;flex-direction:column;gap:8px}.menu-group{display:grid;gap:3px}.menu-group-title{padding:9px 10px 4px;color:#94a3b8;font-size:10px;font-weight:800;letter-spacing:.08em}nav button{border:0;background:transparent;color:#d1d5db;text-align:left;padding:11px 12px;border-radius:9px;cursor:pointer;font-size:14px}nav button:hover,nav button.active{background:#1f2937;color:#fff}nav button span{margin-left:9px}main{flex:1;padding:28px 34px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:11px;letter-spacing:.12em;opacity:.5}h1{margin:4px 0;font-size:28px}.dev{font-size:12px;background:#fff7ed;padding:8px 12px;border-radius:20px;color:#9a3412}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-head p{margin:4px 0;color:#6b7280}.section-head button{border:0;background:#111827;color:#fff;padding:10px 15px;border-radius:8px;cursor:pointer}.card,.placeholder{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:22px}.placeholder{text-align:center;padding:70px 20px}.placeholder-icon{font-size:45px}.placeholder h2{margin:12px 0 8px}.placeholder p{color:#6b7280}.placeholder span{font-size:12px;color:#9ca3af}.error{color:#b91c1c;margin-bottom:15px}.empty{text-align:center;padding:50px 20px;color:#6b7280}.empty h3{color:#374151;margin-bottom:6px}.empty p{margin-top:0}.content-list{display:grid;gap:10px}.content-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px;padding:15px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.content-item strong{display:block;margin-bottom:5px}.content-item small{display:block;color:#6b7280}.actions{display:flex;gap:8px;align-items:center}.primary{background:#111827!important;color:#fff!important}.modal-backdrop{position:fixed;inset:0;background:#0f172ab8;display:grid;place-items:center;padding:24px;z-index:1000}.modal{width:min(900px,100%);max-height:92vh;overflow-y:auto;position:relative;background:#fff;border:1px solid #d1d5db;border-radius:16px;padding:24px;box-shadow:0 25px 60px #0000004d;color:#111827}.modal-head{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:8px;background:#fff;color:#111827}.modal-head h3{margin:0;font-size:22px;color:#111827}.modal-head p{margin:5px 0 0;color:#6b7280}.modal-head button{border:0;background:transparent;color:#111827;font-size:20px;cursor:pointer;padding:5px 8px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.form-grid label{display:grid;gap:7px;font-size:13px;font-weight:600;color:#374151}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:10px 11px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;font:inherit;font-weight:400;outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#111827;box-shadow:0 0 0 2px #11182714}.form-grid textarea{resize:vertical;min-height:80px}.full{grid-column:1 / -1}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:10px;padding-top:8px}.form-actions button,.item-actions button{border:1px solid #d1d5db;background:#fff;color:#111827;padding:9px 13px;border-radius:8px;cursor:pointer}.form-actions button:hover,.item-actions button:hover{background:#f3f4f6}.item-actions{display:flex;align-items:center;gap:7px}.item-actions span{font-size:12px;background:#f3f4f6;color:#374151;padding:5px 9px;border-radius:12px}@media(max-width:800px){aside{width:70px}.brand div:not(.logo),nav button span{display:none}main{padding:20px 14px}.dev{display:none}}@media(max-width:700px){.form-grid{grid-template-columns:1fr}.full,.form-grid .form-actions{grid-column:auto}.actions{flex-wrap:wrap}.content-item{grid-template-columns:1fr}.item-actions{justify-content:flex-start;flex-wrap:wrap}.modal-backdrop{padding:10px}.modal{max-height:96vh;padding:18px}}.ai-assistant{margin:8px 0 4px;padding:20px;border:1px solid #dbe3ec;border-radius:14px;background:#f8fafc}.ai-assistant-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.ai-assistant-header h4{margin:0 0 5px;font-size:17px;color:#111827}.ai-assistant-header p{margin:0;color:#6b7280;font-size:13px}.ai-assistant-header span{flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.06em;padding:5px 9px;border-radius:999px;background:#e5e7eb;color:#4b5563}.ai-assistant>label{display:grid;gap:7px;margin-bottom:14px;color:#374151;font-size:13px;font-weight:600}.ai-assistant textarea,.ai-assistant select{width:100%;box-sizing:border-box;padding:10px 11px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;font:inherit;font-weight:400;outline:none}.ai-assistant textarea{resize:vertical;min-height:78px}.ai-assistant textarea:focus,.ai-assistant select:focus{border-color:#111827;box-shadow:0 0 0 2px #11182714}.ai-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.ai-options label{display:grid;gap:7px;color:#374151;font-size:13px;font-weight:600}.ai-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ai-actions .ai-button{width:auto;min-width:190px}.ai-regenerate-hint{font-size:12px;line-height:1.4;color:#64748b;max-width:620px}.ai-button{width:100%;border:0;border-radius:9px;padding:11px 15px;background:#111827;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.ai-button:hover:not(:disabled){opacity:.9}.ai-button:active:not(:disabled){transform:translateY(1px)}.ai-button:disabled{opacity:.65;cursor:wait}.modal .full textarea{background:#fff}@media(max-width:700px){.ai-options{grid-template-columns:1fr}.ai-assistant-header{flex-direction:column}}.kardex-20{display:grid;gap:15px}.kardex-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.kardex-head h2{margin:0;font-size:28px;color:#111827}.kardex-head p{margin:5px 0 0;color:#6b7280}.kardex-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.kardex-stat{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:17px}.kardex-stat span{display:block;color:#6b7280;font-size:13px;margin-bottom:7px}.kardex-stat strong{font-size:21px;color:#111827}.kardex-filters{display:grid;grid-template-columns:1fr 220px 1.2fr;gap:15px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:15px}.kardex-filters label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#374151}.kardex-filters input,.kardex-filters select{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;padding:10px 11px;background:#fff;color:#111827;font:inherit;font-weight:400}.kardex-current{display:flex;justify-content:space-between;gap:20px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:14px 17px}.kardex-current span{display:block;color:#64748b;font-size:12px}.kardex-current strong{display:block;color:#1e3a8a;margin-top:3px}.kardex-table-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.kardex-table-wrap{overflow-x:auto}.kardex-table{width:100%;border-collapse:collapse;min-width:1050px}.kardex-table th{text-align:left;padding:12px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:12px;white-space:nowrap}.kardex-table td{padding:12px;border-bottom:1px solid #f1f5f9;font-size:13px;vertical-align:middle}.kardex-table small{display:block;color:#9ca3af;margin-top:3px}.kardex-in{font-weight:700;color:#166534}.kardex-out{font-weight:700;color:#991b1b}.kardex-empty{text-align:center;padding:55px 20px;color:#6b7280}.kardex-empty h3{margin:0 0 6px;color:#374151}.kardex-msg{padding:12px 15px;border-radius:9px;white-space:pre-line}.kardex-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}@media(max-width:800px){.kardex-summary,.kardex-filters{grid-template-columns:1fr}.kardex-head,.kardex-current{flex-direction:column}}.simple20{width:100%}.simple-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.simple-head h2{margin:0 0 4px;font-size:28px}.simple-head p{margin:0;color:#6b7280}.simple-head>div:last-child{display:flex;gap:8px}.simple20 button{border:1px solid #d1d5db;background:#fff;color:#111827;padding:9px 13px;border-radius:8px;cursor:pointer;font:inherit}.simple20 button.primary{background:#111827;color:#fff;border-color:#111827}.simple20 button:disabled{opacity:.55}.msg{padding:12px 15px;border-radius:9px;margin-bottom:14px;white-space:pre-line}.msg.err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.msg.ok{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.stats>div{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.stats span{display:block;color:#6b7280;font-size:13px;margin-bottom:7px}.stats strong{font-size:20px}.table-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.scroll{overflow-x:auto}.table-card table{width:100%;border-collapse:collapse;min-width:820px}.table-card th{background:#f9fafb;text-align:left;padding:12px;border-bottom:1px solid #e5e7eb;font-size:12px;color:#374151}.table-card td{padding:12px;border-bottom:1px solid #f1f5f9;font-size:13px;color:#374151}.table-card small{display:block;color:#9ca3af;margin-top:3px}.empty{text-align:center;padding:60px 20px;color:#6b7280}.backdrop{position:fixed;inset:0;background:#0f172ab8;display:grid;place-items:center;padding:18px;z-index:3000}.modal{width:min(760px,100%);max-height:94vh;overflow-y:auto;background:#fff;border-radius:16px;padding:24px;box-shadow:0 25px 70px #00000059}.modal-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:18px}.modal-head h3{margin:0;font-size:22px}.modal-head button{border:0;background:transparent;padding:3px 8px;font-size:20px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.formgrid label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#374151}.ventas-price-suggestion{display:grid;grid-template-columns:1fr auto;gap:3px 12px;margin-top:9px;padding:10px 12px;background:#f8fafc;border:1px solid #dbe4ef;border-radius:9px;color:#475569;font-size:13px}.ventas-price-suggestion>span{align-self:center}.ventas-price-suggestion>strong{font-size:17px;color:#0f172a}.ventas-price-suggestion small{grid-column:1/-1;font-size:11px;color:#64748b;font-weight:400}.ventas-price-help{font-size:11px!important;color:#64748b!important;font-weight:400!important}.formgrid input,.formgrid select,.formgrid textarea{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;padding:10px 11px;background:#fff;color:#111827;font:inherit}.formgrid textarea{min-height:85px;resize:vertical}.full{grid-column:1/-1}.preview{margin-top:17px;padding:13px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;display:flex;gap:28px;flex-wrap:wrap}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}@media(max-width:900px){.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.simple-head{flex-direction:column}.stats,.formgrid{grid-template-columns:1fr}.full{grid-column:auto}}.field-action{display:flex;align-items:flex-end;gap:8px}.field-action label{flex:1}.field-action .secondary{white-space:nowrap;height:42px}.modal-small{max-width:560px}.modal-product{max-width:820px}.simple20{--pedidos-ink:#111827;--pedidos-ink-2:#1f2937;--pedidos-muted:#64748b;--pedidos-panel:#eef1f4;--pedidos-panel-2:#e5e9ee;--pedidos-border:#d5dbe2;--pedidos-white:#ffffff}.simple20 .simple-head{align-items:center;margin-bottom:20px}.simple20 .simple-head h2{letter-spacing:-.02em}.simple20 .simple-head p{color:#64748b}.pedidos-head-actions{display:flex;align-items:center;gap:10px}.simple20 .btn-soft,.simple20 .btn-main,.simple20 .btn-secondary{border:1px solid var(--pedidos-border);border-radius:10px;min-height:42px;padding:10px 15px;font-weight:650;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.simple20 .btn-soft{background:#e7ebef;color:#273244;box-shadow:0 1px 1px #0f172a0a}.simple20 .btn-soft:hover{background:#dfe4e9;transform:translateY(-1px)}.simple20 .btn-main{background:var(--pedidos-ink);border-color:var(--pedidos-ink);color:#fff;box-shadow:0 6px 16px #11182724}.simple20 .btn-main:hover{background:#202938;transform:translateY(-1px);box-shadow:0 8px 20px #1118272e}.simple20 .btn-secondary{background:#dfe4e9;color:#1f2937}.simple20 .btn-secondary:hover{background:#d5dbe1}.simple20 .msg.ok{background:#e9f6ee;border-color:#b9dfc6;color:#166534}.simple20 .msg.err{background:#f9eaea;border-color:#e8bcbc;color:#991b1b}.simple20 .stats>div{background:var(--pedidos-panel);border-color:var(--pedidos-border);box-shadow:0 2px 7px #0f172a09}.simple20 .stats>div:hover{background:#e9edf1}.simple20 .stats span{color:#64748b}.simple20 .stats strong{color:#111827}.simple20 .pedidos-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:12px;padding:12px;margin-bottom:14px;background:var(--pedidos-panel-2);border:1px solid var(--pedidos-border);border-radius:13px}.pedidos-toolbar label{margin:0}.search-box{position:relative;display:flex;align-items:center}.search-box>span{position:absolute;left:13px;z-index:1;font-size:15px;opacity:.7;pointer-events:none}.search-box input,.filter-box select{width:100%;height:42px;border:1px solid #cbd2da;border-radius:10px;background:#f8fafc;color:#17202a;font:inherit;outline:none}.search-box input{padding:0 13px 0 38px}.search-box input::placeholder{color:#8a94a3}.search-box input:focus,.filter-box select:focus{border-color:#6b7280;background:#fff;box-shadow:0 0 0 3px #64748b21}.filter-box{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px}.filter-box>span{font-size:12px;font-weight:750;color:#475569;white-space:nowrap}.filter-box select{padding:0 34px 0 11px;appearance:none;background-color:#f8fafc;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 15px) 17px,calc(100% - 10px) 17px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.simple20 .table-card{background:#f7f8fa;border-color:var(--pedidos-border);box-shadow:0 4px 14px #0f172a09}.simple20 .table-card th{background:#e3e7eb;color:#334155;font-weight:750;padding:13px 12px}.simple20 .table-card td{background:#f8fafc;border-bottom-color:#e4e8ed}.simple20 .table-card tbody tr:hover td{background:#eef2f5}.simple20 .table-card td strong{color:#17202a}.simple20 .table-card td small{color:#7b8796}.simple20 .pedido-status{min-width:125px;height:34px;padding:0 30px 0 10px;border-radius:999px;border:1px solid;font:inherit;font-size:12px;font-weight:750;cursor:pointer;appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 14px) 13px,calc(100% - 9px) 13px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.simple20 .status-solicitado{background-color:#eef2f6;border-color:#cbd5e1;color:#334155}.simple20 .status-confirmado{background-color:#eef2ff;border-color:#c7d2fe;color:#3730a3}.simple20 .status-en_transito{background-color:#fff7e8;border-color:#f4d49a;color:#92400e}.simple20 .status-recibido{background-color:#eaf7ee;border-color:#b7dfc4;color:#166534}.simple20 .status-entregado{background-color:#e6f4f1;border-color:#a9d8d0;color:#115e59}.simple20 .status-cancelado{background-color:#f9eaea;border-color:#e8bcbc;color:#991b1b}.simple20 .backdrop{background:#0f172ac7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.simple20 .modal{width:min(820px,100%);background:#edf0f3;border:1px solid #cfd5dc;border-radius:18px;padding:0;overflow-y:auto;box-shadow:0 28px 80px #00000061}.simple20 .modal-head{margin:0;padding:20px 24px;background:#1f2937;color:#fff;border-bottom:1px solid #111827}.simple20 .modal-head h3{color:#fff}.simple20 .modal-head p{color:#cbd5e1}.simple20 .modal-head button{color:#e5e7eb;width:36px;height:36px;border-radius:9px;background:#ffffff14}.simple20 .modal-head button:hover{background:#ffffff29}.simple20 .modal .formgrid,.simple20 .modal .stats,.simple20 .modal .msg,.simple20 .modal>.actions{margin-left:24px;margin-right:24px}.simple20 .modal .formgrid{padding-top:22px}.simple20 .formgrid label{color:#334155}.simple20 .formgrid input,.simple20 .formgrid select,.simple20 .formgrid textarea{background:#f8fafc;border-color:#cbd2da;border-radius:10px;min-height:42px}.simple20 .formgrid textarea{min-height:90px}.simple20 .formgrid input:focus,.simple20 .formgrid select:focus,.simple20 .formgrid textarea:focus{background:#fff;border-color:#64748b;box-shadow:0 0 0 3px #64748b1f}.simple20 .field-action{align-items:end;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.simple20 .field-action .btn-secondary{min-width:145px}.simple20 .field-hint{display:block;color:#94a3b8;font-size:11px;font-weight:500;margin-top:-2px}.simple20 .field-action .btn-secondary{height:42px}.simple20 .modal>.msg{background:#e3e7eb;border-color:#cbd2da;color:#475569}.simple20 .modal .stats{margin-top:16px!important}.simple20 .modal .stats>div{background:#e1e5e9}.simple20 .pedidos-actions{padding:18px 0 24px}.simple20 .pedidos-actions .btn-soft{background:#dfe4e9}@media(max-width:700px){.pedidos-head-actions{width:100%}.pedidos-head-actions button{flex:1}.simple20 .pedidos-toolbar,.filter-box{grid-template-columns:1fr}.simple20 .modal-head{padding:17px 18px}.simple20 .modal .formgrid,.simple20 .modal .stats,.simple20 .modal .msg,.simple20 .modal>.actions{margin-left:18px;margin-right:18px}}.simple20 .field-action{gap:10px}.simple20 .field-action label{min-width:0}.simple20 .field-action .btn-secondary{min-width:128px;padding:9px 12px;height:42px;border-radius:10px;font-size:12.5px;line-height:1;box-shadow:0 1px 2px #0f172a0d}.simple20 .field-action .btn-secondary:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0f172a14}.simple20 .field-hint{display:inline-block;margin-left:5px;color:#7b8796;font-size:11px;font-weight:500}.simple20 .pedidos-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;border-top:1px solid #d4d9df}.simple20 .pedidos-actions .btn-soft,.simple20 .pedidos-actions .btn-main{min-width:112px;min-height:42px;border-radius:10px}.simple20 .pedidos-actions .btn-main{min-width:132px}@media(max-width:520px){.simple20 .field-action{flex-direction:column;align-items:stretch}.simple20 .field-action .btn-secondary{width:100%}.simple20 .pedidos-actions{justify-content:stretch}.simple20 .pedidos-actions button{flex:1}}.pedidos-table-actions{white-space:nowrap}.pedido-action{font-size:12px!important;padding:7px 9px!important}.pedido-linked{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;padding:6px 8px;border-radius:999px;white-space:nowrap}.purchase-context{display:grid;gap:4px;padding:12px 14px;margin-bottom:14px;background:#eef2f7;border:1px solid #d7dee8;border-radius:10px;color:#475569;font-size:13px}.purchase-context strong{font-size:16px;color:#0f172a}.purchase-total{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:13px 14px;background:#eef2f7;border:1px solid #d7dee8;border-radius:10px}.purchase-total strong{font-size:20px;color:#0f172a}.purchase-modal{max-width:620px!important}.table-card td:last-child{white-space:nowrap}.compact-action{padding:7px 10px!important;font-size:12px!important;white-space:nowrap}.dashboard20{display:grid;gap:16px}.dash-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.dash-head h2{margin:0 0 5px}.dash-head p{margin:0;color:#64748b}.dash-months{display:flex;gap:8px;flex-wrap:wrap}.dash-months button{border:1px solid #d5dce5;background:#fff;color:#334155;border-radius:10px;padding:8px 12px;cursor:pointer}.dash-months button.active{background:#111827;color:#fff;border-color:#111827}.dash-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:16px}.dash-card{background:#fff;border:1px solid #dbe1e8;border-radius:14px;padding:16px;box-shadow:0 1px 2px #0f172a08}.dash-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.dash-card-head h3{margin:0;font-size:16px}.dash-card-head span{font-size:12px;color:#7b8796}.bars{height:190px;display:flex;align-items:flex-end;justify-content:space-around;gap:12px;padding:10px 4px 0;border-bottom:1px solid #e2e8f0}.bar-item{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.bar{width:min(44px,70%);min-height:8px;background:#111827;border-radius:7px 7px 0 0}.bar-value{font-size:11px;color:#64748b}.bar-item small{color:#64748b}.money-lines{display:grid}.money-lines div{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #edf0f4}.money-lines div:last-child{border-bottom:0}.money-lines span{color:#64748b}.rank-list{display:grid}.rank-row{display:grid;grid-template-columns:42px 1fr 80px 110px;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf0f4}.rank-row:last-child{border-bottom:0}.rank-row>strong{color:#64748b}.rank-row div{display:grid}.rank-row small{color:#94a3b8}.rank-row>span,.rank-row>b{text-align:right}.recommendations{display:grid;gap:10px}.recommendation{display:flex;justify-content:space-between;gap:16px;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;background:#fafbfc}.recommendation.high{border-color:#fecaca;background:#fff7f7}.recommendation.medium{border-color:#fde68a;background:#fffdf5}.recommendation.low{border-color:#bfdbfe;background:#f7fbff}.recommendation div:first-child{display:grid;gap:3px}.recommendation div:first-child>b{font-size:11px;text-transform:uppercase}.recommendation.high div:first-child>b{color:#b91c1c}.recommendation.medium div:first-child>b{color:#a16207}.recommendation.low div:first-child>b{color:#1d4ed8}.recommendation p{margin:2px 0 0;color:#64748b;font-size:13px}.rec-numbers{display:flex;align-items:center;gap:14px;white-space:nowrap;color:#64748b;font-size:12px}.rec-numbers b{color:#0f172a}.dash-note{padding:12px 14px;border:1px solid #dbeafe;background:#f8fbff;color:#475569;border-radius:12px;font-size:13px}@media(max-width:850px){.dash-grid{grid-template-columns:1fr}.rank-row{grid-template-columns:35px 1fr 65px}.rank-row>b{display:none}.recommendation{flex-direction:column}.rec-numbers{justify-content:flex-start}.dash-head{flex-direction:column}}.rec-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:-2px 0 12px}.rec-summary>div{border:1px solid #e2e8f0;border-radius:10px;padding:9px 10px;display:grid;gap:2px;background:#fafbfc}.rec-summary b{font-size:17px}.rec-summary span{font-size:11px;color:#64748b}.recommendation.review{border-color:#ddd6fe;background:#faf7ff}.recommendation.review div:first-child>b{color:#6d28d9}.recommendation small{color:#94a3b8;font-size:11px}@media(max-width:850px){.rec-summary{grid-template-columns:repeat(2,1fr)}}.radar-card{border:1px solid #d8dee8;border-radius:14px;padding:14px;background:#fff}.pill{display:inline-flex;align-items:center;border:1px solid #cfd7e3;border-radius:999px;padding:5px 9px;font-size:12px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.empty{padding:28px;text-align:center;color:#64748b}.error-message{margin:12px 0;padding:12px 14px;border:1px solid #fecaca;background:#fff1f2;border-radius:10px;color:#991b1b}.success-message{margin:12px 0;padding:12px 14px;border:1px solid #bbf7d0;background:#f0fdf4;border-radius:10px;color:#166534}.content-item img{border-radius:8px;background:#fff;padding:2px}.modal-backdrop{position:fixed;inset:0;background:#0f172a9e;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.modal{background:#fff;border-radius:18px;max-height:92vh;overflow:auto;width:min(1100px,100%);padding:20px;box-shadow:0 24px 70px #0f172a4d}.modal-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.modal-head button{border:0;background:#e2e8f0;border-radius:10px;padding:8px 12px;cursor:pointer}.modal-head h3{margin:0 0 4px}.modal-head p{margin:0;color:#64748b}.modal pre{font-size:14px;line-height:1.45}.modal .actions{display:flex;gap:8px}@media(max-width:760px){.modal{padding:14px}.modal>div:nth-child(2){grid-template-columns:1fr!important}.modal .actions{flex-wrap:wrap}}.proveedores20 .prov-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.proveedores20 .prov-stats>div{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px 16px;display:grid;gap:4px}.proveedores20 .prov-stats strong{font-size:22px;color:#111827}.proveedores20 .prov-stats span{font-size:12px;color:#64748b}.prov-filters{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px;margin-bottom:14px}.prov-filters label{display:grid;gap:6px;font-size:12px;font-weight:600;color:#374151}.prov-filters input,.prov-filters select{border:1px solid #d1d5db;border-radius:8px;padding:10px 11px;font:inherit;color:#111827;background:#fff}.prov-filters .search-field{min-width:0}.proveedores20 .table-title{display:flex;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid #e5e7eb;color:#64748b;font-size:12px}.proveedores20 .table-title strong{color:#111827;font-size:13px}.proveedores20 .table-card table{min-width:1120px}.prov-note{max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prov-tag{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:11px;border:1px solid #dbe3ee;background:#f8fafc}.prov-tag.principal{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.prov-tag.mayorista{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.prov-tag.especial{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.prov-tag.complementario{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}.prov-wa{color:#166534;text-decoration:none;white-space:nowrap}.prov-wa:hover{text-decoration:underline}.row-actions{white-space:nowrap}.row-actions button{padding:7px 9px!important;margin-right:5px}.danger-soft{color:#991b1b!important}.empty-cell{text-align:center!important;padding:42px!important;color:#64748b!important}.modal-wide{width:min(820px,100%)}.modal-xl{width:min(1080px,100%)}.prov-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.prov-detail-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:14px;margin-bottom:12px}.prov-detail-card h4{margin:0 0 10px;font-size:14px}.prov-detail-card p{margin:7px 0;color:#475569;font-size:13px}.prov-detail-card .scroll table{min-width:650px}.button-link{display:inline-flex;align-items:center;text-decoration:none;border:1px solid #d1d5db;background:#fff;color:#111827;padding:9px 13px;border-radius:8px;cursor:pointer;font:inherit}.button-link.primary{background:#111827;color:#fff;border-color:#111827}.muted{color:#64748b;font-size:13px}@media(max-width:900px){.proveedores20 .prov-stats{grid-template-columns:repeat(2,1fr)}.prov-detail-grid{grid-template-columns:1fr}}@media(max-width:700px){.proveedores20 .prov-stats,.prov-filters{grid-template-columns:1fr}.proveedores20 .simple-head>div:last-child{width:100%;flex-wrap:wrap}.proveedores20 .simple-head>div:last-child button{flex:1}.modal-wide .formgrid{grid-template-columns:1fr}}.config-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:18px}.config-card{padding:22px}.config-card h3{margin:0 0 8px}.config-card label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;margin:14px 0}.config-card input:not([type=checkbox]),.config-card textarea{border:1px solid var(--border,#dfe3ea);border-radius:10px;padding:11px 12px;font:inherit;background:#fff}.config-card textarea{resize:vertical}.check-row{flex-direction:row!important;align-items:center}.check-row input{width:17px;height:17px}.logo-preview{height:220px;border:1px dashed #d7dce4;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#fafbfc;margin:15px 0;overflow:hidden}.logo-preview img{max-width:82%;max-height:190px;object-fit:contain}.upload-box{border:1px dashed #c9ced8;border-radius:12px;padding:16px;text-align:center;cursor:pointer;background:#fbfcfe}.upload-box span{display:block;font-weight:800}.upload-box small{display:block;color:#6b7280;margin-top:5px}.upload-box input{display:none}.file-picked{font-size:13px;color:#087f5b}.config-note{margin-top:16px;padding:12px;border-radius:10px;background:#f5f7fa;color:#667085;font-size:12px}.alert{margin-top:16px;padding:12px 14px;border-radius:10px;font-weight:700}.alert.success{background:#e9f8f0;color:#176b46}.alert.error{background:#fff0f0;color:#a22b2b}.config-preview{margin-top:18px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.identity-strip{display:flex;align-items:center;gap:18px;border:1px solid #e3e6eb;border-radius:14px;padding:14px 18px;min-width:390px}.identity-strip img{width:120px;height:70px;object-fit:contain}.identity-strip div{display:flex;flex-direction:column;gap:5px}.identity-strip span{font-size:12px;color:#6b7280}@media(max-width:900px){.config-grid{grid-template-columns:1fr}.config-preview{display:block}.identity-strip{min-width:0;margin-top:15px}}.doc-tabs{display:flex;gap:8px;margin:16px 0}.doc-tabs button{border:1px solid #d9dde5;background:#fff;padding:10px 15px;border-radius:10px;font-weight:700}.doc-tabs button.active{background:#111827;color:#fff}.doc-builder{display:grid;grid-template-columns:340px 1fr;gap:18px;align-items:start}.doc-form{padding:20px;display:flex;flex-direction:column;gap:12px}.doc-form label{font-size:13px;font-weight:700;display:flex;flex-direction:column;gap:6px}.doc-form input,.doc-form select,.doc-form textarea{border:1px solid #d9dde5;border-radius:9px;padding:10px;font:inherit;background:#fff}.doc-form .actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.doc-preview{padding:24px;overflow:auto;background:#f5f6f8}.doc-preview .doc{background:#fff;padding:30px;min-width:650px;box-shadow:0 5px 25px #10182814}@media(max-width:1000px){.doc-builder{grid-template-columns:1fr}.doc-preview .doc{min-width:0}}.doc-preview .doc .brand{display:flex;align-items:center;gap:15px}.doc-preview .doc .brand img{width:130px!important;height:70px!important;max-width:130px!important;max-height:70px!important;object-fit:contain!important;flex:0 0 130px}.doc-preview .doc .brand>div{min-width:0}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f3f5f8;padding:24px}.login-card{width:min(420px,100%);background:#fff;border:1px solid #e1e5eb;border-radius:18px;padding:32px;box-shadow:0 12px 35px #10182814}.login-logo{width:64px;height:64px;border-radius:16px;background:#111827;color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900;margin-bottom:18px}.login-card h1{margin:8px 0}.login-card p{color:#667085}.login-card form{display:flex;flex-direction:column;gap:14px;margin-top:22px}.login-card label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:13px}.login-card input{border:1px solid #d9dde5;border-radius:10px;padding:11px;font:inherit}.login-btn{width:100%;margin-top:4px}.header-right{display:flex;align-items:center;gap:8px}.role-pill{padding:6px 10px;border-radius:999px;background:#e8eefc;font-size:11px;font-weight:900}.logout{margin:12px 14px;padding:10px;border:1px solid #2c3748;background:transparent;color:#e6eaf0;border-radius:9px;cursor:pointer}.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.role-grid>div{padding:15px;border:1px solid #e2e6ec;border-radius:12px;display:flex;flex-direction:column;gap:6px}.role-grid span{font-size:12px;color:#667085}.security-table{margin-top:18px;padding:18px;overflow:auto}.security-table table{width:100%;border-collapse:collapse}.security-table th,.security-table td{padding:11px;border-bottom:1px solid #e5e7eb;text-align:left}.security-table select{padding:7px;border-radius:8px;border:1px solid #d9dde5}.security-note{margin-top:18px;padding:14px;color:#667085}@media(max-width:800px){.role-grid{grid-template-columns:1fr}.header-right .dev{display:none}}.section-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.badge{font-size:12px;padding:4px 8px;border-radius:999px;background:#eef2ff}.modal-backdrop{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{width:min(520px,100%);max-height:90vh;overflow:auto}.modal label{display:block;margin:12px 0;font-weight:600}.modal input,.modal select{display:block;width:100%;box-sizing:border-box;margin-top:6px}.security-table table input[type=checkbox]{width:18px;height:18px}aside{height:100vh;position:sticky;top:0;display:flex;flex-direction:column;width:220px;padding:14px 10px;overflow:hidden}aside .brand{padding:6px 7px 14px}aside nav{flex:1;overflow-y:auto;overflow-x:hidden;padding-right:3px;scrollbar-width:thin}aside nav::-webkit-scrollbar{width:6px}aside nav::-webkit-scrollbar-thumb{background:#374151;border-radius:10px}aside nav button{padding:8px 10px;font-size:13px}aside .logout{flex:0 0 auto}.link-button{border:0;background:transparent;color:#475467;cursor:pointer;margin-top:14px}@media(max-width:900px){aside{width:200px}main{padding:22px}}.permission-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.permission-summary>div{border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;display:flex;justify-content:space-between;gap:10px;align-items:center}.permission-summary span{font-size:12px;opacity:.75}.permission-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,1.5fr);gap:12px;margin:14px 0}.permission-form label,.permission-editor label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600}.permission-form select{padding:10px;border:1px solid #d1d5db;border-radius:8px;background:#fff}.permission-editor{border:1px solid #e5e7eb;border-radius:10px;padding:14px}.permission-editor>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.permission-editor h4{margin:0;font-size:15px}.permission-editor span{font-size:12px;opacity:.7}.permission-checks{display:flex;flex-wrap:wrap;gap:10px}.permission-checks label{flex-direction:row;align-items:center;border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;font-weight:500}@media(max-width:700px){.permission-form,.permission-summary{grid-template-columns:1fr}}.simple20 .client-modal-layer{z-index:3100}.simple20 .client-modal-layer .msg.err{margin:16px 24px 0;background:#fee2e2;border-color:#fecaca;color:#991b1b;font-weight:600}.report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0}.report-grid.compact{margin:0}.report-stat{background:#fff;border:1px solid #d8dee8;border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:7px}.report-stat span{font-size:13px;color:#58708f}.report-stat strong{font-size:25px}.report-stat small{color:#72839b}.report-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.report-columns table{width:100%;border-collapse:collapse}.report-columns th,.report-columns td{padding:11px 8px;border-bottom:1px solid #e5e9ef;text-align:left}.report-columns td:last-child,.report-columns th:last-child{text-align:right}.report-columns td small{display:block;color:#72839b;margin-top:2px}.module-page{width:100%}.module-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.module-head h2{margin:0}.module-head p{margin:5px 0 0;color:#58708f}.module-head button{border:1px solid #ccd5e1;background:#fff;border-radius:9px;padding:9px 13px}.dash-card{background:#fff;border:1px solid #d8dee8;border-radius:15px;padding:16px;margin-top:16px}.dash-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.dash-card-head h3{margin:0}.dash-card-head span{font-size:12px;color:#72839b}.money-lines>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e5e9ef}.money-lines>div:last-child{border-bottom:0}.dash-note{margin-top:16px;padding:12px 14px;background:#eef6ff;border:1px solid #d3e5fb;border-radius:12px;color:#2e5f94;font-size:13px}@media(max-width:900px){.report-grid{grid-template-columns:1fr 1fr}.report-columns{grid-template-columns:1fr}}@media(max-width:520px){.report-grid{grid-template-columns:1fr}}.payment-history{margin-top:18px;padding-top:16px;border-top:1px solid #e5e7eb}.payment-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.payment-history-head strong{font-size:16px;color:#111827}.payment-history-head p{margin:4px 0 0;color:#6b7280;font-size:12px}.payment-history-head>span{font-size:12px;color:#6b7280}.payment-history-empty{padding:18px;text-align:center;background:#f9fafb;border:1px dashed #d1d5db;border-radius:10px;color:#6b7280;font-size:13px}.payment-history-table{margin-top:0}.payment-history-table table{min-width:620px}.payment-history-totals{display:flex;justify-content:flex-end;gap:24px;flex-wrap:wrap;margin-top:10px;padding:12px 14px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;color:#475569;font-size:13px}.payment-history-totals strong{margin-left:5px;color:#111827}.payment-history-table .table-card{border:0}@media(max-width:700px){.payment-history-head{flex-direction:column}.payment-history-totals{justify-content:space-between;gap:10px}}.payment-context{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;margin:-4px 0 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#475569;font-size:13px}.payment-context strong{color:#0f172a}.payment-context span{font-weight:700}.module-head,.simple-head,.dash-head{padding-bottom:4px}.module-head p,.simple-head p,.dash-head p{max-width:760px;line-height:1.45}.table-card th{position:sticky;top:0;z-index:1}@media(max-width:700px){.payment-context{align-items:flex-start;flex-direction:column}}.header-context{margin:4px 0 0;color:#64748b;font-size:13px;font-weight:600}.payment-sale-ref{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:12px;font-weight:700}.simple-head,.module-head,.dash-head{align-items:center}.simple-head>div:first-child,.module-head>div:first-child,.dash-head>div:first-child{min-width:0}.dash-product-cell{display:flex;align-items:center;gap:10px;min-width:0}.dash-product-thumb{display:block;width:56px;height:56px;object-fit:contain;object-position:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;flex:0 0 56px}.report-product-thumb,.ventas-product-thumb{display:block;width:48px;height:48px;object-fit:contain;object-position:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;flex:0 0 48px}.kardex-product-thumb{display:block;width:44px;height:44px;object-fit:contain;object-position:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;flex:0 0 44px}.advisor-product-image{display:block;width:82px;height:82px;object-fit:contain;object-position:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;flex:0 0 82px}.advisor-product-placeholder{display:grid;place-items:center;font-size:32px}.ventas-selected-product img{display:block;width:56px;height:56px;object-fit:contain;object-position:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex:0 0 56px}.compras-product-thumb+div,.ventas-product-thumb+div{min-width:0}@media(max-width:700px){.dash-product-thumb{width:48px;height:48px;flex-basis:48px}.advisor-product-image{width:68px;height:68px;flex-basis:68px}}.table-toolbar{padding:12px 14px;border-bottom:1px solid #e5e7eb}.table-toolbar label{display:block;font-size:13px}.table-toolbar input{display:block;width:100%;margin-top:6px;box-sizing:border-box}.actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.modal-wide{max-width:1100px;width:min(1100px,94vw)}.client-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.client-detail-grid>div{padding:12px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc}.client-detail-grid span{display:block;font-size:12px;color:#64748b;margin-bottom:5px}.client-detail-grid strong{display:block;word-break:break-word}.client-detail-stats{margin:10px 0 18px}.payment-history-head{margin:16px 0 8px}.payment-history-head p{margin:3px 0 0;color:#64748b;font-size:13px}.payment-history-empty{padding:18px;border:1px solid #e5e7eb;border-radius:10px;color:#64748b}.danger{background:#b91c1c;color:#fff}.msg.err p{margin:7px 0 0}.table-card button{white-space:nowrap}@media(max-width:800px){.client-detail-grid{grid-template-columns:1fr}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px;background:radial-gradient(circle at 15% 15%,rgba(37,99,235,.18),transparent 30%),radial-gradient(circle at 85% 85%,rgba(22,163,74,.14),transparent 28%),#0b1220;position:relative;overflow:hidden}.login-page:before,.login-page:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.08);border-radius:50%}.login-page:before{left:-180px;bottom:-190px}.login-page:after{right:-190px;top:-190px}.login-card{width:min(980px,100%);min-height:600px;display:grid;grid-template-columns:1.02fr .98fr;overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.16);border-radius:26px;box-shadow:0 28px 80px #00000057;position:relative;z-index:1}.login-hero{position:relative;display:flex;flex-direction:column;justify-content:center;padding:54px;color:#fff;overflow:hidden;background:linear-gradient(145deg,#08182efa,#0f172af0),#111827}.login-hero:before{content:"";position:absolute;inset:0;opacity:.28;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:34px 34px;transform:skewY(-8deg) scale(1.2)}.login-hero-glow{position:absolute;width:260px;height:260px;border-radius:50%;background:#2563eb47;filter:blur(10px);right:-90px;top:-70px}.login-brand-mark{position:relative;width:150px;height:180px;display:flex;align-items:center;justify-content:center;margin-bottom:10px}.login-brand-mark img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 24px rgba(0,0,0,.35))}.login-kicker{position:relative;font-size:11px;letter-spacing:.18em;opacity:.7;font-weight:800}.login-hero h1{position:relative;font-size:40px;line-height:1.08;margin:10px 0 12px;max-width:430px}.login-hero p{position:relative;color:#cbd5e1;line-height:1.65;max-width:430px;margin:0}.login-features{position:relative;display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.login-features span{padding:9px 12px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:#ffffff0f;font-size:12px;color:#e2e8f0}.login-form-panel{padding:58px 54px;display:flex;flex-direction:column;justify-content:center;background:#f8fafc}.login-form-heading{display:flex;align-items:center;gap:13px}.login-form-heading h2{font-size:30px;margin:3px 0 0;color:#111827}.login-form-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#e8f0ff;font-size:24px}.login-intro{color:#667085;margin:8px 0 24px;line-height:1.5}.login-card form{display:flex;flex-direction:column;gap:16px;margin-top:0}.login-card label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:13px;color:#344054}.login-card label span{display:flex;align-items:center;gap:6px}.login-card input{width:100%;border:1px solid #d0d5dd;border-radius:11px;padding:13px 14px;font:inherit;background:#fff;outline:none;transition:border-color .18s,box-shadow .18s}.login-card input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.login-btn{width:100%;margin-top:2px;min-height:48px;border-radius:11px;font-weight:800}.login-card small{display:block;color:#667085;margin-top:18px;line-height:1.5}.login-card .success-copy{color:#166534}.link-button{border:0;background:transparent;color:#475467;cursor:pointer;margin-top:14px;padding:5px 0;text-align:left}.link-button:hover{text-decoration:underline}.soccer-loading{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 35%,rgba(37,99,235,.2),transparent 34%),#0b1220;color:#fff}.soccer-loading-card{width:min(520px,100%);text-align:center;padding:34px 28px 30px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:#111827e0;box-shadow:0 24px 60px #0000004d}.soccer-pitch{height:170px;position:relative;margin-bottom:20px;overflow:hidden;border-radius:18px;background:linear-gradient(to bottom,#0f172a40,#16653466),repeating-linear-gradient(90deg,#ffffff06 0 45px,#ffffff0e 45px 90px)}.soccer-pitch:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#ffffff2e}.soccer-goal{position:absolute;right:30px;top:27px;width:110px;height:112px;border:4px solid rgba(255,255,255,.9);border-bottom:0;border-radius:4px 4px 0 0;box-shadow:0 0 18px #ffffff1f}.soccer-goal:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 16px,rgba(255,255,255,.22) 17px 18px),repeating-linear-gradient(90deg,transparent 0 17px,rgba(255,255,255,.2) 18px 19px);opacity:.65}.soccer-goal span{position:absolute;bottom:-7px;width:4px;height:10px;background:#fff}.soccer-goal span:nth-child(1){left:-4px}.soccer-goal span:nth-child(2){right:-4px}.soccer-goal span:nth-child(3){left:50%;transform:translate(-50%)}.soccer-ball{position:absolute;left:58px;bottom:22px;font-size:39px;filter:drop-shadow(0 7px 6px rgba(0,0,0,.3));animation:soccer-shot 1.9s cubic-bezier(.42,0,.18,1) infinite}.soccer-loading-brand{font-size:12px;letter-spacing:.16em;color:#94a3b8;font-weight:800}.soccer-loading-brand b{color:#60a5fa}.soccer-loading-message{margin-top:10px;font-size:15px;font-weight:700}@keyframes soccer-shot{0%{transform:translate(0) rotate(0) scale(.92);opacity:.35}15%{opacity:1}70%{transform:translate(min(330px,65vw),-22px) rotate(560deg) scale(1);opacity:1}82%{transform:translate(min(330px,65vw),-22px) rotate(680deg) scale(.88);opacity:1}to{transform:translate(min(330px,65vw),-22px) rotate(760deg) scale(.72);opacity:0}}nav button{display:flex;align-items:center;gap:9px}nav button .menu-icon{width:24px;min-width:24px;display:grid;place-items:center;font-size:17px;line-height:1}nav button span:not(.menu-icon){margin-left:0}nav button:hover .menu-icon,nav button.active .menu-icon{transform:scale(1.08)}.menu-icon{transition:transform .15s ease}@media(max-width:760px){.login-page{padding:14px}.login-card{grid-template-columns:1fr;min-height:auto;border-radius:20px}.login-hero{padding:30px 26px 26px;min-height:320px}.login-brand-mark{width:100px;height:120px;margin:auto auto 4px}.login-hero h1{font-size:29px;margin-top:7px}.login-features{margin-top:18px}.login-form-panel{padding:30px 26px 34px}.soccer-loading-card{padding:25px 18px}.soccer-pitch{height:145px}}.app{background:#eef1f5}.app aside{width:258px;background:linear-gradient(180deg,#0b1322,#111c2f 58%,#0b1322);border-right:1px solid rgba(255,255,255,.06);box-shadow:10px 0 30px #0f172a1a;padding:18px 13px;position:sticky;top:0;height:100vh;overflow-y:auto}.app .brand{margin:0 5px 15px;padding:10px 10px 18px;border-bottom:1px solid rgba(148,163,184,.12)}.app .logo{background:linear-gradient(145deg,#fff,#e8eef8);box-shadow:0 8px 22px #0000002e}.app nav{gap:11px}.app .menu-group{gap:3px}.app .menu-group-title{padding:8px 11px 5px;color:#64748b;font-size:9px;letter-spacing:.14em}.app nav button{min-height:42px;border:1px solid transparent;color:#b9c4d4;padding:9px 11px;border-radius:11px;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.app nav button:hover{background:#3b82f617;border-color:#60a5fa1f;color:#fff;transform:translate(2px)}.app nav button.active{background:linear-gradient(90deg,#2563ebe0,#2563eb9e);border-color:#93c5fd2e;color:#fff;box-shadow:0 7px 18px #2563eb2e}.app nav button .menu-icon{width:30px;min-width:30px;height:30px;border-radius:9px;background:#ffffff0b;font-size:16px}.app nav button.active .menu-icon{background:#ffffff24}.app .logout{margin:18px 5px 4px;width:calc(100% - 10px);border:1px solid rgba(148,163,184,.12);background:#ffffff09;color:#cbd5e1;border-radius:11px;padding:11px 12px}.app main{padding:25px 30px 36px;max-width:1800px}.app main>header{margin-bottom:23px;padding-bottom:17px;border-bottom:1px solid #e1e7ef}.app .header-context{color:#64748b}.app .eyebrow{color:#64748b;opacity:.9;font-weight:800}.app h1,.app h2,.app h3{letter-spacing:-.025em}.app .simple-head,.app .module-head,.app .dash-head,.app .kardex-head{margin-bottom:18px}.app .simple-head h2,.app .module-head h2,.app .dash-head h2,.app .kardex-head h2{font-size:29px;font-weight:850}.app .card,.app .table-card,.app .kardex-table-card,.app .dash-card,.app .placeholder,.app .stats>div,.app .kardex-stat{border-color:#dce3ec;box-shadow:0 5px 18px #0f172a09}.app .card,.app .table-card,.app .kardex-table-card,.app .dash-card{border-radius:16px}.app .card:hover,.app .dash-card:hover,.app .kardex-stat:hover{box-shadow:0 9px 25px #0f172a0f}.app .stats{gap:14px}.app .stats>div,.app .kardex-summary .kardex-stat{position:relative;overflow:hidden;padding:18px 19px;background:linear-gradient(145deg,#fff,#f8fafc)}.app .stats>div:before,.app .kardex-stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#2563eb;opacity:.8}.app .stats span,.app .kardex-stat span{font-size:12px;color:#64748b;font-weight:650}.app .stats strong,.app .kardex-stat strong{font-size:23px;color:#0f172a;letter-spacing:-.03em}.app .table-toolbar,.app .kardex-filters,.app .search-box,.app .filters,.app .table-card .table-toolbar{border-color:#dce3ec;background:linear-gradient(180deg,#f8fafc,#f4f7fa);border-radius:13px}.app input,.app select,.app textarea{border-color:#cfd8e3;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.app input:focus,.app select:focus,.app textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61c;outline:none}.app .table-card,.app .kardex-table-card{overflow:hidden}.app .table-card th,.app .kardex-table th{background:#eef2f7;color:#334155;font-size:11px;text-transform:uppercase;letter-spacing:.035em}.app .table-card tbody tr:hover td,.app .kardex-table tbody tr:hover td{background:#f8fbff}.app .table-card td,.app .kardex-table td{color:#334155}.app button{transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.app button:not(:disabled):hover{transform:translateY(-1px)}.app button.primary,.app .section-head button,.app .simple-head button.primary{box-shadow:0 6px 15px #0f172a1f}.app button.primary:hover,.app .section-head button:hover{box-shadow:0 9px 20px #0f172a2b}.app .status,.app .badge,.app .pill{font-weight:750}.app .dashboard20{gap:17px}.app .dashboard20 .dash-months{padding:4px;background:#e9eef5;border:1px solid #dce3ec;border-radius:12px;width:max-content;max-width:100%}.app .dashboard20 .dash-months button{border:0;background:transparent}.app .dashboard20 .dash-months button.active{box-shadow:0 4px 10px #0f172a21}.app .dashboard20 .dash-card{background:linear-gradient(180deg,#fff,#fbfcfe)}.app .dashboard20 .bar{border-radius:8px 8px 2px 2px;background:#2563eb}.app .dashboard20 .dash-note{box-shadow:0 4px 14px #2563eb09}@media(max-width:900px){.app aside{width:225px}.app main{padding:22px 20px 30px}}@media(max-width:700px){.app{display:block}.app aside{position:relative;width:100%;height:auto;max-height:none}.app nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.app .menu-group-title{grid-column:1/-1}.app .logout{margin-top:12px}.app main{padding:18px 12px 25px}.app main>header{align-items:flex-start}}.campaign-generated{padding:16px;border:1px solid #dbe3ee;border-radius:14px;background:#f8fafc}.campaign-generated-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.campaign-generated-head strong{display:block;color:#111827}.campaign-generated-head small{display:block;margin-top:4px;color:#64748b;font-size:12px}.campaign-generated-preview{display:grid;gap:10px;margin-top:14px}.campaign-generated-preview>div{padding:11px 13px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.campaign-generated-preview b{font-size:12px;color:#475569}.campaign-generated-preview p{margin:5px 0 0;white-space:pre-wrap;color:#17202a}.campaign-generated-edit{display:grid;gap:12px;margin-top:14px}.campaign-generated-edit label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#374151}.campaign-generated-edit textarea{width:100%;padding:10px 11px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;font:inherit;font-weight:400;resize:vertical;min-height:70px}@media(max-width:700px){.campaign-generated-head{align-items:flex-start;flex-direction:column}.campaign-generated-head .actions{width:100%}.campaign-generated-head .actions button{flex:1}}.campaign-modal{width:min(760px,100%);padding:20px;gap:14px}.campaign-modal .modal-head{margin-bottom:2px;padding-bottom:4px}.campaign-modal .modal-head h3{font-size:21px;letter-spacing:-.02em}.campaign-modal .modal-head p{font-size:13px}.campaign-product-focus{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:16px;align-items:stretch;padding:2px 0}.campaign-product-focus>div:first-child{display:grid;align-content:start;gap:12px}.campaign-product-focus label,.campaign-generated-edit label{display:grid;gap:7px;font-size:13px;font-weight:700;color:#263244}.campaign-field-spaced{margin-top:0!important}.campaign-modal .form-grid input,.campaign-modal .form-grid select,.campaign-modal .form-grid textarea,.campaign-modal input,.campaign-modal select,.campaign-modal textarea{border:1px solid #cfd8e3;border-radius:10px;min-height:44px;padding:11px 13px;background:#fbfcfe;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.campaign-modal textarea{min-height:92px;line-height:1.45}.campaign-modal input:hover,.campaign-modal select:hover,.campaign-modal textarea:hover{border-color:#aebaca;background:#fff}.campaign-modal input:focus,.campaign-modal select:focus,.campaign-modal textarea:focus{border-color:#64748b;background:#fff;box-shadow:0 0 0 3px #64748b1f}.campaign-product-image{min-height:100%;border:1px solid #d9e1ea;border-radius:14px;background:linear-gradient(180deg,#f8fafc,#eef2f6);display:grid;place-items:center;overflow:hidden;box-shadow:0 4px 14px #0f172a0f}.campaign-product-image img{width:100%;height:100%;object-fit:contain;padding:8px}.campaign-product-image div{text-align:center;color:#64748b;font-size:13px;padding:12px}.ai-assistant{margin:2px 0 0;padding:16px;border-radius:14px;background:linear-gradient(180deg,#f8fafc,#f5f7fa);border-color:#d8e1eb}.ai-assistant-header{margin-bottom:14px}.ai-assistant-header h4{font-size:16px}.ai-assistant textarea{min-height:86px}.ai-options{gap:12px;margin-bottom:14px}.ai-actions{gap:10px}.ai-actions .ai-button{min-width:205px;min-height:44px}.campaign-generated{padding:15px;border:1px solid #d7e0ea;border-radius:14px;background:linear-gradient(180deg,#f8fafc,#f4f7fa)}.campaign-generated-head{align-items:flex-start}.campaign-generated-head .actions{margin-top:0}.campaign-generated-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.campaign-generated-actions button,.campaign-piece-actions button,.campaign-piece-upload-actions button,.campaign-upload-button{border:1px solid #cbd5e1;background:#fff;color:#17202a;border-radius:9px;padding:9px 12px;min-height:38px;font:inherit;font-size:13px;font-weight:650;cursor:pointer;box-shadow:0 1px 2px #0f172a0a;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.campaign-generated-actions button:hover,.campaign-piece-actions button:hover,.campaign-piece-upload-actions button:hover,.campaign-upload-button:hover{background:#f8fafc;border-color:#aebaca;transform:translateY(-1px);box-shadow:0 4px 10px #0f172a14}.campaign-generated-actions .primary,.campaign-piece-actions .primary{border-color:#111827}.campaign-generated-preview{gap:8px;margin-top:12px}.campaign-generated-preview>div{padding:11px 13px;border:1px solid #dce4ed;border-radius:10px;background:#fff;box-shadow:0 1px 2px #0f172a06}.campaign-generated-preview b{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.campaign-generated-preview p{margin:6px 0 0;font-size:14px;line-height:1.5}.campaign-generated-edit{gap:10px;margin-top:12px}.campaign-generated-edit label{padding:11px 12px;border:1px solid #dce4ed;border-radius:11px;background:#fff}.campaign-generated-edit textarea{min-height:76px}.campaign-generated-edit label:nth-child(2) textarea{min-height:120px}.campaign-modal .form-actions{padding-top:2px;margin-top:0}.campaign-modal .form-actions button{min-height:42px;border-radius:10px;padding:10px 15px;font-weight:650}.campaign-piece-modal{width:min(980px,100%);padding:20px}.campaign-piece-layout{display:grid;grid-template-columns:minmax(270px,340px) minmax(0,1fr);gap:18px;align-items:start}.campaign-piece-preview-wrap{display:flex;justify-content:center}.campaign-piece-preview{width:min(100%,330px);aspect-ratio:9/16;background:#0f172a;padding:9px;border-radius:21px;box-shadow:0 16px 38px #0f172a38;overflow:hidden}.campaign-piece-canvas{height:100%;background:#f8fafc;display:flex;flex-direction:column;padding:15px 14px 12px;box-sizing:border-box;border-radius:13px}.campaign-piece-logo{height:58px;display:flex;align-items:center;justify-content:flex-start}.campaign-piece-logo img{height:58px;width:auto;object-fit:contain;object-position:left center}.campaign-piece-photo{flex:0 0 58%;margin-top:8px;background:#fff;display:grid;place-items:center;overflow:hidden;border-radius:9px}.campaign-piece-photo img{width:100%;height:100%;object-fit:contain}.campaign-piece-copy{padding-top:11px;color:#111827}.campaign-piece-hook{font-size:17px;font-weight:800;line-height:1.12}.campaign-piece-product{font-size:11px;font-weight:700;color:#334155;margin-top:5px;line-height:1.2}.campaign-piece-phone{display:inline-block;font-size:13px;font-weight:900;margin-top:8px;padding:5px 9px;border-radius:999px;background:#0f172a;color:#fff}.campaign-piece-meta{font-size:9px;color:#475569;line-height:1.25}.campaign-piece-meta-top{margin-top:5px}.campaign-piece-footer{margin-top:auto;padding-top:7px;font-size:9px;font-weight:800;color:#b8860b;text-align:center}.campaign-piece-card{padding:14px;border:1px solid #d8e1eb;border-radius:13px;background:linear-gradient(180deg,#f8fafc,#f5f7fa);margin-bottom:10px}.campaign-piece-card strong{font-size:14px;color:#17202a}.campaign-piece-help{font-size:12px;color:#64748b;margin-top:5px;line-height:1.45}.campaign-piece-upload-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.campaign-upload-button{display:inline-flex;align-items:center;gap:6px}.campaign-piece-file{font-size:11px;margin-top:7px;color:#64748b;overflow-wrap:anywhere}.whatsapp-copy{margin-bottom:10px}.whatsapp-copy summary{cursor:pointer;font-weight:750;color:#334155}.whatsapp-copy pre{white-space:pre-wrap;font-family:inherit;margin:9px 0 0;font-size:12px;line-height:1.45;color:#334155;max-height:180px;overflow:auto}.campaign-piece-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.campaign-piece-actions button{width:100%}.campaign-piece-footnote{margin-top:9px;font-size:11px;color:#64748b}@media(max-width:900px){.campaign-piece-layout{grid-template-columns:1fr}.campaign-piece-preview{width:min(100%,300px)}.campaign-piece-actions{grid-template-columns:1fr 1fr}}@media(max-width:700px){.campaign-product-focus{grid-template-columns:1fr}.campaign-product-image{min-height:180px;max-height:220px}.campaign-generated-head{gap:10px}.campaign-generated-actions{width:100%}.campaign-generated-actions button{flex:1}.campaign-piece-actions{grid-template-columns:1fr}.campaign-piece-actions .primary{grid-column:auto}.campaign-piece-modal{padding:15px}}.campaign-generated{padding:16px;border-radius:16px;background:linear-gradient(180deg,#f8fafc,#f3f6f9);border-color:#d6e0ea;box-shadow:0 6px 18px #0f172a0a}.campaign-generated-head{padding:2px 2px 8px}.campaign-generated-head strong{font-size:16px;letter-spacing:-.01em}.campaign-generated-head small{max-width:520px;line-height:1.4}.campaign-generated-actions{flex-shrink:0}.campaign-generated-actions button{min-height:40px;padding:8px 13px;border-radius:10px}.campaign-generated-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}.campaign-generated-preview>div{min-width:0;padding:12px 14px;border:1px solid #dce4ed;border-radius:12px;background:#fff;box-shadow:0 2px 7px #0f172a09}.campaign-generated-preview>div:nth-child(2){grid-column:1/-1}.campaign-generated-preview b{display:block;margin-bottom:4px;font-size:10px;letter-spacing:.08em;color:#64748b}.campaign-generated-preview p{margin:0;font-size:14px;line-height:1.48;color:#17202a;white-space:pre-wrap}.campaign-generated-edit{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}.campaign-generated-edit label{min-width:0;padding:12px;border:1px solid #dce4ed;border-radius:12px;background:#fff;box-shadow:0 2px 7px #0f172a08}.campaign-generated-edit label:nth-child(2){grid-column:1/-1}.campaign-generated-edit label span{font-size:11px;color:#475569;text-transform:uppercase;letter-spacing:.04em}.campaign-generated-edit textarea{min-height:72px;box-sizing:border-box}.campaign-generated-edit label:nth-child(2) textarea{min-height:112px}.campaign-piece-modal{width:min(900px,100%);max-height:92vh;padding:18px;border-radius:18px}.campaign-piece-modal .modal-head{margin-bottom:14px;padding-bottom:2px}.campaign-piece-modal .modal-head h3{margin-bottom:3px;font-size:19px}.campaign-piece-modal .modal-head p{margin:0;font-size:12px;color:#64748b}.campaign-piece-layout{grid-template-columns:minmax(250px,315px) minmax(0,1fr);gap:16px}.campaign-piece-preview{width:min(100%,305px);padding:8px;border-radius:19px}.campaign-piece-canvas{padding:13px 13px 10px;border-radius:12px}.campaign-piece-logo,.campaign-piece-logo img{height:52px}.campaign-piece-photo{flex-basis:58%;margin-top:6px;border-radius:8px}.campaign-piece-copy{padding-top:9px}.campaign-piece-hook{font-size:16px}.campaign-piece-phone{margin-top:7px;font-size:12px;padding:5px 9px}.campaign-piece-card{padding:12px 13px;margin-bottom:8px;border-radius:12px;box-shadow:0 2px 8px #0f172a09}.campaign-piece-card strong{display:block;font-size:13px}.campaign-piece-help{margin-top:4px;font-size:11px;line-height:1.35}.campaign-piece-upload-actions{margin-top:8px;gap:7px}.campaign-piece-upload-actions button,.campaign-upload-button{min-height:36px;padding:7px 10px;font-size:12px}.campaign-piece-file{margin-top:6px;font-size:10px}.whatsapp-copy pre{max-height:120px;margin-top:7px;font-size:11px;line-height:1.35}.campaign-piece-actions{grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}.campaign-piece-actions button{min-height:38px;padding:8px 9px;border-radius:9px;font-size:12px}.campaign-piece-actions .primary{grid-column:1/-1}@media(max-width:900px){.campaign-piece-layout{grid-template-columns:1fr}.campaign-piece-preview{width:min(100%,290px)}}@media(max-width:700px){.campaign-generated-preview{grid-template-columns:1fr}.campaign-generated-preview>div:nth-child(2){grid-column:auto}.campaign-generated-edit{grid-template-columns:1fr}.campaign-generated-edit label:nth-child(2){grid-column:auto}.campaign-piece-modal{padding:14px}}
