:root{color:#f7f1e8;background:#080a18;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #f7f1e8;--muted: #afa9be;--gold: #e4c98d;--violet: #9b86d1;--deep: #080a18;--panel: rgba(17, 18, 43, .74);--line: rgba(228, 201, 141, .2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0;background:radial-gradient(circle at 15% 22%,rgba(82,66,137,.24),transparent 31rem),radial-gradient(circle at 84% 48%,rgba(47,79,126,.2),transparent 34rem),linear-gradient(180deg,#080a18,#0c0d20 52%,#090b1b)}button,textarea,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}main{position:relative;min-height:100vh;overflow:hidden}.star-field{position:fixed;inset:0;z-index:-1;pointer-events:none}.star-field span{position:absolute;display:block;border-radius:50%;background:#fff6dc;box-shadow:0 0 8px #fff0c4d9;animation:twinkle 4s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.18;transform:scale(.75)}50%{opacity:.9;transform:scale(1.2)}}.nav-shell{display:flex;align-items:center;justify-content:space-between;width:min(1180px,calc(100% - 48px));margin:0 auto;padding:28px 0;border-bottom:1px solid rgba(255,255,255,.06)}.brand{display:inline-flex;gap:11px;align-items:center;color:var(--ink);text-decoration:none;font-family:Georgia,Times New Roman,serif;font-size:.95rem;letter-spacing:.3em}.brand-mark{color:var(--gold);font-size:1.55rem;letter-spacing:0}.nav-whisper,.eyebrow,.section-kicker{color:var(--gold);font-family:Georgia,Times New Roman,serif;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase}.nav-whisper{color:#77748a;letter-spacing:.13em}.hero{display:grid;place-items:center;min-height:770px;padding:80px 24px 120px;text-align:center}.celestial-symbol{position:relative;display:grid;width:158px;height:158px;margin-bottom:38px;place-items:center}.sun-halo{position:absolute;inset:0;border:1px solid rgba(228,201,141,.2);border-radius:50%;box-shadow:0 0 60px #e4c98d17,inset 0 0 30px #e4c98d0d}.sun-halo:before,.sun-halo:after{position:absolute;content:"";inset:14px;border:1px dashed rgba(228,201,141,.18);border-radius:50%;animation:orbit-spin 35s linear infinite}.sun-halo:after{inset:-17px;border-style:solid;border-color:transparent rgba(228,201,141,.13);animation-direction:reverse}@keyframes orbit-spin{to{transform:rotate(360deg)}}.hero-moon{color:var(--gold);font-family:Georgia,serif;font-size:5.4rem;line-height:1;filter:drop-shadow(0 0 24px rgba(228,201,141,.2))}.tiny-star{position:absolute;color:var(--gold)}.star-a{top:5px;right:12px}.star-b{bottom:8px;left:-5px;font-size:2rem}.star-c{right:-26px;bottom:31px;font-size:.8rem}.hero h1{max-width:900px;margin:20px 0 25px;font-family:Georgia,"Noto Serif SC",Songti SC,serif;font-size:clamp(3rem,7vw,5.8rem);font-weight:400;letter-spacing:-.055em;line-height:1.16}.hero h1 em{color:var(--gold);font-weight:400}.hero-copy{margin:0;color:var(--muted);font-family:Georgia,"Noto Serif SC",Songti SC,serif;font-size:clamp(1rem,1.8vw,1.2rem);line-height:2}.hero-link{display:inline-flex;gap:16px;align-items:center;margin-top:48px;padding-bottom:8px;color:var(--ink);border-bottom:1px solid var(--line);text-decoration:none;font-size:.86rem;letter-spacing:.08em}.hero-link span{color:var(--gold)}.ask-section,.card-table,.reading-panel{width:min(1120px,calc(100% - 40px));margin:0 auto}.ask-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,8vw,110px);padding:110px 0 140px;border-top:1px solid var(--line)}.section-heading h2,.reading-panel>h2{margin:18px 0;font-family:Georgia,"Noto Serif SC",Songti SC,serif;font-size:clamp(2.2rem,5vw,3.8rem);font-weight:400;line-height:1.3}.section-heading p{max-width:480px;color:var(--muted);line-height:1.9}.question-form{padding:clamp(26px,5vw,52px);border:1px solid var(--line);background:linear-gradient(135deg,#171734d1,#0b0d20bd);box-shadow:0 30px 80px #00000038;backdrop-filter:blur(12px)}.question-form>label,.question-form legend{display:block;margin-bottom:13px;color:var(--gold);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase}.textarea-wrap{position:relative}textarea{width:100%;min-height:150px;resize:vertical;padding:21px 22px 36px;color:var(--ink);border:1px solid rgba(255,255,255,.1);border-radius:2px;background:#04061280;line-height:1.75;transition:border-color .18s ease,background .18s ease}textarea::placeholder{color:#6f6c80}textarea:focus{border-color:#e4c98d8c;background:#040612bf;outline:none}.textarea-wrap>span{position:absolute;right:13px;bottom:10px;color:#656276;font-size:.7rem}fieldset{padding:0;margin:30px 0 36px;border:0}.count-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.count-options label{cursor:pointer;display:grid;gap:6px;padding:18px 14px;border:1px solid rgba(255,255,255,.08);background:#ffffff04;transition:.18s ease}.count-options label:hover,.count-options label.is-selected{border-color:#e4c98d73;background:#e4c98d12}.count-options input{position:absolute;width:1px;height:1px;opacity:0}.count-options strong{font-family:Georgia,"Noto Serif SC",Songti SC,serif;font-weight:400}.count-options span{color:#777488;font-size:.68rem;line-height:1.4}.primary-button{cursor:pointer;display:inline-flex;gap:24px;align-items:center;justify-content:center;min-height:54px;padding:0 26px;color:#11101c;border:0;background:linear-gradient(135deg,#f0dba8,#c7a966);font-weight:600;letter-spacing:.05em;box-shadow:0 14px 34px #af8d4426;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.question-form .primary-button{width:100%}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 42px #af8d443d;filter:brightness(1.04)}.primary-button:disabled{cursor:wait;opacity:.72}.form-error{color:#e6a8a8;font-size:.84rem;line-height:1.6}.card-table{padding:110px 0 135px;border-top:1px solid var(--line)}.centered{display:grid;place-items:center;text-align:center}.centered p{margin-top:0}.cards-grid{display:flex;align-items:flex-start;justify-content:center;gap:clamp(15px,2.5vw,34px);margin-top:64px;perspective:1200px}.tarot-card{cursor:pointer;width:clamp(150px,18vw,205px);padding:0;color:inherit;border:0;background:transparent;text-align:center}.card-position{display:block;min-height:38px;margin-bottom:13px;color:var(--gold);font-size:.7rem;letter-spacing:.08em}.card-flip{position:relative;display:block;width:100%;aspect-ratio:.59;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.2,.75,.25,1)}.is-revealed .card-flip{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;display:flex;overflow:hidden;align-items:center;justify-content:center;backface-visibility:hidden;border:1px solid rgba(228,201,141,.48);border-radius:8px;box-shadow:0 24px 60px #0000004d}.card-back{flex-direction:column;background:radial-gradient(circle at 50% 50%,rgba(129,99,180,.28),transparent 42%),linear-gradient(145deg,#151535,#090b1d)}.card-back:before,.card-front:before{position:absolute;content:"";inset:8px;border:1px solid rgba(228,201,141,.2);border-radius:4px}.orbit{position:absolute;width:66%;aspect-ratio:1;border:1px solid rgba(228,201,141,.22);border-radius:50%}.orbit-one{transform:rotateX(66deg)}.orbit-two{transform:rotateY(66deg)}.moon-mark{position:relative;color:var(--gold);font-family:Georgia,serif;font-size:clamp(2.9rem,5vw,4.4rem);text-shadow:0 0 24px rgba(228,201,141,.25)}.back-brand{position:absolute;bottom:26px;color:#e4c98da6;font-family:Georgia,serif;font-size:.55rem;letter-spacing:.32em}.card-front{transform:rotateY(180deg);flex-direction:column;background:radial-gradient(circle at 50% 38%,rgba(228,201,141,.13),transparent 42%),linear-gradient(165deg,#17172f,#0b0d20)}.card-front.is-reversed>*:not(.card-orientation,.card-number){transform:rotate(180deg)}.card-number{position:absolute;top:18px;left:20px;color:#e4c98d8c;font-family:Georgia,serif;font-size:.68rem}.card-glyph{color:var(--gold);font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,4.3rem);line-height:1;transition:transform .6s ease}.card-title{margin-top:25px;font-family:Georgia,"Noto Serif SC",Songti SC,serif;font-size:clamp(1rem,1.6vw,1.25rem);transition:transform .6s ease}.card-title-en{margin-top:8px;color:#817d91;font-family:Georgia,serif;font-size:.57rem;letter-spacing:.08em;text-transform:uppercase;transition:transform .6s ease}.card-orientation{position:absolute;right:14px;bottom:15px;padding:4px 7px;color:var(--gold);border:1px solid rgba(228,201,141,.2);font-size:.58rem}.cards-5 .tarot-card{width:min(17vw,185px)}.card-actions{display:flex;justify-content:center;margin-top:58px}.text-button{cursor:pointer;padding:9px 2px;color:var(--gold);border:0;border-bottom:1px solid rgba(228,201,141,.3);background:none;font-size:.82rem;letter-spacing:.08em}.spinner{display:inline-block;animation:orbit-spin 1.3s linear infinite}.centered-error{margin-top:24px;text-align:center}.reading-panel{padding:clamp(35px,7vw,82px);border:1px solid var(--line);background:radial-gradient(circle at 80% 10%,rgba(129,99,180,.15),transparent 24rem),var(--panel);box-shadow:0 40px 100px #00000042}.reading-panel>h2{max-width:780px;margin-bottom:45px}.reading-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:45px;padding:38px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reading-grid article{position:relative;padding-left:44px}.reading-grid h3,.action-list h3{margin:0 0 13px;font-family:Georgia,"Noto Serif SC",Songti SC,serif;font-size:1.1rem;font-weight:400}.reading-grid p{margin:0;color:#c4bfce;line-height:1.9}.reading-icon{position:absolute;top:-2px;left:0;color:var(--gold);font-size:1.2rem}.action-list{padding:42px 0 20px}.action-list ol{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0;margin:24px 0 0;list-style:none;counter-reset:actions}.action-list li{position:relative;min-height:118px;padding:22px 20px 20px 51px;color:#c9c4d2;border:1px solid rgba(255,255,255,.07);background:#ffffff05;line-height:1.7;counter-increment:actions}.action-list li:before{position:absolute;top:20px;left:18px;content:"0" counter(actions);color:var(--gold);font-family:Georgia,serif;font-size:.72rem}blockquote{margin:30px 0 0;padding:25px 0 0;color:var(--ink);border-top:1px solid var(--line);font-family:Georgia,"Noto Serif SC",Songti SC,serif;font-size:clamp(1.25rem,3vw,1.75rem);line-height:1.6}blockquote span{display:block;margin-bottom:12px;color:var(--gold);font-family:Inter,system-ui,sans-serif;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase}.reading-note{margin:35px 0 0;color:#6e6b7c;font-size:.72rem}.restart-wrap{display:flex;justify-content:center;padding:55px 20px 120px}footer{display:grid;justify-items:center;padding:80px 24px 46px;border-top:1px solid var(--line);text-align:center}.footer-brand{margin-bottom:18px}footer p{color:#858195;font-family:Georgia,"Noto Serif SC",Songti SC,serif}footer small{margin-top:22px;color:#5b5869;font-size:.68rem}@media(max-width:820px){.hero{min-height:700px}.ask-section{grid-template-columns:1fr}.cards-grid{flex-wrap:wrap}.cards-5 .tarot-card,.tarot-card{width:min(42vw,190px)}.reading-grid,.action-list ol{grid-template-columns:1fr}}@media(max-width:540px){.nav-shell{width:calc(100% - 32px);padding:20px 0}.nav-whisper{display:none}.hero{min-height:630px;padding-top:55px}.celestial-symbol{width:120px;height:120px;margin-bottom:28px}.hero-moon{font-size:4.1rem}.hero h1{font-size:clamp(2.55rem,13vw,3.7rem)}.hero-copy br{display:none}.ask-section,.card-table,.reading-panel{width:calc(100% - 28px)}.ask-section,.card-table{padding-top:80px;padding-bottom:90px}.question-form{padding:24px 18px}.count-options{grid-template-columns:1fr}.count-options label{grid-template-columns:1fr auto}.count-options span{text-align:right}.cards-grid{gap:22px 10px}.cards-5 .tarot-card,.tarot-card{width:min(43vw,170px)}.card-position{font-size:.62rem}.reading-panel{padding:34px 22px}.reading-grid article{padding-left:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
