@font-face{font-family:Cinzel;font-style:normal;font-weight:500;font-display:swap;src:url(../media/f13700f23fbdc6fd-s.35tcax5pyx804.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-weight:500;font-display:swap;src:url(../media/cc014fcb166cf364-s.p.0fzl0-df6mp6z.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f13700f23fbdc6fd-s.35tcax5pyx804.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(../media/cc014fcb166cf364-s.p.0fzl0-df6mp6z.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel Fallback;src:local(Times New Roman);ascent-override:71.31%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:136.86%}.cinzel_5ed63429-module__1GjuAG__className{font-family:Cinzel,Cinzel Fallback;font-style:normal}.cinzel_5ed63429-module__1GjuAG__variable{--font-cinzel:"Cinzel", "Cinzel Fallback"}
:root{--bg-0:#070a1f;--bg-1:#13164a;--bg-2:#2c1752;--gold:#e6c46a;--gold-light:#f7e7b0;--gold-deep:#b48a34;--text:#f3efe6;--text-soft:#d9d3e8;--glass:#ffffff0e;--glass-strong:#ffffff17;--line:#e6c46a47;--accent:var(--gold);--accent2:var(--gold);--radius:20px;--font-body:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic UI", "Yu Gothic", YuGothic, Meiryo, sans-serif;--font-display:var(--font-mincho), "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;--font-latin:var(--font-cinzel), "Times New Roman", serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--bg-0);min-height:100dvh;color:var(--text);font-family:var(--font-body);letter-spacing:.02em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.85;overflow-x:clip}a{color:inherit}img{max-width:100%}p{margin:0}.starfield{z-index:-1;background:linear-gradient(180deg, var(--bg-0) 0%, var(--bg-1) 50%, var(--bg-2) 100%);pointer-events:none;position:fixed;inset:0;overflow:hidden}.starfield__glow{background:radial-gradient(40% 30% at 80% 10%,#785adc40,#0000 70%),radial-gradient(35% 25% at 10% 60%,#3c6edc2e,#0000 70%),radial-gradient(50% 30% at 50% 100%,#e6c46a1a,#0000 70%);position:absolute;inset:-20%}.star{background:#fff;border-radius:50%;animation:4s ease-in-out infinite twinkle;position:absolute;box-shadow:0 0 6px #fffc}@keyframes twinkle{0%,to{opacity:.25}50%{opacity:1}}.page{width:100%;max-width:600px;margin:0 auto;padding:0 16px;overflow-x:clip}.card{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);padding:24px 20px}.card--glow{box-shadow:0 0 0 1px #e6c46a14,0 20px 60px #00000059,0 0 80px #e6c46a14}.btn{min-height:52px;font-family:var(--font-display);letter-spacing:.08em;cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:999px;justify-content:center;align-items:center;padding:0 28px;font-size:17px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,opacity .2s;display:inline-flex}.btn--primary{color:#1a1230;background:linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 45%, var(--gold-deep) 100%);box-shadow:0 6px 24px #e6c46a59,inset 0 1px #fff9}.btn--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 32px #e6c46a80,inset 0 1px #fff9}.btn--primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn--ghost{color:var(--gold-light);border:1px solid var(--gold);background:0 0}.btn--ghost:hover{background:#e6c46a1a}.btn--large{width:100%;min-height:60px;font-size:18px}.logo{flex-direction:column;align-items:center;line-height:1.2;text-decoration:none;display:inline-flex}.logo__sub{font-family:var(--font-display);letter-spacing:.3em;color:var(--gold-light);font-size:13px}.logo__main{font-family:var(--font-latin);letter-spacing:.28em;background:linear-gradient(180deg, var(--gold-light), var(--gold) 55%, var(--gold-deep));color:#0000;-webkit-background-clip:text;background-clip:text;margin-right:-.28em;font-size:30px;font-weight:700}.logo--large .logo__sub{font-size:15px}.logo--large .logo__main{filter:drop-shadow(0 0 24px #e6c46a59);font-size:clamp(42px,12.5vw,76px)}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:90svh;padding:48px 0 40px;display:flex;position:relative}.hero__mandala{width:min(130vw,720px);color:var(--gold);opacity:.16;z-index:-1;animation:120s linear infinite spin;position:absolute;top:50%;left:50%;translate:-50% -55%}@keyframes spin{to{rotate:360deg}}.hero__catch{font-family:var(--font-display);white-space:pre-line;text-shadow:0 0 20px #0009;margin:8px 0 0;font-size:clamp(21px,5.6vw,28px);font-weight:700;line-height:1.7}.hero__sub{color:var(--text-soft);white-space:pre-line;font-size:15px}.hero__cta{width:min(100%,360px);margin-top:8px}.hero__icons{opacity:.85;gap:10px;margin-top:6px;font-size:22px;display:flex}.diagnose{margin-bottom:56px;scroll-margin-top:24px}.birth-form{flex-direction:column;gap:16px;display:flex}.birth-form__title{font-family:var(--font-display);text-align:center;color:var(--gold-light);font-size:19px;font-weight:700}.birth-form__selects{grid-template-columns:1.5fr 1fr 1fr;gap:10px;display:grid}.select{flex-direction:column;gap:4px;display:flex;position:relative}.select__label{color:var(--text-soft);text-align:center;font-size:13px}.select select{appearance:none;border:1px solid var(--line);width:100%;height:58px;color:var(--text);font-size:20px;font-family:var(--font-body);text-align:center;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23e6c46a' stroke-width='1.6' fill='none'/%3E%3C/svg%3E") right 12px center no-repeat,#070a1f99;border-radius:14px;padding:0 28px 0 14px}.select select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.birth-form__error{color:#ff9eb0;text-align:center;min-height:1.4em;font-size:14px}.birth-form__note{color:var(--text-soft);text-align:center;font-size:12.5px}.intro{text-align:center;margin:0 0 64px}.section-title{font-family:var(--font-display);flex-direction:column;align-items:center;gap:2px;margin:0 0 24px;font-size:22px;font-weight:700;display:flex}.section-title__en{font-family:var(--font-latin);letter-spacing:.3em;color:var(--gold);font-size:12px}.section-title:after{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);width:48px;height:1px;margin-top:10px}.layers{text-align:left;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.layer{background:var(--glass);border:1px solid var(--line);border-radius:16px;align-items:flex-start;gap:14px;padding:16px;display:flex}.layer__no{border:1px solid var(--gold);width:34px;height:34px;color:var(--gold);font-family:var(--font-latin);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.layer__title{font-family:var(--font-display);color:var(--gold-light);font-weight:700}.layer__text{font-size:14.5px}.intro__formula{font-family:var(--font-display);margin-top:20px;font-size:16px;line-height:2}.intro__formula strong{color:var(--gold);font-size:1.3em}.intro__cta{width:min(100%,360px);margin-top:32px}.guardian-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.guardian-card{background:var(--glass);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:16px 8px;display:flex}.guardian-card__emoji{font-size:30px}.guardian-card__name{font-family:var(--font-display);color:var(--accent);font-weight:700}.guardian-card__symbols{font-size:12.5px}.attr-list{text-align:left;flex-direction:column;gap:10px;display:flex}.attr-item{background:var(--glass);border:1px solid var(--line);border-radius:16px;align-items:center;gap:14px;padding:14px 16px;display:flex}.attr-item__emoji{font-size:30px}.attr-item__name{font-family:var(--font-display);color:var(--gold-light);font-weight:700}.attr-item__text{font-size:14px}.destiny-chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.destiny-chip{border:1px solid var(--line);background:var(--glass);border-radius:999px;padding:6px 14px;font-size:14px}.destiny-chip b{font-family:var(--font-latin);color:var(--gold)}.footer{border-top:1px solid var(--line);text-align:center;margin-top:48px;padding:28px 0 40px}.footer__disclaimer{color:var(--text-soft);text-align:left;font-size:12.5px;line-height:1.8}.footer__copy{font-family:var(--font-latin);letter-spacing:.2em;color:var(--gold);margin-top:16px;font-size:12px}.ritual{z-index:100;background:radial-gradient(circle at 50% 45%,#1c1850 0%,#070a1f 70%);grid-template-rows:100%;grid-template-columns:100%;place-items:center;animation:.4s both fade-in;display:grid;position:fixed;inset:0;overflow:hidden}.ritual>*{grid-area:1/1}.ritual__particles{width:0;height:0;position:relative}.ritual__particles span{background:var(--gold-light);width:4px;height:4px;box-shadow:0 0 10px var(--gold);animation:converge 1.1s cubic-bezier(.5, 0, .2, 1) var(--d) both;border-radius:50%;margin:-2px;position:absolute}@keyframes converge{0%{transform:rotate(var(--a)) translateY(-48vmax);opacity:0}30%{opacity:1}to{transform:rotate(var(--a)) translateY(0);opacity:0}}.ritual__mandala{width:min(86vw,420px);color:var(--gold);opacity:0;animation:.9s .7s forwards mandala-in,10s linear infinite spin}.ritual__mandala--inner{width:min(48vw,230px);animation:.9s .9s forwards mandala-in,7s linear infinite spin-rev}@keyframes mandala-in{0%{opacity:0;scale:.6}to{opacity:.75;scale:1}}@keyframes spin-rev{to{rotate:-360deg}}.ritual__silhouette{filter:brightness(0) invert(1) drop-shadow(0 0 18px var(--gold)) drop-shadow(0 0 40px var(--gold));opacity:0;font-size:min(28vw,140px);line-height:1;animation:1.4s 1.5s forwards silhouette}@keyframes silhouette{0%{opacity:0;scale:.85}to{opacity:.95;scale:1}}.ritual__message{font-family:var(--font-display);text-align:center;color:var(--gold-light);align-self:end;margin-bottom:18vh;padding:0 24px;font-size:16px;animation:.5s both fade-in}.ritual__skip{margin:0 16px max(24px, env(safe-area-inset-bottom));border:1px solid var(--line);color:var(--text);cursor:pointer;background:#ffffff0f;border-radius:999px;place-self:end;padding:10px 18px;font-size:14px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.result-header{justify-content:center;padding:20px 0 8px;display:flex}.shared-banner{border:1px solid var(--gold);text-align:center;background:#e6c46a1a;border-radius:16px;flex-direction:column;gap:12px;margin:8px 0 16px;padding:16px;font-size:14.5px;display:flex}.reveal{text-align:center;padding-bottom:28px}.reveal__visual{place-items:center;width:min(100%,440px);margin:8px auto 20px;display:grid;position:relative}.reveal__visual>*{grid-area:1/1}.reveal__mandala{width:118%;color:var(--accent);opacity:.35;animation:80s linear infinite spin}.guardian-img{aspect-ratio:1;object-fit:cover;border-radius:24px;width:100%;height:auto;display:block}.guardian-img--fallback{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 35%, transparent), #070a1f99 70%);border:1px solid var(--line);place-items:center;display:grid}.guardian-img--fallback span{font-size:min(30vw,140px);line-height:1}.reveal__image{border:2px solid color-mix(in srgb, var(--accent) 70%, var(--gold));width:86%;box-shadow:0 0 40px color-mix(in srgb, var(--accent) 45%, transparent), 0 20px 60px #00000073;animation:1.1s cubic-bezier(.2,.7,.2,1) both rise}@keyframes rise{0%{opacity:0;transform:translateY(28px)scale(.97)}to{opacity:1;transform:none}}.reveal__lead,.reveal__title,.reveal__type,.reveal__catch,.badges{animation:.9s cubic-bezier(.2,.7,.2,1) both rise}.reveal__lead{font-family:var(--font-display);color:var(--gold-light);letter-spacing:.12em;font-size:17px;animation-delay:.3s}.reveal__title{font-family:var(--font-display);color:var(--accent);text-shadow:0 0 24px color-mix(in srgb, var(--accent) 40%, transparent);margin:6px 0 0;font-size:clamp(30px,9vw,42px);font-weight:800;line-height:1.35;animation-delay:.45s}.reveal__emoji{margin-bottom:2px;font-size:.85em;display:block}.reveal__type{font-family:var(--font-display);color:var(--gold);margin-top:4px;font-size:22px;font-weight:700;animation-delay:.6s}.reveal__type:before,.reveal__type:after{content:"―";opacity:.7;margin:0 .5em}.reveal__catch{font-family:var(--font-display);margin-top:12px;font-size:18px;animation-delay:.75s}.badges{grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0 0;padding:0;list-style:none;animation-delay:.9s;display:grid}.badges li{background:var(--glass);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:2px;padding:10px 4px;display:flex}.badges__label{color:var(--gold);letter-spacing:.1em;font-size:11.5px}.badges__value{font-size:14px;font-weight:700;line-height:1.4}.result-section{margin-bottom:16px}.result-section__title{font-family:var(--font-display);color:var(--accent);align-items:center;gap:10px;margin:0 0 12px;font-size:19px;font-weight:700;display:flex}.result-section__icon{border:1px solid color-mix(in srgb, var(--accent) 50%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent);width:34px;height:34px;color:var(--accent);border-radius:50%;place-items:center;font-size:16px;display:grid}.result-section p+p{margin-top:10px}.essence{border-color:color-mix(in srgb, var(--accent) 50%, transparent);background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 12%, transparent), var(--glass))}.essence p{font-size:16.5px;line-height:2}.awakening{border-color:var(--gold);background:linear-gradient(160deg, #e6c46a24, var(--glass))}.awakening p{font-family:var(--font-display);font-size:17px;font-weight:700}.three-layers{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.layer-card__kicker{color:var(--gold);letter-spacing:.1em;font-size:12.5px}.layer-card__name{font-family:var(--font-display);color:var(--accent);margin-top:2px;font-size:20px;font-weight:800}.layer-card__tags{margin-bottom:8px;font-size:13px}.layer-card__theme{font-family:var(--font-display);color:var(--gold-light);margin-bottom:6px;font-weight:700}.layer-card__text{font-size:15px}.radar{width:min(100%,340px);margin:0 auto 8px;display:block;overflow:visible}.radar__grid{fill:none;stroke:#ffffff24;stroke-width:.6px}.radar__axis{stroke:#ffffff24;stroke-width:.6px}.radar__shape{fill:color-mix(in srgb, var(--accent) 35%, transparent);stroke:var(--accent);stroke-width:1.6px;stroke-linejoin:round}.radar__dot{fill:var(--gold-light)}.radar__label{fill:var(--text);font-size:11px;font-weight:700}.stat-stars{max-width:300px;margin:0 auto}.stat-stars__row{border-bottom:1px dashed #ffffff1a;justify-content:space-between;align-items:center;padding:4px 0;display:flex}.stat-stars dt{font-size:15px}.stat-stars dd{letter-spacing:.12em;margin:0;font-size:18px}.stat-stars__on{color:var(--gold)}.stat-stars__off{color:#ffffff2e}.note{color:var(--text-soft);font-size:13px;margin-top:14px!important}.compat{flex-direction:column;gap:14px;display:flex}.compat__item{border:1px solid color-mix(in srgb, var(--partner) 40%, transparent);background:#070a1f59;border-radius:16px;padding:16px}.compat__label{font-family:var(--font-display);color:var(--gold-light);font-weight:700}.compat__partner{align-items:center;gap:14px;margin:10px 0;display:flex}.compat__thumb{border:1px solid var(--line);border-radius:14px;flex:none;width:72px}.compat__thumb.guardian-img--fallback span{font-size:36px}.compat__name{font-family:var(--font-display);color:var(--partner);font-size:17px;font-weight:800}.compat__type{font-size:14px}.compat__text{font-size:14.5px}.compat__others{color:var(--text-soft);font-size:13px;margin-top:8px!important}.lucky{align-items:center;gap:16px;display:flex}.lucky__swatches{display:flex}.lucky__swatches span{border:2px solid #fff9;border-radius:50%;width:52px;height:52px;box-shadow:0 4px 14px #0006}.lucky__swatches span+span{margin-left:-14px}.lucky__name{font-family:var(--font-display);font-size:17px;font-weight:700}.share{flex-direction:column;gap:14px;display:flex}.share__preview{text-align:center;border:1px dashed var(--line);font-family:var(--font-display);background:#070a1f73;border-radius:16px;padding:18px;font-size:15px;line-height:1.8}.share__name{color:var(--accent);font-size:20px;font-weight:800}.share__type{color:var(--gold);font-weight:700}.share__site{color:var(--gold-light);font-size:12.5px;margin-top:6px!important}.share__native{width:100%}.share__buttons{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.share-btn{border:1px solid var(--line);background:var(--glass-strong);min-height:48px;color:var(--text);font-size:14px;font-weight:700;font-family:var(--font-body);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;padding:0 10px;text-decoration:none;display:flex}.share-btn:hover{border-color:var(--gold)}.share-btn--x{background:#000}.share-btn--line{background:#06c755;border-color:#06c755}.share-btn--threads{background:#101010}.share-btn--fb{background:#1877f2;border-color:#1877f2}.share__hint{color:var(--text-soft);text-align:center;font-size:12.5px}.share__toast{text-align:center;min-height:1.4em;color:var(--gold-light);font-size:14px}.retry{margin:32px 0 0}.not-found{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:80svh;display:flex}@media (min-width:768px){.page{max-width:680px}.card{padding:32px}.guardian-grid{grid-template-columns:repeat(4,1fr)}.share__buttons{grid-template-columns:repeat(3,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}.ritual__mandala,.ritual__silhouette{opacity:.8}}
