:root{--aps-store-ink:#14231b;--aps-store-accent:#ed5935;--aps-store-line:#d8d7cf;--aps-store-muted:#68736c}.aps-store-eyebrow{color:var(--aps-store-accent);font-size:11px;font-weight:900;letter-spacing:.16em;margin:0}.aps-product-config{border-block:1px solid var(--aps-store-line);display:grid;gap:18px;margin:24px 0;padding:24px 0}.aps-product-config h3,.aps-product-config h4{margin:0}.aps-product-config__gallery{display:grid;gap:9px;grid-template-columns:repeat(3,minmax(0,1fr));max-height:480px;overflow:auto}.aps-product-design{background:#fff;border:2px solid var(--aps-store-line);border-radius:10px;cursor:pointer;overflow:hidden;padding:0;text-align:left}.aps-product-design.is-selected{border-color:var(--aps-store-accent);box-shadow:0 0 0 1px var(--aps-store-accent)}.aps-product-design img{aspect-ratio:1;background:#f5f3ed;display:block;object-fit:contain;width:100%}.aps-product-design__copy{display:grid;gap:3px;padding:8px}.aps-product-design__copy strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aps-product-design__copy small{color:var(--aps-store-muted);font-size:9px}.aps-product-design__copy small.is-ready{color:#18724c}.aps-product-config__tabs,.aps-product-choice-row{display:flex;gap:7px;flex-wrap:wrap}.aps-product-config__tabs button,.aps-product-choice-row button{background:#fff;border:1px solid var(--aps-store-line);border-radius:999px;cursor:pointer;font-weight:750;padding:8px 12px}.aps-product-config__tabs button.is-active,.aps-product-choice-row button.is-selected{background:var(--aps-store-ink);color:#fff}.aps-product-config__controls{display:grid;gap:18px}.aps-product-config__selection{align-items:center;background:#f5f3ed;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:11px}.aps-product-config__selection a{font-size:12px}.aps-product-choice-group{display:grid;gap:8px}.aps-product-swatches{display:flex;flex-wrap:wrap;gap:10px}.aps-product-swatches button{background:var(--aps-color);border:2px solid #aaa;border-radius:50%;cursor:pointer;height:35px;width:35px}.aps-product-swatches button.is-selected{box-shadow:0 0 0 3px var(--aps-store-accent)}.aps-product-size{display:grid;gap:8px}.aps-product-size>p,.aps-product-size>small{color:var(--aps-store-muted);font-size:12px;margin:0}.aps-product-size__wrap{overflow:auto}.aps-product-size table{border-collapse:collapse;font-size:11px;min-width:680px;width:100%}.aps-product-size th,.aps-product-size td{border:1px solid var(--aps-store-line);padding:7px;text-align:center}.aps-product-size th:first-child{text-align:left}.aps-product-size input{max-width:80px;padding:6px}.aps-product-size__choice th{background:#f5f3ed}.aps-product-size__choice button{background:transparent;border:0;cursor:pointer;font-weight:900;padding:7px;width:100%}.aps-product-size__choice button.is-selected{background:var(--aps-store-ink);color:#fff}.aps-product-size td.is-secondary-nearest{background:#fde8df}.aps-product-size td.is-nearest{background:#fac7b4;box-shadow:inset 0 0 0 2px var(--aps-store-accent);font-weight:900}.aps-product-size td.is-selected-column:not(.is-nearest):not(.is-secondary-nearest){background:#edf1ee}.aps-product-config__status{background:#e7f4ed;border-left:4px solid #277452;padding:10px}.aps-product-config__status.is-error{background:#fae5df;border-color:var(--aps-store-accent)}.aps-product-config__empty{color:var(--aps-store-muted)}.aps-library__header{align-items:start;display:flex;gap:20px;justify-content:space-between;margin-bottom:26px}.aps-library__header h2{margin:.2em 0}.aps-library__grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.aps-library-card{border:1px solid var(--aps-store-line);border-radius:12px;overflow:hidden}.aps-library-card>img,.aps-library-card__empty{aspect-ratio:4/3;background:#f5f3ed;display:block;object-fit:contain;width:100%}.aps-library-card__empty{display:grid;place-items:center}.aps-library-card__body{display:grid;gap:10px;padding:16px}.aps-library-card__body h3,.aps-library-card__body p{margin:0}.aps-library-card__badges{display:flex;flex-wrap:wrap;gap:6px}.aps-library-card__badges span{background:#ecebe5;border-radius:999px;font-size:10px;font-weight:800;padding:5px 8px}.aps-library-card__badges .is-ready{background:#dff2e8;color:#176944}.aps-library-card__badges .is-pending{background:#fff0d8;color:#855400}.aps-library-card__meta{color:var(--aps-store-muted);font-size:11px}.aps-library-card__links,.aps-library-card__actions{display:flex;flex-wrap:wrap;gap:8px}.aps-library-card__links a{font-size:12px}.aps-library-card__actions button{background:var(--aps-store-ink);border:0;border-radius:999px;color:#fff;cursor:pointer;font-size:11px;font-weight:800;padding:8px 11px}.aps-library-card__actions button.is-muted{background:#777}.aps-library-card__actions .woocommerce-Input{display:none}.aps-public-order{margin:0 auto;max-width:1280px;padding:clamp(24px,5vw,72px)}.aps-public-order article{align-items:center;display:grid;gap:clamp(24px,5vw,72px);grid-template-columns:minmax(280px,1fr) 1fr}.aps-public-order article>img{background:#f5f3ed;border-radius:16px;max-height:700px;object-fit:contain;width:100%}.aps-public-order__products{display:grid;gap:10px;margin-top:24px}.aps-public-order__products .button{text-align:center}@media(max-width:700px){.aps-product-config__gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.aps-library__grid{grid-template-columns:1fr}.aps-library__header{display:grid}.aps-product-config{padding-inline:2px}.aps-public-order article{grid-template-columns:1fr}}

.aps-library__grid {
  grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
}

.aps-library-archive {
  border-top: 1px solid var(--aps-store-line);
  margin-top: 36px;
  padding-top: 18px;
}

.aps-library-archive > summary {
  cursor: pointer;
  font-size: 18px;
  font-weight: 800;
  padding: 12px 0;
}

.aps-library-archive > summary span {
  background: #ecebe5;
  border-radius: 999px;
  font-size: 11px;
  margin-left: 6px;
  padding: 4px 8px;
}

.aps-library-archive > p {
  color: var(--aps-store-muted);
  font-size: 12px;
}

.aps-product-preview {
  aspect-ratio: 1;
  background: #fff;
  border: 1px solid var(--aps-store-line);
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  touch-action: none;
}

.aps-product-preview__garment {
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.aps-product-preview__print-area,
.aps-product-preview__artwork {
  box-sizing: border-box;
  position: absolute;
}

.aps-product-preview__print-area {
  border: 2px dashed rgb(237 89 53 / 65%);
  pointer-events: none;
}

.aps-product-preview__artwork {
  cursor: grab;
  touch-action: none;
  user-select: none;
}

.aps-product-preview__artwork:active { cursor: grabbing; }
.aps-product-preview__artwork > img { display: block; height: 100%; object-fit: contain; pointer-events: none; width: 100%; }

.aps-product-resize-handle {
  background: var(--aps-store-accent);
  border: 2px solid #fff;
  border-radius: 50%;
  box-shadow: 0 1px 5px rgb(0 0 0 / 35%);
  height: 26px;
  position: absolute;
  touch-action: none;
  width: 26px;
  z-index: 3;
}

.aps-product-resize-handle--nw { cursor: nwse-resize; left: -13px; top: -13px; }
.aps-product-resize-handle--ne { cursor: nesw-resize; right: -13px; top: -13px; }
.aps-product-resize-handle--sw { bottom: -13px; cursor: nesw-resize; left: -13px; }
.aps-product-resize-handle--se { bottom: -13px; cursor: nwse-resize; right: -13px; }
.aps-product-preview__hint { color: var(--aps-store-muted); font-size: 12px; margin: -10px 0 0; text-align: center; }

.aps-product-preview-stage {
  display: grid;
  gap: 10px;
}

.aps-home-catalog {
  background: #f8f6ef;
  min-height: 70vh;
  padding: clamp(28px, 5vw, 76px) clamp(14px, 2.5vw, 44px);
}

.aps-home-catalog__hero {
  align-items: end;
  display: flex;
  gap: 32px;
  justify-content: space-between;
  margin-bottom: clamp(28px, 4vw, 54px);
}

.aps-home-catalog__hero h1 {
  font-size: clamp(36px, 6vw, 82px);
  line-height: .98;
  margin: .15em 0;
  max-width: 900px;
}

.aps-home-catalog__hero p:not(.aps-store-eyebrow) {
  color: var(--aps-store-muted);
  max-width: 720px;
}

.aps-home-catalog__hero .button {
  flex: 0 0 auto;
  text-align: center;
}

.aps-home-catalog__grid {
  display: grid;
  gap: clamp(10px, 1.5vw, 24px);
  grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr));
}

