.reading-app{background:rgba(14,20,32,.96);border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.3);width:100%;max-width:720px;margin:0 auto;scroll-margin-top:1rem;min-width:0;overflow:hidden;position:relative}
.flow-topline{display:flex;justify-content:space-between;gap:1rem;font-family:var(--mono);font-size:.64rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:1.15rem 1.5rem;border-bottom:1px solid var(--line)}
.flow-progress{display:flex;padding:1.3rem 1.5rem 0;margin:0;list-style:none;gap:.65rem}.flow-progress li{display:flex;align-items:center;gap:.4rem;flex:1;color:#7f8998;font-size:.7rem;border-top:1px solid var(--line);padding-top:.65rem}.flow-progress li.reached{border-color:var(--accent);color:var(--text)}.flow-progress li span{font-family:var(--mono);font-size:.6rem;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--card-raised)}.flow-progress li[aria-current] span{background:var(--accent);color:var(--accent-dark)}
.flow-body{padding:1.5rem 1.5rem .5rem;position:relative;z-index:1}.flow-body h2,.result-app>h2{font-size:2.25rem;font-weight:400;letter-spacing:-.025em;margin:0 0 .6rem}.flow-caption{font-size:.84rem;color:var(--muted);line-height:1.55;margin-bottom:1.4rem}
.topic-list,.spread-list{display:grid;gap:.6rem;margin:1rem 0}.choice-row{appearance:none;display:flex;align-items:center;text-align:left;gap:.85rem;background:rgba(8,11,18,.35);border:1px solid var(--line);border-radius:10px;padding:.8rem .9rem;min-height:70px;color:var(--text);width:100%;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.choice-row:hover{background:var(--card-raised);border-color:#68758a;transform:translateY(-1px)}.choice-row[aria-pressed=true]{border-color:var(--accent);background:rgba(240,123,90,.08);box-shadow:inset 0 0 0 1px var(--accent)}.choice-row strong{display:block;font-size:.86rem;font-weight:600}.choice-row small{display:block;font-size:.7rem;color:var(--muted);margin-top:.15rem;line-height:1.35}.choice-mark,.spread-mark{font-family:var(--font);font-size:1.25rem;width:30px;flex-shrink:0;color:var(--gold)}.spread-mark{height:38px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:4px}.choice-dot{border:1px solid #59667a;width:16px;height:16px;margin-left:auto;flex-shrink:0;border-radius:50%}.choice-row[aria-pressed=true] .choice-dot{border:5px solid var(--accent);background:var(--text)}
.microcopy{font-size:.7rem;color:var(--muted);line-height:1.5;margin-top:.5rem}.flow-actions{display:flex;gap:.7rem;padding:1rem 1.5rem 1.5rem;position:sticky;bottom:0;background:rgba(14,20,32,.96);backdrop-filter:blur(14px);border-radius:0 0 22px 22px;z-index:3}.flow-primary{flex:1;display:flex;justify-content:space-between;gap:1rem}.back-button{border:1px solid var(--line);border-radius:7px;background:transparent;padding:.5rem 1rem;color:var(--text);font-size:.85rem;cursor:pointer;min-height:50px}.quiet-button{display:block;background:transparent;color:var(--muted);border:0;padding:.75rem;min-height:44px;text-decoration:underline;text-underline-offset:.25em;font-size:.78rem;cursor:pointer;margin:0 auto}.quiet-button:hover{color:var(--text)}.flow-error{color:var(--danger);background:rgba(255,154,138,.08);border:1px solid rgba(255,154,138,.25);padding:.8rem;border-radius:8px;font-size:.8rem}
.question-note{border-top:1px solid var(--line);margin-top:1.2rem;padding-top:.8rem}.question-note summary{cursor:pointer;color:var(--gold);font-size:.8rem;min-height:36px}.question-note textarea{resize:vertical;min-height:84px}.human-check{margin:1rem 0;min-height:65px}.human-check iframe{max-width:100%}
.ritual-deck{position:relative;height:245px;width:230px;margin:1.5rem auto}.deck-back{background:var(--card-raised);border:2px solid var(--gold);border-radius:12px;box-shadow:0 16px 24px rgba(0,0,0,.32);display:flex;align-items:center;justify-content:center;color:var(--gold)}.ritual-deck .deck-back{position:absolute;left:40px;top:10px;width:150px;height:225px}.ritual-deck .deck-back:first-child{transform:rotate(-14deg) translateX(-25px)}.ritual-deck .deck-back:nth-child(2){transform:rotate(14deg) translateX(25px)}.deck-back>span{font-family:var(--font);border:1px solid var(--gold);border-radius:50%;width:70px;height:70px;display:grid;place-items:center;font-size:1.7rem}.shuffling .deck-back{animation:deck-shuffle .9s ease-in-out infinite alternate}.shuffling .deck-back:nth-child(2){animation-delay:-.45s}@keyframes deck-shuffle{from{transform:rotate(-12deg) translateX(-20px)}to{transform:rotate(12deg) translateX(20px)}}.draw-recap{text-align:center;margin:1.5rem 0 1rem}.draw-recap strong,.draw-recap span{display:block;font-size:.86rem}.draw-recap span{font-family:var(--mono);font-size:.66rem;color:var(--muted);margin-top:.35rem}
.reveal-app{text-align:center}.reveal-progress{display:block;width:calc(100% - 3rem);height:3px;margin:1.2rem auto 0;border:0;border-radius:4px;accent-color:var(--accent)}.reveal-progress::-webkit-progress-bar{background:var(--line)}.reveal-progress::-webkit-progress-value{background:var(--accent)}.reveal-stage{position:relative;display:flex;justify-content:center;min-height:340px;align-items:center}.reveal-card{position:relative;flex-direction:column;width:210px;height:315px;cursor:pointer;transition:transform .2s}.reveal-card:hover{transform:translateY(-5px)}.reveal-card small{position:absolute;bottom:30px;font-size:.72rem;color:var(--gold)}.revealed-meaning{margin:1rem auto 0;max-width:430px;font-size:.85rem}.revealed-meaning h3{font-size:2rem;margin:0}.orientation-label{font-family:var(--mono);font-size:.64rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin:.4rem 0 .8rem}.reveal-app>.quiet-button{margin:-.75rem auto .75rem}
.result-app{padding:0 1.5rem 1.5rem}.result-app>.flow-topline{margin:0 -1.5rem 1.5rem}.reading-strip{display:flex;gap:.8rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem 0}.reading-strip figure{margin:0;flex:0 0 110px;scroll-snap-align:start}.reading-strip img{width:110px;height:165px;object-fit:cover;border-radius:7px;border:1px solid var(--line-soft)}.reading-strip img.reversed{transform:rotate(180deg)}.reading-strip figcaption{font-size:.63rem;color:var(--muted);margin-top:.5rem}.reading-strip figcaption strong{display:block;color:var(--text);font-size:.74rem}.meaning-details{border-block:1px solid var(--line);padding:1rem 0;font-size:.86rem;margin:1rem 0}.meaning-details summary{cursor:pointer;font-weight:600;min-height:32px}.meaning-details h3{margin-top:1.5rem}.action-choice{display:flex;align-items:center;gap:.7rem;background:rgba(158,200,172,.08);border:1px solid rgba(158,200,172,.18);padding:1rem;border-radius:10px;color:var(--text);font-size:.83rem}.action-choice input{width:22px;height:22px;flex-shrink:0;accent-color:var(--accent)}.share-actions .btn{padding:.65rem .9rem;font-size:.78rem}.share-actions .flow-error{flex-basis:100%}.reading-exits{display:flex;align-items:center;flex-wrap:wrap;font-size:.78rem;gap:1rem;padding:1rem 0}.reading-exits a{display:inline-flex;align-items:center;min-height:44px}.reading-exits .quiet-button{margin:0}.report-offer{border-top:1px solid var(--line);margin-top:1rem;padding-top:1.5rem}.report-offer h3{font-size:1.65rem}
.report-preview{margin:1.25rem 0 1.35rem;max-width:540px}
.report-preview-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 .7rem;font-size:.83rem}
.report-preview-header strong{color:var(--text);font-weight:600}
.report-preview-header span{font-size:.75rem;color:var(--muted)}
.report-preview-paper{background:#eee8dc;color:#202937;border-radius:10px;padding:1.35rem 1.5rem;box-shadow:0 10px 28px rgba(0,0,0,.18)}
.report-preview-paper .report-preview-label{font-size:.68rem;letter-spacing:.045em;color:#636c73;margin:0 0 .7rem;font-weight:600}
.report-preview-paper h4{font-family:var(--font);font-size:1.65rem;font-weight:400;line-height:1.1;margin:0 0 .65rem;color:#1b2736}
.report-preview-paper h5{font-size:.88rem;line-height:1.3;margin:0 0 .35rem;color:#202937}
.report-preview-paper p{font-size:.82rem;line-height:1.65;margin:0 0 .5rem;color:#4d5660}
.report-preview-rule{height:1px;background:rgba(30,43,60,.16);margin:1.15rem 0}
.report-preview-note{font-size:.75rem;line-height:1.5;color:var(--muted);margin:.65rem 0 0}
.report-check{min-height:65px;max-width:310px;margin:1rem 0}
.report-check iframe{max-width:100%}
@media(max-width:760px){.report-preview-paper{padding:1.2rem 1.15rem}.report-preview-paper h4{font-size:1.45rem}}
.reading-table{max-width:none;width:100%;min-height:650px;border-radius:26px;background:radial-gradient(circle at 82% 18%,rgba(69,91,126,.24),transparent 24rem),linear-gradient(145deg,rgba(20,30,46,.98),rgba(10,15,25,.99));border-color:rgba(216,194,141,.24);box-shadow:0 40px 100px rgba(0,0,0,.4);isolation:isolate}
.reading-table::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle at 12% 18%,rgba(216,194,141,.75) 0 1px,transparent 1.5px),radial-gradient(circle at 88% 74%,rgba(241,238,230,.6) 0 1px,transparent 1.5px),radial-gradient(circle at 72% 12%,rgba(216,194,141,.5) 0 1px,transparent 1.5px);background-size:17rem 19rem,23rem 29rem,31rem 37rem;opacity:.55}
.table-welcome{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:1fr auto;column-gap:1rem;padding:3.5rem 3.2rem 2.6rem;overflow:hidden}.table-welcome-copy{align-self:center;position:relative;z-index:2}.table-format{font-family:var(--mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.13em;color:var(--accent);margin-bottom:1.3rem}.table-welcome h2{font-size:clamp(3.5rem,5vw,5.2rem);line-height:.94;letter-spacing:-.04em;white-space:pre-line;margin:0 0 1.4rem}.table-welcome-copy>p:last-child{color:var(--muted);font-size:.9rem}.table-welcome-actions{align-self:end;position:relative;z-index:2}.table-welcome-actions .btn{width:min(100%,320px);justify-content:space-between}.table-welcome-actions p{font-family:var(--mono);font-size:.6rem;color:var(--muted);margin:.8rem 0 0}
.table-hero-deck{position:relative;grid-column:2;grid-row:1/span 2;min-height:510px;align-self:center;perspective:1000px}.table-hero-deck::before,.table-hero-deck::after{content:"";position:absolute;left:50%;top:50%;border:1px solid rgba(216,194,141,.18);border-radius:50%;transform:translate(-50%,-50%)}.table-hero-deck::before{width:390px;height:390px}.table-hero-deck::after{width:285px;height:285px;border-style:dashed;animation:orbit 50s linear infinite}.hero-card{position:absolute;left:50%;top:50%;width:205px;aspect-ratio:2/3;filter:drop-shadow(0 26px 24px rgba(0,0,0,.42));transform-origin:50% 120%}.hero-card:first-child{transform:translate(-88%,-48%) rotate(-24deg)}.hero-card:nth-child(2){transform:translate(-12%,-48%) rotate(24deg)}.hero-card:nth-child(3){transform:translate(-50%,-55%);animation:hero-float 5s ease-in-out infinite}.celestial-back{display:block;width:100%;height:100%;filter:drop-shadow(0 12px 18px rgba(0,0,0,.28))}@keyframes hero-float{0%,100%{transform:translate(-50%,-55%) rotateY(-3deg)}50%{transform:translate(-50%,-59%) rotateY(3deg)}}@keyframes orbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
.table-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:62px;padding:0 1.6rem;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);position:relative;z-index:4}.table-toolbar>:last-child{justify-self:end;grid-column:3}.table-toolbar button,.table-toolbar a{background:transparent;border:0;color:var(--muted);font:inherit;text-transform:inherit;letter-spacing:inherit;text-decoration:none;padding:.7rem;cursor:pointer;min-height:44px}.table-toolbar button:hover,.table-toolbar a:hover{color:var(--text)}
.table-setup .flow-progress{max-width:650px;width:calc(100% - 3rem);margin:0 auto;padding-top:1.4rem}.table-setup .flow-body{width:min(760px,100%);margin:0 auto;padding:2rem 2rem .8rem}.table-setup .flow-body>h2{font-size:2.8rem}.table-setup .flow-caption{max-width:520px}.table-setup .topic-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.table-setup .choice-row{min-height:82px;background:rgba(8,11,18,.45)}.topic-art{width:44px;height:60px;object-fit:cover;border-radius:4px;border:1px solid var(--line-soft);flex-shrink:0}.table-setup .spread-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.table-setup .spread-list .choice-row{align-items:flex-start;flex-wrap:wrap;min-height:160px;align-content:flex-start}.table-setup .spread-list .choice-row>span:nth-child(2){flex:1;min-width:100px}.table-setup .spread-list .choice-dot{margin-top:.25rem}.spread-preview{position:relative;display:block;width:76px;height:56px;flex-shrink:0}.spread-preview i{position:absolute;left:20px;top:5px;width:26px;height:40px;border:1px solid var(--gold);border-radius:2px;background:var(--card-raised)}.spread-preview-1 i{left:16px}.spread-preview-3 i:first-child{left:2px;transform:rotate(-10deg)}.spread-preview-3 i:nth-child(2){left:16px;top:1px}.spread-preview-3 i:nth-child(3){left:30px;transform:rotate(10deg)}.spread-preview-10 i:nth-child(1){left:0;top:15px;transform:rotate(-22deg)}.spread-preview-10 i:nth-child(2){left:10px;top:7px;transform:rotate(-11deg)}.spread-preview-10 i:nth-child(3){left:20px;top:3px}.spread-preview-10 i:nth-child(4){left:30px;top:7px;transform:rotate(11deg)}.spread-preview-10 i:nth-child(5){left:40px;top:15px;transform:rotate(22deg)}.table-setup .question-note{max-width:100%;margin-top:1.4rem}.table-setup .flow-actions{max-width:760px;width:100%;margin:auto auto 0;padding:1rem 2rem 1.8rem;background:transparent;backdrop-filter:none}
.table-shuffle-deck{position:relative;display:block;width:300px;height:330px;margin:0 auto 1rem;padding:0;background:transparent;border:0;cursor:pointer;perspective:1100px}.table-shuffle-deck::before{content:"";position:absolute;left:50%;top:48%;width:290px;height:290px;border:1px solid var(--line-soft);border-radius:50%;transform:translate(-50%,-50%)}.shuffle-card{position:absolute;left:65px;top:35px;width:170px;height:255px;transition:transform .3s ease}.shuffle-card:first-child{transform:rotate(-13deg) translateX(-18px)}.shuffle-card:nth-child(2){transform:rotate(13deg) translateX(18px)}.shuffle-card:nth-child(3){transform:translateY(-4px)}.table-shuffle-deck:hover .shuffle-card:first-child{transform:rotate(-20deg) translateX(-36px)}.table-shuffle-deck:hover .shuffle-card:nth-child(2){transform:rotate(20deg) translateX(36px)}.table-shuffle-deck:hover .shuffle-card:nth-child(3){transform:translateY(-16px)}.table-shuffle-deck.is-shuffling .shuffle-card:first-child{animation:shuffle-left .55s ease-in-out infinite alternate}.table-shuffle-deck.is-shuffling .shuffle-card:nth-child(2){animation:shuffle-right .55s ease-in-out infinite alternate}.table-shuffle-deck.is-shuffling .shuffle-card:nth-child(3){animation:shuffle-center .55s ease-in-out infinite alternate}@keyframes shuffle-left{to{transform:rotate(16deg) translate(80px,-10px)}}@keyframes shuffle-right{to{transform:rotate(-16deg) translate(-80px,8px)}}@keyframes shuffle-center{to{transform:translateY(-28px) rotate(3deg)}}
.table-reveal{min-height:760px}.table-reveal .flow-body{padding-inline:2rem}.table-reveal .reveal-stage{min-height:365px}.table-turned-card{width:230px;height:345px;margin:auto}.table-turned-card .holo-card{width:100%!important;height:100%!important}@keyframes card-arrive{from{opacity:0;transform:perspective(900px) rotateY(80deg) translateY(25px)}to{opacity:1;transform:perspective(900px) rotateY(0) translateY(0)}}
.table-fan{position:relative;width:min(100%,680px);height:360px;margin:0 auto}.fan-card{--x:calc((var(--slot) - .5)*500px);position:absolute;left:50%;top:50px;width:142px;height:213px;margin-left:-71px;padding:0;border:0;background:transparent;cursor:pointer;transform:translateX(var(--x)) translateY(calc(var(--dip)*90px)) rotate(calc((var(--slot) - .5)*32deg));transform-origin:50% 120%;transition:transform .22s ease,opacity .22s ease,filter .22s ease}.fan-card:hover{transform:translateX(var(--x)) translateY(calc(var(--dip)*90px - 24px)) rotate(calc((var(--slot) - .5)*32deg));z-index:4;filter:brightness(1.14)}.fan-card:disabled{opacity:.16;cursor:default;filter:grayscale(1)}.table-positions{display:flex;gap:.55rem;justify-content:flex-start;overflow-x:auto;padding:.8rem .2rem;max-width:680px;margin:0 auto;scroll-snap-type:x proximity}.table-positions>div{flex:0 0 64px;min-height:88px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;border:1px solid var(--line);border-radius:6px;color:var(--muted);scroll-snap-align:center}.table-positions>div.current{border-color:var(--accent);color:var(--accent)}.table-positions>div.filled{border-color:var(--gold)}.table-positions img{width:30px;height:45px;object-fit:cover;border-radius:2px}.table-positions img.reversed{transform:rotate(180deg)}.table-positions small{font-size:.52rem;max-width:58px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-reveal>.microcopy{text-align:center}.table-reveal .flow-actions{max-width:560px;margin:0 auto;background:transparent;backdrop-filter:none}.table-summary{max-width:800px;padding:0 2rem 2rem}.table-summary>.table-toolbar{margin:0 -2rem 2rem}.table-summary>h2{font-size:3rem}.table-summary .reading-strip{padding-block:1.5rem}
.table-fan{animation:fan-gather .34s cubic-bezier(.2,.75,.2,1) both}.fan-card{backface-visibility:hidden;transform-style:preserve-3d}.table-fan.has-selection .fan-card:not(.is-selected){opacity:0;pointer-events:none;transform:translateX(var(--x)) translateY(calc(var(--dip)*90px + 38px)) rotate(calc((var(--slot) - .5)*32deg)) scale(.88)}.table-fan.has-selection .fan-card.is-selected{z-index:6;opacity:1;transform-origin:50% 50%;transform:translateX(0) translateY(-8px) rotateY(90deg) scale(1.28);filter:brightness(1.15) drop-shadow(0 22px 26px rgba(0,0,0,.45));transition:transform .28s cubic-bezier(.55,.06,.68,.19),filter .28s ease}.reveal-card.is-selected{opacity:.8;transform:perspective(900px) rotateY(90deg) scale(1.04);transition:transform .28s cubic-bezier(.55,.06,.68,.19),opacity .28s ease}.table-turned-card{position:relative;transform-origin:50% 50%;transform-style:preserve-3d}.turned-card-layer{position:absolute;inset:0;z-index:0;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none}.reveal-stage.is-open .turned-card-layer{position:relative;z-index:2;opacity:1;pointer-events:auto;animation:card-arrive var(--flip-ms) cubic-bezier(.16,1,.3,1) both;will-change:transform,opacity}.ritual-selected-back,.table-fan,.reveal-card,.deck-back{position:relative;z-index:3}.table-turned-card.is-leaving{animation:card-leave .18s cubic-bezier(.55,.06,.68,.19) both}.revealed-meaning{animation:meaning-arrive .38s .12s ease-out both;transition:opacity .16s ease,transform .16s ease}[data-advancing=true] .revealed-meaning{opacity:0;transform:translateY(8px)}.summary-enter>*{animation:summary-arrive .42s cubic-bezier(.16,1,.3,1) both}@keyframes fan-gather{from{opacity:0}to{opacity:1}}@keyframes card-arrive{from{opacity:.35;transform:perspective(900px) rotateY(-90deg) translateY(-8px) scale(1.08)}to{opacity:1;transform:perspective(900px) rotateY(0) translateY(0) scale(1)}}@keyframes card-leave{from{opacity:1;transform:perspective(900px) rotateY(0) translateX(0) scale(1)}to{opacity:0;transform:perspective(900px) rotateY(-65deg) translateX(-34px) scale(.96)}}@keyframes meaning-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes summary-arrive{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
.reveal-stage{--flip-ms:280ms}
.flip-card{position:relative;flex:0 0 auto;width:230px;height:345px;perspective:950px}
.flip-card-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform var(--flip-ms) cubic-bezier(.2,.75,.2,1);will-change:transform}
.flip-card.is-open .flip-card-inner{transform:rotateY(180deg)}
.flip-card.is-instant .flip-card-inner{transition:none}
.flip-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.flip-back{transform:rotateY(0deg)}
.flip-front{transform:rotateY(180deg)}
.flip-front .holo-card{width:100%!important;height:100%!important}
.flip-card .flip-back .ritual-selected-back,.flip-card .flip-back .reveal-card{width:100%!important;height:100%!important;margin:0!important;transition:none!important;transform:none!important;opacity:1!important}
.flip-card.is-open .flip-back,.flip-card:not(.is-open) .flip-front{pointer-events:none}
.flip-card.is-leaving{animation:flip-leave .18s cubic-bezier(.55,.06,.68,.19) both}
@keyframes flip-leave{from{opacity:1;transform:translateX(0) scale(1)}to{opacity:0;transform:translateX(-34px) scale(.96)}}
.card-mist{position:absolute;inset:0;z-index:6;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 50%,rgba(223,201,148,.22) 0%,rgba(223,201,148,.06) 45%,transparent 75%),radial-gradient(ellipse at 35% 45%,rgba(158,190,224,.14) 0%,transparent 70%),radial-gradient(ellipse at 65% 55%,rgba(198,170,222,.1) 0%,transparent 72%)}
.reveal-stage.is-open .card-mist{animation:mist-veil var(--flip-ms) cubic-bezier(.2,.75,.2,1) both}
@keyframes mist-veil{0%{opacity:0}30%{opacity:.72}50%{opacity:.9}75%{opacity:.42}100%{opacity:0}}
@media(max-width:760px){.reveal-stage .flip-card{width:205px;height:308px}}
@media(prefers-reduced-motion:reduce){.reveal-stage{--flip-ms:0ms}.flip-card-inner{transition:none}.flip-card.is-leaving{animation:none}.reveal-stage.is-open .turned-card-layer{animation:none!important}.reveal-stage.is-open .card-mist{animation:none!important;opacity:0}}
@media(max-width:1100px){.home-experience .reading-table{max-width:760px;margin:0 auto}.table-welcome{min-height:620px}.table-hero-deck{min-height:460px;transform:scale(.82)}.hero-card{width:180px}.table-hero-deck::before{width:330px;height:330px}}
@media(max-width:760px){.reading-app{border-radius:18px}.flow-topline{padding:.85rem 1.05rem;font-size:.58rem}.flow-progress{padding:1rem 1.05rem 0}.flow-body{padding:1.2rem 1.05rem .3rem}.flow-body h2,.result-app>h2{font-size:2rem}.flow-caption{font-size:.78rem;margin-bottom:1rem}.choice-row{padding:.68rem .72rem;min-height:64px;gap:.65rem}.choice-row small{font-size:.67rem}.choice-row strong{font-size:.8rem}.flow-actions{padding:.85rem 1.05rem 1.1rem;bottom:calc(64px + env(safe-area-inset-bottom));border-radius:0 0 18px 18px}.flow-primary{font-size:.82rem}.flow-body textarea{font-size:16px}.result-app{padding:0 1.05rem 1.1rem}.result-app>.flow-topline{margin:0 -1.05rem 1.2rem}.reveal-stage{min-height:320px}.reading-table{border-radius:20px;min-height:620px}.table-welcome{display:flex;flex-direction:column;padding:2rem 1.3rem 1.4rem;min-height:600px;text-align:left}.table-welcome-copy{align-self:auto}.table-format{font-size:.58rem;margin-bottom:1rem}.table-welcome h2{font-size:clamp(3.2rem,15vw,4.25rem);max-width:340px}.table-welcome-copy>p:last-child{font-size:.8rem}.table-hero-deck{order:2;width:100%;min-height:285px;height:285px;margin:-.4rem 0 0;transform:none}.table-hero-deck::before{width:250px;height:250px}.table-hero-deck::after{width:190px;height:190px}.hero-card{width:120px}.hero-card:first-child{transform:translate(-80%,-48%) rotate(-24deg)}.hero-card:nth-child(2){transform:translate(-20%,-48%) rotate(24deg)}.table-welcome-actions{order:3;width:100%;margin-top:auto}.table-welcome-actions .btn{width:100%;max-width:none}.table-welcome-actions p{text-align:center}.table-toolbar{min-height:54px;padding:0 .6rem;font-size:.54rem;gap:.25rem}.table-toolbar button,.table-toolbar a{padding:.55rem}.table-setup .flow-progress{width:calc(100% - 2.1rem);padding-top:1rem}.table-setup .flow-body{padding:1.3rem 1.05rem .5rem}.table-setup .flow-body>h2{font-size:2.15rem}.table-setup .topic-list{grid-template-columns:1fr;gap:.55rem}.table-setup .choice-row{min-height:68px}.topic-art{width:38px;height:52px}.table-setup .spread-list{grid-template-columns:1fr;gap:.55rem}.table-setup .spread-list .choice-row{min-height:78px;align-items:center;flex-wrap:nowrap;align-content:normal}.table-setup .flow-actions{padding:.85rem 1.05rem 1.1rem;position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));background:rgba(12,18,29,.96);backdrop-filter:blur(16px)}.table-shuffle-deck{height:295px;transform:scale(.9);margin-top:-10px;margin-bottom:-10px}.table-reveal{min-height:700px}.table-reveal .flow-body{padding-inline:1.05rem}.table-reveal .reveal-stage{min-height:330px}.table-turned-card{width:205px;height:308px}.table-fan{height:330px;width:100%;transform:scale(.84);margin:-5px -2% 0}.fan-card{--x:calc((var(--slot) - .5)*200px);width:112px;height:168px;margin-left:-56px}.table-positions{justify-content:flex-start}.table-summary{padding:0 1.05rem 1.1rem}.table-summary>.table-toolbar{margin:0 -1.05rem 1.2rem}.table-summary>h2{font-size:2.3rem}.table-reveal .flow-actions{bottom:calc(64px + env(safe-area-inset-bottom));background:rgba(12,18,29,.96)}.revealed-meaning h3{font-size:1.8rem}}
@media(max-width:360px){.table-welcome{padding-inline:1rem}.table-welcome h2{font-size:3.1rem}.table-hero-deck{min-height:250px;height:250px}.hero-card{width:112px}.table-fan{transform:scale(.72);margin:-25px -8% 0}.table-setup .flow-body>h2{font-size:1.95rem}}
.flow-caption{font-size:var(--text-secondary)}.choice-row strong{font-size:var(--text-secondary)}.choice-row small{font-size:var(--text-meta)}.table-welcome-actions p{font-size:var(--text-meta)}.table-positions>div{flex-basis:72px}.table-positions small{font-size:.7rem;max-width:66px}.reading-strip figcaption{font-size:var(--text-meta)}.reading-strip figcaption strong{font-size:.8rem}.result-app .meaning-details{max-width:48ch;margin-inline:auto}.result-app .callout{max-width:48ch;margin-inline:auto}.yesno-lean strong{font-family:var(--sans);font-weight:700}.meaning-details summary,.question-note summary{display:flex;align-items:center;min-height:44px}.choice-row:active{transform:scale(.99)}.reading-app,.reading-table{border-radius:16px;box-shadow:none}.flow-actions{border-radius:0 0 16px 16px}.flow-topline,.table-toolbar,.table-format{font-family:var(--sans);text-transform:none;letter-spacing:.01em}.flow-topline,.table-toolbar{font-size:var(--text-meta)}.table-format{font-size:var(--text-meta);color:var(--gold)}.flow-progress,.table-toolbar,.draw-recap,.table-positions{font-variant-numeric:tabular-nums}.reveal-card small{font-family:var(--sans)}
@media(min-width:1101px){.table-welcome{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);padding:3rem 2.6rem 2.4rem}.table-welcome h2{font-size:clamp(3.1rem,3.5vw,3.5rem);max-width:100%}.table-hero-deck{margin-left:56px}.hero-card{width:175px}.hero-card:first-child{transform:translate(-65%,-48%) rotate(-24deg)}.hero-card:nth-child(2){transform:translate(-35%,-48%) rotate(24deg)}}
@media(max-width:760px){.choice-row strong{font-size:var(--text-secondary)}.choice-row small{font-size:var(--text-meta)}.flow-caption,.table-welcome-copy>p:last-child{font-size:var(--text-secondary)}.reading-app,.reading-table{border-radius:16px}.flow-actions{border-radius:0 0 16px 16px}.table-welcome-actions{order:1;margin-top:0}.table-hero-deck{order:2}.table-welcome h2{font-size:clamp(2rem,15vw,3rem);line-height:.92;max-width:320px}.table-welcome-copy>p:last-child{margin-bottom:1rem}}
@media(prefers-reduced-motion:reduce){.shuffling .deck-back,.table-hero-deck::after,.hero-card:nth-child(3),.table-shuffle-deck.is-shuffling .shuffle-card,.table-fan,.turned-card-layer,.table-turned-card,.table-turned-card.is-leaving,.revealed-meaning,.summary-enter>*{animation:none}.reveal-card,.fan-card,.shuffle-card,.revealed-meaning{transition:none}.table-fan.has-selection .fan-card:not(.is-selected){opacity:0}.table-fan.has-selection .fan-card.is-selected{transform:translateX(0) scale(1.12)}}

.holo-card::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;border-radius:12px;background:linear-gradient(115deg,transparent 28%,rgba(255,242,200,.28) 44%,rgba(170,210,255,.2) 52%,transparent 68%);background-size:220% 100%;mix-blend-mode:screen}
.holo-card.is-revealing::after{animation:holo-sheen var(--flip-ms,280ms) cubic-bezier(.2,.75,.2,1) both}
@keyframes holo-sheen{0%{opacity:0;background-position:120% 0}35%{opacity:.85}100%{opacity:0;background-position:-20% 0}}
@media(prefers-reduced-motion:reduce){.holo-card.is-revealing::after{animation:none}}

.ritual-quota{margin:0 0 .55rem;font-size:.8rem;line-height:1.45;color:var(--gold2);text-align:center}

.flow-quota{margin:.2rem 0 .6rem;font-size:.78rem;line-height:1.45;color:var(--gold2)}
