/* Navigation et gestion de plusieurs logos — extension limitée à la préversion v17. */
[data-logo-configurator] .lc-product-nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: .45rem;
  align-items: center;
  margin-top: .7rem;
}

[data-logo-configurator] .lc-product-nav button,
[data-logo-configurator] .lc-add-logo,
[data-logo-configurator] .lc-logo-chip,
[data-logo-configurator] .lc-logo-remove {
  border: 1px solid rgba(197, 192, 125, .42);
  border-radius: .65rem;
  background: rgba(250, 250, 248, .045);
  color: #f7f4ea;
  font: inherit;
  font-size: .76rem;
  font-weight: 850;
  line-height: 1.15;
}

[data-logo-configurator] .lc-product-nav button {
  min-height: 2.35rem;
  padding: .5rem .55rem;
}

[data-logo-configurator] .lc-product-nav button:hover:not(:disabled),
[data-logo-configurator] .lc-product-nav button:focus-visible,
[data-logo-configurator] .lc-add-logo:hover,
[data-logo-configurator] .lc-add-logo:focus-visible,
[data-logo-configurator] .lc-logo-chip:hover,
[data-logo-configurator] .lc-logo-chip:focus-visible {
  border-color: #d4c976;
  background: rgba(197, 192, 125, .15);
}

[data-logo-configurator] .lc-product-nav button:disabled {
  opacity: .35;
  cursor: not-allowed;
}

[data-logo-configurator] .lc-product-nav [data-lc-product-position] {
  min-width: 2.8rem;
  color: #d9cf82;
  font-size: .72rem;
  font-weight: 900;
  text-align: center;
}

[data-logo-configurator] .lc-logo-manager {
  display: grid;
  gap: .55rem;
  margin-top: .7rem;
  padding-top: .7rem;
  border-top: 1px solid rgba(197, 192, 125, .18);
}

[data-logo-configurator] .lc-logo-manager-head {
  display: flex;
  gap: .5rem;
  align-items: center;
  justify-content: space-between;
  color: #f7f4ea;
  font-size: .78rem;
}

[data-logo-configurator] .lc-logo-manager-head span {
  color: #d9cf82;
  font-size: .7rem;
  font-weight: 850;
}

[data-logo-configurator] .lc-logo-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
}

[data-logo-configurator] .lc-logo-tab {
  display: inline-flex;
  align-items: stretch;
  max-width: 100%;
}

