:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:#fbf8fa;color:#342c37;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border-radius:9px;border:1px solid transparent;padding:11px 15px;font-size:13px;font-weight:650;transition:.15s}button:disabled{opacity:.55;cursor:wait}button:hover:not(:disabled){filter:brightness(.95)}.primary{background:#723c5e;color:#fff}.outline{background:#fff;color:#713b59;border-color:#decdda}.danger{background:#a6304c;color:white}.full{width:100%}.hidden{display:none!important}.small{font-size:12px}.muted,.hint{color:#857784}.hint{font-size:12px;line-height:1.65}.note{background:#fbf3e5;padding:14px;border-radius:9px;color:#795b32;font-size:13px}.stack{display:grid;gap:15px}label{display:grid;gap:7px;font-size:13px;font-weight:620;color:#5b4b5b}input,select{background:white;border:1px solid #ded5dd;outline:0;color:#352c36;border-radius:8px;padding:11px 12px;width:100%;min-width:0}input:focus,select:focus{border-color:#855075;box-shadow:0 0 0 3px #84507619}input:disabled,select:disabled{background:#f6f4f6}.center-page{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(circle at 10% 15%,#f1dce9,transparent 40%),radial-gradient(circle at 88% 88%,#f8ece7,transparent 35%),#fbf9fb;padding:20px}.auth-card{border:1px solid #ebdce5;border-radius:20px;background:white;box-shadow:0 14px 60px #42233716;padding:36px;width:min(100%,435px)}.auth-card h1{margin:10px 0 6px;font-size:28px}.auth-card h2{margin:18px 0 12px}.auth-card p{line-height:1.65}.logo{background:#f5e4ed;color:#713c5d;border-radius:14px;width:50px;height:50px;display:grid;place-items:center;font-size:30px}.eyebrow{font-size:10px;color:#9f7c93;letter-spacing:2px;font-weight:800}.auth-switch{background:#f5f0f4;border-radius:10px;padding:5px;display:flex;gap:5px;margin:22px 0}.auth-switch button{width:50%;background:transparent;color:#735467}.auth-switch button.selected{background:#fff;box-shadow:0 2px 8px #3a293519}.app{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100dvh}.sidebar{background:#fff;border-right:1px solid #ece4e9;display:flex;flex-direction:column;padding:28px 14px 18px;position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 29px}.brand-mark{background:#713b59;color:white;border-radius:11px;width:39px;height:39px;display:grid;place-items:center;font-size:27px}.brand strong{display:block;font-size:18px;color:#64314e;letter-spacing:-.3px}.brand small{font-size:9px;color:#9e8296;letter-spacing:1.5px;font-weight:800}.sidelabel{font-size:10px;letter-spacing:1.4px;color:#b6a7b1;padding:0 12px 13px;font-weight:800}.sidebar nav{display:grid;gap:5px}.nav-link{width:100%;display:flex;gap:12px;align-items:center;background:transparent;color:#736674;text-align:left;font-size:14px;padding:13px}.nav-link.selected{background:#f3e8ef;color:#66334f}.sidebar-bottom{margin-top:auto;display:grid;gap:12px}.cloud{font-size:12px;color:#6d8176;padding:8px 10px}.online-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#47aa81;margin-right:6px}.workspace{min-width:0}.topbar{background:#fff;border-bottom:1px solid #eee6eb;padding:20px clamp(18px,3vw,42px);display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar h1{font-size:24px;margin:4px 0 0;letter-spacing:-.7px}.top-actions{display:flex;align-items:center;gap:15px}.user-pill{border-left:1px solid #eee3eb;padding-left:15px;display:flex;align-items:center;gap:9px}.user-pill strong,.user-pill small{display:block}.user-pill strong{font-size:12px}.user-pill small{color:#917e90;font-size:11px;margin-top:2px}.avatar{display:grid;place-items:center;background:#f0dce8;color:#71405e;font-weight:800;width:35px;height:35px;border-radius:50%}main{max-width:1500px;padding:28px clamp(18px,3vw,42px) 60px;margin:auto}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.section-head h2{font-size:19px;margin:0 0 5px}.section-head p{margin:0;color:#918391;font-size:13px}.card{background:#fff;border:1px solid #eee6eb;border-radius:14px;padding:22px;margin:0 0 18px;box-shadow:0 4px 24px #58344605}.card h3{font-size:15px;margin:0 0 18px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric{background:#fff;border:1px solid #eee6eb;border-radius:14px;padding:19px;min-height:110px}.metric .label{color:#857483;font-size:12px}.metric .value{font-size:24px;font-weight:800;color:#663754;letter-spacing:-.5px;margin-top:11px}.metric .sub{font-size:11px;color:#9b8897;margin-top:3px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.form-action{align-self:end}.form-action button{width:100%}.inline-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.table-wrap{max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;white-space:nowrap;background:#faf6f9;color:#8a7183;font-size:11px;font-weight:750}td,th{padding:13px 12px;border-bottom:1px solid #f1ebef}td{line-height:1.5}tr:last-child td{border-bottom:0}td strong{color:#713b59}.positive{color:#198568;font-weight:750}.negative{color:#bc4059;font-weight:750}.tag,.state{display:inline-flex;border-radius:99px;font-size:11px;padding:6px 10px;font-weight:650;background:#f5ecf2;color:#7a4c6b;white-space:nowrap}.state.ok{background:#e4f5ec;color:#23764d}.state.bad{background:#fbe9ec;color:#ab394e}.state.warn{background:#fff4da;color:#856022}.empty{font-size:13px;color:#958394;padding:15px 0}.alert-item{padding:12px 0;border-bottom:1px solid #f0edf0;font-size:13px;display:flex;justify-content:space-between;gap:10px}.alert-item:last-child{border-bottom:0}.preview{background:#faf6f9;border-radius:10px;padding:14px;color:#7c6273;font-size:13px;line-height:1.8;margin-top:14px}.recipe-item{display:grid;grid-template-columns:2fr 1fr auto;gap:8px;margin:8px 0}.recipe-item button{background:#f4e9f0;color:#764560}footer{text-align:center;font-size:11px;color:#a597a3;padding:25px}.toast{position:fixed;top:18px;right:18px;z-index:100;padding:14px 19px;border-radius:11px;background:#365d4b;color:white;max-width:min(360px,90vw);box-shadow:0 10px 30px #2c2a3040;display:none;font-size:13px;line-height:1.5}.toast.error{background:#9e364f}.toast.show{display:block}code{background:#f3edf2;padding:2px 5px;border-radius:4px}a{color:#713b59}@media(max-width:1020px){.metrics{grid-template-columns:repeat(2,1fr)}.columns{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.app{grid-template-columns:1fr}.sidebar{height:auto;position:static;padding:12px}.brand{padding:0 5px 12px}.sidelabel,.sidebar-bottom .cloud{display:none}.sidebar nav{display:flex;overflow-x:auto;padding-bottom:4px}.nav-link{min-width:max-content;width:auto;padding:10px 13px}.sidebar-bottom{display:block;margin-top:3px}.sidebar-bottom button{font-size:12px}.topbar{padding:14px 18px}.topbar h1{font-size:19px}.top-actions{gap:8px}.top-actions .outline{padding:8px}.user-pill{padding-left:8px}.user-pill small{display:none}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric{padding:14px;min-height:95px}.metric .value{font-size:19px}.form-grid{grid-template-columns:1fr}.recipe-item{grid-template-columns:1fr 100px auto}.card{padding:16px}.auth-card{padding:25px}}
/* Versión 3 */
.reference-preview{background:#fbf5f8;border:1px dashed #dfcfda;border-radius:12px;min-height:84px;display:flex;align-items:center;justify-content:center;margin:10px 0 18px;padding:12px;font-size:13px}
.reference-preview img{width:auto;max-width:100%;max-height:220px;object-fit:contain;border-radius:8px}
.doc-item{display:grid;grid-template-columns:1.6fr 1.2fr .65fr .9fr auto;gap:9px;align-items:end;margin:10px 0;padding:13px;border:1px solid #eee6eb;border-radius:10px}
.doc-item label{margin:0;font-size:11px}.doc-item input,.doc-item select{width:100%}.doc-item .remove-line{margin-bottom:1px;background:#f8e7ef;color:#793c59}
.doc-actions{display:flex;gap:5px;flex-wrap:wrap;min-width:210px}.doc-actions button{padding:7px 9px;font-size:11px;border:1px solid #e9dce5;background:#fff;color:#713b59;border-radius:7px}
.doc-actions button:hover{background:#f6ecf2}.doc-actions button:disabled{opacity:.35}
.tiny{font-size:11px}.u-muted{color:#8c7888}.edit-action{font-size:12px;padding:7px 10px}.line-total{text-align:right;font-size:11px;color:#756071;margin-top:6px}
.form-grid textarea{width:100%}textarea{font-family:inherit;resize:vertical;padding:11px 13px;border:1px solid #e6dce4;border-radius:9px;font-size:13px;color:#453444}
@media(max-width:980px){.doc-item{grid-template-columns:1fr 1fr}.doc-item .remove-line{align-self:end}}
@media(max-width:590px){.doc-item{grid-template-columns:1fr}.doc-actions{min-width:170px}}


/* DeliciasS · Identidad visual oficial: gris grafito, rosa empolvado y marfil. */
:root {
  --marca-grafito:#4b4b49;
  --marca-rosa:#b67d82;
  --marca-rosa-oscuro:#95565d;
  --marca-claro:#faf6f5;
  --marca-borde:#e9dedd;
  background:var(--marca-claro);
  color:var(--marca-grafito);
}
body {background:var(--marca-claro)}
.sidebar,.topbar,.card,.metric {background:#fff;border-color:var(--marca-borde)}
.sidebar {background:#fffdfd}
.brand {justify-content:center;padding:0 3px 25px;min-height:132px}
.brand-logo {display:block;width:100%;max-width:205px;height:auto;object-fit:contain}
.auth-card .logo {width:100%;height:auto;min-height:108px;background:#fff;border-radius:0;display:flex;align-items:center;justify-content:center;margin:0 auto 10px}
.auth-brand-logo {display:block;max-width:240px;width:100%;height:auto}
.center-page {background:radial-gradient(circle at 10% 15%,#f5e8e8,transparent 41%),radial-gradient(circle at 88% 88%,#eee7e4,transparent 35%),#fbf8f7}
.auth-card {border-color:var(--marca-borde)}
.primary,.brand-mark {background:var(--marca-rosa-oscuro);color:white}
.outline,.doc-actions button {color:var(--marca-rosa-oscuro);border-color:#dec8c9}
.outline:hover,.doc-actions button:hover {background:#f8eeee}
.nav-link {color:#695f60}
.nav-link.selected {background:#f8eded;color:#824d54}
.brand strong,.metric .value,td strong,a {color:var(--marca-rosa-oscuro)}
.eyebrow,.sidelabel,.tag,.state {color:#8f626a}
.tag,.state,.auth-switch,.preview,.reference-preview {background:#faf1f1}
th {background:#faf3f2;color:#82646a}
td,th {border-bottom-color:#f2e8e7}
input,select,textarea {border-color:#ded1d1;color:#4b4545}
input:focus,select:focus,textarea:focus {border-color:var(--marca-rosa);outline:none;box-shadow:0 0 0 3px #b67d8226}
.avatar {background:#f5e5e6;color:var(--marca-rosa-oscuro)}
.recipe-item button,.doc-item .remove-line {background:#f9ecee;color:#8b4e58}
.doc-item {border-color:var(--marca-borde)}
.toast.error {background:#a53f56}
@media (max-width:720px) {
 .brand {min-height:0;justify-content:flex-start;padding:0 6px 8px}
 .brand-logo {max-width:145px}
}

/* Fecha de entrega escrita en día/mes/año, con calendario opcional */
.delivery-date-field{display:grid;gap:7px;align-content:start}
.delivery-date-entry{display:flex;gap:8px;position:relative;align-items:center;min-width:0}
.delivery-date-entry input[name="delivery"]{min-width:0;flex:1}
.delivery-date-button{flex:none;min-width:46px;min-height:42px;padding:8px;font-size:19px}
.delivery-date-entry .delivery-native-picker{position:absolute;right:0;bottom:0;width:1px;height:1px;opacity:0;pointer-events:none;padding:0;border:0}

/* V4.0 · Contabilidad y órdenes de producción */
.v4-switch{display:inline-flex;align-items:center;gap:7px;font-size:12px;white-space:normal;color:#60555a;font-weight:600}
.v4-switch input{width:16px;min-width:16px;height:16px;accent-color:#9d5b64}
#view-finance .metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
#view-finance .metric .value{font-size:clamp(16px,1.7vw,23px);overflow-wrap:anywhere}
#v4OrderRows td{vertical-align:top}
#v4OrderRows .doc-actions{min-width:125px}
#v4OrderRows .doc-actions button{white-space:nowrap}
@media(max-width:1150px){#view-finance .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:590px){#view-finance .metrics{grid-template-columns:1fr}.v4-switch{white-space:normal}.section-head{align-items:flex-start;flex-wrap:wrap}}
