:root{--ink:#070a1a;--night:#0b1026;--navy:#121a3a;--indigo:#1e2558;--velvet:#1a1f4d;--gold:#d6b25e;--gold-bright:#f4dc95;--gold-dim:#8f7640;--parchment:#efe4c8;--text:#ece4cf;--muted:#b3a88c;--garnet:#a3364a;--emerald:#2f7d64;--sapphire:#3657a8;--amber:#c9822f;--serif:"Cormorant Garamond", Georgia, serif;--display:"Cinzel", "Trajan Pro", Georgia, serif;--deco:"Cinzel Decorative", "Cinzel", Georgia, serif;--radius:14px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:radial-gradient(ellipse at 50% -10%, #1b2260 0%, var(--night) 45%, var(--ink) 100%) fixed;min-height:100vh;color:var(--text);font-family:var(--serif);-webkit-font-smoothing:antialiased;font-size:20px;line-height:1.55;overflow-x:hidden}a{color:var(--gold-bright)}::selection{background:var(--gold);color:var(--ink)}.sky{pointer-events:none;z-index:0;position:fixed;inset:0}.stars{background-repeat:repeat;animation:240s linear infinite drift;position:absolute;inset:-50%}.stars.s1{background-image:radial-gradient(1px 1px at 20px 30px,#fff9,#0000),radial-gradient(1px 1px at 140px 80px,#fff7,#0000),radial-gradient(1.5px 1.5px at 90px 160px,#f4dc95cc,#0000),radial-gradient(1px 1px at 230px 210px,#fff8,#0000),radial-gradient(1px 1px at 300px 40px,#fff6,#0000);background-size:340px 260px}.stars.s2{background-image:radial-gradient(2px 2px at 60px 120px,#f4dc95aa,#0000),radial-gradient(1.5px 1.5px at 400px 300px,#fff8,#0000),radial-gradient(1px 1px at 250px 420px,#fff9,#0000);background-size:520px 480px;animation-name:drift,twinkle;animation-duration:420s;animation-timing-function:linear,ease-in-out;animation-iteration-count:infinite}@keyframes drift{to{transform:translate(-170px,-130px)}}@keyframes twinkle{50%{opacity:.55}}.motes{background-image:radial-gradient(2px 2px at 10% 80%,#f4dc9555,#0000),radial-gradient(3px 3px at 70% 90%,#f4dc9544,#0000),radial-gradient(2px 2px at 40% 95%,#f4dc9533,#0000),radial-gradient(2px 2px at 85% 70%,#f4dc9544,#0000);animation:30s linear infinite rise;position:absolute;inset:0}@keyframes rise{0%{opacity:0;transform:translateY(0)}20%{opacity:1}to{opacity:0;transform:translateY(-90vh)}}@media (prefers-reduced-motion:reduce){.stars,.motes{animation:none!important}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.site-head,main,.site-foot{z-index:1;position:relative}.site-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px clamp(16px,4vw,40px);display:flex}.brand{font-family:var(--deco);letter-spacing:.08em;color:var(--gold-bright);font-size:22px;text-decoration:none}.brand-star{color:var(--gold)}.site-head nav{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;gap:22px;font-size:13px;display:flex}.site-head nav a{color:var(--muted);text-decoration:none}.site-head nav a:hover{color:var(--gold-bright)}main{max-width:1240px;margin:0 auto;padding:0 clamp(16px,4vw,40px) 40px}.site-foot{text-align:center;color:var(--muted);padding:24px 16px 40px;font-size:15px;font-style:italic}h1,h2,h3{font-family:var(--display);letter-spacing:.04em;color:var(--gold-bright);font-weight:600;line-height:1.2}.ornament{text-align:center;color:var(--gold);letter-spacing:.6em;margin:8px 0 18px;font-size:14px;display:block}.ornament:before{content:"✦ ☾ ✦"}.lede{color:var(--muted);font-style:italic}.btn{appearance:none;border:1px solid var(--gold);cursor:pointer;font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);background:linear-gradient(180deg, var(--gold-bright), var(--gold) 60%, #b48d3c);touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:999px;padding:14px 30px;font-size:15px;transition:transform .15s,box-shadow .2s,opacity .2s;box-shadow:0 0 0 4px #d6b25e22,0 10px 30px -10px #d6b25e88}.btn:hover{transform:translateY(-1px);box-shadow:0 0 0 6px #d6b25e33,0 14px 34px -10px #d6b25eaa}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn.ghost{color:var(--gold-bright);box-shadow:none;background:0 0}.btn.ghost:hover{background:#d6b25e18}.btn:focus-visible,.choice:focus-visible,input:focus-visible,textarea:focus-visible,.tcard:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}.field{width:100%;font:inherit;color:var(--text);border:1px solid var(--gold-dim);background:#0b102699;border-radius:12px;padding:14px 18px;font-size:22px}.field::placeholder{color:#8d8470;font-style:italic}textarea.field{resize:vertical;min-height:110px;font-size:20px}.stage{text-align:center;max-width:760px;margin:0 auto;animation:.7s both appear}.stage[hidden]{display:none}@keyframes appear{0%{opacity:0;transform:translateY(12px)}}.stage h1{font-family:var(--deco);text-shadow:0 0 40px #d6b25e55;margin:4vh 0 0;font-size:clamp(42px,9vw,76px)}.stage h2{margin:2vh 0 6px;font-size:clamp(24px,4.5vw,34px)}.reader-says{color:var(--parchment);max-width:620px;margin:0 auto 20px;font-size:22px;font-style:italic}.why{color:var(--muted);max-width:560px;margin:10px auto 0;font-size:16px}.why:before{content:"☾ ";color:var(--gold)}.row{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:22px;display:flex}.choices{text-align:left;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:20px 0 6px;display:grid}.choice{appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:var(--radius);background:linear-gradient(#1a2150cc,#10153acc);border:1px solid #d6b25e44;padding:16px 18px;transition:border-color .2s,transform .2s,box-shadow .2s;position:relative}.choice:hover{border-color:var(--gold);transform:translateY(-2px)}.choice[aria-pressed=true]{border-color:var(--gold-bright);box-shadow:0 0 0 1px var(--gold-bright), 0 0 30px -6px #d6b25e88}.choice strong{font-family:var(--display);letter-spacing:.06em;color:var(--gold-bright);font-size:16px;font-weight:600;display:block}.choice span{color:var(--muted);margin-top:4px;font-size:16px;line-height:1.35;display:block}.choice .badge{font-family:var(--display);letter-spacing:.15em;text-transform:uppercase;background:var(--gold);color:var(--ink);border-radius:99px;padding:3px 9px;font-size:10px;position:absolute;top:-10px;right:12px}.choice .count{font-family:var(--display);color:var(--gold);letter-spacing:.12em;margin-top:8px;font-size:12px}.toggle{cursor:pointer;align-items:center;gap:10px;margin-top:18px;font-size:18px;display:inline-flex}.toggle input{width:20px;height:20px;accent-color:var(--gold)}.examples{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;display:flex}.examples button{font:inherit;color:var(--muted);cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:99px;padding:5px 12px;font-size:15px;font-style:italic}.examples button:hover{color:var(--gold-bright);border-color:var(--gold-dim)}.error{color:#ff9c9c;min-height:1.4em;margin-top:10px;font-size:17px}.table-wrap{max-width:1180px;margin:0 auto}.table{background:radial-gradient(ellipse at 50% 40%, #ffffff0d, transparent 60%), image-set(url(/table/cloth-1920.webp) 1x, url(/table/cloth-3840.webp) 2x) center / cover, radial-gradient(ellipse at 50% 45%, #232a6a, var(--velvet) 55%, #0c0f2c 100%);border-radius:28px;min-height:min(72vh,720px);padding:clamp(14px,3vw,34px);position:relative;overflow:hidden;box-shadow:inset 0 0 120px #000c,inset 0 0 0 1px #d6b25e33,0 30px 80px -30px #000}.table:before{content:"";pointer-events:none;background:radial-gradient(circle at 6% 8%,#ffb85c33,#0000 28%),radial-gradient(circle at 94% 10%,#ffb85c2a,#0000 26%);animation:3.2s ease-in-out infinite alternate candle;position:absolute;inset:0}@keyframes candle{0%{opacity:.75}40%{opacity:1}70%{opacity:.85}to{opacity:.95}}.table-voice{text-align:center;z-index:2;min-height:64px;position:relative}.table-voice p{max-width:640px;color:var(--parchment);margin:0 auto;font-size:21px;font-style:italic}.table-voice .sub{color:var(--muted);margin-top:4px;font-size:16px;font-style:normal}.table-actions{z-index:3;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px;display:flex;position:relative}.tcard{--w:120px;width:var(--w);aspect-ratio:2/3;perspective:1200px;border-radius:calc(var(--w) * .06);flex:none;position:relative;container-type:inline-size}.tcard-inner{transform-style:preserve-3d;border-radius:inherit;transition:transform .9s cubic-bezier(.3,.7,.2,1);position:absolute;inset:0}.tcard.flipped .tcard-inner{transform:rotateY(180deg)}.tface{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:inherit;position:absolute;inset:0;overflow:hidden;box-shadow:0 6px 18px -6px #000d,0 0 0 1px #000}.tback{background:url(/cards/back.webp) center / cover, radial-gradient(circle at 50% 50%, transparent 18%, #d6b25e 18.5%, transparent 20%, transparent 30%, #d6b25e55 30.5%, transparent 31.5%), repeating-conic-gradient(from 0deg at 50% 50%, #d6b25e18 0 6deg, transparent 6deg 15deg), radial-gradient(circle at 50% 50%, #263070, #0f1436 70%);outline-offset:-7px;border:2px solid #c9a75a;outline:1px solid #d6b25e66}.tback:after{content:"☾✦☽";color:var(--gold-bright);letter-spacing:.1em;text-shadow:0 0 8px #d6b25e;place-items:center;font-size:14cqw;display:grid;position:absolute;inset:0}.tcard.has-back .tback:after{display:none}.tfront{background:var(--navy);transform:rotateY(180deg)}.tfront-inner{transition:transform .6s;position:absolute;inset:0}.tcard.reversed .tfront-inner{transform:rotate(180deg)}.tart{color:var(--gold);background:radial-gradient(circle at 50% 40%,#2a3480,#0f1436 75%);place-items:center;font-size:34cqw;display:grid;position:absolute;inset:0}.tart img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.tframe{pointer-events:none;border:2.2cqw solid #0000;border-image:linear-gradient(160deg,#f6e2a1,#a8833a 40%,#f4dc95 60%,#8b6b2c) 1;position:absolute;inset:0;box-shadow:inset 0 0 0 .8cqw #0b1026,inset 0 0 0 1.4cqw #d6b25e88}.tplate{text-align:center;font-family:var(--display);color:var(--gold-bright);letter-spacing:.06em;text-shadow:0 0 4px #000;background:linear-gradient(#0d1233f2,#070a1ef2);border:.6cqw solid #d6b25ecc;font-weight:600;line-height:1.1;position:absolute;left:7%;right:7%}.tplate.top{border-radius:0 0 40% 40%/0 0 30% 30%;padding:1.2cqw 0;font-size:8.5cqw;top:4.5%;left:34%;right:34%}.tplate.bottom{border-radius:2cqw;padding:2.2cqw 2cqw;font-size:8cqw;bottom:4.5%}.tcard.small .tplate.bottom{font-size:9cqw}.fan-wrap{z-index:2;scrollbar-width:thin;scrollbar-color:var(--gold-dim) transparent;padding:50px 10px 40px;position:relative;overflow:auto visible}.fan{margin:0 auto;position:relative}.fan .tcard{cursor:pointer;transition:transform .25s,top .25s,filter .25s,opacity .4s;position:absolute;top:0}.fan .tcard:hover,.fan .tcard:focus-visible{filter:drop-shadow(0 0 10px #f4dc95aa);top:-22px;z-index:200!important}.fan .tcard.picked{filter:drop-shadow(0 0 14px #f4dc95);top:-40px}.fan .tcard.picked:after{content:attr(data-order);font-family:var(--display);color:var(--ink);background:var(--gold-bright);border-radius:99px;padding:1px 7px;font-size:12px;position:absolute;top:-26px;left:50%;transform:translate(-50%)}.fan .tcard.gone{opacity:0;pointer-events:none}.deck-area{z-index:2;justify-content:center;align-items:center;gap:40px;height:300px;display:flex;position:relative}.deck-stack{aspect-ratio:2/3;width:140px;position:relative}.deck-stack .tcard{--w:140px;position:absolute;inset:0}.pile{cursor:pointer;background:0 0;border:none;padding:0;transition:transform .3s,filter .3s}.pile:hover,.pile:focus-visible{filter:drop-shadow(0 0 16px #f4dc95aa);transform:translateY(-10px)}.pile-label{text-align:center;font-family:var(--display);letter-spacing:.14em;color:var(--muted);text-transform:uppercase;font-size:12px;position:absolute;bottom:-34px;left:0;right:0}.spread{z-index:2;margin:26px auto 10px;position:relative}.slot{transition:transform .4s;position:absolute}.slot .tcard{cursor:pointer}.slot-label{text-align:center;font-family:var(--display);letter-spacing:.08em;color:var(--muted);text-transform:uppercase;font-size:clamp(9px,1.15vw,12px);line-height:1.2;position:absolute;top:calc(100% + 6px);left:-10%;right:-10%}.slot.crossing{z-index:5}.slot.crossing .tcard{transform:rotate(90deg)}.slot.crossing .slot-label{display:none}.slot.next .tcard{animation:1.6s ease-in-out infinite beckon}@keyframes beckon{50%{filter:drop-shadow(0 0 14px #f4dc95)}}.slot.active .tcard{filter:drop-shadow(0 0 16px #f4dc95cc)}.detail{z-index:2;border-radius:var(--radius);text-align:left;background:linear-gradient(#0b1026e6,#0b1026cc);border:1px solid #d6b25e44;grid-template-columns:auto 1fr;align-items:start;gap:24px;max-width:820px;margin:24px auto 0;padding:22px;animation:.5s both appear;display:grid;position:relative}.detail[hidden]{display:none}.detail .tcard{--w:170px}.detail .pos{font-family:var(--display);letter-spacing:.16em;color:var(--gold);text-transform:uppercase;font-size:13px}.detail h3{margin:4px 0 2px;font-size:26px}.detail .posq{color:var(--muted);margin:0 0 10px;font-size:17px;font-style:italic}.detail .kw{flex-wrap:wrap;gap:6px;margin:8px 0 12px;display:flex}.detail .kw span{font-size:14px;font-family:var(--display);letter-spacing:.06em;color:var(--gold-bright);border:1px solid #d6b25e55;border-radius:99px;padding:2px 10px}.detail p{margin:0;font-size:19px}.rev-note{color:var(--muted);font-size:15px;margin-top:10px!important}@media (width<=620px){.detail{text-align:center;grid-template-columns:1fr;justify-items:center}.detail .kw{justify-content:center}.detail .tcard{--w:150px}}.reading{z-index:1;color:#2a2238;text-align:left;background:linear-gradient(#f3ead2,#e8dbb8);border-radius:6px;max-width:760px;margin:34px auto 0;padding:clamp(22px,4vw,44px);font-size:20px;line-height:1.6;position:relative;box-shadow:0 30px 80px -30px #000,inset 0 0 60px #b89a5c55}.reading:before{content:"";pointer-events:none;border:1px solid #a3874a88;border-radius:3px;position:absolute;inset:10px}.reading h2{color:#3a2a54;font-family:var(--deco);text-align:center;margin:0 0 6px;font-size:28px}.reading h3{color:#5b3b1b;letter-spacing:.08em;margin:26px 0 6px;font-size:18px}.reading p{margin:0 0 12px}.reading strong{color:#3a2a54}.reading hr{border:none;border-top:1px solid #a3874a88;margin:20px 0}.reading .by{text-align:center;color:#6d5e48;margin-bottom:18px;font-size:16px;font-style:italic}.reading .cursor:after{content:"✦";color:#a3874a;margin-left:4px;animation:.8s infinite twinkle}.reading-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin:26px 0 0;display:flex}.gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:22px;margin-top:24px;display:grid}.gallery figure{text-align:center;cursor:pointer;margin:0}.gallery .tcard{--w:100%;width:100%;transition:transform .25s}.gallery figure:hover .tcard{transform:translateY(-4px)}.gallery figcaption{font-family:var(--display);letter-spacing:.06em;color:var(--muted);margin-top:8px;font-size:13px}.suit-head{text-align:center;margin-top:44px}dialog.card-dialog{width:calc(100% - 32px);max-width:820px;color:var(--text);background:#0b1026;border:1px solid #d6b25e66;border-radius:18px;padding:0}dialog.card-dialog::backdrop{backdrop-filter:blur(4px);background:#04061199}dialog.card-dialog .detail{border:none;margin:0}.dialog-close{color:var(--muted);cursor:pointer;z-index:3;background:0 0;border:none;font-size:28px;position:absolute;top:10px;right:14px}.prose{max-width:760px;margin:0 auto}.prose h2{margin-top:36px}.fan .tcard{top:var(--y,0px);transform-origin:50% 120%}.fan .tcard:hover,.fan .tcard:focus-visible{top:calc(var(--y,0px) - 22px)}.fan .tcard.picked{top:calc(var(--y,0px) - 40px)}.has-back-img .tback:after{display:none}.has-back-img .tback{background:url(/cards/back-800.webp) 50%/cover;border:none;outline:none}.deck-stack.shuffle-target{cursor:grab;touch-action:none}.deck-stack.shuffling .tcard:nth-child(odd){animation:.45s ease-in-out infinite riffle-l}.deck-stack.shuffling .tcard:nth-child(2n){animation:.45s ease-in-out .22s infinite riffle-r}@keyframes riffle-l{0%,to{translate:0;rotate:0deg}50%{translate:-70px -6px;rotate:-9deg}}@keyframes riffle-r{0%,to{translate:0;rotate:0deg}50%{translate:70px -6px;rotate:9deg}}.btn.hold{touch-action:none;min-width:230px}.deck-area[hidden],.fan-wrap[hidden],.spread[hidden]{display:none}@media (width<=620px){.deck-area{gap:14px;height:240px}.deck-stack{width:100px}.deck-stack .tcard{width:100px;--w:100px!important}.table{border-radius:18px;padding:14px 10px}body{font-size:18px}}.permalink-cards{gap:14px;margin-top:24px;display:grid}.permalink-cards .detail{width:100%;margin:0 auto}[hidden]{display:none!important}.choices.spreads{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=560px){.choices.spreads{grid-template-columns:1fr}}.fan .tcard:hover,.fan .tcard:focus-visible{top:var(--y,0px);translate:0 -24px}.fan .tcard.picked{top:var(--y,0px);translate:0 -46px}.slot-label{white-space:nowrap;left:-40%;right:-40%}.hero-fan{justify-content:center;align-items:flex-end;margin-top:3vh;display:flex}.hero-fan .tcard{animation:6s ease-in-out infinite hover-card;box-shadow:0 20px 40px -12px #000}.hero-fan .tcard:first-child{animation-delay:-2s;translate:18px 14px;rotate:-12deg}.hero-fan .tcard:nth-child(2){z-index:2;animation-delay:-4s}.hero-fan .tcard:nth-child(3){translate:-18px 14px;rotate:12deg}@keyframes hover-card{50%{transform:translateY(-6px)}}.hero-fan+h1{margin-top:2vh}
