/* CrownCade tickets T4: the prize counter and the ticket chip, from Sigil's frames r1 (approved by Jared 2026-11-04 02:42).
 * The shell uses CrownCade tokens; each booth borrows its game's look. Game fonts are Latin subsets (OFL texts in fonts/games/). */
@font-face{font-family:Unbounded;src:url(../fonts/games/unbounded-latin.woff2) format('woff2');font-weight:200 900;font-display:swap}
@font-face{font-family:Figtree;src:url(../fonts/games/figtree-latin.woff2) format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:Lilita;src:url(../fonts/games/lilitaone-latin.woff2) format('woff2');font-display:swap}
@font-face{font-family:Nunito;src:url(../fonts/games/nunito-latin.woff2) format('woff2');font-weight:200 1000;font-display:swap}
.tk-ico{width:44px;height:28px;image-rendering:pixelated;vertical-align:middle;flex:none}
.tk-ico.sm{width:22px;height:14px}
.tk-wrap{max-width:1180px;margin:0 auto;padding:24px 0 56px}
.tk-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text-strong);font:700 1rem/1 var(--font-body);text-decoration:none;margin-bottom:18px}
.tk-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end}
.tk-head h1{font:400 2rem/1.25 var(--font-display);text-transform:uppercase;color:var(--text-strong);margin:10px 0 8px}
.tk-head p{font:500 1.0625rem/1.55 var(--font-body);color:var(--text-body);margin:0;max-width:56ch}
/* wallet */
.tk-wallet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.tk-bal{display:flex;gap:14px;align-items:center;padding:14px 16px;border-radius:var(--radius);background:var(--surface-raised);border:1px solid var(--border-subtle)}
.tk-bal b{display:block;font:400 1.25rem/1.2 var(--font-display);color:var(--text-strong)}
.tk-bal span{display:block;font:500 .9375rem/1.4 var(--font-body);color:var(--text-meta);margin-top:4px}
.tk-bal.gold{border-color:color-mix(in oklch,var(--neon-gold-500) 55%,transparent)}
.tk-bal.gold b{color:var(--neon-gold-500)}
.tk-how{font:500 .9375rem/1.55 var(--font-body);color:var(--text-meta);margin:12px 0 0}
.tk-how a{color:var(--accent-link-text)}
/* filters: wrap, never scroll sideways (Jared #281) */
.tk-filters{margin-top:26px;display:grid;gap:12px}
.tk-frow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tk-frow .lbl{font:var(--t-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--text-meta);width:64px;flex:none}
.tk-chip{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text-body);font:600 .9375rem/1 var(--font-body);display:inline-flex;align-items:center;gap:6px}
.tk-chip.on{background:var(--neon-gold-500);border-color:var(--neon-gold-500);color:#1a1200}
/* booths */
.tk-booth{margin-top:28px;border-radius:14px;overflow:hidden;border:1px solid var(--border-subtle)}
.tk-bhead{display:flex;align-items:center;gap:14px;padding:16px 20px;flex-wrap:wrap}
.tk-bhead h2{margin:0}
.tk-bhead .more{margin-left:auto;font:600 .9375rem/1 var(--font-body)}
.tk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:4px 20px 20px}
.tk-card{border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.tk-art{aspect-ratio:4/3;display:grid;place-items:center;position:relative;overflow:hidden}
.tk-art img.rk{width:62%;height:auto}
/* T7 try-on: the item's own render on the Riffkin (outfits on its head, frames round the tile, the rest beside it) */
.tk-art img.rk-on{position:absolute;object-fit:contain}
.tk-art img.rk-on.k-outfit,.tk-art img.rk-on.k-paint{left:50%;top:2%;width:34%;height:40%;transform:translateX(-50%)}
.tk-art img.rk-on.k-card_frame{inset:4%;width:92%;height:92%}
.tk-art img.rk-on.k-decor,.tk-art img.rk-on.k-trail{left:4%;bottom:4%;width:36%;height:40%}
.tk-art img.tc{width:100%;height:100%;object-fit:cover}
.tk-info{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.tk-info .nm{font-weight:800;font-size:1.0625rem;line-height:1.25}
.tk-info .ty{font-size:.875rem;opacity:.8}
.tk-buy{margin-top:auto;padding-top:8px;display:flex;align-items:center;gap:10px;justify-content:space-between}
.tk-price{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:1rem}
.tk-get{min-height:40px;padding:0 16px;border-radius:999px;border:0;font:800 .9375rem/1 var(--font-body);cursor:pointer}
.tk-own{font-weight:700;font-size:.9375rem}
/* CrownCade booth (plain house look) */
.b-cc{background:var(--surface-sunken)}
.b-cc .tk-bhead h2{font:400 1.125rem/1.3 var(--font-display);text-transform:uppercase;color:var(--text-strong)}
.b-cc .tk-bhead .more{color:var(--accent-link-text)}
.b-cc .tk-card{background:var(--surface-raised);border:1px solid var(--border-subtle);color:var(--text-strong)}
.b-cc .tk-art{background:radial-gradient(circle at 50% 40%,#2a2350,#120f24)}
.b-cc .tk-info .ty{color:var(--text-meta);opacity:1}
.b-cc .tk-get{background:var(--neon-gold-500);color:#1a1200}
/* Riffkins booth: the game's own mint + Unbounded/Figtree */
.b-rk{background:#eef5f4;border-color:#d3e3e1;color:#12333a;font-family:Figtree,sans-serif}
.b-rk .tk-bhead h2{font:800 1.375rem/1.1 Unbounded,sans-serif;letter-spacing:-.02em;color:#12333a}
.b-rk .tk-bhead .tag{font:700 .75rem/1 Figtree;letter-spacing:.12em;text-transform:uppercase;color:#557077}
.b-rk .tk-bhead .more{color:#0b7d74}
.b-rk .tk-card{background:#fff;border:1.5px solid #d3e3e1;box-shadow:0 10px 22px -16px rgba(15,54,64,.35)}
.b-rk .tk-art{background:#fff;border-bottom:1.5px solid #e4efed}
.b-rk .tk-info{font-family:Figtree}
.b-rk .tk-get{background:#12c2b2;color:#fff;font-family:Figtree}
.b-rk .tk-own{color:#0b7d74}
/* Tiny Circuit booth: teal + cream, Lilita/Nunito */
.b-tc{background:linear-gradient(160deg,#2f6b66,#3f8a7f 60%,#c9b98a 140%);border-color:#2a5d58;color:#1f3d3a;font-family:Nunito,sans-serif}
.b-tc .tk-bhead h2{font:400 1.75rem/1 Lilita,sans-serif;color:#fff1cf;letter-spacing:.01em;text-shadow:0 2px 0 #1c4744}
.b-tc .tk-bhead .tag{font:800 .75rem/1 Nunito;letter-spacing:.14em;text-transform:uppercase;color:#cfe6dd}
.b-tc .tk-bhead .more{color:#fff1cf}
.b-tc .tk-card{background:#fbf3df;border:2px solid #f0e2bd;box-shadow:0 10px 20px -14px rgba(0,0,0,.45)}
.b-tc .tk-info .nm{font:400 1.25rem/1.1 Lilita,sans-serif;color:#1f3d3a;letter-spacing:.01em}
.b-tc .tk-get{background:#f2c66d;color:#3a2a07;box-shadow:0 3px 0 #c8963a;font-family:Nunito}
.b-tc .tk-own{color:#2f6b66}
.tk-note{font:500 .9375rem/1.5 var(--font-body);color:var(--text-meta);margin:22px 0 0;max-width:70ch}
/* try-on bits */
.hat{position:absolute;left:50%;top:6%;width:24%;transform:translateX(-62%) rotate(-12deg)}
.frame-gold{position:absolute;inset:10% 18%;border:8px solid #f2c94c;border-radius:14px;box-shadow:inset 0 0 0 3px #b8860b,0 0 0 3px #b8860b}
.frame-leaf{position:absolute;inset:10% 18%;border:8px solid #7cc46a;border-radius:20px;box-shadow:inset 0 0 0 3px #3f7d33,0 0 0 3px #3f7d33}
/* confirm dialog */
.tk-scrim{position:fixed;inset:0;background:rgba(6,4,14,.72);z-index:2000;display:grid;place-items:center;padding:16px}
.tk-dlg{width:min(460px,100%);background:#fff;color:#12333a;border-radius:20px;overflow:hidden;font-family:Figtree,sans-serif;box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.tk-dlg .tk-art{aspect-ratio:16/9;background:#fff;border-bottom:1.5px solid #e4efed}
.tk-dlg .tk-art img.rk{width:36%}
.tk-dlg .tk-art .hat{width:13%;top:4%;transform:translateX(-60%) rotate(-12deg)}
.tk-dlg .body{padding:18px 22px 22px}
.tk-dlg h2{font:800 1.375rem/1.2 Unbounded,sans-serif;letter-spacing:-.02em;margin:0 0 6px}
.tk-dlg p{margin:0 0 12px;font-size:1rem;line-height:1.5;color:#2c4c52}
.tk-pay{border:1.5px solid #d3e3e1;border-radius:12px;padding:10px 14px;display:grid;gap:8px;margin:4px 0 14px}
.tk-pay div{display:flex;align-items:center;gap:10px;justify-content:space-between;font-weight:600}
.tk-pay div span{display:inline-flex;align-items:center;gap:8px}
.tk-pay .tot{border-top:1px solid #d3e3e1;padding-top:8px;color:#557077;font-weight:600}
.tk-acts{display:grid;gap:10px}
.tk-acts .go{min-height:48px;border-radius:999px;border:0;background:#12c2b2;color:#fff;font:800 1.0625rem/1 Figtree}
.tk-acts a.go{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.tk-acts .no{min-height:48px;border-radius:999px;border:1.5px solid #d3e3e1;background:#fff;color:#12333a;font:700 1rem/1 Figtree}
.tk-undo{display:flex;gap:10px;align-items:flex-start;background:#f3faf9;border-radius:10px;padding:10px 12px;font-size:.9375rem;color:#2c4c52;margin:0 0 14px}
/* header chip (shell, same everywhere) */
.tk-hchip{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text-strong);font:700 .875rem/1 var(--font-body);text-decoration:none;white-space:nowrap}
.tk-hchip .k{display:inline-flex;align-items:center;gap:5px}
.tk-hchip .k.gold{color:var(--neon-gold-500)}
.tk-hchip .sep{width:1px;height:16px;background:var(--border-subtle)}
@media (max-width:899px){
  .tk-head{grid-template-columns:1fr}
  .tk-head h1{font-size:1.375rem}
  .tk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:4px 12px 14px}
  .tk-bhead{padding:14px 12px}
  .tk-info{padding:10px 10px 12px}
  .tk-buy{flex-direction:column;align-items:stretch;gap:8px}
  .tk-get{width:100%}
  .tk-frow .lbl{width:100%}
  .tk-wallet{grid-template-columns:1fr}
  .tk-wrap{padding-top:16px}
}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tk-paused{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px 14px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--surface-sunken);font:500 .9375rem/1.5 var(--font-body);color:var(--text-body)}
.tk-mrow{margin:6px 0 14px}.tk-mrow .tk-hchip{min-height:48px;font-size:1rem;padding:0 16px;width:100%;justify-content:center}
.b-tc .tk-bsub{color:#fff1cf}
.b-cc .tk-bhead .tag{font:var(--t-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--text-meta)}
.tk-trail{position:absolute;left:0;bottom:16%;width:62%;height:16%;border-radius:0 999px 999px 0;z-index:1;opacity:.9;mix-blend-mode:screen}
@media (max-width:599px){
  .tk-scrim{align-items:end;padding:0;overflow:auto}
  .tk-dlg{width:100%;border-radius:20px 20px 0 0}
  .tk-dlg .tk-art{aspect-ratio:auto;height:150px}
  .tk-dlg .tk-art img.rk{width:auto;height:118px}
  .tk-dlg .tk-art .hat{width:auto;height:52px;top:2px}
  .tk-dlg .body{padding:16px 16px 20px}
}
/* T4 build: pieces the frames drew inline, and links where the frames had buttons */
.tk-ey{font:var(--t-eyebrow);letter-spacing:.12em;text-transform:uppercase;color:var(--text-meta);margin:0}
a.tk-chip,a.tk-get,.tk-acts a.no{text-decoration:none;cursor:pointer}
a.tk-get,.tk-acts a.no{display:inline-flex;align-items:center;justify-content:center}
.b-cc a.tk-get{color:#1a1200}.b-rk a.tk-get{color:#fff}.b-tc a.tk-get{color:#3a2a07}
a.tk-use{background:transparent!important;border:1.5px solid currentColor;color:inherit!important}
.tk-title-art{font:400 .8125rem/1.4 var(--font-display);color:var(--neon-gold-500);text-transform:uppercase;text-align:center;padding:0 10px}
.tk-dlg .tk-title-art{color:#8a5a00}
.tk-art img.tk-asset{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.tk-art img.tk-asset.k-border{top:8%;left:8%;width:84%;height:84%}
.tk-dlg .tk-art img.tk-asset.k-border{top:6%;left:6%;width:88%;height:88%}
/* a banner: a full-width 6:1 band on a dark tile, with a sample of the player's name on its left end (Sigil HOLD r1) */
.tk-art.k-band,.tk-dlg .tk-art.k-band{background:#0e0a1e}
.tk-band{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);aspect-ratio:6/1}
.tk-band>img{display:block;width:100%;height:100%;object-fit:cover;image-rendering:pixelated}
.tk-band::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgb(0 0 0 / .7),transparent 55%)}
.tk-band .me{position:absolute;left:6px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:6px;max-width:calc(100% - 12px)}
.tk-band .me img,.tk-band .me i{flex:none;width:28px;height:28px;border-radius:50%;background:#2a2350;box-shadow:0 0 0 2px var(--neon-gold-500);image-rendering:pixelated;object-fit:contain}
.tk-band .me b{font:400 8px/1 var(--font-display);text-transform:uppercase;color:#fff;text-shadow:0 1px 2px #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}   /* the ring (viewBox 64) whole, with room round it (launch stock) */
.tk-noart .tk-ico{opacity:.5}
.tk-empty{font:500 1rem/1.55 var(--font-body);color:var(--text-body);margin:28px 0 0;padding:18px;border-radius:var(--radius);border:1px dashed var(--border-subtle)}
.tk-got{border-color:color-mix(in oklch,var(--neon-gold-500) 55%,transparent)}
.tk-got a{color:var(--accent-link-text)}
.tk-err{border-color:color-mix(in oklch,#ff4f6d 60%,transparent)}
.tk-mrow{margin:6px 0 14px}
.header-account .tk-hchip{margin-right:4px}
.tk-hchip[hidden]{display:none}
/* T5: Undo on a prize got in the last 24 hours, its own row under "You have this" */
.tk-buy:has(.tk-undo-f){flex-wrap:wrap}
.tk-undo-f{flex:0 0 auto;width:100%;margin:0}
.tk-undo-b{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent!important;border:1.5px solid currentColor;color:inherit!important;box-shadow:none!important}
.tk-undo-b svg{width:14px;height:14px;fill:currentColor}
.tk-undo-b{white-space:nowrap;padding:0 10px}
@media (max-width:899px){.tk-undo-b{font-size:.8125rem;gap:4px}}
