.table{z-index:2;background:0 0;grid-template-columns:minmax(0,1fr) 380px;grid-template-areas:"stage reading";min-height:calc(100vh - 60px);display:grid;position:relative}.table.is-opening{grid-template-columns:1fr;grid-template-areas:"invocation";place-items:center}.invocation{text-align:center;max-width:560px;animation:rise 1.2s var(--ease-out) both;grid-area:invocation;padding:40px 24px 80px}.invocation-kicker{font-family:var(--display);margin:0 0 18px;font-size:18px;font-style:italic}.invocation-kicker a{color:var(--bone-dim);border-bottom:1px solid rgba(var(--line-rgb),.3);text-decoration:none}.invocation-kicker a:hover{color:var(--bone)}.reading-close a{color:var(--gold-soft);border-bottom:1px solid rgba(var(--gold-rgb),.45);text-decoration:none}.invocation-title{font-family:var(--display);letter-spacing:.02em;color:var(--bone);margin:0 0 22px;font-size:clamp(48px,8vw,88px);font-weight:300;line-height:1}.invocation-title:after{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);width:72px;height:1px;margin:26px auto 0;display:block}.invocation-lede{color:var(--bone-dim);max-width:44ch;margin:0 auto 40px;font-size:21px;font-style:italic}.question-form{flex-direction:column;align-items:center;gap:16px;display:flex}.question-label{font-family:var(--display);color:var(--bone);font-size:23px}.question-input{width:100%;max-width:460px;color:var(--bone);border:0;border-bottom:1px solid rgba(var(--line-rgb),.35);font-family:var(--text);text-align:center;background:0 0;padding:10px 6px;font-size:22px;font-style:italic;transition:border-color .3s}.question-input::placeholder{color:#b8ab8e8c}.question-input:focus{border-bottom-color:var(--gold);outline:none}.question-form .btn{margin-top:16px}.spread-stage{grid-area:stage;place-items:center;min-height:640px;padding:24px 24px 120px;display:grid;position:relative;overflow:hidden}.wheel{aspect-ratio:1;width:min(92vh,1100px);color:rgba(var(--gold-rgb),.16);pointer-events:none;animation:240s linear infinite turn;position:absolute;top:50%;left:50%;translate:-50% -50%}.wheel svg{width:100%;height:100%}.spread{gap:var(--gap);transform-origin:0 0;transform:scale(var(--spread-scale,1));display:grid;position:relative}.spread-box{position:relative}.slot{grid-column:var(--c);grid-row:var(--r);border:1px dashed rgba(var(--gold-rgb),.22);border-radius:var(--card-radius);place-items:end center;padding-bottom:10px;display:grid}.slot.is-crossed{border:0}.spread.is-free{display:block}.spread.is-free .slot{width:var(--card-w);height:var(--card-h);position:absolute}.slot-name{font-family:var(--display);letter-spacing:.04em;color:#e4c97ab3;font-size:15px;font-style:italic}.slot.is-filled .slot-name{opacity:0}.deck{width:var(--card-w);height:var(--card-h);transform:scale(var(--spread-scale,1));transform-origin:0 100%;position:absolute;bottom:44px;left:40px}.deck-card{border-radius:var(--card-radius);translate:calc(var(--i) * -.6px) calc(var(--i) * -.9px);position:absolute;inset:0;box-shadow:0 1px #00000059}.deck.is-shuffling .deck-card{animation:riffle 1.1s var(--ease-out) var(--d) 2 alternate both}.cards-layer{pointer-events:none;position:absolute;inset:0}.card{width:var(--card-w);height:var(--card-h);pointer-events:auto;transform-origin:50%;transform:translate(var(--x), var(--y)) rotate(var(--rz,0deg)) scale(var(--s,1));transition:transform var(--deal-ms) var(--ease-deal);will-change:transform;z-index:var(--z,1);cursor:pointer;background:0 0;border:0;padding:0;position:absolute;top:0;left:0}.card.is-flipped{cursor:default}.card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform var(--flip-ms) var(--ease-out);border-radius:var(--card-radius);position:relative}.card.is-flipped .card-inner{transform:rotateY(180deg)}.card-face,.card-back{border-radius:var(--card-radius);-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute;inset:0;overflow:hidden;box-shadow:0 6px 12px #00000073}.card.no-transition{transition:none}.card-face{background:var(--bone);transform:rotateY(180deg)}.card-face .framed{display:none}.card-face.has-art .framed{display:grid}.card:hover:not(.is-flipped) .card-inner{transform:translateY(-4px)}.card-back,.deck-card{border-radius:var(--card-radius);background:radial-gradient(circle at 50% 50%, #c9a24a47 0 2px, transparent 3px), radial-gradient(circle at 50% 50%, transparent 30%, #c9a24a2e 31%, transparent 33%), repeating-conic-gradient(from 0deg at 50% 50%, #c9a24a1f 0 6deg, transparent 6deg 30deg), linear-gradient(160deg, #1b2538, #0e1522);background-size:100% 100%,100% 100%,100% 100%,100% 100%;box-shadow:inset 0 0 0 2px #090e18,inset 0 0 0 3px #c9a24a99,inset 0 0 0 7px #090e18,inset 0 0 0 8px #c9a24a47}.card-back.has-art,.deck-card.has-art{box-shadow:none;background:0 0}.card-back img{object-fit:cover;width:100%;height:100%;display:block}.card-fallback{color:var(--card-ink);text-align:center;background:linear-gradient(#f1e8d3,#dccfb0);grid-template-rows:auto 1fr auto;padding:10px;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 0 3px #f1e8d3,inset 0 0 0 4px #141a288c}.card-fallback .num{font-family:var(--display);letter-spacing:.1em;font-size:14px}.card-fallback .sigil{color:#3b4c66;align-self:center;font-size:34px}.card-fallback .name{font-family:var(--display);font-size:13px;font-weight:600;line-height:1.15}.card-face.has-art .card-fallback{display:none}.card.is-reversed .card-face{transform:rotateY(180deg)rotate(180deg)}.card.is-active .card-face,.card.is-active .card-back{box-shadow:0 0 0 1px var(--gold-soft), 0 0 18px #e4c97a8c, 0 6px 12px #00000073}.stage-actions{pointer-events:none;flex-direction:column;align-items:center;gap:14px;display:flex;position:absolute;bottom:28px;left:0;right:0}.stage-actions>*{pointer-events:auto}.stage-hint{color:var(--bone);text-align:center;min-height:1.5em;margin:0;font-size:19px;font-style:italic;transition:opacity .4s}.stage-buttons{gap:12px;display:flex}.reading{border-left:1px solid rgba(var(--gold-rgb),.18);background:linear-gradient(180deg, rgba(var(--line-rgb),.035), rgba(var(--line-rgb),0));grid-area:reading;position:relative}.reading-scroll{scrollbar-width:thin;scrollbar-color:rgba(var(--gold-rgb),.35) transparent;max-height:100vh;padding:36px 32px 60px;position:sticky;top:0;overflow-y:auto}.reading-question{color:var(--bone-dim);margin:0 0 8px;font-size:18px;font-style:italic}.reading-question:empty{display:none}.reading-title{font-family:var(--display);color:var(--bone);margin:0 0 24px;font-size:38px;font-weight:500;line-height:1}.reading-title:after{content:"";background:linear-gradient(90deg, var(--gold), transparent);width:48px;height:1px;margin-top:16px;display:block}.reading-list{margin:0;padding:0;list-style:none}.reading-entry{border-top:1px solid rgba(var(--line-rgb),.1);animation:rise .7s var(--ease-out) both;cursor:pointer;padding:18px 0}.reading-entry:first-child{border-top:0}.reading-entry.is-active{color:var(--gold-soft)}.entry-pos{font-family:var(--display);color:var(--bone-dim);letter-spacing:.04em;margin:0 0 2px;font-size:16px;font-style:italic}.entry-name{font-family:var(--display);margin:0 0 8px;font-size:27px;font-weight:600;line-height:1.15}.entry-name .rev{color:var(--ember);filter:brightness(1.5);margin-left:8px;font-size:17px;font-style:italic;font-weight:400}.entry-text{color:var(--bone);margin:0;font-size:18px}.entry-text em{color:var(--bone-dim)}.reading-close{border-top:1px solid rgba(var(--gold-rgb),.3);color:var(--bone-dim);animation:rise .9s var(--ease-out) both;margin:28px 0 0;padding-top:22px;font-style:italic}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes riffle{0%{transform:translate(0)rotate(0)}50%{transform:translate(var(--rx), var(--ry)) rotate(var(--rr))}to{transform:translate(0)rotate(0)}}@media (prefers-reduced-motion:reduce){.wheel{animation:none}.card{transition-duration:1ms}.card-inner{transition-duration:.2s}.deck.is-shuffling .deck-card{animation-duration:.2s}.invocation,.reading-entry,.reading-close{animation:none}}@media (width<=1100px){.table{grid-template-columns:minmax(0,1fr) 320px}}@media (width<=860px){.masthead{padding:18px 20px 0}.table{grid-template-columns:1fr;grid-template-areas:"stage""reading"}.spread-stage{min-height:0;padding:12px 12px 130px}.deck{bottom:30px;left:16px}.reading{border-left:0;border-top:1px solid rgba(var(--gold-rgb),.18)}.reading-scroll{max-height:none;padding:30px 20px 60px;position:static}}.table.is-fullscreen{background:var(--bg);min-height:100vh;overflow:auto}.table.is-fullscreen .reading-scroll{max-height:100vh}.fs-btn{z-index:30;background:var(--panel-glass);border:1px solid rgba(var(--gold-rgb),.35);color:var(--bone-dim);font-family:var(--display);border-radius:999px;align-items:center;gap:8px;padding:7px 14px 7px 10px;font-size:17px;font-style:italic;transition:color .3s,border-color .3s;display:inline-flex;position:absolute;top:18px;right:18px}.fs-btn:hover{color:var(--gold-soft);border-color:var(--gold-soft)}.tip{z-index:100;pointer-events:none;background:var(--panel);border:1px solid rgba(var(--gold-rgb),.45);backdrop-filter:blur(6px);border-radius:8px;padding:14px 16px 12px;position:fixed;box-shadow:0 18px 40px #0000008c}.tip-title{font-family:var(--display);color:var(--gold-soft);margin:0 0 4px;font-size:22px;font-weight:600}.tip-body{color:var(--bone);margin:0;font-size:17px;line-height:1.45}.tip-note{font-family:var(--display);color:var(--bone-dim);margin:8px 0 0;font-size:16px;font-style:italic}.tip-enter-active,.tip-leave-active{transition:opacity .18s, transform .18s var(--ease-out)}.tip-enter-from,.tip-leave-to{opacity:0;transform:translateY(4px)}@media (hover:none){.tip{pointer-events:auto;right:16px;width:auto!important;top:auto!important;bottom:16px!important;left:16px!important}.tip-enter-from,.tip-leave-to{transform:translateY(12px)}}.reading-empty{color:var(--bone-dim);margin:0;font-size:18px;font-style:italic}.entry-name a{color:inherit;border-bottom:1px solid #0000;text-decoration:none}.entry-name a:hover{border-bottom-color:rgba(var(--gold-rgb),.6)}.table.is-fullscreen .masthead{display:none}.reading-share{border-top:1px solid rgba(var(--gold-rgb),.3);margin:26px 0 0;padding-top:22px}.share-note{color:var(--bone-dim);flex-basis:100%;margin:10px 0 0;font-size:15px;font-style:italic}
