/* FramingHub 3.x — cart / order / configurator host styles. Kept small on purpose. */
.framinghub-spec {
  margin: 0.4rem 0 0;
  font-size: 0.85em;
  line-height: 1.4;
  color: inherit;
  /* Sits in the product-information column, where PrestaShop prints a native
     personalisation: take the full width so values never wrap word by word. */
  width: 100%;
  max-width: 100%;
  flex: 1 1 100%;
  /* Flex/grid product columns must never squeeze it into a narrow strip. */
  clear: both;
  order: 99;
}

/* Current format: a simple bulleted list, one "Label: value" per line. */
.framinghub-spec ul,
.framinghub-spec-list {
  margin: 0;
  padding: 0 0 0 1.1em;
  list-style: disc;
}
.framinghub-spec li {
  margin: 0 0 0.15rem 0;
  padding: 0;
}
.framinghub-spec li strong { font-weight: 600; }
/* Legacy records still hold table markup — keep them readable. */
.framinghub-spec table,
.framinghub-spec-table {
  border-collapse: collapse;
  width: auto;
  margin: 0;
}
.framinghub-spec td,
.framinghub-spec th {
  padding: 0.1rem 0.6rem 0.1rem 0;
  border: 0;
  vertical-align: top;
  text-align: left;
  font-weight: 400;
}
.framinghub-spec th,
.framinghub-spec td:first-child {
  opacity: 0.7;
  white-space: nowrap;
}
.framinghub-modify {
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
  margin-top: 0.35rem;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.framinghub-modify svg { width: 1em; height: 1em; flex: none; }
.framinghub-modify:hover { text-decoration: none; }

/* Configurator host (theme layout) */
.framinghub-host {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0;
}
.framinghub-host iframe {
  display: block;
  width: 100%;
  min-height: 80vh;
  height: calc(100vh - 160px);
  border: 0;
  background: #fff;
}
.framinghub-host-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.9rem;
}
.framinghub-host-bar a { text-decoration: underline; }

/* Clean (distraction-free) page */
html.framinghub-clean, html.framinghub-clean body {
  margin: 0;
  padding: 0;
  height: 100%;
  background: #fff;
  overflow: hidden;
}
html.framinghub-clean .framinghub-host { max-width: none; height: 100%; }
html.framinghub-clean .framinghub-host iframe { height: 100vh; min-height: 100vh; }

/* Back office order line badge */
.framinghub-print-link {
  display: inline-block;
  margin-left: 0.5rem;
  padding: 0.1rem 0.5rem;
  border-radius: 4px;
  background: #1f7a4d;
  color: #fff !important;
  font-size: 0.75rem;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.framinghub-print-link:hover { background: #17603b; }
