:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#17213a;background:#f3f6fc}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.top{display:flex;align-items:center;gap:34px;padding:14px max(24px,calc((100vw - 1320px)/2));background:#fff;border-bottom:1px solid #e2e8f2;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:12px;min-width:245px}.brand strong{font-size:18px}.brand small{display:block;color:#64718d;font-size:11px;margin-top:3px}.mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#134793;color:#fff;font-size:18px;font-weight:900;letter-spacing:-1px}.mark span{color:#f33c98}.top nav{display:flex;gap:8px}.top nav a{padding:10px 16px;border-radius:10px;color:#4f6181;font-weight:700;font-size:14px}.top nav .selected{background:#edf3ff;color:#164893}.person{display:flex;align-items:center;gap:14px;color:#64718d;font-size:13px;margin-left:auto}.person form{margin:0}main{max-width:1320px;margin:0 auto;padding:32px 24px 60px}.intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:12px 0 28px}h1{font-size:36px;line-height:1.1;letter-spacing:-.04em;margin:7px 0 10px}h2{font-size:18px;margin:0 0 10px;letter-spacing:-.02em}p{margin:0;color:#61708d;line-height:1.5}.eyebrow{color:#d32981;letter-spacing:.14em;font-size:11px;font-weight:900}.grid{display:grid;grid-template-columns:1fr 1.15fr;gap:22px}.card{background:#fff;border:1px solid #e1e7f1;border-radius:18px;padding:23px;box-shadow:0 4px 18px #1e397008}.section{margin-top:22px}.muted{font-size:13px;margin-bottom:16px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}label{display:flex;flex-direction:column;gap:7px;color:#475978;font-size:12px;font-weight:700}input,select{background:#fff;color:#17213a;border:1px solid #d9e1ed;border-radius:9px;padding:11px 12px;font:inherit;font-size:14px;min-width:0;max-width:100%;width:100%}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #da368a;outline-offset:2px}.wide{grid-column:1/-1}button,.outline{border:1px solid #c8d5e8;border-radius:10px;background:#fff;color:#154785;padding:11px 17px;font:inherit;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap}.primary{background:#164b9d;color:#fff;border-color:#164b9d}.primary:hover{background:#0c3477}.quiet{padding:7px 12px}.small{padding:6px 9px;font-size:12px}.filter{display:flex;gap:10px;align-items:end;margin:17px 0}.filter label{max-width:190px}.tablewrap{overflow:auto;max-height:550px}table{width:100%;border-collapse:collapse;min-width:500px;font-size:13px}th{text-align:left;color:#77839b;background:#f8faff;font-size:11px;text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0}th,td{padding:11px 12px;border-bottom:1px solid #edf0f5}td{color:#33445f}tr:hover td{background:#fafbfe}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stats article{background:#fff;padding:20px;border-radius:16px;border:1px solid #e1e7f1}.stats span{color:#687994;font-size:12px}.stats strong{display:block;color:#164b9d;font-size:32px;letter-spacing:-.05em;margin-top:8px}.pill{display:inline-block;padding:5px 9px;border-radius:25px;background:#e4f6ed;color:#168352;font-size:11px;font-weight:800}.pill.empty{background:#ffe7ec;color:#b12952}.login{max-width:430px;margin:8vh auto}.login form{display:grid;gap:17px;margin-top:23px}.login h1{font-size:30px}.alert,.notice{padding:14px 17px;border-radius:10px;margin-bottom:18px;background:#ffe6e9;color:#9d2d3d}.notice{background:#e8f7ee;color:#18724a}details summary{cursor:pointer;font-weight:700}footer{text-align:center;color:#8a97aa;padding:25px;font-size:11px}@media(max-width:850px){.top{gap:12px}.top nav{order:3;width:100%}.person{margin-left:auto}.grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.intro{align-items:start}h1{font-size:30px}}@media(max-width:530px){main{padding:20px 12px 40px}.top{padding:12px}.person span{display:none}.card{padding:17px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.stats{gap:9px}.stats article{padding:14px}.stats strong{font-size:25px}.intro{flex-direction:column}}

.brand-logo{display:block;width:48px;height:48px;object-fit:contain;flex:none}