.aps-home-design {
  background: #fff;
  border: 1px solid var(--aps-store-line);
  border-radius: 14px;
  color: var(--aps-store-ink);
  overflow: hidden;
  text-decoration: none;
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.aps-home-design:hover {
  box-shadow: 0 16px 35px rgb(20 35 27 / 13%);
  transform: translateY(-4px);
}

.aps-home-design img {
  aspect-ratio: 1;
  background-image: linear-gradient(45deg,#eee 25%,transparent 25%),linear-gradient(-45deg,#eee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee 75%),linear-gradient(-45deg,transparent 75%,#eee 75%);
  background-position: 0 0,0 8px,8px -8px,-8px 0;
  background-size: 16px 16px;
  display: block;
  object-fit: contain;
  width: 100%;
}

.aps-home-design span {
  display: flex;
  gap: 8px;
  justify-content: space-between;
  padding: 13px 14px;
}

.aps-home-design small { color: var(--aps-store-muted); font-size: 10px; }
.aps-home-catalog__empty { border: 1px dashed var(--aps-store-line); padding: 60px 20px; text-align: center; }

.aps-unified-order {
  margin: 0 auto;
  max-width: 1560px;
  padding: clamp(28px, 5vw, 72px) clamp(14px, 2.5vw, 44px);
}

.aps-unified-order__header {
  margin-bottom: 28px;
  max-width: 880px;
}

.aps-unified-order__header h1 { font-size: clamp(36px, 5vw, 70px); margin: .15em 0; }
.aps-unified-order__header > p:not(.aps-store-eyebrow) { color: var(--aps-store-muted); }
.aps-unified-order__actions { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 18px; }
.aps-unified-order__actions a { font-size: 13px; font-weight: 750; }
.aps-product-config--unified { margin-top: 0; }

.aps-product-config--unified .aps-product-config__controls {
  align-items: start;
  grid-template-areas:
    "summary summary"
    "product position"
    "preview color"
    "preview size"
    "preview submit"
    "graphics graphics";
  grid-template-columns: minmax(320px, .85fr) minmax(580px, 1.15fr);
}

.aps-product-config--unified .aps-product-config__selection { grid-area: summary; }
.aps-product-config--unified .aps-product-choice-group--product { grid-area: product; }
.aps-product-config--unified .aps-product-choice-group--position { grid-area: position; }
.aps-product-config--unified .aps-product-choice-group--color { grid-area: color; }
.aps-product-config--unified .aps-product-preview-stage { grid-area: preview; }
.aps-product-config--unified .aps-product-size { grid-area: size; }
.aps-product-config--unified .aps-unified-order__submit { grid-area: submit; }
.aps-product-config--unified .aps-product-other-designs { grid-area: graphics; }

.aps-product-edit-link {
  font-size: 13px;
  font-weight: 800;
  justify-self: start;
  margin-top: 4px;
}

.aps-unified-order__submit {
  align-items: stretch;
  background: #f5f3ed;
  border-radius: 12px;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(110px, .28fr) minmax(240px, 1fr);
  margin-top: 0;
  padding: 18px;
}

.aps-unified-order__submit label { display: grid; font-size: 12px; font-weight: 750; gap: 5px; }
.aps-unified-order__submit input { box-sizing: border-box; font-size: 20px; font-weight: 800; max-width: none; min-height: 58px; padding: 12px 16px; width: 100%; }
.aps-unified-order__submit button { border-radius: 10px; font-size: 18px; font-weight: 850; min-height: 82px; min-width: 240px; }

.aps-product-other-designs {
  border-top: 1px solid var(--aps-store-line);
  display: grid;
  gap: 14px;
  margin-top: 18px;
  padding-top: 28px;
}

.aps-product-other-designs > h3,
.aps-product-other-designs > p { margin: 0; }
.aps-product-other-designs > p { color: var(--aps-store-muted); font-size: 12px; }
.aps-product-other-designs .aps-product-config__gallery { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); max-height: none; }
.aps-product-other-designs footer { border-top: 1px solid var(--aps-store-line); margin-top: 8px; padding-top: 18px; }
.aps-product-other-designs footer .button { display: block; text-align: center; width: 100%; }

@media (max-width: 1050px) {
  .aps-product-config--unified .aps-product-config__controls {
    grid-template-areas: "summary" "product" "position" "color" "effect" "preview" "size" "submit" "graphics";
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 700px) {
  .aps-home-catalog__hero { align-items: stretch; flex-direction: column; }
  .aps-home-catalog__hero .button { width: auto; }
  .aps-unified-order__submit { align-items: stretch; flex-direction: column; }
  .aps-unified-order__submit { grid-template-columns: 1fr; }
  .aps-unified-order__submit input, .aps-unified-order__submit button { box-sizing: border-box; max-width: none; width: 100%; }
}

/* Full-width product selection cards (printvarazs.hu #collections style) */
.aps-product-config--unified .aps-product-choice-group--product { grid-area: product; }
.aps-product-config--unified .aps-product-choice-group--effect { grid-area: effect; }
.aps-product-choice-grid {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 2px 2px 8px;
  width: 100%;
}
.aps-product-choice-grid .aps-product-card {
  flex: 1 1 0;
  min-width: 260px;
}
@media (min-width: 1051px) {
  .aps-product-config--unified .aps-product-config__controls {
    grid-template-areas:
      "summary summary"
      "product product"
      "preview position"
      "preview color"
      "preview effect"
      "preview size"
      "preview submit"
      "graphics graphics";
    grid-template-columns: minmax(320px, .85fr) minmax(580px, 1.15fr);
  }
}
.aps-product-card {
  align-items: center;
  background: #fff;
  border: 2px solid var(--aps-store-line);
  border-radius: 12px;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: 112px minmax(0, 1fr);
  min-height: 112px;
  overflow: hidden;
  padding: 0;
  text-align: left;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}
.aps-product-card:hover { box-shadow: 0 10px 22px rgb(20 35 27 / 10%); transform: translateY(-2px); }
.aps-product-card.is-selected { border-color: var(--aps-store-accent); box-shadow: 0 0 0 1px var(--aps-store-accent); }
.aps-product-card img { background: #f5f3ed; border-radius: 10px 0 0 10px; display: block; height: 112px; object-fit: contain; width: 112px; }
.aps-product-card__copy { display: grid; gap: 5px; padding: 12px 14px 12px 0; }
.aps-product-card__copy strong { font-size: 13px; line-height: 1.25; }
.aps-product-card__copy small { color: var(--aps-store-accent); font-size: 13px; font-weight: 850; }
@media (max-width: 620px) {
  .aps-product-choice-grid .aps-product-card { flex-basis: 82vw; min-width: 260px; }
  .aps-product-card { grid-template-columns: 92px minmax(0, 1fr); min-height: 92px; }
  .aps-product-card img { height: 92px; width: 92px; }
}
.aps-product-choice-group--effect .aps-product-choice-row button { font-size: 12px; padding: 7px 11px; }
.aps-product-choice-group--effect .aps-product-choice-row button.is-selected { background: var(--aps-store-accent); border-color: var(--aps-store-accent); color: #fff; }
.aps-product-size td[role="button"] { cursor: pointer; }
.aps-product-size td[role="button"]:hover { background: #f2f0e9; }
