/* Calculadora de metros — FL Fábrica de Ropa · v0.5.1
   Generado por build/build.mjs desde src/calculadora.css: no editar a mano. */
.fl-calc{
  --flc-ink:#101619;
  --flc-ink-2:#5C6B75;
  --flc-rule:#D5DEE2;
  --flc-rule-strong:#8B9AA3;
  --flc-surface:#FFFFFF;
  --flc-paper:#F2F5F6;
  --flc-paper-2:#E9EEF0;
  --flc-accent:#0A7286;
  --flc-accent-soft:#DCEFF3;
  --flc-marca:#7B3FBF;
  --flc-marca-soft:#F3EDFA;
  --flc-bad:#A8251C;
  --flc-bad-soft:#FBE2DF;

  --flc-carrito:#F8D33A;
  --flc-carrito-2:#E3B90F;

  box-sizing:border-box;
  max-width:640px;
  margin:0 auto;
  color:var(--flc-ink);
  font-size:16px;
  line-height:1.5;
  text-align:left;
}
.fl-calc *, .fl-calc *::before, .fl-calc *::after{ box-sizing:border-box; }

.fl-calc h3, .fl-calc p, .fl-calc span, .fl-calc li, .fl-calc strong,
.fl-calc label, .fl-calc legend, .fl-calc summary, .fl-calc ol, .fl-calc ul, .fl-calc div{
  color:inherit;
  text-transform:none;
  letter-spacing:normal;
  text-shadow:none;
}
.fl-calc p{ margin:0; }
.fl-calc ul, .fl-calc ol{ margin:0; padding:0; }

