:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f6f0e8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#111315;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{cursor:url(/logo-cursor-48.png) 24 24,default;background:radial-gradient(circle at 18% 12%,#e3c9972e,#0000 28rem),radial-gradient(circle at 86% 18%,#59b6a82e,#0000 24rem),linear-gradient(140deg,#0d1011 0%,#171817 48%,#0f1414 100%);min-width:320px;min-height:100vh;margin:0}button,a,.logo,.spread-btn,.draw-btn,.auth-btn,.nav-action,.dialog-primary,.dialog-secondary,.dialog-close{cursor:url(/logo-cursor-48.png) 24 24,pointer!important}button{font:inherit}#app{opacity:0;place-items:center;min-height:100vh;padding:28px;animation:.88s cubic-bezier(.2,.8,.2,1) .12s forwards splashIn;display:grid;transform:translateY(18px)scale(.99)}.tarot-shell{-webkit-backdrop-filter:blur(28px)saturate(1.2);backdrop-filter:blur(28px)saturate(1.2);background:#f5eee214;border:1px solid #ffffff29;border-radius:28px;grid-template-rows:auto auto 1fr;gap:22px;width:min(1120px,100%);min-height:min(760px,100vh - 56px);padding:clamp(18px,3vw,34px);display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px #00000070,inset 0 1px #ffffff38}.tarot-shell:before{content:"";pointer-events:none;background:linear-gradient(115deg,#ffffff2e,#0000 30%),linear-gradient(290deg,#e8bd7b1a,#0000 42%);border-radius:27px;position:absolute;inset:1px}.topbar,.hero,.reading-panel{z-index:1;position:relative}.topbar{justify-content:space-between;align-items:center;gap:24px;display:flex}.logo{color:#fff8ec;align-items:center;gap:16px;text-decoration:none;display:inline-flex;cursor:url(/logo-cursor-48.png) 24 24,pointer!important}.logo img{object-fit:cover;border:1px solid #ffffff2e;border-radius:20px;width:88px;height:88px;box-shadow:0 12px 32px #00000040}.logo span{letter-spacing:.01em;font-family:Georgia,Times New Roman,serif;font-size:2.8rem;font-weight:700}.main-nav{background:linear-gradient(#ffffff0f,#ffffff05);border:1px solid #ffffff24;border-radius:18px;flex:1;justify-content:center;align-items:center;gap:30px;padding:10px 16px;display:flex}.nav-action{color:#f6f0e8b8;white-space:nowrap;background:0 0;border:0;padding:7px 0;font-size:.98rem;font-weight:500;transition:color .18s,transform .18s;position:relative}.nav-action:not(:last-child):after{content:"";background:#ffffff2e;width:1px;height:18px;position:absolute;top:50%;right:-15px;transform:translateY(-50%)}.nav-action:hover,.nav-action:focus-visible{color:#fff8ec;transform:translateY(-1px)}.nav-action--accent{color:#f1d99f;font-weight:700}.auth-btn{color:#fff8ec;cursor:url(/logo.png) 24 24,pointer;background:linear-gradient(135deg,#fff6e629,#78c4b833);border:1px solid #fff3;border-radius:14px;justify-content:center;align-items:center;gap:9px;min-width:112px;padding:14px 24px;transition:transform .18s,border-color .18s,background .18s;display:inline-flex;box-shadow:inset 0 1px #fff3}.auth-btn:hover,.auth-btn:focus-visible{border-color:#fff6e66b;transform:translateY(-1px)}.auth-btn.is-authenticated{background:#ffffff12}.auth-btn--reserved{visibility:hidden;pointer-events:none}.auth-state-dot{background:#d8c28f;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d8c28f1a}.auth-btn.is-authenticated .auth-state-dot{background:#78c4b8;box-shadow:0 0 0 4px #78c4b81f}.hero{max-width:680px}.eyebrow{color:#cbbda9;letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:700}h1{color:#fff8ec;letter-spacing:0;margin:0;font-family:Georgia,Times New Roman,serif;font-size:8rem;font-weight:400;line-height:.86}.intro{color:#f6f0e8b8;max-width:520px;margin:18px 0 0;font-size:1.12rem;line-height:1.55}.reading-panel{grid-template-rows:auto minmax(280px,1fr) auto;align-self:stretch;gap:22px;display:grid}.spread-switcher,.reading-actions{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#ffffff17;border:1px solid #ffffff2e;box-shadow:inset 0 1px #ffffff38,0 18px 52px #0003}.spread-switcher{isolation:isolate;background:linear-gradient(#080b0a5c,#1417153d),#ffffff0a;border-color:#ffffff29;border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px;display:grid;position:relative}.spread-switcher:before{content:"";top:8px;bottom:8px;left:var(--highlight-left,8px);width:var(--highlight-width,calc((100% - 16px) / 3));z-index:0;background:linear-gradient(135deg,#fff6e6,#dec28b 58%,#78c4b8);border-radius:12px;transition:left .32s cubic-bezier(.2,.8,.2,1),width .32s cubic-bezier(.2,.8,.2,1);position:absolute;box-shadow:0 12px 34px #dec28b3d}.spread-btn{z-index:1;color:#fff8ece0;cursor:pointer;text-shadow:0 1px 7px #000000b3;background:0 0;border:0;border-radius:12px;align-content:center;gap:4px;min-height:68px;transition:transform .18s,background .18s,color .18s;display:grid;position:relative}.spread-btn span{font-size:1.04rem;font-weight:700}.spread-btn small{color:inherit;opacity:.7;font-size:.78rem}.spread-btn:not(.active):hover{color:#fff8ec;background:#ffffff0e;transform:translateY(-1px)}.spread-btn.active{color:#1c1711;text-shadow:none;background:0 0}.spread-btn.active small{opacity:.74}.cards-container{grid-template-columns:repeat(var(--card-count,5), minmax(0, 220px));place-content:center;gap:clamp(12px,2.2vw,22px);min-height:100%;padding:clamp(6px,2vw,22px);display:grid}.tarot-card{aspect-ratio:.68;isolation:isolate;width:100%;min-height:220px;animation:.54s cubic-bezier(.2,.8,.2,1) both cardIn;animation-delay:var(--delay);perspective:1200px;transition:transform .22s,box-shadow .22s,z-index .22s;position:relative;overflow:hidden;container-type:inline-size}.tarot-card:hover,.tarot-card:focus-within{z-index:2;transform:scale(1.04);box-shadow:0 34px 70px #0000005c}.tarot-card:before{content:"";z-index:-1;background:linear-gradient(130deg,#fff3,#0000 38%);border-radius:17px;position:absolute;inset:1px}.tarot-card-inner{width:100%;height:100%;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;will-change:transform;transition:transform .78s cubic-bezier(.2,.8,.2,1);position:relative}.tarot-card.is-flipped .tarot-card-inner{transform:rotateY(180deg)}.tarot-card.is-flipped.show-details .tarot-card-inner{transform:none}.tarot-card.is-details-ready{cursor:url(/logo-cursor-48.png) 24 24,pointer}.tarot-card.show-details{z-index:3;box-shadow:0 30px 74px #0000007a}.tarot-card-side{backface-visibility:hidden;position:absolute;inset:0;overflow:hidden}.tarot-card-side--front{border-radius:18px;align-content:space-between;justify-items:center;padding:16px;display:grid;transform:rotateY(180deg)}.tarot-card-side--back{border-radius:18px;padding:0;display:block;transform:rotateY(0)}.tarot-card-back{background:linear-gradient(145deg,#ebddbe33,#5bb0a61f),#1819179e;border:1px solid #ffffff38;box-shadow:0 28px 54px #00000059,inset 0 1px #ffffff3d}.initial-card-back{opacity:1;visibility:visible;transition:opacity .18s,visibility .18s;position:absolute;inset:0}.tarot-card.is-details-ready .initial-card-back{opacity:0;visibility:hidden}.card-meaning{z-index:3;overscroll-behavior:contain;touch-action:pan-y;opacity:0;visibility:hidden;pointer-events:none;color:#211a12;scrollbar-width:thin;scrollbar-color:#2e4a4394 transparent;background:radial-gradient(circle at 88% 8%,#51857729,#0000 8rem),radial-gradient(circle at 12% 94%,#a6773624,#0000 9rem),linear-gradient(160deg,#fff7e7,#e9d4a9 66%,#d5bd8c);height:100%;transition:opacity .18s,visibility 0s linear .18s;position:absolute;inset:0;overflow:hidden auto}.tarot-card.show-details .card-meaning{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s .36s,visibility 0s linear .36s}.card-meaning::-webkit-scrollbar{width:4px}.card-meaning::-webkit-scrollbar-thumb{background:#2e4a4394;border-radius:999px}.card-meaning-content{text-align:left;flex-direction:column;align-items:flex-start;min-height:100%;padding:18px 16px 14px;display:flex}.meaning-position{color:#2f5148;letter-spacing:.1em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;background:#fffcf194;border:1px solid #3951494d;border-radius:999px;max-width:100%;padding:5px 8px;font-size:.62rem;font-weight:900;line-height:1;overflow:hidden}.card-meaning h2{color:#211a12;text-wrap:balance;margin:10px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:400;line-height:1}.meaning-suit{color:#211a128a;letter-spacing:.08em;text-transform:uppercase;margin-top:5px;font-size:.62rem;font-weight:800}.card-meaning p{color:#211a12c7;margin:10px 0 0;font-size:.78rem;line-height:1.42}.card-meaning strong{color:#2d4d45}.meaning-advice{border-top:1px solid #2c484033;padding-top:9px}.meaning-hint{color:#211a1280;text-align:center;background:linear-gradient(#0000,#e0ca9ff5 38%);width:100%;margin-top:auto;padding:12px 0 2px;font-size:.6rem;font-weight:800;line-height:1.3;position:sticky;bottom:-1px}.tarot-card-back .position-label,.tarot-card-side--back .position-label{z-index:2;color:#fff8ec;-webkit-backdrop-filter:blur(12px)saturate(1.15);backdrop-filter:blur(12px)saturate(1.15);text-shadow:0 1px 3px #000000e0;background:linear-gradient(135deg,#0c0e0df0,#191f1cf5);border:1px solid #e2c484a3;border-radius:999px;width:auto;min-height:auto;padding:8px 10px;font-size:.7rem;font-weight:900;position:absolute;top:12px;left:12px;right:12px;box-shadow:0 7px 20px #0000007a,inset 0 1px #ffffff24}.tarot-card-face{color:#201b15;background:linear-gradient(160deg,#fffbf0f0,#dfcca4e6),#fbf2df;border:1px solid #fff6e65c;box-shadow:0 26px 58px #00000052,inset 0 1px #fffc}.tarot-card-image{background:#161512;border-color:#dec28b7a;padding:0}.card-art{object-fit:cover;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.tarot-card-image:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#0000,#080908d6 74%);height:44%;position:absolute;inset:auto 0 0}.card-caption{z-index:1;-webkit-backdrop-filter:blur(18px)saturate(1.1);backdrop-filter:blur(18px)saturate(1.1);background:linear-gradient(#0d0f0ea8,#0d0f0ec2);border:1px solid #ffffff2e;border-radius:11px;justify-items:center;gap:3px;max-height:calc(100% - 58px);padding:8px 9px;transition:padding .18s,background .18s,transform .18s;display:grid;position:absolute;bottom:8px;left:8px;right:8px;overflow:hidden;box-shadow:inset 0 1px #ffffff2e}.card-hover-info{opacity:0;pointer-events:none;justify-items:center;gap:2px;width:100%;max-height:0;transition:opacity .18s,max-height .22s,transform .18s;display:grid;overflow:hidden;transform:translateY(6px)}.tarot-card:hover .card-caption,.tarot-card:focus-within .card-caption{background:linear-gradient(#0d0f0ec7,#0d0f0ee6);padding:9px 10px 10px}.tarot-card:hover .card-hover-info,.tarot-card:focus-within .card-hover-info{opacity:1;max-height:82px;transform:translateY(0)}.tarot-card-image .position-label,.tarot-card-image .card-suit,.tarot-card-image .card-name,.tarot-card-image .card-desc{color:#fff8ec;text-shadow:0 1px 12px #0000008c}.tarot-card-image .position-label{color:#fff8ec9e;min-height:auto}.card-position-chip{z-index:2;-webkit-backdrop-filter:blur(14px)saturate(1.15);backdrop-filter:blur(14px)saturate(1.15);letter-spacing:.1em;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(135deg,#0a0c0bf0,#1b221ff5);border:1px solid #e7c987b8;border-radius:999px;width:max-content;max-width:calc(100% - 16px);min-height:0;padding:5px 9px;font-size:.7rem;font-weight:900;line-height:1;position:absolute;top:8px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 7px 20px #00000085,0 0 0 1px #0d0f0e4d,inset 0 1px #ffffff29;color:#fff8ec!important;text-shadow:0 1px 3px #000000e6!important}.tarot-card-image .card-suit{color:#fff8ecb8;margin-top:4px}.tarot-card-image .card-name{color:#fff8ec;margin-top:0}.tarot-card-image .card-desc{color:#fff8ecb8;min-height:auto;margin-top:4px;font-size:.76rem}.position-label{color:#fff8ecad;letter-spacing:.12em;text-align:center;text-transform:uppercase;width:100%;min-height:24px;font-size:.72rem;font-weight:800}.card-back-art{background:#ffffff14;border:1px solid #ffffff2e;border-radius:18px;width:100%;height:100%;margin:0;display:block;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 28px #ffffff1a,0 0 48px #78c4b824}.tarot-card-back-image .card-back-art{box-shadow:none;background:0 0;border-color:#ffffff4d;border-radius:18px}.back-design-image{object-fit:cover;width:100%;height:100%;display:block}.back-orbit{aspect-ratio:1;border:1px solid #dec28b99;border-radius:46% 54% 52% 48%;width:68%;position:absolute;transform:rotate(-28deg)}.back-mark{color:#fff8ec;font-family:Georgia,Times New Roman,serif;font-size:3rem;line-height:1}.card-suit{color:#201b1594;letter-spacing:.12em;text-transform:uppercase;align-self:start;font-size:.72rem;font-weight:800}.card-name{color:#1f1913;text-align:center;text-wrap:balance;-webkit-hyphens:none;hyphens:none;overflow-wrap:anywhere;word-break:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.02rem;font-weight:400;line-height:1.08;display:-webkit-box;overflow:hidden}.card-desc{color:#201b15ad;text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:44px;margin:14px 0 0;font-size:.92rem;line-height:1.35;display:-webkit-box;overflow:hidden}@container (width<=150px){.card-meaning-content{padding:10px 9px 8px}.meaning-position{letter-spacing:.07em;padding:4px 6px;font-size:.5rem}.card-meaning h2{margin-top:7px;font-size:.92rem}.meaning-suit{margin-top:3px;font-size:.5rem}.card-meaning p{margin-top:7px;font-size:.64rem;line-height:1.32}.meaning-advice{padding-top:6px}.meaning-hint{padding-top:9px;font-size:.5rem}.card-position-chip{letter-spacing:.08em;max-width:calc(100% - 12px);padding:4px 7px;font-size:.66rem;top:6px}.card-caption{border-radius:9px;max-height:calc(100% - 42px);padding:6px 7px;bottom:5px;left:5px;right:5px}.card-name{font-size:.78rem;line-height:1.05}.card-suit{display:none}.tarot-card-image .card-desc{margin-top:2px;font-size:.66rem;line-height:1.2}.tarot-card:hover .card-caption,.tarot-card:focus-within .card-caption{padding:7px}.tarot-card:hover .card-hover-info,.tarot-card:focus-within .card-hover-info{max-height:32px}}.reading-actions{border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:10px;display:flex}.reading-status{color:#f6f0e8ad;margin:0;padding-left:12px;font-size:.95rem}.draw-btn{color:#17130e;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#fff6e6,#e7c982 62%,#70c6b9);border:0;border-radius:12px;min-height:52px;padding:0 24px;font-weight:800;transition:transform .18s,box-shadow .18s;box-shadow:0 16px 34px #70c6b933}.draw-btn:hover{transform:translateY(-2px);box-shadow:0 20px 42px #70c6b947}.draw-btn:active,.spread-btn:active{transform:translateY(0)}.site-dialog{color:#fff8ec;background:radial-gradient(circle at 90% 0,#78c4b829,#0000 17rem),linear-gradient(145deg,#272825fa,#131616fc);border:1px solid #fff6e638;border-radius:24px;width:min(520px,100vw - 32px);max-width:none;padding:0;overflow:hidden;box-shadow:0 34px 110px #0000009e}.site-dialog[open]{animation:.22s cubic-bezier(.2,.8,.2,1) both dialogIn}.site-dialog::backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#060808b3}.dialog-content{padding:clamp(28px,5vw,44px);position:relative}.dialog-close{color:#fff8ecb8;background:#ffffff0f;border:1px solid #ffffff24;border-radius:50%;place-items:center;width:38px;height:38px;padding:0 0 3px;font-size:1.6rem;line-height:1;display:grid;position:absolute;top:14px;right:14px}.dialog-eyebrow{color:#d9c18e;letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:800}.site-dialog h2{color:#fff8ec;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,7vw,3rem);font-weight:400;line-height:1}.site-dialog p:not(.dialog-eyebrow){color:#f6f0e8b8;margin:18px 0 0;font-size:1rem;line-height:1.6}.site-dialog .dialog-signature{color:#efd59b;font-family:Georgia,Times New Roman,serif;font-size:1.18rem;font-style:italic}.dialog-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.dialog-primary,.dialog-secondary{border-radius:12px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:800;text-decoration:none;display:inline-flex}.dialog-primary{color:#17130e;background:linear-gradient(135deg,#fff6e6,#e7c982 62%,#70c6b9);border:0;box-shadow:0 16px 34px #70c6b929}.dialog-secondary{color:#fff8ecd1;background:#ffffff0d;border:1px solid #ffffff2e}.dialog-note{color:#f6f0e86b;margin-top:16px;font-size:.75rem;line-height:1.45;display:block}@keyframes splashIn{0%{opacity:0;transform:translateY(18px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cardIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes dialogIn{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (orientation:portrait){.cards-container{flex-wrap:wrap;place-content:center;gap:12px;display:flex}.cards-container[data-card-count="1"] .tarot-card{flex:0 220px}.cards-container[data-card-count="3"] .tarot-card,.cards-container[data-card-count="5"] .tarot-card{flex:0 0 min(164px,33.3333% - 8px);min-width:118px}}@media (width<=860px){#app{padding:18px}.tarot-shell{min-height:calc(100vh - 36px)}.topbar{flex-wrap:wrap;gap:14px}.logo img{border-radius:16px;width:64px;height:64px}.logo span{font-size:2rem}.main-nav{flex-basis:100%;order:3}.cards-container{grid-template-columns:repeat(auto-fit,minmax(132px,164px))}h1{font-size:5.8rem}}@media (width<=620px){#app{padding:12px}.tarot-shell{border-radius:22px;min-height:calc(100vh - 24px)}.logo{gap:10px}.logo img{border-radius:13px;width:50px;height:50px}.logo span{font-size:1.45rem}.auth-btn{min-width:96px;padding:11px 14px}.main-nav{justify-content:flex-start;gap:18px;padding:7px 12px;overflow-x:auto}.nav-action{font-size:.84rem}.nav-action:not(:last-child):after{right:-9px}.dialog-actions{flex-direction:column}.dialog-primary,.dialog-secondary{width:100%}.spread-switcher{grid-template-columns:1fr}.spread-btn{min-height:54px}h1{font-size:4.2rem}.intro{font-size:1rem}.spread-btn span{font-size:.98rem}.cards-container{flex-flow:column;place-content:normal flex-start;align-items:center;gap:16px;padding:4px 0}.cards-container[data-card-count] .tarot-card{border-radius:16px;flex:none;width:min(220px,100%);min-width:0;min-height:190px}.reading-actions{flex-direction:column;align-items:stretch}.reading-status{text-align:center;padding:4px 8px 0}.draw-btn{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}