[data-logo-configurator] .lc-logo-chip {
  min-height: 2.15rem;
  max-width: 9.5rem;
  padding: .46rem .68rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

[data-logo-configurator] .lc-logo-chip[aria-pressed="true"] {
  border-color: #d4c976;
  background: #d4c976;
  color: #10231d;
}

[data-logo-configurator] .lc-logo-remove {
  width: 2.1rem;
  margin-left: .2rem;
  padding: 0;
  color: #f4b6aa;
}

[data-logo-configurator] .lc-add-logo {
  width: 100%;
  min-height: 2.55rem;
  padding: .55rem .75rem;
  border-style: dashed;
  color: #e6dc91;
}

[data-logo-configurator] .lc-add-logo:disabled {
  opacity: .45;
  cursor: not-allowed;
}

[data-logo-configurator] .lc-logo-help {
  margin: 0;
  color: rgba(247, 244, 234, .64);
  font-size: .69rem;
  line-height: 1.4;
}

[data-logo-configurator] .lc-active-logo {
  display: inline-flex;
  align-items: center;
  min-height: 1.65rem;
  padding: .2rem .48rem;
  border: 1px solid rgba(197, 192, 125, .32);
  border-radius: 999px;
  color: #d9cf82;
  font-size: .66rem;
  font-weight: 850;
  white-space: nowrap;
}

[data-logo-configurator] .lc-print-area.is-active-layer {
  border-color: #f2dc69;
  box-shadow: 0 0 0 2px rgba(242, 220, 105, .18), 0 .35rem 1rem rgba(0, 0, 0, .2);
}

[data-logo-configurator] .lc-print-area {
  touch-action: none;
}

[data-logo-configurator] .lc-print-area:focus-visible {
  outline: 3px solid #f2dc69;
  outline-offset: 4px;
}

[data-logo-configurator] .lc-print-area.is-pinching {
  cursor: nwse-resize;
}

[data-logo-configurator] .lc-clean-preview-toggle {
  position: absolute;
  top: .65rem;
  right: .65rem;
  z-index: 9;
  min-height: 2.35rem;
  padding: .48rem .72rem;
  border: 1px solid rgba(197, 192, 125, .55);
  border-radius: 999px;
  background: rgba(10, 31, 25, .9);
  color: #f7f4ea;
  box-shadow: 0 .35rem 1rem rgba(0, 0, 0, .18);
  font: inherit;
  font-size: .7rem;
  font-weight: 900;
  line-height: 1.1;
  cursor: pointer;
}

[data-logo-configurator] .lc-clean-preview-toggle:hover,
[data-logo-configurator] .lc-clean-preview-toggle:focus-visible,
[data-logo-configurator] .lc-clean-preview-toggle[aria-pressed="true"] {
  border-color: #d4c976;
  background: #d4c976;
  color: #10231d;
}

[data-logo-configurator] .lc-spin-hint {
  top: 3.45rem;
}

[data-logo-configurator][data-clean-preview="true"] .lc-print-area {
  border-color: transparent !important;
  box-shadow: none !important;
  cursor: default;
  pointer-events: none;
}

[data-logo-configurator][data-clean-preview="true"] .lc-print-area:focus-visible {
  outline: none;
}

[data-logo-configurator][data-clean-preview="true"] .lc-layer-number,
[data-logo-configurator][data-clean-preview="true"] .lc-move-hint,
[data-logo-configurator][data-clean-preview="true"] .lc-spin-hint {
  display: none !important;
}

[data-logo-configurator] .lc-transparency-warning {
  margin: .55rem 0 0;
  padding: .58rem .65rem;
  border: 1px solid rgba(239, 165, 132, .55);
  border-radius: .6rem;
  background: rgba(91, 38, 25, .38);
  color: #ffe6d9;
  font-size: .68rem;
  font-weight: 700;
  line-height: 1.4;
}

[data-logo-configurator] .lc-transparency-warning[hidden] {
  display: none;
}

[data-logo-configurator] .lc-position-tools {
  display: grid;
  gap: .48rem;
  margin-top: .7rem;
  padding: .65rem;
  border: 1px solid rgba(197, 192, 125, .25);
  border-radius: .7rem;
  background: rgba(250, 250, 248, .035);
}

[data-logo-configurator] .lc-position-tools-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  color: #f7f4ea;
  font-size: .75rem;
}

[data-logo-configurator] .lc-position-tools-head span {
  color: #d9cf82;
  font-size: .68rem;
  font-weight: 850;
}

[data-logo-configurator] .lc-position-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(2.65rem, 1fr));
  gap: .35rem;
}

[data-logo-configurator] .lc-position-actions button {
  min-width: 2.65rem;
  min-height: 2.65rem;
  padding: .35rem;
  border: 1px solid rgba(197, 192, 125, .38);
  border-radius: .6rem;
  background: rgba(58, 78, 69, .78);
  color: #fff;
  font: inherit;
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}

[data-logo-configurator] .lc-position-actions button:hover,
[data-logo-configurator] .lc-position-actions button:focus-visible {
  border-color: #e5da7d;
  background: #cfc46f;
  color: #10231d;
}

[data-logo-configurator] .lc-position-actions .lc-position-reset {
  grid-column: span 2;
  font-size: .7rem;
  line-height: 1.15;
}

