/* Product purchase area and customer library. Scoped to these two pages. */
.lq-product-organized .lq-product-breadcrumbs { border-bottom:0; background:var(--surface); }
.lq-product-organized .lq-product-breadcrumbs .lq-shell { padding-block:1.1rem; font-size:.76rem; }
.lq-product-organized .lq-product-hero { padding-block:1.5rem 3rem; background:var(--surface); }
.lq-product-organized .lq-product-hero-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:3.5rem; align-items:start; }
.lq-product-organized .lq-product-gallery { position:sticky; top:105px; }
.lq-product-organized .lq-product-gallery-stage { height:510px; border-radius:1.25rem; border-color:var(--surface-border); background:var(--surface-muted); }
.lq-product-organized .lq-product-gallery-thumbs { gap:.5rem; padding:.5rem 0; margin-top:.5rem; }
.lq-product-organized .lq-product-gallery-thumbs button { border-radius:.65rem; border-color:var(--surface-border); background:var(--surface-muted); }
.lq-product-organized .lq-product-gallery.is-mobile-gallery .lq-product-gallery-thumbs button { height:4.5rem; width:3rem; }
.lq-product-organized .lq-product-summary h1 { margin-block:.6rem .9rem; font-size:clamp(1.6rem,2.2vw,2.2rem); line-height:1.3; letter-spacing:-.035em; color:var(--text); }
.lq-product-organized .lq-product-rating-row { margin-block:0 .8rem; font-size:.76rem; }
.lq-product-organized .lq-product-summary-description { margin-block:.75rem; font-size:.87rem; line-height:1.8; color:var(--text-muted); }
.lq-product-overview-facts { display:flex; gap:.4rem .7rem; flex-wrap:wrap; margin-block:1rem 1.4rem; }
.lq-product-overview-facts span { font-size:.7rem; font-weight:600; color:var(--text-muted); padding-inline-end:.7rem; border-inline-end:1px solid var(--surface-border); }
.lq-product-overview-facts span:last-child { border:0; }
.lq-product-organized .lq-release-sales { margin:0; padding:1.25rem; border:1px solid var(--surface-border); border-radius:1rem; background:var(--surface-muted); box-shadow:0 6px 24px color-mix(in srgb,var(--text) 3%,transparent); }
.lq-release-panel-title { display:flex; align-items:center; justify-content:space-between; gap:.75rem; flex-wrap:wrap; }
.lq-product-organized .lq-release-panel-title h2 { font-size:1.05rem; line-height:1.5; margin:0; letter-spacing:-.02em; }
.lq-product-organized .lq-release-card-heading { margin-bottom:1.1rem; }
.lq-product-organized .lq-release-card-heading p { margin-top:.4rem; font-size:.76rem; }
.lq-product-organized .lq-release-filters { margin:0 0 1.1rem; gap:.85rem; }
.lq-product-organized .lq-release-field { font-size:.72rem; gap:.45rem; }
.lq-product-organized .lq-release-field select { background:var(--surface); border-radius:.65rem; font-size:.78rem; padding:.7rem; min-height:44px; }
.lq-product-organized .lq-release-selection { padding:1rem 0 0; border:0; border-top:1px solid var(--surface-border); border-radius:0; background:none; }
.lq-product-organized .lq-release-selection h3 { font-size:1.3rem; line-height:1.3; margin-top:.15rem; }
.lq-product-organized .lq-release-heading-line .lq-release-help { font-size:.68rem; }
.lq-product-organized .lq-release-badge { font-size:.65rem; border-radius:.4rem; }
.lq-product-organized .lq-release-policy-note { font-size:.74rem; margin-block:.85rem; }
.lq-release-checkout { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-top:1rem; }
.lq-product-organized .lq-release-price { font-size:1.9rem; line-height:1.2; margin:0; letter-spacing:-.04em; }
.lq-product-organized .lq-release-price small { font-size:.65rem; letter-spacing:0; }
.lq-product-organized .lq-release-price > span { display:block; font-size:.65rem; color:var(--text-muted); letter-spacing:0; margin-top:.2rem; }
.lq-release-checkout .lq-button { min-height:44px; padding:.75rem 1rem; border-radius:.65rem; font-size:.8rem; gap:1rem; }
.lq-release-checkout form { margin:0; }
.lq-release-owned-label { display:flex; align-items:center; gap:.4rem; color:var(--primary); font-size:.8rem; font-weight:700; }
.lq-release-delivery-note { display:flex; align-items:center; gap:.5rem; margin-top:1rem; padding-top:.9rem; border-top:1px solid var(--surface-border); font-size:.66rem; color:var(--text-muted); line-height:1.6; }
.lq-release-delivery-note svg { width:1rem; height:1rem; flex:none; fill:none; stroke:var(--primary); stroke-width:1.6; }
.lq-product-preview-link { display:flex; width:max-content; align-items:center; gap:.6rem; color:var(--primary); font-size:.8rem; font-weight:700; margin:1rem auto 0; }
.lq-product-organized .lq-product-details-section { padding-top:2.5rem; }
.lq-product-organized .lq-product-aside { top:105px; }
.lq-product-organized .lq-product-aside > section { border-radius:1rem; }
.lq-product-organized .lq-product-tabs { border-bottom:1px solid var(--surface-border); }
.lq-product-organized .lq-product-tabs button { font-size:.85rem; }
/* Library: one card per owned product; downloads live here. */
.lq-library-page { padding:0; color:var(--text); }
.lq-library-page > div { max-width:none; padding:0; }
.lq-library-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--surface-border); border-radius:1rem; background:var(--surface); margin-bottom:1.75rem; }
.lq-library-stats > div { padding:1rem 1.25rem; border-inline-end:1px solid var(--surface-border); }
.lq-library-stats > div:last-child { border:0; }
.lq-library-stats span { display:block; font-size:.7rem; color:var(--text-muted); }
.lq-library-stats strong { display:block; font-size:1.35rem; font-weight:750; letter-spacing:-.03em; margin-top:.25rem; }
.lq-library-toolbar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; margin-bottom:1.25rem; }
.lq-library-toolbar h2 { font-size:1.15rem; font-weight:750; letter-spacing:-.025em; }
.lq-library-toolbar p { font-size:.76rem; color:var(--text-muted); margin-top:.35rem; }
.lq-library-search { display:flex; align-items:center; gap:.6rem; padding:.7rem .9rem; border:1px solid var(--surface-border); border-radius:.75rem; background:var(--surface); }
.lq-library-search svg { width:1rem; height:1rem; flex:none; fill:none; stroke:var(--text-muted); stroke-width:1.6; }
.lq-library-search input { width:12rem; min-width:0; border:0; padding:0; background:none; color:var(--text); font-size:.75rem; outline:none; }
.lq-library-search:focus-within { border-color:var(--primary); box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 14%,transparent); }
.lq-library-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; align-items:start; }
.lq-library-product { min-width:0; border:1px solid var(--surface-border); border-radius:1.1rem; padding:1.25rem; background:var(--surface); scroll-margin-top:110px; box-shadow:0 3px 12px color-mix(in srgb,var(--text) 2%,transparent); }
.lq-library-product-header { display:flex; align-items:center; gap:.9rem; margin-bottom:1rem; }
.lq-library-product-header > img,.lq-library-product-icon { width:3.25rem; height:3.25rem; border:1px solid var(--surface-border); border-radius:.8rem; object-fit:cover; flex:none; }
.lq-library-product-icon { display:grid; place-items:center; background:color-mix(in srgb,var(--primary) 10%,transparent); color:var(--primary); font-size:1.25rem; font-weight:800; }
.lq-library-product-header > div:last-child { min-width:0; }
.lq-library-product-header p { margin-bottom:.25rem; color:var(--text-muted); font-size:.6rem; font-weight:600; text-transform:uppercase; letter-spacing:.06em; }
.lq-library-product-header h3 { font-size:.88rem; font-weight:750; line-height:1.5; color:var(--text); }
.lq-library-product-header a:hover { color:var(--primary); }
.lq-library-access-note { display:flex; align-items:center; gap:.4rem; font-size:.68rem; color:var(--primary); margin-bottom:1rem; }
.lq-library-version-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.lq-library-version-controls.is-single { grid-template-columns:1fr; }
.lq-library-version-controls .lq-release-field { font-size:.66rem; gap:.4rem; }
.lq-library-version-controls select { background:var(--surface-muted); border-radius:.6rem; min-height:43px; padding:.65rem .7rem; font-size:.75rem; }
.lq-library-download { margin-top:1rem; padding-top:1rem; border-top:1px solid var(--surface-border); }
.lq-library-release-meta { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.5rem; }
.lq-library-release-meta > strong { font-size:1.08rem; font-weight:750; }
.lq-library-release-meta > strong > span { color:var(--text-muted); font-size:.66rem; font-weight:500; margin-inline-end:.2rem; }
.lq-library-release-meta .lq-release-badge { font-size:.63rem; border-radius:.45rem; }
.lq-library-release-date { font-size:.63rem; color:var(--text-muted); margin-top:.25rem; }
.lq-library-files { display:grid; gap:.5rem; margin-top:.9rem; }
.lq-library-file { display:flex; align-items:center; gap:.7rem; min-width:0; border:1px solid color-mix(in srgb,var(--primary) 24%,var(--surface-border)); border-radius:.75rem; padding:.85rem; background:color-mix(in srgb,var(--primary) 6%,var(--surface)); color:var(--text); transition:background .15s,border-color .15s; }
.lq-library-file:hover { border-color:var(--primary); background:color-mix(in srgb,var(--primary) 12%,var(--surface)); }
.lq-library-file > svg { width:1.15rem; height:1.15rem; flex:none; fill:none; stroke:var(--primary); stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; }
.lq-library-file > span:nth-child(2) { min-width:0; flex:1; }
.lq-library-file strong { display:block; color:var(--primary); font-size:.76rem; font-weight:700; }
.lq-library-file small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.62rem; color:var(--text-muted); margin-top:.2rem; direction:ltr; text-align:start; }
.lq-library-file-size { flex:none; font-size:.6rem; color:var(--text-muted); white-space:nowrap; }
.lq-library-changelog { max-height:15rem; overflow:auto; margin-top:.75rem; font-size:.75rem; line-height:1.8; color:var(--text-muted); overflow-wrap:anywhere; }
.lq-library-changelog > :is(ul,ol) { padding-inline-start:1.25rem; }
.lq-library-product .lq-release-changelog { font-size:.7rem; }
.lq-library-product-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.6rem; margin-top:1.1rem; padding-top:.9rem; border-top:1px solid var(--surface-border); }
.lq-library-product-footer a { display:inline-flex; align-items:center; gap:.5rem; font-size:.67rem; font-weight:650; color:var(--text-muted); }
.lq-library-product-footer a:hover { color:var(--primary); }
.lq-library-access-warning { color:var(--text-muted); font-size:.8rem; line-height:1.75; background:var(--surface-muted); border-radius:.7rem; padding:1rem; }
.lq-library-empty-search { padding:2rem 1rem; color:var(--text-muted); text-align:center; font-size:.85rem; }
.lq-library-import { margin-bottom:1.25rem; border:1px solid var(--surface-border); border-radius:.8rem; background:var(--surface); }
.lq-library-import > summary { cursor:pointer; padding:.85rem 1rem; font-size:.78rem; font-weight:650; color:var(--text); }
.lq-library-import > summary > span { font-size:.7rem; color:var(--text-muted); font-weight:400; margin-inline-start:.75rem; }
.lq-library-import > div { margin-bottom:0; border:0; border-top:1px solid var(--surface-border); border-radius:0 0 .8rem .8rem; }
.lq-library-records { margin-top:1.75rem; border:1px solid var(--surface-border); border-radius:1rem; background:var(--surface); scroll-margin-top:110px; }
.lq-library-records > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; cursor:pointer; padding:1.1rem 1.25rem; list-style:none; }
.lq-library-records > summary::-webkit-details-marker { display:none; }
.lq-library-records > summary h2 { font-size:.9rem; font-weight:700; }
.lq-library-records > summary p { margin-top:.3rem; font-size:.7rem; color:var(--text-muted); }
.lq-library-expand { color:var(--primary); font-size:1.5rem; font-weight:400; }
.lq-library-records[open] .lq-library-expand { transform:rotate(45deg); }
.lq-library-records-content { padding:1.25rem; border-top:1px solid var(--surface-border); }
.lq-purchase-detail { scroll-margin-top:110px; }
@media(max-width:1100px) { .lq-product-organized .lq-product-hero-layout { gap:2rem; } .lq-library-grid { grid-template-columns:1fr; } }
@media(max-width:900px) { .lq-product-organized .lq-product-hero-layout { grid-template-columns:1fr; gap:1.5rem; } .lq-product-organized .lq-product-gallery { position:static; } .lq-product-organized .lq-product-gallery-stage { height:360px; } .lq-product-organized .lq-product-summary h1 { font-size:1.75rem; } }
@media(max-width:640px) { .lq-product-organized .lq-product-hero { padding-top:.5rem; } .lq-product-organized .lq-product-gallery-stage { height:300px; } .lq-product-organized .lq-product-gallery.is-mobile-gallery .lq-product-gallery-thumbs button { height:3.5rem; width:2.5rem; } .lq-product-organized .lq-product-summary h1 { font-size:1.5rem; } .lq-product-organized .lq-release-sales { padding:1rem; } .lq-product-organized .lq-release-grid { grid-template-columns:1fr; } .lq-release-checkout { gap:.75rem; } .lq-release-checkout > :is(a,form) { flex:1; } .lq-release-checkout .lq-button { width:100%; } .lq-release-owned-label { width:100%; } .lq-product-organized .lq-product-content-layout { gap:1.5rem; } .lq-library-stats { grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:1.25rem; } .lq-library-stats > div { padding:.8rem 1rem; } .lq-library-stats > div:nth-child(2) { border-inline-end:0; } .lq-library-stats > div:nth-child(-n+2) { border-bottom:1px solid var(--surface-border); } .lq-library-stats strong { font-size:1.15rem; } .lq-library-search { width:100%; } .lq-library-search input { width:100%; } .lq-library-product { padding:1rem; } .lq-library-product-header h3 { font-size:.82rem; } .lq-library-version-controls { grid-template-columns:1fr; } .lq-library-records-content { padding:.65rem; } .lq-library-import > summary > span { display:block; margin:.3rem 0 0; } }

[dir='rtl'] .lq-release-checkout .lq-button > span[aria-hidden] { transform:scaleX(-1); }

.lq-library-license-select{margin:16px 0}.lq-library-support{padding:16px;margin:16px 0;border:1px solid var(--surface-border);border-radius:12px;background:var(--surface-muted)}.lq-library-support p{font-size:13px;line-height:1.6;margin:7px 0;color:var(--text-muted)}.lq-library-support.is-expired{border-color:#d59a38}.lq-library-support .lq-button{margin-top:8px;font-size:13px;min-height:40px}.lq-release-library-link{font-size:13px;text-align:center;display:block;padding:8px;color:var(--primary)}.lq-library-license-select select{width:100%;min-width:0}.lq-library-support form{margin:0}