.fl-calc .fl-calc-form{
  background:var(--flc-surface);
  border:1px solid var(--flc-rule);
  border-radius:8px;
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.fl-calc .fl-calc-op{ border:0; margin:0; padding:0; min-width:0; }
.fl-calc .fl-calc-op-t{
  display:block; float:none; width:auto; padding:0; margin:0 0 8px;
  font-size:15px; font-weight:700; line-height:1.3; border:0;
}
.fl-calc .fl-calc-ayuda{ font-size:14px; color:var(--flc-ink-2); margin-top:8px; line-height:1.45; }

.fl-calc .fl-calc-seg{
  display:flex; position:relative;
  border:1px solid var(--flc-rule-strong); border-radius:6px; overflow:hidden;
}
.fl-calc .fl-calc-seg-o{ flex:1 1 0; position:relative; margin:0; display:block; }
.fl-calc .fl-calc-seg-o + .fl-calc-seg-o{ border-left:1px solid var(--flc-rule-strong); }
.fl-calc .fl-calc-seg-o input{
  position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:pointer;
}
.fl-calc .fl-calc-seg-o span{
  display:flex; align-items:center; justify-content:center;
  min-height:44px; padding:8px 6px;
  font-size:15px; font-weight:600; font-variant-numeric:tabular-nums;
  background:var(--flc-surface); color:var(--flc-ink);
}
.fl-calc .fl-calc-seg-o input:checked + span{ background:var(--flc-ink); color:#FFFFFF; }
.fl-calc .fl-calc-seg-o input:focus-visible + span{ outline:2px solid var(--flc-accent); outline-offset:-5px; }

.fl-calc .fl-calc-disenos{ display:flex; flex-direction:column; gap:10px; }
.fl-calc .fl-calc-fila{
  border:1px solid var(--flc-rule); border-radius:6px; padding:10px 12px 12px;
  background:var(--flc-paper);
}
.fl-calc .fl-calc-fila-h{ display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:32px; margin-bottom:6px; }
.fl-calc .fl-calc-fila-t{ display:flex; align-items:center; gap:8px; font-size:15px; font-weight:700; }
.fl-calc .fl-calc-color{ width:14px; height:14px; border-radius:3px; flex:0 0 14px; }
.fl-calc .fl-calc-campos{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:8px; }
.fl-calc .fl-calc-campo{ display:flex; flex-direction:column; gap:4px; margin:0; min-width:0; }
.fl-calc .fl-calc-campo-t{ font-size:13px; font-weight:600; color:var(--flc-ink-2); line-height:1.25; }
.fl-calc .fl-calc-error{ color:var(--flc-bad); font-size:14px; line-height:1.4; margin-top:8px; font-weight:500; }
.fl-calc .fl-calc-estado{ font-size:14px; color:var(--flc-bad); font-weight:600; margin-top:-8px; }
.fl-calc .fl-calc-estado:empty{ display:none; }

.fl-calc .fl-calc-viejo{
  margin-top:12px; padding:10px 12px; border-radius:6px;
  background:var(--flc-accent-soft); font-size:14px; line-height:1.4;
}
.fl-calc .fl-calc-res{
  margin-top:14px; background:var(--flc-surface);
  border:1px solid var(--flc-rule); border-top:4px solid var(--flc-marca); border-radius:8px;
  padding:16px; display:flex; flex-direction:column; gap:14px;

  scroll-margin-top:96px;
  transition:opacity .2s;
}
.fl-calc .fl-calc-res.es-viejo{ opacity:.5; }
.fl-calc .fl-calc-res-t{
  margin:0; padding:0; font-size:17px; font-weight:600; line-height:1.3; color:var(--flc-ink);
}
.fl-calc .fl-calc-res-t:focus{ outline:none; }
.fl-calc .fl-calc-res-t:focus-visible{ outline:2px solid var(--flc-accent); outline-offset:4px; }
.fl-calc .fl-calc-res-t strong{
  display:block; font-size:40px; line-height:1.1; font-weight:800; font-variant-numeric:tabular-nums; margin-top:2px;
}
.fl-calc .fl-calc-compra{ font-size:16px; line-height:1.5; }
.fl-calc .fl-calc-acciones{ display:flex; flex-direction:column; gap:6px; }
.fl-calc .fl-calc-carrito-d{ font-size:13.5px; color:var(--flc-ink-2); line-height:1.4; }
.fl-calc .fl-calc-verif{ font-size:15px; line-height:1.45; }
.fl-calc .fl-calc-verif a{ color:var(--flc-accent); font-weight:600; text-decoration:underline; text-underline-offset:3px; }

.fl-calc .fl-calc-notas{ list-style:none; display:flex; flex-direction:column; gap:8px; }
.fl-calc .fl-calc-nota{
  background:var(--flc-marca-soft); border-radius:6px; padding:10px 12px; font-size:14.5px; line-height:1.45;
}

.fl-calc .fl-calc-dibujo-h{
  display:flex; justify-content:space-between; align-items:baseline; gap:8px;
  font-size:14px; font-weight:700; margin-bottom:6px;
}
.fl-calc .fl-calc-dibujo-h span + span{ font-weight:500; color:var(--flc-ink-2); font-variant-numeric:tabular-nums; }
.fl-calc .fl-calc-lienzo{
  max-height:min(70vh, 560px); overflow:auto; -webkit-overflow-scrolling:touch;
  border:1px solid var(--flc-rule); border-radius:6px; background:var(--flc-paper); padding:8px 4px;
}
.fl-calc .fl-calc-svg{ display:block; margin:0 auto; max-width:100%; height:auto; }
.fl-calc .fl-calc-svg text{ font-family:inherit; }
.fl-calc .fl-calc-svg-n{ font-weight:700; }
.fl-calc .fl-calc-svg-m{ fill:#5C6B75; font-variant-numeric:tabular-nums; }
.fl-calc .fl-calc-svg-fin{ fill:#101619; font-weight:700; }

.fl-calc .fl-calc-svg-libre{ fill:#46545C; font-weight:600; }
.fl-calc .fl-calc-dibujo-pie{ font-size:13px; color:var(--flc-ink-2); margin-top:6px; }

.fl-calc .fl-calc-filas{ border-top:1px solid var(--flc-rule); padding-top:10px; }
.fl-calc .fl-calc-filas summary{
  cursor:pointer; font-weight:600; font-size:15px; color:var(--flc-accent);
  min-height:44px; display:flex; align-items:center; list-style:none;
}
.fl-calc .fl-calc-filas summary::-webkit-details-marker{ display:none; }
.fl-calc .fl-calc-filas summary::before{
  content:""; width:8px; height:8px; margin:0 10px 0 2px; flex:0 0 8px;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform:rotate(-45deg); transition:transform .15s;
}
.fl-calc .fl-calc-filas[open] summary::before{ transform:rotate(45deg); }
.fl-calc .fl-calc-filas ol{ list-style:none; display:flex; flex-direction:column; gap:6px; margin-top:6px; }
.fl-calc .fl-calc-filas li{ font-size:14px; line-height:1.45; font-variant-numeric:tabular-nums; }
.fl-calc .fl-calc-aclara{ font-size:13px; color:var(--flc-ink-2); line-height:1.45; }

@media (min-width:560px){
  .fl-calc .fl-calc-form, .fl-calc .fl-calc-res{ padding:20px; }
  .fl-calc .fl-calc-res-t strong{ font-size:44px; }
}
@media (prefers-reduced-motion:reduce){
  .fl-calc *, .fl-calc *::before{ transition:none !important; }
}

.fl-calc .fl-calc-op{
  display:block !important; position:static !important; width:auto !important; height:auto !important;
  min-width:0 !important; min-height:0 !important; margin:0 !important; padding:0 !important;
  border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important;
  font-family:inherit !important; font-size:16px !important; font-weight:400 !important; line-height:1.5 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:left !important; color:var(--flc-ink) !important; opacity:1 !important;
}
.fl-calc .fl-calc-op-t{
  display:block !important; position:static !important; float:none !important; width:auto !important; height:auto !important;
  min-height:0 !important; margin:0 0 8px !important; padding:0 !important;
  border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important;
  font-family:inherit !important; font-size:15px !important; font-weight:700 !important; line-height:1.3 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:left !important; color:var(--flc-ink) !important; opacity:1 !important;
}

.fl-calc .fl-calc-seg-o{
  display:block !important; position:relative !important; width:auto !important; height:auto !important;
  min-height:0 !important; margin:0 !important; padding:0 !important;
  border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important;
  font-family:inherit !important; font-size:15px !important; font-weight:600 !important; line-height:1.2 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:center !important; color:var(--flc-ink) !important; opacity:1 !important;
}
.fl-calc .fl-calc-seg-o + .fl-calc-seg-o{ border-left:1px solid var(--flc-rule-strong) !important; }
.fl-calc .fl-calc-seg-o input{
  display:block !important; position:absolute !important; top:0 !important; left:0 !important; right:auto !important; bottom:auto !important;
  width:100% !important; height:100% !important; min-height:0 !important; max-width:none !important;
  margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important;
  background:none !important; box-shadow:none !important; outline:none !important;
  font-family:inherit !important; font-size:15px !important; font-weight:600 !important; line-height:1.2 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:center !important; color:var(--flc-ink) !important;
  opacity:0 !important; -webkit-appearance:none !important; appearance:none !important;
  cursor:pointer !important; z-index:1 !important;
}
.fl-calc .fl-calc-seg-o span{
  display:flex !important; position:static !important; align-items:center !important; justify-content:center !important;
  width:auto !important; height:auto !important; min-height:44px !important; margin:0 !important; padding:8px 6px !important;
  border:0 !important; border-radius:0 !important; box-shadow:none !important;
  background:var(--flc-surface) !important; color:var(--flc-ink) !important;
  font-family:inherit !important; font-size:15px !important; font-weight:600 !important; line-height:1.2 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:center !important; opacity:1 !important;
}
.fl-calc .fl-calc-seg-o input:checked + span{ background:var(--flc-ink) !important; color:#FFFFFF !important; }
.fl-calc .fl-calc-seg-o input:focus-visible + span{ outline:2px solid var(--flc-accent) !important; outline-offset:-5px !important; }

.fl-calc .fl-calc-campo{
  display:flex !important; flex-direction:column !important; gap:4px !important; position:static !important;
  width:auto !important; height:auto !important; min-width:0 !important; min-height:0 !important;
  margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important;
  background:none !important; box-shadow:none !important;
  font-family:inherit !important; font-size:16px !important; font-weight:400 !important; line-height:1.5 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:left !important; color:var(--flc-ink) !important; opacity:1 !important;
}
.fl-calc .fl-calc-campo-t{
  display:block !important; margin:0 !important; padding:0 !important;
  font-family:inherit !important; font-size:13px !important; font-weight:600 !important; line-height:1.25 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  color:var(--flc-ink-2) !important; opacity:1 !important;
}
.fl-calc .fl-calc-campo input{
  display:block !important; position:static !important;
  width:100% !important; height:auto !important; min-height:44px !important; max-width:none !important;
  margin:0 !important; padding:9px 10px !important;
  border:1px solid var(--flc-rule-strong) !important; border-radius:6px !important;
  background:var(--flc-surface) !important; color:var(--flc-ink) !important; box-shadow:none !important;

  font-family:inherit !important; font-size:16px !important; font-weight:500 !important; line-height:1.4 !important;
  font-variant-numeric:tabular-nums !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:left !important; opacity:1 !important; outline:none !important;
  -webkit-appearance:none !important; appearance:none !important;
}
.fl-calc .fl-calc-campo input:focus{
  border-color:var(--flc-accent) !important; box-shadow:0 0 0 2px var(--flc-accent) !important;
}
.fl-calc .fl-calc-campo input[aria-invalid="true"]{
  border-color:var(--flc-bad) !important; box-shadow:0 0 0 1px var(--flc-bad) !important;
  background:var(--flc-bad-soft) !important;
}

.fl-calc .fl-calc-calcular, .fl-calc .fl-calc-carrito{
  display:flex !important; position:static !important; align-items:center !important; justify-content:center !important;
  width:100% !important; min-height:52px !important; height:auto !important;
  margin:0 !important; padding:13px 18px !important;
  border:0 !important; border-radius:6px !important; box-shadow:none !important;
  font-family:inherit !important; font-size:17px !important; font-weight:700 !important; line-height:1.25 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:center !important; opacity:1 !important; cursor:pointer !important;
}
.fl-calc .fl-calc-calcular{ background:var(--flc-ink) !important; color:#FFFFFF !important; }
.fl-calc .fl-calc-calcular:hover:not(:disabled){ background:#2B363C !important; }
.fl-calc .fl-calc-calcular:disabled{ background:var(--flc-ink-2) !important; cursor:progress !important; }
.fl-calc .fl-calc-carrito{ background:var(--flc-carrito) !important; color:var(--flc-ink) !important; }
.fl-calc .fl-calc-carrito:hover{ background:var(--flc-carrito-2) !important; color:var(--flc-ink) !important; }
.fl-calc .fl-calc-carrito[aria-disabled="true"]{ background:var(--flc-ink-2) !important; color:#FFFFFF !important; cursor:not-allowed !important; }

.fl-calc .fl-calc-agregar{
  display:flex !important; position:static !important; align-items:center !important; justify-content:center !important;
  width:100% !important; min-height:46px !important; height:auto !important;
  margin:0 !important; padding:10px 14px !important;
  border:1px dashed var(--flc-rule-strong) !important; border-radius:6px !important; box-shadow:none !important;
  background:var(--flc-surface) !important; color:var(--flc-ink) !important;
  font-family:inherit !important; font-size:15px !important; font-weight:600 !important; line-height:1.3 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:center !important; opacity:1 !important; cursor:pointer !important;
}
.fl-calc .fl-calc-agregar:hover:not(:disabled){ background:var(--flc-paper) !important; }
.fl-calc .fl-calc-agregar:disabled{ color:var(--flc-ink-2) !important; cursor:not-allowed !important; border-style:solid !important; }

.fl-calc .fl-calc-quitar, .fl-calc .fl-calc-verif a{
  position:static !important; width:auto !important; height:auto !important; min-width:0 !important;
  margin:0 !important; border:0 !important; border-radius:0 !important; box-shadow:none !important;
  background:none !important; color:var(--flc-accent) !important;
  font-family:inherit !important; font-weight:600 !important;
  text-transform:none !important; letter-spacing:normal !important; text-align:left !important;
  text-decoration:underline !important; text-underline-offset:3px !important;
  opacity:1 !important; cursor:pointer !important;
}
.fl-calc .fl-calc-quitar{
  display:inline-flex !important; align-items:center !important; min-height:32px !important; padding:4px 2px !important;
  font-size:14px !important; line-height:1.3 !important;
}
.fl-calc .fl-calc-verif a{
  display:inline !important; min-height:0 !important; padding:0 !important;
  font-size:inherit !important; line-height:inherit !important;
}

.fl-calc .fl-calc-filas{
  display:block !important; margin:0 !important; padding:10px 0 0 !important;
  border:0 !important; border-top:1px solid var(--flc-rule) !important; border-radius:0 !important;
  background:none !important; box-shadow:none !important;
}
.fl-calc .fl-calc-filas summary{
  display:flex !important; position:static !important; align-items:center !important;
  width:auto !important; height:auto !important; min-height:44px !important; margin:0 !important; padding:0 !important;
  border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important;
  font-family:inherit !important; font-size:15px !important; font-weight:600 !important; line-height:1.5 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:left !important; color:var(--flc-accent) !important; opacity:1 !important; cursor:pointer !important;
  list-style:none !important;
}

.fl-calc .fl-calc-res-t{
  display:block !important; position:static !important; width:auto !important; height:auto !important; min-height:0 !important;
  margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important;
  background:none !important; box-shadow:none !important;
  font-family:inherit !important; font-size:17px !important; font-weight:600 !important; line-height:1.3 !important;
  text-transform:none !important; letter-spacing:normal !important; text-decoration:none !important;
  text-align:left !important; color:var(--flc-ink) !important; opacity:1 !important;
}
.fl-calc .fl-calc-res-t strong{
  display:block !important; margin:2px 0 0 !important; padding:0 !important;
  font-family:inherit !important; font-size:40px !important; font-weight:800 !important; line-height:1.1 !important;
  text-transform:none !important; letter-spacing:normal !important; color:var(--flc-ink) !important;
}
@media (min-width:560px){
  .fl-calc .fl-calc-res-t strong{ font-size:44px !important; }
}

.fl-calc .fl-calc-calcular:focus-visible, .fl-calc .fl-calc-carrito:focus-visible,
.fl-calc .fl-calc-agregar:focus-visible, .fl-calc .fl-calc-quitar:focus-visible,
.fl-calc .fl-calc-filas summary:focus-visible,
.fl-calc .fl-calc-verif a:focus-visible{
  outline:2px solid var(--flc-accent) !important; outline-offset:2px !important;
}

@media (max-width:640px){
  .fl-calc .fl-calc-quitar{ min-height:44px !important; padding:4px 6px !important; margin:0 -6px 0 0 !important; }
}

.fl-calc.fl-calc [hidden]{ display:none !important; }

