@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#10283a;--navy2:#18384e;--deep:#071e2e;--blue:#2c6681;--teal:#176e69;--mint:#dcf4ed;--bg:#f5f7f9;--white:#fff;--border:#e0e6eb;--muted:#7c8994;--text:#1a3242;--red:#b43f48;--orange:#ad6924;--shadow:0 8px 25px rgba(21,44,59,.04)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'DM Sans',system-ui,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{outline:none}input:focus,select:focus,textarea:focus{border-color:#4b899d!important;box-shadow:0 0 0 3px #d7e8ee} .hidden{display:none!important}
.auth-screen{display:grid;grid-template-columns:53% 47%;min-height:100vh;background:white}.auth-art{position:relative;min-height:600px;padding:45px 65px;background:radial-gradient(ellipse at 60% 38%,#295b6f 0%,#16384c 35%,#0c2638 76%);color:#fff;overflow:hidden}.auth-art:after{content:'';position:absolute;width:650px;height:650px;border:1px solid #51758b55;border-radius:50%;right:-235px;top:10%;box-shadow:0 0 0 100px #ffffff07,0 0 0 205px #ffffff04}.logo-mark{width:42px;height:42px;border-radius:11px;background:#d9e5e7;color:#15374b;display:flex;justify-content:center;align-items:center;font-family:'Manrope',sans-serif;font-size:23px;font-weight:800;letter-spacing:-3px}.logo-mark.large{width:55px;height:55px;font-size:30px}.auth-art-bottom{position:absolute;bottom:85px;z-index:1;left:65px;right:40px}.eyebrow{color:#658296;letter-spacing:2px;font-size:10px;font-weight:800}.eyebrow.pale{color:#b7d1d9}.auth-art h1{font-family:'Manrope',sans-serif;font-size:clamp(36px,4.3vw,62px);letter-spacing:-3px;line-height:1.14;margin:20px 0 23px}.auth-art p{color:#b9d0d7;font-size:12px;letter-spacing:1.3px;line-height:1.9;max-width:470px}.store-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:38px}.store-tags span{font-size:10px;letter-spacing:1px;border:1px solid #7192a266;border-radius:30px;padding:9px 14px;color:#e2edf0}.auth-panel{display:flex;align-items:center;justify-content:center;padding:40px}.auth-box{width:100%;max-width:405px}.auth-box h2{font-size:32px;letter-spacing:-1.2px;font-family:'Manrope',sans-serif;margin:15px 0}.subtle{font-size:14px;line-height:1.7;color:var(--muted);margin-bottom:35px}.auth-box label,.field label,.form-grid label{display:block;font-size:10px;font-weight:800;letter-spacing:.9px;color:#6f8391;margin-bottom:8px}.auth-box input,.field input,.field select,.field textarea,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #d7e0e6;border-radius:9px;min-height:43px;background:#fff;padding:11px 13px;margin-bottom:18px;color:#274457}.auth-box input::placeholder{color:#b0bdc7}.btn{border:0;border-radius:9px;padding:12px 18px;font-size:12px;font-weight:800;letter-spacing:.4px;transition:all .15s;display:inline-flex;justify-content:center;align-items:center;gap:9px}.btn:hover{filter:brightness(.95)}.btn.primary{background:#173c51;color:white}.btn.success{background:#176b65;color:white}.btn.outline{background:white;border:1px solid #cad8e0;color:#274c60}.btn.secondary{background:#eef3f5;color:#34536a}.btn.danger{background:#fff1f0;color:#a3343a}.btn.full{width:100%}.auth-box .btn.full{margin-top:12px;min-height:48px}.text-button{border:0;background:none;color:#557b91;text-decoration:underline;font-size:11px;font-weight:700;margin:22px auto;display:block}.config-form{border-top:1px solid var(--border);padding-top:15px}.help{font-size:12px;color:#6c8190;line-height:1.6}.auth-footer{text-align:center;font-size:10px;letter-spacing:1px;color:#a0aeb9;margin-top:45px}
.shell{display:flex;min-height:100vh}.sidebar{width:252px;flex:0 0 252px;background:var(--navy);color:#eaf0f3;padding:24px 16px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:13px;margin:2px 9px 40px}.brand strong{display:block;font-family:Manrope,sans-serif;letter-spacing:2.3px;font-weight:800;font-size:20px}.brand small{color:#9fbdcb;font-size:8px;letter-spacing:1.1px;white-space:nowrap;font-weight:700}.sidebar-section-label{font-size:10px;color:#789eae;font-weight:800;letter-spacing:1.6px;margin:0 15px 12px}.nav{display:flex;flex-direction:column;gap:4px;margin-bottom:25px}.nav-item{width:100%;text-align:left;display:flex;align-items:center;gap:13px;background:none;border:0;color:#b9cad3;border-radius:9px;padding:11px 14px;letter-spacing:.5px;font-weight:700;font-size:11px;transition:background .15s}.nav-item:hover,.nav-item.active{background:#2b5167;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #a9e1d4}.nav-icon{font-size:20px;font-family:sans-serif;font-weight:400;min-width:19px;text-align:center}.sidebar-footer{font-size:10px;color:#a7c3cf;letter-spacing:1.1px;border-top:1px solid #305066;margin-top:auto;padding:20px 10px 0;display:flex;align-items:center;gap:8px}.online-dot{width:7px;height:7px;border-radius:50%;background:#54c8a5}
.main-area{flex:1;min-width:0}.topbar{min-height:90px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:15px 38px;gap:20px}.topbar-left select{border:0;background:none;padding:6px 22px 6px 0;color:#18394d;font-size:20px;font-weight:800;max-width:240px}.topbar-right{display:flex;align-items:center;gap:24px}.period{display:flex;flex-direction:column;gap:4px}.period label{color:#91a0a9;font-size:9px;letter-spacing:1.4px;font-weight:800}.period input{font-size:13px;border:0;background:none;color:#234255;font-weight:700;min-width:136px}.account{display:flex;align-items:center;gap:9px;border-left:1px solid var(--border);padding-left:22px}.avatar{border-radius:50%;width:37px;height:37px;background:#e2eee9;display:flex;align-items:center;justify-content:center;color:#19655f;font-weight:800}.account strong{display:block;font-size:10px;max-width:150px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account small{display:block;font-size:9px;color:#92a1aa;margin-top:4px}.icon-button{border:0;background:#f0f4f6;color:#496477;border-radius:9px;width:34px;height:34px;font-size:19px}.icon-button.exit{color:#8f5c61}.mobile-brand{display:none}
.content{max-width:1620px;margin:auto;padding:32px 38px 55px}.page-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:27px;flex-wrap:wrap}.page-head h2{font-family:Manrope,sans-serif;font-size:27px;letter-spacing:-1.1px;margin:7px 0 6px;color:#193a4b}.page-head p{color:#8494a1;font-size:13px;margin:0}.page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin:19px 0 27px}.stat{background:white;border:1px solid var(--border);border-radius:14px;padding:20px 22px;box-shadow:var(--shadow);min-height:124px}.stat .stat-label{color:#8197a5;font-weight:800;font-size:10px;letter-spacing:1.2px}.stat .stat-value{font-family:Manrope,sans-serif;font-size:31px;font-weight:800;letter-spacing:-1.6px;margin:11px 0 5px;line-height:1.2}.stat .stat-foot{font-size:11px;color:#8fa0ac}.stat.negative .stat-value{color:#bf4d53}.stat.blue .stat-value{color:#2c6989}.stat.green .stat-value{color:#217e74}.stat.orange .stat-value{color:#b87532}.panel{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);margin-bottom:18px;overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 21px;border-bottom:1px solid #ecf0f2;flex-wrap:wrap}.panel-header h3{margin:0;font-size:13px;font-weight:800;color:#28485b;letter-spacing:.4px}.panel-body{padding:22px}.panel-quiet{background:#f8fafb;border-radius:10px;padding:15px 17px;color:#748b99;font-size:12px;line-height:1.65}.table-wrap{overflow:auto;max-width:100%}.data-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.data-table th{text-align:left;padding:13px 16px;background:#f7fafb;color:#788f9d;font-size:10px;letter-spacing:.8px;font-weight:800;border-bottom:1px solid var(--border)}.data-table td{padding:12px 16px;color:#385468;border-bottom:1px solid #edf1f3}.data-table tbody tr:hover{background:#f8fbfc}.data-table tbody tr:last-child td{border-bottom:0}.data-table td strong{color:#23465a}.data-table .right{text-align:right}.data-table .center{text-align:center}.data-table .mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;font-size:11px}.badge{display:inline-block;border-radius:30px;background:#e7f5f1;color:#24766b;padding:6px 10px;font-size:10px;font-weight:800}.badge.warning{background:#fff0e0;color:#a86b26}.badge.danger{background:#fee9e9;color:#ba444b}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.search{min-width:220px;flex:1;background:white;border:1px solid #dae4e8;border-radius:9px;padding:11px 13px;font-size:12px;max-width:430px}.mini-input{border:1px solid #d9e2e7;border-radius:7px;padding:8px 9px;min-width:72px;background:#fff}.mini-input.small{width:83px}.mini-input.barcode{min-width:170px;width:100%}.table-footer{padding:15px 20px;border-top:1px solid #edf1f3;color:#81939f;font-size:11px;display:flex;justify-content:space-between;gap:12px;align-items:center}.empty{padding:42px 20px;text-align:center;color:#8ba0ae;font-size:13px}.empty strong{display:block;color:#3f5d70;font-size:15px;margin-bottom:9px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 16px}.form-grid input,.form-grid select{margin-bottom:16px}.form-grid .span2{grid-column:span 2}.form-grid .span3{grid-column:span 3}.form-grid textarea{resize:vertical;min-height:70px}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding-top:18px;border-top:1px solid #edf1f3}.line-table td,.line-table th{padding:11px 9px}.line-table td .mini-input{max-width:100%}.inline-total{margin:15px 0;text-align:right;font-family:Manrope,sans-serif;font-weight:800;font-size:18px}.inline-total span{color:#8a9faa;font-size:11px;font-weight:700;margin-right:8px}.note{border-left:3px solid #8ab8c1;background:#eff7f8;padding:12px 15px;border-radius:4px;font-size:12px;color:#527082;margin:18px 0;line-height:1.7}.note.warn{border-color:#e3b575;background:#fffaed;color:#94712f}.row2{display:grid;grid-template-columns:1.4fr 1fr;gap:19px}.inventory-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.inventory-item{display:flex;justify-content:space-between;padding:13px 6px;border-bottom:1px solid #edf1f3;font-size:12px}.inventory-item strong{font-size:13px}.key-value{display:flex;align-items:center;gap:7px}.dot{width:8px;height:8px;border-radius:50%;background:#368b84}.dot.alert{background:#cf6269}.file-input{background:#f7fafc;border:1px dashed #a7bfcc;border-radius:10px;padding:20px;min-height:100px;width:100%}.status{font-size:12px;color:#638397;margin:12px 0}.subhead{font-weight:800;font-size:12px;letter-spacing:1px;color:#3d6175;margin:24px 0 12px}.muted{color:#92a0ac}.small-text{font-size:11px}.nowrap{white-space:nowrap}.clickable{color:#286a83!important;text-decoration:underline;cursor:pointer}.pill-filter{background:#fff;border:1px solid #dce7ea;border-radius:40px;padding:8px 11px;color:#698595;font-size:11px;font-weight:700}.pill-filter.active{color:#216962;background:#e8f6f0;border-color:#bbdcd3}.busy{position:fixed;z-index:80;inset:0;background:rgba(249,252,252,.75);backdrop-filter:blur(3px);display:flex;justify-content:center;align-items:center;flex-direction:column;gap:18px;color:#2b5d73;font-size:12px;font-weight:800;letter-spacing:1px}.spinner{width:42px;height:42px;border-radius:50%;border:3px solid #c7dce2;border-top-color:#216e7c;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#toast{position:fixed;z-index:99;right:25px;bottom:25px;max-width:420px;background:#1c485c;color:white;padding:16px 20px;border-radius:10px;box-shadow:0 15px 35px #122f3b33;font-size:12px;line-height:1.5;display:none}#toast.show{display:block}#toast.error{background:#9e3e47}
.modal{position:fixed;z-index:88;inset:0;background:#071e2eaa;display:flex;align-items:center;justify-content:center;padding:24px}.modal-panel{width:min(920px,100%);max-height:88vh;background:white;border-radius:15px;display:flex;flex-direction:column;box-shadow:0 15px 60px #0003}.modal-head{padding:18px 22px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-head h3{margin:0;font-size:14px;letter-spacing:.4px}.modal-body{padding:20px;overflow:auto}.modal-body .data-table{white-space:normal}
@media(max-width:1150px){.sidebar{width:217px;flex-basis:217px}.topbar{padding:14px 25px}.content{padding:26px}.stats{grid-template-columns:repeat(2,1fr)}.topbar-right{gap:12px}.account{padding-left:12px}}@media(max-width:780px){.auth-screen{grid-template-columns:1fr}.auth-art{min-height:280px;padding:24px}.auth-art .large{display:none}.auth-art-bottom{position:relative;left:auto;right:auto;bottom:auto;margin-top:10px}.auth-art h1{font-size:30px;letter-spacing:-1px}.auth-art p,.store-tags{display:none}.auth-panel{padding:30px 23px}.sidebar{position:fixed;z-index:40;transform:translateX(-100%);transition:transform .2s;box-shadow:10px 0 25px #0c304333}.sidebar.mobile-open{transform:translateX(0)}.mobile-brand{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#294d60}.topbar{min-height:85px;flex-wrap:wrap;gap:9px}.topbar-left{order:2}.topbar-right{order:3;gap:7px}.topbar-right .account{display:none}.topbar-right .period{display:none}.topbar-left select{font-size:15px}.content{padding:22px 13px}.stats{gap:9px}.stat{padding:17px}.stat .stat-value{font-size:23px}.page-head h2{font-size:23px}.form-grid{grid-template-columns:1fr}.form-grid .span2,.form-grid .span3{grid-column:span 1}.row2{grid-template-columns:1fr}.inventory-list{grid-template-columns:1fr}}
.uppercase{text-transform:uppercase}.scan-row{display:flex;align-items:flex-start;gap:10px}.scan-row>input{flex:1;min-width:0}.scan-row>.mini-input{width:120px}.scan-row>.btn{min-height:43px}.full-width{width:100%;margin:7px 0 18px}.panel-body>.btn.full{margin-top:10px}.row-negative,.row-negative:hover{background:#fff2f1!important}.row-negative td:last-child strong{color:#bc3640}.checkbox-inline{color:#648091;font-size:11px;font-weight:700;display:flex;align-items:center;gap:5px;white-space:nowrap}.checkbox-inline input{accent-color:#28776e}.transfer-receipt{border:1px solid #e1e8ed;border-radius:10px;margin-bottom:15px;overflow:hidden}.transfer-heading{padding:16px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f6fafb}.transfer-heading strong{font-size:13px;color:#274c60}.transfer-heading .help{margin-top:5px}.modal-body pre{font-size:10px;max-width:400px;max-height:300px;overflow:auto;background:#f5f8fa;padding:10px;border-radius:6px;white-space:pre-wrap}.auth-box #login-msg{color:#b43f48;min-height:21px}.file-input{display:block;margin:12px 0}.btn.full{display:flex}.data-table .btn{padding:7px 9px;font-size:10px;margin-right:3px}.form-grid .span3>.scan-row>input{margin-bottom:10px}@media(max-width:780px){.scan-row{flex-wrap:wrap}.scan-row>input{flex-basis:100%}.scan-row>.btn{flex:1}.transfer-heading{flex-direction:column;align-items:flex-start}.topbar-right .period{display:flex}.topbar-right .period input{min-width:107px}.topbar{padding:12px 16px}}

/* NICOLS · Identidad corporativa verde y estética de confección formal. */
:root {
  --navy:#103c2d;
  --navy2:#174e39;
  --deep:#0c2e24;
  --blue:#26764d;
  --teal:#138c5c;
  --mint:#e4f4eb;
  --bg:#f6f7f3;
  --border:#e0e8df;
  --muted:#78887e;
  --text:#22382d;
  --shadow:0 10px 28px rgba(18,62,43,.055);
}
body { background:var(--bg); }
input:focus,select:focus,textarea:focus {
  border-color:#17925f!important;
  box-shadow:0 0 0 3px #d7f1e0;
}
.auth-art {
  background:
    linear-gradient(125deg,transparent 70%,rgba(220,187,121,.08) 70.1%,transparent 70.4%),
    radial-gradient(circle at 80% 12%,#236d4a 0%,#144d36 28%,#103b2c 65%,#09291f 100%);
}
.auth-art:after {
  border-color:#9ccaac24;
  box-shadow:0 0 0 100px #ffffff05,0 0 0 205px #ffffff03;
}
.auth-logo-panel {
  position:relative;
  z-index:2;
  width:min(314px,90%);
  padding:19px 26px;
  background:#fff;
  border-radius:16px;
  box-shadow:0 20px 50px #071d153d;
}
.auth-logo-panel img { width:100%;height:auto;display:block; }
.auth-art-bottom { bottom:85px; }
.auth-art h1 { letter-spacing:-2.8px;max-width:630px; }
.auth-art p { color:#d0e3d8;max-width:475px;letter-spacing:.3px;font-size:13px; }
.eyebrow.pale { color:#addbc2; }
.store-tags span { border-color:#a8d3b355;color:#ecf6f0;background:#ffffff08; }
.auth-box h2 { color:#174a34; }
.auth-box label,.field label,.form-grid label { color:#61786a; }
.auth-box input,.field input,.field select,.field textarea,
.form-grid input,.form-grid select,.form-grid textarea { border-color:#d7e3d8;color:var(--text); }
.btn.primary { background:#104c35; }
.btn.success { background:#168f60; }
.btn.outline { border-color:#c7dfce;color:#1b6243; }
.btn.secondary { background:#f0f4ef;color:#42624e; }
.btn.danger { background:#fff0ec;color:#ad3d3b; }
.text-button { color:#26734b; }
.sidebar {
  background:linear-gradient(172deg,#123f2f 0%,#0d3428 62%,#0b2a22 100%);
  border-right:1px solid #214b39;
}
.brand { display:flex;flex-direction:column;align-items:stretch;gap:11px;margin:2px 6px 35px; }
.brand-logo-panel {
  background:#fff;
  border-radius:12px;
  padding:13px 15px;
  box-shadow:0 8px 23px #061b1530;
}
.brand-logo { display:block;width:100%;height:auto; }
.brand-caption { text-align:center;color:#c1d8c9;letter-spacing:1.7px;font-size:9px;font-weight:800; }
.sidebar-section-label { color:#a1c6ad; }
.nav-item { color:#c6dace; }
.nav-item:hover { background:#235842;color:#fff; }
.nav-item.active { background:#28734f;color:#fff;box-shadow:inset 3px 0 #c1e8c5; }
.sidebar-footer { color:#afcbb6;border-top-color:#345c48;letter-spacing:.65px;font-size:9px; }
.online-dot { background:#8ee6a0; }
.topbar { border-bottom-color:#e4eae3; }
.topbar-left select,.period input { color:#1a4a33; }
.period label { color:#8c9a8e; }
.avatar { background:#e1f3e6;color:#196c46; }
.icon-button { color:#42664d;background:#f0f5ef; }
.page-head h2 { color:#183e2d; }
.page-head p,.stat .stat-foot { color:#839588; }
.eyebrow { color:#6f8f77; }
.panel,.stat { border-color:#e0e8df; }
.stat { border-top:3px solid #d6e6da; }
.stat.blue { border-top-color:#459c71; }
.stat.green { border-top-color:#198f5e; }
.stat.orange { border-top-color:#d5aa6f; }
.stat.blue .stat-value { color:#216b4a; }
.stat.green .stat-value { color:#168e5c; }
.stat.orange .stat-value { color:#b67b3c; }
.stat .stat-label,.data-table th { color:#6f8a76; }
.panel-header h3,.data-table td strong { color:#24523a; }
.data-table th { background:#f5f8f4;border-bottom-color:#dfeadf; }
.data-table td { color:#385846;border-bottom-color:#ebf0e9; }
.data-table tbody tr:hover { background:#f4f9f3; }
.badge { background:#e4f5e9;color:#24774b; }
.search,.mini-input { border-color:#d5e4d7;color:#28503a; }
.note { border-left-color:#7ec798;background:#eff8f0;color:#456f53; }
.note.warn { border-left-color:#d9aa68;background:#fff9eb;color:#94712f; }
.panel-quiet { background:#f5f8f4;color:#728477; }
.subhead,.clickable { color:#276e49!important; }
.pill-filter.active { color:#1a7448;background:#e6f6e9;border-color:#b9dfc4; }
.checkbox-inline input { accent-color:#168f5e; }
.spinner { border-color:#cde5d4;border-top-color:#168f5e; }
.busy { color:#23613d; }
#toast { background:#174a35; }
.modal { background:#0b2e24b8; }
.transfer-heading { background:#f3f8f3; }
.transfer-heading strong { color:#25583d; }
.auth-footer { color:#8fa99a; }
.mobile-brand img { display:block;width:94px;height:auto; }
@media(max-width:780px) {
  .auth-art { min-height:325px; }
  .auth-logo-panel { width:185px;padding:10px 15px; }
  .auth-art-bottom { margin-top:18px; }
  .auth-art h1 { font-size:27px;line-height:1.2;letter-spacing:-1px; }
  .brand { margin-bottom:24px; }
}
