:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#172636;background:#f3f6f8;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#f3f6f8;color:#172636;font-size:14px;line-height:1.5}button,input,select{font:inherit}a{color:#087e80;text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer}button:disabled{opacity:.52;cursor:not-allowed}h1{font-size:clamp(22px,3vw,29px);letter-spacing:-.04em;margin:0 0 17px}h2{font-size:16px;letter-spacing:-.02em;margin:0 0 15px}h3{font-size:14px;margin:20px 0 10px}p{margin:8px 0 15px}.muted,.fer-hint{color:#637586}.fer-hint{font-size:12px}.fer-appbar{background:#102d35;color:#eaf8f7;box-shadow:0 4px 20px #102d351a;position:sticky;top:0;z-index:20}.fer-top{max-width:1320px;margin:auto;min-height:58px;padding:7px 20px;display:flex;align-items:center;gap:12px}.fer-brand{display:flex;gap:9px;align-items:center;color:#fff;font-size:16px;font-weight:750;letter-spacing:-.025em;margin-right:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fer-brand:hover{color:#fff;text-decoration:none}.fer-mark{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#21b3a4;color:#07353a;font-weight:850;flex:none}.fer-nav{max-width:1320px;margin:auto;padding:0 20px 8px;display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none}.fer-nav::-webkit-scrollbar{display:none}.fer-nav a{color:#c1d9de;white-space:nowrap;padding:6px 10px;border-radius:8px;font-size:12px;font-weight:650}.fer-nav a:hover,.fer-nav a[aria-current="page"]{background:#ffffff1d;color:#fff;text-decoration:none}.fer-top a{color:#e4f3f2;font-size:12px}.fer-shift{border-radius:99px;padding:5px 9px;background:#1f5c56;color:#bff8de;font-size:11px;font-weight:700;white-space:nowrap}.fer-shift.closed{background:#42535d;color:#e2e8ea}.fer-menu{display:none;border:1px solid #6a8585;background:#ffffff11;color:#fff;border-radius:9px;padding:6px 10px}.fer-main{width:min(100%,1320px);margin:0 auto;padding:22px 20px 55px}.fer-card,.card{background:#fff;border:1px solid #e2e9ec;border-radius:14px;box-shadow:0 5px 16px #14374508;padding:19px;margin-bottom:14px;min-width:0}.fer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:12px}.fer-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:10px}.fer-row>label{min-width:0}.fer-row>button{min-height:39px}label{font-size:12px;color:#526779;font-weight:700;display:block}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid #cad6da;border-radius:9px;background:#fff;color:#183142;padding:9px 10px;margin-top:5px;outline:none;min-height:40px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#139b95;box-shadow:0 0 0 3px #139b9520}input[type="checkbox"]{display:inline-block;width:auto;min-height:0;margin-right:5px;accent-color:#0d928c}input[type="number"]{font-variant-numeric:tabular-nums}.btn,button:not(.fer-menu){background:#0d8d88;border:1px solid #0d8d88;border-radius:9px;color:#fff;padding:9px 13px;min-height:38px;font-weight:700;display:inline-flex;justify-content:center;align-items:center;line-height:1.25;text-decoration:none}.btn:hover,button:not(.fer-menu):hover{background:#08726e;color:#fff;text-decoration:none}.btn.ghost,.fer-secondary{background:#fff!important;border-color:#cadbdc!important;color:#176b6d!important}.btn.ghost:hover,.fer-secondary:hover{background:#eef8f8!important}.fer-table{border-collapse:collapse;width:100%;font-size:13px}.fer-table th{color:#688091;background:#f7f9fa;text-align:left;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.035em}.fer-table th,.fer-table td{padding:10px 9px;border-bottom:1px solid #edf1f3;vertical-align:middle}.fer-table tr:last-child td{border-bottom:0}.fer-table input,.fer-table select{margin:0;min-height:36px;padding:7px 8px;font-size:12px}.fer-table button{font-size:12px;padding:7px 10px;min-height:33px}.fer-table td form{display:inline}.fer-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.fer-scroll>.fer-table{min-width:620px}.alert{border-radius:10px;padding:12px 14px;margin:0 0 14px;font-size:13px}.alert.success{color:#17573e;background:#e8f7ec;border:1px solid #b6e5c3}.alert.error,.alert.warn{color:#8b3c24;background:#fff0e8;border:1px solid #f7ccb6}.fer-status{font-size:12px;font-weight:700;color:#1a7773}.fer-status[data-state="error"]{color:#b2422f}.fer-status[data-state="loading"]{color:#6a657c}.fer-sale{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:14px;align-items:start}.fer-sale>div{min-width:0}.fer-sale .fer-card{margin-bottom:14px}.fer-client-grid{display:grid;grid-template-columns:130px minmax(120px,1fr) minmax(200px,1.4fr);gap:10px}.fer-client-grid label:last-child{grid-column:1/-1}.fer-client-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.fer-client-actions button{white-space:nowrap}.fer-items{display:grid;gap:8px}.fer-item{display:grid;grid-template-columns:minmax(0,1fr) 90px 98px 35px;gap:9px;align-items:end;background:#f8fafb;border:1px solid #e3ecef;padding:10px;border-radius:10px}.fer-item label{min-width:0}.fer-item .fer-line-total{min-height:39px;display:flex;align-items:center;justify-content:flex-end;font-variant-numeric:tabular-nums;font-weight:750;white-space:nowrap}.fer-item .fer-remove{background:transparent;border:0;color:#a1483a;padding:7px;min-height:38px}.fer-item .fer-remove:hover{background:#fff0ee;color:#95362a}.fer-items-empty{font-size:12px;color:#617383}.fer-total{display:flex;align-items:center;justify-content:space-between;padding:16px 0 12px;margin-top:12px;border-top:1px solid #e1e8ea;font-size:15px;font-weight:700}.fer-total b{font-size:24px;letter-spacing:-.04em;color:#087c76;font-variant-numeric:tabular-nums}.fer-sale-submit{width:100%;padding:12px;min-height:45px!important;font-size:15px}.fer-check{background:#f5faf9;border:1px solid #d7eae7;border-radius:11px;padding:12px;margin-top:15px}.fer-check .fer-row{grid-template-columns:1fr 1fr}.fer-check label:last-child{grid-column:1/-1}.fer-check .fer-hint{margin:10px 0 0}.login-wrap{max-width:390px;margin:9vh auto;padding:27px}.login-wrap h1{margin-bottom:22px}.login-wrap button{width:100%}.fer-pills{display:flex;flex-wrap:wrap;gap:8px}.fer-pill{font-size:11px;border-radius:99px;padding:4px 9px;background:#eef6f4;color:#21726e;font-weight:750}.fer-card{overflow-x:auto}.fer-card>table{min-width:620px}
@media(max-width:900px){.fer-sale{grid-template-columns:1fr}.fer-sale-summary{position:static}.fer-main{padding:18px 14px 45px}.fer-top{padding:8px 14px}.fer-nav{padding:0 14px 8px}.fer-client-grid{grid-template-columns:115px 1fr 1.3fr}}
@media(max-width:640px){body{font-size:13px}.fer-top{min-height:54px}.fer-brand{font-size:14px}.fer-mark{width:26px;height:26px}.fer-menu{display:inline-flex}.fer-nav{display:none;flex-wrap:wrap;overflow:visible;padding:3px 10px 12px}.fer-nav.open{display:flex}.fer-nav a{font-size:12px;padding:8px 10px;flex:1 0 calc(50% - 4px);text-align:center;background:#ffffff12}.fer-nav a[aria-current="page"]{background:#108b82}.fer-top .fer-shift{display:none}.fer-main{padding:15px 10px 65px}h1{font-size:22px;margin-bottom:13px}.fer-card,.card{padding:14px;border-radius:12px;margin-bottom:10px}.fer-grid{grid-template-columns:1fr;gap:0}.fer-row{grid-template-columns:1fr 1fr}.fer-row>label:nth-child(3):last-child{grid-column:1/-1}.fer-client-grid{grid-template-columns:98px minmax(0,1fr)}.fer-client-grid label:nth-child(3),.fer-client-grid label:last-child{grid-column:1/-1}.fer-client-actions{display:grid;grid-template-columns:1fr}.fer-client-actions button{width:100%}.fer-item{grid-template-columns:minmax(0,1fr) 87px 36px;gap:7px}.fer-item label:first-child{grid-column:1/-1}.fer-item .fer-line-total{grid-column:1;grid-row:2;justify-content:flex-start;align-self:end}.fer-item label.fer-qty{grid-column:2;grid-row:2}.fer-item .fer-remove{grid-column:3;grid-row:2}.fer-total b{font-size:23px}.fer-check .fer-row{grid-template-columns:1fr 1fr}.fer-table{font-size:12px}.fer-table th,.fer-table td{padding:8px}.fer-table input,.fer-table select{min-width:85px}.fer-status{display:block}.login-wrap{margin:8vh 12px}.fer-card>table{min-width:620px}.fer-scroll>.fer-table{min-width:620px}}
@media(max-width:390px){.fer-row{grid-template-columns:1fr}.fer-check .fer-row{grid-template-columns:1fr}.fer-client-grid{grid-template-columns:90px 1fr}}

.fer-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.fer-kpi{background:#fff;border:1px solid #e2e9ec;border-radius:14px;padding:16px}.fer-kpi span{display:block;color:#637586;font-size:12px;font-weight:700}.fer-kpi b{font-size:24px;color:#104546;letter-spacing:-.04em}.fer-kpi small{display:block;color:#647b82;font-size:11px}.fer-docs .fer-pill{white-space:nowrap}.fer-docs .fer-table a{white-space:nowrap}.fer-docs td form{margin-left:6px}.fer-products input[name="name"]{min-width:160px}.fer-products input[name="unit"]{max-width:70px;margin-top:5px}.fer-products select[name="kind"]{margin-top:5px}.fer-products td button{white-space:nowrap}
@media(max-width:640px){.fer-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.fer-kpi{padding:10px;border-radius:10px}.fer-kpi b{font-size:17px}.fer-kpi span{font-size:10px}.fer-kpi small{display:none}.fer-docs{overflow:visible}.fer-docs .fer-table,.fer-docs .fer-table tbody{display:block;min-width:0}.fer-docs .fer-table tr:first-child{display:none}.fer-docs .fer-table tr:not(:first-child){display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;background:#fff;border:1px solid #e2e9ec;border-radius:12px;margin-bottom:9px;padding:12px}.fer-docs .fer-table tr:not(:first-child) td{border:0;padding:0;display:flex;flex-direction:column;justify-content:center;min-width:0;word-break:break-word}.fer-docs .fer-table td:before{content:attr(data-label);display:block;color:#70838d;font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.04em}.fer-docs .fer-table td:nth-child(3),.fer-docs .fer-table td:last-child{grid-column:1/-1}.fer-docs td form{display:inline;margin:5px 0 0}.fer-docs td:last-child{flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;gap:7px;flex-wrap:wrap}.fer-docs td:last-child:before{width:100%}.fer-products{overflow:visible}.fer-products .fer-table,.fer-products .fer-table tbody{display:block;min-width:0}.fer-products .fer-table tr:first-child{display:none}.fer-products .fer-table tr:not(:first-child){display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#fff;border:1px solid #e2e9ec;border-radius:12px;padding:12px;margin-bottom:8px}.fer-products .fer-table td{border:0;padding:0;min-width:0}.fer-products .fer-table td:before{content:attr(data-label);display:block;color:#70838d;font-size:10px;font-weight:800;text-transform:uppercase}.fer-products .fer-table td:nth-child(2){grid-column:1/-1;grid-row:1}.fer-products .fer-table td:nth-child(6){align-self:end}.fer-products .fer-table input[name="name"]{min-width:0}.fer-products .fer-table td:nth-child(2) select{width:50%;display:inline-block;margin-right:5px}.fer-products .fer-table td:nth-child(2) input[name="unit"]{display:inline-block;width:70px}}
.fer-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}.fer-section-head h2{margin:0}.fer-section-head .fer-hint{margin:3px 0 0}.fer-product-create{display:grid;grid-template-columns:minmax(180px,2fr) repeat(3,minmax(125px,1fr));gap:11px;align-items:end}.fer-product-create>label{min-width:0}.fer-product-create>label:first-child{grid-column:span 2}.fer-product-create>label:nth-child(5){grid-column:span 2}.fer-product-create label small{display:block;font-weight:500;color:#69808a;font-size:11px;margin-top:3px}.fer-product-create>button{grid-column:1/-1;justify-self:start}.fer-extra{grid-column:1/-1;border:1px solid #e2e9ec;border-radius:9px;padding:8px 10px}.fer-extra summary{cursor:pointer;color:#256973;font-size:12px;font-weight:700}.fer-extra .fer-row{padding-top:10px}.fer-search{display:flex;gap:7px;align-items:end}.fer-search input{min-width:190px;margin:0}.fer-products .fer-inline{display:flex;gap:5px;margin:5px 0}.fer-products .fer-inline select{min-width:88px}.fer-products input[name="category"]{margin-top:5px}.fer-units-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:8px}.fer-unit-row{display:grid;grid-template-columns:48px minmax(0,1fr) 62px 76px;gap:7px;align-items:end;background:#f8fafb;border:1px solid #e4ebee;border-radius:9px;padding:8px}.fer-unit-row>strong{color:#0d7475;padding-bottom:9px;font-size:12px}.fer-unit-row>label{min-width:0}.fer-unit-row .fer-unit-active{white-space:nowrap;padding-bottom:8px;font-size:11px}.fer-unit-row .fer-unit-active input{margin:0 2px 0 0}.fer-unit-row button{font-size:11px;padding:6px;min-height:36px}
@media(max-width:900px){.fer-product-create{grid-template-columns:repeat(2,minmax(0,1fr))}.fer-product-create>label:first-child,.fer-product-create>label:nth-child(5){grid-column:span 2}}
@media(max-width:640px){.fer-section-head{align-items:stretch}.fer-section-head>.fer-search{width:100%}.fer-search input{min-width:0;flex:1}.fer-product-create{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fer-product-create>label:first-child,.fer-product-create>label:nth-child(5),.fer-product-create>.fer-extra{grid-column:1/-1}.fer-product-create>button{width:100%}.fer-units-list{grid-template-columns:1fr}.fer-unit-row{grid-template-columns:40px minmax(0,1fr) 53px 65px}.fer-unit-row button{padding:6px 4px}.fer-products .fer-inline select{min-width:0;width:calc(50% - 4px)}.fer-products .fer-table td:nth-child(2) select{width:calc(50% - 4px);margin-right:0}}
.fer-manual-item{grid-template-columns:minmax(180px,2fr) minmax(90px,1fr) 85px 100px 95px 31px;gap:8px;align-items:end}.fer-manual-item .fer-line-total{justify-content:flex-end}.fer-manual-item.is-stock-item{border-color:#7ecdc1;background:#f2fbf8}.fer-manual-item.is-stock-item .fer-desc::after{content:"Vinculado al almacén";display:block;color:#167c6b;font-size:10px;font-weight:700;margin-top:3px}.fer-manual-item .fer-desc input{font-weight:600}.fer-sale-actions{display:flex;flex-wrap:wrap;gap:7px}
@media(max-width:1050px){.fer-manual-item{grid-template-columns:minmax(160px,2fr) 110px 75px 90px 72px 30px}}
@media(max-width:640px){.fer-manual-item{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:7px}.fer-manual-item .fer-desc{grid-column:1/-1;grid-row:1}.fer-manual-item .fer-unit{grid-column:1;grid-row:2}.fer-manual-item .fer-qty{grid-column:2;grid-row:2}.fer-manual-item .fer-price{grid-column:1;grid-row:3}.fer-manual-item .fer-line-total{grid-column:2;grid-row:3;justify-content:flex-start;align-self:end}.fer-manual-item .fer-remove{grid-column:3;grid-row:3}.fer-manual-item .fer-desc input{width:100%}}
.fer-manual-item{grid-template-columns:minmax(180px,2fr) 93px 108px 75px 92px 78px 31px}.fer-manual-item .fer-kind,.fer-manual-item .fer-unit{min-width:0}
@media(max-width:1150px){.fer-sale{grid-template-columns:1fr}}
@media(max-width:640px){.fer-manual-item{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px}.fer-manual-item .fer-kind{grid-column:1;grid-row:2}.fer-manual-item .fer-unit{grid-column:2/4;grid-row:2}.fer-manual-item .fer-qty{grid-column:1;grid-row:3}.fer-manual-item .fer-price{grid-column:2/4;grid-row:3}.fer-manual-item .fer-line-total{grid-column:1/3;grid-row:4}.fer-manual-item .fer-remove{grid-column:3;grid-row:4}}
/* Filas de venta estables: la primera fila y el botón permanecen arriba. */
.fer-more-items{margin-top:8px}.fer-manual-item{grid-template-columns:minmax(240px,1fr) 115px 82px 106px 92px 34px;min-width:0}.fer-desc-block{min-width:0;display:flex;flex-direction:column;gap:5px}.fer-desc-block>.fer-desc{min-width:0}.fer-desc-block .fer-kind{display:flex;align-items:center;gap:7px;font-size:11px;color:#5a7380}.fer-desc-block .fer-kind select{display:inline-block;width:94px;min-height:29px;margin:0;padding:3px 8px;font-size:11px}.fer-manual-item .fer-remove{font-size:20px;line-height:1;color:#a8453b;border:1px solid transparent;background:transparent;min-height:38px}.fer-manual-item .fer-remove:hover{background:#fff0ec;border-color:#f5d5cd;color:#9d2f25}.fer-manual-item .fer-line-total{font-variant-numeric:tabular-nums;white-space:nowrap}.fer-sale-actions{margin:8px 0 0}
@media(max-width:1150px){.fer-manual-item{grid-template-columns:minmax(200px,1fr) 115px 80px 100px 80px 34px}}
@media(max-width:640px){.fer-manual-item{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:7px}.fer-manual-item .fer-desc-block{grid-column:1/-1;grid-row:1}.fer-manual-item .fer-unit{grid-column:1;grid-row:2}.fer-manual-item .fer-qty{grid-column:2/4;grid-row:2}.fer-manual-item .fer-price{grid-column:1;grid-row:3}.fer-manual-item .fer-line-total{grid-column:2;grid-row:3;justify-content:flex-start}.fer-manual-item .fer-remove{grid-column:3;grid-row:3}}
/* Artículos confirmados debajo del formulario de entrada. */
.fer-staged-item{background:#fff;border-color:#e4ecee;padding:5px 9px;grid-template-columns:minmax(180px,1fr) 110px 75px 95px 85px 34px;align-items:center}
.fer-staged-item label{font-size:0}.fer-staged-item .fer-kind{display:none}.fer-staged-item input:not([type=hidden]),.fer-staged-item select{margin:0;min-height:35px;border-color:transparent;background:transparent;box-shadow:none;font-size:13px;padding:5px 4px}.fer-staged-item .fer-desc input{font-weight:700}.fer-staged-item .fer-desc-block{display:block}.fer-staged-item .fer-line-total{min-height:35px;font-size:12px}
@media(max-width:640px){.fer-staged-item{grid-template-columns:minmax(0,1fr) 75px 68px 36px;gap:3px;padding:5px}.fer-staged-item .fer-desc-block{grid-column:1/-1;grid-row:1}.fer-staged-item .fer-unit{grid-column:1;grid-row:2}.fer-staged-item .fer-qty{grid-column:2;grid-row:2}.fer-staged-item .fer-price{grid-column:3;grid-row:2}.fer-staged-item .fer-remove{grid-column:4;grid-row:2}.fer-staged-item .fer-line-total{grid-column:1/-1;grid-row:3;justify-content:flex-end;min-height:20px}}
.fer-product-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}.fer-product-heading h2{margin:0}.fer-product-heading .fer-kind{display:flex;align-items:center;gap:7px;font-size:11px;color:#526e7a;font-weight:700}.fer-product-heading .fer-kind select{width:94px;min-height:30px;margin:0;padding:3px 7px;font-size:12px}.fer-staged-item .fer-kind{display:none}
