/* Supplied portraits, cinematic promotion and a touch-sized art archive. */
.room-tabs #quick-gallery{margin-left:auto;color:var(--gold);border-color:#ba985c66}
.cast-actions{display:grid;grid-template-columns:1fr;gap:8px;padding:2px 15px 10px}
.cast-actions button{min-height:44px;font-size:12px}
#open-gallery{background:linear-gradient(110deg,#55422c88,#322b2588);border-color:#bd995966;color:#f1d6a1}
#open-gallery span{float:right}
.cast-actions button[aria-pressed=true]{color:#ffd0c8;border-color:#b66770}
.cutin-focus{position:absolute;inset:8% 9% 22%;background-repeat:no-repeat;z-index:2;opacity:0;
  mask-image:linear-gradient(90deg,transparent,#000 12% 85%,transparent);border-block:1px solid #e8bc9766}
.cutin-seal{display:none;position:absolute;right:8%;top:9%;border:1px solid #eea295aa;color:#ffd4c4;
  font:24px/1 'Yu Mincho',serif;padding:9px;transform:rotate(7deg);opacity:.8}
.board-cutin[data-art=full] .cutin-portrait{aspect-ratio:9/16;height:98%;left:8%;bottom:0;border:0;
  mask-image:linear-gradient(180deg,#000 88%,transparent)}
.board-cutin[data-art=full] .cutin-art{background-color:#130e13}
.board-cutin[data-art=full][data-kind=move] .cutin-portrait{height:88%;bottom:4%;left:12%}
.board-cutin[data-art=full][data-kind=promote] .cutin-seal{display:block}
.board-cutin[data-art=full][data-kind=promote] .cutin-veil{background:linear-gradient(110deg,#140b11ee,#20131cee 60%,#101725ed)}
.board-cutin[data-art=full][data-kind=promote].active .cutin-focus{animation:awakening-focus var(--cutin-duration) ease-out both}
.board-cutin[data-art=full][data-kind=promote].active .cutin-portrait{animation:awakening-body var(--cutin-duration) cubic-bezier(.16,.8,.22,1) both}
.board-cutin[data-art=full][data-kind=promote].active .cutin-copy{animation:awakening-word var(--cutin-duration) ease-out both}
.board-cutin[data-art=full][data-kind=promote].active .cutin-stroke{animation:awakening-slash var(--cutin-duration) ease-out both;z-index:3}
@keyframes awakening-focus{0%{opacity:0;transform:translateX(var(--cutin-entry)) scale(1.06)}8%,18%{opacity:1;transform:translateX(0) scale(1)}31%,100%{opacity:0;transform:translateX(3%) scale(1.025)}}
@keyframes awakening-body{0%,16%{opacity:0;transform:translateX(var(--cutin-entry)) scale(1.04)}34%,80%{opacity:1;transform:translateX(0) scale(1)}100%{opacity:0;transform:translateX(0) scale(1)}}
@keyframes awakening-word{0%,22%{opacity:0;translate:12px 0}38%,80%{opacity:1;translate:0 0}100%{opacity:0;translate:0 0}}
@keyframes awakening-slash{0%,17%{transform:rotate(-15deg) scaleX(0);opacity:0}25%{transform:rotate(-15deg) scaleX(1);opacity:1}40%,100%{transform:rotate(-15deg) scaleX(1.1);opacity:0}}

/* Endgame close-up: one victorious figure, enlarged across the board. */
.board-cutin[data-art=victory] .cutin-portrait{inset:0;width:100%;height:100%;aspect-ratio:auto;border:0;mask-image:linear-gradient(90deg,#000 0 66%,transparent 92%)}
.board-cutin[data-art=victory] .cutin-art{background-color:#130e13;transform-origin:28% 20%}
.board-cutin[data-art=victory] .cutin-art[data-art-state=ready]{background-size:auto 132%!important;background-position:28% 8%!important}
.board-cutin[data-art=victory] .cutin-focus{display:none}
.board-cutin[data-art=victory] .cutin-copy{z-index:5;left:54%;right:6%;text-align:right;padding:18px 14px;background:linear-gradient(90deg,transparent,#10090ddd 38%,#10090dee)}
.board-cutin[data-art=victory].active .cutin-art{animation:victory-closeup var(--cutin-duration) cubic-bezier(.16,.8,.22,1) both}
@keyframes victory-closeup{0%{transform:scale(1.14);filter:brightness(1.12)}28%,78%{transform:scale(1.04);filter:brightness(1)}100%{transform:scale(1.03);filter:brightness(.92)}}

.cast-gallery{padding:0;width:min(930px,94vw);max-width:none;max-height:94vh;max-height:94dvh;
  border:1px solid #b49a6f88;border-radius:14px;background:#0b1116;color:var(--ink);overflow:auto}
.cast-gallery::backdrop{background:#03070eef}
.gallery-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 20px;background:#111a21f5;border-bottom:1px solid var(--line);font:19px 'Yu Mincho',serif;color:var(--gold)}
.gallery-header small{font:9px monospace;letter-spacing:.14em;display:block;color:var(--muted);margin-top:5px}
.gallery-header button{min-height:44px;min-width:80px;font-size:12px}
.gallery-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center}
.gallery-picture{position:relative;height:min(73vh,710px);min-height:320px;overflow:hidden;background:radial-gradient(ellipse at 50% 65%,#35171c,#080d11 80%)}
#gallery-art{position:absolute;inset:0;background-repeat:no-repeat}
#gallery-art[data-format=sheet]{inset:auto;left:50%;top:50%;height:92%;width:auto;aspect-ratio:3/4;translate:-50% -50%}
#gallery-art[data-format=character-sheet]{inset:0;width:100%;height:100%;aspect-ratio:auto;translate:none;background-size:contain!important;background-position:center!important}
#gallery-state{position:absolute;left:18px;bottom:18px;border:1px solid #cfaf7566;background:#080e15d9;
  padding:5px 14px;color:#edd5ad;font:12px/1.7 'Yu Mincho',serif;letter-spacing:.13em}
.gallery-copy{padding:25px 28px;min-width:0}
.gallery-copy h2{font:52px/1.3 'Yu Mincho',serif;letter-spacing:.18em;margin:9px 0;color:#f6e3c8}
#gallery-title{color:var(--gold);font:16px/1.8 'Yu Mincho',serif;letter-spacing:.09em}
#gallery-line{font:15px/2 'Yu Mincho',serif;margin:22px 0}
.gallery-forms{display:flex;gap:8px;margin-top:24px}
.gallery-forms button{min-height:44px;flex:1;font-size:12px}
.gallery-forms button[aria-pressed=true]{background:#62303666;border-color:#c07a7a;color:#ffe4d3}
.gallery-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:22px}
.gallery-roster button{min-height:44px;padding:8px 2px;font:15px 'Yu Mincho',serif}
.gallery-roster button[aria-pressed=true]{border-color:var(--gold);background:#5a493655;color:#f9dba2}
#gallery-status{min-height:38px;margin-top:18px}

@media(max-width:720px){
  .board-stack:has(.board-cutin.active)>.hand-row{opacity:0;visibility:hidden}
  main{padding:16px 12px 0}.masthead{height:56px;padding-inline:15px}
  .introduction{margin-bottom:15px}.introduction h1{font-size:23px}
  .room-tabs{gap:6px;margin-bottom:12px}.room-tabs button{min-height:44px;padding:9px 12px;font-size:12px}
  .board-card,.cast-card{border-radius:12px}.board-caption{gap:8px;padding:9px 12px}
  .view-switch button{min-height:36px;min-width:40px}
  .board-options button,.game-actions button,.game-toolbar button,.hand-row button{min-height:44px}
  .game-toolbar select,.sound-style select{min-height:42px}
  .game-actions input{font-size:16px;width:min(44vw,160px)}
  .event-readout{min-height:92px}.event-readout small{font-size:11px}
  .cue-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 12px 15px}
  .cue-controls button{min-height:58px}.cue-controls b{font-size:16px}.cue-controls small{font-size:10px}
  .cast-card{grid-template-columns:130px minmax(0,1fr);gap:0 12px;padding:14px}
  .portrait-frame{grid-row:2/5;aspect-ratio:3/4;border-radius:6px}
  .cast-selector{grid-template-columns:repeat(4,minmax(0,1fr))}.cast-selector button{min-height:44px}
  .cast-selector small{display:none}.cast-selector b{font-size:20px}
  .character-line{font-size:13px;margin-bottom:10px}
  .character-titles p{display:none}.character-titles h2{font-size:25px}
  .cast-actions{grid-column:1/-1;grid-template-columns:1fr 1.4fr;padding:14px 0 0}
  .cast-card>.minor{grid-column:1/-1;font-size:10px;margin-top:12px}
  .stage[data-view="2d"] .board-cutin,.stage[data-view="2d"] #board-flare{inset:auto;left:50%;top:50%;width:96%;height:auto;aspect-ratio:1/1.02;transform:translate(-50%,-50%);border-radius:5px}
  .stage[data-view="2d"][data-npc=true] .board-cutin,.stage[data-view="2d"][data-npc=true] #board-flare{top:calc(50% + var(--npc-rail)/2 - 21px)}
  .stage[data-view="2d"] .cutin-copy{left:54%;right:3%;top:50%}
  .stage[data-view="2d"] .cutin-copy>strong{font-size:clamp(28px,10vw,38px);line-height:1.08;margin:4px 0}
  .stage[data-view="2d"] .cutin-copy>span{font-size:10px;line-height:1.45;letter-spacing:.05em}
  .stage[data-view="2d"] .cutin-copy>p{font-size:10px;line-height:1.5;margin-top:6px}
  .stage[data-view="2d"] .cutin-glyph{font-size:72px}.stage[data-view="2d"] .cutin-impact{right:5%;bottom:7%;font-size:clamp(50px,18vw,70px)}
  .stage[data-view="2d"] .cutin-signature{right:5%;bottom:4%;font-size:6px;letter-spacing:.1em}
  .board-cutin[data-art=full] .cutin-portrait{left:0;width:66%;height:94%;aspect-ratio:auto;bottom:3%;mask-image:linear-gradient(90deg,#000 0 82%,transparent 100%)}
  .board-cutin[data-art=full] .cutin-art{transform-origin:left bottom}
  .board-cutin[data-art=full] .cutin-art[data-art-state=ready]{background-size:contain!important;background-position:left bottom!important}
  .board-cutin[data-art=full].active .cutin-art{animation:mobile-cutin-fullbody var(--cutin-duration) ease-out both}
  .board-cutin[data-art=full][data-kind=move] .cutin-portrait{left:1%;height:90%;bottom:4%}
  .board-cutin[data-art=full] .cutin-copy{left:56%;right:4%;top:54%}
  .board-cutin[data-art=full] .cutin-copy>strong{font-size:38px;letter-spacing:.03em}
  .board-cutin[data-art=full] .cutin-copy>p{font-size:12px;margin-top:12px}
  .board-cutin[data-art=full] .cutin-copy>small{font-size:8px;overflow-wrap:anywhere}
  .board-cutin[data-art=full] .cutin-signature{bottom:4%;right:4%;font-size:7px}
  .cutin-focus{inset:10% 3% 27%}.cutin-seal{right:7%;font-size:20px;padding:7px}
  .stage[data-view="2d"] .board-cutin[data-art=victory] .cutin-copy{left:50%;right:4%;top:51%;padding:8px 7px}.stage[data-view="2d"] .board-cutin[data-art=victory] .cutin-copy>strong{font-size:35px}
  /* In 3D the figure and copy stay over the projected board; the outer field carries the impact. */
  .stage:not([data-view="2d"]) .cutin-veil{background:radial-gradient(ellipse at 50% 52%,#1e1019d9 0 38%,#0d0910ed 70%,#08060af5 100%)}
  .stage:not([data-view="2d"]) .cutin-veil::after{background:radial-gradient(ellipse at 50% 52%,transparent 0 36%,color-mix(in srgb,var(--cutin-color) 17%,transparent) 66%,transparent 90%)}
  .stage:not([data-view="2d"]) .cutin-moon{left:50%;top:50%;width:86%;height:88%;aspect-ratio:auto;transform:translate(-50%,-50%);border-radius:9px;box-shadow:inset 0 0 0 1px #130b11,inset 0 0 28px #070407b8}
  .stage:not([data-view="2d"]) .cutin-rays{inset:-42% -55%;transform:none;background:repeating-conic-gradient(from -8deg at 50% 50%,transparent 0 5deg,color-mix(in srgb,var(--cutin-color) 46%,transparent) 5.25deg 5.55deg,transparent 5.8deg 11deg);mask-image:radial-gradient(ellipse at 50% 50%,transparent 0 28%,#000 47% 78%,transparent 96%)}
  .stage:not([data-view="2d"]) .cutin-burst{left:50%;width:128%;mask-image:radial-gradient(ellipse at center,transparent 0 23%,#000 38% 64%,transparent 82%)}
  .stage:not([data-view="2d"]) .cutin-portrait{left:50%;translate:-50% 0;height:88%;bottom:3%;mask-image:linear-gradient(90deg,transparent 0,#000 8% 82%,transparent 100%)}
  .stage:not([data-view="2d"]) .board-cutin[data-art=full] .cutin-portrait{left:50%;width:70%;height:92%;bottom:2%}
  .stage:not([data-view="2d"]) .board-cutin[data-art=full] .cutin-art{transform-origin:center bottom}
  .stage:not([data-view="2d"]) .board-cutin[data-art=full] .cutin-art[data-art-state=ready]{background-position:center bottom!important}
  .stage:not([data-view="2d"]) .cutin-copy{left:51%;right:5%;top:54%;padding:5px 6px 7px;text-align:right;background:linear-gradient(90deg,transparent,#10090dc9 28%,#10090de8)}
  .stage:not([data-view="2d"]) .cutin-copy>strong{font-size:clamp(27px,8.5vw,34px);line-height:1.08;letter-spacing:.035em;margin:4px 0}
  .stage:not([data-view="2d"]) .cutin-copy>small{font-size:7px;line-height:1.4;letter-spacing:.06em}.stage:not([data-view="2d"]) .cutin-copy>span{font-size:10px;line-height:1.45;letter-spacing:.04em}.stage:not([data-view="2d"]) .cutin-copy>p{font-size:9px;line-height:1.5;margin:6px 0 0}
  .stage:not([data-view="2d"]) .cutin-glyph{right:3%;top:3%;font-size:64px}.stage:not([data-view="2d"]) .cutin-impact{right:7%;bottom:7%;font-size:clamp(46px,15vw,62px)}.stage:not([data-view="2d"]) .cutin-signature{right:7%;bottom:4%;font-size:6px;letter-spacing:.08em}
  .stage:not([data-view="2d"]) .board-cutin.active:not([data-kind=move]) .cutin-impact{animation:mobile-3d-impact var(--cutin-duration) cubic-bezier(.15,.8,.2,1) both}
  .stage:not([data-view="2d"]) .board-cutin[data-art=victory] .cutin-portrait{inset:0;left:0;translate:0;width:100%;height:100%;aspect-ratio:auto;mask-image:linear-gradient(90deg,#000 0 66%,transparent 92%)}
  .stage:not([data-view="2d"]) .board-cutin[data-art=victory] .cutin-copy{left:51%;right:5%;top:53%;padding:7px 6px}.stage:not([data-view="2d"]) .board-cutin[data-art=victory] .cutin-copy>strong{font-size:32px}
  .cast-gallery{width:calc(100vw - 20px);max-height:94vh;max-height:94dvh;border-radius:12px}
  .gallery-header{padding:9px 13px}.gallery-header small{font-size:8px}
  .gallery-layout{display:block}.gallery-picture{height:54vh;height:54dvh;min-height:260px;max-height:530px}
  .gallery-copy{padding:18px 18px 22px}.gallery-copy h2{font-size:38px;margin:6px 0}
  #gallery-title{font-size:14px;margin:8px 0}#gallery-line{font-size:14px;margin:12px 0}
  .gallery-forms{margin-top:15px}.gallery-roster{margin-top:16px}
  #gallery-art[data-format=sheet]{height:90%;max-width:92%}
}
@keyframes mobile-cutin-fullbody{0%{transform:scale(.96);filter:brightness(1.12)}28%,100%{transform:scale(1);filter:brightness(1)}}
@keyframes mobile-3d-impact{0%,12%{opacity:0;translate:6% -3%;scale:1.25}18%{opacity:1;translate:0 0;scale:.92}27%{scale:1.06}34%,72%{opacity:1;scale:1}100%{opacity:0;translate:-2% 0;scale:1.01}}
@media(max-width:370px){
  .room-tabs button{padding-inline:9px}.cast-card{grid-template-columns:110px minmax(0,1fr);gap:0 9px;padding:12px}
  .cast-selector{gap:4px}.introduction h1{font-size:20px}.character-line{font-size:12px}
  .board-cutin[data-art=full] .cutin-copy>strong{font-size:32px}
  .board-cutin[data-art=full] .cutin-copy>p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.board-cutin{display:none!important}}

/* Mobile play: put the board first, keep secondary controls reachable on demand. */
.game-settings{margin-left:auto;min-width:0}
.game-settings-fields{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.game-settings summary,.move-entry summary{cursor:pointer;list-style:none;border:1px solid var(--line);border-radius:6px;padding:10px 13px;color:var(--cyan);background:#15252b}
.game-settings summary::-webkit-details-marker,.move-entry summary::-webkit-details-marker{display:none}
.game-settings summary::after,.move-entry summary::after{content:'＋';float:right;margin-left:12px;color:var(--gold)}
.game-settings[open] summary::after,.move-entry[open] summary::after{content:'−'}
.move-entry{margin-right:auto;min-width:0}
.move-entry summary small{font:11px monospace;color:#a9bcbb;margin-left:5px}
@media(min-width:721px){.game-settings>summary,.move-entry>summary{display:none}}
@media(max-width:720px){
  main{padding:12px 8px 0}.masthead{height:50px;padding-inline:12px}
  .brand{font-size:19px}.atelier-link{font-size:12px}
  .introduction{margin-bottom:12px;display:block}
  .introduction h1{font-size:23px;line-height:1.45}
  .introduction .eyebrow,.introduction .preview-note,.introduction p:not(.eyebrow){display:none}
  .room-tabs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-bottom:10px}
  .room-tabs button{width:100%;font-size:13px;padding:8px 4px;min-height:44px}
  .room-tabs #quick-gallery{margin:0}
  .board-caption{font-size:14px;padding:6px 10px}
  .view-switch button{font-size:13px;min-width:44px;min-height:44px}
  .game-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px 10px}
  .game-toolbar>.turn-readout{margin:0;gap:3px}
  #game-turn{font-size:15px;line-height:1.5}#game-ply{font-size:12px;line-height:1.4;color:#b7c6ca}
  .game-settings{max-width:100%;margin:0}
  .game-settings>summary{font-size:13px;min-height:44px}
  .game-settings[open]{grid-column:1/-1;width:100%}
  .game-settings[open]>summary{width:fit-content;margin-left:auto}
  .game-settings-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:12px 0 3px}
  .game-settings-fields label{display:grid;gap:5px;font-size:13px;color:#b9c9c8;min-width:0}
  .game-toolbar select,.game-toolbar #npc-level{font-size:16px;min-height:46px;width:100%;max-width:100%;padding:8px}
  .game-toolbar #new-game{grid-column:1/-1;font-size:14px;min-height:44px}
  .hand-row{padding:6px 10px;gap:6px;min-height:38px}
  .hand-row>span{font-size:13px;color:#b9c9c8}.hand-row button{min-width:44px;min-height:44px;font-size:21px;padding:5px 8px}
  .hand-row button small{font-size:12px;color:#c6d5d1}
  .stage{height:clamp(314px,calc(100vw - 6px),550px)}
  .opponent-copy small{font-size:11px;letter-spacing:.08em}.opponent-copy span{font-size:12px}
  .npc-face{border-color:#dbc99ab0}
  .position-label{font-size:12px;letter-spacing:.03em;bottom:8px;padding:3px 10px;color:#e1e8e4;background:#08121fe6}
  .board-2d{width:96%;padding:3px;aspect-ratio:1/1.02}
  .board-2d button{padding:1px}.tile-piece{font-size:clamp(20px,5.5vw,29px);text-shadow:0 1px 2px #000}
  .tile-piece.promoted{font-size:clamp(13px,3.8vw,20px)}
  .board-2d button.target::after{width:9px;height:9px;right:2px;bottom:2px}
  .game-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}
  #game-notice{grid-column:1/-1;order:-1;font-size:14px;line-height:1.65;margin:0 0 2px;min-height:24px;color:#cdd8d7}
  .game-actions>button{font-size:14px;min-height:44px}.game-actions #resign-game{border-color:#ac728755}
  #cpu-retry{grid-column:1/-1}
  .move-entry{grid-column:1/-1;order:2;margin:0}
  .move-entry summary{font-size:14px;min-height:44px}
  .move-entry form{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}
  .game-actions input{width:100%;font-size:16px;min-height:46px}
  .move-entry form button{font-size:15px;min-width:68px;min-height:46px}
  .event-readout{padding:14px 12px;min-height:0;gap:6px}.event-readout strong{font-size:17px}
  .event-readout small{font-size:13px;line-height:1.7}.event-readout>span{font-size:10px;letter-spacing:.09em}
  .board-card[data-room=play] .event-readout{display:none}
  .board-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}
  .board-options button{min-height:44px;font-size:14px}
  .board-options #zoom-reset{margin:0;grid-column:1/-1;font-size:13px}
  .board-options label{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) 38px;gap:10px;font-size:14px;min-height:44px}
  .board-options input{width:100%;height:36px}.board-options output{font-size:13px}
  .sound-style{padding:0 12px 12px;gap:9px}.sound-style label{display:grid;gap:6px;width:100%;font-size:13px;color:#bacbc9}
  .sound-style select{font-size:16px;min-height:46px;width:100%;max-width:100%}.sound-style>span{font-size:12px}
  #audio-status{padding:0 12px 14px;font-size:13px;line-height:1.7}
  .minor,.cast-card>.minor,.score-panel .minor{font-size:13px;line-height:1.8;color:#adbfbe}
  .cast-card{margin-top:3px;grid-template-columns:128px minmax(0,1fr)}
  .cast-heading .eyebrow{font-size:11px}.character-line{font-size:14px}
  .cast-actions button{font-size:14px;min-height:46px}
  .score-panel{padding:16px 12px}.score-heading{gap:8px}.score-heading button{font-size:14px;min-height:46px}
  .move-list li{font-size:14px;padding:11px 8px}.move-list li small{font-size:12px;margin-right:7px}
  .music-card{padding:18px 12px}.music-intro>p:not(.eyebrow){font-size:13px}
  .file-picker{font-size:15px;min-height:46px}.music-options{font-size:14px;display:grid;grid-template-columns:1fr;gap:12px}
  .music-options label{min-height:44px}.music-options select{font-size:16px;min-height:44px}
  .music-options input[type=range]{flex:1;height:36px}.music-options input[type=checkbox]{width:20px;height:20px}
  .music-options button{font-size:14px;min-height:44px}
  .assembly summary{font-size:13px;min-height:44px;padding-block:10px;line-height:1.7}
  dialog:not(.cast-gallery){padding:22px 18px;width:calc(100vw - 24px);max-height:90vh;overflow:auto}
  dialog:not(.cast-gallery)>p:not(.eyebrow){font-size:15px}
  dialog button,.gallery-forms button,.gallery-header button{min-height:46px;font-size:14px}
  .gallery-roster button{min-height:46px;font-size:17px}
}
@media(max-width:350px){
  .introduction h1{font-size:21px}.room-tabs button{font-size:12px}
  .game-settings-fields{grid-template-columns:1fr}.cast-card{grid-template-columns:104px minmax(0,1fr);gap:0 9px;padding:12px}
  .cast-actions{grid-template-columns:1fr}.cast-selector{gap:4px}
}
