/* Character Goods | standalone safe WordPress module | 2026-10-22 */
body.kt-goods-catalog-page{background:#0c1219;color:#fff}
body.kt-goods-catalog-page .kt-page-title--character{padding-bottom:56px}
.kt-goods-title__lead{max-width:760px!important;margin-top:26px!important;font-size:18px!important;line-height:2.05!important;color:rgba(255,255,255,.7)!important}
.kt-goods-title__lead p{margin:0}
.kt-goods-title__lead--empty{color:#9bb0c5!important;font-size:15px!important}
.kt-goods-hero{padding:16px 0 104px;border-bottom:1px solid var(--kt-line)}
.kt-goods-hero__ring{width:min(100%,760px)}
.kt-goods-hero__caption{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;margin:-28px auto 0;text-align:center;position:relative;z-index:3}
.kt-goods-hero__caption .kt-character-section-label{justify-content:center}
.kt-goods-hero__caption p{margin:0;color:var(--kt-text-62);font-size:16px;line-height:1.85}
.kt-goods-section{padding:90px 0 96px;border-bottom:1px solid var(--kt-line)}
.kt-goods-section__heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:34px}
.kt-goods-section__heading h2{margin:16px 0 0;font-weight:900;font-size:clamp(27px,3vw,40px);line-height:1.35;letter-spacing:.06em;color:#fff}
.kt-goods-section__note{font-size:12px;color:var(--kt-text-55);letter-spacing:.02em;white-space:nowrap}
.kt-goods-section__count{font-family:var(--kt-font-en);font-size:13px;letter-spacing:.17em;font-weight:600;color:var(--kt-accent-text)}
.kt-goods-carousel__controls{display:flex;justify-content:flex-end;gap:8px;margin:0 0 18px}
.kt-goods-carousel__button,.kt-goods-carousel__pause{appearance:none;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.02);color:#fff;font:inherit;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.kt-goods-carousel__button{width:43px;height:43px;display:grid;place-items:center;font-size:20px}
.kt-goods-carousel__pause{min-height:43px;padding:0 17px;font-size:12px;letter-spacing:.07em}
.kt-goods-carousel__button:not(:disabled):hover,.kt-goods-carousel__pause:hover{background:#1f6fd6;border-color:#4c9aff}
.kt-goods-carousel__button:disabled{opacity:.3;cursor:default}
.kt-goods-carousel__track{display:flex;gap:17px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--kt-accent-base) transparent;padding:0 0 16px;overscroll-behavior-inline:contain}
.kt-goods-carousel__track::-webkit-scrollbar{height:4px}
.kt-goods-carousel__track::-webkit-scrollbar-thumb{background:#2f80ed}
.kt-goods-carousel__item{flex:0 0 clamp(210px,25%,304px);scroll-snap-align:start;display:flex;flex-direction:column;min-width:0;padding:0 0 18px;border:1px solid var(--kt-line);background:var(--kt-ink-800);transition:border-color .23s,transform .23s}
.kt-goods-carousel__item:hover{border-color:var(--kt-accent-text);transform:translateY(-2px)}
.kt-goods-carousel__visual{height:218px;display:flex;align-items:center;justify-content:center;background:#f5f7fa}
.kt-goods-carousel__visual img{width:100%;height:100%!important;object-fit:contain!important;object-position:center;padding:13px}
.kt-goods-carousel__item strong{display:block;margin:17px 16px 8px;font-size:18px;line-height:1.65;font-weight:700;letter-spacing:.03em;overflow-wrap:anywhere}
.kt-goods-carousel__index{display:block;margin:auto 16px 0;font-family:var(--kt-font-en);font-size:10px;color:var(--kt-accent-text);letter-spacing:.13em}
.kt-goods-carousel__index span{margin-left:6px}
.kt-goods-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.kt-goods-card{display:flex;flex-direction:column;min-width:0;scroll-margin-top:115px;background:#131c26;border:1px solid rgba(255,255,255,.13);transition:border-color .22s,transform .22s}
.kt-goods-card:hover{border-color:rgba(76,154,255,.66);transform:translateY(-2px)}
.kt-goods-card:target{border-color:#4c9aff;box-shadow:0 0 0 2px rgba(47,128,237,.2)}
.kt-goods-card__visual{margin:0;display:grid;place-items:center;background:#f5f7fa;min-height:250px;aspect-ratio:1.14/1}
.kt-goods-card__visual img{width:100%;height:100%!important;max-height:330px;object-fit:contain!important;object-position:center;padding:18px}
.kt-goods-image-placeholder{font-size:13px;color:#6a7c8d;letter-spacing:.09em}
.kt-goods-card__body{padding:25px 26px 28px;display:flex;flex-direction:column;gap:0;flex:1}
.kt-goods-card__number{font-family:var(--kt-font-en);font-size:11px;font-weight:600;letter-spacing:.22em;color:var(--kt-accent-text)}
.kt-goods-card__body h3{font-size:21px;line-height:1.5;letter-spacing:.04em;font-weight:900;margin:10px 0 0;overflow-wrap:anywhere}
.kt-goods-card__price{font-size:20px;line-height:1.55;letter-spacing:.015em;font-weight:800;color:#4c9aff;margin:18px 0 0}
.kt-goods-card__price--pending{font-size:16px;color:rgba(255,255,255,.52);font-weight:500}
.kt-goods-card__description{padding-top:19px;margin-top:19px;border-top:1px solid rgba(255,255,255,.10);color:var(--kt-text-72);font-size:16px;line-height:1.9;overflow-wrap:anywhere}
.kt-goods-card__description>:first-child{margin-top:0}
.kt-goods-card__description>:last-child{margin-bottom:0}
.kt-goods-card__description ul{padding-left:1.25em}
.kt-goods-card__buy{margin-top:auto!important;display:flex;justify-content:space-between;align-items:center;gap:10px;background:#1f6fd6;color:#fff!important;padding:12px 18px;font-size:13px;font-weight:700;letter-spacing:.06em;transition:background .2s}
.kt-goods-card__buy:hover{background:#2f80ed}
.kt-goods-card__buy span{font-size:18px}
.kt-goods-empty{padding:58px 24px;background:rgba(255,255,255,.04);border:1px solid var(--kt-line);text-align:center;color:var(--kt-text-62);font-size:16px;line-height:1.9}
.kt-goods-products__empty{font-size:16px;color:var(--kt-text-62)}
.kt-goods-back{padding:56px 0 110px;text-align:center}
.kt-goods-back a{display:inline-flex;padding:13px 22px;border:1px solid var(--kt-line-strong);font-size:13px;letter-spacing:.04em;transition:background .2s}
.kt-goods-back a:hover{background:rgba(47,128,237,.16);border-color:var(--kt-accent-text)}
@media(max-width:1023px){
 .kt-goods-hero{padding-bottom:80px}.kt-goods-section{padding:74px 0 80px}
 .kt-goods-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
 .kt-goods-carousel__item{flex-basis:clamp(210px,36%,290px)}
}
@media(max-width:767px){
 body.kt-goods-catalog-page .kt-page-title--character{padding-bottom:28px}
 .kt-goods-title__lead{font-size:16px!important;line-height:1.9!important;margin-top:20px!important}
 .kt-goods-hero{padding:4px 0 60px}
 .kt-goods-hero__ring{width:calc(100% + 20px);margin-left:-10px}
 .kt-goods-hero__caption{margin:0 auto;text-align:center}
 .kt-goods-hero__caption p{font-size:12px;line-height:1.7}
 .kt-goods-section{padding:58px 0 64px}
 .kt-goods-section__heading{display:block;margin-bottom:24px}
 .kt-goods-section__heading h2{margin-top:12px;font-size:27px}
 .kt-goods-section__note{margin:14px 0 0;white-space:normal;font-size:11px}
 .kt-goods-section__count{margin-top:14px}
 .kt-goods-carousel__controls{margin-bottom:12px}
 .kt-goods-carousel__button{width:44px;height:44px}
 .kt-goods-carousel__pause{min-height:44px;font-size:11px;padding:0 12px}
 .kt-goods-carousel__track{gap:10px}
 .kt-goods-carousel__item{flex:0 0 74vw;max-width:280px}
 .kt-goods-carousel__visual{height:210px}
 .kt-goods-carousel__item strong{font-size:18px}
 .kt-goods-grid{grid-template-columns:1fr;gap:16px}
 .kt-goods-card__visual{min-height:260px}
 .kt-goods-card__body{padding:22px}
 .kt-goods-card__body h3{font-size:20px}
 .kt-goods-card__price{font-size:19px}
 .kt-goods-card__description{font-size:16px}
 .kt-goods-back{padding:42px 0 88px}
}
@media(prefers-reduced-motion:reduce){
 .kt-goods-card,.kt-goods-carousel__item,.kt-goods-carousel__button,.kt-goods-carousel__pause{transition:none!important}
 .kt-goods-carousel__track{scroll-behavior:auto!important}
}


/* WordPress integration: same shared site header/footer; preserve approved content width. */
body.kt-goods-catalog-page .kt-goods-hero__ring {margin-inline:auto;}
body.kt-goods-catalog-page .kt-goods-card__buy {margin-top:24px!important;}
body.kt-goods-catalog-page .kt-goods-card__body {min-width:0;}
body.kt-goods-catalog-page .kt-goods-back a:focus-visible,
body.kt-goods-catalog-page .kt-goods-card__buy:focus-visible {outline:2px solid #83bbff;outline-offset:3px;}
body.kt-goods-catalog-page .kt-goods-empty p {margin:0;}

/* 2026-10-30: full-card storefront link only where URL is supplied. */
.kt-goods-card { position: relative; }
.kt-goods-card:not(.is-linked):hover { border-color: rgba(255,255,255,.13); transform: none; }
.kt-goods-card.is-linked { cursor: pointer; }
.kt-goods-card.is-linked:focus-within { outline: 2px solid #83bbff; outline-offset: 3px; border-color: #83bbff; }
.kt-goods-card__description--pending { color: rgba(255,255,255,.52); }
.kt-goods-card__external-note {
  display: inline-block; margin-top: 20px; color: #4c9aff;
  font-size: 13px; line-height: 1.7; font-weight: 700; letter-spacing: .05em;
}
.kt-goods-card__hitarea { position: absolute; inset: 0; z-index: 2; cursor: pointer; }
.kt-goods-card__hitarea:focus-visible { outline: none; }
@media (prefers-reduced-motion: reduce) {
  .kt-goods-card.is-linked { transition: none; }
}

/* When a product hides an unset price, avoid an orphaned divider above the description. */
.kt-goods-card__body h3 + .kt-goods-card__description {
  margin-top: 18px; padding-top: 0; border-top: 0;
}
