.tile{--width:var(--tile);padding:0;display:block;position:relative;flex:0 0 var(--width);width:var(--width);height:calc(var(--width)*1.4);border-radius:5px;background:#f0e7ce;border:0;box-shadow:0 3px 2px #0008;user-select:none;touch-action:none;isolation:isolate;overflow:visible;transition:box-shadow .16s,outline .12s}
.tile::after{content:'';position:absolute;inset:2px;border:1px solid #8870466b;border-radius:4px;pointer-events:none;z-index:8}
.tile.selected{outline:3px solid #e6c17d;outline-offset:3px;box-shadow:0 0 22px #e4af5850;z-index:10}
.tile.last-played{box-shadow:0 0 0 2px #d6bb7e,0 0 14px #eab95650}
.tile:hover{z-index:12}
.tile .surface{display:block;position:absolute;inset:0;overflow:hidden;border-radius:5px;pointer-events:none}
.tile img{position:absolute;pointer-events:none;object-fit:contain;width:100%;height:100%;inset:0}
.tile .bg{object-fit:cover}
.tile .character{z-index:2;inset:2%;width:96%;height:96%}
.tile .prop{position:absolute;transform:translate(-50%,-50%);z-index:4}
.tile .prop-motion{position:absolute;inset:0;transform-origin:50% 20%}
.tile .index{position:absolute;top:3px;left:3px;z-index:9;font:bold 19px Georgia,serif;line-height:.98;text-align:center;display:flex;flex-direction:column;padding:1px 3px 3px;background:linear-gradient(#f8f0dbe8,#f8f0dbb8);border-radius:3px}
.tile .suit{font-size:15px;margin-top:1px}
.tile .number{font:8px -apple-system,sans-serif;margin-top:2px;color:inherit}
.tile .card-name{position:absolute;bottom:4%;left:15%;width:70%;font-size:6px;letter-spacing:-.1px;color:#644c2d;background:#fff5dee8;border-radius:4px;z-index:8;text-align:center;padding:2px 0}
.tile .copy{position:absolute;right:5px;bottom:4px;z-index:10;color:#5e543c;font-size:6px}
.tile.joker .surface{background:radial-gradient(ellipse,#4a6251,#1c302d);border:3px solid #c8af74}
.joker .joker-glyph{position:absolute;inset:0;display:grid;place-items:center;color:#e4c47a;font-size:calc(var(--width)*.62)}
.joker .joker-word{position:absolute;bottom:14%;left:0;width:100%;font:7px Georgia;color:#e3d2a5;letter-spacing:1px}
.joker .index{font-size:12px;line-height:1.3;color:#d6bc7b;background:transparent}
#combo{position:fixed;left:40%;top:35%;pointer-events:none;color:#efce84;text-shadow:0 4px 12px #000;font:38px Georgia;letter-spacing:5px;opacity:0;z-index:50}
#combo.show{animation:combo 1.6s both}
.reduced #combo.show{animation:fade 1.5s}
@media(max-width:760px){#combo{left:20%;font-size:28px}}
.tile[data-fx=connect],.tile[data-fx=combo]{box-shadow:0 0 0 3px #f4d28b,0 0 27px #e6bc5b99;z-index:14}
.tile[data-fx=reject]{box-shadow:0 0 0 3px #ec7d69,0 0 20px #ce493e66;z-index:14}
.tile[data-fx]::before{position:absolute;right:-5px;top:-6px;z-index:20;display:grid;place-items:center;width:18px;height:18px;border:1px solid #f4d28b;border-radius:50%;background:#355043;color:#ffe6a7;content:'✓';font:bold 12px sans-serif}
.tile[data-fx=place]::before{display:none}
.tile[data-fx=reject]::before{content:'!';background:#713a32;border-color:#f5a492;color:#ffdece}
.tile{will-change:auto}
#fx-layer{position:fixed;inset:0;z-index:35;pointer-events:none;overflow:hidden}
.impact-ring{position:absolute;width:64px;height:64px;border:2px solid #eac27d;border-radius:50%;box-shadow:0 0 13px #edc5737f,inset 0 0 8px #edc57333}
.impact-spark{position:absolute;width:4px;height:10px;box-shadow:0 0 7px #ffe9a4;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.connection-trail{position:absolute;inset:0;overflow:visible;filter:drop-shadow(0 0 4px #ffd576)}
.connection-trail path{fill:none;stroke:#ffe5a7;stroke-width:2;stroke-linecap:round}
#combo.effect-banner{left:40%;top:25%;font:500 20px 'Apple SD Gothic Neo',sans-serif;letter-spacing:2px;color:#ffe3a0;padding:14px 27px;border:1px solid #d8b669;background:linear-gradient(90deg,#213b2be8,#4a4d2de8,#213b2be8);box-shadow:0 8px 35px #0008,0 0 35px #dbc08033;border-radius:4px;white-space:nowrap;transform:translateX(-50%);text-shadow:0 2px 4px #000;z-index:45}
#combo.effect-banner.combo{font-size:30px;border-width:2px;padding:20px 38px;background:linear-gradient(100deg,#353d26f0,#695d2bf0,#353d26f0);box-shadow:0 6px 40px #0007,0 0 80px #e0bd5b5c}
#combo.effect-banner.reject{border-color:#f2a18b;color:#ffd2c5;background:#4b2924f2;box-shadow:0 4px 25px #0006;animation:none}
.reduced #combo.effect-banner{transform:translateX(-50%)}
.reduced .impact-ring,.reduced .impact-spark,.reduced .connection-trail{display:none}
@media(max-width:760px){#combo.effect-banner{left:50%;top:24%;font-size:17px;padding:11px 19px}
#combo.effect-banner.combo{font-size:23px;padding:14px 24px}}
.tile.recommended .guide-marker{display:block;position:absolute;right:1px;top:1px;z-index:15;color:#17382f;background:#aff0d8;border-radius:3px;font-size:10px;padding:1px 3px;pointer-events:none}
.tile.recommended:not([data-fx]){box-shadow:0 0 0 2px #93d9be,0 0 13px #93d9be35}
.tile.selected.recommended:not([data-fx]){box-shadow:0 0 0 2px #93d9be,0 0 18px #e4af5850}
.tile.joker .surface{background:radial-gradient(ellipse at 65% 65%,#cdc0d3,#efe5d1 70%);border:0}
.joker .index{color:#514057;background:#f8f0dbe8;font:bold 14px Georgia;line-height:1}
.joker .character{inset:0;width:100%;height:100%}
.joker .card-name{color:#514057}
.hero-showcase{position:fixed;pointer-events:none;width:0;height:0;z-index:2;isolation:isolate}
.hero-showcase .hero-card{position:absolute;--width:var(--hero-width);transform:translate(-50%,-50%);box-shadow:0 20px 70px #000b,0 0 38px var(--hero-color);z-index:3}
.hero-card .index{font-size:calc(var(--hero-width)*.25);top:7px;left:7px}
.hero-card .suit{font-size:calc(var(--hero-width)*.19)}
.hero-card .number{font-size:calc(var(--hero-width)*.12)}
.hero-card .card-name{font-size:calc(var(--hero-width)*.085)}
.hero-card .copy{font-size:13px}
.hero-card .guide-marker{display:none!important}
.hero-card.joker .index{font-size:calc(var(--hero-width)*.2)}
.hero-halo{position:absolute;width:450px;height:450px;border-radius:50%;background:repeating-conic-gradient(from 10deg,transparent 0deg 12deg,var(--hero-color) 13deg 14deg,transparent 15deg 30deg);mask-image:radial-gradient(transparent 12%,#0008 30%,transparent 67%);z-index:0}
.hero-glitter{position:absolute;display:block;left:0;top:0;width:11px;height:17px;background:#fff7de;box-shadow:0 0 9px var(--hero-color);clip-path:polygon(50% 0,62% 37%,100% 50%,62% 63%,50% 100%,38% 63%,0 50%,38% 37%);z-index:1}
.reduced .hero-showcase .hero-card{--hero-width:120px;box-shadow:0 6px 24px #0008}
@media(max-width:550px){.hero-halo{width:300px;height:300px}}
#rack .tile{transition:translate .16s,box-shadow .16s}
#rack .tile:hover{translate:0 -7px;box-shadow:0 8px 16px #0008,0 0 0 2px var(--theme-accent)}
.action-impact{position:fixed;border-radius:50%;border:3px solid var(--theme-accent);box-shadow:0 0 20px var(--theme-accent),inset 0 0 18px var(--theme-accent);width:110px;height:110px;pointer-events:none}
.impact-slash{position:fixed;height:3px;width:160px;background:linear-gradient(90deg,transparent,#fff5ce,transparent);box-shadow:0 0 12px var(--theme-accent);pointer-events:none;transform-origin:center}
#combo.effect-banner{border-radius:8px;font-weight:800;background:linear-gradient(110deg,#0c171bf5,var(--table-dark),#0c171bf5);border-color:var(--theme-accent);color:#fff2cf;letter-spacing:1px}
#combo.effect-banner.combo{background:linear-gradient(110deg,#121a20f5,var(--table-dark),#121a20f5);border-color:var(--theme-accent)}
@media(prefers-reduced-motion:reduce){#rack .tile{transition:none}
#rack .tile:hover{translate:none}}
.reduced #rack .tile{transition:none}
.reduced #rack .tile:hover{translate:none}
@media(min-width:1000px) and (min-height:620px){.app #rack .tile{--width:clamp(52px,calc((100cqw - 110px)/14),76px)}}
button:not(.tile){font-weight:700}
.brand span,.card-name,.copy,footer,.guide-panel,#combo.effect-banner{font-family:var(--font-story)}
.hero-showcase .hero-card,.hero-glitter,.hero-halo{opacity:0}
.meld.followed{border-color:#e6c789;background:#61704e60;box-shadow:0 0 0 1px #e6c78955,inset 0 0 25px #e6c78910}
.art-solea-1 .prop{left:27.0%;top:61.0%;width:66.0%;height:49.0%;z-index:4}.art-solea-1 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-1 .index{color:#b20c1b}
.art-solea-1 .prop-inner{transform:scale(0.42)}
.art-solea-2 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-2 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-2 .index{color:#b20c1b}
.art-solea-3 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-3 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-3 .index{color:#b20c1b}
.art-solea-4 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-4 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-4 .index{color:#b20c1b}
.art-solea-5 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-5 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-5 .index{color:#b20c1b}
.art-solea-6 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-6 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-6 .index{color:#b20c1b}
.art-solea-7 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-7 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-7 .index{color:#b20c1b}
.art-solea-8 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-8 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-8 .index{color:#b20c1b}
.art-solea-9 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-9 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-9 .index{color:#b20c1b}
.art-solea-10 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-10 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-10 .index{color:#b20c1b}
.art-solea-11 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-11 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-11 .index{color:#b20c1b}
.art-solea-12 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-12 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-12 .index{color:#b20c1b}
.art-solea-13 .prop{left:30.0%;top:61.0%;width:43.0%;height:38.0%;z-index:4}.art-solea-13 .prop-motion{transform-origin:50.0% 21.999999999999996%}.art-solea-13 .index{color:#b20c1b}
.art-nokheim-1 .prop{left:32.0%;top:73.5%;width:55.00000000000001%;height:41.0%;z-index:4}.art-nokheim-1 .prop-motion{transform-origin:50.0% 80.0%}.art-nokheim-1 .index{color:#263b55}
.art-nokheim-2 .prop{left:30.0%;top:68.0%;width:49.0%;height:42.0%;z-index:4}.art-nokheim-2 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-2 .index{color:#263b55}
.art-nokheim-3 .prop{left:30.0%;top:68.0%;width:49.0%;height:42.0%;z-index:4}.art-nokheim-3 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-3 .index{color:#263b55}
.art-nokheim-4 .prop{left:22.0%;top:54.0%;width:39.0%;height:28.000000000000004%;z-index:4}.art-nokheim-4 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-4 .index{color:#263b55}
.art-nokheim-5 .prop{left:25.0%;top:43.0%;width:43.0%;height:32.0%;z-index:4}.art-nokheim-5 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-5 .index{color:#263b55}
.art-nokheim-6 .prop{left:45.0%;top:61.0%;width:68.0%;height:42.0%;z-index:4}.art-nokheim-6 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-6 .index{color:#263b55}
.art-nokheim-7 .prop{left:48.0%;top:26.0%;width:19.0%;height:13.0%;z-index:4}.art-nokheim-7 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-7 .index{color:#263b55}
.art-nokheim-8 .prop{left:30.0%;top:60.0%;width:61.0%;height:68.0%;z-index:1}.art-nokheim-8 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-8 .index{color:#263b55}
.art-nokheim-9 .prop{left:30.0%;top:68.0%;width:49.0%;height:42.0%;z-index:4}.art-nokheim-9 .prop-motion{transform-origin:50.0% 15.000000000000002%}.art-nokheim-9 .index{color:#263b55}
.art-nokheim-10 .prop{left:30.0%;top:68.0%;width:49.0%;height:42.0%;z-index:4}.art-nokheim-10 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-10 .index{color:#263b55}
.art-nokheim-11 .prop{left:30.0%;top:68.0%;width:49.0%;height:42.0%;z-index:4}.art-nokheim-11 .prop-motion{transform-origin:50.0% 15.000000000000002%}.art-nokheim-11 .index{color:#263b55}
.art-nokheim-12 .prop{left:28.000000000000004%;top:72.0%;width:56.00000000000001%;height:49.0%;z-index:4}.art-nokheim-12 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-12 .index{color:#263b55}
.art-nokheim-13 .prop{left:27.0%;top:80.0%;width:45.0%;height:26.0%;z-index:4}.art-nokheim-13 .prop-motion{transform-origin:50.0% 70.0%}.art-nokheim-13 .index{color:#263b55}
.art-archeon-1 .prop{left:66.8%;top:44.800000000000004%;width:34.0%;height:27.0%;z-index:4}.art-archeon-1 .prop-motion{transform-origin:50.0% 5.000000000000004%}.art-archeon-1 .index{color:#376c72}
.art-archeon-2 .prop{left:28.999999999999996%;top:66.0%;width:47.0%;height:40.0%;z-index:4}.art-archeon-2 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-2 .index{color:#376c72}
.art-archeon-3 .prop{left:28.999999999999996%;top:66.0%;width:47.0%;height:40.0%;z-index:4}.art-archeon-3 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-3 .index{color:#376c72}
.art-archeon-4 .prop{left:28.999999999999996%;top:66.0%;width:47.0%;height:40.0%;z-index:4}.art-archeon-4 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-4 .index{color:#376c72}
.art-archeon-5 .prop{left:28.999999999999996%;top:66.0%;width:47.0%;height:40.0%;z-index:4}.art-archeon-5 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-5 .index{color:#376c72}
.art-archeon-6 .prop{left:25.0%;top:64.0%;width:49.0%;height:45.0%;z-index:4}.art-archeon-6 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-6 .index{color:#376c72}
.art-archeon-7 .prop{left:28.999999999999996%;top:66.0%;width:47.0%;height:40.0%;z-index:4}.art-archeon-7 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-7 .index{color:#376c72}
.art-archeon-8 .prop{left:27.500000000000004%;top:69.0%;width:54.0%;height:43.0%;z-index:4}.art-archeon-8 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-8 .index{color:#376c72}
.art-archeon-9 .prop{left:27.0%;top:60.0%;width:46.0%;height:48.0%;z-index:4}.art-archeon-9 .prop-motion{transform-origin:50.0% 15.000000000000002%}.art-archeon-9 .index{color:#376c72}
.art-archeon-10 .prop{left:28.999999999999996%;top:74.0%;width:56.99999999999999%;height:35.0%;z-index:4}.art-archeon-10 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-10 .index{color:#376c72}
.art-archeon-11 .prop{left:28.000000000000004%;top:65.0%;width:50.0%;height:36.0%;z-index:4}.art-archeon-11 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-11 .index{color:#376c72}
.art-archeon-12 .prop{left:28.999999999999996%;top:66.0%;width:47.0%;height:40.0%;z-index:4}.art-archeon-12 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-12 .index{color:#376c72}
.art-archeon-13 .prop{left:27.0%;top:64.0%;width:47.0%;height:39.0%;z-index:4}.art-archeon-13 .prop-motion{transform-origin:50.0% 70.0%}.art-archeon-13 .index{color:#376c72}
.art-verdan-1 .prop{left:63.0%;top:8.7%;width:27.0%;height:19.0%;z-index:4}.art-verdan-1 .prop-motion{transform-origin:50.0% 85.0%}.art-verdan-1 .index{color:#39664c}
.art-verdan-2 .prop{left:28.999999999999996%;top:67.0%;width:49.0%;height:42.0%;z-index:4}.art-verdan-2 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-2 .index{color:#39664c}
.art-verdan-3 .prop{left:28.999999999999996%;top:67.0%;width:49.0%;height:42.0%;z-index:4}.art-verdan-3 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-3 .index{color:#39664c}
.art-verdan-4 .prop{left:28.999999999999996%;top:67.0%;width:49.0%;height:42.0%;z-index:4}.art-verdan-4 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-4 .index{color:#39664c}
.art-verdan-5 .prop{left:28.999999999999996%;top:67.0%;width:49.0%;height:42.0%;z-index:4}.art-verdan-5 .prop-motion{transform-origin:50.0% 15.000000000000002%}.art-verdan-5 .index{color:#39664c}
.art-verdan-6 .prop{left:28.999999999999996%;top:67.0%;width:49.0%;height:42.0%;z-index:4}.art-verdan-6 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-6 .index{color:#39664c}
.art-verdan-7 .prop{left:67.5%;top:47.0%;width:24.0%;height:21.0%;z-index:4}.art-verdan-7 .prop-motion{transform-origin:61.0% 2.0000000000000018%}.art-verdan-7 .index{color:#39664c}
.art-verdan-8 .prop{left:26.0%;top:67.0%;width:47.0%;height:51.0%;z-index:4}.art-verdan-8 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-8 .index{color:#39664c}
.art-verdan-9 .prop{left:25.5%;top:60.0%;width:66.0%;height:62.0%;z-index:4}.art-verdan-9 .prop-motion{transform-origin:50.0% 15.000000000000002%}.art-verdan-9 .index{color:#39664c}
.art-verdan-10 .prop{left:28.999999999999996%;top:82.0%;width:50.0%;height:25.0%;z-index:4}.art-verdan-10 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-10 .index{color:#39664c}
.art-verdan-11 .prop{left:28.999999999999996%;top:67.0%;width:49.0%;height:42.0%;z-index:4}.art-verdan-11 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-11 .index{color:#39664c}
.art-verdan-12 .prop{left:30.0%;top:71.0%;width:54.0%;height:42.0%;z-index:4}.art-verdan-12 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-12 .index{color:#39664c}
.art-verdan-13 .prop{left:20.0%;top:43.0%;width:35.0%;height:28.000000000000004%;z-index:4}.art-verdan-13 .prop-motion{transform-origin:50.0% 70.0%}.art-verdan-13 .index{color:#39664c}
:root{--tile:76px;--theme-accent:#ecc779}.card.tile{flex-shrink:0}.rack .tile{--tile:83px}.tile .playable-label{z-index:12}.hero-card .playable-label{display:none}.tile.hero-card{width:var(--hero-width);height:calc(var(--hero-width)*1.4)}@media(max-width:650px){.card.tile{--tile:57px}.rack .card.tile{--tile:66px}}