/* Netplus Perú: jerarquía visual y controles de operación */
:root{color:#1b2d45;background:#f5f8fc}
body{min-width:320px}
.top{position:relative;min-height:94px;gap:30px;background:#fff;border-bottom:1px solid #e3eaf3;box-shadow:0 5px 25px #1739600a}
.top::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#e90f7c 0%,#e90f7c 35%,#1675be 75%,#1675be 100%)}
.brand{min-width:260px}.brand-logo{width:60px;height:60px;border-radius:50%}.brand strong{display:block;letter-spacing:-.02em}.brand small{margin-top:5px}
.top nav{align-items:center;gap:5px;padding:5px;border-radius:13px;background:#f3f7fb}.top nav a{padding:11px 15px;border-radius:9px;font-size:13px}.top nav a:hover{background:#e7f0fa;color:#12568e}.top nav a.selected{background:#fff;color:#145a96;box-shadow:0 2px 9px #1e447016}
.person span{font-weight:650}
main{padding-top:35px}
.intro{align-items:end;padding:28px 30px;margin:0 0 25px;border:1px solid #e3ebf5;border-radius:20px;background:radial-gradient(circle at 96% 10%,#fce3f0 0,transparent 28%),linear-gradient(110deg,#fff 40%,#f0f7ff)}
.intro p{max-width:720px}.intro p strong{color:#14578f}
h1{font-size:clamp(31px,3vw,41px);line-height:1.13;margin:8px 0 10px}.eyebrow{color:#cd146e}.card{padding:25px 27px;box-shadow:0 9px 27px #17365d0b}
.grid{align-items:start}.sale-card{border-top:4px solid #d91678}.card-heading{display:flex;align-items:start;gap:13px}.section-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:11px;background:#fff0f7;color:#cb146c;font-size:23px;font-weight:700}
.fields{gap:17px 16px}.fields label{gap:8px;font-size:12px;font-weight:750}input,select{border-color:#d0dceb;border-radius:10px;padding:12px 13px;min-height:46px}input:hover,select:hover{border-color:#a8bed9}input:focus,select:focus{outline:0;border-color:#1674b9;box-shadow:0 0 0 3px #1474bc22}
.stock-hint{border:1px solid #cce3f5;background:#f0f8ff;color:#155181;padding:11px 13px;border-radius:10px;font-size:12px;line-height:1.5;font-weight:700}.stock-hint.empty{background:#fff0f6;border-color:#f4cbdc;color:#a42261}
button,.outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,transform .15s}button:active,.outline:active{transform:translateY(1px)}button:hover,.outline:hover{background:#eff7ff}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #e42187;outline-offset:3px}
.primary{background:#1465aa;border-color:#1465aa;min-height:46px}.primary:hover{background:#0b4d8d;color:#fff;border-color:#0b4d8d}.sale-card .primary{background:#d91678;border-color:#d91678}.sale-card .primary:hover{background:#b70d62;border-color:#b70d62}
.filter{flex-wrap:wrap}.filter button{min-height:46px}.tablewrap{border:1px solid #edf1f6;border-radius:11px}table{border-collapse:separate;border-spacing:0}th{color:#5d708a;background:#f5f8fc}th,td{padding:13px 12px}tbody tr:last-child td{border-bottom:0}
.stats article{border-top:4px solid #177abd;box-shadow:0 7px 22px #17365d0a}.stats article:nth-child(2){border-top-color:#e0187b}.stats article:nth-child(3){border-top-color:#239bb9}.stats article:nth-child(4){border-top-color:#a94591}.stats span{font-weight:700}.stats strong{color:#12538d;font-size:clamp(28px,2.5vw,36px)}
.login{max-width:470px;margin:7vh auto;padding:35px;border-top:4px solid #d91678}.login form{gap:17px}.notice{border:1px solid #c3e9d5}.alert{border:1px solid #f3c8d4}details summary{color:#155d99}footer{color:#8294ab}
@media(max-width:950px){.top nav{order:3;width:100%}.grid{grid-template-columns:1fr}}
@media(max-width:600px){.top{padding:12px 16px}.brand{min-width:0}.brand-logo{width:50px;height:50px}.brand strong{font-size:16px}.brand small{font-size:10px}.top nav a{flex:1;text-align:center}.intro{padding:22px;gap:18px}.intro .outline{align-self:flex-start}.card{padding:19px 17px}.filter label{width:100%;max-width:none}}
.stock-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:15px}.stock-toolbar h2{margin-bottom:5px}.stock-toolbar .muted{margin:0}.stock-filter{width:min(100%,255px)}.stock-filter select{margin-top:2px}.tablewrap tr[hidden]{display:none!important}
@media(max-width:600px){.stock-filter{width:100%}}
.return-required-note{padding:12px 14px;border:1px solid #f1b8d2;border-radius:11px;background:#fff0f7;color:#a7155a;font-size:13px;font-weight:750;line-height:1.4}
.return-required-note[hidden],.required-mark[hidden]{display:none}
.return-field.is-required{color:#a7155a}
.return-field.is-required input{border-color:#e15c9c;background:#fff9fc}
.required-mark{font-size:11px;color:#a7155a}
.return-field.is-required input:focus{border-color:#d91a77;box-shadow:0 0 0 3px #d91a7726}
.return-field.is-required.is-complete,.return-field.is-required.is-complete .required-mark{color:#168052}
.return-field.is-required.is-complete input{border-color:#52b685;background:#f4fff8}
.return-field.is-required.is-complete input:focus{border-color:#168052;box-shadow:0 0 0 3px #16805226}
.password-field{position:relative;display:block;width:100%}
.password-field input{padding-right:51px}
.password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:40px;height:40px;min-height:0;padding:0;border:0;background:transparent;color:#536580;border-radius:8px}
.password-toggle:hover{background:#f0f5fc;color:#d91678}
.password-toggle:active{transform:translateY(-50%)}
#returned-item-field[hidden]{display:none!important}
.sale-card label[hidden],.sale-card .stock-hint[hidden]{display:none!important}
.inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.inline-actions select{width:auto;min-width:170px}

/* Icons retain adjacent text labels for clarity and accessibility. */
.stock-icon{display:inline-block;width:1.25em;height:1.25em;vertical-align:-.25em;flex-shrink:0;margin-right:.4em}
.icon-label{display:inline-flex;align-items:center;gap:.4rem}
.icon-label .stock-icon{margin-right:0}
