/* Entry hierarchy: keep each site's artwork and bring the first action closer. */
.tarot-love-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 16px}
.tarot-love-choices button{min-width:0;min-height:48px;white-space:normal;font-size:16px;line-height:1.5;letter-spacing:normal;text-wrap:balance;padding:10px 6px}
.tarot-love-choices button span{display:inline-block;white-space:nowrap}
body.theme-koi #tarotTop .tarot-love-choices button{box-shadow:none;transform:none}
body.theme-koi #tarotTop .tarot-topic-names{display:none}
body.theme-koi #tarotTop .tarot-love-choices button[aria-pressed="true"]{background:#ffe3ed!important;border-color:#bc6688!important;box-shadow:inset 0 0 0 1px #bc6688}
.finish-method{position:relative;z-index:3;max-width:680px;margin:12px auto;text-align:left;border:1px solid #b9a77955;border-radius:9px;color:#d0d9e7;background:#10213988}
.finish-method>summary{cursor:pointer;padding:12px 14px;font-size:15px;line-height:1.6}
.finish-method .engine-line{margin:0;padding:3px 14px 14px;text-align:left}
.finish-method .engine-note{font-size:14px;line-height:1.8}
body[data-finish="bansho"] .quick-council-box summary .luck-name{min-width:0;white-space:normal;flex:1 1 auto;overflow-wrap:anywhere}
body[data-finish="bansho"] .compat-person-name{white-space:normal;overflow-wrap:anywhere}
body[data-finish="koi"] #meCard.rv{opacity:1;transform:none}
body[data-finish="koi"] .reading-topic{color:#70536a}
body[data-finish="koi"] #kbClose{position:sticky;top:0;z-index:3;margin:0 0 12px;background:#fff1f6;color:#884361;font-size:16px;box-shadow:0 3px 10px #66334d18}
/* Helper text stays readable without competing with the result. */
body[data-finish="koi"] .note,body[data-finish="koi"] .now-sub{font-size:15px;line-height:1.8;color:#70536a}
body[data-finish="koi"] #partyEnter{animation:none;min-height:88px;border-width:1px}
body[data-finish="koi"] #partyEnter .kb-copy b{font-size:19px;white-space:normal;line-height:1.5}
body[data-finish="koi"] #partyEnter .kb-copy small{font-size:14px;line-height:1.7}
body[data-finish="namae"] label{font-size:16px}
body[data-finish="namae"] .privacy,body[data-finish="namae"] .method-btn small{font-size:14px;line-height:1.7}
body[data-finish="namae"] .hero-points li,body[data-finish="namae"] .free-line{font-size:14px;letter-spacing:.02em}
body[data-finish="seiza"] .sign-btn{min-width:0}
body[data-finish="seiza"] .sign-btn b{font-size:15px}
body[data-finish="seiza"] .sign-btn small{font-size:12px;white-space:normal;line-height:1.5}
body[data-finish="seiza"] .im-head{flex-wrap:wrap}
body[data-finish="seiza"] .im-head b{flex:1;min-width:0}
body[data-finish="seiza"] .im-head .st{flex-basis:100%;margin-left:0;text-align:center}
/* Desktop tarot prose: centered reading column, left-aligned text. */
@media(min-width:700px){
 #tarotFinal{max-width:860px;margin-left:auto;margin-right:auto;box-sizing:border-box}
 #tarotFinal .tfr-word,#tarotFinal .tfr-detail,
 #tarotFinal .tarot-final-sum,#tarotFinal>.reading-topic,
 #tarotFinal .tarot-foundation-note{max-width:40rem;margin-left:auto;margin-right:auto;text-align:left}
 #tarotFinal .tfr-word,#tarotFinal>.reading-topic{font-size:16px;line-height:1.9}
 #tarotFinal .reading-overview{max-width:44rem;margin-left:auto;margin-right:auto;box-sizing:border-box}
}
/* Celtic cross: scale the complete card artwork, not just its outer frame. */
#tarotTop .ct-map{box-sizing:border-box;max-width:420px;margin-left:auto;margin-right:auto;grid-template-columns:repeat(4,72px);justify-content:center;gap:12px}
#tarotTop .ct-cell .sp-front{position:relative!important;inset:auto;width:72px;height:104px;transform:none!important;backface-visibility:visible;-webkit-backface-visibility:visible}
#tarotTop .ct-cell .sp-front.rev{transform:rotate(180deg)!important}
#tarotTop .ct-cell .cf{width:124px;height:178px;transform:scale(.580645);transform-origin:top left}
#tarotTop .spread.n10 .sp-slot{box-sizing:border-box;width:100%;max-width:760px;justify-self:center;grid-template-columns:132px minmax(0,1fr)}
@media(max-width:650px){
 #tarotTop .ct-map{grid-template-columns:repeat(4,56px);gap:9px}
 #tarotTop .ct-cell .sp-front{width:56px;height:81px}
 #tarotTop .ct-cell .cf{transform:scale(.451613)}
 #tarotTop .spread.n10 .sp-slot{grid-template-columns:minmax(0,1fr);justify-items:center;padding:16px 8px}
 #tarotTop .spread.n10 .sp-pos,#tarotTop .spread.n10 .sp-flip,#tarotTop .spread.n10 .sp-name,#tarotTop .spread.n10 .sp-text,#tarotTop .spread.n10 .ct-major,#tarotTop .spread.n10 .ct-pos{grid-column:1;grid-row:auto}
 #tarotTop .spread.n10 .sp-pos,#tarotTop .spread.n10 .sp-name{text-align:center}
 #tarotTop .spread.n10 .sp-flip{width:124px;margin:0 auto 12px}
 #tarotTop .spread.n10 .sp-text,#tarotTop .spread.n10 .ct-major,#tarotTop .spread.n10 .ct-pos{width:100%;max-width:40rem;text-align:left}
}
/* Life reading: expose every chapter without horizontal scrolling or a tall sticky menu. */
#reading .reading-settings{max-width:44rem;margin:0 auto 16px;border:1px solid rgba(201,162,39,.35);border-radius:10px;overflow-wrap:anywhere}
#reading .reading-settings>summary{cursor:pointer;min-height:44px;box-sizing:border-box;padding:8px 14px;font-size:15px;line-height:1.5;letter-spacing:normal;color:var(--text)}
#reading .reading-settings>summary span{display:inline-block;max-width:100%;font-size:15px;vertical-align:top}
#reading .reading-settings>summary b{display:block;font-size:15px;color:var(--kin-l)}
#reading .reading-settings>summary:focus-visible{outline:2px solid var(--kin-l);outline-offset:3px}
#reading .reading-settings[open]{padding:0 12px 12px}
#reading .reading-settings[open]>summary{margin-inline:-12px;border-bottom:1px solid rgba(201,162,39,.25);margin-bottom:12px}
#reading .reading-settings .st-n i{font-size:15px;white-space:normal;overflow-wrap:anywhere}
#reading .reading-settings .deep-return,#reading .reading-settings .hcb-more{font-size:15px;min-height:44px;white-space:normal;max-width:100%;line-height:1.5}
#reading .reading-settings .favorite-result-note{font-size:15px;line-height:1.7}
#reading .life-chapters{position:static;overflow:visible;padding:0;background:none;backdrop-filter:none;margin:16px 0}
#reading .life-chapters::after{display:none}
#reading .chapter-intro{font-size:16px;font-weight:700;line-height:1.5;margin:0 0 8px;color:var(--kin-l)}
#reading .chapter-intro span{display:block;font-size:15px;font-weight:400;color:var(--text)}
#reading #tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;border:0}
#reading #tabs .tab{display:flex;align-items:flex-start;gap:7px;min-width:0;padding:9px 10px;border:1px solid rgba(201,162,39,.35);border-radius:10px;white-space:normal;text-align:left;letter-spacing:normal;line-height:1.45;background:rgba(17,34,51,.7);color:var(--text)}
#reading #tabs .tab>span:last-child{min-width:0}
#reading #tabs .tab b{display:block;font-size:16px}
#reading #tabs .tab small{display:block;font-size:14px;font-weight:400;color:var(--text);line-height:1.45;text-wrap:balance}
#reading #tabs .chapter-number{flex:none;color:var(--kin-l);font-size:15px;line-height:26px}
#reading #tabs .tab[aria-selected="true"]{border-color:var(--kin-l);background:rgba(201,162,39,.16);box-shadow:inset 0 -3px var(--kin);color:var(--kin-l)}
#reading .chapter-heading{font-size:21px;line-height:1.5;letter-spacing:.03em;margin:18px 0 12px;scroll-margin-top:76px;color:var(--kin-l)}
#reading #readingTakeaway>.reading-overview{max-width:44rem;box-sizing:border-box;margin:12px auto 18px;text-align:left}
#reading #readingTakeaway>.reading-overview p{font-size:18px;line-height:1.7}
#reading #readingTakeaway>.reading-overview h3,#reading #readingTakeaway>.reading-overview small{font-size:15px;line-height:1.6}
#reading .essay{max-width:42rem;margin-inline:auto;text-align:left;font-size:16px;line-height:1.7}
#reading .essay-section{margin:18px 0 0;padding-top:16px;border-top:1px solid rgba(201,162,39,.28);overflow-wrap:anywhere}
#reading .essay-section:first-child{margin-top:16px;padding-top:0;border-top:0}
#reading .essay-section h3{margin:0 0 9px;font-size:18px;line-height:1.5;letter-spacing:normal;color:var(--kin-l);text-align:left}
#reading .essay-section p{margin:0 0 10px;font-size:16px;line-height:1.7;color:var(--text);text-align:left}
#reading h2.reading-title{max-width:42rem;font-size:20px;line-height:1.5;letter-spacing:normal;text-align:left;margin:0 auto 14px}
#reading .essay-section .essay-lead{font-size:17px;font-weight:700;color:var(--text);line-height:1.65}
#reading .reading-facts{font-size:15px;line-height:1.7;overflow-wrap:anywhere}
#reading .reading-facts>div{margin:8px 0}
#reading .reading-facts .pill{white-space:normal;line-height:1.6}
#reading #subtabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#reading #subtabs .subtab{min-width:0;white-space:normal;text-align:left;padding:9px 10px;letter-spacing:normal;line-height:1.5}
#reading #subtabs .subtab:last-child{grid-column:1/-1}
#reading #subtabs b{display:block;font-size:16px}
#reading #subtabs small{display:block;font-size:14px;font-weight:400;color:var(--text)}
#reading .chapter-pager{border-top:1px solid rgba(201,162,39,.4);padding:18px 0 0;margin:32px 0 20px}
#reading .chapter-progress{text-align:center;font-size:15px;color:var(--gin);margin:0 0 12px}
#reading .chapter-pager-buttons{display:flex;flex-wrap:wrap;gap:10px}
#reading .chapter-pager button{flex:1 1 160px;min-width:0;min-height:66px;padding:12px 14px;border:1px solid rgba(201,162,39,.5);border-radius:10px;background:rgba(17,34,51,.9);color:var(--text);font:inherit;white-space:normal;text-align:left;cursor:pointer;line-height:1.6}
#reading .chapter-pager button small{display:block;font-size:16px;color:var(--text)}
#reading .chapter-pager button b{display:block;font-size:18px}
#reading .chapter-pager .chapter-next{border-color:var(--kin);background:rgba(201,162,39,.16);color:var(--kin-l)}
#reading .tab:focus-visible,#reading .subtab:focus-visible,#reading .chapter-pager button:focus-visible{outline:2px solid var(--kin-l);outline-offset:3px}
@media(min-width:900px){#reading #tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Let the completed-draw label fit its column on both phones and desktops. */
#omikujiCard .omi-left,#omikujiCard .omi-right,#omikujiResult{min-width:0;max-width:100%}
#omikujiCard .draw-btn{max-width:100%;white-space:normal}
@media(max-width:519px){
 #omikujiCard .omi-grid{grid-template-columns:minmax(0,1fr)}
 #omikujiResult .fortune-rank{overflow:hidden}
 /* Keep the common tarot room readable: one outer frame, not nested gutters. */
 #tarotCard{padding-left:10px;padding-right:10px}
 #tarotTop .tarot-step-card{padding-left:12px;padding-right:12px}
 #tarotTop .tarot-topic-box{padding:0;border:0;background:none;box-shadow:none}
 #tarotFinal{padding:16px 12px}
 #tarotFinal>.reading-overview{padding:12px 0;border:0;border-bottom:1px solid rgba(212,175,85,.35);border-radius:0;background:none}
 #tarotFinal .tarot-final-sum{padding-top:0;border-top:0}
 #tarotFinal .tarot-final-row{padding:14px 0;border:0;border-top:1px solid rgba(212,175,85,.35);border-radius:0;background:none}
 #tarotFinal .tfr-word{text-align:left;font-size:16px}
 #tarotFinal .reading-details{padding:8px 0;border:0;border-radius:0;background:none}
 #tarotFinal>.reading-details>summary{font-size:16px}
 body[data-finish="namae"] .five-grid{grid-template-columns:minmax(0,1fr)}
 body[data-finish="bansho"] #partnerY{flex:1.4 1 0}
 body[data-finish="bansho"] #reading .sec-tag-you{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;border-radius:14px}
 body[data-finish="bansho"] #reading .sec-tag-you .st-n{min-width:0;width:100%}
 body[data-finish="bansho"] #reading .sec-tag-you .st-n i{max-width:100%;white-space:normal;overflow-wrap:anywhere}
 body[data-finish="bansho"] #reading .sec-tag-you .sky-reading-link{width:100%;min-width:0;margin-left:0}
 body[data-finish="bansho"] .quick-profile-slim{flex-wrap:wrap;justify-content:flex-start}
 body[data-finish="bansho"] .quick-profile-slim small{max-width:none}
 body[data-finish="bansho"] .quick-profile-slim b{flex-basis:100%;min-width:0;justify-content:flex-start}
 body[data-finish="bansho"] .quick-profile-slim i{max-width:100%;overflow-wrap:anywhere}
 body[data-finish="bansho"] .quick-profile-slim .sky-reading-link{width:100%;min-width:0}
 body[data-finish="bansho"] .quick-glance{grid-template-columns:1fr;justify-items:center}
 body[data-finish="bansho"] .qg-body{width:100%;min-width:0}
 body[data-finish="seiza"] .hero{display:grid;grid-template-columns:minmax(0,1fr) 88px;align-items:center;gap:6px 8px;padding:20px 16px 16px}
 body[data-finish="seiza"] .hero h1{grid-column:1/-1;margin-bottom:10px}
 body[data-finish="seiza"] .hero-copy{margin:0;white-space:normal;line-height:1.8}
 body[data-finish="seiza"] .hero-guide{position:relative;right:auto;bottom:auto;width:88px;grid-column:2;grid-row:2}
 body[data-finish="seiza"] .guide-tag{position:relative;right:auto;bottom:auto;grid-column:1/-1;justify-self:end}
 body[data-finish="seiza"] .hero-fact{position:relative;left:auto;bottom:auto;grid-column:1/-1;grid-row:4;max-width:none;margin:4px 0 0}
 body[data-finish="seiza"] .hero-fact .hf-moon,body[data-finish="seiza"] .hero-fact .hf-sub{white-space:normal}
 body[data-finish="seiza"] .me-score{flex-basis:100%;margin-left:0}
}
@media(max-width:359px){
 body[data-finish="seiza"] .me-items{grid-template-columns:1fr}
 body[data-finish="seiza"] #pickCard .sec-title{text-wrap:balance}
}
@media(max-width:399px){
 body[data-finish="bansho"] .tarot-spread-choice{flex-direction:column;align-items:stretch}
 body[data-finish="bansho"] .tarot-spread-choice select{flex:auto;min-width:0}
 body[data-finish="seiza"] .sign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body[data-finish="seiza"] #itemModal{padding:10px}
 body[data-finish="seiza"] .im-card{padding:16px 12px}
 body[data-finish="koi"] #kbModal{padding:10px}
 body[data-finish="koi"] #kbModal .kbm-card{padding:12px 9px;max-height:calc(100dvh - 20px)}
 body[data-finish="koi"] #kbHost .card{padding:14px 10px}
 body[data-finish="koi"] #kbHost .gentle-letter{padding:13px 11px}
 body[data-finish="koi"] .love-head{flex-wrap:wrap}
 body[data-finish="koi"] .love-stars{white-space:nowrap}
}
@media(max-width:699px){
 body[data-finish="series"] .hero-badges{margin-top:9px}
 body[data-finish="series"] .hero-lead{font-size:14px}
 body[data-finish="series"] .finish-method{margin-bottom:4px}
 body[data-finish="bansho"] .restored-hero .engine-line{max-width:none}
 body[data-finish="bansho"] .hero-choose{margin-top:10px;margin-bottom:12px;min-height:44px}
 body[data-finish="bansho"] .home-date-row{margin-top:8px}
 body[data-finish="namae"] .hero{padding:10px 0 14px}
 body[data-finish="namae"] .hero-frame{padding:20px 13px 24px}
 body[data-finish="namae"] .name-emblem{width:52px;height:52px;margin:0 auto 10px}
 body[data-finish="namae"] .hero-lead{font-size:14px;line-height:1.8;margin-top:10px}
 body[data-finish="namae"] .hero-lead span{display:inline}
 body[data-finish="namae"] .hero-points{margin-top:12px;gap:5px}
 body[data-finish="namae"] .hero-points li{padding:4px 8px}
 body[data-finish="namae"] .free-line{line-height:1.7;margin:12px 0 0}
 .reading-overview .tarot-final-sum{font-size:18px;line-height:1.85}
}
@media(prefers-reduced-motion:reduce){body[data-finish] .rv{opacity:1;transform:none;transition:none}}