[data-logo-configurator] .lc-position-tools > small,
[data-logo-configurator] .lc-dimension-help {
  display: block;
  color: rgba(247, 244, 234, .67);
  font-size: .66rem;
  line-height: 1.35;
}

[data-logo-configurator] .lc-fit-picker {
  display: grid;
  gap: .38rem;
  padding-top: .1rem;
  border-top: 1px solid rgba(197, 192, 125, .16);
}

[data-logo-configurator] .lc-fit-picker > span {
  color: rgba(247, 244, 234, .76);
  font-size: .68rem;
  font-weight: 850;
}

[data-logo-configurator] .lc-fit-picker > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .38rem;
}

[data-logo-configurator] .lc-fit-picker button {
  min-height: 2.75rem;
  padding: .45rem .55rem;
  border: 1px solid rgba(197, 192, 125, .32);
  border-radius: .55rem;
  background: rgba(250, 250, 248, .035);
  color: rgba(247, 244, 234, .82);
  font: inherit;
  font-size: .68rem;
  font-weight: 850;
  cursor: pointer;
}

[data-logo-configurator] .lc-fit-picker button[aria-pressed="true"] {
  border-color: #d4c976;
  background: #d4c976;
  color: #10231d;
}

[data-logo-configurator] .lc-position-actions button:disabled {
  opacity: .32;
  cursor: not-allowed;
}

[data-logo-configurator] .lc-position-tools.is-wrap-mode {
  border-color: rgba(212, 201, 118, .45);
  background: rgba(197, 192, 125, .07);
}

[data-logo-configurator] .lc-wrap-preview {
  grid-column: 1 / -1;
  display: grid;
  gap: .55rem;
  padding: .75rem;
  border: 1px solid rgba(212, 201, 118, .42);
  border-radius: .75rem;
  background: linear-gradient(145deg, rgba(197, 192, 125, .09), rgba(250, 250, 248, .035));
}

[data-logo-configurator] .lc-wrap-preview[hidden] { display: none; }
[data-logo-configurator] .lc-face-picker[hidden] { display: none; }
[data-logo-configurator] .lc-fit-picker[hidden] { display: none; }

[data-logo-configurator] .lc-wrap-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .7rem;
}

[data-logo-configurator] .lc-wrap-preview-head strong {
  color: #fff;
  font-size: .78rem;
}

[data-logo-configurator] .lc-wrap-preview-head span {
  padding: .25rem .48rem;
  border-radius: 999px;
  background: #d4c976;
  color: #10231d;
  font-size: .62rem;
  font-weight: 950;
  white-space: nowrap;
}

