:root{--bg:#f7f3ee;--text:#171715;--muted:#736b62;--line:#14120f1f;--surface:#fff;--navy:#123d72;--rose:#e64b68;--teal:#2f9d89}*{box-sizing:border-box}html{background:#101010}body{color:var(--text);background:var(--bg);margin:0;font-family:Arial,Apple SD Gothic Neo,Malgun Gothic,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.68}.app-shell,.auth-page,.detail-page{background:var(--bg);width:min(100%,460px);min-height:100vh;margin:0 auto;position:relative;overflow-x:hidden}.topbar{z-index:20;color:#fff;justify-content:space-between;align-items:center;width:min(100%,460px);height:56px;margin:0 auto;padding:0 18px;display:flex;position:fixed;inset:0 0 auto}.brand{letter-spacing:0;align-items:center;gap:8px;font-size:20px;font-weight:900;display:inline-flex}.brand-mark,.seal{color:#fff;background:radial-gradient(circle at 32% 28%,#ffffff3d,#0000 30%),#c9221d;border-radius:8px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 6px;font-size:11px;font-weight:900;line-height:1;display:inline-flex;box-shadow:inset 0 0 0 2px #ffffff2e}.brand-mark{flex-direction:column;gap:1px}.brand-mark span{font-size:9px}.icon-button,.round-button,.back-link{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000047;border:0;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.topbar-actions{align-items:center;gap:8px;display:inline-flex}.profile-chip{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000047;border-radius:999px;align-items:center;gap:7px;max-width:134px;min-height:40px;padding:0 10px 0 6px;display:inline-flex}.profile-chip span{width:28px;height:28px;color:var(--navy);background:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:950;display:inline-flex}.profile-chip strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;font-weight:950;overflow:hidden}.main-menu{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d1116e6;border:1px solid #ffffff2e;border-radius:8px;width:min(236px,100vw - 36px);padding:8px;position:absolute;top:62px;right:18px;box-shadow:0 18px 38px #0000004d}.main-menu a{border-radius:8px;flex-direction:column;justify-content:center;gap:4px;min-height:58px;padding:10px 12px;display:flex}.menu-account{border-bottom:1px solid #ffffff24;gap:8px;padding:6px;display:grid}.menu-account a{min-height:auto;padding:8px 6px}.menu-account button{color:#fff;background:#ffffff1f;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:42px;font-weight:900;display:inline-flex}.main-menu a:hover,.main-menu a:focus-visible{background:#ffffff1f;outline:0}.main-menu span{font-size:17px;font-weight:900}.main-menu small{color:#ffffffad;font-size:13px;font-weight:800}.hero{background:#111;min-height:92vh;position:relative;overflow:hidden}.hero img,.reading-card img,.detail-page>img{object-fit:cover}.hero-shade,.image-shade,.detail-shade{background:linear-gradient(#0000000d 30%,#000000db 100%),linear-gradient(#0000,#00000061);position:absolute;inset:0}.hero-copy{color:#fff;text-align:center;position:absolute;bottom:30px;left:20px;right:20px}.hero-copy h1{letter-spacing:0;text-shadow:0 5px 18px #0000007a;margin:18px 0 12px;font-size:clamp(52px,17vw,82px);font-weight:950;line-height:.95}.hero-copy p{color:#ffffffe6;margin:0 0 22px;font-size:18px}.primary-cta,.birth-form button,.form-cta{background:var(--navy);color:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-size:17px;font-weight:900;display:inline-flex;box-shadow:0 14px 30px #0c23433d}.quick-panel{gap:12px;padding:28px 20px 12px;display:grid}.quick-row{border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;min-height:74px;padding:0 16px;display:flex;box-shadow:0 8px 22px #281a0c0f}.quick-row span{align-items:center;gap:9px;font-weight:850;display:inline-flex}.account-row{align-items:center}.account-row>a{gap:3px;min-width:0;display:grid}.account-row small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:800;overflow:hidden}.account-row button{color:#fff;background:#171715;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.content-section,.flow-section{padding:28px 20px}.section-heading span{color:var(--muted);font-size:14px;font-weight:800}.section-heading h2{letter-spacing:0;margin:7px 0 18px;font-size:24px;line-height:1.2}.reading-list{gap:16px;display:grid}.reading-card{background:#222;border-radius:8px;min-height:440px;position:relative;overflow:hidden;box-shadow:0 16px 34px #1e120c24}.reading-card-copy{color:#fff;position:absolute;bottom:22px;left:18px;right:18px}.pill{color:#34231d;background:#ffffffeb;border-radius:999px;align-items:center;gap:6px;width:fit-content;min-height:32px;padding:0 12px;font-size:13px;font-weight:850;display:inline-flex}.reading-card h3{letter-spacing:0;margin:14px 0 8px;font-size:40px;line-height:1}.reading-card strong,.character-name{color:#ffffffd6;margin-bottom:8px;font-size:15px;font-weight:900;display:block}.reading-card p{color:#ffffffeb;margin:0;font-size:18px;font-weight:800}.flow-grid{gap:12px;display:grid}.flow-grid article{border:1px solid var(--line);background:#fff;border-radius:8px;padding:18px}.flow-grid strong{margin:12px 0 6px;display:block}.flow-grid p{color:var(--muted);margin:0;line-height:1.55}.auth-page{background:linear-gradient(180deg, #23465c2e, #e2cfd280), var(--bg);place-items:center;padding:24px;display:grid}.back-link{z-index:3;position:fixed;top:16px;left:calc(50% - min(50%,230px) + 16px)}.auth-panel{width:100%}.auth-panel h1{letter-spacing:0;margin:18px 0 10px;font-size:34px;line-height:1.12}.auth-panel p{color:var(--muted);margin:0 0 26px;line-height:1.6}.auth-form{gap:14px;display:grid}.auth-mode-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px;display:grid}.auth-mode-tabs button{border:1px solid var(--line);min-height:44px;color:var(--text);background:#ffffffbd;border-radius:8px;font-weight:900}.auth-mode-tabs button.active{border-color:var(--navy);background:var(--navy);color:#fff}.auth-form label,.birth-form label{color:#554c44;gap:8px;font-size:14px;font-weight:800;display:grid}.auth-form input,.birth-form input{border:1px solid var(--line);background:#ffffffc7;border-radius:8px;width:100%;height:52px;padding:0 14px}.kakao-button{color:#191600;background:#fee500;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-size:17px;font-weight:900;display:inline-flex}.detail-page{color:#fff;background:#111;min-height:100vh}.detail-nav{z-index:4;justify-content:center;align-items:center;height:72px;padding:0 18px;display:flex;position:relative}.detail-nav .round-button{position:absolute;left:18px}.detail-copy{z-index:3;flex-direction:column;justify-content:flex-end;min-height:calc(100vh - 72px);padding:24px 22px;display:flex;position:relative}.detail-copy h1{letter-spacing:0;text-shadow:0 8px 20px #00000080;margin:8px 0;font-size:clamp(48px,15vw,72px);line-height:.96}.character-name{color:#ffffffe6;margin-top:14px;margin-bottom:0;font-size:18px}.detail-copy p{margin:0 0 18px;font-size:20px;font-weight:850}.detail-description{color:#ffffffc7;line-height:1.58;font-size:15px!important;font-weight:700!important}.benefit-box{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#080c10b8;border:1px solid #ffffff8a;border-radius:8px;padding:18px}.benefit-box ul{margin:12px 0 0;padding-left:20px;line-height:1.8}.birth-form{gap:12px;margin-top:16px;display:grid}.birth-form button,.form-cta{background:var(--accent)}.detail-cta{margin-top:16px}.sub-page{background:linear-gradient(180deg, #101712f2, #26201edb 210px, var(--bg) 360px), var(--bg);color:#fff;width:min(100%,460px);min-height:100vh;margin:0 auto;padding:18px 20px 34px}.sub-nav{justify-content:space-between;align-items:center;height:48px;display:flex}.sub-nav span{align-items:center;gap:7px;font-weight:900;display:inline-flex}.sub-header{padding:34px 0 24px}.sub-header span{color:#ffffffb8;font-size:14px;font-weight:900}.sub-header h1{letter-spacing:0;margin:8px 0 0;font-size:36px;line-height:1.08}.form-panel,.list-panel,.report-grid{gap:14px;display:grid}.form-panel{color:var(--text);background:#fffffff2;border-radius:8px;padding:18px;box-shadow:0 18px 34px #0c08052e}.form-panel label{color:#554c44;gap:8px;font-size:14px;font-weight:850;display:grid}.form-panel label span{align-items:center;gap:7px;display:inline-flex}.form-panel input,.form-panel select,.form-panel textarea{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:8px;padding:0 14px}.form-panel input,.form-panel select{height:52px}.form-panel textarea{resize:vertical;padding-top:13px}.saju-guide-panel{gap:14px;padding-bottom:24px;display:grid}.saju-guide-copy{color:var(--text);background:#fffffff2;border-radius:8px;padding:18px;box-shadow:0 18px 34px #0c080524}.saju-guide-copy span{color:var(--muted);font-size:13px;font-weight:950}.saju-guide-copy h2{letter-spacing:0;margin:8px 0;font-size:24px;line-height:1.2}.saju-guide-copy p{color:var(--muted);margin:0;font-weight:780;line-height:1.6}.saju-webtoon{background:#101722;border-radius:8px;overflow:hidden;box-shadow:0 18px 34px #0c080533}.saju-webtoon img{width:100%;height:auto;display:block}.tarot-panel{background:linear-gradient(#fffffff5,#f8f4eefa),#fff}.spread-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.spread-strip.compact{margin-bottom:0}.spread-strip span{color:#fff;background:radial-gradient(circle at 82% 20%,#e8bd662e,#0000 34%),linear-gradient(145deg,#181512,#0b0d14);border:1px solid #efc5745c;border-radius:8px;align-content:center;gap:4px;min-height:70px;padding:11px;font-size:13px;font-weight:900;display:grid;box-shadow:inset 0 0 0 1px #ffffff0a}.spread-strip small{color:#fff9;font-size:11px}.spread-strip b{color:#fff;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.secondary-action{color:#2f241c;background:#fff;border:1px solid #1e18132e;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;font-weight:900;display:inline-flex}.tarot-step-panel{gap:14px;padding-bottom:92px;display:grid}.step-warning,.question-box{color:var(--text);background:#fffffff2;border-radius:8px;padding:16px}.step-warning p{color:var(--muted);margin:8px 0 14px;line-height:1.55}.step-status{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;display:flex}.step-status strong{margin-right:auto;font-size:18px}.step-status button{color:#fff;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 12px;font-weight:900;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.step-status button:hover{background:#ffffff2e;border-color:#ffd791a3;transform:translateY(-2px)}.tarot-deck{perspective:1400px;isolation:isolate;min-height:560px;max-height:none;padding:36px 8px 80px;display:block;position:relative;overflow:visible}.tarot-deck:before{content:"";z-index:-1;filter:blur(2px);background:radial-gradient(at 50% 45%,#e8bd6638,#0000 48%),radial-gradient(at 50% 55%,#08090ead,#0000 72%);border-radius:999px;position:absolute;inset:42px 8px 58px}.tarot-card-option{left:calc(50% + var(--pile-x,0px));top:calc(50% + var(--pile-y,0px));z-index:var(--fan-z,1);aspect-ratio:386/616;color:#fff;text-align:left;width:clamp(58px,15vw,88px);min-height:auto;transform:translate(-50%, -50%) translateY(var(--fan-lift,0)) rotate(var(--card-tilt,0deg));transform-style:preserve-3d;animation:3.8s ease-in-out infinite tarot-card-breathe;animation-delay:var(--deal-delay,0s);will-change:transform;background:radial-gradient(circle at 50% 28%,#ffe29e38,#0000 32%),linear-gradient(155deg,#211024,#090b12 54%,#2a1421);border:1px solid #ffd7996b;border-radius:8px;align-content:end;gap:0;margin:0;padding:6px;transition:transform .24s,border-color .22s,box-shadow .22s,filter .22s,z-index 0s linear .12s;display:grid;position:absolute;overflow:hidden;box-shadow:0 14px 26px #0b090d47}.tarot-step-panel .tarot-card-option{min-height:auto}.tarot-card-option.major{background:radial-gradient(circle at 50% 28%,#ffe08e42,#0000 32%),linear-gradient(155deg,#2c1428,#0b0e18 54%,#3b171f)}.tarot-card-option.cups{background:radial-gradient(circle at 50% 28%,#bee6ff38,#0000 32%),linear-gradient(155deg,#142337,#0b0e18 54%,#1b2f4c)}.tarot-card-option.wands{background:radial-gradient(circle at 50% 28%,#ffcd703d,#0000 32%),linear-gradient(155deg,#351a14,#0b0e18 54%,#4b1b14)}.tarot-card-option.swords{background:radial-gradient(circle at 50% 28%,#ebf2ff33,#0000 32%),linear-gradient(155deg,#19202b,#0b0e18 54%,#2b3440)}.tarot-card-option.pentacles{background:radial-gradient(circle at 50% 28%,#cbee9733,#0000 32%),linear-gradient(155deg,#16271c,#0b0e18 54%,#243e27)}.tarot-card-option:before{content:"";opacity:.72;pointer-events:none;background:radial-gradient(circle at 50% 34%,#0000 24%,#eabc6a2e 25%,#0000 28%),linear-gradient(120deg,#0000 20%,#fff3 24%,#0000 31%),linear-gradient(#ffd5941a,#0000);border:1px solid #f0d5959e;border-radius:6px;position:absolute;inset:5px}.tarot-card-option:after{content:"";z-index:0;opacity:0;pointer-events:none;background:conic-gradient(from 120deg,#0000,#ffda8e57,#0000 34%);transition:opacity .22s;position:absolute;inset:-42%;transform:rotate(0)}.tarot-card-option strong,.tarot-card-option small,.tarot-card-option svg,.tarot-back,.tarot-card-meta,.tarot-picked-mark,.tarot-card-glow{z-index:1;position:relative}.tarot-card-meta{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;background:linear-gradient(#0a090c2e,#0a090cc7);border-radius:6px;align-self:end;gap:2px;min-height:32px;padding:5px 6px;transition:opacity .18s,transform .18s;display:grid;transform:translateY(8px)}.tarot-card-option strong{font-size:11px;line-height:1.25}.tarot-card-option small{color:#ffffffb8;font-size:10px;font-weight:850}.tarot-card-option svg{position:absolute;top:11px;right:11px}.tarot-picked-mark{color:#19120e;background:linear-gradient(145deg,#f5d084,#b97725);border-radius:999px;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 8px 18px #00000047}.tarot-picked-mark svg{position:static}.tarot-card-glow{filter:blur(4px);background:radial-gradient(#ffda8b5c,#0000 70%);border-radius:999px;height:20px;position:absolute;inset:auto 10px 38px}.tarot-card-option:hover{z-index:120;filter:saturate(1.15);transform:translate(-50%, -50%) translateY(-42px) rotate(var(--card-tilt,0deg)) rotateX(7deg) scale(1.28);border-color:#ffdc97d1;transition:transform .24s,border-color .22s,box-shadow .22s,filter .22s,z-index;box-shadow:0 24px 42px #0b090d61,0 0 28px #e8bd6638}.tarot-card-option:hover:after{opacity:1;animation:1.15s linear infinite tarot-card-shine}.tarot-card-option:hover .tarot-card-meta,.tarot-card-option.selected .tarot-card-meta{opacity:1;transform:translateY(0)}.tarot-card-option.selected{z-index:140;transform:translate(-50%, -50%) translateY(-52px) rotate(var(--card-tilt,0deg)) scale(1.3);background:radial-gradient(circle at 50% 30%,#ffeeac70,#0000 34%),linear-gradient(155deg,#6d2822,#19111f 54%,#102d58);outline:2px solid #f0c46d;animation:1.7s ease-in-out infinite tarot-card-selected;box-shadow:0 24px 44px #120f0c6b,0 0 0 4px #e8bd6633}.tarot-back{aspect-ratio:386/616;background:radial-gradient(circle,#0000 0 18%,#edba67c7 19%,#0000 21%),linear-gradient(90deg,#0000 49%,#edba67c7 50%,#0000 51%),radial-gradient(circle at 50% 20%,#edba6733,#0000 26%),#140d12;border-radius:6px;width:calc(100% - 12px);display:block;position:absolute;top:6px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 12px 22px #00000057,0 0 0 1px #ffd4992e}.tarot-back:before,.tarot-back:after{content:"";pointer-events:none;position:absolute}.tarot-back:before{border:1px solid #edba67db;border-radius:5px;inset:6px;box-shadow:inset 0 0 0 3px #edba6724}.tarot-back:after{aspect-ratio:1;background:linear-gradient(#0000 47%,#edba67b3 48% 52%,#0000 53%),linear-gradient(90deg,#0000 47%,#edba67b3 48% 52%,#0000 53%);border:1px solid #edba67c7;border-radius:999px;width:74%;top:25%;left:13%}.tarot-back i{display:none}.tarot-deck.dealing .tarot-card-option{opacity:0;animation:.82s cubic-bezier(.19,1,.22,1) forwards tarot-card-deal;animation-delay:var(--deal-delay,0s)}@keyframes tarot-card-deal{0%{opacity:0;transform:translate(-50%,-50%)translate3d(0,-80px,-180px)rotate(-24deg)scale(.55)}62%{opacity:1;transform:translate(-50%, -50%) translate3d(0, 10px, 0) rotate(var(--card-tilt,0deg)) scale(1.08)}to{opacity:1;transform:translate(-50%, -50%) translateY(var(--fan-lift,0)) rotate(var(--card-tilt,0deg)) scale(1)}}@keyframes tarot-card-breathe{0%,to{transform:translate(-50%, -50%) translateY(var(--fan-lift,0)) rotate(var(--card-tilt,0deg))}50%{transform:translate(-50%, -50%) translateY(calc(var(--fan-lift,0) - 2px)) rotate(var(--card-tilt,0deg))}}@keyframes tarot-card-selected{0%,to{box-shadow:0 20px 36px #120f0c57,0 0 0 4px #e8bd662e}50%{box-shadow:0 22px 40px #120f0c6b,0 0 0 7px #e8bd6640}}@keyframes tarot-card-shine{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.tarot-card-option,.tarot-card-option.selected,.tarot-deck.dealing .tarot-card-option,.reveal-card,.tarot-back-image,.tarot-card-art{opacity:1;animation:none;transform:none}.tarot-card-option,.tarot-card-option.selected,.tarot-deck.dealing .tarot-card-option{transform:translate(-50%, -50%) translateY(var(--fan-lift,0)) rotate(var(--card-tilt,0deg))}}.sticky-bottom-cta{z-index:30;background:var(--navy);color:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:min(100% - 40px,420px);min-height:54px;font-size:17px;font-weight:900;display:inline-flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 16px 34px #0000003d}.sticky-bottom-cta:disabled{opacity:.54}.question-box{gap:5px;display:grid}.question-box small{color:var(--muted);font-weight:900}.reveal-grid{perspective:1200px;gap:14px;display:grid}.reveal-card{text-align:left;color:#fff;min-height:262px;transform-style:preserve-3d;background:radial-gradient(circle at 50% 22%,#ffde972e,#0000 32%),linear-gradient(145deg,#130b17,#10151f 58%,#2d1422);border:1px solid #e8bd6657;border-radius:8px;align-content:center;gap:8px;padding:18px;transition:transform .26s,box-shadow .26s,border-color .26s;animation:4s ease-in-out infinite reveal-card-idle;display:grid;box-shadow:0 18px 32px #0b090d3d}.reveal-card:hover{border-color:#ffdc97b8;transform:translateY(-6px)rotateX(4deg);box-shadow:0 24px 44px #0b090d57,0 0 26px #e8bd662e}.reveal-card span{color:#ffffffb3;font-size:13px;font-weight:900}.tarot-back-image{aspect-ratio:386/616;background:radial-gradient(circle,#0000 0 18%,#edba67db 19%,#0000 21%),linear-gradient(90deg,#0000 49%,#edba67db 50%,#0000 51%),radial-gradient(circle at 50% 20%,#edba6738,#0000 28%),#140d12;border-radius:8px;justify-self:center;width:min(148px,54vw);animation:3.3s ease-in-out infinite tarot-back-float;display:block;position:relative;overflow:hidden;box-shadow:0 18px 34px #00000057,0 0 28px #e8bd661f,inset 0 0 0 1px #ffd49952}.tarot-back-image:before,.tarot-back-image:after{content:"";pointer-events:none;position:absolute}.tarot-back-image:before{border:2px solid #edba67e6;border-radius:8px;inset:18px;box-shadow:inset 0 0 0 7px #edba671f}.tarot-back-image:after{aspect-ratio:1;background:linear-gradient(#0000 47%,#edba67b8 48% 52%,#0000 53%),linear-gradient(90deg,#0000 47%,#edba67b8 48% 52%,#0000 53%);border:2px solid #edba67d6;border-radius:999px;width:70%;top:25%;left:15%}.reveal-card.revealed{color:var(--text);background:linear-gradient(#fffffffa,#f8f4eefa),#fff;border-color:#2d22191f;align-content:start;animation:.48s cubic-bezier(.19,1,.22,1) both tarot-reveal-pop}.reveal-card.revealed span{color:var(--muted)}.tarot-card-art{aspect-ratio:5/7;background:radial-gradient(circle at 50% 20%, var(--card-glow,#ffe2a480), transparent 34%), linear-gradient(145deg, #08080d, #191018 62%, #08080d);width:100%;max-width:196px;box-shadow:0 22px 38px #1b100a47, 0 0 28px color-mix(in srgb, var(--card-accent,#e8bd66) 28%, transparent);border-radius:8px;justify-self:center;padding:8px;animation:.52s cubic-bezier(.19,1,.22,1) both tarot-face-rise;position:relative;overflow:hidden}.tarot-card-art:before{content:"";z-index:2;pointer-events:none;border-radius:8px;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff61,inset 0 0 0 7px #120e12b8}.tarot-card-illustration{border-radius:6px;width:100%;height:100%;display:block;box-shadow:inset 0 0 0 1px #120e1247}.tarot-svg-number,.tarot-svg-title,.tarot-svg-name{fill:#fff4d3eb;letter-spacing:0;paint-order:stroke;stroke:#0a080c7a;stroke-width:2px;font-weight:950}.tarot-svg-number{font-size:10px}.tarot-svg-title{font-size:12px}.tarot-svg-name{font-size:13px}.tarot-svg-symbol{fill:#fff8dc;filter:drop-shadow(0 8px 12px #0000005c);paint-order:stroke;stroke:#0a080c5c;stroke-width:2px;font-size:46px;font-weight:950}.tarot-svg-motif{fill:color-mix(in srgb, var(--card-accent,#e8bd66) 72%, #fff 28%);opacity:.72;paint-order:stroke;stroke:#0a080c47;stroke-width:1px}.tarot-card-caption{z-index:3;color:#fff;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0e0b0cc2;border-radius:6px;align-content:center;gap:2px;min-height:38px;padding:6px 8px;display:grid;position:absolute;bottom:13px;left:13px;right:13px}@keyframes reveal-card-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes tarot-back-float{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-7px)rotate(1deg)}}@keyframes tarot-reveal-pop{0%{opacity:.24;transform:rotateY(72deg)scale(.9)}to{opacity:1;transform:rotateY(0)scale(1)}}@keyframes tarot-face-rise{0%{opacity:0;transform:translateY(18px)rotate(-3deg)scale(.92)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}.tarot-card-caption small{color:#ffffffad;font-size:10px;font-weight:900}.tarot-card-caption strong{color:#fff;font-size:13px;line-height:1.15}.reveal-card strong{font-size:24px}.reveal-card small,.reveal-card p{margin:0;line-height:1.55}.reveal-card p{color:var(--muted);font-weight:800}.form-error{color:#b3261e;margin:0;font-size:14px;font-weight:850}.form-success{color:#236d4e;margin:0;font-size:14px;font-weight:850;line-height:1.5}.auth-callback-panel{text-align:center;place-items:center}.auth-callback-panel p{color:var(--muted);margin:0;font-weight:850;line-height:1.6}.fortune-page-panel{gap:16px;display:grid}.fortune-block{gap:10px;display:grid}.fortune-form-title{color:#fff;font-size:24px;font-weight:950}.fortune-label{color:#ffffffbd;font-size:13px;font-weight:900}.segmented-tabs,.category-tabs{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.segmented-tabs button,.category-tabs button{color:#fff;background:#ffffff1a;border:1px solid #ffffff38;border-radius:999px;flex:none;min-height:40px;padding:0 13px;font-size:14px;font-weight:900}.segmented-tabs button.active,.category-tabs button.active{color:var(--text);background:#fff}.fortune-form-grid{color:var(--text);background:#fffffff2;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:18px;display:grid}.fortune-form-grid label{color:#554c44;gap:8px;font-size:14px;font-weight:850;display:grid}.fortune-check-group{gap:8px;display:grid}.fortune-check-group>span{color:#554c44;font-size:14px;font-weight:850}.check-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.check-options button{border:1px solid var(--line);height:50px;color:var(--text);background:#fff;border-radius:8px;font-weight:900}.check-options button.checked{border-color:var(--navy);background:var(--navy);color:#fff}.fortune-form-grid label.wide{grid-column:1/-1}.fortune-form-grid select,.fortune-form-grid input{border:1px solid var(--line);width:100%;height:50px;color:var(--text);background:#fff;border-radius:8px;padding:0 12px}.fortune-profile-tags{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.fortune-profile-tags span{color:#554c44;background:#f4efe8;border-radius:999px;align-items:center;min-height:34px;padding:0 11px;font-size:13px;font-weight:900;display:inline-flex}.fortune-result{gap:16px;display:grid}.fortune-cookie-stage{color:#322014;background:radial-gradient(circle at 50% 32%,#ffedb3c7,#0000 30%),linear-gradient(145deg,#fff4cd,#d68a38 62%,#7c3f1e);border:1px solid #ffffff47;border-radius:8px;place-items:center;gap:8px;min-height:230px;padding:20px;display:grid;box-shadow:0 18px 34px #0c08052e}.fortune-cookie-stage strong{font-size:18px;font-weight:950}.fortune-cookie-stage small{color:#322014b8;font-weight:850}.fortune-cookie-shell{width:min(220px,72vw);height:118px;display:block;position:relative}.fortune-cookie-shell:before,.fortune-cookie-shell:after,.fortune-cookie-shell i,.fortune-cookie-shell b{content:"";display:block;position:absolute}.fortune-cookie-shell:before,.fortune-cookie-shell:after{background:radial-gradient(circle at 34% 26%,#fff1bc 0 18%,#0000 19%),linear-gradient(135deg,#f2b85b,#b96627 72%);border-radius:70% 45% 72% 48%;width:128px;height:90px;top:18px;box-shadow:inset -10px -14px 20px #63301238,0 18px 24px #5b2f1538}.fortune-cookie-shell:before{left:12px;transform:rotate(-16deg)}.fortune-cookie-shell:after{right:12px;transform:scaleX(-1)rotate(-16deg)}.fortune-cookie-shell i{background:#fff9e9;border-radius:999px;width:74px;height:30px;top:46px;left:73px;transform:rotate(-4deg);box-shadow:0 5px 10px #4f2b1429}.fortune-cookie-shell b{opacity:.22;background:#8f4c20;border-radius:999px;width:42px;height:42px;top:50px;left:89px}.fortune-cookie-stage:active .fortune-cookie-shell:before,.fortune-cookie-stage:focus-visible .fortune-cookie-shell:before{transform:translate(-16px)rotate(-26deg)}.fortune-cookie-stage:active .fortune-cookie-shell:after,.fortune-cookie-stage:focus-visible .fortune-cookie-shell:after{transform:translate(16px)scaleX(-1)rotate(-26deg)}.fortune-result-card{color:var(--text);background:#fff;border-radius:8px;padding:20px;box-shadow:0 18px 34px #0c080524}.fortune-result-card.cookie-open{background:linear-gradient(#fff9e9fa,#fff),#fff;border:1px solid #d68a3857}.fortune-cookie-message{color:#6a3c17;background:#fff3cf;border-radius:8px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:13px;font-weight:950;display:inline-flex}.fortune-cookie-message span{color:#6a3c17}.fortune-result-card span{color:var(--muted);font-size:14px;font-weight:900}.fortune-result-card h2{letter-spacing:0;margin:7px 0 8px;font-size:25px;line-height:1.2}.fortune-result-card small{color:var(--muted);align-items:center;gap:5px;font-weight:850;display:inline-flex}.fortune-result-card p{color:#4e463e;margin:16px 0 0;font-size:15px;font-weight:750;line-height:1.78}.fortune-summary{background:#f4efe8;border-radius:8px;padding:14px}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-description{color:var(--muted);margin:0 0 4px;font-size:14px;font-weight:750;line-height:1.6}.result-card,.result-hero{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 34%, #111) 0%, #151515 68%), #151515;border-radius:8px;padding:22px;box-shadow:0 18px 34px #0c080533}.result-mark{background:#ffffff21;border-radius:999px;align-items:center;gap:7px;width:fit-content;min-height:34px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.result-card h2{letter-spacing:0;margin:18px 0 10px;font-size:26px;line-height:1.18}.result-card p{color:#ffffffc7;margin:0;line-height:1.7}.result-hero h2{letter-spacing:0;margin:18px 0 10px;font-size:30px;line-height:1.15}.result-hero p{color:#fffc;margin:0;line-height:1.72}.result-image{aspect-ratio:4/3;background:#ffffff1a;border-radius:8px;width:100%;margin-top:18px;position:relative;overflow:hidden}.result-image img{object-fit:cover}.drawn-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.drawn-card{color:#fff;background:linear-gradient(#14141424,#000000a3),linear-gradient(145deg,#f4efe8,#c7a35a 54%,#463036);border-radius:8px;flex-direction:column;justify-content:flex-end;gap:6px;min-height:178px;padding:14px;display:flex;box-shadow:0 14px 28px #0c080524}.drawn-card.reversed{background:linear-gradient(#1414141f,#000000ad),linear-gradient(145deg,#d9eef1,#53628f 54%,#221b2b)}.drawn-card.empty{min-height:120px;color:var(--text);background:#fff;grid-column:1/-1}.drawn-card span{color:#ffffffb8;font-size:12px;font-weight:950}.drawn-card.empty span{color:var(--muted)}.drawn-card strong{font-size:18px;line-height:1.15}.drawn-card small,.drawn-card p{color:#ffffffc7;margin:0;font-size:12px;font-weight:800;line-height:1.45}.drawn-card.empty small{color:var(--muted)}.result-sections{gap:10px;margin-top:14px;display:grid}.result-sections article{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px;padding:18px}.result-sections h3{margin:0 0 8px;font-size:18px}.result-sections p{color:var(--muted);margin:0;line-height:1.65}.saju-report{gap:14px;margin-top:14px;display:grid}.saju-report-header{color:#fff;background:linear-gradient(135deg,#12253a,#253f3a 62%,#7a5835),#12253a;border-radius:8px;padding:20px;box-shadow:0 18px 34px #0c080529}.saju-report-header span{color:#ffffffb3;font-size:12px;font-weight:950}.saju-report-header h3{letter-spacing:0;margin:10px 0 8px;font-size:26px;line-height:1.18}.saju-report-header p{color:#ffffffd1;margin:0;font-weight:800;line-height:1.6}.saju-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.saju-dashboard article,.saju-chapter{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px}.saju-dashboard article{align-content:center;gap:6px;min-height:92px;padding:15px;display:grid}.saju-dashboard small{color:var(--muted);font-size:12px;font-weight:950}.saju-dashboard strong{font-size:16px;line-height:1.3}.saju-chapter{gap:14px;padding:18px;display:grid}.saju-chapter-title{grid-template-columns:auto 1fr;align-items:start;gap:12px;display:grid}.saju-chapter-title>span{color:#fff;background:#12253a;border-radius:999px;justify-content:center;align-items:center;min-width:54px;min-height:34px;font-size:12px;font-weight:950;display:inline-flex}.saju-chapter-title h3{letter-spacing:0;margin:0;font-size:21px;line-height:1.2}.saju-chapter-title p,.saju-chapter-summary,.saju-meter p,.saju-items p{color:var(--muted);margin:0;font-weight:760;line-height:1.65}.saju-chapter-title p{margin-top:4px;font-size:13px;font-weight:900}.saju-chapter-summary{background:#f4efe8;border-radius:8px;padding:14px}.saju-metrics{gap:10px;display:grid}.saju-meter{border:1px solid var(--line);background:#fbfaf8;border-radius:8px;gap:8px;padding:13px;display:grid}.saju-meter div{justify-content:space-between;align-items:center;gap:10px;display:flex}.saju-meter span,.saju-meter strong{font-weight:950}.saju-meter i{background:linear-gradient(90deg, #2f7d63 var(--score), #e6ddd2 var(--score)), #e6ddd2;border-radius:999px;height:8px;overflow:hidden}.saju-items{gap:10px;display:grid}.saju-items section{border:1px solid var(--line);border-radius:8px;gap:8px;padding:14px;display:grid}.saju-items section>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.saju-items h4{margin:0;font-size:17px}.saju-items span,.saju-items b{color:#2f5f4e;background:#edf3ef;border-radius:999px;align-items:center;gap:5px;min-height:28px;padding:0 9px;font-size:12px;font-weight:950;display:inline-flex}.result-points{gap:8px;margin-top:18px;display:grid}.result-points span{background:#ffffff1a;border-radius:8px;padding:12px;font-weight:850}.review-panel{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px;gap:12px;margin-top:14px;padding:18px;display:grid}.review-panel.loading{text-align:center;justify-items:center}.review-panel h3,.review-panel p{margin:0}.review-panel p{color:var(--muted);font-weight:780;line-height:1.6}.review-heading{gap:5px;display:grid}.review-heading span{color:var(--muted);font-size:13px;font-weight:950}.review-heading strong{font-size:20px}.rating-row{gap:6px;display:inline-flex}.rating-row button{border:1px solid var(--line);color:#d4c2a1;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.rating-row button.active{color:#c08a2b;background:#fff5df;border-color:#c08a2b}.review-panel textarea{border:1px solid var(--line);width:100%;color:var(--text);resize:vertical;background:#fff;border-radius:8px;padding:13px 14px}.review-public-toggle{color:#554c44;align-items:center;gap:8px;font-size:14px;font-weight:850;display:inline-flex}.review-public-toggle input{width:18px;height:18px;accent-color:var(--navy)}.review-section{padding-top:10px}.home-review-list{gap:12px;display:grid}.home-review-card,.empty-review{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px;padding:16px}.home-review-card{gap:10px;display:grid}.home-review-card div{gap:3px;display:grid}.home-review-card strong{font-size:16px}.home-review-card small{color:var(--muted);font-weight:850}.home-review-card span{color:#c08a2b;gap:2px;display:inline-flex}.home-review-card p,.empty-review p{color:var(--muted);margin:0;font-weight:780;line-height:1.65}.empty-review{grid-template-columns:auto 1fr;align-items:center;gap:10px;display:grid}.search-panel{gap:14px;display:grid}.search-box{border:1px solid var(--line);min-height:58px;color:var(--text);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 14px;display:flex;box-shadow:0 18px 34px #0c080524}.search-box svg{color:var(--muted);flex:none}.search-box input{width:100%;min-width:0;height:56px;color:var(--text);background:0 0;border:0;outline:0;font-size:16px;font-weight:850}.search-suggestions{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.search-suggestions button{color:#fff;background:#ffffff1f;border:1px solid #ffffff38;border-radius:999px;flex:none;min-height:38px;padding:0 12px;font-size:14px;font-weight:900}.search-result-meta{color:#ffffffc2;align-items:center;gap:7px;font-size:14px;font-weight:900;display:inline-flex}.search-results{gap:10px;display:grid}.search-result-row,.empty-search{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px}.search-result-row{justify-content:space-between;align-items:center;gap:14px;min-height:118px;padding:15px;display:flex}.search-result-row>span{gap:5px;min-width:0;display:grid}.search-result-row small{color:var(--navy);font-size:12px;font-weight:950}.search-result-row strong{font-size:20px;line-height:1.2}.search-result-row em{color:#554c44;font-size:13px;font-style:normal;font-weight:900}.search-result-row p,.empty-search p{color:var(--muted);margin:0;font-size:14px;font-weight:760;line-height:1.55}.empty-search{gap:8px;padding:18px;display:grid}.payment-panel,.payment-result-panel,.payment-list-panel,.admin-panel{gap:14px;display:grid}.payment-panel,.payment-result-panel{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px;margin-top:14px;padding:18px}.payment-panel.loading,.payment-result-panel{text-align:center;justify-items:center}.payment-panel h3,.payment-panel p,.payment-result-panel h2,.payment-result-panel p{margin:0}.payment-panel p,.payment-result-panel p{color:var(--muted);font-weight:780;line-height:1.6}.payment-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.payment-heading span{color:var(--muted);font-size:13px;font-weight:950}.payment-heading strong{font-size:22px}.payment-list-panel{color:var(--text)}.payment-row,.admin-row,.admin-payment-row{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px}.payment-row{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:86px;padding:14px;display:grid}.payment-row span,.admin-payment-row span{gap:4px;min-width:0;display:grid}.payment-row small,.admin-row small,.admin-payment-row small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.45}.payment-row button,.admin-payment-row button{color:#fff;background:#171715;border:0;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:38px;padding:0 10px;font-size:13px;font-weight:900;display:inline-flex}.admin-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.admin-stats article{border:1px solid var(--line);min-height:94px;color:var(--text);background:#fff;border-radius:8px;align-content:center;gap:5px;padding:12px;display:grid}.admin-stats strong{font-size:24px}.admin-stats span{color:var(--muted);font-size:12px;font-weight:900}.admin-section{gap:10px;display:grid}.admin-section h2{color:#fff;letter-spacing:0;margin:10px 0 0;font-size:19px}.admin-row,.admin-payment-row{gap:5px;padding:14px;display:grid}.admin-payment-row{grid-template-columns:1fr auto;align-items:center}.locked-result-panel,.result-save-panel,.profile-results-panel{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px;gap:12px;margin-top:14px;padding:18px;display:grid}.locked-result-panel span,.result-save-panel span,.profile-results-heading span{color:var(--muted);font-size:13px;font-weight:950}.locked-result-panel h3,.locked-result-panel p,.result-save-panel h3,.result-save-panel p,.profile-results-panel p{margin:0}.locked-result-panel h3,.result-save-panel h3{font-size:20px;line-height:1.25}.locked-result-panel p,.result-save-panel p,.profile-results-panel p{color:var(--muted);font-weight:780;line-height:1.6}.profile-results-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-results-heading a{color:var(--navy);font-size:13px;font-weight:950}.profile-result-row{border:1px solid var(--line);background:#fbfaf8;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:76px;padding:12px;display:grid}.profile-result-row span{gap:4px;min-width:0;display:grid}.profile-result-row small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.45}.action-grid{grid-template-columns:1fr;gap:10px;margin-top:14px;display:grid}.action-grid button,.action-grid a,.history-row,.report-card{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:8px}.action-grid button,.action-grid a{justify-content:center;align-items:center;gap:8px;min-height:52px;font-weight:900;display:inline-flex}.history-row{justify-content:space-between;align-items:center;min-height:76px;padding:14px;display:flex}.history-row span{grid-template-columns:22px 1fr;align-items:center;gap:3px 9px;display:grid}.history-row small{color:var(--muted);grid-column:2;font-weight:800}.report-card{gap:9px;padding:18px;display:grid}.report-card strong{font-size:18px}.report-card p{color:var(--muted);margin:0;line-height:1.55}.report-card span{color:var(--navy);align-items:center;gap:6px;font-size:14px;font-weight:900;display:inline-flex}@media (min-width:760px){body{background:#171717}.app-shell,.auth-page,.detail-page,.sub-page,.topbar{box-shadow:0 0 0 1px #ffffff14}}
