#px-seasons {
  --px-bg:#0c1013; --px-panel:#151a20; --px-line:#30363e; --px-text:#f0f2ef;
  --px-muted:#a1aaa8; --px-gold:#d7decf; --px-green:#abd8b8; --px-red:#ef9c9c;
  display:block; width:100%; min-width:0; max-width:1440px; margin:24px auto 64px; padding:0 16px;
  color:var(--px-text); font-family:Arial,Helvetica,sans-serif; font-size:15px; line-height:1.55; isolation:isolate;
}
#px-seasons *,#px-seasons *::before,#px-seasons *::after { box-sizing:border-box; }
/* The supplied site applies fixed height, max-content width and flex layout to every button. */
#px-seasons button { all:unset; box-sizing:border-box; display:inline-block; width:auto; height:auto; min-width:0; cursor:pointer; font:inherit; color:inherit; text-align:center; line-height:1.4; touch-action:manipulation; }
#px-seasons input,#px-seasons select,#px-seasons textarea { float:none; margin:0; font:inherit; line-height:1.4; }
#px-seasons img { display:block; width:auto; height:auto; max-width:100%; margin:0; padding:0; border:0; float:none; }
#px-seasons [hidden] { display:none !important; }
#px-seasons #px-content { display:block; width:100%; margin:0; padding:0; min-width:0; }
#px-seasons h1,#px-seasons h2,#px-seasons h3,#px-seasons p { margin:0; color:inherit; }
#px-seasons h1 { font-size:20px; line-height:1.2; font-weight:700; margin-top:5px; }
#px-seasons h2 { font-size:24px; line-height:1.25; font-weight:700; }
#px-seasons h3 { font-size:18px; line-height:1.35; font-weight:700; }
#px-seasons button:disabled { opacity:.5; cursor:not-allowed; }
#px-seasons button:focus-visible,#px-seasons a:focus-visible,#px-seasons input:focus-visible,#px-seasons textarea:focus-visible,#px-seasons select:focus-visible,#px-seasons [tabindex]:focus-visible { outline:2px solid #cfdfbd; outline-offset:4px; }
#px-seasons a { color:var(--px-gold); text-decoration:none; }
#px-seasons .px-topbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:22px; flex-wrap:wrap; }
#px-seasons .px-eyebrow { color:#8eaa88; font-size:10px; letter-spacing:.18em; font-weight:700; }
#px-seasons .px-tabs,#px-seasons .px-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
#px-seasons .px-tabs { padding:4px; border:1px solid var(--px-line); border-radius:5px; background:#101417; }
#px-seasons .px-tab { border:0; background:transparent; color:var(--px-muted); padding:8px 14px; font-size:12px; }
#px-seasons .px-tab.is-active { background:#232c26; color:#d5e1cc; }
#px-seasons .px-primary,#px-seasons .px-secondary,#px-seasons .px-danger { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:43px; padding:11px 18px; border-radius:4px; border:1px solid transparent; font-size:13px; font-weight:700; line-height:1.35; width:auto; height:auto; }
#px-seasons .px-primary { background:#d6e0c8; color:#142015; border-color:#d6e0c8; }
#px-seasons .px-primary:hover:not(:disabled) { background:#e9efdf; color:#142015; }
#px-seasons .px-secondary { background:#20262c; border-color:#3a4248; color:var(--px-text); }
#px-seasons .px-secondary:hover:not(:disabled) { border-color:#b2c5a8; background:#28312c; }
#px-seasons .px-danger { color:var(--px-red); border-color:#683d43; background:#302125; }
#px-seasons .px-small { min-height:34px; padding:6px 11px; font-size:12px; }
#px-seasons .px-muted { color:var(--px-muted); font-size:13px; }
#px-seasons .px-preline { white-space:pre-line; overflow-wrap:anywhere; }
#px-seasons .px-message,#px-seasons .px-upgrade-panel { border:1px solid #496b54; background:#18281f; color:#c7e8d2; padding:12px 16px; border-radius:5px; margin-bottom:18px; }
#px-seasons .px-upgrade-panel { display:flex; align-items:center; gap:18px; justify-content:space-between; flex-wrap:wrap; }
#px-seasons .px-message.is-error { border-color:#70434a; background:#302025; color:#ffd1d1; }
#px-seasons .px-empty { padding:56px 28px; text-align:center; border:1px dashed #3b414b; border-radius:8px; color:var(--px-muted); background:var(--px-panel); }
#px-seasons .px-empty p { margin:12px 0 20px; }
#px-seasons .px-status { display:inline-flex; align-items:center; border:1px solid #55614c; border-radius:3px; color:#c8d7b9; background:#252d23; padding:4px 9px; font-size:11px; font-weight:700; }
#px-seasons .px-status.is-done { color:var(--px-green); border-color:#3b624f; background:#1c2a23; }
#px-seasons .px-status.is-warn { color:var(--px-red); border-color:#694148; background:#302125; }
#px-seasons .px-price { font-size:31px; line-height:1.2; font-weight:800; letter-spacing:-.035em; white-space:nowrap; }
#px-seasons .px-specs { border-top:1px solid var(--px-line); padding-top:14px; display:grid; gap:7px; font-size:12px; }
#px-seasons .px-spec { display:grid; grid-template-columns:90px 1fr; gap:10px; }
#px-seasons .px-spec dt { color:var(--px-muted); }
#px-seasons .px-spec dd { margin:0; }
#px-seasons .px-help { padding:22px 26px; border:1px solid var(--px-line); border-radius:7px; display:grid; gap:8px; background:var(--px-panel); color:var(--px-muted); font-size:13px; }

