.oracle-invitation{position:relative;display:flex;align-items:center;gap:24px;margin:0 0 30px;padding:19px 26px;border:1px solid #d1ae8066;border-radius:20px;background:radial-gradient(ellipse at 8% 50%,#ad76c135,transparent 52%),linear-gradient(115deg,#241b30ec,#171825e8);color:#f7e9d7;overflow:hidden}
.oracle-invitation a{text-decoration:none;color:inherit}.oracle-invitation-main{display:flex;align-items:center;gap:22px;flex:1;min-width:0}.oracle-invitation-main>span:nth-child(2){display:grid;gap:6px}.oracle-invitation small{font-size:10px;letter-spacing:.14em;color:#d8b7d8}.oracle-invitation strong{font-family:MaruBuri,serif;font-size:21px;font-weight:400}.oracle-invitation-main span span{font-size:12px;color:#c7bac9}.oracle-invitation-main>b{margin-left:auto;font-size:24px;color:#e8cda7}.oracle-invitation-match{white-space:nowrap;font-size:12px;padding:12px 0 12px 24px;border-left:1px solid #bc9fba40}.oracle-mini-orb{flex:0 0 62px;width:62px;height:62px;border-radius:50%;background:radial-gradient(circle at 32% 25%,#ffead7,#d0a0c8 25%,#755d9b 55%,#241b42 85%);box-shadow:0 0 36px #ab80dc66,inset -4px -6px 12px #17122788}
.color-oracle-page{max-width:1160px;margin:auto;padding:30px 24px 55px;color:#f3e6d9}.oracle-page-top{display:flex;justify-content:space-between;align-items:center;gap:20px;color:#d6b5a6;font-size:10px;letter-spacing:.15em}.oracle-page-top button{letter-spacing:0}.oracle-heading{text-align:center;margin:16px 0 15px}.oracle-eyebrow{font-size:10px;font-weight:500;letter-spacing:.15em;color:#d2b9a9}.oracle-heading h1{font:400 clamp(32px,4vw,50px)/1.35 MaruBuri,serif;margin:12px 0}.oracle-heading>p:last-child{font-size:14px;line-height:1.8;color:#d1c2c7}.oracle-mode-switch{display:flex;justify-content:center;gap:5px;padding:5px;margin:0 auto 14px;max-width:440px;border:1px solid #c6a9c13a;border-radius:40px;background:#151320a3}.oracle-mode-switch button{flex:1;border:0;background:none;color:#b6a7b6;border-radius:30px;font-family:inherit;font-weight:500;font-size:13px;line-height:1.4;padding:13px 12px;cursor:pointer}.oracle-mode-switch button[aria-pressed=true]{background:#e2c8a6;color:#2d2030;box-shadow:0 3px 16px #0002}
.oracle-stage{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 20px 15px;min-height:350px}.oracle-stage:before{content:"";position:absolute;inset:2% 13%;z-index:-1;background:radial-gradient(ellipse,#a688c022,transparent 68%);pointer-events:none}.oracle-stage-caption{font:400 17px/1.7 MaruBuri,serif;color:#dcd0da;margin:5px 0 8px}.oracle-orb-button,.oracle-result-orb,.oracle-aura-orb{display:block;position:relative;width:310px;height:310px;isolation:isolate}.oracle-orb-button{width:250px;height:250px;border:0;padding:0;background:none;color:#f9e6e9;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;border-radius:50%}.oracle-sphere{position:absolute;inset:15%;border-radius:50%;background:radial-gradient(circle at 33% 25%,var(--orb-light),var(--orb-color) 31%,#201934 78%);box-shadow:0 0 75px color-mix(in srgb,var(--orb-color) 40%,transparent),inset 4px 2px 12px #fff5,inset -15px -20px 35px #130f3380;border:1px solid color-mix(in srgb,var(--orb-light) 65%,transparent);animation:oracle-breathe 6s ease-in-out infinite}.oracle-sphere:before{content:"";position:absolute;inset:5%;border-radius:50%;background:conic-gradient(from 20deg,transparent,#fff0 15%,var(--orb-light),transparent 49%,var(--orb-color),transparent);opacity:.26;filter:blur(13px);animation:oracle-drift 20s linear infinite}.oracle-glint{position:absolute;top:15%;left:23%;width:24%;height:13%;border-radius:50%;background:#fff6;filter:blur(8px);transform:rotate(-30deg)}.oracle-orbit{position:absolute;inset:8%;border:1px solid color-mix(in srgb,var(--orb-light) 30%,transparent);border-radius:50%;transform:rotate(-25deg) scaleY(.53)}.oracle-orbit.orbit-two{inset:2%;transform:rotate(48deg) scaleY(.68);border-style:dashed;opacity:.5}.oracle-specks{position:absolute;inset:7%;font-size:20px;color:var(--orb-light);text-align:left;pointer-events:none}.oracle-specks i{position:absolute;right:0;top:36%;font-style:normal;font-size:13px}.oracle-specks b{position:absolute;left:12%;bottom:6%;font-size:12px;font-weight:400}.oracle-touch-hint{position:absolute;bottom:1%;left:0;right:0;font-size:10px;letter-spacing:.18em;color:#d9c3da}.oracle-tap-button{font-family:inherit;font-weight:500;font-size:13px;color:#efdbbd;background:#392a3a99;border:1px solid #d6b49c6b;border-radius:30px;padding:12px 24px;margin:10px 0 2px;cursor:pointer}.oracle-stage-footnote,.oracle-storage-note{font-size:11px;line-height:1.8;color:#bcacba;margin:14px 0}.oracle-status{font-size:12px;color:#e4cbb5;line-height:1.7;min-height:1.7em;margin:7px 0}.oracle-orb-button.is-charging .oracle-sphere{animation:oracle-charge .8s ease-in forwards}.oracle-stage.is-opening .oracle-sphere{animation:oracle-open .65s ease-out forwards}.oracle-stage.is-opening .oracle-specks{animation:oracle-spark .65s ease-out forwards}
.oracle-aura-stage{text-align:center;padding:24px 0}.oracle-aura-stage h2{font:400 clamp(20px,3vw,28px)/1.5 MaruBuri,serif}.oracle-aura-stage>p{color:#c6b6c5;font-size:13px;line-height:1.8}.oracle-aura-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px auto 20px;max-width:890px}.oracle-aura-choice{position:relative;display:flex;align-items:center;flex-direction:column;min-width:0;padding:24px 12px;border:1px solid #c4a4bd40;border-radius:100px 100px 18px 18px;background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb,var(--orb-color) 15%,transparent),#1b1524e8);color:#efdfdf;cursor:pointer;transition:transform .25s,border-color .25s}.oracle-aura-choice:hover{transform:translateY(-6px);border-color:var(--orb-light)}.oracle-aura-number{font-size:10px;letter-spacing:.2em;color:#c5a8bd}.oracle-aura-orb{width:190px;max-width:100%;height:auto;aspect-ratio:1}.oracle-aura-choice strong{font:400 19px/1.5 MaruBuri,serif;margin:12px 0 8px}.oracle-aura-choice>span:last-of-type{font-size:12px;color:var(--orb-light)}.oracle-aura-choice small{font-size:11px;color:#d2bcc8;margin:28px 0 0}
.oracle-result{--orb-color:#9475b8;--orb-light:#e9c9ef;display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;align-items:center;padding:40px 44px;border:1px solid color-mix(in srgb,var(--orb-color) 45%,#c7b3a333);border-radius:28px;background:radial-gradient(ellipse at 10% 30%,color-mix(in srgb,var(--orb-color) 17%,transparent),transparent 65%),#17131fe8;scroll-margin-top:30px;animation:oracle-arrive .65s ease both}.oracle-result-visual{text-align:center;min-width:0}.oracle-result-orb{width:100%;max-width:380px;height:auto;aspect-ratio:1;margin:auto}.oracle-color-label{color:var(--orb-light);font-size:11px;letter-spacing:.2em;text-transform:uppercase}.oracle-result-copy{min-width:0}.oracle-result-copy time{display:block;margin-top:8px;color:#a99cac;font-size:11px;letter-spacing:.07em}.oracle-result h2{font:400 clamp(28px,3vw,40px)/1.4 MaruBuri,serif;margin:15px 0 10px;overflow-wrap:anywhere}.oracle-keywords{color:var(--orb-light);font-size:12px;letter-spacing:.08em}.oracle-result-message{font:400 20px/1.9 MaruBuri,serif;color:#f5e8e4;margin:26px 0}.oracle-luck{border-top:1px solid #c4b0c033;padding-top:18px}.oracle-luck h3{font-size:11px;letter-spacing:.07em;color:var(--orb-light);font-weight:500}.oracle-luck p{font-size:13px;line-height:1.9;color:#d3c4cd}.oracle-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:24px}.oracle-image-button{border:1px solid #d6c4aa75;border-radius:8px;background:#d9c19f;color:#281c2b;font-family:inherit;font-weight:500;font-size:13px;padding:13px 18px;cursor:pointer}.oracle-result-actions .text-action{font-size:12px}.oracle-guide-portrait{position:relative;max-width:325px;margin:0 auto;border-radius:170px 170px 15px 15px;overflow:hidden;border:1px solid color-mix(in srgb,var(--orb-light) 50%,transparent);box-shadow:0 0 60px color-mix(in srgb,var(--orb-color) 17%,transparent)}.oracle-guide-portrait img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;display:block}.oracle-guide-portrait figcaption{padding:13px 8px;font-size:10px;color:var(--orb-light);background:#1b1422}.oracle-guide-quote{margin:20px 0;padding-left:15px;border-left:2px solid var(--orb-color);font-size:12px;line-height:1.9;color:#cfbccd}.oracle-reading-offer{display:flex;align-items:flex-start;flex-direction:column;gap:10px;border-top:1px solid #baa4bb33;padding-top:20px}.oracle-reading-offer>span,.oracle-reading-offer small{font-size:11px;color:#c9b9c5;line-height:1.7}.oracle-reading-offer .primary-action{font-size:13px;padding:14px 20px;min-height:0}.oracle-reading-offer a{font-size:12px;color:#e6ccaa;text-underline-offset:4px}.oracle-method{max-width:740px;margin:28px auto 0;text-align:center;font-size:11px;line-height:1.9;color:#b7a6b4}
.oracle-share-dialog{position:fixed;inset:0;margin:auto;width:min(540px,calc(100% - 24px));max-height:92dvh;padding:20px 24px;border:1px solid #bfa48c99;border-radius:18px;background:#211925;color:#eee2db;overflow:auto;box-shadow:0 20px 100px #000a}.oracle-share-dialog::backdrop{background:#090711d9;backdrop-filter:blur(8px)}.oracle-share-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.oracle-share-dialog h2{font:400 20px MaruBuri,serif;margin:0}.oracle-share-dialog header button{font-size:28px;padding:0 5px}.oracle-share-image{display:block;width:auto;max-width:100%;height:min(52dvh,550px);margin:auto;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #0005}.oracle-share-controls{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;margin:20px 0 10px}.oracle-share-controls .primary-action{font-size:13px;padding:13px 18px;min-height:0;text-decoration:none}.oracle-share-controls .text-action{font-size:12px}.oracle-share-help{font-size:11px;line-height:1.8;text-align:center;color:#bcaebb}.oracle-share-dialog .oracle-status{text-align:center}.color-oracle-page button:focus-visible,.oracle-invitation a:focus-visible,.oracle-share-dialog a:focus-visible,.oracle-share-dialog button:focus-visible{outline:2px solid #f7dfb9;outline-offset:5px}.color-oracle-page button:disabled{cursor:wait;opacity:.7}
@keyframes oracle-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.025)}}@keyframes oracle-drift{to{transform:rotate(360deg)}}@keyframes oracle-charge{to{transform:scale(1.1);filter:brightness(1.4)}}@keyframes oracle-open{0%{transform:scale(1.05)}65%{transform:scale(1.18);filter:brightness(1.7)}100%{transform:scale(.95);opacity:.4}}@keyframes oracle-spark{to{transform:scale(1.35);opacity:0}}@keyframes oracle-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.color-oracle-page{padding:22px 16px 35px}.oracle-heading{margin:16px 0 15px}.oracle-heading h1{font-size:34px}.oracle-heading>p:last-child{font-size:12px}.oracle-stage{min-height:330px;padding:7px 0}.oracle-orb-button{width:240px;height:240px}.oracle-stage-caption{font-size:15px}.oracle-result{grid-template-columns:1fr;gap:18px;padding:24px;border-radius:22px}.oracle-result-orb{max-width:235px}.oracle-result-message{font-size:18px;margin:20px 0}.oracle-result.is-guide{grid-template-columns:1fr}.oracle-guide-portrait{max-width:225px}.oracle-result-copy{text-align:left}.oracle-aura-grid{gap:9px}.oracle-aura-choice{padding:18px 6px;border-radius:65px 65px 12px 12px}.oracle-aura-choice strong{font-size:13px;min-height:3em;display:flex;align-items:center;justify-content:center;margin:8px 0}.oracle-aura-choice>span:last-of-type{font-size:10px}.oracle-aura-choice small{font-size:10px;margin:20px 0 0}.oracle-aura-orb{width:125px}.oracle-invitation{padding:16px;gap:12px;flex-direction:column;align-items:stretch;border-radius:16px}.oracle-invitation-main{gap:14px}.oracle-invitation strong{font-size:17px}.oracle-invitation small{font-size:9px}.oracle-invitation-main span span{font-size:11px;line-height:1.6}.oracle-mini-orb{width:48px;height:48px;flex-basis:48px}.oracle-invitation-match{padding:10px 0 0 62px;border-left:0;border-top:1px solid #bc9fba22}.oracle-mode-switch button{font-size:12px;padding:12px 7px}.oracle-page-top{font-size:9px}.oracle-share-dialog{padding:18px}.oracle-share-image{height:min(49dvh,520px)}}
@media(prefers-reduced-motion:reduce){.color-oracle-page *,.color-oracle-page *:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.oracle-aura-choice:hover{transform:none}}