[data-logo-configurator] .lc-wrap-strip {
  position: relative;
  overflow: hidden;
  min-height: 5.6rem;
  border: 1px solid rgba(16, 35, 29, .28);
  border-radius: .55rem;
  background:
    linear-gradient(45deg, #eee 25%, transparent 25%) 0 0 / 1rem 1rem,
    linear-gradient(-45deg, #eee 25%, transparent 25%) 0 0 / 1rem 1rem,
    linear-gradient(45deg, transparent 75%, #eee 75%) 0 0 / 1rem 1rem,
    linear-gradient(-45deg, transparent 75%, #eee 75%) 0 0 / 1rem 1rem,
    #fafaf8;
}

[data-logo-configurator] .lc-wrap-strip canvas {
  display: block;
  width: 100%;
  height: 5.6rem;
  object-fit: contain;
}

[data-logo-configurator] .lc-wrap-front {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 32%;
  width: 36%;
  border-right: 1px dashed rgba(16, 35, 29, .56);
  border-left: 1px dashed rgba(16, 35, 29, .56);
  background: rgba(212, 201, 118, .1);
  pointer-events: none;
}

[data-logo-configurator] .lc-wrap-front::after {
  position: absolute;
  top: .3rem;
  left: 50%;
  padding: .17rem .38rem;
  transform: translateX(-50%);
  border-radius: 999px;
  background: rgba(16, 35, 29, .8);
  color: #fff;
  content: 'DEVANT';
  font-size: .52rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .08em;
}

[data-logo-configurator] .lc-wrap-seam {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  border-right: 3px solid rgba(182, 92, 74, .72);
  border-left: 3px solid rgba(182, 92, 74, .72);
  pointer-events: none;
}

[data-logo-configurator] .lc-wrap-preview p {
  margin: 0;
  color: rgba(247, 244, 234, .66);
  font-size: .66rem;
  line-height: 1.4;
}

[data-logo-configurator] .lc-dimension-help {
  grid-column: 1 / -1;
  margin-top: .15rem;
}

[data-logo-configurator] .lc-customer-garment {
  margin-top: .65rem;
  border: 1px solid rgba(197, 192, 125, .25);
  border-radius: .7rem;
  background: rgba(250, 250, 248, .035);
}

[data-logo-configurator] .lc-customer-garment summary {
  padding: .68rem .75rem;
  color: #f7f4ea;
  font-size: .75rem;
  font-weight: 850;
  cursor: pointer;
}

[data-logo-configurator] .lc-customer-garment-fields {
  display: grid;
  gap: .55rem;
  padding: 0 .75rem .75rem;
}

[data-logo-configurator] .lc-customer-garment-fields label {
  display: grid;
  gap: .25rem;
  color: rgba(247, 244, 234, .82);
  font-size: .68rem;
  font-weight: 750;
}

[data-logo-configurator] .lc-customer-garment-fields input,
[data-logo-configurator] .lc-customer-garment-fields textarea {
  width: 100%;
  border: 1px solid rgba(197, 192, 125, .3);
  border-radius: .55rem;
  background: rgba(4, 20, 16, .45);
  color: #fff;
  font: inherit;
  font-size: .72rem;
  line-height: 1.35;
  padding: .58rem .62rem;
}

[data-logo-configurator] .lc-customer-garment-fields small {
  color: rgba(247, 244, 234, .6);
  font-size: .64rem;
  line-height: 1.35;
}

[data-logo-configurator] .lc-extra-print-area {
  z-index: 5;
}

[data-logo-configurator] .lc-extra-print-area[hidden] {
  display: none;
}

[data-logo-configurator] .lc-extra-print-area .lc-layer-number {
  position: absolute;
  top: -.7rem;
  right: -.55rem;
  display: grid;
  width: 1.35rem;
  height: 1.35rem;
  place-items: center;
  border: 1px solid #10231d;
  border-radius: 50%;
  background: #d4c976;
  color: #10231d;
  font-size: .64rem;
  font-weight: 950;
  pointer-events: none;
  z-index: 2;
}

[data-logo-configurator] .lc-logo-toast {
  margin: 0;
  padding: .5rem .65rem;
  border: 1px solid rgba(197, 192, 125, .3);
  border-radius: .55rem;
  background: rgba(16, 35, 29, .72);
  color: #f7f4ea;
  font-size: .72rem;
  line-height: 1.35;
}

@media (max-width: 760px) {
  [data-logo-configurator] .lc-product-nav button { font-size: .72rem; }
  [data-logo-configurator] .lc-control-title { align-items: flex-start; }
  [data-logo-configurator] .lc-active-logo { margin-left: auto; }
}

@media (max-width: 420px) {
  [data-logo-configurator] .lc-product-nav { gap: .3rem; }
  [data-logo-configurator] .lc-product-nav button { padding-inline: .38rem; }
  [data-logo-configurator] .lc-logo-chip { max-width: 8rem; }
  [data-logo-configurator] .lc-clean-preview-toggle {
    top: .5rem;
    right: .5rem;
    min-height: 2.15rem;
    padding: .4rem .58rem;
    font-size: .64rem;
  }
  [data-logo-configurator] .lc-spin-hint { top: 3.05rem; }
}