#px-seasons .px-scene-shell { container-type:inline-size; container-name:px-scene; width:100%; margin:0 0 30px; }
#px-seasons .px-scene { position:relative; display:block; min-height:710px; overflow:hidden; isolation:isolate; border:1px solid #344039; background:radial-gradient(ellipse at 79% 32%,#2d3b3c 0%,transparent 55%),linear-gradient(145deg,#080c0f,#182127 58%,#0b1114); }
#px-seasons .px-scene::before { content:''; position:absolute; z-index:1; inset:0; pointer-events:none; opacity:.2; background:repeating-linear-gradient(0deg,transparent 0 3px,#07101155 3px 4px); }
#px-seasons .px-scene-background { position:absolute; inset:0; z-index:0; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center; }
#px-seasons .px-scene-shade { position:absolute; z-index:1; inset:0; pointer-events:none; background:linear-gradient(90deg,#060c10ec 0%,#081014c9 32%,#07111450 62%,#07111408 100%),linear-gradient(0deg,#060b11c9,transparent 38%,#07101422); }
#px-seasons .px-atmosphere { position:absolute; z-index:2; inset:-10% -7% -10% 33%; pointer-events:none; opacity:var(--px-smoke-opacity); mix-blend-mode:screen; }
#px-seasons .px-smoke { display:block; width:100%; height:100%; overflow:visible; animation:px-cloud-drift 17s ease-in-out infinite alternate; transform-origin:center 70%; }
#px-seasons .px-character { position:absolute; z-index:3; bottom:0; right:-1%; width:59%; height:100%; display:block; background:none; border:0; padding:0; margin:0; transform:translateX(var(--px-character-x)) scale(var(--px-character-scale)); transform-origin:50% 100%; }
#px-seasons .px-character:hover { background:none; border:0; }
#px-seasons .px-character img { display:block; width:100%; height:100%; max-width:none; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 16px 24px #0009); }
#px-seasons .px-character:focus-visible { outline-offset:-5px; }
#px-seasons .px-scene-content { position:relative; z-index:4; display:block; width:56%; min-width:0; padding:38px 22px 29px 42px; }
#px-seasons .px-season-kicker { display:flex; align-items:center; flex-wrap:wrap; gap:20px; color:var(--px-accent-color); font-size:13px; letter-spacing:.3em; font-family:'Arial Narrow',Arial,sans-serif; font-weight:700; }
#px-seasons .px-season-kicker span { font-size:9px; color:#aab7b0; letter-spacing:.15em; text-transform:uppercase; }
#px-seasons .px-character-name { font-family:Impact,'Arial Black',Arial,sans-serif; font-size:clamp(60px,10cqw,132px); font-weight:900; text-transform:uppercase; line-height:1; letter-spacing:-.035em; margin:10px 0 18px; overflow-wrap:anywhere; color:var(--px-name-color,#e5e9e4); text-shadow:0 3px 22px #0007; }
#px-seasons .px-story-rule { display:block; width:78%; height:1px; background:linear-gradient(90deg,var(--px-smoke-color) 0 38px,#d1dbcc69 38px,transparent 100%); margin:0 0 16px; }
#px-seasons .px-character-lore { color:#c5ceca; white-space:pre-line; font-size:12px; line-height:1.85; letter-spacing:.065em; max-width:48ch; margin:0 0 24px; overflow-wrap:anywhere; }
#px-seasons .px-items-heading { display:flex; justify-content:space-between; gap:10px; align-items:center; margin:0 0 10px; color:#8d9d94; font-size:9px; letter-spacing:.16em; }
#px-seasons .px-items-heading b { color:#becfb3; margin-left:5px; }
#px-seasons .px-items-arrows { display:flex; gap:6px; }
#px-seasons .px-items-arrows button { width:30px; height:24px; border:1px solid #54614f; color:#dce5d7; }
#px-seasons .px-item-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0; min-width:0; }
#px-seasons .px-showcase-items { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - 24px)/3); align-items:stretch; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#6c80656b transparent; padding:2px 1px 9px; }
#px-seasons .px-item { position:relative; display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; width:100%; height:auto; min-width:0; margin:0; padding:12px 11px 14px; gap:0; text-align:left; border:1px solid rgba(var(--px-smoke-rgb,144,189,123),.35); border-radius:0; background:linear-gradient(135deg,#8caa9821,#1b242be8 25%,#090f14f5 72%,#566d5829); color:var(--px-text); scroll-snap-align:start; clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px); transition:border-color .2s,background .2s; }
#px-seasons .px-item:focus-visible { outline-offset:-4px; }
#px-seasons .px-item::after { content:''; position:absolute; inset:4px; pointer-events:none; border:1px solid #d5e7d20a; }
#px-seasons .px-item:hover:not(:disabled) { background:linear-gradient(135deg,#829d8738,#1b2529f0 40%,#10171efc); border-color:var(--px-smoke-color,#9db58b); color:var(--px-text); }
#px-seasons .px-item-head { display:flex; align-items:flex-start; gap:8px; min-height:29px; width:100%; }
#px-seasons .px-item-number { color:var(--px-accent-color,#a6c58f); font:22px/1 Impact,'Arial Narrow',sans-serif; font-weight:500; }
#px-seasons .px-item-kind { color:#a8b7af; font-size:8px; line-height:1.5; letter-spacing:.13em; text-transform:uppercase; overflow-wrap:anywhere; }
#px-seasons .px-item-zoom { margin-left:auto; color:#839680; font-size:12px; line-height:1; }
#px-seasons .px-item-art { display:grid; place-items:center; aspect-ratio:1/1; width:100%; min-width:0; padding:9px 0; overflow:hidden; }
#px-seasons .px-item-art img { width:100%; height:100%; min-height:0; max-height:100%; object-fit:contain; filter:drop-shadow(0 8px 10px #0008); transition:transform .25s; }
#px-seasons .px-item:hover .px-item-art img { transform:scale(1.045); }
#px-seasons .px-item-caption { display:block; margin-top:auto; padding-top:8px; width:100%; }
#px-seasons .px-item-caption::after { content:''; display:block; height:2px; width:23px; background:var(--px-smoke-color,#a5bf95); margin-top:11px; }
#px-seasons .px-item-caption strong { display:block; font-family:'Arial Narrow',Arial,sans-serif; font-weight:700; font-size:12px; line-height:1.25; text-transform:uppercase; overflow-wrap:anywhere; }
#px-seasons .px-item-caption small { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; color:#9ca9a0; font-size:9px; line-height:1.5; margin-top:6px; overflow-wrap:anywhere; }
#px-seasons .px-placeholder { display:block; width:100%; height:100%; min-height:64px; background:linear-gradient(140deg,#28333a66,#11192288); border:1px dashed #546253; }
#px-seasons .px-offer { margin-top:17px; padding-top:16px; border-top:1px solid #7e94744d; }
#px-seasons .px-offer h3 { font-size:14px; color:#d1dacd; margin:0 0 5px; }
#px-seasons .px-offer-description { color:#a4b0a6; font-size:11px; line-height:1.5; overflow-wrap:anywhere; white-space:pre-line; }
#px-seasons .px-purchase-row { display:flex; align-items:center; gap:16px; justify-content:space-between; margin-top:17px; }
#px-seasons .px-scene-footer { display:flex; align-items:flex-start; flex-wrap:wrap; gap:7px 20px; margin-top:18px; font-size:10px; color:#8f9c92; }
#px-seasons .px-sale-dates summary { font-size:10px; color:#abb9a8; }
#px-seasons .px-sale-dates p { margin:8px 0 0; font-size:10px; }
#px-seasons .px-scene-signature { position:absolute; bottom:21px; right:25px; z-index:4; font-weight:700; color:#d6dfd566; font-size:12px; letter-spacing:.1em; pointer-events:none; }
#px-seasons .px-scene-signature span { color:var(--px-accent-color); opacity:.6; margin-left:10px; }
#px-seasons .px-coming-soon { padding:30px 0; font-size:14px; color:#a5b5a5; }
#px-seasons .px-set-tabs { display:flex; flex-wrap:wrap; gap:5px; margin:0 0 18px; }
#px-seasons .px-set-tabs button { border:1px solid #5a6d5660; padding:7px 10px; font-size:10px; color:#9dab9a; background:#101b1bba; }
#px-seasons .px-set-tabs button.is-active { color:#dee8d6; border-color:#a4c191; background:#243127c9; }
#px-seasons .px-editor-preview-head { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
#px-seasons .px-editor-preview-head span,#px-seasons .px-editor-purchase { color:#97a594; font-size:11px; }
#px-seasons .px-editor-preview { min-width:0; }
#px-seasons .px-editor-preview .px-scene-shell { margin:0; }
#px-seasons .px-editor-preview .px-scene { min-height:510px; }
#px-seasons .px-legacy-fields textarea { margin-top:10px; }
#px-seasons .px-range-label { position:relative; padding-right:35px; }
#px-seasons .px-range-label output { position:absolute; right:0; top:0; color:#b2c99c; }
#px-seasons .px-range-label input[type=range] { width:100%; padding:0; min-height:32px; height:32px; border:0; background:transparent; accent-color:#aac28c; }
#px-seasons .px-color-field { display:grid; grid-template-columns:50px 1fr; align-items:center; }
#px-seasons .px-color-field input[type=color] { grid-column:1; width:48px; height:36px; min-height:36px; padding:3px; cursor:pointer; }
#px-seasons .px-color-field span { color:#a9b89e; font:12px monospace; }
@keyframes px-cloud-drift { from { transform:translate3d(-1.5%,1%,0) scale(.98) rotate(-3deg); opacity:.78; } to { transform:translate3d(2%,-1.5%,0) scale(1.06) rotate(3deg); opacity:1; } }
@media (prefers-reduced-motion:reduce) { #px-seasons .px-smoke { animation:none; } #px-seasons .px-item-art img { transition:none; } }
#px-seasons[data-motion=paused] .px-smoke { animation-play-state:paused; }
@container px-scene (max-width:900px) {
  #px-seasons .px-scene { min-height:590px; }
  #px-seasons .px-scene-content { width:60%; padding:32px 15px 25px 25px; }
  #px-seasons .px-character-lore { font-size:11px; }
  #px-seasons .px-character-name { margin:9px 0 15px; }
  #px-seasons .px-item { padding:10px 8px; }
  #px-seasons .px-item-head { gap:5px; }
  #px-seasons .px-item-kind { font-size:7px; }
  #px-seasons .px-item-caption strong { font-size:10px; }
}
@container px-scene (max-width:600px) {
  #px-seasons .px-scene { min-height:0; }
  #px-seasons .px-scene-content { width:100%; padding:27px 18px 24px; }
  #px-seasons .px-character-intro { min-height:330px; width:60%; padding-bottom:18px; }
  #px-seasons .px-character-name { font-size:clamp(45px,15cqw,88px); }
  #px-seasons .px-character-lore { font-size:10px; letter-spacing:.02em; line-height:1.8; }
  #px-seasons .px-season-kicker { font-size:10px; gap:9px; letter-spacing:.18em; }
  #px-seasons .px-season-kicker span { font-size:8px; }
  #px-seasons .px-character { top:10px; bottom:auto; right:-15%; width:87%; height:400px; transform-origin:center 80%; }
  #px-seasons .px-atmosphere { left:10%; right:-30%; top:-60px; bottom:auto; height:530px; }
  #px-seasons .px-scene-background { object-position:63% top; }
  #px-seasons .px-scene-shade { background:linear-gradient(90deg,#071012b8,transparent 100%),linear-gradient(0deg,#070f13 12%,#0a111aec 48%,transparent 72%); }
  #px-seasons .px-showcase-items { gap:8px; grid-auto-columns:calc((100% - 16px)/3); }
  #px-seasons .px-item { padding:10px 7px 11px; }
  #px-seasons .px-item-kind { font-size:6px; letter-spacing:.06em; }
  #px-seasons .px-item-number { font-size:18px; }
  #px-seasons .px-item-zoom { display:none; }
  #px-seasons .px-item-head { min-height:30px; }
  #px-seasons .px-item-caption strong { font-size:10px; }
  #px-seasons .px-item-caption small { font-size:8px; }
  #px-seasons .px-purchase-row { gap:10px; }
  #px-seasons .px-scene-signature { display:none; }
  #px-seasons .px-scene-no-character .px-character-intro { width:100%; min-height:0; }
}

#px-seasons dialog { margin:auto; width:auto; color:var(--px-text); padding:28px; background:#171a22; border:1px solid #484034; border-radius:13px; max-height:90vh; overflow:auto; }
#px-seasons dialog::backdrop { background:#07080de8; }
#px-seasons .px-lightbox { width:min(1160px,94vw); text-align:center; }
#px-seasons .px-lightbox img { display:block; max-width:100%; max-height:68vh; margin:8px auto 18px; object-fit:contain; }
#px-seasons .px-lightbox h2 { font-size:20px; padding:0 20px; }
#px-seasons .px-lightbox p { white-space:pre-line; color:var(--px-muted); margin-top:8px; }
#px-seasons .px-dialog { width:min(590px,94vw); }
#px-seasons .px-dialog h2 { padding-right:20px; margin:8px 0 18px; }
#px-seasons .px-dialog p { margin:12px 0; }
#px-seasons .px-dialog .px-actions { margin-top:22px; }
#px-seasons .px-close { position:absolute; top:10px; right:10px; color:#fff; font-size:27px; background:#222731; border:1px solid #3b414a; border-radius:5px; width:35px; height:35px; padding:0; line-height:1; }
#px-seasons input,#px-seasons select,#px-seasons textarea { width:100%; min-height:40px; color:var(--px-text); background:#11141b; border:1px solid #3b414d; padding:9px 11px; border-radius:6px; font-size:14px; }
#px-seasons input[type=checkbox] { -webkit-appearance:checkbox; appearance:auto; display:inline-block; position:static; opacity:1; width:17px; min-width:17px; min-height:17px; height:17px; margin:1px 0 0; padding:0; border:initial; background:initial; accent-color:var(--px-gold); flex-shrink:0; }
#px-seasons input[type=checkbox]::after { content:none; display:none; }
#px-seasons textarea { resize:vertical; min-height:95px; }
#px-seasons .px-form { display:grid; gap:17px; }
#px-seasons label { display:grid; gap:7px; font-size:13px; color:#d8dae0; }
#px-seasons .px-check { display:flex; align-items:flex-start; gap:9px; color:var(--px-muted); }
#px-seasons .px-field-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#px-seasons .px-field-note { font-size:12px; color:var(--px-muted); margin-top:4px; }
#px-seasons .px-admin-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:22px; align-items:start; }
#px-seasons .px-admin-side,#px-seasons .px-admin-main { border:1px solid var(--px-line); border-radius:10px; background:var(--px-panel); padding:20px; min-width:0; }
#px-seasons .px-admin-side { position:sticky; top:20px; display:grid; gap:14px; }
#px-seasons .px-admin-side .px-actions { gap:6px; }
#px-seasons .px-admin-side .px-secondary { flex:1; }
#px-seasons .px-admin-list { display:grid; gap:6px; max-height:50vh; overflow:auto; }
#px-seasons .px-admin-list button { text-align:left; padding:10px; background:#1e222c; border:1px solid transparent; color:var(--px-text); border-radius:6px; display:grid; gap:4px; }
#px-seasons .px-admin-list button:hover { border-color:var(--px-gold); }
#px-seasons .px-admin-title { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:22px; flex-wrap:wrap; }
#px-seasons .px-admin-item { padding:17px; border:1px solid #3d414b; border-radius:8px; background:#1a1e26; display:grid; gap:14px; }
#px-seasons .px-admin-item-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#px-seasons .px-admin-item textarea.px-command { font-family:ui-monospace,monospace; font-size:12px; }
#px-seasons .px-image-field { display:grid; gap:7px; }
#px-seasons .px-image-input { display:flex; align-items:center; gap:8px; }
#px-seasons .px-image-input input { min-width:0; }
#px-seasons .px-image-input button { flex-shrink:0; }
#px-seasons .px-image-preview { width:96px; height:64px; object-fit:contain; background:#0d1017; border:1px solid var(--px-line); border-radius:5px; }
#px-seasons .px-server-checks { display:flex; gap:13px; flex-wrap:wrap; padding:12px; background:#11141b; border:1px solid var(--px-line); border-radius:6px; }
#px-seasons .px-form-actions { display:flex; gap:10px; flex-wrap:wrap; border-top:1px solid var(--px-line); padding-top:18px; }
#px-seasons .px-filters { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:20px; }
#px-seasons .px-filters input,#px-seasons .px-filters select { width:auto; max-width:100%; flex:1; min-width:160px; }
#px-seasons .px-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:18px 0; }
#px-seasons .px-stat { padding:16px; background:#10141b; border:1px solid var(--px-line); border-radius:7px; min-width:0; }
#px-seasons .px-stat strong { display:block; font-size:23px; color:var(--px-gold); }
#px-seasons .px-stat span { color:var(--px-muted); font-size:11px; }
#px-seasons .px-order { padding:20px; background:var(--px-panel); border:1px solid var(--px-line); border-radius:9px; margin-bottom:14px; overflow-wrap:anywhere; }
#px-seasons .px-order-head { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
#px-seasons .px-order h3 { margin:8px 0; }
#px-seasons .px-order details { margin-top:14px; border-top:1px solid var(--px-line); padding-top:12px; }
#px-seasons summary { cursor:pointer; font-size:13px; color:var(--px-gold); }
#px-seasons .px-job { padding:12px 0; border-bottom:1px solid var(--px-line); font-size:12px; }
#px-seasons .px-job pre,#px-seasons .px-audit pre { display:block; white-space:pre-wrap; overflow-wrap:anywhere; background:#10131a; padding:10px; font:12px/1.5 ui-monospace,monospace; color:#ced1d9; }
#px-seasons .px-job .px-actions { margin-top:8px; }
#px-seasons .px-table-wrap { overflow:auto; }
#px-seasons table { width:100%; border-collapse:collapse; text-align:left; font-size:12px; }
#px-seasons th,#px-seasons td { border-bottom:1px solid var(--px-line); padding:10px; vertical-align:top; }
#px-seasons th { color:var(--px-muted); }
@media (max-width:1000px) {
  #px-seasons .px-admin-layout { grid-template-columns:210px minmax(0,1fr); }
  #px-seasons .px-admin-main { padding:16px; }
  #px-seasons .px-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  #px-seasons { padding:0 12px; margin-top:18px; }
  #px-seasons h1 { font-size:24px; }
  #px-seasons .px-admin-layout { grid-template-columns:1fr; }
  #px-seasons .px-admin-side { position:static; }
  #px-seasons .px-admin-list { max-height:180px; }
  #px-seasons .px-topbar { gap:17px; }
  #px-seasons .px-tab { padding:9px 13px; }
  #px-seasons .px-field-row { grid-template-columns:1fr; }
  #px-seasons dialog { padding:24px 18px; }
}
@media (prefers-reduced-motion:reduce) { #px-seasons * { transition:none !important; animation:none !important; } }

/* 1.2: Use the available website column, including the moving LR sidebar. */
.container-fluid.px-seasons-host { max-width:none; width:auto; height:auto; min-height:0; margin-inline:0; padding:10px 18px 24px calc(18px + var(--px-sidebar-clearance,0px)); }
.px-seasons-host > .navbar { margin-top:-10px; margin-bottom:6px; }
.px-seasons-host > .row:not(.navbar) { margin:0; min-width:0; }
#px-seasons { display:flex; flex-direction:column; width:100%; max-width:none; margin:0; padding:0; gap:0; }
#px-seasons #px-content { order:1; }
#px-seasons .px-tools { align-self:flex-end; margin:0 0 10px; order:0; }
#px-seasons[data-page=shop] .px-tools { order:2; margin:8px 0 0; }
#px-seasons .px-message,#px-seasons .px-upgrade-panel { order:0; }
#px-seasons .px-scene-shell { margin:0 0 16px; }
#px-seasons .px-scene { min-height:clamp(600px,calc(100svh - var(--px-page-top,86px) - 18px),920px); background:radial-gradient(ellipse at 75% 40%,var(--px-background-secondary),transparent 72%),var(--px-background-color); }
#px-seasons .px-scene::before { display:none; }
#px-seasons .px-scene-background { object-position:var(--px-background-x) var(--px-background-y); transform:scale(var(--px-background-zoom)); }
#px-seasons .px-scene-shade { background:linear-gradient(90deg,rgba(3,8,13,var(--px-background-dim)),rgba(3,8,13,calc(var(--px-background-dim)*.72)) 36%,transparent 85%),linear-gradient(0deg,#060c12e0,transparent 44%); }
#px-seasons .px-scene-texture { position:absolute; inset:0; pointer-events:none; z-index:1; opacity:var(--px-texture-opacity); }
#px-seasons [data-texture=scanlines] .px-scene-texture { background:repeating-linear-gradient(0deg,transparent 0 3px,#08141c 3px 4px); }
#px-seasons .px-scene-content { display:flex; flex-direction:column; width:var(--px-content-width); min-height:inherit; padding:clamp(20px,2cqw,34px); }
#px-seasons .px-character-intro { margin-bottom:16px; }
#px-seasons .px-character-name { font-size:calc(clamp(48px,7.2cqw,110px)*var(--px-title-size)); line-height:.98; margin:12px 0 15px; }
#px-seasons .px-season-kicker { font-size:12px; }
#px-seasons .px-story-rule { margin-bottom:12px; }
#px-seasons .px-character-lore { display:-webkit-box; -webkit-line-clamp:var(--px-lore-lines); -webkit-box-orient:vertical; overflow:hidden; max-width:65ch; margin:0; font-size:13px; line-height:1.65; letter-spacing:.025em; }
#px-seasons .px-story.is-expanded .px-character-lore { display:block; overflow:visible; }
#px-seasons .px-story-toggle { display:block; font-size:11px; color:var(--px-accent-color); margin-top:6px; text-decoration:underline; text-underline-offset:3px; }
#px-seasons .px-collection-contents { margin-top:auto; }
#px-seasons .px-showcase-items { padding-bottom:5px; }
#px-seasons .px-showcase-items .px-item { padding:10px; }
#px-seasons .px-showcase-items .px-item-art { aspect-ratio:auto; height:clamp(94px,17svh,185px); padding:7px 0; }
#px-seasons .px-item-art img { transform:scale(calc(var(--px-item-scale,1)*var(--px-item-image-scale,1))); }
#px-seasons .px-item:hover .px-item-art img { transform:scale(calc(var(--px-item-scale,1)*var(--px-item-image-scale,1)*1.03)); }
#px-seasons .px-item-caption strong { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
#px-seasons .px-item-caption::after { margin-top:8px; }
#px-seasons .px-item-caption small { -webkit-line-clamp:1; }
#px-seasons .px-character { transform:translate(var(--px-character-x),var(--px-character-y)) scale(var(--px-character-scale)); }
#px-seasons [data-side=left] .px-character { right:auto; left:-1%; }
#px-seasons [data-side=left] .px-scene-content { margin-left:auto; }
#px-seasons [data-side=left] .px-atmosphere { inset:-10% 33% -10% -7%; }
#px-seasons [data-side=left] .px-scene-shade { transform:scaleX(-1); }
#px-seasons [data-side=left] .px-scene-signature { right:auto; left:25px; }
#px-seasons [data-item-style=glass] .px-item { clip-path:none; border-radius:12px; background:linear-gradient(130deg,#d3eddb28,#091119a8); backdrop-filter:blur(8px); }
#px-seasons [data-item-style=glass] .px-item::after { border-radius:8px; }
#px-seasons [data-item-style=minimal] .px-item { clip-path:none; background:#08101875; border-color:#a6c3ba35; border-radius:2px; }
#px-seasons [data-item-style=minimal] .px-item::after,#px-seasons [data-item-style=minimal] .px-item-caption::after { display:none; }
/* Purchase terms and a real sales deadline form one compact decision area. */
#px-seasons .px-offer { margin-top:12px; padding-top:12px; border-top:1px solid #c3cdb239; }
#px-seasons .px-offer-info { display:grid; gap:8px; }
#px-seasons .px-offer h3 { font-size:17px; margin:0; color:#ecf0e9; }
#px-seasons .px-offer-description { margin:0; color:#c8d0c9; font-size:12px; line-height:1.65; white-space:pre-line; overflow-wrap:anywhere; }
#px-seasons .px-offer-bottom { display:grid; gap:12px; margin-top:12px; }
#px-seasons .px-deadline { display:grid; gap:4px; border-left:2px solid var(--px-button-color,#dfc789); padding:1px 0 1px 12px; }
#px-seasons .px-sale-period { color:#b8c3bf; font-size:10px; line-height:1.5; }
#px-seasons .px-sale-period small { font-size:9px; color:#91a49b; white-space:nowrap; }
#px-seasons .px-deadline strong { font-size:clamp(16px,1.7cqw,24px); line-height:1.2; color:#edf1e8; font-weight:800; font-variant-numeric:tabular-nums; }
#px-seasons .px-deadline.is-last-day strong { color:#ffe3a6; }
#px-seasons .px-purchase-row { margin:0; gap:16px; }
#px-seasons .px-price-block { display:grid; gap:1px; }
#px-seasons .px-price-block > span { font-size:9px; color:#a9b8ae; }
#px-seasons .px-price { font-size:34px; }
#px-seasons .px-buy-action { display:inline-flex; gap:12px; min-height:52px; min-width:215px; border-radius:5px; padding:13px 24px; font-size:14px; font-weight:800; border:1px solid var(--px-button-color,#dfc789); background:var(--px-button-color,#dfc789); color:var(--px-button-text,#091018); box-shadow:inset 0 1px 0 #ffffff42; transition:filter .15s,box-shadow .15s; }
#px-seasons .px-buy-action svg { display:block; width:21px; height:21px; flex-shrink:0; color:inherit; }
#px-seasons .px-buy-action:hover:not(:disabled) { background:var(--px-button-color,#dfc789); color:var(--px-button-text,#091018); filter:brightness(1.08); }
#px-seasons [data-button-style=glow] .px-buy-action { box-shadow:0 0 25px rgba(var(--px-button-rgb),.3),inset 0 1px 0 #ffffff42; }
#px-seasons [data-button-style=outline] .px-buy-action { background:#071018dc; color:var(--px-accent-color); border-color:var(--px-accent-color); }
#px-seasons [data-button-style=outline] .px-buy-action:hover { background:#15212bea; }
/* All effects are decorative layers behind the character; no downloaded assets. */
#px-seasons .px-smoke,#px-seasons .px-effect,#px-seasons .px-effect i { animation-duration:var(--px-effect-duration,17s); }
#px-seasons .px-effect { position:absolute; inset:0; overflow:hidden; }
#px-seasons .px-effect i { position:absolute; display:block; pointer-events:none; }
#px-seasons .px-effect-aurora { filter:blur(22px); transform:rotate(-14deg); }
#px-seasons .px-effect-aurora i { width:38%; height:110%; left:15%; top:-5%; border-radius:50%; background:linear-gradient(0deg,transparent,var(--px-smoke-color) 45%,transparent); animation:px-aurora var(--px-effect-duration) ease-in-out infinite alternate; }
#px-seasons .px-effect-aurora i:nth-child(2) { left:45%; top:-15%; opacity:.65; animation-delay:-7s; }
#px-seasons .px-effect-aurora i:nth-child(3) { left:65%; width:25%; opacity:.4; animation-delay:-12s; }
#px-seasons .px-effect-rays { filter:blur(9px); transform-origin:50% 5%; animation:px-rays var(--px-effect-duration) ease-in-out infinite alternate; }
#px-seasons .px-effect-rays i { top:-15%; left:44%; width:12%; height:130%; transform:rotate(20deg); transform-origin:top; background:linear-gradient(0deg,transparent,rgba(var(--px-smoke-rgb),.7)); clip-path:polygon(44% 0,56% 0,100% 100%,0 100%); }
#px-seasons .px-effect-rays i:nth-child(2) { transform:rotate(-14deg); width:24%; opacity:.7; }
#px-seasons .px-effect-rays i:nth-child(3) { transform:rotate(-35deg); left:50%; opacity:.35; }
#px-seasons .px-effect-embers i,#px-seasons .px-effect-snow i { left:var(--x); top:var(--y); width:var(--size); height:var(--size); background:var(--px-smoke-color); border-radius:50%; box-shadow:0 0 7px var(--px-smoke-color); animation:px-embers var(--px-effect-duration) linear infinite; animation-delay:var(--delay); }
#px-seasons .px-effect-snow i { box-shadow:0 0 3px var(--px-smoke-color); animation-name:px-snow; opacity:.7; }
@keyframes px-aurora { from{transform:skewX(-12deg) translateX(-10%);opacity:.4} to{transform:skewX(12deg) translateX(12%);opacity:.8} }
@keyframes px-rays { from{transform:rotate(-7deg);opacity:.55} to{transform:rotate(7deg);opacity:1} }
@keyframes px-embers { 0%{transform:translate(0,70px);opacity:0} 20%{opacity:.9} 80%{opacity:.7} 100%{transform:translate(35px,-250px);opacity:0} }
@keyframes px-snow { 0%{transform:translate(-20px,-150px);opacity:0} 15%{opacity:.85} 85%{opacity:.6} 100%{transform:translate(40px,250px);opacity:0} }
#px-seasons [data-effect-motion="0"] .px-atmosphere *,#px-seasons[data-motion=paused] .px-atmosphere * { animation-play-state:paused; }
#px-seasons [data-effect-motion="0"] .px-atmosphere * { animation:none; }
/* Reset LR's dialog {top:-70%; animation:fadeInDrop; min-width:24rem}. */
#px-seasons dialog { position:fixed; inset:0; top:0; right:0; bottom:0; left:0; margin:auto; transform:none !important; animation:none !important; transition:none !important; opacity:1; min-width:0; min-height:0; max-width:calc(100vw - 24px); max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); height:fit-content; overflow:auto; overscroll-behavior:contain; padding:36px 26px 24px; border:1px solid #60695b; border-radius:12px; background:#121b23; color:#ecf1eb; user-select:text; box-shadow:0 24px 100px #000a; }
#px-seasons dialog:not([open]) { display:none; }
#px-seasons dialog[open] { display:block; }
#px-seasons dialog::backdrop { background:#03070bd9; animation:none !important; }
#px-seasons .px-lightbox { width:min(1000px,calc(100vw - 24px)); }
#px-seasons .px-lightbox img { width:100%; height:58vh; height:58dvh; max-height:58dvh; object-fit:contain; margin:0 auto 15px; }
#px-seasons .px-lightbox h2,#px-seasons .px-lightbox p { overflow-wrap:anywhere; }
#px-seasons .px-lightbox p { font-size:13px; }
#px-seasons .px-dialog { width:min(590px,calc(100vw - 24px)); }
#px-seasons .px-dialog .px-specs { margin:18px 0; }
#px-seasons .px-dialog .px-checkout-balance { padding:10px; border:1px solid #a1b39626; border-radius:5px; font-size:12px; }
#px-seasons .px-close { position:sticky; display:block; top:0; margin:-26px -16px 0 auto; z-index:5; width:34px; height:34px; line-height:1; }
#px-seasons .px-lightbox .px-close { margin-bottom:6px; }
#px-seasons .px-dialog > form { position:sticky; top:-26px; z-index:5; margin:0; height:0; }
#px-seasons .px-dialog > form .px-close { position:absolute; top:-26px; right:-16px; margin:0; }
#px-seasons .px-design-section { border:1px solid #343f43; border-radius:7px; padding:13px; }
#px-seasons .px-design-section > summary { cursor:pointer; color:#dae1d6; font-weight:700; }
#px-seasons .px-design-fields { display:grid; gap:16px; padding-top:17px; }
#px-seasons .px-presets { display:flex; flex-wrap:wrap; gap:8px; }
#px-seasons .px-color-field .px-color-label { grid-column:1/-1; font:inherit; color:inherit; }
#px-seasons .px-editor-preview .px-scene { min-height:540px; }
@container px-scene (max-width:900px) {
  #px-seasons .px-scene-content { width:var(--px-content-width); padding:24px 20px; }
  #px-seasons .px-character-name { font-size:calc(clamp(44px,8.5cqw,85px)*var(--px-title-size)); }
  #px-seasons .px-purchase-row { flex-wrap:wrap; gap:9px; }
  #px-seasons .px-buy-action { min-width:180px; padding:12px 17px; }
}
@container px-scene (max-width:600px) {
  #px-seasons .px-scene,#px-seasons .px-editor-preview .px-scene { min-height:0; }
  #px-seasons .px-scene-content { width:100%; min-height:0; padding:22px 16px; }
  #px-seasons .px-character-intro { width:65%; min-height:260px; padding-bottom:0; margin-bottom:12px; }
  #px-seasons .px-character-name { font-size:calc(clamp(38px,12cqw,68px)*var(--px-title-size)); }
  #px-seasons .px-character-lore { font-size:12px; line-height:1.6; }
  #px-seasons .px-character { top:10px; bottom:auto; right:-15%; width:85%; height:315px; }
  #px-seasons .px-atmosphere { left:10%; right:-25%; top:-40px; bottom:auto; height:390px; }
  #px-seasons .px-scene-shade { background:linear-gradient(90deg,rgba(3,8,13,var(--px-background-dim)),transparent),linear-gradient(0deg,#071018 15%,#071018e8 56%,transparent 75%); }
  #px-seasons [data-side=left] .px-character { left:-15%; right:auto; }
  #px-seasons [data-side=left] .px-character-intro { margin-left:auto; }
  #px-seasons [data-side=left] .px-atmosphere { inset:-40px 10% auto -25%; height:390px; }
  #px-seasons .px-showcase-items .px-item { padding:9px 6px; }
  #px-seasons .px-showcase-items .px-item-art { height:clamp(75px,23cqw,140px); }
  #px-seasons .px-offer-bottom { gap:14px; }
  #px-seasons .px-purchase-row { flex-wrap:nowrap; gap:10px; }
  #px-seasons .px-buy-action { min-width:0; min-height:48px; padding:11px 13px; font-size:12px; gap:8px; }
  #px-seasons .px-buy-action svg { width:18px; height:18px; }
  #px-seasons .px-price { font-size:29px; }
  #px-seasons .px-price-block > span { font-size:8px; }
  #px-seasons .px-deadline strong { font-size:18px; }
  #px-seasons .px-scene-no-character .px-character-intro { min-height:0; width:100%; }
}
@media(max-width:768px) {
  .container-fluid.px-seasons-host { padding:8px 10px 20px; }
  #px-seasons .px-tools { width:100%; justify-content:center; }
  #px-seasons dialog { padding:32px 18px 20px; }
  #px-seasons .px-dialog .px-actions { flex-wrap:wrap; }
}
@media(prefers-reduced-motion:reduce) { #px-seasons .px-atmosphere * { animation:none !important; } }
@media(min-width:901px) and (max-height:850px) {
  #px-seasons .px-scene-content { padding:16px 22px; }
  #px-seasons .px-character-intro { margin-bottom:12px; }
  #px-seasons .px-character-name { font-size:calc(clamp(48px,6.2cqw,76px)*var(--px-title-size)); }
  #px-seasons .px-showcase-items .px-item-art { height:clamp(82px,12.5svh,105px); }
  #px-seasons .px-offer-bottom { gap:9px; }
  #px-seasons .px-buy-action { min-height:48px; }
}

#px-seasons .px-storage-info { margin:12px 0; color:#aeb9c4; font-size:12px; overflow-wrap:anywhere; }
#px-seasons .px-storage-info code { display:inline; margin:0; padding:0; border:0; background:none; white-space:normal; }
#px-seasons .px-diagnostic-output { max-height:55dvh; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; padding:12px; border:1px solid #38434d; background:#10151b; font:12px/1.6 monospace; }
