/* トート・タロット（/thoth-tarot・/thoth-tarot/zense）専用CSS。
 * 読み込みは ookubo-design.php の OOKUBO_DESIGN_IDS_THOTH のページだけ。接頭辞 .tht-
 * 色: 盤の地 #14111f／金 #c9a227／盤上の文字 #f1ecdf／紫 #7a6997・#3d2952（サイト共通）
 * 角丸: 4（一覧の札）／8（ボタン・札・内枠）／12（盤・箱・タブ）。影: sm・md・lg（盤）。
 * 2026-10-05: /tarot と同じ格に（盤のグラデと金の内枠、明朝の見出し、金のボタン）。札を一回り小さく。
 */
.tht-root{margin:24px 0 32px;line-break:strict;overflow-wrap:anywhere;word-break:normal}
.tht-root button{font-family:inherit}
.tht-prep{padding:16px;border:1px solid #d4b3e8;border-radius:12px;background:#f5f0fa;color:#3d2952}
.tht-topnote{margin:0 0 16px;color:#333}
.tht-beta{display:inline-block;padding:0 8px;border:1px solid #7a6997;border-radius:4px;color:#3d2952;font-size:14px;line-height:1.7;white-space:nowrap}

/* 占的（汎用ページだけ・2026-10-08）。サイト共通の textarea{…!important}（design.css 12行目）を上書きするため !important */
.tht-ask{margin:0 0 24px}
.tht-ask-label{display:block;margin:0 0 8px;color:#3d2952;font-size:18px;font-weight:700;line-height:1.5}
.tht-ask-opt{margin-left:4px;color:#5d4f76;font-size:16px;font-weight:400}
.entry-content .tht-ask textarea.tht-ask-input,.tht-ask textarea.tht-ask-input{display:block;width:100%;max-width:100%;min-height:88px !important;margin:0;padding:12px 16px !important;box-sizing:border-box;border:1px solid #7a6997;border-radius:8px;background:#fff;color:#1a1a1a;font-family:inherit;font-size:17px !important;line-height:1.7;resize:vertical}
.tht-ask textarea.tht-ask-input:focus{border-color:#3d2952;outline:3px solid rgba(201,162,39,.6);outline-offset:1px}
.tht-ask-note{margin:8px 0 0;color:#555;font-size:15px;line-height:1.7}
.tht-result-q{margin:0 0 16px;padding:12px 16px;border-left:4px solid #c9a227;border-radius:4px;background:#fffaf0;color:#333;font-size:16px;line-height:1.8}
.tht-result-q[hidden]{display:none}

/* タブ */
.tht-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:0 0 16px}
.tht-tabs[hidden]{display:none}
.tht-tab{min-height:56px;padding:8px 16px;border:1px solid #d4b3e8;border-radius:12px;background:linear-gradient(#faf6ff,#efe6fa);color:#3d2952;font-size:17px;font-weight:700;line-height:1.4;letter-spacing:.04em;cursor:pointer;box-shadow:0 1px 3px rgba(61,41,82,.12)}
.tht-tab[aria-selected="true"]{background:linear-gradient(#7a5a9f,#4a2a6f);border-color:#4a2a6f;color:#fff;box-shadow:0 2px 6px rgba(61,41,82,.16),inset 0 1px 1px rgba(255,255,255,.2)}

/* 盤 */
.tht-stage{position:relative;padding:32px 24px;border:1px solid rgba(201,162,39,.4);border-radius:12px;background:#14111f radial-gradient(at 50% 0%,#2d2248 0%,#14111f 70%,#0c0a14 100%);color:#f1ecdf;box-shadow:0 8px 24px rgba(20,10,40,.3),inset 0 0 60px rgba(0,0,0,.5);text-align:center}
.tht-stage::before{content:"";position:absolute;inset:8px;border:1px solid rgba(201,162,39,.22);border-radius:8px;pointer-events:none}
.article .tht-stage .tht-spread-name,.tht-stage .tht-spread-name{margin:0 0 12px;padding:0;border:0;background:none;color:#f4e8d0;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:22px;font-weight:700;line-height:1.4;letter-spacing:.12em}
.tht-stage .tht-spread-name::before,.tht-stage .tht-spread-name::after{content:"\2726";display:inline-block;margin:0 .6em;color:#c9a227;font-size:.7em;vertical-align:.15em}
.tht-desc{margin:0 auto 24px;max-width:34em;color:#e3dcc9;font-size:16px;line-height:1.8;text-align:left}
.tht-desc::after{content:"";display:block;height:1px;margin:16px 0 0;background:linear-gradient(90deg,transparent,#c9a227 50%,transparent)}
.tht-board{display:grid;gap:16px 12px;justify-content:center;margin:24px auto 0}
.tht-board[data-layout="one"]{grid-template-columns:minmax(0,168px)}
.tht-board[data-layout="three"]{grid-template-columns:repeat(3,minmax(0,152px))}
.tht-board[data-layout="celtic"]{grid-template-columns:repeat(4,minmax(0,112px));grid-template-areas:". p3 . p10" "p5 p1 p6 p9" ". p4 . p8" ". . . p7";align-items:start}
.tht-board[data-layout="celtic"] .tht-p1{grid-area:p1}
.tht-board[data-layout="celtic"] .tht-p2{grid-area:p1;position:relative;z-index:2;pointer-events:none}
.tht-board[data-layout="celtic"] .tht-p2 .tht-card{pointer-events:auto;transform:rotate(90deg) scale(.78)}
.tht-board[data-layout="celtic"] .tht-p2 .tht-slot-cap{padding-top:1.6em}
.tht-board[data-layout="celtic"] .tht-p1 .tht-slot-cap{min-height:3.2em}
.tht-board[data-layout="celtic"] .tht-p3{grid-area:p3}
.tht-board[data-layout="celtic"] .tht-p4{grid-area:p4}
.tht-board[data-layout="celtic"] .tht-p5{grid-area:p5}
.tht-board[data-layout="celtic"] .tht-p6{grid-area:p6}
.tht-board[data-layout="celtic"] .tht-p7{grid-area:p7}
.tht-board[data-layout="celtic"] .tht-p8{grid-area:p8}
.tht-board[data-layout="celtic"] .tht-p9{grid-area:p9}
.tht-board[data-layout="celtic"] .tht-p10{grid-area:p10}
.tht-board[data-layout="gates"]{display:block;max-width:520px}
.tht-gate{margin-top:32px}
.tht-gate:first-child{margin-top:0}
.tht-gate-name{display:flex;align-items:center;gap:12px;margin:0 0 16px;color:#f4e8d0;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;font-weight:700;line-height:1.5;letter-spacing:.1em}
.tht-gate-name::before,.tht-gate-name::after{content:"";flex:1 1 0;height:1px}
.tht-gate-name::before{background:linear-gradient(90deg,transparent,rgba(201,162,39,.7))}
.tht-gate-name::after{background:linear-gradient(90deg,rgba(201,162,39,.7),transparent)}
.tht-gate-row{display:flex;justify-content:center;gap:12px}
.tht-gate-row .tht-slot{flex:0 1 128px}
.tht-slot-cap:empty{display:none}
.tht-slot{min-width:0}
/* サイト共通の .entry-content button（padding・min-height が !important）を打ち消す */
.entry-content .tht-card,.tht-root .tht-card{margin:0;padding:0 !important;min-height:0 !important}
.entry-content .tht-root .tht-btn,.entry-content .tht-root .tht-tab{margin:0}
.entry-content .tht-root .tht-btn-ghost{margin-top:24px}
.tht-card{display:block;width:100%;padding:0;border:1px solid rgba(201,162,39,.55);border-radius:8px;background:none;line-height:0;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.5);transition:transform .15s ease-out,box-shadow .15s ease-out}
.tht-card:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 2px 6px rgba(0,0,0,.5),0 0 12px rgba(201,162,39,.45)}
@media (prefers-reduced-motion:reduce){.tht-card{transition:none}.tht-card:not(:disabled):hover{transform:none}}
.tht-card:disabled{cursor:default;opacity:.55}
.tht-card:focus-visible{outline:3px solid #c9a227;outline-offset:3px}
/* テーマの画像枠（.iwe-border-bold img の 4px）を札から外す */
.tht-root img.tht-card-img,.tht-zoom img.tht-zoom-img{border:0}
.tht-card-img{display:block;width:100%;height:auto;aspect-ratio:2/3;border-radius:7px}
.tht-card.is-open .tht-card-img{animation:tht-turn .35s ease-out}
@keyframes tht-turn{from{transform:rotateY(90deg)}to{transform:rotateY(0)}}
@media (prefers-reduced-motion:reduce){.tht-card.is-open .tht-card-img{animation:none}}
.tht-slot-cap{display:block;margin-top:8px;color:#f4e8d0;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:14px;line-height:1.6;letter-spacing:.04em}

/* ボタン */
.tht-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:64px;padding:12px 24px;border-radius:8px;font-size:17px;font-weight:700;line-height:1.4;cursor:pointer}
.tht-btn[hidden]{display:none}
.tht-btn-primary{border:1px solid #b89963;background:linear-gradient(#f4e8d0 0%,#e8d5a9 55%,#d9c088 100%);color:#2a1f3f;letter-spacing:.08em;box-shadow:0 2px 6px rgba(0,0,0,.3),inset 0 1px 2px rgba(255,255,255,.6)}
.tht-btn-primary:hover{background:linear-gradient(#fbf3e1 0%,#efdfb8 55%,#e2cb97 100%)}
.tht-btn-secondary{border:1px solid #7a6997;background:#fff;color:#3d2952;font-weight:400}
.tht-btn-ghost{margin-top:24px;border:1px solid #c9a227;background:transparent;color:#f1ecdf;font-weight:400}
.tht-btn:focus-visible{outline:3px solid #7a6997;outline-offset:2px}
.tht-stage .tht-btn:focus-visible{outline-color:#f1ecdf}

/* 結果 */
.tht-result{margin-top:32px}
.article .tht-result .tht-result-title,.tht-result .tht-result-title{margin:0 0 8px;padding:0;border:0;background:none;color:#3d2952;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:22px;font-weight:700;line-height:1.4;letter-spacing:.12em;text-align:center}
.tht-result .tht-result-title::after{content:"";display:block;height:1px;margin:12px 0 0;background:linear-gradient(90deg,transparent,#c9a227 50%,transparent)}
.tht-result[hidden]{display:none}
.tht-list{margin:16px 0 24px;padding:0;list-style:none}
.tht-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:16px 0;border-top:1px solid #e3dceb}
.tht-item:last-child{border-bottom:1px solid #e3dceb}
.tht-root img.tht-item-img{display:block;width:72px;height:auto;aspect-ratio:2/3;border:1px solid rgba(201,162,39,.7);border-radius:4px;box-sizing:border-box;box-shadow:0 1px 3px rgba(61,41,82,.12)}
.tht-item-body p{margin:0}
.tht-item-pos{color:#3d2952;font-size:14px;line-height:1.6}
.tht-item-name{color:#3d2952;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:20px;font-weight:700;line-height:1.5;letter-spacing:.04em}
.tht-item-sub{color:#555;font-size:14px;line-height:1.6}
.tht-item-kw{margin-top:8px !important;color:#333;font-size:16px;line-height:1.8}
.tht-export{padding:24px 16px;border:1px solid rgba(201,162,39,.6);border-radius:12px;background:#fffaf0 linear-gradient(rgba(201,162,39,.14),rgba(201,162,39,.04));box-shadow:0 1px 3px rgba(61,41,82,.12)}
.tht-export-note{margin:0 0 16px;color:#333;font-size:16px;line-height:1.8}
.tht-export-btns{display:flex;flex-wrap:wrap;gap:12px}
.tht-msg{min-height:1.8em;margin:12px 0 0;color:#3d2952;font-size:16px;line-height:1.8}
.tht-copy-src{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

/* 拡大 */
.tht-zoom{width:min(92vw,420px);max-height:92vh;padding:16px;border:1px solid #c9a227;border-radius:12px;background:#14111f radial-gradient(at 50% 0%,#2d2248 0%,#14111f 70%);box-shadow:0 8px 24px rgba(20,10,40,.3);color:#f1ecdf;text-align:center;overflow:auto}
.tht-zoom::backdrop{background:rgba(10,8,18,.8)}
.tht-zoom-img{display:block;width:100%;height:auto;max-height:68vh;object-fit:contain;border-radius:8px}
.tht-zoom-cap{margin:12px 0 16px;color:#f4e8d0;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:17px;line-height:1.6;letter-spacing:.04em}

@media (max-width:480px){
  .tht-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tht-tab{padding:8px;letter-spacing:0;white-space:nowrap}
  .tht-tab:last-child:nth-child(odd){grid-column:1/-1}
  .tht-stage{padding:28px 16px 32px}
  .tht-stage .tht-spread-name{letter-spacing:.06em}
  .tht-stage .tht-spread-name::before,.tht-stage .tht-spread-name::after{margin:0 .3em}
  .tht-board{gap:16px 8px}
  .tht-board[data-layout="celtic"]{grid-template-columns:repeat(4,minmax(0,1fr))}
  .tht-export-btns .tht-btn{flex:1 1 100%}
}

/* 監修者のプロフィールカード（前世ページ・2026-10-05） */
.tht-profile{display:flex;gap:20px;align-items:flex-start;margin:16px 0 32px;padding:24px;border:1px solid #d8cce4;border-radius:12px;background:#fff;box-shadow:0 2px 6px rgba(61,41,82,.16);line-break:strict;overflow-wrap:anywhere}
.entry-content .tht-profile img.tht-profile__img{flex:0 0 96px;width:96px;height:96px;margin:0;border:2px solid #c9a227;border-radius:50%;object-fit:cover;background:#14111f;box-shadow:none}
.tht-profile__body{flex:1 1 auto;min-width:0}
.article .tht-profile .tht-profile__name,.tht-profile .tht-profile__name{margin:0 0 4px;padding:0;border:0;background:none;color:#3d2952;font-size:24px;font-weight:700;line-height:1.4;letter-spacing:.04em}
.tht-profile p.tht-profile__role{display:inline-block;margin:0 0 8px;padding:0 12px;border:1px solid #c9a227;border-radius:4px;background:#fffaf0;color:#3d2952;font-size:14px;font-weight:700;line-height:1.8;letter-spacing:.1em}
.tht-profile--lead{margin:24px 0 32px}
.tht-profile p{margin:0 0 12px}
.tht-profile p:empty{display:none}
.tht-profile p.tht-profile__arts{margin:0 0 12px;color:#5d4f76;font-size:15px;line-height:1.6}
.tht-profile p.tht-profile__catch{color:#3d2952;font-size:18px;font-weight:700;line-height:1.6}
.tht-profile p.tht-profile__desc{line-height:1.8}
.tht-profile p.tht-profile__links{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 0}
.entry-content .tht-profile a.tht-profile__btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 20px;box-sizing:border-box;border:2px solid #7a6997;border-radius:8px;background:#fff;color:#3d2952;font-weight:700;line-height:1.4;text-align:center;text-decoration:none}
.entry-content .tht-profile a.tht-profile__btn:hover,.entry-content .tht-profile a.tht-profile__btn:focus{background:#faf6ff;color:#3d2952}
.entry-content .tht-profile a.tht-profile__btn--primary{border-color:#3d2952;background:#3d2952;color:#fff}
.entry-content .tht-profile a.tht-profile__btn--primary:hover,.entry-content .tht-profile a.tht-profile__btn--primary:focus{background:#52386e;color:#fff}
@media (max-width:480px){.tht-profile{flex-direction:column;align-items:center;gap:12px;padding:20px 16px}.tht-profile .tht-profile__name,.tht-profile p.tht-profile__arts{text-align:center}.tht-profile__body{text-align:left}.tht-profile p.tht-profile__role{display:table;margin:0 auto 8px}.tht-profile p.tht-profile__links{flex-direction:column}.entry-content .tht-profile a.tht-profile__btn{width:100%}}

/* ---------- 2026-10-09 カード解説ページ（/thoth-tarot/cards と子78ページ。design.php が 31151 の子孫に読み込む）
 * 色: 紫 #3d2952・金 #c9a227・盤 #14111f・地 #fffaf0。見出しは明朝。角丸 4/8/12/999、影 sm/md のみ。 */
.thc-hero{position:relative;margin:0 0 24px !important;padding:32px 16px 24px;border:1px solid rgba(201,162,39,.4);border-radius:12px;background:#14111f radial-gradient(at 50% 0%,#2d2248 0%,#14111f 70%,#0c0a14 100%);text-align:center}
.thc-hero::before{content:"";position:absolute;inset:8px;border:1px solid rgba(201,162,39,.22);border-radius:8px;pointer-events:none}
.thc-hero img{display:block;width:260px;max-width:60%;height:auto;margin:0 auto;border:1px solid rgba(201,162,39,.7) !important;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.5)}
.thc-hero figcaption{margin:16px 0 0;color:#f4e8d0;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;font-weight:700;line-height:1.5;letter-spacing:.08em}
.entry-content p.thc-lead{margin:0 0 24px;color:#333;font-size:18px;line-height:1.9}
.thc-data{width:100%;margin:0 0 32px !important;border-collapse:collapse;font-size:16px;line-height:1.7}
.thc-data caption{margin:0 0 8px;color:#3d2952;font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;font-weight:700;text-align:left;caption-side:top}
.entry-content table.thc-data th,.entry-content table.thc-data td,.thc-data th,.thc-data td{padding:8px 12px !important;font-size:16px !important;line-height:1.7;border:1px solid #e3dceb !important;vertical-align:top;text-align:left}
.thc-data th{width:8em;background:#fffaf0 !important;color:#3d2952;font-weight:700;white-space:nowrap}
.thc-data td{background:#fff !important;color:#333}
.thc-kw{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px !important;padding:0 !important;list-style:none}
.thc-kw li{margin:0 !important;padding:4px 12px;border:1px solid rgba(201,162,39,.7);border-radius:999px;background:#fffaf0;color:#3d2952;font-size:15px;line-height:1.6}
.thc-kw li::before{content:none !important}
.entry-content p.thc-advice{margin:0 0 24px;padding:16px 20px;border-left:4px solid #c9a227;border-radius:0 8px 8px 0;background:#fffaf0;color:#333;font-size:17px;line-height:1.9}
.thc-cta{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 32px !important}
.entry-content a.thc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:64px;padding:12px 24px;box-sizing:border-box;border:1px solid #7a6997;border-radius:8px;background:#fff;color:#3d2952;font-size:17px;font-weight:700;line-height:1.4;text-decoration:none}
.entry-content a.thc-btn:hover,.entry-content a.thc-btn:focus{background:#faf6ff;color:#3d2952}
.entry-content a.thc-btn--primary{border-color:#b89963;background:linear-gradient(#f4e8d0 0%,#e8d5a9 55%,#d9c088 100%);color:#2a1f3f;letter-spacing:.04em;box-shadow:0 1px 3px rgba(61,41,82,.12)}
.entry-content a.thc-btn--primary:hover,.entry-content a.thc-btn--primary:focus{background:linear-gradient(#fbf3e1 0%,#efdfb8 55%,#e2cb97 100%);color:#2a1f3f}
.thc-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:32px 0 16px}
.entry-content .thc-nav a{display:flex;flex-direction:column;justify-content:center;min-height:64px;padding:12px 16px;box-sizing:border-box;border:1px solid #d8cce4;border-radius:12px;background:#fff;color:#3d2952;text-decoration:none;box-shadow:0 1px 3px rgba(61,41,82,.12)}
.entry-content .thc-nav a:hover,.entry-content .thc-nav a:focus{border-color:#c9a227;background:#fffaf0}
.entry-content .thc-nav a.thc-nav__next{grid-column:2;text-align:right}
.thc-nav__dir{color:#5d4f76;font-size:14px;line-height:1.6}
.thc-nav__name{font-family:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;font-size:17px;font-weight:700;line-height:1.5}
.entry-content p.thc-back{margin:0 0 32px;text-align:center}
.entry-content p.thc-back a{display:inline-block;padding:12px 8px;color:#3d2952;font-size:16px}
.thc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:16px 12px;margin:0 0 32px !important;padding:0 !important;list-style:none}
.thc-grid li{margin:0 !important;padding:0 !important}
.thc-grid li::before{content:none !important}
.entry-content .thc-grid a{display:block;color:#3d2952;text-align:center;text-decoration:none}
.thc-grid img{display:block;width:100%;height:auto;aspect-ratio:2/3;margin:0 0 8px;border:1px solid rgba(201,162,39,.7) !important;border-radius:4px;box-sizing:border-box;box-shadow:0 1px 3px rgba(61,41,82,.12);transition:transform .15s ease-out,box-shadow .15s ease-out}
.entry-content .thc-grid a:hover img,.entry-content .thc-grid a:focus img{transform:translateY(-2px);box-shadow:0 2px 6px rgba(61,41,82,.16),0 0 8px rgba(201,162,39,.45)}
.thc-grid__name{display:block;font-size:15px;font-weight:700;line-height:1.5}
.thc-grid__sub{display:block;color:#5d4f76;font-size:14px;line-height:1.5}
@media (prefers-reduced-motion:reduce){.thc-grid img{transition:none}.entry-content .thc-grid a:hover img{transform:none}}
@media (min-width:768px){.thc-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media (max-width:480px){.thc-hero{padding:24px 12px 20px}.thc-hero img{max-width:64%}.thc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.thc-data th{width:6.5em}.thc-cta{flex-direction:column}.entry-content a.thc-btn{width:100%}}
.tht-item-more{margin:4px 0 0 !important;font-size:16px;line-height:1.6}
.entry-content .tht-item-more a{display:inline-block;padding:8px 0;color:#3d2952;text-decoration:underline;text-underline-offset:3px}
.thc-hero__note{display:block;margin-top:4px;color:#e3dcc9;font-family:"Noto Sans JP",sans-serif;font-size:14px;font-weight:400;letter-spacing:.02em}
