html:has(.concept-b){background:#e7e5dc}.concept-b{background:#e7e5dc;color:#141414}.concept-b .systembar{background:#e7e5dc;border-bottom:1px solid #111;position:sticky;top:0}.concept-b .systemname{display:none}.concept-b .signal{margin-left:auto}.concept-b .prototype{display:none}.concept-b #desktop{padding:0 25px 0;isolation:isolate}.concept-b .ambient{z-index:0;opacity:.3}.concept-b .ambient-grid{display:none}.concept-b .ambient-orbit{border-color:#b2001633}.concept-b .ambient-mark{color:#b20016}.concept-b .home-screen{overflow:visible;max-width:1600px;min-height:0;position:relative;z-index:1}.index-meta{display:flex;justify-content:space-between;padding:20px 0;font-size:9px;letter-spacing:.4px}.index-masthead{display:flex;justify-content:space-between;gap:20px;padding:18px 0 33px}.index-masthead h1{font:900 clamp(90px,16.7vw,265px)/.78 Arial,Helvetica,sans-serif;letter-spacing:-.095em;margin:0;position:relative}.index-masthead h1>span{font-size:26px;vertical-align:top;letter-spacing:0;margin-left:10px}.masthead-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;width:20%;flex-shrink:0}.index-stamp{font:italic clamp(60px,10vw,140px)/.9 Georgia,serif;color:#b70017;animation:none}.masthead-side p{font-size:11px;line-height:1.35;text-align:right;letter-spacing:1px}.masthead-side button{border:0;border-bottom:1px solid;background:none;padding:7px 0;font-size:9px;white-space:nowrap}.index-strip{border-top:1px solid #111;border-bottom:1px solid #111;display:flex;justify-content:space-between;padding:12px 0;font-size:9px}.index-strip .live-dot{color:#b70017}.release-index-list{position:relative}.release-row{display:grid;grid-template-columns:90px 1fr 170px 70px;align-items:center;position:relative;width:100%;padding:19px 0;background:transparent;border:0;border-bottom:1px solid #111;text-align:left;isolation:isolate;overflow:hidden;transition:color .15s,padding .2s}.release-row:before{content:'';position:absolute;inset:0;background:#b70017;transform:translateY(101%);transition:transform .25s cubic-bezier(.2,.8,.2,1);z-index:-1}.release-row:hover:before,.release-row:focus-visible:before,.release-row:active:before{transform:translateY(0)}.release-row:hover,.release-row:focus-visible{color:#e7e5dc;padding-left:14px;padding-right:14px}.release-index{font:italic 38px Georgia,serif;position:relative;z-index:1}.release-name{font:900 clamp(25px,4.5vw,70px)/1 Arial,sans-serif;letter-spacing:-.07em;position:relative;z-index:1}.release-state{font-size:9px;line-height:1.4;position:relative;z-index:1}.release-arrow{font:40px/1 Arial,sans-serif;text-align:right;transition:transform .2s;position:relative;z-index:1}.release-row:hover .release-arrow{transform:rotate(45deg)}.index-extras{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.index-extras button{text-align:left;min-height:300px;padding:20px;border:1px solid #111;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.index-extras button>span:first-child{font-size:10px;position:relative;z-index:2}.index-extras strong{font:900 clamp(55px,7vw,100px)/.8 Arial,sans-serif;letter-spacing:-.08em;position:relative;z-index:2}.index-extras strong span{font:50px Arial;display:inline-block;margin-left:30px}.index-extras small{font-size:9px;position:relative;z-index:2}.broadcast-tile{background:#151515;color:#e7e5dc}.broadcast-lines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 20px,#e7e5dc15 21px);animation:broadcast-roll 9s linear infinite}.audio-tile{background:#b70017;color:#151515}.abstract-tape{display:flex;gap:20px;position:absolute;right:-30px;top:55px;rotate:-17deg;opacity:.4}.abstract-tape i{width:130px;height:130px;border:25px dashed #27000b;border-radius:50%;animation:orbit 20s linear infinite}.audio-tile:hover .abstract-tape i{animation-duration:5s}.index-footer{display:flex;align-items:flex-end;justify-content:space-between;padding:25px 0 45px;border-top:1px solid #111;font-size:10px;line-height:1.5}.index-footer p{text-align:center;margin:0}.index-footer button{background:none;border:1px solid;padding:13px;font-size:9px}.concept-b .taskbar{background:#141414;color:#e7e5dc;border:0;box-shadow:none;height:50px}.concept-b .taskbar button,.concept-b .taskbar .start{border:1px solid #555;background:#141414;color:#e7e5dc;box-shadow:none}.concept-b .taskbar button.active{background:#b70017;border-color:#b70017}.concept-b .taskbar .start.active{background:#e7e5dc;color:#111}.concept-b .ticker{background:#b70017;color:#e7e5dc;border-top:0}.concept-b .concept-switch{background:#e7e5dc;box-shadow:3px 3px #111}.concept-b .concept-switch:hover{background:#111}.concept-b:not(.on-home) .index-home{display:none}.concept-b .window{margin-top:28px;margin-bottom:30px;box-shadow:6px 6px #1113}.concept-b .collection-window{max-width:1100px}.concept-b .window .titlebar{background:#b70017}.concept-b .taskbar-status{font-size:9px}@keyframes broadcast-roll{to{background-position:0 84px}}@media(max-width:760px){.concept-b #desktop{padding:0 13px}.concept-b .systembar{height:42px;gap:12px}.concept-b .signal{display:flex;font-size:8px}.concept-b .signal i{margin-right:5px}.index-meta{padding:17px 0;font-size:7px;gap:8px}.index-meta>span:nth-child(2){display:none}.index-masthead{padding:14px 0 24px;gap:8px}.index-masthead h1{font-size:22.7vw;line-height:.86;letter-spacing:-.1em}.index-masthead h1>span{font-size:13px;margin-left:3px}.masthead-side{width:18%;justify-content:flex-start;gap:12px;padding-top:1px}.index-stamp{font-size:15vw}.masthead-side p{font-size:6px;letter-spacing:.1px;line-height:1.3;margin:0}.masthead-side button{font-size:6px;margin-top:auto;white-space:normal;text-align:right}.index-strip{font-size:7px;padding:10px 0;gap:5px}.index-strip>span:nth-child(2){display:none}.release-row{grid-template-columns:40px 1fr 30px;padding:24px 0;min-height:86px}.release-index{font-size:26px}.release-name{font-size:clamp(25px,7.1vw,48px);letter-spacing:-.06em}.release-state{display:none}.release-arrow{font-size:28px}.release-row:hover,.release-row:focus-visible{padding-left:7px;padding-right:7px}.index-extras{gap:10px;margin:20px 0}.index-extras button{min-height:230px;padding:12px}.index-extras button>span:first-child{font-size:7px}.index-extras strong{font-size:44px}.index-extras strong span{font-size:24px;margin-left:15px}.index-extras small{font-size:6px;line-height:1.5}.abstract-tape{right:-45px;top:45px;gap:10px}.abstract-tape i{width:70px;height:70px;border-width:13px}.index-footer{font-size:7px;padding:20px 0 30px}.index-footer button{padding:10px 6px;font-size:7px}.concept-b .taskbar{height:56px}.concept-b .concept-switch{bottom:91px}.concept-b .window{margin-top:20px}.concept-b .collection-heading h1{font-family:Arial,sans-serif;font-weight:900;font-size:53px;letter-spacing:-4px}}

/* Selective blackletter accents — proposal 02 only. */
@font-face{font-family:RedMoonBlackletter;src:url('fonts/UnifrakturCook-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
.index-masthead .gothic-word{font-family:RedMoonBlackletter,Georgia,serif;font-style:normal;font-weight:700;font-size:1.08em;letter-spacing:-.035em;line-height:.95;display:inline-block}
.gothic-accent{font-family:RedMoonBlackletter,Georgia,serif;font-weight:700;font-style:normal;letter-spacing:-.03em}
.gothic-signature{font-family:RedMoonBlackletter,Georgia,serif;font-size:23px;line-height:1.4;font-style:normal;letter-spacing:0}
.concept-b .collection-heading h1{font-family:RedMoonBlackletter,Georgia,serif;font-weight:700;letter-spacing:-.025em;line-height:1.1}
.concept-b .tape-label>span{font-family:RedMoonBlackletter,Georgia,serif;font-style:normal;font-weight:700;font-size:36px;letter-spacing:0;line-height:1.1}
.concept-b .notepad h2{font-family:RedMoonBlackletter,Georgia,serif;font-weight:700;letter-spacing:0;line-height:1.05}
@media(max-width:760px){.index-masthead .gothic-word{font-size:1.12em;letter-spacing:-.045em;line-height:1}.index-masthead h1>span{margin-left:2px}.gothic-signature{font-size:18px}.concept-b .collection-heading h1{font-size:47px;letter-spacing:-1px}.concept-b .notepad h2{font-size:40px;letter-spacing:0}}

/* Project-native size selection. */
.concept-b .piece-row{gap:16px;min-height:76px}
.concept-b .piece-choice{gap:10px;line-height:1.4}
.concept-b .piece-choice input{appearance:none;-webkit-appearance:none;flex-shrink:0;border:1px solid #171717;background:transparent;border-radius:0;width:20px;height:20px;margin:0;display:grid;place-items:center}
.concept-b .piece-choice input:checked{background:#b70017;border-color:#b70017}
.concept-b .piece-choice input:checked:after{content:'×';font:bold 20px/1 'Courier New',monospace;color:#eee9de}
.size-options{display:flex;gap:5px;border:0;padding:0;margin:0;min-width:0;flex-shrink:0}
.size-options legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.size-option{position:relative;display:block;min-width:38px;min-height:40px}
.size-option input{position:absolute;inset:0;opacity:0;margin:0;width:100%;height:100%}
.size-option span{display:grid;place-items:center;border:1px solid #8c887f;min-width:38px;min-height:40px;padding:0 8px;font-size:10px;color:#555148;transition:background .15s,color .15s,border-color .15s}
.size-option:hover span{border-color:#111;color:#111}
.size-option input:checked+span{background:#171717;color:#e7e5dc;border-color:#171717}
.size-option input:focus-visible+span{outline:2px solid #b70017;outline-offset:3px}
.concept-b .piece-choice input:focus-visible{outline:2px solid #b70017;outline-offset:3px}
@media(pointer:fine){body.concept-b,.concept-b *,.concept-b dialog::backdrop{cursor:url('cursor-middle-2x.svg') 34 16,auto!important}.concept-b .fx-cursor{display:none!important}}
@media(max-width:760px){.concept-b .piece-row{gap:10px;padding:15px 0;flex-wrap:wrap}.concept-b .piece-choice{font-size:10px;min-height:44px;min-width:110px}.size-option,.size-option span{min-width:40px;min-height:44px}.size-options{gap:4px}.concept-b .detail-info{padding:22px 16px}}

.concept-b #look-dialog>.titlebar{position:sticky;top:0;z-index:5}

/* Article microsites live within the appearance window. */
.concept-b .piece-row{display:flex;flex-wrap:wrap;column-gap:12px;row-gap:8px;padding:16px 0 10px}
.concept-b .piece-open{width:100%;display:flex;justify-content:space-between;gap:10px;border:0;background:none;padding:8px 0;text-align:left;font-size:8px;color:#635e55;text-decoration:none;min-height:32px}
.concept-b .piece-open:hover,.concept-b .piece-open:focus-visible{color:#b70017;text-decoration:underline;text-underline-offset:3px}
.article-view{background:#e7e5dc}.article-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 18px;border-bottom:1px solid #111;font-size:9px;background:#e7e5dc}.article-back{border:0;background:none;padding:10px 0;text-align:left;font-size:9px;min-height:40px}.article-back:hover{text-decoration:underline;text-underline-offset:3px}.article-hero{padding:20px 25px;background:#b70017;color:#111;position:relative;overflow:hidden}.article-hero-top,.article-hero-bottom{display:flex;justify-content:space-between;gap:12px;font-size:9px;position:relative;z-index:1}.article-hero h2{font:700 110px/1 RedMoonBlackletter,Georgia,serif;letter-spacing:-3px;margin:25px 0 0;position:relative;z-index:1}.article-hero h2 sup{font:10px 'Courier New',monospace;vertical-align:top;display:inline-block;margin:10px}.article-cross{position:absolute;right:20px;top:70px;font:100px/1 Arial,sans-serif;opacity:.2}.article-asset{border:1px solid currentColor;aspect-ratio:2.4;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:25px;margin:20px 0;opacity:.6;background:linear-gradient(90deg,transparent calc(50% - .5px),#1b000b25 calc(50% - .5px),#1b000b25 calc(50% + .5px),transparent calc(50% + .5px))}.article-asset>span{font:italic 45px Georgia,serif}.article-asset small{font-size:8px;letter-spacing:1px;text-align:center;padding:0 10px}.article-hero-bottom{align-items:flex-end;padding:5px 0}.article-hero-bottom strong{font:900 27px/1.1 Arial,sans-serif;letter-spacing:-1px}.article-theme-1{background:#151515;color:#e7e5dc}.article-theme-1 h2{font-family:Arial,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-8px}.article-theme-2{background:#e7e5dc;color:#151515;border-bottom:1px solid #111}.article-theme-2 h2{font-style:italic;font-family:Georgia,serif;font-weight:400}.article-theme-3{background:#b70017;color:#e7e5dc}.article-theme-3 .article-asset{border-style:dashed}.article-tabs{display:flex;border-bottom:1px solid #111;background:#d2d0c7}.article-tabs button{flex:1;border:0;border-right:1px solid #888;background:none;padding:18px 8px;font-size:9px;min-height:48px}.article-tabs button:last-child{border-right:0}.article-tabs button[aria-selected="true"]{background:#151515;color:#eee9de}.article-content{padding:28px 30px}.article-content h3{font:700 54px/1 RedMoonBlackletter,Georgia,serif;letter-spacing:-1px;margin:20px 0 25px}.story-placeholder{max-width:530px;border-top:1px solid #aaa;padding:20px 0 0}.story-placeholder>span{font-size:8px;letter-spacing:1px}.story-placeholder p{font-size:12px;line-height:1.8;color:#6b655c;max-width:440px}.story-placeholder>div{display:grid;gap:9px;margin:20px 0 0}.story-placeholder i{height:5px;background:#d3d0c6;width:100%}.story-placeholder i:nth-child(2){width:90%}.story-placeholder i:nth-child(3){width:65%}.article-specs{margin:0;font-size:10px}.article-specs>div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #aaa;padding:17px 0;line-height:1.5}.article-specs dd{margin:0;color:#6b655c;text-align:right}.article-detail-assets{display:flex;gap:12px;margin-top:15px}.article-detail-assets>span{flex:1;aspect-ratio:1.8;border:1px dashed #aaa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;font-size:11px;color:#6b655c}.article-detail-assets small{font-size:7px}.article-film{aspect-ratio:16/9;background:#151515;color:#e7e5dc;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px}.article-film>span{font-size:45px;color:#b70017}.article-film small{font-size:8px;text-align:center;padding:15px}.article-select{border-top:1px solid #111;background:#d2d0c7;padding:22px 30px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.article-select p{font-size:9px;margin:10px 0 0}.article-save{grid-column:1/-1;padding:18px;background:#151515;color:#e7e5dc;border:0;font:10px 'Courier New',monospace;text-align:left;min-height:48px}.article-save:hover{background:#b70017}.article-feedback{grid-column:1/-1;color:#a00013;min-height:12px}.article-prototype-note{grid-column:1/-1;font-size:8px;color:#686258}.article-feedback:empty{display:none}
@media(max-width:760px){.concept-b .piece-row{gap:8px}.concept-b .piece-open{font-size:7px;min-height:40px}.article-nav{padding:5px 12px;font-size:8px}.article-back{font-size:8px}.article-hero{padding:18px 16px}.article-hero-top,.article-hero-bottom{font-size:7px;gap:8px}.article-hero h2{font-size:72px;letter-spacing:-2px;margin-top:30px}.article-theme-1 h2{font-size:65px;letter-spacing:-5px}.article-asset{aspect-ratio:3/4;gap:30px;margin:20px 0}.article-asset>span{font-size:36px}.article-asset small{font-size:7px;line-height:1.6}.article-hero-bottom{flex-direction:column;align-items:flex-start;gap:10px}.article-hero-bottom strong{font-size:25px}.article-tabs button{font-size:7px;padding:16px 4px;min-height:48px}.article-content{padding:25px 18px}.article-content h3{font-size:43px}.story-placeholder p{font-size:11px}.article-specs{font-size:8px}.article-specs>div{gap:10px}.article-detail-assets>span{aspect-ratio:1;font-size:9px}.article-detail-assets small{font-size:6px}.article-select{padding:20px 16px;grid-template-columns:1fr;gap:15px}.article-sizes{justify-content:flex-start}.article-save{font-size:10px}.article-select .eyebrow{font-size:9px}}
.article-nav{position:sticky;top:32px;z-index:4}
@media(max-width:760px){.article-nav{top:33px}}

/* Large, unmistakable piece entry points. */
.concept-b .piece-choice{gap:12px;min-height:52px}
.concept-b .piece-choice input{width:32px;height:32px;min-width:32px;border-width:2px}
.concept-b .piece-choice input:checked:after{font-size:29px}
.concept-b .piece-open{width:100%;min-height:54px;padding:0 10px;display:flex;justify-content:flex-end;align-items:center;color:#151515;border:1px solid #a5a197;background:transparent;transition:background .18s,color .18s,border-color .18s}
.piece-open-arrow{font:48px/1 Arial,sans-serif;transition:rotate .2s,translate .2s}
.concept-b .piece-open:hover,.concept-b .piece-open:focus-visible{background:#b70017;border-color:#b70017;color:#eee9de;text-decoration:none}
.concept-b .piece-open:hover .piece-open-arrow{rotate:45deg;translate:-3px 0}

/* Each article is an independent small site within the shared shell. */
.micro-site{font:11px 'Courier New',monospace}.micro-placeholder{min-height:130px;border:1px dashed currentColor;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;position:relative;overflow:hidden}.micro-placeholder small{font:8px 'Courier New',monospace;letter-spacing:.6px;text-align:center;padding:0 10px}.placeholder-mark{font:35px/1 'Courier New',monospace;opacity:.4}.micro-specs{margin:20px 0;font-size:9px}.micro-specs>div{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-top:1px solid #aaa5}.micro-specs dd{margin:0}.copy-lines{display:grid;gap:10px;margin:25px 0}.copy-lines i{height:5px;width:95%;background:currentColor;opacity:.15}.copy-lines i:nth-child(2){width:83%}.copy-lines i:nth-child(3){width:60%}.micro-film{aspect-ratio:16/9;background:#111;color:#e7e5dc}.micro-site details>summary{cursor:inherit;list-style:none;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:15px}.micro-site summary::-webkit-details-marker{display:none}
/* 01 — a stark, red editorial cover. */
.micro-editorial{background:#b70017;color:#111}.editorial-meta{display:flex;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #111;font-size:9px}.editorial-meta>span:first-child{font-weight:900;font-family:Arial,sans-serif}.editorial-cover{min-height:540px;position:relative;padding:20px;overflow:hidden}.editorial-word{font:900 clamp(70px,10vw,140px)/.9 Arial,sans-serif;letter-spacing:-.09em;position:relative;z-index:2}.editorial-number{position:absolute;right:5px;bottom:30px;font:italic 230px/.9 Georgia,serif;opacity:.18}.editorial-product{position:absolute;top:95px;left:28%;right:9%;height:330px;color:#35000a;background:#ac0014;border-style:solid;transform:rotate(-7deg)}.editorial-cover h2{font:700 78px/.9 RedMoonBlackletter,Georgia,serif;letter-spacing:-2px;margin:170px 0 30px;position:relative;z-index:2}.editorial-cover-note{display:flex;justify-content:space-between;border-top:1px solid #111;padding-top:15px;font-size:8px;position:relative;z-index:2}.editorial-body{padding:0 25px 20px}.editorial-story{border-top:1px solid #111}.editorial-story summary{font:900 43px/1 Arial,sans-serif;letter-spacing:-2px;padding:20px 0}.editorial-story-content{padding:15px 0 25px;max-width:480px;font-size:9px}.editorial-spec{border-top:1px solid #111}.editorial-spec summary{font-size:10px}.editorial-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.micro-editorial .article-select{background:#111;color:#e7e5dc}.micro-editorial .size-option span{border-color:#777;color:#e7e5dc}.micro-editorial .size-option input:checked+span{background:#e7e5dc;color:#111}.micro-editorial .article-save{border:1px solid #e7e5dc;background:#b70017}.micro-editorial .article-prototype-note{color:#aaa}
/* 02 — a classified listing, deliberately plain and information-heavy. */
.micro-classified{background:#f0eee6;color:#222;padding:0 24px;font-family:Georgia,serif}.classified-mast{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #aaa;padding:24px 0;color:#413387}.classified-mast strong{font-size:29px;font-weight:400}.classified-mast>span{font-size:11px}.classified-crumb{display:flex;gap:10px;padding:15px 0;color:#413387;font:10px 'Courier New',monospace}.classified-heading{border-top:1px solid #aaa;padding:15px 0}.classified-post{font:8px 'Courier New',monospace;color:#666}.classified-heading h2{font:bold 33px/1.1 Georgia,serif;margin:15px 0}.classified-heading h2 span{font-weight:400;color:#777}.classified-heading>span:last-child{font-size:9px}.classified-body{display:grid;grid-template-columns:1.3fr 1fr;gap:25px;padding:20px 0}.classified-main{min-height:300px;background:#d9d6cd;border:1px solid #b6b1a5;color:#777}.classified-views{display:flex;gap:5px;margin-top:8px}.classified-views button{background:#f0eee6;border:1px solid #aaa;flex:1;padding:10px 4px;font:9px Georgia,serif;color:#413387}.classified-views button.selected{border:2px solid #413387;padding:9px 3px;background:#e5e0ef}.classified-info h3,.classified-description h3{font:700 18px Georgia,serif;margin:0 0 20px}.classified-info .micro-specs{font:10px/1.5 Georgia,serif}.classified-id{font:9px/1.8 'Courier New',monospace;background:#e5e2d8;padding:15px;border:1px solid #bcb7ac}.classified-description{grid-column:1/-1;border-top:1px solid #aaa;padding:20px 0;color:#555}.classified-description details{color:#413387}.micro-classified .article-select{margin:0 -24px;background:#e4e0d4;font-family:'Courier New',monospace}.micro-classified .article-save{background:#413387}.micro-classified .size-option input:checked+span{background:#413387;border-color:#413387}.classified-footer{text-align:center;padding:15px;font:9px Georgia,serif;color:#413387}
/* 03 — a quiet object campaign with gallery and editorial columns. */
.micro-carry{background:#f4f1e9;color:#111}.carry-mast{display:flex;justify-content:space-between;padding:22px;border-bottom:1px solid #111;font-size:9px}.carry-mast>span:first-child{font:bold 22px/.6 Arial,sans-serif;letter-spacing:-3px}.carry-intro{text-align:center;padding:30px 20px 20px}.carry-intro>span{font-size:8px;letter-spacing:1px}.carry-intro h2{font:italic 110px/1 Georgia,serif;letter-spacing:-7px;margin:20px 0}.carry-intro h2>span{vertical-align:top;font:12px Arial,sans-serif;letter-spacing:0;margin:10px}.carry-intro p{font-size:9px}.carry-gallery{padding:0 22px}.carry-main{aspect-ratio:1.8;background:#e4e0d5;color:#8f897d;border:none;min-height:280px}.carry-main .placeholder-mark{font-size:70px;font-weight:400}.carry-gallery-controls{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #111;font-size:8px}.carry-gallery-controls button{width:40px;height:40px;background:transparent;border:0;font-size:9px}.carry-gallery-controls button.selected{background:#111;color:#f4f1e9}.carry-columns{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:35px 25px}.carry-columns h3{font:italic 65px/.95 Georgia,serif;letter-spacing:-3px;margin:20px 0 30px}.carry-copy-label{font-size:8px}.carry-columns .micro-specs{margin:22px 0 0}.carry-film{margin:0 25px 25px;border-top:1px solid #111}.carry-film summary{font-size:9px}.micro-carry .article-select{background:#f4f1e9}.micro-carry .article-save{background:transparent;color:#111;border:1px solid #111}.micro-carry .article-save:hover{background:#111;color:#eee}
/* 04 — a black technical terminal with its own command navigation. */
.micro-object{background:#0e0e0e;color:#b70017}.object-mast{display:flex;justify-content:space-between;padding:18px;font-size:8px;border-bottom:1px solid #b7001755}.object-banner{display:flex;justify-content:space-between;font:900 clamp(50px,8vw,105px)/1 Arial,sans-serif;letter-spacing:-6px;padding:20px 18px;border-bottom:1px solid #b7001755}.object-banner>span:last-child{font-style:italic;color:#e7e5dc}.object-id{display:flex;justify-content:space-between;align-items:center;padding:18px}.object-id h2{font:700 35px RedMoonBlackletter,Georgia,serif;color:#e7e5dc;margin:0}.object-id>span{font-size:8px;line-height:1.6;text-align:right}.object-console{display:grid;grid-template-columns:2fr 1fr;border-top:1px solid #b7001755;border-bottom:1px solid #b7001755;margin:0 18px}.object-diagram{position:relative;min-height:280px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(#b700171a 1px,transparent 1px),linear-gradient(90deg,#b700171a 1px,transparent 1px);background-size:30px 30px}.object-orbit{position:absolute;width:190px;height:190px;border:1px solid #b70017;border-radius:50%}.orbit-one{transform:rotate(-30deg) scaleX(.45)}.orbit-two{transform:rotate(30deg) scaleX(.45)}.object-center{font-size:70px;color:#e7e5dc;z-index:1}.object-axis{position:absolute;font-size:8px}.axis-top{top:8px;left:50%}.axis-right{right:8px;top:50%}.object-diagram>small{position:absolute;bottom:12px;font-size:7px}.object-readout{border-left:1px solid #b7001755;padding:25px 18px;display:flex;flex-direction:column;gap:10px}.object-readout>span{font-size:7px}.object-readout strong{font-size:12px;color:#e7e5dc;word-break:break-word;margin-bottom:20px}.object-commands{display:flex;padding:15px 18px;gap:7px;border-bottom:1px solid #b7001755}.object-commands button{flex:1;background:none;border:1px solid #b70017;color:#b70017;min-height:45px;font:9px 'Courier New',monospace}.object-commands button[aria-selected="true"]{background:#b70017;color:#0e0e0e}.object-output{padding:22px 20px;min-height:230px}.object-output>section>span{font-size:9px}.object-output h3{font:700 45px/1 RedMoonBlackletter,Georgia,serif;color:#e7e5dc;margin:25px 0}.object-output .micro-specs{color:#c3bfb4}.object-output .copy-lines{color:#e7e5dc}.micro-object .article-select{background:#0e0e0e;border-color:#b70017}.micro-object .size-option span{color:#b70017;border-color:#b70017}.micro-object .size-option input:checked+span{background:#b70017;color:#0e0e0e;border-color:#b70017}.micro-object .article-save{background:#b70017;color:#0e0e0e}.micro-object .article-prototype-note{color:#858077}.object-footer{display:flex;justify-content:space-between;padding:15px 20px;font-size:8px;border-top:1px solid #b7001755}
@media(max-width:760px){.concept-b .piece-choice{min-height:52px}.concept-b .piece-choice input{width:34px;height:34px;min-width:34px}.concept-b .piece-open{min-height:58px}.piece-open-arrow{font-size:51px}.editorial-meta{padding:18px 14px;font-size:7px}.editorial-cover{min-height:460px;padding:20px 14px}.editorial-word{font-size:65px}.editorial-product{top:85px;left:23%;right:8%;height:270px}.editorial-cover h2{font-size:62px;margin:175px 0 28px}.editorial-number{font-size:180px;bottom:80px}.editorial-cover-note{font-size:7px}.editorial-body{padding:0 16px 15px}.editorial-story summary{font-size:31px;letter-spacing:-1px}.editorial-spec summary{font-size:8px}.editorial-details{gap:8px}.micro-classified{padding:0 15px}.classified-mast{padding:20px 0;flex-direction:column;align-items:flex-start;gap:10px}.classified-mast strong{font-size:29px}.classified-crumb{font-size:8px;gap:6px;flex-wrap:wrap}.classified-heading h2{font-size:25px}.classified-body{grid-template-columns:1fr;gap:22px}.classified-main{min-height:300px}.classified-description{grid-column:auto}.micro-classified .article-select{margin:0 -15px}.carry-mast{padding:20px 14px;font-size:7px;gap:10px;align-items:center}.carry-intro{padding:30px 12px 20px}.carry-intro h2{font-size:90px;letter-spacing:-5px}.carry-gallery{padding:0 14px}.carry-main{aspect-ratio:3/4;min-height:280px}.carry-columns{grid-template-columns:1fr;gap:30px;padding:30px 17px}.carry-columns h3{font-size:58px}.carry-film{margin:0 17px 20px}.carry-film summary{font-size:8px}.object-mast{font-size:6px;padding:16px 12px;gap:10px}.object-banner{font-size:44px;letter-spacing:-3px;padding:20px 12px}.object-id{padding:16px 12px}.object-id h2{font-size:29px}.object-console{grid-template-columns:1fr;margin:0 12px}.object-diagram{min-height:260px}.object-readout{border-left:0;border-top:1px solid #b7001755;display:grid;grid-template-columns:1fr 1fr;padding:18px 12px}.object-readout strong{margin:0}.object-commands{padding:14px 12px;gap:4px}.object-commands button{font-size:7px}.object-output{padding:22px 14px}.object-output h3{font-size:38px}.micro-site .article-select{padding:20px 16px}}

/* Procedural low-poly moon: geometry, craters and flat lighting, no texture image. */
.index-masthead{position:relative}.index-masthead h1,.masthead-side{z-index:2}.moon-object{position:absolute;left:63%;top:51%;width:clamp(170px,25vw,370px);aspect-ratio:1;transform:translate(-50%,-50%);z-index:1;touch-action:none;outline-offset:5px;user-select:none;-webkit-user-select:none}.moon-object canvas{width:100%;height:100%;display:block;image-rendering:pixelated;filter:drop-shadow(14px 20px 13px #41000b1a)}.moon-object>span{position:absolute;bottom:-8px;left:0;width:100%;text-align:center;font-size:7px;letter-spacing:1px;color:#9e0013;pointer-events:none}.moon-object.dragging>span{color:#111}.moon-unavailable{border:1px dashed #b70017;border-radius:50%}
@media(max-width:1000px) and (min-width:761px){.moon-object{left:64%;width:clamp(150px,22vw,220px)}}
@media(max-width:760px){.moon-object{left:auto;right:-3px;top:90px;width:clamp(70px,22vw,135px);transform:none}.moon-object>span{font-size:5px;letter-spacing:.1px;bottom:-3px}.masthead-side p{visibility:hidden}.moon-object canvas{filter:none}}
.moon-object{z-index:3}

@media(max-width:760px){.moon-object>span{font-size:0;bottom:-4px}.moon-object>span:after{content:'↔ DRAG';font-size:6px;letter-spacing:.5px}}
.moon-object:focus{outline:none}.moon-object:focus-visible{outline:1px dashed #b70017;outline-offset:4px}

/* Lunar scale and explorable article cards */
.concept-b .moon-object{width:clamp(260px,34vw,510px)}
.concept-b #pieces .piece-row{display:grid;grid-template-columns:58px 1fr;gap:12px 18px;padding:26px 12px;cursor:inherit;transition:background .18s,color .18s;position:relative}
.concept-b #pieces .piece-row:hover{background:#c0001b14;color:#b60019}
.concept-b #pieces .piece-choice{grid-column:1;grid-row:1 / 3;align-self:center;margin:0;padding:0}
.concept-b #pieces .piece-choice input{width:48px;height:48px;margin:0}
.concept-b #pieces .piece-title{grid-column:2;text-align:left;font-family:RedMoonBlackletter,Georgia,serif;font-weight:700;font-size:clamp(30px,3vw,46px);line-height:1.1;background:none;border:0;padding:0;color:inherit;min-height:0}
.concept-b #pieces .piece-price{grid-column:2;font-size:14px;letter-spacing:.06em}
.concept-b #pieces .size-options{grid-column:2;justify-content:flex-start;margin-top:10px}
.concept-b #pieces .size-options[hidden]{display:none!important}
.concept-b .article-price{font-size:24px;font-weight:bold}
.bag-total{display:flex;justify-content:space-between;gap:20px;padding:26px 0;border-top:2px solid currentColor}
@media(min-width:761px) and (max-width:1000px){.concept-b .moon-object{width:30vw}}
@media(max-width:760px){.concept-b .moon-object{width:clamp(110px,32vw,160px);right:0;top:80px}.concept-b #pieces .piece-row{grid-template-columns:48px 1fr;gap:10px 12px;padding:22px 8px}.concept-b #pieces .piece-title{font-size:32px}.concept-b #pieces .piece-choice input{width:42px;height:42px}}
.index-masthead .blood-word{position:relative}.blood-ink{position:absolute;inset:0;color:#bb001c;pointer-events:none;mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-image:linear-gradient(transparent,transparent);-webkit-mask-image:linear-gradient(transparent,transparent)}

/* Stable vector clipping avoids replacing/decoding a mask image every paint frame. */
.blood-ink{mask-image:none;-webkit-mask-image:none}

/* Keep the smaller hero moon prominent and away from the right edge. */
.moon-object>span{display:none!important}
@media(min-width:761px) and (max-width:1200px){.concept-b .moon-object{left:66%;width:40vw}}
@media(max-width:760px){.concept-b .moon-object{width:clamp(145px,40vw,300px);right:6%;top:70px}}
@media(max-width:480px){.concept-b .index-masthead{min-height:340px;box-sizing:border-box}.concept-b .moon-object{top:165px;right:5%;width:clamp(145px,40vw,190px)}}

/* Reserve the size controls' footprint so selecting a piece never resizes its card. */
.concept-b #pieces .piece-title{font-size:clamp(24px,2.2vw,30px)}
.concept-b #pieces .size-options{grid-row:3;min-height:44px}
.concept-b #pieces .size-options[hidden]{display:flex!important;visibility:hidden;pointer-events:none}
.index-stamp{display:flex;flex-direction:column;align-items:center;gap:4px}
.index-stamp small{font:italic .22em/1 Georgia,serif;letter-spacing:.02em}
@media(max-width:760px){.concept-b #pieces .piece-title{font-size:25px}}
/* Compact look overview; long article microsites keep their own modal scroll. */
html:has(#look-dialog[open]),body:has(#look-dialog[open]){overflow:hidden;overscroll-behavior:none}
#look-dialog{overscroll-behavior:contain}
.concept-b #look-dialog:not(.in-article){--look-height:min(680px,calc(100dvh - 94px));width:min(1100px,96vw);max-height:calc(100dvh - 32px)}
.concept-b .detail-layout{grid-template-columns:calc(var(--look-height)*.75) minmax(0,1fr);align-items:stretch}
.concept-b .detail-placeholder{height:var(--look-height);min-height:0;aspect-ratio:3/4;gap:35px}
.concept-b .detail-info{padding:20px 24px;min-width:0;display:flex;flex-direction:column;justify-content:center}
.concept-b .detail-info h2{font-size:30px;margin:12px 0}
.concept-b .detail-info>p{margin:6px 0;font-size:9px;line-height:1.5}
.concept-b #pieces{margin-top:12px}
.concept-b #pieces .piece-row{grid-template-columns:40px minmax(0,1fr) 128px;grid-template-rows:auto auto;gap:4px 10px;padding:14px 0;min-height:76px;box-sizing:border-box}
.concept-b #pieces .piece-choice{grid-column:1;grid-row:1/3;min-width:0;min-height:40px}
.concept-b #pieces .piece-choice input{width:34px;height:34px;min-width:34px}
.concept-b #pieces .piece-title{grid-column:2;grid-row:1;font-size:25px;align-self:end}
.concept-b #pieces .piece-price{grid-column:2;grid-row:2;font-size:11px;align-self:start}
.concept-b #pieces .size-options{grid-column:3;grid-row:1/3;align-self:center;justify-content:flex-end;gap:4px;margin:0;min-height:40px}
.concept-b #pieces .size-option{flex:0 0 auto;min-width:38px;min-height:40px}
.concept-b #pieces .size-option span{min-width:38px;min-height:40px;padding:0 5px;box-sizing:border-box}
.concept-b .detail-info .piece-note{margin:10px 0 0;font-size:8px}
.concept-b .detail-info .add-selection{margin-top:10px;padding:14px}
.concept-b #selection-message{margin:5px 0 0;min-height:14px}
@media(min-width:761px) and (max-height:700px){.concept-b .detail-info{padding:12px 20px}.concept-b .detail-info h2{margin:8px 0;font-size:26px}.concept-b #pieces{margin-top:6px}.concept-b #pieces .piece-row{padding:8px 0;min-height:61px}.concept-b .detail-info>p{margin:4px 0}.concept-b .detail-info .add-selection{padding:12px}}
@media(max-width:1000px) and (min-width:761px){.concept-b #look-dialog:not(.in-article){--look-height:min(600px,calc(100dvh - 94px),60vw)}.concept-b .detail-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1fr)}.concept-b .detail-placeholder{height:auto;width:100%;align-self:start}.concept-b .detail-info{padding:16px}.concept-b #pieces .piece-row{grid-template-columns:34px minmax(0,1fr) 116px;column-gap:6px}.concept-b #pieces .piece-title{font-size:22px}.concept-b #pieces .size-option,.concept-b #pieces .size-option span{min-width:34px}}
@media(max-width:760px){.concept-b .detail-layout{grid-template-columns:1fr}.concept-b .detail-placeholder{height:auto;width:100%;aspect-ratio:3/4}.concept-b .detail-info{padding:22px 16px}.concept-b #pieces .piece-row{grid-template-columns:34px minmax(0,1fr);padding:12px 0;min-height:112px;gap:4px 10px}.concept-b #pieces .piece-choice{grid-row:1/3}.concept-b #pieces .size-options{grid-column:2;grid-row:3;justify-content:flex-start;min-height:40px}.concept-b #pieces .piece-title{font-size:25px}.concept-b #pieces .size-option,.concept-b #pieces .size-option span{min-width:40px;min-height:40px}}
/* Roadside atlas, built as vector game scenery. */
html:has(#city-map[open]),body:has(#city-map[open]){overflow:hidden;overscroll-behavior:none}
.city-pin{position:absolute;right:-7%;top:64%;display:flex;align-items:center;gap:6px;border:0;background:#e7e5dce8;padding:6px;color:#b70017;transform:rotate(-8deg);font:9px/1.2 'Courier New',monospace;letter-spacing:.6px;text-align:left;z-index:4}
.city-pin svg{width:21px;height:28px;flex:none}.city-pin:hover{background:#b70017;color:#e7e5dc}.city-pin:focus-visible{outline:2px dashed #b70017;outline-offset:4px}
#city-map{width:min(800px,94vw);max-height:92dvh;padding:0;background:#dfdbcf;color:#171717;border:2px outset #eee;overscroll-behavior:contain;box-shadow:10px 10px #17000988}#city-map::backdrop{background:#170009a8;backdrop-filter:blur(5px)}#city-map>.titlebar{position:sticky;top:0;z-index:5}
.city-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 12px;border-bottom:1px solid #171717}.city-heading>div>span{font-size:9px;letter-spacing:1px}.city-heading h2{font:700 clamp(32px,5vw,54px)/1.1 RedMoonBlackletter,Georgia,serif;margin:7px 0 0}.city-status{text-align:right;font-size:9px;line-height:1.8;color:#b70017}.city-cartography{position:relative;isolation:isolate}.city-drawing{display:block;width:100%;height:auto}.city-place{position:absolute;background:#dfdbcf;border:1px solid #211b1b;padding:7px 8px;font:10px/1.2 'Courier New',monospace;white-space:nowrap;box-shadow:3px 3px #211b1b;color:#211b1b;transform:translateX(-50%)}.city-place span{color:#b70017;margin-right:4px}.city-place:hover,.city-place.selected{background:#b70017;color:#e7e5dc}.city-place:hover span,.city-place.selected span{color:inherit}.place-dark{left:26%;top:49%}.place-church{left:47%;top:40%}.place-gas{left:70%;top:46%}.place-arena{left:61%;top:89%}.city-readout{padding:15px 24px;min-height:79px;border-top:1px solid #171717;box-sizing:border-box}.city-coordinate{color:#b70017;font-size:10px}.city-readout p{font-size:11px;margin:8px 0 0}.city-map-footer{display:flex;justify-content:space-between;padding:12px 24px;background:#171717;color:#dfdbcf;font-size:8px;letter-spacing:.6px}
@media(max-width:760px){.city-pin{right:-3%;top:65%;font-size:7px;gap:3px;padding:4px}.city-pin svg{width:17px;height:22px}.city-heading{padding:16px 14px}.city-status{font-size:7px}.city-place{font-size:7px;padding:6px 4px;box-shadow:2px 2px #211b1b}.city-place span{margin-right:1px}.city-readout{padding:14px}.city-map-footer{padding:12px;font-size:6px;letter-spacing:0}}

/* Projected surface marker: position comes from the moon's rotation matrix. */
.concept-b .moon-object .city-pin{right:auto;bottom:auto;left:65%;top:45%;transform:translate(-50%,-90%);background:transparent;color:#eee5d4;text-shadow:1px 1px #28000b,-1px -1px #28000b;gap:4px;padding:4px;filter:drop-shadow(1px 2px 0 #35000b);font-size:8px}
.concept-b .moon-object .city-pin svg{width:20px;height:27px;color:#eee5d4}
.concept-b .moon-object .city-pin:hover{color:white;filter:drop-shadow(0 0 4px #ff8899)}
@media(max-width:760px){.concept-b .moon-object .city-pin{font-size:6px;gap:2px}.concept-b .moon-object .city-pin svg{width:15px;height:20px}}

/* Quiet navigation map: abstract blocks, fine streets and local place labels. */
.city-place{border:0;box-shadow:none;background:transparent;padding:8px 5px;font:12px/1.2 Arial,sans-serif;color:#555650;text-shadow:0 1px #eeede8,1px 0 #eeede8,-1px 0 #eeede8}
.city-place span{font-size:12px;color:#a63747;margin-right:4px}
.city-place:hover,.city-place.selected{background:#ffffffed;border-radius:4px;color:#9b0018;box-shadow:0 1px 5px #0002;text-shadow:none}
.place-dark{left:29%;top:40%}.place-church{left:47%;top:34%}.place-gas{left:69%;top:41%}.place-arena{left:59%;top:78%}
.city-heading{padding:16px 24px}.city-heading h2{font-size:35px}.city-heading>div>span{font-size:8px}.city-status{font:9px Arial,sans-serif;color:#777}.city-readout{min-height:70px;background:#eeede8}.city-map-footer{background:#eeede8;color:#7d7e76;border-top:1px solid #dbdcd4}.city-coordinate{font-size:9px}
@media(max-width:760px){.city-place{font-size:9px;padding:8px 3px}.city-place span{font-size:9px;margin-right:2px}.city-heading h2{font-size:29px}.city-heading{padding:15px 14px}.city-status{font-size:7px}}

.checkout-summary{display:flex;justify-content:space-between;gap:15px}.checkout-total{font-size:18px;padding:20px 0;border-top:1px solid}.checkout-status{font-size:12px;line-height:1.5}.checkout:disabled{opacity:.5;cursor:default}.checkout:not(:disabled){background:#b70017;color:#eee}

.order-access-link{display:block;width:fit-content;margin:15px 0;padding:12px 0;color:inherit;border-bottom:1px solid;text-decoration:none;font-size:12px}

/* Customer orders are always reachable from the main navigation. */
.concept-b .taskbar .orders-nav{display:flex;align-items:center;justify-content:center;gap:8px;height:34px;min-width:100px;padding:0 14px;border:1px solid #555;background:#141414;color:#e7e5dc;text-decoration:none;flex-shrink:0}
.concept-b .orders-nav small{font:10px 'Courier New',monospace}
.concept-b .taskbar .orders-nav:hover,.concept-b .taskbar .orders-nav:focus-visible{background:#b70017;border-color:#b70017}
@media(max-width:760px){.concept-b .taskbar .orders-nav{min-width:0;flex:1;height:41px;gap:3px;flex-direction:column;padding:0 3px}.concept-b .orders-nav>span{font-size:14px}.concept-b .orders-nav small{font-size:7px}}

/* Collection identities from the 7R production table. */
.named-look .release-name{font-size:clamp(26px,3.7vw,58px);line-height:1.03;letter-spacing:-.055em;overflow-wrap:normal;min-width:0}
.named-look .release-state{padding:0 12px;line-height:1.5;white-space:normal}
.concept-b .card-meta>span:first-child{line-height:1.5}
.concept-b #detail-heading{font-size:clamp(23px,2.4vw,32px);line-height:1.05;overflow-wrap:normal}
@media(max-width:760px){.named-look .release-name{font-size:clamp(20px,5.5vw,40px);letter-spacing:-.045em}.named-look{min-height:92px}.concept-b #detail-heading{font-size:27px}}

.alter-ego-story{font:12px/1.7 'Courier New',monospace;max-width:54ch;padding:15px 0}.alter-ego-story strong{font-weight:normal;font-size:11px}.alter-ego-story p{margin:12px 0}.micro-object .alter-ego-story{color:#e7e5dc}
/* Always-visible radio transport and customer order access. */
.concept-b .motion-toggle{display:none!important}.concept-b .systembar{gap:20px}.header-radio{display:flex;align-items:center;gap:12px;margin-left:12px;min-width:0}.radio-transport{display:flex;gap:3px;flex-shrink:0}.radio-transport button{width:30px;height:30px;min-height:30px;display:grid;place-items:center;border:1px solid #99968d;background:transparent;color:#171717;padding:0;font:13px Arial,sans-serif}.radio-transport button:hover,.radio-transport button:focus-visible{background:#b70017;border-color:#b70017;color:#e7e5dc}.radio-readout{width:190px;min-width:0;font-size:10px;line-height:1.4}.radio-readout>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-readout small{display:block;font-size:7px;color:#777;letter-spacing:.4px}.header-radio.playing .radio-readout small{color:#a80019}.header-orders{border:1px solid #88857e;padding:9px 12px;color:#171717;text-decoration:none;white-space:nowrap;font-size:9px}.header-orders:hover{background:#b70017;color:#e7e5dc;border-color:#b70017}
/* A late-90s CRT cabinet with a curved 4:3 tube, physical channel keys and speaker grille. */
.concept-b .tv-window{max-width:860px;background:#e7e5dc}.concept-b .tv-heading{padding:20px 24px}.concept-b .tv-heading strong{font-size:44px}.crt-cabinet{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:19px;margin:0 20px 22px;padding:25px 22px 14px;border:6px outset #bdb9af;border-radius:22px 22px 28px 28px;background:linear-gradient(135deg,#d0cdc4,#aaa69c 65%,#c8c4b9);box-shadow:0 9px 0 #79766d,0 15px 12px #0003,inset 0 0 0 1px #e4e0d5;position:relative}.crt-picture{min-width:0}.concept-b .crt-cabinet .tv-screen{aspect-ratio:4/3;max-height:none;margin:0;background:#141919;border:13px solid #302f2b;border-radius:10% / 12%;box-shadow:0 0 0 2px #747169,0 0 0 4px #969187,inset 0 0 45px 12px #000;color:#bdc9ab;overflow:hidden;isolation:isolate}.crt-cabinet .tv-screen:before{content:'';position:absolute;inset:0;z-index:4;pointer-events:none;background:repeating-linear-gradient(0deg,#0003 0px,#0003 1px,transparent 1px,transparent 3px),radial-gradient(ellipse at center,transparent 40%,#000b);border-radius:inherit}.crt-cabinet .tv-screen:after{content:'';position:absolute;inset:0;z-index:5;pointer-events:none;background:linear-gradient(145deg,#fff1,transparent 28%,transparent 65%,#fff05);border-radius:inherit}.crt-cabinet .tv-osd{color:#a3cc87;text-shadow:0 0 5px #9bd07c99;font:14px 'Courier New',monospace}.crt-cabinet .tv-placeholder{inset:22% 5%;gap:15px;font-size:13px}.crt-cabinet .tv-placeholder .play-symbol{font-size:54px;filter:drop-shadow(0 0 3px #8aab7b)}.crt-cabinet .tv-placeholder small{color:#8f9c86;font-size:8px;letter-spacing:1px}.crt-cabinet .tv-time{font-size:11px;color:#a3cc87}.crt-badge{display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:1px;color:#413e37;padding:14px 2px 0}.crt-badge strong{font:italic 20px Arial,sans-serif;letter-spacing:-2px}.crt-side{display:flex;align-items:center;flex-direction:column;gap:17px;padding-top:5px;min-width:0}.crt-model{font-size:7px;line-height:1.8;letter-spacing:1px;text-align:center;color:#4e4b44}.crt-speaker{flex:1;min-height:55px;width:100%;border-radius:7px;background:repeating-linear-gradient(0deg,#514e46 0,#514e46 2px,#aaa69a 2px,#aaa69a 5px);box-shadow:inset 1px 1px 3px #0005}.crt-channel-controls{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%;text-align:center}.crt-channel-controls>span{grid-column:1/-1;font-size:7px;letter-spacing:1px}.crt-channel-controls button{border:2px outset #c9c5ba;min-height:35px;background:#a6a295;color:#292720;font:20px Arial,sans-serif;padding:0}.crt-channel-controls button:active{border-style:inset}.crt-power{border:2px outset #ccc8bc;border-radius:8px;background:#9b978a;color:#292720;font-size:7px;min-height:42px;width:100%;display:flex;align-items:center;justify-content:center;gap:6px}.crt-power i{width:5px;height:5px;background:#a6c78c;box-shadow:0 0 4px #b2e498}.crt-off .crt-power i{background:#582d27;box-shadow:none}.crt-off .tv-screen>*{visibility:hidden}.crt-off .tv-screen{background:#080909!important}.crt-cabinet.tuning .tv-screen:after{background:repeating-linear-gradient(25deg,#fff2 0 1px,#0004 2px 4px);opacity:.65}.concept-b #episodes{padding:5px 20px 15px}.concept-b #episodes button{font-size:10px}.tape-window.is-playing .tape-mechanism i{animation:orbit 3s linear infinite}
@media(min-width:761px) and (max-width:1050px){.concept-b .systembar .signal{display:none}.header-radio{margin-left:auto}.radio-readout{width:155px}}
@media(max-width:760px){.concept-b .systembar{height:87px;display:grid;grid-template-columns:1fr auto;grid-template-rows:35px 37px;gap:0 12px;padding:5px 12px 8px}.concept-b .systembar>.brand{grid-column:1;grid-row:1;justify-self:start}.concept-b .systembar>.signal,.concept-b .systembar>#clock{display:none}.header-orders{grid-column:2;grid-row:1;font-size:9px;padding:7px 10px;min-height:30px;align-self:center}.header-radio{grid-column:1/-1;grid-row:2;margin:0;gap:12px;width:100%;justify-content:space-between;border-top:1px solid #b8b5ab;padding-top:5px}.radio-readout{width:auto;flex:1;text-align:right}.radio-transport button{width:29px;height:29px;min-height:29px}.radio-readout>span{font-size:9px}.radio-readout small{font-size:6px}.crt-cabinet{grid-template-columns:minmax(0,1fr) 48px;gap:10px;margin:0 10px 20px;padding:15px 12px 10px;border-width:4px;border-radius:14px}.concept-b .crt-cabinet .tv-screen{border-width:7px}.crt-side{gap:10px;padding-top:0}.crt-model{font-size:5px;letter-spacing:.2px}.crt-speaker{min-height:30px}.crt-channel-controls{gap:4px}.crt-channel-controls button{font-size:16px;min-height:30px}.crt-channel-controls>span{font-size:5px;letter-spacing:.2px}.crt-power{font-size:5px;min-height:34px;gap:3px}.crt-power i{width:4px;height:4px}.crt-badge{font-size:5px;letter-spacing:.3px;padding-top:10px}.crt-badge strong{font-size:15px}.crt-cabinet .tv-osd{font-size:9px;top:9px;left:9px;right:9px}.crt-cabinet .tv-placeholder{font-size:8px;gap:8px}.crt-cabinet .tv-placeholder .play-symbol{font-size:30px}.crt-cabinet .tv-placeholder small{font-size:5px;letter-spacing:.3px}.crt-cabinet .tv-time{font-size:7px;bottom:8px;left:9px}.concept-b .tv-heading{padding:18px 15px}.concept-b .tv-heading strong{font-size:35px}.concept-b .tv-heading>span{font-size:7px}.concept-b #episodes{padding:0 10px 10px}.concept-b #episodes button{font-size:8px}.tape-selector{flex-wrap:wrap}}

.shipping-window-note{display:block;font:10px/1.5 'Courier New',monospace;color:inherit;opacity:.72;margin:9px 0}.concept-b .detail-info>.shipping-window-note{font-size:9px;margin:7px 0 0}.article-select .shipping-window-note{grid-column:1/-1;margin:0;font-size:10px}.micro-object .shipping-window-note{color:#e7e5dc}
/* Working desktop-style menus for the collection browser. */
.collection-menubar{position:relative;z-index:8;gap:0!important;padding:0!important;align-items:stretch}.collection-menu{position:relative}.collection-menu-trigger{border:0;background:transparent;color:inherit;padding:12px 16px;min-height:42px;font:11px 'Courier New',monospace}.collection-menu-trigger:hover,.collection-menu-trigger[aria-expanded="true"]{background:#171717;color:#e7e5dc}.collection-menubar>.right{align-self:center;margin-left:auto;padding:0 14px;font-size:10px}.collection-menu-panel{position:absolute;left:0;top:100%;min-width:210px;padding:4px;border:1px solid #171717;background:#d8d5cb;box-shadow:5px 5px #17171755}.collection-menu-panel[hidden]{display:none}.collection-menu-panel button,.collection-menu-panel a{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;text-decoration:none;text-align:left;border:0;background:transparent;color:#171717;padding:11px 12px;font:11px 'Courier New',monospace;min-height:42px;white-space:nowrap}.collection-menu-panel button:hover,.collection-menu-panel a:hover,.collection-menu-panel button:focus-visible,.collection-menu-panel a:focus-visible{background:#b70017;color:#e7e5dc;outline:0}.collection-menu-panel button.active{font-weight:bold}.collection-menu-panel button.active:before{content:'✓';margin-right:-12px}.collection-menu-panel hr{border:0;border-top:1px solid #99968d;margin:4px}.collection-look-menu{min-width:245px}.collection-tools{min-height:46px;display:flex;align-items:center}
@media(max-width:760px){.collection-menu-trigger{padding:10px 12px;font-size:10px}.collection-menubar>.right{padding:0 9px;font-size:8px}.collection-menu-panel{min-width:175px}.collection-look-menu{left:auto;right:-60px;min-width:230px}.collection-menu-panel button,.collection-menu-panel a{font-size:10px;padding:11px 9px}}

/* Mobile hero: moon sits behind the title at the same height. */
@media(max-width:760px){.concept-b .index-masthead{isolation:isolate}.concept-b .index-masthead h1{position:relative;z-index:2}.concept-b .moon-object{top:70px;right:5%;z-index:1}.concept-b .masthead-side{position:relative;z-index:2}}
@media(max-width:480px){.concept-b .moon-object{top:70px}.concept-b .index-masthead{min-height:300px}}

/* Broadcast, radio and game share the same card layout. */
.index-extras{grid-template-columns:repeat(3,minmax(0,1fr))}
.index-extras .game-tile{text-align:left;min-height:300px;padding:20px;border:1px solid #111;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:#191719;color:#e7e5dc;text-decoration:none}
.index-extras .game-tile>span:first-child{font-size:9px;letter-spacing:1px;position:relative;z-index:2}
.index-extras .game-tile strong{font-size:clamp(30px,4.2vw,65px);line-height:.95;letter-spacing:-.06em}
.index-extras .game-tile strong>span{font-size:.65em;margin-left:.15em}
.index-extras .game-tile small{position:relative;z-index:2;font-size:8px}
.game-orbit{position:absolute;right:-45px;top:30px;width:230px;height:230px;border:1px solid #b70017;border-radius:50%;box-shadow:0 0 0 18px #b7001718,0 0 0 44px #b7001710;background:radial-gradient(circle at 35% 30%,#b7001755,transparent 65%);opacity:.7}
.game-tile:hover,.game-tile:focus-visible{background:#300611}
@media(max-width:760px){.index-extras{grid-template-columns:repeat(2,minmax(0,1fr))}.index-extras .game-tile{min-height:230px;padding:12px}.index-extras .game-tile>span:first-child{font-size:7px}.index-extras .game-tile strong{font-size:clamp(25px,6.4vw,44px)}.index-extras .game-tile small{font-size:6px}.game-orbit{width:160px;height:160px;right:-55px}}

/* Locally hosted video inside the CRT cabinet. */
.concept-b .crt-cabinet .tv-screen.has-reel{height:clamp(480px,72svh,720px);aspect-ratio:auto;background:#080808}
#tv-reel{position:absolute;inset:0;display:block;width:100%;height:100%;margin:auto;border:0;background:#080808;object-fit:contain;z-index:3}
.has-reel .tv-osd{z-index:4;pointer-events:none}
.has-reel :is(.tv-cross,.tv-time){display:none}


@media(max-width:760px){.concept-b .crt-cabinet .tv-screen.has-reel{height:clamp(430px,65svh,600px)}}

/* Early discovery without burying the collection beneath tall media panels. */
.collection-entry{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;border-top:1px solid #696969;font-size:9px}
.collection-entry button{background:#b70017;color:#fff;border:1px solid #b70017;padding:13px 17px;min-height:44px;font:10px 'Courier New',monospace;text-align:left}
.collection-entry button:hover,.collection-entry button:focus-visible{background:#f2f0e9;color:#111;border-color:#f2f0e9}
.index-extras{margin:0 0 20px;grid-template-columns:repeat(3,minmax(0,1fr))}
.index-extras>button,.index-extras>.game-tile{min-height:220px;padding:16px}
.index-extras strong{font-size:clamp(34px,5vw,70px)}
.index-extras .game-tile strong{font-size:clamp(30px,4.2vw,58px)}
.index-extras strong span{font-size:.65em;margin-left:.15em}
@media(max-width:760px){.collection-entry{font-size:7px;gap:8px}.collection-entry button{font-size:8px;padding:11px 10px}.index-extras{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:16px}.index-extras>button,.index-extras>.game-tile{min-height:145px;padding:9px 7px}.index-extras strong{font-size:clamp(24px,6.7vw,42px);letter-spacing:-.07em;line-height:.9}.index-extras .game-tile strong{font-size:clamp(18px,4.8vw,30px)}.index-extras button>span:first-child,.index-extras .game-tile>span:first-child{font-size:6px;letter-spacing:0}.index-extras small,.index-extras .game-tile small{font-size:5px;line-height:1.5}.index-extras .abstract-tape{right:-44px;opacity:.22}.index-extras .abstract-tape i{width:55px;height:55px;border-width:10px}.index-extras .game-orbit{width:125px;height:125px;opacity:.4}}
.article-card .card-meta>div{min-width:0;display:flex;flex-direction:column;gap:7px}
.article-card .card-meta strong{font-size:11px;font-weight:normal}
.article-card .card-meta small{display:block;font-size:9px;line-height:1.5}
.look-grid[data-scope="all"] .look-card:last-child{grid-column:auto}
.look-grid[data-scope="all"] .look-card:last-child .look-placeholder{aspect-ratio:3/4}
.look-grid[data-scope="all"] .look-placeholder>span{font-size:clamp(26px,4vw,47px)}
.look-grid.list[data-scope="all"] .look-card{display:grid;grid-template-columns:90px 1fr}
.look-grid.list[data-scope="all"] .look-placeholder{aspect-ratio:1!important}
.look-grid.list[data-scope="all"] .look-placeholder small{display:none}
@media(max-width:760px){.article-card .card-meta strong{font-size:10px}.article-card .card-meta small{font-size:8px}}

.tv-playback-status{margin:0 20px 15px;color:#f2f0e9;font-size:10px;line-height:1.6}.tv-playback-status:empty{display:none}
/* TV and Radio are floating physical objects, without desktop window chrome. */
.concept-b .media-stage{position:relative;z-index:4;width:100%;margin:0 auto;padding:12px 0 24px;border:0;box-shadow:none;border-radius:0;background:transparent;color:#f2f0e9}
.concept-b .tv-stage{max-width:none}
.media-stage-nav{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:44px;margin-bottom:12px;font-size:9px;letter-spacing:1px}
.media-stage-nav button{background:none;color:#f2f0e9;border:1px solid #696969;min-height:38px;padding:9px 13px;font:10px 'Courier New',monospace}
.media-stage-nav button:hover,.media-stage-nav button:focus-visible{background:#b70017;border-color:#b70017;color:#fff}
.tv-stage .crt-cabinet{margin:0 auto 20px;width:100%;grid-template-columns:minmax(0,1fr) 88px;filter:drop-shadow(0 20px 22px #0008)}
.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{height:max(320px,calc(100svh - 280px));aspect-ratio:auto}
.concept-b .tv-stage #episodes{display:flex;gap:8px;overflow-x:auto;padding:6px 0 12px;scrollbar-width:thin}
.concept-b .tv-stage #episodes button{width:auto;flex:1 0 175px;min-height:48px;padding:10px;border:1px solid #666;color:#f2f0e9;font-size:9px;gap:12px;align-items:center}
.concept-b .tv-stage #episodes button.active{border-color:#b70017;background:#b70017;color:#fff}
html[data-theme="dark"] .concept-b .tape-stage{background:transparent;border:0;color:#f2f0e9;box-shadow:none}
.concept-b .tape-stage{max-width:680px;min-height:calc(100svh - 150px);padding-bottom:40px}
.tape-stage .tape-top{margin:24px 0 15px}
.tape-stage .cassette{margin:0;padding:24px 22px 15px;border-radius:16px;box-shadow:inset 0 0 0 5px #333,0 24px 35px #0009}
.tape-stage .tape-label{padding:22px 18px;color:#f2f0e9}
.tape-stage .tape-label>span{font-size:clamp(38px,7vw,72px)}
.tape-stage .tape-label small{font-size:10px}
.tape-stage .tape-mechanism{height:100px}
.tape-stage .tape-mechanism i{width:50px;height:50px;border-width:11px}
.tape-stage .tape-base{padding-top:24px}
.tape-stage .tape-display{margin:30px 0 15px;color:#d9dfc0;border-color:#555;background:#101111}
.tape-stage .tape-controls{margin:0}
.tape-stage .tape-controls button{height:60px;color:#111;background:#c4c0b5;border-color:#ece8df #555 #555 #ece8df;font-size:17px}
.tape-stage .tape-controls button:hover,.tape-stage .tape-controls button:focus-visible{background:#b70017;color:#fff}
.tape-stage .tape-selector button{color:#f2f0e9;min-height:38px;min-width:38px}
@media(max-width:760px){.concept-b .media-stage{padding-top:10px}.media-stage-nav{margin-bottom:10px;font-size:8px}.media-stage-nav button{font-size:9px}.tv-stage .crt-cabinet{grid-template-columns:minmax(0,1fr) 42px;gap:8px;margin:0 0 16px;padding:13px 10px 8px}.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{height:max(300px,calc(100svh - 310px))}.concept-b .tv-stage #episodes button{flex-basis:155px;font-size:8px}.tape-stage .cassette{padding:18px 14px 12px}.tape-stage .tape-label{padding:18px 12px}.tape-stage .tape-label small{font-size:8px}.tape-stage .tape-mechanism{height:80px}.tape-stage .tape-mechanism i{width:40px;height:40px;border-width:9px}.tape-stage .tape-controls button{height:54px}.tape-stage .tape-display{font-size:9px}.concept-b .tape-stage{min-height:calc(100svh - 190px)}}
/* Only the physical channel and power keys control the television. */
.concept-b .tv-stage #episodes{display:none!important}
.tv-stage #tv-reel::-webkit-media-controls{display:none!important}
.tv-stage #tv-reel::-webkit-media-controls-enclosure{display:none!important}
.tv-stage #tv-reel{pointer-events:none}
.tv-stage .crt-side{gap:22px;justify-content:space-between}
.tv-stage .crt-channel-controls{grid-template-columns:1fr;gap:12px}
.tv-stage .crt-channel-controls>span{grid-column:1;font-size:9px}
.tv-stage .crt-channel-controls button{min-width:64px;min-height:64px;font-size:38px;line-height:1;padding:8px;touch-action:manipulation}
.tv-stage .crt-power{min-width:64px;min-height:64px;font-size:10px;padding:10px 5px;touch-action:manipulation}
.tv-stage .crt-power i{width:8px;height:8px}
@media(max-width:760px){.tv-stage .crt-cabinet{grid-template-columns:minmax(0,1fr);gap:15px;padding:13px 10px 14px}.tv-stage .crt-side{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:12px;align-items:center;padding:0 3px}.tv-stage .crt-model,.tv-stage .crt-speaker{display:none}.tv-stage .crt-channel-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tv-stage .crt-channel-controls>span{display:none}.tv-stage .crt-channel-controls button{width:100%;min-width:0;height:68px;min-height:68px;font-size:42px}.tv-stage .crt-power{width:100%;height:68px;min-height:68px;font-size:11px;gap:9px}.tv-stage .crt-badge{padding-top:10px}.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{height:max(300px,calc(100svh - 340px))}}
/* Portrait CRT: the glass follows the reels' native 9:16 format. */
.concept-b .tv-stage{max-width:860px}
.tv-stage .crt-cabinet{width:min(100%,720px);grid-template-columns:minmax(0,1fr) 88px;margin-left:auto;margin-right:auto}
.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{height:auto;width:100%;aspect-ratio:9/16;box-sizing:content-box;border-width:10px}
.tv-stage .crt-picture{min-width:0;padding-right:20px}
.tv-stage #tv-reel{object-fit:cover}
@media(min-width:761px){.tv-stage .crt-cabinet{width:min(100%,calc((100svh - 260px)*.5625 + 190px));min-width:350px}}
@media(max-width:760px){.concept-b .tv-stage{max-width:480px}.tv-stage .crt-cabinet{width:100%;grid-template-columns:minmax(0,1fr)}.tv-stage .crt-picture{padding-right:14px}.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{height:auto;width:100%;aspect-ratio:9/16;box-sizing:content-box;border-width:7px}.tv-stage .crt-side{grid-template-columns:minmax(0,1fr) 100px}}
/* Keep the complete television in view, including its physical controls. */
.concept-b .tv-stage{--tv-glass-height:max(130px,calc(100svh - 300px));width:100%;max-width:none;padding:8px 0 12px}
.tv-stage .media-stage-nav{min-height:38px;margin:0 0 8px}
.tv-stage .crt-cabinet{width:max-content;max-width:100%;min-width:0;grid-template-columns:minmax(0,1fr) 88px;padding:18px 18px 10px;gap:18px;margin:0 auto 10px}
.tv-stage .crt-picture{width:calc(var(--tv-glass-height)*.5625 + 20px);min-width:0;padding-right:20px}
.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{width:calc(var(--tv-glass-height)*.5625);height:var(--tv-glass-height);aspect-ratio:9/16;box-sizing:content-box;border-width:10px}
.tv-stage .crt-badge{padding:10px 2px 0}
.tv-stage .crt-side{gap:12px}
.tv-stage .crt-speaker{min-height:20px}
@media(max-width:760px){.concept-b .tv-stage{--tv-glass-height:max(110px,calc(100svh - 380px));padding:4px 0 10px}.tv-stage .media-stage-nav{min-height:38px;margin-bottom:6px}.tv-stage .crt-cabinet{width:max-content;max-width:100%;grid-template-columns:minmax(0,1fr);padding:10px 10px 12px;gap:10px;margin:0 auto 8px}.tv-stage .crt-picture{width:calc(var(--tv-glass-height)*.5625 + 14px);padding-right:14px}.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{width:calc(var(--tv-glass-height)*.5625);height:var(--tv-glass-height);aspect-ratio:9/16;border-width:7px}.tv-stage .crt-side{grid-template-columns:minmax(0,1fr) 74px;gap:8px;padding:0}.tv-stage .crt-channel-controls{gap:8px}.tv-stage .crt-channel-controls button{height:56px;min-height:56px;font-size:34px}.tv-stage .crt-power{min-width:0;height:56px;min-height:56px;font-size:9px;gap:5px;padding:7px 4px}.tv-stage .crt-power i{width:6px;height:6px}.tv-stage .crt-badge{padding-top:8px}.tv-stage .crt-channel-controls button{min-width:44px}}
@media(max-width:760px) and (orientation:landscape){.concept-b .tv-stage{--tv-glass-height:max(100px,calc(100svh - 300px))}.tv-stage .crt-cabinet{grid-template-columns:minmax(0,1fr) 150px;gap:14px}.tv-stage .crt-side{display:flex;flex-direction:column;justify-content:center;width:150px}.tv-stage .crt-channel-controls{width:100%}.tv-stage .crt-power{width:100%}}

body:has(#tv:not([hidden])) #desktop{min-height:0}
@media(max-width:760px){.tv-stage .crt-cabinet{min-width:208px}.tv-stage .crt-picture{justify-self:center}}
@media(max-width:760px) and (orientation:landscape){body:has(#tv:not([hidden])) .systembar{height:44px;grid-template-rows:35px;padding-bottom:4px}body:has(#tv:not([hidden])) .header-radio{display:none}.tv-stage .crt-cabinet{min-width:0}}
/* Fit the portrait TV and its side keys inside the viewport on every device. */
body:has(#tv:not([hidden])){height:100svh;overflow:hidden}
body:has(#tv:not([hidden])) #desktop{height:calc(100svh - 119px);min-height:0}
.concept-b .tv-stage{--tv-glass-height:max(80px,min(calc(100svh - 300px),calc((100vw - 240px)*1.7777778)));height:100%;padding:8px 0 10px}
.tv-stage .crt-cabinet{width:max-content;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr) 72px;gap:12px;padding:14px 14px 8px;margin:0 auto}
.tv-stage .crt-picture{width:calc(var(--tv-glass-height)*.5625 + 16px);padding-right:16px;justify-self:center}
.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{width:calc(var(--tv-glass-height)*.5625);height:var(--tv-glass-height);border-width:8px}
.tv-stage .crt-side{display:flex;flex-direction:column;justify-content:center;gap:12px;width:72px;padding:0}
.tv-stage .crt-model,.tv-stage .crt-speaker{display:none}
.tv-stage .crt-channel-controls{display:grid;grid-template-columns:1fr;gap:12px;width:100%}
.tv-stage .crt-channel-controls>span{display:none}
.tv-stage .crt-channel-controls button{width:100%;min-width:0;min-height:56px;height:56px;font-size:34px}
.tv-stage .crt-power{width:100%;min-width:0;min-height:56px;height:56px;font-size:9px;padding:7px 4px;gap:5px}
.tv-stage .crt-badge{padding-top:8px}
.tv-stage .tv-playback-status{position:absolute;bottom:0;left:0;right:0;margin:0;text-align:center;font-size:8px;pointer-events:none}
@media(max-width:760px){body:has(#tv:not([hidden])) #desktop{height:calc(100svh - 166px)}.concept-b .tv-stage{--tv-glass-height:max(80px,min(calc(100svh - 350px),calc((100vw - 142px)*1.7777778)));padding:4px 0 8px}.tv-stage .crt-cabinet{grid-template-columns:minmax(0,1fr) 64px;min-width:0;width:max-content;gap:10px;padding:10px 10px 8px}.tv-stage .crt-picture{width:calc(var(--tv-glass-height)*.5625 + 14px);padding-right:14px}.concept-b .tv-stage .crt-cabinet .tv-screen.has-reel{width:calc(var(--tv-glass-height)*.5625);height:var(--tv-glass-height);border-width:7px}.tv-stage .crt-side{display:flex;width:64px;gap:10px}.tv-stage .crt-channel-controls{grid-template-columns:1fr;gap:10px}.tv-stage .crt-power{height:56px;min-height:56px}.tv-stage .crt-power i{width:6px;height:6px}}
@media(orientation:landscape) and (max-height:500px){body:has(#tv:not([hidden])) .systembar{height:44px;grid-template-rows:35px;padding-bottom:4px}body:has(#tv:not([hidden])) .header-radio{display:none}body:has(#tv:not([hidden])) #desktop{height:calc(100svh - 119px)}.concept-b .tv-stage{--tv-glass-height:max(60px,calc(100svh - 250px))}.tv-stage .crt-cabinet{grid-template-columns:minmax(0,1fr) 150px}.tv-stage .crt-side{width:150px;gap:8px}.tv-stage .crt-channel-controls{grid-template-columns:1fr 1fr;gap:8px}.tv-stage .crt-channel-controls button,.tv-stage .crt-power{height:48px;min-height:48px}.tv-stage .crt-model,.tv-stage .crt-speaker{display:none}}
/* Vertical gestures remain native even when they start over the interactive moon. */
@media(pointer:coarse){.moon-object{touch-action:pan-y pinch-zoom}.index-masthead .gothic-word{touch-action:pan-y pinch-zoom}html{scroll-behavior:auto}}

/* Illustrated city map with five accessible landmarks. */
#city-map .city-cartography{background:#090707}
#city-map .city-drawing{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
#city-map .city-place{background:#140b0be8;color:#f0e4d6;border:1px solid #a83434;box-shadow:0 2px 12px #000a;padding:7px 9px;font-size:clamp(8px,1.6vw,11px);white-space:normal;max-width:32%;text-align:center;border-radius:2px}
#city-map .city-place:hover,#city-map .city-place.selected{background:#a51624;color:#fff}
#city-map .place-dark{left:77%;top:76%}
#city-map .place-church{left:49%;top:38%}
#city-map .place-gas{left:23%;top:72%}
#city-map .place-arena{left:82%;top:48%}
#city-map .place-radio{left:19%;top:43%}
#city-map .city-place:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* RCT2-inspired map landmark positions. */
#city-map .place-dark{left:69%;top:26%}
#city-map .place-church{left:49%;top:47%}
#city-map .place-gas{left:25%;top:29%}
#city-map .place-arena{left:29%;top:76%}
#city-map .place-radio{left:85%;top:48%}
#city-map .city-place{text-shadow:none;font-weight:400}
#city-map .city-map-body{background:#101114;color:#e8dfd4}
#city-map .city-heading{border-color:#363033}
#city-map .city-readout{background:#141114;border-color:#363033}
#city-map .city-coordinate,#city-map .city-status{color:#ee6b71}
#city-map .city-map-footer{background:#1c171a;color:#c9c1b7}

/* Keep map markers fixed in every interaction state. Details use a modal. */
#city-map .city-place,#city-map .city-place:hover,#city-map .city-place:active,#city-map .city-place:focus{transform:translateX(-50%)!important;translate:none!important;scale:none!important;transition:background-color .15s,color .15s;animation:none}
#city-detail{width:min(420px,90vw);padding:0;max-height:85dvh;overflow:auto;box-sizing:border-box;background:#141114;color:#eee4d8;border:1px solid #a83434;box-shadow:0 20px 80px #000b}
#city-detail::backdrop{background:#080509b8;backdrop-filter:blur(3px)}
#city-detail .titlebar{display:flex;justify-content:space-between;align-items:center;background:#21191d;padding:8px 12px;font:10px monospace}
#city-detail .detail-close{background:transparent;border:1px solid #6c454b;color:#eee;min-width:36px;min-height:36px;font:24px monospace;transform:none}
.city-detail-content{padding:26px}.city-detail-kicker{font:10px monospace;letter-spacing:1px;color:#ee6b71}
#city-detail h2{font:32px/1.15 RedMoonBlackletter,Georgia,serif;margin:16px 0}
#city-detail p{font:14px/1.7 Arial,sans-serif;color:#ccc0bd}
#city-detail .city-detail-action{display:inline-block;margin-top:16px;padding:13px 16px;background:#a51624;color:white;font:11px monospace;text-decoration:none}
#city-detail .city-detail-action[hidden]{display:none}
#city-map .place-arcade{left:22%;top:48%}
#city-map .place-photo{left:70%;top:76%}

.city-map-viewport{position:relative;aspect-ratio:1;overflow:hidden;touch-action:none;background:#0d1119}
#city-map .city-map-viewport .city-cartography{width:100%;height:100%;transform-origin:center;will-change:transform}
.city-map-viewport.is-zoomed{cursor:grab}.city-map-viewport.is-zoomed:active{cursor:grabbing}
.city-map-viewport img{-webkit-user-drag:none;user-select:none;pointer-events:none}
.city-zoom-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 14px;background:#141114;border-top:1px solid #36252a}
#city-map .city-zoom-controls button{min-width:44px;min-height:44px;padding:8px 12px;background:#251a20;color:#f1e5dc;border:1px solid #75434c;font:18px monospace;transform:none!important;transition:background .15s}
#city-map .city-zoom-controls button[data-zoom="reset"]{font-size:10px}
#city-map .city-zoom-controls button:disabled{opacity:.35;cursor:default}
#city-map .city-zoom-controls button:focus-visible{outline:2px solid #ee6b71;outline-offset:2px}
.city-zoom-controls output{min-width:45px;text-align:center;font:11px monospace;color:#e3c6c9}

/* Native OpenRCT2 render, lossless 3968 x 2016, with matching landmark coordinates. */
#city-map{width:min(1100px,94vw);background:#101114;border:1px solid #684149}
#city-map .city-map-viewport{aspect-ratio:3968/2064;height:auto;min-height:0;background:#000}
#city-map .city-map-viewport .city-cartography{position:absolute;top:50%;width:100%;height:auto;aspect-ratio:3968/2064}
#city-map .city-drawing{width:100%;height:auto;aspect-ratio:3968/2064;image-rendering:auto}
#city-map .place-gas{left:39%;top:32%}
#city-map .place-dark{left:63%;top:30%}
#city-map .place-church{left:51%;top:43%}
#city-map .place-radio{left:74%;top:44%}
#city-map .place-arcade{left:26%;top:47%}
#city-map .place-arena{left:36%;top:64%}
#city-map .place-photo{left:55%;top:68%}

#city-map .city-life{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;image-rendering:auto}
#city-map .city-place{z-index:2}

/* Original OpenRCT2 SSIG2 panels and original 3D glyph sprites replace HTML labels. */
#city-map .city-place,#city-map .city-place:hover,#city-map .city-place.selected,#city-map .city-place:active{width:8%;min-width:44px;max-width:none;min-height:44px;padding:0;border:0;background:transparent;box-shadow:none;border-radius:0;font-size:0;line-height:0}
#city-map .city-place img{display:block;width:100%;height:auto;aspect-ratio:65/43;object-fit:contain;filter:drop-shadow(1px 3px 2px #0009);pointer-events:none;user-select:none}
#city-map .city-place:hover img{filter:drop-shadow(0 0 4px #e73e55)}
#city-map .city-place:focus-visible{outline:1px solid #f1c9cb;outline-offset:1px}
#city-map .place-gas{top:27%}
#city-map .place-dark{top:23%}
#city-map .place-church{top:36%}
#city-map .place-radio{top:40%}
#city-map .place-arcade{top:40%}
#city-map .place-arena{top:61%}
#city-map .place-photo{top:62%}

/* Sign alignment for the taller, denser native render. */
#city-map .place-gas{top:28.7%}#city-map .place-dark{top:24.8%}#city-map .place-church{top:37.5%}#city-map .place-radio{top:41.4%}#city-map .place-arcade{top:41.4%}#city-map .place-arena{top:61.9%}#city-map .place-photo{top:62.9%}

/* New native Colosseum entrance position. */
#city-map .place-arena{left:36.5%;top:54%}
/* Shared RCT2-style citizen and location windows. */
#city-detail{width:min(430px,94vw);background:#322a2a;border:2px solid;border-color:#a18a79 #100d10 #100d10 #a18a79;box-shadow:2px 2px #000,0 18px 70px #0009;color:#f5e8d7;font:12px/1.5 'Courier New',monospace}
#city-detail>.titlebar{min-height:28px;padding:2px 3px 2px 8px;background:linear-gradient(90deg,#672938,#361b25);border-bottom:1px solid #120c12;font:bold 12px 'Courier New',monospace;color:#fff0d6;text-shadow:1px 1px #100}
#city-detail .detail-close{min-width:24px;min-height:24px;padding:0;background:#514044;border:2px solid;border-color:#b79b86 #1c1017 #1c1017 #b79b86;font:bold 16px monospace;color:#fff3df}
#city-detail .rct-tabs{display:flex;gap:3px;padding:7px 8px 0;border-bottom:2px solid #160f13}
#city-detail .rct-tabs button{min-height:38px;padding:7px 12px;background:#3d3033;color:#cbb8ac;border:2px solid;border-color:#786358 #171015 #171015 #786358;font:11px 'Courier New',monospace;transform:none}
#city-detail .rct-tabs button.is-active{background:#695146;color:#fff3d7;border-bottom-color:#695146}
#city-detail .rct-tabs [hidden],#city-detail [hidden]{display:none!important}
#city-detail .city-detail-content{padding:13px;background:#3a2f31}
#city-detail .rct-profile{display:flex;align-items:center;gap:12px;min-height:76px}
#city-detail .rct-portrait{width:76px;height:76px;flex-shrink:0;background:#15181b;border:2px solid;border-color:#140d12 #8b7367 #8b7367 #140d12;display:grid;place-items:center}
#city-detail .rct-portrait span{display:block;width:64px;height:64px;background:url('/assets/rct2-visitors-black-v1.png') 0 0/384px 1024px no-repeat;image-rendering:pixelated}
#city-detail h2{font:bold 18px/1.25 'Courier New',monospace;margin:7px 0;color:#ffeed6}
#city-detail .city-detail-kicker{font:9px 'Courier New',monospace;letter-spacing:.6px;color:#d8aaa2}
#city-detail .rct-status{font:10px 'Courier New',monospace;color:#bcae9d}
#city-detail .rct-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:12px 0}
#city-detail .rct-stats label{font:10px 'Courier New',monospace;display:grid;gap:5px}
#city-detail meter{width:100%;height:12px;accent-color:#b56868}
#city-detail .rct-inset{margin-top:12px;padding:12px;background:#211c22;border:2px solid;border-color:#140e15 #80695e #80695e #140e15;min-height:92px}
#city-detail .rct-section-name{font:bold 10px 'Courier New',monospace;color:#d8aaa2}
#city-detail p{margin:10px 0 0;font:12px/1.7 'Courier New',monospace;color:#f1e4d3}
#city-detail .city-detail-action{font:bold 11px 'Courier New',monospace;border:2px solid;border-color:#b79b86 #1c1017 #1c1017 #b79b86;background:#65414a;padding:10px 12px}
#city-detail .rct-window-footer{padding:5px 10px;border-top:1px solid #79665c;font:9px monospace;color:#bbada3;background:#2b2228}
#city-detail button:focus-visible{outline:2px solid #e9b8aa;outline-offset:2px}
@media(max-width:480px){.city-zoom-controls{gap:4px;padding:8px}.city-zoom-controls output{min-width:36px}#city-map .city-zoom-controls button{padding:7px 9px}}

/* Roadside arrival sequence: Gas Station, then Darkdonalds. */
#city-map .place-gas{left:87%;top:42%}#city-map .place-dark{left:77.5%;top:49%}
#city-map .place-dark{left:80%;top:55%}

/* Rasterize the map at its actual zoomed layout size instead of enlarging a cached GPU layer. */
#city-map .city-map-viewport .city-cartography{left:50%;will-change:auto;transform-origin:center;contain:none}
#city-map .city-drawing,#city-map .city-life{image-rendering:auto}
/* Keep native signs close to sprite scale; preserve a separate touch target. */
#city-map .city-place,#city-map .city-place:hover,#city-map .city-place.selected,#city-map .city-place:active{width:5%;min-width:0;min-height:0}
#city-map .city-place::after{content:'';position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-50%)}
#city-map .place-dark{top:49.5%}
#city-map .city-place::after{inset:-4px;width:auto;height:auto;transform:none}
/* Four native camera views share an aligned 3968 x 2184 canvas. */
#city-map .city-map-viewport,#city-map .city-map-viewport .city-cartography,#city-map .city-drawing{aspect-ratio:3968/2184}
#city-map .city-drawing,#city-map .city-life{image-rendering:pixelated}
.city-zoom-controls{flex-wrap:wrap}
.city-venue-select{min-height:44px;max-width:230px;min-width:0;margin-right:auto;background:#251a20;border:1px solid #75434c;color:#f1e5dc;font:11px monospace;padding:7px}
.city-citizen-tool img{width:26px;height:26px;image-rendering:pixelated}
#city-detail .rct-mood-face{display:block;width:58px;height:58px;object-fit:contain;image-rendering:pixelated}
#city-map .city-business{position:absolute;z-index:2;transform:translate(-50%,-50%);width:2%;aspect-ratio:1;min-width:12px;min-height:12px;padding:0;border:0;background:transparent;cursor:pointer}
#city-map .city-business:hover,#city-map .city-business:focus-visible{background:#b7001722;outline:1px solid #ee6b71;box-shadow:0 0 8px #b70017}
@media(max-width:600px){.city-venue-select{flex-basis:100%;max-width:none;width:100%;margin-right:0}.city-zoom-controls{justify-content:center}}
/* Average small visitor pixels when zoomed out instead of dropping them between samples. */
#city-map .city-life{image-rendering:auto}
@media(max-width:600px){
 #city-map[open]{display:flex;flex-direction:column;width:calc(100vw - 12px);height:94dvh;max-height:94dvh;margin:auto;overflow:hidden}
 #city-map>.titlebar{flex-shrink:0}
 #city-map .city-map-body{display:flex;flex-direction:column;flex:1;min-height:0}
 #city-map .city-heading{padding:9px 12px;flex-shrink:0}
 #city-map .city-heading h2{font-size:32px;margin:4px 0 0}
 #city-map .city-heading>div>span,#city-map .city-status{font-size:7px}
 #city-map .city-zoom-controls{flex-shrink:0;flex-wrap:nowrap;gap:5px;padding:7px 5px}
 #city-map .city-zoom-controls button{padding:6px 8px;min-width:38px}
 #city-map .city-map-viewport{flex:1;min-height:0;height:auto;aspect-ratio:auto}
 #city-map .city-map-footer{flex-shrink:0;padding:9px 12px;font-size:7px}
}
.article-product-gallery{overflow:hidden;background:#fff;border:0;display:flex;flex-direction:column;align-items:stretch}
.article-product-photo{display:block;width:100%;height:auto;object-fit:contain;background:#fff}
.has-product-photo .editorial-cover{display:flex;flex-direction:column;min-height:0;padding:20px}
.has-product-photo .editorial-word{font-size:clamp(48px,8vw,90px);margin-bottom:16px}
.has-product-photo .editorial-number{display:none}
.has-product-photo .editorial-product{position:relative;inset:auto;width:100%;height:auto;transform:none;max-width:560px;align-self:center;background:#fff}
.has-product-photo .editorial-cover h2{font-size:48px;margin:22px 0}
.has-product-photo .object-diagram{min-height:0}
.article-photo-views{display:flex;gap:8px;padding:12px;background:#151114}
.article-photo-views button{flex:1;min-height:44px;background:#22191d;border:1px solid #77505c;color:#e8dce0;font:11px monospace}
.article-photo-views button[aria-pressed=true]{border-color:#e6284b;color:#fff;background:#6d1124}
/* Distinct product worlds: original campaign illustration, gothic leather object, quiet uniform. */
.piece-cutout{display:block;mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat}
.piece-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.piece-world{color:#f0e4db;font:11px 'Courier New',monospace}.piece-world .article-select{margin:0;background:#100e12;color:#f0e4db;border-top:1px solid #61414c}.piece-world .article-save{background:#9d0024;color:white;border:1px solid #cb3754}.piece-world .article-select .size-option span{color:#eee2de;border-color:#755461}.piece-world .size-option input:checked+span{background:#eee2de;color:#171015}.piece-world .article-prototype-note{color:#ab939d}
.shirt-world{background:#211927}.shirt-world-hero{height:820px;position:relative;overflow:hidden;background:#27192c url('/assets/pieces/red-moon-illustration-v1.png') center top/cover no-repeat;isolation:isolate}.shirt-world-hero:after{content:'';position:absolute;inset:50% 0 0;z-index:-1;background:linear-gradient(transparent,#211927)}.piece-world-label{position:absolute;top:18px;left:20px;color:#f8dbd8;font-size:9px;letter-spacing:.12em;text-shadow:0 1px 8px #000}.shirt-world-product{position:absolute;height:72%;width:auto;max-width:78%;object-fit:contain;bottom:36px;left:50%;translate:-50% 0;filter:drop-shadow(0 24px 22px #08000dbb);animation:shirt-float 5s ease-in-out infinite}.shirt-film-link{position:absolute;bottom:20px;left:50%;translate:-50% 0;background:#160c15df;color:#f9ded8;border:1px solid #dc8479;padding:12px 18px;text-decoration:none;white-space:nowrap;font-size:10px}.shirt-film{padding:48px 24px;text-align:center;background:radial-gradient(ellipse at top,#4d192d,#17131d 70%)}.shirt-film>span{font-size:9px;letter-spacing:.16em}.shirt-film h3{font:700 60px/1 RedMoonBlackletter,Georgia,serif;margin:20px 0 30px}.shirt-film video{display:block;width:min(100%,420px);aspect-ratio:9/16;margin:auto;background:#fff;border:1px solid #6d3b4e}.piece-scanner-link{display:inline-flex;margin:24px auto 0;padding:14px;border:1px solid #915b72;color:#f2dbdf;text-decoration:none}.wallet-world{overflow:hidden;background:radial-gradient(ellipse at 50% 36%,#4a3b43 0,#20151e 42%,#0a080b 80%)}.wallet-world-heading{text-align:center;padding:45px 20px 0}.wallet-world-heading>span{font-size:9px;letter-spacing:.18em;color:#b99fa9}.wallet-world-heading h2{font:700 clamp(68px,11vw,132px)/1 RedMoonBlackletter,Georgia,serif!important;color:#eee2d5!important;margin:24px 0 12px!important}.wallet-world-heading p{font:14px Georgia,serif!important;letter-spacing:.12em;color:#bca5a4!important}.wallet-world-stage{height:420px;position:relative;max-width:760px;margin:auto;overflow:hidden}.wallet-world-stage .piece-cutout{position:absolute;width:100%;height:auto;top:50%;translate:0 -50%;filter:drop-shadow(0 22px 20px #0008)}.wallet-world-views{display:flex;justify-content:center;gap:10px;padding:12px 20px 28px}.wallet-world-views button{min-height:44px;min-width:110px;background:transparent;border:1px solid #927a7e;color:#d9c8bf;font:12px Georgia,serif;letter-spacing:.1em}.wallet-world-views button[aria-pressed=true]{background:#663344;border-color:#e3bfc7;color:#fff}.wallet-world-signature{text-align:center;font:700 74px RedMoonBlackletter,Georgia,serif;color:#946a76;padding:8px 0 34px}.hoodie-world{background:#161719}.hoodie-world header{padding:35px 26px;border-bottom:1px solid #57514f}.hoodie-world header span{letter-spacing:.15em;color:#a6a09b;font-size:9px}.hoodie-world header h2{font:700 62px/1 Arial,sans-serif!important;text-transform:uppercase;letter-spacing:-3px;margin:18px 0 0!important;color:#e6e2dc!important}.hoodie-world-stage{position:relative;isolation:isolate;overflow:hidden;padding:20px}.hoodie-world-stage .piece-cutout{position:relative;width:min(100%,600px);margin:auto;filter:drop-shadow(0 20px 10px #0008)}.hoodie-world-mark{position:absolute;z-index:-1;width:90%;height:90%;inset:5%;opacity:.12}.hoodie-world-caption{display:flex;justify-content:space-between;padding:20px 26px;border-top:1px solid #57514f;color:#b3ada7;font-size:9px}
@keyframes shirt-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-15px) rotate(1deg)}}
@media(max-width:600px){.shirt-world-hero{height:650px;background-size:auto 100%}.shirt-world-product{height:65%;max-width:95%;bottom:50px}.shirt-film{padding:35px 16px}.shirt-film h3{font-size:44px}.wallet-world-stage{height:300px}.wallet-world-heading{padding-top:30px}.wallet-world-heading h2{font-size:74px!important}.hoodie-world header h2{font-size:46px!important}.piece-world-label{font-size:7px;left:12px}.wallet-world-views button{min-width:95px}}
@media(prefers-reduced-motion:reduce){.shirt-world-product{animation:none}}
#look-dialog .detail-placeholder.is-piece-preview{background:radial-gradient(ellipse,#4b3941,#171117 70%)}
#look-dialog .is-piece-preview .look-detail-photo{object-fit:contain;mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat}
.article-view:has(.piece-world) .article-nav{background:#171117;color:#d3bdc6;border-bottom:1px solid #61414c}
.article-view:has(.piece-world) .article-nav button{color:#f0dbe3}
.wallet-world-stage{height:460px;max-width:680px}
.wallet-world-stage .piece-cutout{translate:0 -54.5%}
@media(max-width:600px){.wallet-world-stage{height:300px}}

/* Product photography keeps its supplied white backdrop (owner preference). */
.piece-cutout,#look-dialog .is-piece-preview .look-detail-photo{mask-image:none!important;-webkit-mask-image:none!important;background:#fff}
.wallet-world-stage{background:#fff}
#look-dialog .detail-placeholder.is-piece-preview{background:#fff}
/* Image Gen paints each entire scrolling world; all content sits on one continuous image. */
.shirt-world{background:#211323 url('/assets/piece-worlds/shirt-imagegen-v1.png') center top/100% 100% no-repeat}
.wallet-world{background:#100b0e url('/assets/piece-worlds/wallet-imagegen-v1.png') center top/100% 100% no-repeat}
.hoodie-world{background:#130906 url('/assets/piece-worlds/hoodie-imagegen-v1.png') center top/100% 100% no-repeat}
.shirt-world-hero{background:none;height:760px}
.shirt-world-hero:after{display:none}
.shirt-film{background:none;padding:30px 24px 45px}
.piece-world .article-select{background:transparent;border-top:0;text-shadow:0 2px 8px #000}
.hoodie-world header,.hoodie-world-caption{background:none;border-color:transparent;text-shadow:0 2px 8px #000}
.hoodie-world-mark{display:none}
.wallet-world-heading{text-shadow:0 2px 10px #000}
.wallet-world-signature{color:#d4b5c0;text-shadow:0 3px 9px #000}
.shirt-video-frame{width:min(100%,520px);margin:0 auto;border-style:solid;border-width:90px 45px 85px;border-color:transparent;border-image-slice:220 185 230 185;border-image-repeat:stretch;filter:drop-shadow(0 12px 12px #0008)}
.shirt-film .shirt-video-frame video{width:100%;max-width:none;margin:0;border:0;aspect-ratio:9/16}
.shirt-film>span,.shirt-film h3{text-shadow:0 2px 10px #000}
@media(max-width:600px){.shirt-world-hero{height:600px;background:none}.shirt-film{padding:25px 12px 35px}.shirt-video-frame{border-width:65px 28px 60px}.piece-world .article-select{padding:22px 18px}}
/* Preserve the round moon while the continuous landscape covers the full article. */
.shirt-world{background-size:cover;background-position:center top}
.shirt-film{scroll-margin-top:84px}
/* Latest art direction: flat cartoon Red Moon, pure flames, restrained wallet studio. */
.piece-world .piece-cutout{mask-image:var(--product-mask)!important;-webkit-mask-image:var(--product-mask)!important;background:transparent}
.wallet-world-stage{background:transparent}
.shirt-world{background-image:url('/assets/piece-worlds/shirt-imagegen-v2.png')}
.wallet-world{background-image:url('/assets/piece-worlds/wallet-imagegen-v2.png')}
.hoodie-world{background-image:url('/assets/piece-worlds/hoodie-imagegen-v2.png')}
.shirt-video-frame{border-image-source:none}
.wallet-world-heading h2{font-size:96px!important;letter-spacing:.01em}
.wallet-world-signature{display:none}
.wallet-world-heading{padding-top:54px}
.wallet-world-views{padding-bottom:54px}
.hoodie-world header{filter:drop-shadow(0 2px 4px #000)}
@media(max-width:600px){.wallet-world-heading h2{font-size:64px!important}.wallet-world-heading{padding-top:38px}}
/* Correct the hoodie's intrinsic proportions, keeping mask and image on the same box. */
.hoodie-world-stage .piece-cutout{height:auto;aspect-ratio:896/1200;object-fit:contain}
/* Lightweight WebP worlds; original Image Gen masters remain archived. */
.shirt-world{background-image:url('/assets/piece-worlds/shirt-v3.webp')}
.wallet-world{background-image:url('/assets/piece-worlds/wallet-v3.webp')}
.hoodie-world{background-image:url('/assets/piece-worlds/hoodie-v3.webp')}
/* Code-built video frame, no generated border asset or image request. */
.shirt-video-frame{position:relative;border-image:none;border:3px solid #21112c;border-radius:18px;padding:10px;background:#60334e;box-shadow:0 0 0 3px #c43143,8px 10px 0 #21112cbb;filter:none}
.shirt-video-frame:before{content:'';position:absolute;z-index:2;width:28px;height:28px;top:-20px;left:50%;translate:-50% 0;border-radius:50%;background:#e33340;border:3px solid #21112c;box-shadow:inset -6px -3px #a51b35}
.shirt-film .shirt-video-frame video{border-radius:8px}
@media(max-width:600px){.shirt-video-frame{border-width:3px;padding:8px}}
/* Animated CSS flame layers; lightweight WebP reused by both layers. */
.hoodie-world{position:relative;isolation:isolate;overflow:hidden;background:#5b1003}
.hoodie-world:before,.hoodie-world:after{content:'';position:absolute;z-index:-1;pointer-events:none;inset:-5% -4%;background:url('/assets/piece-worlds/hoodie-v3.webp') center/100% 100%;transform-origin:50% 100%;will-change:transform,opacity}
.hoodie-world:before{animation:flame-rise-a 3.6s ease-in-out infinite alternate}
.hoodie-world:after{opacity:.38;mix-blend-mode:screen;animation:flame-rise-b 2.7s ease-in-out infinite alternate}
@keyframes flame-rise-a{from{transform:translateY(2%) scaleX(1.02) skewX(-1deg);opacity:.94}to{transform:translateY(-2%) scaleX(.98) skewX(1deg);opacity:1}}
@keyframes flame-rise-b{from{transform:translateY(3%) scale(1.02,1.04) skewX(2deg);opacity:.16}to{transform:translateY(-2%) scale(.99,1.08) skewX(-2deg);opacity:.42}}
@media(prefers-reduced-motion:reduce){.hoodie-world:before,.hoodie-world:after{animation:none;will-change:auto}.hoodie-world:after{display:none}}
.piece-stock{grid-column:1/-1;padding:0 10px 8px;font:9px monospace;color:#c0a4ad}.piece-row[data-sold-out=true] .piece-title{opacity:.5}.article-stock-status{font:11px monospace;color:#ead7dc;margin:0 0 14px}

/* Product controls remain readable independently of each illustrated world. */
.piece-world .article-select{background:#080808;color:#f0e4db;border-top:1px solid #453438;text-shadow:none}
.piece-world .article-select .eyebrow,.piece-world .article-select p{color:#f0e4db}
.piece-world .shipping-window-note,.piece-world .article-prototype-note{color:#c6b8bc}
.hoodie-world header h2{font-family:RedMoonBlackletter,Georgia,serif!important;font-size:clamp(64px,9vw,110px)!important;letter-spacing:0;text-transform:none}
#pieces .piece-row[hidden],.article-stock-status[hidden],.piece-stock[hidden]{display:none!important}

.article-save{display:flex;align-items:center;justify-content:space-between;gap:12px}.article-save svg{flex:none}

/* Articles add directly; no intermediate checklist or save-selection action. */
.concept-b #pieces .piece-row{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto;min-height:64px;gap:12px;align-items:center}
.concept-b #pieces .piece-title{grid-column:1;grid-row:1;align-self:center}
.concept-b #pieces .piece-price{grid-column:2;grid-row:1;align-self:center}
.concept-b #pieces .piece-stock{grid-column:1/-1}
#toast[popover]{inset:auto auto max(24px,env(safe-area-inset-bottom)) 50%;margin:0;border:1px solid #79414c;background:#100d10;color:#f6ece7;box-shadow:0 12px 45px #0009;padding:20px 26px;min-width:260px;max-width:calc(100vw - 32px);text-align:center;font-size:12px}
#toast strong,#toast small{display:block;margin-top:9px}#toast strong{font-size:25px;color:#fff}#toast small{font-size:12px;color:#d8c7cb}
@media(max-width:760px){.concept-b #pieces .piece-title{font-size:23px}#toast[popover]{width:calc(100vw - 40px)}}

.concept-b #pieces .piece-row{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto}
.concept-b #pieces .piece-title{grid-column:1;grid-row:1/3}
.concept-b #pieces .piece-price{grid-column:2;grid-row:1}
.concept-b #pieces .piece-buy{grid-column:2;grid-row:2;display:flex;align-items:center;justify-content:center;gap:8px;background:#a10026;color:#fff;border:1px solid #d9415d;padding:10px 14px;min-height:44px;font:11px 'Courier New',monospace}
.concept-b #pieces .piece-buy:hover{background:#c80b38}
.concept-b #pieces .piece-buy:disabled{opacity:.4}
@media(max-width:760px){.concept-b #pieces .piece-title{font-size:21px}.concept-b #pieces .piece-buy{padding:8px;font-size:10px}}

/* Confirmation belongs at the center, including Safari's visual viewport. */
#toast[popover]{inset:50% auto auto 50%;transform:translate(-50%,-50%)}
