@charset "UTF-8";
:root{--paper:#f6f3eb;--ink:#263f38;--muted:#7c8277;--line:#deded1;--gold:#ad8950;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,serif;--sans:"Yu Gothic",Meiryo,sans-serif;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #ad8950;outline-offset:6px}button{touch-action:manipulation}.shell{max-width:1440px;margin:auto;padding:0 58px}.site-header{height:101px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;color:var(--ink);font:36px Georgia,serif;letter-spacing:-1.5px}.brand-symbol{font-size:35px;color:var(--gold);vertical-align:-2px;margin-right:8px}.brand-dot{color:var(--gold)}.header-note{font:9px var(--sans);letter-spacing:2.5px;color:#8a8b7d}.edition{font:9px var(--sans);letter-spacing:1.6px;display:flex;align-items:center;gap:8px}.edition>span{width:5px;height:5px;border-radius:50%;background:#9d8050}.intro{padding:44px 0 32px}.eyebrow{font:10px var(--sans);font-weight:500;letter-spacing:2px;color:var(--gold);margin:0 0 20px}.eyebrow>span{margin:0 9px}h1{font:36px/1.6 var(--serif);letter-spacing:3px;font-weight:500;margin:0 0 12px}.intro-copy{color:#6d766b;font-size:12px;line-height:2.1;margin:0}.mobile-break{display:none}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:38px;align-items:start}.spread-panel{background:#efeee4;border:1px solid #e2e1d5;border-radius:5px;overflow:hidden;position:relative;background-image:radial-gradient(ellipse at 50% 45%,#f7f6ee 0%,#efeee4 74%)}.spread-topline{display:flex;align-items:center;justify-content:space-between;padding:23px 25px 0;font-size:9px;letter-spacing:1.7px;color:#777e70;gap:10px}.spread-topline i{font-style:normal;color:var(--gold);margin-right:6px}#spread-status{font-size:10px;letter-spacing:1px;color:#8a8c7f}.spread{position:relative;width:100%;aspect-ratio:1000/820;margin:10px 0 0;container-type:inline-size}.constellation{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#c6b991;stroke-width:1;opacity:.43}.constellation circle{stroke-dasharray:2 8}.constellation path{stroke-width:.9}.constellation .orbit{stroke-width:1.2}.card-slot{position:absolute;left:var(--x);top:var(--y);width:17%;transform:translate(-50%,-50%);text-align:center}.card-slot .card-button{padding:0;border:0;border-radius:5px;width:100%;display:block;background:none;cursor:pointer;perspective:900px;aspect-ratio:2/3;position:relative}.card-button:disabled{cursor:default}.card-inner{height:100%;width:100%;position:relative;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.65,.25,1),filter .25s}.card-button.is-revealed .card-inner{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:5px;overflow:hidden;box-shadow:0 6px 13px #263f3817}.card-back{background:#355149;padding:6%;border:1px solid #476256;color:#d4bd83}.back-border{height:100%;border:1px solid #b3a37185;position:relative;display:flex;align-items:center;justify-content:center}.back-border:before,.back-border:after{content:"✦";position:absolute;left:50%;transform:translateX(-50%);font-size:12px;line-height:1}.back-border:before{top:7%}.back-border:after{bottom:7%}.back-art{width:88%;height:80%;fill:none;stroke:currentColor;stroke-width:.8;opacity:.9}.back-brand{position:absolute;bottom:18%;font:italic 7px Georgia,serif;letter-spacing:1.5px}.card-front{transform:rotateY(180deg);background:#fcf9ee;border:1px solid #c3ae7b;padding:5%;color:#315146}.front-content{height:100%;position:relative;border:1px solid #c9b784;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:7% 3%;transition:transform .3s}.is-reversed .front-content{transform:rotate(180deg)}.front-number{font:10px Georgia,serif;letter-spacing:1px;color:var(--gold)}.front-art{width:90%;height:65%;stroke:currentColor;fill:none;stroke-width:1.2}.front-name{font:6px Georgia,serif;letter-spacing:.8px;text-transform:uppercase;line-height:1.4;max-width:95%}.card-button:hover:not(:disabled) .card-inner{filter:brightness(1.05)}.card-slot.selected .card-button:after{content:"";position:absolute;inset:-5px;border:1px solid var(--gold);border-radius:8px;pointer-events:none}.position-label{display:block;font-family:var(--serif);font-size:clamp(9px,1.7cqw,13px);letter-spacing:.8px;margin-top:10px;white-space:nowrap}.position-index{font:8px Georgia,serif;color:var(--gold);margin-right:5px}.orientation-label{display:block;font-size:clamp(8px,1.3cqw,10px);color:var(--muted);height:14px;margin-top:4px;letter-spacing:1px}.spread-caption{margin:3px 0 22px;text-align:center;font:11px var(--serif);letter-spacing:1.6px;color:#818573}.spread-caption>span{margin-right:8px;color:var(--gold)}.reading-sidebar{padding-top:1px}.ritual-panel{padding:25px 2px 22px;border-bottom:1px solid var(--line)}.ritual-panel .eyebrow{font-size:9px;margin-bottom:17px}h2{font:23px/1.8 var(--serif);font-weight:500;letter-spacing:1.5px;margin:0 0 15px}.ritual-copy{font-size:12px;color:#788074;line-height:2.2;margin:0 0 23px}.draw-button{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--ink);background:var(--ink);color:#f6f0df;width:100%;padding:17px 18px;border-radius:3px;cursor:pointer;transition:background .2s,transform .2s;font-size:12px;letter-spacing:1px}.draw-button:hover{background:#3e5a4b;transform:translateY(-1px)}.draw-button:disabled{cursor:wait;opacity:.7;transform:none}.draw-button>span:first-child{color:#d8bf86;font-size:19px}.draw-button>span:last-child{font-size:18px;color:#d8bf86}.deck-note{font-size:9px;text-align:center;color:#818475;letter-spacing:.5px;margin:13px 0 0}.detail-panel{padding:26px 18px;min-height:258px;background:#edeee4;border:1px solid #e3e5d8;border-radius:3px;margin-top:23px}.detail-empty{text-align:center}.detail-mark{font-size:31px;color:#a28c5f;display:block;margin-bottom:13px}.detail-empty .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:12px}.detail-empty h2{font-size:17px;margin-bottom:13px}.detail-empty>p:last-child{font-size:11px;line-height:2;color:#858878;margin:0}.detail-topline{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:20px}.detail-topline .eyebrow{font-size:9px;margin:0}.orientation-pill{font-size:10px;padding:4px 9px;border:1px solid #bac4af;border-radius:20px;color:#687b60;white-space:nowrap}.orientation-pill.reversed{color:#956d4b;border-color:#d4bfa4}.detail-title{font-size:24px;margin-bottom:0;letter-spacing:1px}.detail-english{font:italic 13px Georgia,serif;color:#8b917f;margin:2px 0 20px}.detail-keywords{font:14px/1.9 var(--serif);margin:0 0 20px;color:#4d6252}.detail-position{border-top:1px solid #d7ddcd;padding-top:15px}.detail-position h3{font-size:11px;letter-spacing:1px;font-weight:500;margin:0 0 8px}.detail-position p{font-size:11px;line-height:1.9;color:#7b8373;margin:0}.detail-nav{display:flex;gap:7px;justify-content:center;margin-top:20px}.detail-nav button{border:1px solid #d2d6c7;background:transparent;width:28px;height:28px;border-radius:50%;font:10px Georgia,serif;color:#6a7e68;cursor:pointer}.detail-nav button[aria-pressed="true"]{background:#355149;color:#fff;border-color:#355149}.small-note{display:flex;gap:11px;margin:21px 1px;color:#8a8a7b}.small-note>span{font-size:18px;color:#aa946a}.small-note p{font-size:10px;line-height:1.9;margin:0}footer{margin-top:35px;border-top:1px solid var(--line);padding:25px 0 29px;display:flex;justify-content:space-between;gap:15px;color:#7b8375;font:17px Georgia,serif}.footer-sub{font:10px var(--sans);margin-left:14px;color:#939487;letter-spacing:.4px}footer>span:last-child{font:9px var(--sans);letter-spacing:1px}footer>span:last-child span{color:var(--gold);margin-left:15px}.live-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1440px){.shell{padding:0 70px}.reading-layout{gap:50px}}
@media(max-width:1050px){.shell{padding:0 28px}.reading-layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}.spread-topline{padding:18px 16px 0;font-size:8px;letter-spacing:1px}#spread-status{font-size:8px}.ritual-panel{padding-top:17px}.ritual-copy{font-size:11px}.position-label{margin-top:8px}.spread-caption{font-size:10px}.front-number{font-size:8px}.front-name{font-size:5px}.header-note{display:none}}
@media(max-width:760px){.shell{padding:0 20px}.site-header{height:79px}.brand{font-size:30px}.brand-symbol{font-size:29px}.edition{font-size:8px;letter-spacing:1px}.intro{padding:32px 0 25px}h1{font-size:29px;letter-spacing:2px}.eyebrow{font-size:8px;letter-spacing:1.4px}.intro-copy{font-size:11px}.reading-layout{display:flex;flex-direction:column;gap:23px}.spread-panel{width:100%}.spread{margin-top:16px;margin-bottom:12px}.reading-sidebar{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:20px}.ritual-panel{border:0;padding:3px 0}.ritual-panel h2{font-size:20px}.ritual-copy{font-size:11px}.detail-panel{margin:0;padding:21px 16px}.small-note{grid-column:1/-1;margin:0}.front-number{font-size:10px}.front-name{font-size:6px}.spread-caption{margin-bottom:19px;font-size:10px}.position-label{font-size:clamp(9px,2.6vw,13px)}.orientation-label{font-size:9px}footer{margin-top:25px;padding-bottom:25px}.footer-sub{display:none}}
@media(max-width:460px){.shell{padding:0 16px}.reading-sidebar{display:flex;flex-direction:column;gap:0}.ritual-panel{padding:0 4px 23px}.ritual-panel h2 br{display:none}.ritual-panel h2{font-size:22px}.ritual-copy{font-size:12px}.ritual-copy br{display:none}.detail-panel{padding:24px;min-height:230px}.detail-empty h2 br{display:none}.detail-empty>p:last-child br{display:none}.small-note{margin:20px 4px 0}.spread-topline{font-size:7px;padding:16px 12px 0}#spread-status{font-size:8px;letter-spacing:0}.position-label{font-size:9px;letter-spacing:0;margin-top:7px}.position-index{font-size:7px;margin-right:3px}.orientation-label{font-size:8px;letter-spacing:0;margin-top:2px;height:10px}.front-number{font-size:7px}.front-name{font-size:4px;letter-spacing:.4px}.back-brand{font-size:4px;letter-spacing:1px}.back-border:before,.back-border:after{font-size:7px}.spread-caption{font-size:9px;letter-spacing:1px}.intro{padding-top:28px}h1{font-size:27px}.edition{font-size:7px}.brand{font-size:29px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.card-inner{display:block}
.consultation-label{display:block;font-size:11px;margin:0 0 9px;color:var(--ink)}.consultation-label span{font-size:9px;color:var(--muted);margin-left:8px}#consultation{display:block;width:100%;resize:vertical;min-height:100px;max-height:260px;border:1px solid #ced2c3;border-radius:3px;padding:12px;background:#fbfaf4;color:var(--ink);font:12px/1.9 var(--sans)}#consultation:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.consultation-help{font-size:10px;line-height:1.8;color:var(--muted);margin:9px 0 18px}.reading-result{max-width:850px;margin:30px 0;padding:30px;background:#edeee4;border:1px solid var(--line);border-radius:4px}.reading-result[hidden],.reading-result [hidden]{display:none}.reading-result h2{margin-bottom:15px}.reading-result h3{font:15px var(--serif);margin-top:24px}.reading-result p:not(.eyebrow){font-size:12px;line-height:2.1;color:#637462}.retry-button{padding:12px 15px;border:1px solid #9ba98d;background:transparent;color:var(--ink);font-size:11px;border-radius:3px;cursor:pointer;margin-top:12px}
.consultation-form{border-top:1px solid var(--line);margin-top:23px;padding-top:22px}.consultation-form[hidden]{display:none}.consultation-form h3{font:18px var(--serif);margin:0 0 20px}.interpret-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:1px solid #7c8c6f;border-radius:3px;background:#e7ebdf;color:var(--ink);font:12px var(--sans);cursor:pointer}.interpret-button:disabled{opacity:.5;cursor:default}.interpret-button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.consultation-state{font-size:10px;line-height:1.8;color:var(--muted);margin-bottom:12px}.consultation-state:empty{display:none}
.test-ad{max-width:min(420px,90vw);padding:34px;border:1px solid var(--gold);border-radius:5px;background:var(--paper);color:var(--ink);text-align:center;box-shadow:0 20px 80px #0005}.test-ad::backdrop{background:#172921bf}.test-ad h2{margin-bottom:12px}.test-ad p:not(.eyebrow){font-size:12px;line-height:1.9}.test-ad strong{display:block;font:38px Georgia,serif;color:var(--gold);margin:18px}.test-ad button{padding:12px 20px;border:0;border-radius:3px;background:var(--ink);color:white;cursor:pointer}.test-ad button:disabled{opacity:.5;cursor:default}
