.llsc{--llsc-gold:#d4af37;--llsc-green:#8aff00;color:#f4f1e8;background:linear-gradient(145deg,#151928,#080b12);border:1px solid #d4af3740;border-radius:18px;padding:24px;margin:24px 0;min-width:0}.llsc *{box-sizing:border-box}.llsc h2,.llsc h3{color:#e7c968;font-family:Georgia,serif}.llsc-kicker{color:var(--llsc-green);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.llsc .llsc-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:20px 0}.llsc label{display:block;font-size:12px;color:#d1d7e1}.llsc input,.llsc select{display:block;width:100%;min-height:44px;border:1px solid #ffffff30;border-radius:8px;padding:8px;background:#101522;color:#f4f1e8;font:inherit}.llsc .llsc-controls label{flex:1 1 140px;min-width:0}.llsc .button{min-height:44px;border:1px solid var(--llsc-gold);border-radius:999px;background:linear-gradient(#efd675,#d4af37);color:#090c12;padding:10px 16px;font-weight:800;cursor:pointer}.llsc .button:disabled{opacity:.55;cursor:default}.llsc :focus-visible{outline:3px solid var(--llsc-green);outline-offset:3px}.llsc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:16px}.llsc-card{display:flex;flex-direction:column;gap:8px;border:1px solid #ffffff20;border-radius:14px;padding:14px;background:#10141d;min-width:0}.llsc-card img{width:100%;height:auto;object-fit:contain;border-radius:8px;aspect-ratio:245/342}.llsc-art{display:grid;place-items:center;aspect-ratio:245/342;border:1px solid #d4af3720;border-radius:8px;color:#aab3c2;background:radial-gradient(circle,#202a3c,#10141d);font-family:Georgia,serif;font-size:24px}.llsc-card h3{font-size:20px;margin:4px 0;overflow-wrap:anywhere}.llsc-card p{font-size:12px;margin:0;color:#c3cbd8}.llsc-out{color:#aab3c2;margin-top:auto}.llsc-selection{position:sticky;bottom:12px;margin-top:24px;padding:18px;background:#10141df5;border:1px solid #d4af3770;border-radius:14px;z-index:3;box-shadow:0 10px 35px #0008}.llsc-selection ul{max-height:150px;overflow:auto;padding:0;list-style:none}.llsc-selection li{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:6px 0;font-size:12px}.llsc-selection h3{margin:0}.llsc-selection .button{flex-shrink:0}.llsc-message{overflow-wrap:anywhere}@media(max-width:600px){.llsc{padding:14px}.llsc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.llsc-card{padding:9px}.llsc-card h3{font-size:17px}.llsc-card .button{font-size:11px;padding:8px}.llsc-selection{bottom:6px;padding:12px}.llsc-selection li{align-items:start}.llsc-selection ul{max-height:100px}}@media(max-width:360px){.llsc-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.llsc *{scroll-behavior:auto}}
.llsc-logo{display:block;max-width:180px;max-height:100px;object-fit:contain;margin-bottom:12px}

.llsc-grid[aria-busy=true]{opacity:.5;pointer-events:none}.llsc-card label{display:flex;flex-direction:column;gap:5px}.llsc-card .button{margin-top:auto;width:100%}.llsc-selection li{flex-wrap:wrap}.llsc-selection li input{width:70px;min-width:60px;margin-left:auto}.llsc-out{display:inline-block;padding:7px 10px;border:1px solid #ffffff25;border-radius:8px;background:#ffffff08}.llsc-card:has(.llsc-out) .llsc-art{opacity:.65}.llsc-message{min-height:1.5em}.llsc .llsc-controls input[type=search]{min-width:0}@media(max-width:600px){.llsc-card select{font-size:12px;padding:7px 5px}.llsc-selection li .button{padding:8px 12px}}

/* Reserved card-shaped frames prevent layout shifts and never crop printed card artwork. */
.llsc-artwork{display:grid;place-items:center;aspect-ratio:5/7;width:100%;overflow:hidden;border-radius:9px;background:#080b12;border:1px solid #d4af3720}.llsc-card .llsc-artwork img{display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:8px}.llsc-artwork-fallback{align-content:center;gap:10px;background:radial-gradient(circle,#202a3c,#10141d);color:#aab3c2}.llsc-art-number{font:24px Georgia,serif}.llsc-art-caption{font-size:11px;color:#9ba7ba}.llsc-card:has(.llsc-out) .llsc-artwork-fallback{opacity:.65}

/* Dedicated catalogue composition, scoped to the Set Completion interface. */
.ll-set-completion-page .llsc-introduction{max-width:960px;margin-bottom:24px}
.ll-set-completion-page .llsc{width:100%;margin:0 0 160px}
.llsc-search-row{display:flex;gap:12px;align-items:end;margin-top:20px}
.llsc-search-row>label{flex:1;min-width:0}
.llsc #llsc-filter-toggle{display:none}
.llsc .llsc-controls[hidden]{display:none}
.llsc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.llsc-card{background:linear-gradient(150deg,#191426,#10141d);border-color:#8b65ac40;transition:border-color .15s}
.llsc-card:hover,.llsc-card:focus-within{border-color:#d4af3780}
.llsc-pagination{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:20px 0}
.llsc-pagination p{margin:0;text-align:center;font-size:13px}
.llsc-selection{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:1512px;display:flex;align-items:center;gap:18px;margin:0;padding:14px 18px;z-index:30}
.llsc-selection #llsc-total{margin:0;flex:1;font-size:14px;font-weight:700}
.llsc-selection summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#e7c968;font-weight:700;font-size:13px}
.llsc-selection summary:focus-visible{outline:3px solid var(--llsc-green)}
.llsc-selection-panel{position:absolute;bottom:calc(100% + 8px);left:0;width:100%;background:#10141dfc;border:1px solid #d4af3770;border-radius:14px;padding:18px;box-shadow:0 10px 35px #0008}
.llsc-selection ul{max-height:min(45vh,320px);margin-bottom:0}
.llsc-selection .llsc-message{position:absolute;bottom:100%;left:0;max-width:100%;background:#10141df5;margin:0;border-radius:8px;font-size:12px}
.llsc-selection .llsc-message:empty{display:none}
.llsc-selection:has(details[open]) .llsc-message{display:none}
@media(min-width:640px){.llsc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px){.llsc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1600px){.llsc-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:639px){
 .llsc #llsc-filter-toggle{display:block}
 .llsc{padding:12px}.llsc-grid{gap:10px}.llsc-card{padding:9px}.llsc-card h3{font-size:16px}.llsc-card select{font-size:12px;padding:7px 5px}
 .llsc-pagination{gap:6px}.llsc-pagination .button{padding:8px 12px;font-size:12px}.llsc-pagination p{font-size:11px}
 .llsc-selection{width:calc(100% - 16px);padding:10px;gap:8px;flex-wrap:wrap;bottom:max(6px,env(safe-area-inset-bottom))}
 .llsc-selection #llsc-total{font-size:12px}.llsc-selection summary{min-height:32px;font-size:12px}
 .llsc-selection #llsc-add{width:100%;min-height:44px;font-size:13px}.llsc-selection-panel{padding:12px}
}
@media(max-width:359px){.llsc-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.llsc-card{transition:none}}

html:has(.ll-set-completion-page){scroll-padding-bottom:140px}
.llsc button,.llsc select,.llsc input{scroll-margin-bottom:140px}
.llsc-selection[hidden]{display:none}
/* Keep the introduction compact so browsing and artwork remain the focus. */
.ll-set-completion-page .llsc-introduction .ll-product-stage__title{font-size:clamp(26px,3vw,44px);line-height:1.12;max-width:100%;margin:8px 0}
.ll-set-completion-page .llsc>header h2{font-size:clamp(22px,2vw,30px);line-height:1.2;margin:10px 0}
.llsc #llsc-summary{font-size:14px;line-height:1.5;margin:10px 0}
.llsc .llsc-image-notice{font-size:12px;line-height:1.5;font-weight:400;color:#c3bbd0;max-width:90ch;margin:10px 0}

/* Product identity: preserve the assigned image dimensions without cropping. */
.llsc-featured{display:flex;justify-content:center;margin:0 0 16px}
.llsc-featured .llsc-featured-image{display:block;width:auto;height:auto;max-width:min(100%,420px);max-height:240px;object-fit:contain;border-radius:0}
@media(max-width:600px){.llsc-featured .llsc-featured-image{max-height:180px;max-width:80%}}


/* LLC mobile selection layout fix */
@media (max-width: 639px) {
  .llsc-selection-panel {
    min-width: 0;
  }

  .llsc-selection #llsc-selected {
    display: grid;
    gap: 12px;
    padding: 0;
    margin: 12px 0 0;
    max-height: min(45vh, 320px);
    overflow-y: auto;
    overflow-x: hidden;
  }

  .llsc-selection #llsc-selected > li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 12px;
    border: 1px solid #ffffff20;
    border-radius: 10px;
    background: #151928;
    overflow-wrap: anywhere;
    white-space: normal;
  }

  .llsc-selection #llsc-selected > li .llsc-selected-description {
    grid-column: 1 / -1;
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
    line-height: 1.5;
  }

  .llsc-selection #llsc-selected > li input[type="number"] {
    grid-column: 1;
    width: 76px;
    min-width: 0;
    margin: 0;
    justify-self: start;
  }

  .llsc-selection #llsc-selected > li button {
    grid-column: 2;
    justify-self: end;
    margin: 0;
  }
}

/* LLC Set Completion storefront refinement — October 2026 */

/* Catalogue container */
.ll-set-completion-page .llsc {
    background:
        radial-gradient(ellipse at top right, rgba(212,175,55,.07), transparent 48%),
        linear-gradient(155deg, #151928 0%, #0b101a 100%);
    border: 1px solid rgba(212,175,55,.28);
    border-radius: 20px;
    padding: clamp(16px, 2.5vw, 32px);
}

/* Catalogue typography */
.llsc > header h2 {
    color: #f0d47a;
    font-weight: 700;
    letter-spacing: -.025em;
}

.llsc #llsc-summary {
    color: #bfc9d8;
    font-size: 14px;
}

/* Responsive catalogue */
.llsc-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(10px, 1.5vw, 20px);
    align-items: stretch;
}

/* Individual card */
.llsc-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
    padding: clamp(10px, 1.2vw, 16px);
    border: 1px solid rgba(212,175,55,.19);
    border-radius: 16px;
    background:
        linear-gradient(155deg, #1b2030 0%, #111723 100%);
    box-shadow: 0 6px 20px rgba(0,0,0,.13);
    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

@media (hover:hover) {
    .llsc-card:hover {
        border-color: rgba(212,175,55,.65);
        box-shadow: 0 12px 28px rgba(0,0,0,.25);
        transform: translateY(-3px);
    }
}

/* Artwork */
.llsc-card .llsc-artwork {
    width: 100%;
    aspect-ratio: 5 / 7;
    padding: 5px;
    overflow: hidden;
    border-radius: 11px;
    border: 1px solid rgba(212,175,55,.12);
    background:
        radial-gradient(circle at 50% 35%, #283247, #0c111c 80%);
}

.llsc-card .llsc-artwork img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 7px;
}

/* Card identity */
.llsc-card h3 {
    margin: 5px 0 0;
    color: #f3e0a0;
    font-family: inherit;
    font-size: clamp(15px, 1.15vw, 19px);
    font-weight: 750;
    line-height: 1.3;
    letter-spacing: -.015em;
}

.llsc-card > p:first-of-type {
    color: #aebacf;
    font-size: 12px;
    line-height: 1.45;
    min-height: 2.5em;
}

/* Price and availability */
.llsc-card > p:nth-of-type(2) {
    color: #a5f26d;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.5;
    margin: 2px 0;
}

/* Form controls */
.llsc-card label {
    display: flex;
    flex-direction: column;
    gap: 6px;
    color: #c8d1df;
    font-size: 12px;
    font-weight: 600;
}

.llsc-card select,
.llsc-card input[type="number"] {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 9px;
    background: #0d1320;
    color: #f4f1e8;
    padding: 8px 10px;
}

.llsc-card select:focus-visible,
.llsc-card input:focus-visible {
    border-color: #8aff00;
}

/* Selection button */
.llsc-card .button {
    width: 100%;
    min-height: 44px;
    margin-top: auto;
    border-radius: 10px;
    border: 1px solid #f0d47a;
    background: linear-gradient(135deg, #f0d47a, #c9a12e);
    color: #11141c;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.3;
    white-space: normal;
    transition: filter .2s ease;
}

@media (hover:hover) {
    .llsc-card .button:hover:not(:disabled) {
        filter: brightness(1.1);
    }
}

/* Sold-out cards */
.llsc-card .llsc-out {
    margin-top: auto;
    padding: 10px;
    border-radius: 9px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.04);
    color: #b6bfce;
    font-weight: 700;
    text-align: center;
}

/* Filter controls */
.llsc .llsc-controls {
    gap: 12px;
}

.llsc .llsc-controls label {
    color: #c8d1df;
    font-weight: 600;
}

.llsc .llsc-controls input,
.llsc .llsc-controls select {
    border-radius: 10px;
    border-color: rgba(212,175,55,.22);
    background: #101725;
}

/* Pagination */
.llsc-pagination {
    padding: 12px 0;
    border-top: 1px solid rgba(212,175,55,.14);
    border-bottom: 1px solid rgba(212,175,55,.14);
}

.llsc-pagination p {
    color: #cbd3df;
    font-weight: 600;
}

/* Floating selection basket */
.llsc-selection {
    background:
        linear-gradient(135deg, rgba(25,31,45,.98), rgba(9,14,23,.98));
    border: 1px solid rgba(212,175,55,.65);
    border-radius: 15px;
    box-shadow:
        0 16px 45px rgba(0,0,0,.45),
        0 0 0 1px rgba(212,175,55,.08);
    backdrop-filter: blur(12px);
}

.llsc-selection #llsc-total {
    color: #f3e0a0;
    font-weight: 800;
}

.llsc-selection-panel {
    background: #121925;
    border-color: rgba(212,175,55,.5);
    box-shadow: 0 18px 45px rgba(0,0,0,.5);
}

.llsc-selection #llsc-add {
    border-radius: 10px;
    background: linear-gradient(135deg, #f0d47a, #c9a12e);
    color: #11141c;
}

/* Tablet */
@media (min-width: 700px) {
    .llsc-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* Desktop */
@media (min-width: 1050px) {
    .llsc-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Wide desktop */
@media (min-width: 1450px) {
    .llsc-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 639px) {
    .ll-set-completion-page .llsc {
        padding: 12px;
        border-radius: 13px;
    }

    .llsc-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .llsc-card {
        padding: 9px;
        gap: 7px;
        border-radius: 12px;
    }

    .llsc-card h3 {
        font-size: 15px;
    }

    .llsc-card select,
    .llsc-card input[type="number"] {
        min-height: 40px;
        padding: 7px;
        font-size: 12px;
    }

    .llsc-card .button {
        font-size: 11px;
        padding: 9px 6px;
    }

    .llsc-selection {
        border-radius: 12px;
    }
}

/* Very narrow screens */
@media (max-width: 359px) {
    .llsc-grid {
        grid-template-columns: 1fr;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .llsc-card,
    .llsc-card .button {
        transition: none;
        transform: none;
    }
}


/* Set Completion dedicated page refinement — 2026-10-16 */

/* Compact branded introduction */
.ll-set-completion-page .llsc-introduction {
    max-width: none;
    margin: 0 0 18px;
    padding: 24px 30px;
    background: linear-gradient(125deg, #151c2b, #0b101a);
    border: 1px solid rgba(212,175,55,.35);
    border-radius: 18px;
}

.ll-set-completion-page .llsc-introduction .ll-product-stage__title {
    font-size: clamp(25px, 2.7vw, 38px);
    line-height: 1.15;
    margin: 8px 0 12px;
}

.ll-set-completion-page .llsc-introduction__lede {
    max-width: 700px;
    color: #cbd3df;
    font-size: 15px;
    line-height: 1.65;
    margin: 0;
}

/* Expandable product information */
.ll-set-completion-page .llsc-about {
    margin: 28px 0 45px;
}

.ll-set-completion-page .llsc-about__details {
    background: #111827;
    border: 1px solid rgba(212,175,55,.35);
    border-radius: 14px;
    overflow: hidden;
}

.ll-set-completion-page .llsc-about__details > summary {
    cursor: pointer;
    padding: 19px 24px;
    color: #e7c968;
    font-size: 17px;
    font-weight: 800;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ll-set-completion-page .llsc-about__details > summary::-webkit-details-marker {
    display: none;
}

.ll-set-completion-page .llsc-about__details[open] > summary span {
    transform: rotate(45deg);
}

.ll-set-completion-page .llsc-about__content {
    padding: 0 24px 24px;
    color: #d5dce7;
}

/* Smaller selection bar */
.ll-set-completion-page .llsc-selection {
    max-width: 900px;
    padding: 10px 14px;
    gap: 12px;
}

.ll-set-completion-page .llsc-selection-panel {
    width: min(100%, 680px);
    max-height: 55vh;
    overflow-y: auto;
}

.ll-set-completion-page .llsc-selection #llsc-total {
    font-size: 13px;
}

@media (max-width: 639px) {
    .ll-set-completion-page .llsc-introduction {
        padding: 18px;
    }

    .ll-set-completion-page .llsc-selection {
        width: calc(100% - 16px);
        padding: 10px;
    }

    .ll-set-completion-page .llsc-selection-panel {
        width: 100%;
        max-height: 45vh;
    }

    .ll-set-completion-page .llsc-about__content {
        padding: 0 16px 18px;
    }
}


/* Set Completion integrated logo header */

.ll-set-completion-page .llsc-introduction__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(140px, 260px);
    align-items: center;
    gap: 30px;
}

.ll-set-completion-page .llsc-introduction__copy {
    min-width: 0;
}

.ll-set-completion-page .llsc-introduction__layout .llsc-featured {
    margin: 0;
    justify-content: flex-end;
}

.ll-set-completion-page .llsc-introduction__layout .llsc-featured-image {
    max-width: 100%;
    max-height: 145px;
    object-fit: contain;
}

/* Hide only the duplicate image rendered immediately before the catalogue. */
.ll-set-completion-page .ll-product-stage-wrap > .llsc-featured {
    display: none;
}

@media (max-width: 639px) {
    .ll-set-completion-page .llsc-introduction__layout {
        grid-template-columns: minmax(0, 1fr) 100px;
        gap: 12px;
    }

    .ll-set-completion-page .llsc-introduction__layout .llsc-featured-image {
        max-height: 90px;
    }
}

/* Set Completion: readable expandable product information */
.ll-set-completion-page .llsc-about__content {
    padding: 28px clamp(20px, 4vw, 52px) 40px;
    color: #dce4ef;
    font-size: 16px;
    line-height: 1.8;
}

.ll-set-completion-page .llsc-about__content :is(
    .wp-block-group,
    .wp-block-columns,
    .wp-block-column,
    .ll-product-details,
    .ll-product-details__content
) {
    width: 100%;
    max-width: none;
    min-width: 0;
}

.ll-set-completion-page .llsc-about__content :is(h2, h3, h4, h5) {
    color: #e7c968;
    font-family: inherit;
    font-weight: 750;
    line-height: 1.3;
    margin: 30px 0 14px;
}

.ll-set-completion-page .llsc-about__content h2 {
    font-size: clamp(22px, 2.4vw, 30px);
}

.ll-set-completion-page .llsc-about__content h3 {
    font-size: 20px;
}

.ll-set-completion-page .llsc-about__content p {
    color: #dce4ef;
    font-size: 16px;
    line-height: 1.8;
    max-width: 85ch;
    margin: 0 0 18px;
}

.ll-set-completion-page .llsc-about__content :is(ul, ol) {
    color: #dce4ef;
    max-width: 85ch;
    padding-left: 24px;
    margin: 12px 0 24px;
}

.ll-set-completion-page .llsc-about__content li {
    margin-bottom: 9px;
    line-height: 1.7;
}

.ll-set-completion-page .llsc-about__content :is(strong, b) {
    color: #f3f5fa;
    font-weight: 700;
}

.ll-set-completion-page .llsc-about__content > :first-child {
    margin-top: 0;
}

.ll-set-completion-page .llsc-about__content a {
    color: #e7c968;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 639px) {
    .ll-set-completion-page .llsc-about__content {
        padding: 22px 18px 28px;
        font-size: 15px;
    }

    .ll-set-completion-page .llsc-about__content p {
        font-size: 15px;
    }
}
