/* ============================================================
   ookubo-design.css  v1.0.0 (2026-08-20)【headの後半・Cocoonインラインより後】
   出力位置＝wp_head prio 99（Cocoon inline CSS の後・wp-custom-css の前）。
   各ブロックの元の出力位置（chance/tarot-grid=wp_head20、ツール群=本文、
   gloss/result-zoom=footer）はすべて「Cocoonより後」なので、カスケードの
   勝敗関係を変えずに1ファイルへ集約できる。site-fonts 由来だけは
   「Cocoonより前」が元位置のため ookubo-design-base.css（別ファイル）にある。
   編集ルール・トークンは base 側冒頭を参照。VERは ookubo-design.php で同期。
   ============================================================ */

/* === 由来: senjutsu-tap-target-fix.php（タップ領域の底上げ）  (旧 <style id="senjutsu-tap-target-fix-inline-css">) === */
.entry-content input[type="number"],.entry-content input[type="text"],.entry-content input[type="tel"],.entry-content input[type="date"],.entry-content input[type="time"],.entry-content input[type="datetime-local"],.entry-content input[type="email"],.entry-content input[type="search"],.entry-content input[type="url"],.entry-content input[type="password"],.entry-content select,.entry-content textarea{min-height:44px!important;font-size:max(16px,1em)!important;padding:8px 12px!important;box-sizing:border-box;line-height:1.4}.entry-content select{min-width:80px!important}.entry-content input[type="radio"],.entry-content input[type="checkbox"]{width:24px!important;height:24px!important;margin:6px;cursor:pointer;accent-color:#4a3a8a;vertical-align:middle}.entry-content label{cursor:pointer;vertical-align:middle}.entry-content label:has(input[type="radio"]),
.entry-content label:has(input[type="checkbox"]) {display:inline-block;padding:8px 6px;min-height:44px!important;line-height:1.6}.entry-content button,.entry-content input[type="button"],.entry-content input[type="submit"],.entry-content input[type="reset"]{min-height:48px!important;padding:8px 24px!important;margin:8px 0;cursor:pointer}.entry-content form>div+div,.entry-content form>p+p,.entry-content form>fieldset+fieldset{margin-top:12px}.new-entry-card-link,.widget-entry-card-link,.widget-entry-cards a.a-wrap{display:block;padding:12px!important;min-height:64px!important;box-sizing:border-box}/* 旧tap-fixのwidgetカードmargin(16px)は、本番では読み込み順でCocoon(4px)に常に負けて一度も効いていなかった。位置集約で勝ってしまい見た目が変わるため削除（2026-08-20実測） */@media (max-width:768px){.entry-content input[type="number"],.entry-content input[type="text"],.entry-content input[type="tel"],.entry-content input[type="email"],.entry-content select,.entry-content textarea{font-size:16px!important}.entry-content form{line-height:1.6}.new-entry-card-link,.widget-entry-card-link{min-height:72px!important;padding:14px!important}}

/* === 由来: ookubo-tarot-cardgrid.php（大アルカナ画像グリッド）  (旧 <style id="ck-tarot-grid-css">) === */
.ck-tarot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px;margin:1.2em 0}.ck-tarot-grid a{display:block;text-decoration:none;color:#5d4f76;border:1px solid #e3dcec;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.07);transition:transform .15s ease,box-shadow .15s ease}.ck-tarot-grid a:hover{transform:translateY(-3px);box-shadow:0 5px 14px rgba(122,105,151,.28)}.ck-tarot-grid a.is-current{border:2px solid #7a6997;box-shadow:0 4px 12px rgba(122,105,151,.30)}.ck-tarot-grid img{width:100%;height:auto;display:block}.ck-tarot-grid a.is-reversed img{transform:rotate(180deg)}.ck-tarot-grid .nm{display:block;padding:6px 6px 8px;font-size:.78em;font-weight:600;line-height:1.35;text-align:center}.ck-tarot-grid .nm small{display:block;font-weight:400;font-size:.86em;color:#8a7ca0;margin-top:1px}

/* === 由来: ookubo-tool-picks.php（文脈連動ツールカード）  (旧 <style id="ookubo-tool-picks-css">) === */
.ck-tool-picks{margin:2.2em 0}.ck-tool-picks__title{font-size:1.15em;font-weight:700;color:#4a2a6f;margin:0 0 .9em;padding-left:.55em;border-left:5px solid #7a5a9f;line-height:1.45}.ck-tool-picks__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media (max-width:600px){.ck-tool-picks__grid{grid-template-columns:1fr}}.ck-tool-picks__card{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:#fff;border:1px solid #e3d5e8;border-radius:12px;overflow:hidden;box-shadow:0 2px 6px rgba(122,90,159,.10);transition:transform .15s ease , box-shadow .15s ease}.ck-tool-picks__card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(122,90,159,.22)}.ck-tool-picks__thumb{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:linear-gradient(135deg,#efe6f5,#e3d5e8)}.ck-tool-picks__thumb--ph{aspect-ratio:16/9;background:linear-gradient(135deg,#7a5a9f,#b79bd0)}.ck-tool-picks__body{display:flex;flex-direction:column;flex:1 1 auto;padding:13px 15px}.ck-tool-picks__name{display:block;font-weight:700;font-size:1.02em;color:#4a2a6f;line-height:1.45;margin-bottom:5px}.ck-tool-picks__desc{display:block;font-size:.86em;color:#555;line-height:1.6;margin-bottom:10px;flex:1 1 auto}.ck-tool-picks__cta{display:inline-block;align-self:flex-start;font-size:.82em;font-weight:700;color:#fff;background:linear-gradient(135deg,#7a5a9f,#8568a8);border-radius:999px;padding:5px 14px}

/* === 由来: ookubo-result-zoom.php（結果表ズーム）  (旧 <style id="ck-result-zoom-css">) === */
.haio-svg-western,.haio-svg-southindian,#compsvg{cursor:zoom-in}.ck-rz-ov{position:fixed;inset:0;z-index:100000;background:rgba(20,16,28,.88);display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;-webkit-overflow-scrolling:touch;animation:ckrzfade .15s ease}@keyframes ckrzfade{from{opacity:0}to{opacity:1}}.ck-rz-inner{background:#fff;border-radius:12px;padding:14px;max-width:96vw;max-height:92vh;overflow:auto;box-shadow:0 10px 40px rgba(0,0,0,.4)}.ck-rz-inner>*{max-width:none!important;display:block}.ck-rz-x{position:fixed;top:14px;right:16px;z-index:100001;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#333;font-size:26px;line-height:44px;text-align:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.3)}.ck-rz-hint{position:fixed;bottom:18px;left:0;right:0;text-align:center;color:#fff;font-size:13px;opacity:.85;pointer-events:none}@media (max-width:480px){.ck-rz-ov{padding:6px}.ck-rz-inner{padding:8px;border-radius:8px}}@media (prefers-reduced-motion:reduce){.ck-rz-ov{animation:none}}

/* === 由来: ookubo-tesou-cards.php（手相カード）  (旧 <style id="ookubo-tesou-cards-css">) === */
.ck-tesou-cards{margin:2.2em 0}.ck-tesou-cards__title{font-size:1.15em;font-weight:700;color:#8f3f5a;margin:0 0 .9em;padding-left:.55em;border-left:5px solid #b8556f;line-height:1.45}.ck-tesou-cards__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media (max-width:600px){.ck-tesou-cards__grid{grid-template-columns:1fr}}.ck-tesou-cards__card{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:#fff;border:1px solid #ecd8e0;border-radius:12px;overflow:hidden;box-shadow:0 2px 6px rgba(150,80,110,.10);transition:transform .15s ease , box-shadow .15s ease}.ck-tesou-cards__card:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(150,80,110,.22)}.ck-tesou-cards__thumb{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:linear-gradient(135deg,#f7e7ee,#ecd8e0)}.ck-tesou-cards__thumb--ph{aspect-ratio:16/9;background:linear-gradient(135deg,#b8556f,#8f5aa0)}.ck-tesou-cards__body{display:flex;flex-direction:column;flex:1 1 auto;padding:13px 15px}.ck-tesou-cards__name{display:block;font-weight:700;font-size:1.02em;color:#8f3f5a;line-height:1.45;margin-bottom:5px}.ck-tesou-cards__desc{display:block;font-size:.86em;color:#555;line-height:1.6;margin-bottom:10px;flex:1 1 auto}.ck-tesou-cards__cta{display:inline-block;align-self:flex-start;font-size:.82em;font-weight:700;color:#fff;background:linear-gradient(135deg,#b8556f,#8f5aa0);border-radius:999px;padding:5px 14px}

/* === 由来: ookubo-aijson-cta.php  (旧 <style id="ookubo-aijson-cta-css">) === */
.ookubo-aijson-cta{margin:2em 0;}@media(max-width:640px){.ookubo-mond-btn{display:block !important;text-align:center;}}

/* === 由来: ookubo-mond-cta.php  (旧 <style id="ookubo-mond-btn-css">) === */
@media(max-width:640px){.ookubo-mond-btn{display:block !important;text-align:center;}}

/* === 由来: ookubo-tarot.php（タロットUI一式）  (旧 <style id="ck-tarot-suite-style">) === */
.ck-tarot-suite{margin:2.2em auto;max-width:880px}.ck-tarot-suite-title{text-align:center;margin:0 0 .9em;color:#5b3d8a;font-family:"Hiragino Mincho Pro","Yu Mincho",serif;font-size:1.08em;font-weight:600;letter-spacing:.1em;line-height:1.4;position:relative;padding:0 0 .4em}.ck-tarot-suite-title::after{content:"";display:block;margin:.5em auto 0;width:46px;height:1px;background:linear-gradient(90deg,transparent,#d4af37 50%,transparent)}.ck-tarot-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 1.4em;padding:0 .4em;align-items:stretch}.ck-tarot-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;margin:0;padding:9px 12px 10px;color:#5b3d8a;background:linear-gradient(180deg,#faf6ff 0%,#ede0fa 100%);border:1.5px solid #d8c4ea;border-radius:12px;cursor:pointer;box-shadow:0 1px 3px rgba(74,42,111,.12);transition:transform .15s ease , box-shadow .15s ease , background .15s ease , color .15s ease , border-color .15s ease;font-family:inherit;text-align:center;min-height:66px;position:relative}.ck-tarot-suite .ck-tarot-tab{margin:0}.ck-tarot-tab.is-active{color:#fff;background:linear-gradient(180deg,#7a5a9f 0%,#4a2a6f 100%);border-color:#4a2a6f;box-shadow:0 4px 12px rgba(74,42,111,.4) , inset 0 1px 1px rgba(255,255,255,.2)}.ck-tarot-tab__label{display:block;font-size:.96em;font-weight:600;letter-spacing:.06em;line-height:1.2}.ck-tarot-tab__sub{display:block;font-size:.7em;font-weight:400;letter-spacing:.02em;line-height:1.35;color:#7c6792;margin-top:2px}.ck-tarot-tab.is-active .ck-tarot-tab__sub{color:rgba(255,255,255,.82)}.ck-tarot-tab__badge{display:inline-block;padding:2px 9px;margin:0 0 4px;border-radius:999px;font-size:.62em;font-weight:700;letter-spacing:.08em;line-height:1.5}.ck-tarot-tab__badge.is-default{background:#4a7a8f;color:#fff}.ck-tarot-tab.is-active .ck-tarot-tab__badge.is-default{background:#fff;color:#3a6275}.ck-tarot-tab__badge.is-featured{background:linear-gradient(135deg,#d4af37 0%,#b8941f 100%);color:#2a1f3f;box-shadow:0 1px 3px rgba(212,175,55,.4)}.ck-tarot-tab.is-featured{border-color:#d4af37;background:linear-gradient(180deg,#fff8e7 0%,#f5e6c6 100%);box-shadow:0 3px 10px rgba(212,175,55,.3) , 0 1px 3px rgba(74,42,111,.12);min-height:76px;padding:11px 14px 12px;color:#7a5a00}.ck-tarot-tab.is-featured .ck-tarot-tab__label{font-size:1.04em;color:#5a3f00}.ck-tarot-tab.is-featured .ck-tarot-tab__sub{color:#8a6e15}.ck-tarot-tab.is-featured:hover{background:linear-gradient(180deg,#fffbf3 0%,#fae9c8 100%);border-color:#b8941f;box-shadow:0 5px 14px rgba(212,175,55,.4) , 0 2px 4px rgba(74,42,111,.15)}.ck-tarot-tab.is-featured.is-active{color:#2a1f3f;background:linear-gradient(180deg,#f4d36c 0%,#b8941f 100%);border-color:#8a6e15;box-shadow:0 5px 16px rgba(184,148,31,.45) , inset 0 1px 1px rgba(255,255,255,.4)}.ck-tarot-tab.is-featured.is-active .ck-tarot-tab__label{color:#2a1f3f}.ck-tarot-tab.is-featured.is-active .ck-tarot-tab__sub{color:rgba(42,31,63,.75)}.ck-tarot-tab.is-featured.is-active .ck-tarot-tab__badge.is-featured{background:#2a1f3f;color:#f4d36c}.ck-tarot-stage{margin:0 auto;padding:1.8em 1.2em 1.6em;background:radial-gradient(ellipse at top,#2d1b4e 0%,#1a0f2e 70%,#0d0719 100%);border-radius:18px;border:1px solid rgba(212,175,55,.35);box-shadow:0 12px 32px rgba(20,10,40,.35) , inset 0 0 60px rgba(0,0,0,.5);position:relative;overflow:hidden}.ck-tarot-stage[hidden]{display:none}.ck-tarot-stage::before{content:"";position:absolute;inset:8px;border:1px solid rgba(212,175,55,.18);border-radius:14px;pointer-events:none}.ck-tarot-stage::after{content:"";position:absolute;top:0;left:0;right:0;height:120px;background:radial-gradient(ellipse at center top,rgba(212,175,55,.18) 0%,transparent 70%);pointer-events:none}.ck-tarot-headline{position:relative;text-align:center;color:#f4e8d0;font-family:"Hiragino Mincho Pro","Yu Mincho",serif;font-size:1.05em;letter-spacing:.12em;margin:0 0 1.2em;text-shadow:0 1px 2px rgba(0,0,0,.6)}.ck-tarot-headline .deco{display:inline-block;margin:0 .5em;color:#d4af37;font-size:.9em}.ck-tarot-shuffle-wrap{position:relative;text-align:center;margin:0 0 .8em}.ck-tarot-shuffle{display:inline-block;padding:14px 36px;font-size:1.05em;font-weight:600;letter-spacing:.1em;line-height:1.4;color:#2a1f3f;background:linear-gradient(180deg,#f4e8d0 0%,#e8d5a9 55%,#d9c088 100%);border:1.5px solid #b89963;border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.35) , inset 0 1px 2px rgba(255,255,255,.6);cursor:pointer;text-shadow:0 1px 0 rgba(255,255,255,.5);transition:transform .12s ease-out , box-shadow .12s ease-out , filter .12s ease-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;font-family:inherit}.ck-tarot-shuffle:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(0,0,0,.4) , inset 0 1px 2px rgba(255,255,255,.6);filter:brightness(1.05)}.ck-tarot-shuffle:active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(105,84,40,.45)}.ck-tarot-stage[data-state="idle"] .ck-tarot-shuffle{animation:ck-tarot-pulse 1.8s ease-in-out infinite}@keyframes ck-tarot-pulse{0%,100%{box-shadow:0 4px 10px rgba(0,0,0,0.35),inset 0 1px 2px rgba(255,255,255,0.6),0 0 0 0 rgba(244,232,208,0.5);}50%{box-shadow:0 4px 10px rgba(0,0,0,0.35),inset 0 1px 2px rgba(255,255,255,0.6),0 0 0 10px rgba(244,232,208,0);}}@keyframes ck-shake{0%,100%{transform:translateX(0);}15%{transform:translateX(-9px);}30%{transform:translateX(9px);}45%{transform:translateX(-7px);}60%{transform:translateX(7px);}75%{transform:translateX(-4px);}90%{transform:translateX(4px);}}.ck-tarot-shuffle.ck-shake{animation:ck-shake .55s ease-in-out}.ck-tarot-prompt{position:relative;text-align:center;margin:.2em 0 1.2em;min-height:1.6em;font-family:"Hiragino Mincho Pro","Yu Mincho",serif;font-size:.92em;letter-spacing:.1em;line-height:1.5}.ck-tarot-prompt-idle{color:#f4e8d0;text-shadow:0 1px 2px rgba(0,0,0,.7)}.ck-tarot-prompt-armed{color:#d4af37;text-shadow:0 1px 2px rgba(0,0,0,.7);display:none}.ck-tarot-stage[data-state="armed"] .ck-tarot-prompt-idle{display:none}.ck-tarot-stage[data-state="armed"] .ck-tarot-prompt-armed{display:block}.ck-tarot-cross{position:relative;display:grid;gap:1.1em .7em;margin:0 auto}.ck-tarot-cross[data-layout="greek-cross"]{grid-template-columns:1fr 1fr 1fr;grid-template-areas:". p3 ." "p1 p5 p2" ". p4 .";max-width:440px}.ck-tarot-cross[data-layout="row"]{grid-template-columns:repeat(3,1fr);grid-template-areas:"p1 p2 p3";max-width:380px}.ck-tarot-cross[data-layout="lovers"]{grid-template-columns:1fr 1fr;grid-template-areas:"p1 p2" "p3 p4" "p5 p6";max-width:320px;gap:1em .8em}.ck-tarot-cross[data-layout="single"]{grid-template-columns:1fr;grid-template-areas:"p1";max-width:160px}.ck-tarot-cross[data-layout="diamond"]{grid-template-columns:repeat(3,1fr);grid-template-areas:". p2 ." "p4 p1 p5" ". p3 .";max-width:360px;gap:.7em .5em}.ck-tarot-cross[data-layout="heart"]{grid-template-columns:repeat(5,1fr);grid-template-areas:". p1 . p2 ." "p3 . . . p4" ". p5 . p6 ." ". . p7 . .";max-width:420px;gap:.5em .3em}.ck-tarot-cross[data-layout="heart"] .ck-tarot-card img{width:56px;height:112px}.ck-tarot-cross[data-layout="hexagram"]{grid-template-columns:repeat(3,1fr);grid-template-areas:". p1 ." "p6 . p2" "p5 . p3" ". p4 .";max-width:340px;gap:.5em .4em}.ck-tarot-cross[data-layout="hexagram"] .ck-tarot-card img{width:56px;height:112px}.ck-tarot-cross[data-layout="horoscope-wheel"]{grid-template-columns:repeat(5,1fr);grid-template-areas:". p12 p1 p2 ." "p11 . . . p3" "p10 . . . p4" "p9 . . . p5" ". p8 p7 p6 .";max-width:480px;gap:.4em .3em}.ck-tarot-cross[data-layout="horoscope-wheel"] .ck-tarot-card img{width:50px;height:100px}.ck-tarot-cross[data-layout="horoscope-wheel"] .ck-tarot-label{font-size:.64em;min-height:2em;letter-spacing:0;line-height:1.25}.ck-tarot-cross[data-layout="celtic-cross"]{grid-template-columns:repeat(5,1fr);grid-template-areas:".  p3 .  .  p10" "p5 p1 p2 p6 p9" ".  p4 .  .  p8" ".  .  .  .  p7";max-width:440px;gap:.55em .35em}.ck-tarot-cross[data-layout="celtic-cross"] .ck-tarot-card img{width:54px;height:108px}.ck-tarot-cross[data-layout="celtic-cross"] .ck-tarot-label{font-size:.74em;min-height:2em;letter-spacing:.02em;line-height:1.3}.ck-tarot-cross[data-layout="v-shape"]{grid-template-columns:repeat(7,1fr);grid-template-areas:"p6 .  .  .  .  .  p7" ".  p4 .  .  .  p5 ." ".  .  p2 .  p3 .  ." ".  .  .  p1 .  .  .";max-width:520px;gap:.4em .2em}.ck-tarot-cross[data-layout="v-shape"] .ck-tarot-card img{width:54px;height:108px}.ck-tarot-cross[data-layout="v-shape"] .ck-tarot-label{font-size:.66em;min-height:2.4em;letter-spacing:0;line-height:1.25}.ck-tarot-card{display:flex;flex-direction:column;align-items:center;gap:.45em}.ck-tarot-card a{display:inline-block;padding:0;background:transparent;border:1px solid rgba(212,175,55,.45);border-radius:5px;box-shadow:0 4px 12px rgba(0,0,0,.55) , 0 0 0 1px rgba(0,0,0,.3);transition:transform .18s ease , box-shadow .18s ease , filter .18s ease , border-color .18s ease , opacity .25s ease;cursor:pointer;line-height:0}.ck-tarot-card a:hover{transform:translateY(-5px) scale(1.06);box-shadow:0 14px 28px rgba(212,175,55,.42) , 0 5px 14px rgba(0,0,0,.55);border-color:rgba(244,232,208,.85);filter:brightness(1.08)}.ck-tarot-card a:focus-visible{outline:2px solid #f4e8d0;outline-offset:3px}.ck-tarot-card a:active{transform:translateY(-1px) scale(1.01)}.ck-tarot-card img{display:block;width:60px;height:120px;border-radius:4px;background:#0f0820}.ck-tarot-stage[data-state="idle"] .ck-tarot-card a{pointer-events:none;cursor:not-allowed;opacity:.45;filter:grayscale(.5) brightness(.7);border-color:rgba(120,100,140,.4);box-shadow:0 2px 8px rgba(0,0,0,.45);transform:none}.ck-tarot-stage[data-state="idle"] .ck-tarot-card a:hover{transform:none;box-shadow:0 2px 8px rgba(0,0,0,.45);filter:grayscale(.5) brightness(.7);border-color:rgba(120,100,140,.4)}.ck-tarot-stage[data-state="idle"] .ck-tarot-label{opacity:.5}.ck-tarot-notice{position:fixed;left:0;top:0;right:0;bottom:0;z-index:99999;display:flex;align-items:center;justify-content:center;pointer-events:none}.ck-tarot-notice[hidden]{display:none}.ck-tarot-notice-box{pointer-events:auto;cursor:pointer;max-width:86vw;width:340px;padding:20px 24px;text-align:center;color:#f4e8d0;background:linear-gradient(180deg,#3a2b57 0%,#2a1f3f 100%);border:1.5px solid #b89963;border-radius:12px;box-shadow:0 18px 44px rgba(0,0,0,.55);font-family:"Hiragino Mincho Pro","Yu Mincho",serif}.ck-tarot-notice-box strong{display:block;font-size:1.06em;font-weight:600;letter-spacing:.04em;margin-bottom:8px;color:#f4e8d0}.ck-tarot-notice-box span{display:block;font-size:.84em;line-height:1.7;color:rgba(244,232,208,.82)}.ck-tarot-notice-in .ck-tarot-notice-box{animation:ck-tarot-notice-pop .22s ease-out}@keyframes ck-tarot-notice-pop{from{opacity:0;transform:scale(0.94);}to{opacity:1;transform:none;}}.ck-tarot-label{color:#f4e8d0;font-family:"Hiragino Mincho Pro","Yu Mincho",serif;font-size:.82em;letter-spacing:.04em;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.7);line-height:1.35;min-height:2.4em}.ck-tarot-label .num{display:block;color:#d4af37;font-size:.9em;font-weight:600;letter-spacing:.1em;margin-bottom:.1em}.ck-tarot-hint{position:relative;text-align:center;color:rgba(244,232,208,.7);font-size:.78em;letter-spacing:.08em;margin:1.4em 0 0;font-family:"Hiragino Mincho Pro","Yu Mincho",serif}.ck-tarot-export-wrap{position:relative;display:none;text-align:center;margin:1.2em 0 0;padding:1em .6em 0;border-top:1px dashed rgba(212,175,55,.3)}.ck-tarot-stage[data-state="armed"] .ck-tarot-export-wrap{display:block}.ck-tarot-export-json{display:inline-block;padding:10px 22px;font-size:.92em;font-weight:600;letter-spacing:.06em;color:#2a1f3f;background:linear-gradient(180deg,#f4e8d0 0%,#e8d5a9 100%);border:1.5px solid #b89963;border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,.3);cursor:pointer;transition:transform .12s ease , filter .12s ease;font-family:inherit}.ck-tarot-export-json:hover{transform:translateY(-1px);filter:brightness(1.05)}.ck-tarot-export-note{margin:.6em 0 0;color:rgba(244,232,208,.65);font-size:.74em;line-height:1.5}.ck-tarot-card-link.is-viewed{position:relative}.ck-tarot-card-link.is-viewed::after{content:"✓";position:absolute;top:-7px;right:-7px;width:20px;height:20px;line-height:20px;text-align:center;border-radius:50%;background:linear-gradient(180deg,#f4e8d0,#d4af37);color:#2a1f3f;font-size:12px;font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.5);pointer-events:none}.ck-tarot-next{display:none;position:relative;margin:1.4em 0 0;padding:1.1em 1em 1em;background:linear-gradient(180deg,rgba(212,175,55,.14),rgba(212,175,55,.05));border:1px solid rgba(212,175,55,.5);border-radius:12px;text-align:center}.ck-tarot-stage[data-complete="1"] .ck-tarot-next{display:block;animation:ck-tarot-next-in .45s ease}@keyframes ck-tarot-next-in{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}.ck-tarot-next-title{color:#f4e8d0;font-family:"Hiragino Mincho Pro","Yu Mincho",serif;font-size:1.02em;letter-spacing:.08em;margin:0 0 .5em;text-shadow:0 1px 2px rgba(0,0,0,.6)}.ck-tarot-next-lead{margin:0 0 .9em;color:rgba(244,232,208,.85);font-size:.85em;line-height:1.7}.ck-tarot-next-link{display:block;margin:0 auto 8px;padding:10px 14px;max-width:520px;font-size:.88em;font-weight:600;line-height:1.5;color:#2a1f3f;background:linear-gradient(180deg,#f4e8d0 0%,#e8d5a9 100%);border:1.5px solid #b89963;border-radius:8px;text-decoration:none;box-shadow:0 2px 6px rgba(0,0,0,.3);transition:transform .12s ease , filter .12s ease}.ck-tarot-next-link:hover{transform:translateY(-1px);filter:brightness(1.05);color:#2a1f3f;text-decoration:none}.ck-tarot-next-link.is-member{background:linear-gradient(180deg,#fffaf0 0%,#f5e6c6 100%);border-color:#c9a227}.ck-tarot-next-note{margin:.6em 0 0;color:rgba(244,232,208,.6);font-size:.72em;line-height:1.5}@media (max-width:720px){.ck-tarot-tabs{grid-template-columns:1fr 1fr;gap:6px}.ck-tarot-tab.is-featured{grid-column:span 2}}@media (max-width:520px){.ck-tarot-suite{margin:1.6em auto}.ck-tarot-stage{padding:1.2em .6em 1.4em}.ck-tarot-tabs{grid-template-columns:1fr;gap:6px;padding:0 .2em}.ck-tarot-tab{padding:9px 14px 10px;min-height:58px;gap:2px}.ck-tarot-tab.is-featured{grid-column:auto;min-height:72px;padding:11px 14px 13px}.ck-tarot-tab__label{font-size:.94em;letter-spacing:.06em}.ck-tarot-tab__sub{font-size:.7em;line-height:1.3}.ck-tarot-tab.is-featured .ck-tarot-tab__label{font-size:1em}.ck-tarot-suite-title{font-size:1em;letter-spacing:.08em;margin:0 0 .7em}.ck-tarot-cross[data-layout="greek-cross"]{gap:.7em .4em;max-width:340px}.ck-tarot-cross[data-layout="row"]{gap:.7em .4em;max-width:320px}.ck-tarot-cross[data-layout="lovers"]{gap:.7em .5em;max-width:280px}.ck-tarot-cross[data-layout="celtic-cross"]{gap:.45em .3em;max-width:340px}.ck-tarot-cross[data-layout="celtic-cross"] .ck-tarot-card img{width:46px;height:92px}.ck-tarot-cross[data-layout="celtic-cross"] .ck-tarot-label{font-size:.68em;min-height:2.4em}.ck-tarot-cross[data-layout="v-shape"]{gap:.3em .12em;max-width:360px}.ck-tarot-cross[data-layout="v-shape"] .ck-tarot-card img{width:40px;height:80px}.ck-tarot-cross[data-layout="v-shape"] .ck-tarot-label{font-size:.58em;min-height:2.6em;letter-spacing:0;line-height:1.2}.ck-tarot-cross[data-layout="diamond"]{gap:.5em .35em;max-width:300px}.ck-tarot-cross[data-layout="heart"]{gap:.4em .25em;max-width:330px}.ck-tarot-cross[data-layout="heart"] .ck-tarot-card img{width:46px;height:92px}.ck-tarot-cross[data-layout="heart"] .ck-tarot-label{font-size:.66em;min-height:2.4em}.ck-tarot-cross[data-layout="hexagram"]{gap:.4em .3em;max-width:300px}.ck-tarot-cross[data-layout="hexagram"] .ck-tarot-card img{width:46px;height:92px}.ck-tarot-cross[data-layout="hexagram"] .ck-tarot-label{font-size:.66em;min-height:2.2em}.ck-tarot-cross[data-layout="horoscope-wheel"]{gap:.3em .15em;max-width:360px}.ck-tarot-cross[data-layout="horoscope-wheel"] .ck-tarot-card img{width:40px;height:80px}.ck-tarot-cross[data-layout="horoscope-wheel"] .ck-tarot-label{font-size:.56em;min-height:2.4em;letter-spacing:0;line-height:1.2}.ck-tarot-card img{width:54px;height:108px}.ck-tarot-label{font-size:.74em}.ck-tarot-shuffle{padding:12px 26px;font-size:.98em;letter-spacing:.06em}.ck-tarot-headline{font-size:.95em;letter-spacing:.08em}.ck-tarot-export-json{padding:9px 18px;font-size:.88em}}@media (max-width:380px){.ck-tarot-card img{width:46px;height:92px}.ck-tarot-cross[data-layout="lovers"]{max-width:240px}.ck-tarot-cross[data-layout="celtic-cross"]{max-width:290px;gap:.4em .25em}.ck-tarot-cross[data-layout="celtic-cross"] .ck-tarot-card img{width:40px;height:80px}.ck-tarot-cross[data-layout="celtic-cross"] .ck-tarot-label{font-size:.62em;letter-spacing:0;min-height:2.6em}.ck-tarot-cross[data-layout="v-shape"]{max-width:340px;gap:.25em .08em}.ck-tarot-cross[data-layout="v-shape"] .ck-tarot-card img{width:36px;height:72px}.ck-tarot-cross[data-layout="v-shape"] .ck-tarot-label{font-size:.54em;letter-spacing:0;min-height:2.8em;line-height:1.2}.ck-tarot-cross[data-layout="diamond"]{max-width:260px;gap:.4em .25em}.ck-tarot-cross[data-layout="heart"]{max-width:290px;gap:.3em .15em}.ck-tarot-cross[data-layout="hexagram"]{max-width:270px;gap:.3em .2em}.ck-tarot-cross[data-layout="hexagram"] .ck-tarot-card img{width:40px;height:80px}.ck-tarot-cross[data-layout="horoscope-wheel"]{max-width:320px;gap:.25em .1em}.ck-tarot-cross[data-layout="horoscope-wheel"] .ck-tarot-card img{width:34px;height:68px}.ck-tarot-cross[data-layout="horoscope-wheel"] .ck-tarot-label{font-size:.5em;min-height:2.6em}.ck-tarot-cross[data-layout="heart"] .ck-tarot-card img{width:40px;height:80px}.ck-tarot-cross[data-layout="heart"] .ck-tarot-label{font-size:.6em;letter-spacing:0;min-height:2.6em}}

/* === 由来: ookubo-senjutsu-glossary.php（占術ツールチップ）  (旧 <style id="ck-gloss-css">) === */
.ck-gloss{text-decoration:underline dotted #7a5a9f;text-underline-offset:3px;text-decoration-thickness:1px;padding:10px 0;cursor:pointer}.ck-gloss::after{content:"?";font-size:.6em;font-weight:700;color:#fff;background:#7a5a9f;border-radius:50%;display:inline-block;width:1.3em;height:1.3em;line-height:1.3em;text-align:center;margin:0 .1em 0 .28em;vertical-align:middle}.ck-gloss[aria-expanded="true"]{text-decoration-style:solid;text-decoration-color:#5a2d82;color:#5a2d82}.ck-gloss-pop{position:absolute;z-index:99999;max-width:300px;background:#fff;border:1px solid #d8c7e4;border-radius:10px;box-shadow:0 6px 20px rgba(122,90,159,.25);padding:12px 14px;font-size:.86em;line-height:1.75;color:#333}.ck-gloss-pop__name{font-weight:700;color:#4a2a6f;display:block;margin-bottom:4px}.ck-gloss-pop__more{display:inline-block;margin-top:8px;font-size:.95em;font-weight:700;color:#fff;background:linear-gradient(135deg,#7a5a9f,#8568a8);border-radius:999px;padding:4px 12px;text-decoration:none}.ck-gloss-pop[hidden]{display:none}@media (max-width:480px){.ck-gloss-pop{max-width:86vw}}

/* === 由来: ookubo-chance-page-style.php（チャンス配下共通・.ookubo-chanceスコープ）  (旧 <style id="ookubo-chance-page-style">) === */
.ck-teller-cards li a{position:relative}.ck-teller-cards li a:hover{transform:translateY(-3px);box-shadow:0 8px 18px rgba(122,105,151,.25)!important;border-color:#7a6997!important}.ck-teller-cards li a::after{content:"この先生で予約 →";position:absolute;bottom:8px;right:8px;background:#7a6997;color:#fff;padding:.25em .65em;border-radius:12px;font-size:.72em;font-weight:bold;opacity:0;transform:translateY(4px);transition:opacity .18s ease , transform .18s ease;pointer-events:none}.ck-teller-cards li a:hover::after{opacity:.95;transform:translateY(0)}@media (hover:none){.ck-teller-cards li a::after{display:none}}.ck-page-toc{margin:0 0 1em 0;padding:.7em .85em;background:#faf6ff;border:1px solid #cebed7;border-radius:12px}.ck-page-toc ul{display:grid;grid-template-columns:repeat(6,1fr);gap:.42em;list-style:none;padding:0;margin:0}.ck-page-toc li{margin:0;list-style:none}.ck-page-toc a{display:block;padding:.55em .4em;background:#fff;border:1px solid #bfb2c7;border-radius:8px;text-decoration:none;color:#5d4f76;text-align:center;font-weight:600;font-size:.9em;line-height:1.4;white-space:nowrap;transition:background .15s ease}.ck-page-toc a:hover{background:#f0e6f7}@media (max-width:768px){.ck-page-toc ul{grid-template-columns:repeat(3,1fr)}}@media (max-width:420px){.ck-page-toc ul{grid-template-columns:repeat(2,1fr)}}.ookubo-chance .entry-content>br{display:none}.ookubo-chance .entry-content>p{margin:0 0 1.15em!important}.ookubo-chance .entry-content > ul:not(.ck-sns-icons),
.ookubo-chance .entry-content > ol{margin:0 0 1.15em!important}.ookubo-chance .entry-content > ul:not(.ck-sns-icons) > li,
.ookubo-chance .entry-content > ol > li{margin:0 0 .25em!important}.ookubo-chance .entry-content details:not(.ck-faq-item)[open] > summary{margin-bottom:1.2em}.ookubo-chance .widget-below-page-content-title{display:none}.ookubo-chance .entry-content a[href*="ws.formzu.net"]{background:linear-gradient(135deg,#96566a 0%,#a2606e 100%)!important;box-shadow:0 2px 6px rgba(140,63,82,.3)!important}.ookubo-chance [data-ck-banner="next-business-day:auto"] a>span:last-child{background:linear-gradient(135deg,#96566a 0%,#a2606e 100%)!important;box-shadow:0 2px 6px rgba(140,63,82,.3)!important}/* フェーズ2(2026-08-20): 見出しジャンプ率を全サイトへ昇格（旧v1.14.0はチャンス限定だった）。
   本文17pxに対し スマホ h2 24/h3 21/h4 19（×1.41/1.24/1.12）、PC h2 26/h3 23（h4はCocoon既定20）。
   ツール内部の見出しは各コンポーネントがより高い特異度で指定しており影響しない（実測で確認）。 */
@media (max-width:480px){.article h2{font-size:24px;line-height:1.3}.article h3{font-size:21px;line-height:1.3}.article h4{font-size:19px;line-height:1.35}}
@media (min-width:481px){.article h2{font-size:26px;line-height:1.3}.article h3{font-size:23px;line-height:1.3}}.ck-store-gallery{margin:1.9em 0}.ck-store-gallery__row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px;-webkit-overflow-scrolling:touch}.ck-store-gallery__row::-webkit-scrollbar{height:6px}.ck-store-gallery__row::-webkit-scrollbar-thumb{background:#d8c7e4;border-radius:3px}.ck-store-gallery__item{flex:0 0 86%;max-width:460px;scroll-snap-align:center;margin:0}@media (min-width:600px){.ck-store-gallery__item{flex-basis:440px}}.ck-store-gallery__item img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;box-shadow:0 2px 6px rgba(61,41,82,.16)}.ck-store-gallery__hint{font-size:.85em;color:#7a6997;margin:.3em 0 0;text-align:center}.ck-gbprev{margin:2.4em 0}.ck-gbprev__sub{font-size:.9em;color:#666;margin:0 0 .9em}.ck-gbprev__sub a{color:#5a2d82;font-weight:600;text-decoration:underline;display:inline-block;padding:10px 0}.ck-gbprev__stars{color:#f5a623;letter-spacing:1px}.ck-gbprev__row{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px;-webkit-overflow-scrolling:touch}.ck-gbprev__row::-webkit-scrollbar{height:6px}.ck-gbprev__row::-webkit-scrollbar-thumb{background:#d8c7e4;border-radius:3px}.ck-gbprev__card{flex:0 0 84%;max-width:300px;scroll-snap-align:start;background:#fff;border:1px solid #e3d5e8;border-radius:12px;padding:14px 16px;box-shadow:0 2px 6px rgba(61,41,82,.16);box-sizing:border-box}@media (min-width:600px){.ck-gbprev__card{flex-basis:300px}}.ck-gbprev__cstars{color:#f5a623;font-size:.95em;margin:0 0 6px}.ck-gbprev__body{font-size:.9em;color:#333;line-height:1.75;margin:0 0 10px}.ck-gbprev__meta{font-size:.85em;color:#666;font-style:normal}.ck-gbprev__meta cite{font-style:normal;color:#5a2d82;font-weight:600;font-size:1em}.ookubo-chance .entry-content blockquote.ck-gbprev__card{margin:0!important;quotes:none}.ookubo-chance .entry-content blockquote.ck-gbprev__card::before,.ookubo-chance .entry-content blockquote.ck-gbprev__card::after{content:none;display:none}.ookubo-chance .ck-page-toc a{padding:.75em .4em}.ookubo-chance .ck-faq-item{border:1px solid #d8c7e4;border-radius:12px;background:#fff;margin:0 0 .7em;box-shadow:0 1px 3px rgba(61,41,82,.12);overflow:hidden}.ookubo-chance .ck-faq-item>summary{list-style:none;cursor:pointer;position:relative;padding:.95em 3em .95em 1.1em;font-weight:700;color:#4a2a6f;line-height:1.6}.ookubo-chance .ck-faq-item>summary::-webkit-details-marker{display:none}.ookubo-chance .ck-faq-item>summary::after{content:"";position:absolute;right:1.15em;top:50%;width:12px;height:12px;margin-top:-9px;border-right:3px solid #7a6997;border-bottom:3px solid #7a6997;transform:rotate(45deg);transition:transform .18s ease}.ookubo-chance .ck-faq-item[open]>summary::after{transform:rotate(-135deg);margin-top:-3px}.ookubo-chance .ck-faq-item[open]>summary{border-bottom:1px solid #ece3f2}.ookubo-chance .ck-faq-item>summary:hover{background:#faf6ff}.ookubo-chance .ck-faq-item>p{margin:0!important;padding:.9em 1.1em 1.05em;line-height:1.85}.ookubo-chance .entry-content a.ck-btn-book{display:block;padding:.95em .8em;background:linear-gradient(135deg,#96566a 0%,#a2606e 100%);color:#fff;text-align:center;text-decoration:none;border-radius:8px;font-weight:bold;font-size:.95em;line-height:1.4;box-shadow:0 2px 6px rgba(140,63,82,.3);transition:transform .15s ease , box-shadow .15s ease;border:0}.ookubo-chance .entry-content a.ck-btn-book:hover,.ookubo-chance .entry-content a.ck-btn-book:focus,.ookubo-chance .entry-content a.ck-btn-book:visited{color:#fff;text-decoration:none}.ookubo-chance .entry-content a.ck-btn-book--day{padding:.85em 1em;letter-spacing:.04em;line-height:inherit}.ookubo-chance .entry-content a.ck-btn-book>span{display:block;color:#fff}.ookubo-chance .entry-content a.ck-btn-secondary{display:block;padding:.95em 1.1em;margin:0;background:#fff;color:#3d2952;border:2px solid #7a6997;border-radius:8px;text-align:center;text-decoration:none;font-weight:700;font-size:1em;line-height:1.4;box-shadow:0 1px 3px rgba(61,41,82,.12);transition:background .15s ease , box-shadow .15s ease}.ookubo-chance .entry-content a.ck-btn-secondary:hover,.ookubo-chance .entry-content a.ck-btn-secondary:focus{background:#faf6ff;color:#3d2952;text-decoration:none;box-shadow:0 2px 6px rgba(61,41,82,.16)}.ookubo-chance .entry-content a.ck-btn-secondary:visited{color:#3d2952}.ookubo-chance .blogcard-snippet{font-size:14px;line-height:1.6}.ookubo-chance .blogcard-title{font-size:15px}.ookubo-chance .ck-day-tellers{font-size:.88em}.ookubo-chance .ck-hajimete-link a{padding:10px 0}.ookubo-chance .entry-content h2>a,.ookubo-chance .entry-content h3>a{display:inline-block;padding:8px 0;margin:-8px 0}.ookubo-chance .tmk-cta{margin:1.8em 0;padding:16px 20px;border-left:4px solid #9c4854;background:#fbf6f7;border-radius:0 12px 12px 0;line-height:1.85}.ookubo-chance .tmk-cta a{color:#9c4854;font-weight:700;text-decoration:underline;text-underline-offset:2px}.ookubo-chance .tmk-cta .arrow{display:inline-block;margin-top:8px;font-weight:700;text-decoration:none}

/* === 由来: ookubo-chance-page-style.php（フローティング）  (旧 <style id="ookubo-chance-floating-style">) === */
#floating-cta-container{position:fixed;bottom:130px;right:0;z-index:2147483647;display:flex;flex-direction:column;gap:4px;align-items:flex-end}#floating-cta-container a{display:flex;align-items:center;justify-content:flex-start;min-width:170px;padding:12px 26px 12px 20px;color:#fff;font-size:17px;font-weight:900;text-decoration:none;letter-spacing:.03em;white-space:nowrap;border:1.5px solid rgba(255,255,255,.8);border-right:none;border-radius:30px 0 0 30px;box-shadow:-4px 4px 12px rgba(0,0,0,.2);transition:min-width .2s ease-in-out;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Meiryo",sans-serif}#floating-cta-container a .ck-float-icon{margin-right:8px;font-size:20px}#floating-cta-container a.ck-float-yoyaku{background:linear-gradient(135deg,#96566a 0%,#a2606e 100%)}#floating-cta-container a.ck-float-tellers{background:linear-gradient(135deg,#5e8a7e 0%,#7a9f93 100%)}#floating-cta-container a.ck-float-access{background:linear-gradient(135deg,#6080a0 0%,#7c9bbc 100%)}@media (hover:hover){#floating-cta-container a:hover{min-width:190px}}#floating-cta-container.ck-float-reveal{opacity:0;transform:translateX(14px);pointer-events:none;transition:opacity .22s ease , transform .22s ease}#floating-cta-container.ck-float-reveal.is-visible{opacity:1;transform:none;pointer-events:auto}@media (prefers-reduced-motion:reduce){#floating-cta-container.ck-float-reveal{transition:none;transform:none}}@media (max-width:767px){#floating-cta-container{bottom:110px}#floating-cta-container a{min-width:152px;padding:12px 20px 12px 15px;font-size:15px}#floating-cta-container a.ck-float-tellers,#floating-cta-container a.ck-float-access{display:none}#floating-cta-container a .ck-float-icon{font-size:18px}#floating-cta-container{right:14px}#floating-cta-container a.ck-float-yoyaku{min-width:0;padding:14px 22px 14px 18px;font-size:16px;font-weight:700;letter-spacing:.04em;border:1.5px solid rgba(255,255,255,.85);border-radius:999px;background:linear-gradient(135deg,#8c3f52 0%,#a2606e 100%);box-shadow:0 6px 16px rgba(140,63,82,.35) , 0 1px 3px rgba(0,0,0,.18);animation:ck-float-pulse 2.6s ease-in-out infinite}#floating-cta-container a.ck-float-yoyaku .ck-float-icon{margin-right:9px;font-size:19px;line-height:1}@keyframes ck-float-pulse{
    0%,100%{box-shadow:0 6px 16px rgba(140,63,82,0.35),0 1px 3px rgba(0,0,0,0.18),0 0 0 0 rgba(162,96,110,0.45);}
    55%{box-shadow:0 6px 16px rgba(140,63,82,0.35),0 1px 3px rgba(0,0,0,0.18),0 0 0 10px rgba(162,96,110,0);}
  }@media (prefers-reduced-motion:reduce){#floating-cta-container a.ck-float-yoyaku{animation:none;}}}

/* ============================================================
   ツール系（フェーズ0追補）：盤面・結果表のCSSを**バイト同一で**移設。
   値の書き換え禁止（盤面崩れ防止）。紫微斗数(shibitosuu-calc.css)と
   ホロスコープ(horoscope-aio)は元々外部CSSのため対象外・不変。
   手相チェッカーは未スコープセレクタ(#result,.btn等)のためMU内に残置。
   ============================================================ */

/* === 由来: ookubo-shukuyo-workplace.php（宿曜 職場相性） === */
.ookubo-shukuyo-workplace { background: #fbfaff; border: 1px solid #dfd7ee; border-radius: 12px; padding: 24px 22px; margin: 28px 0; line-height: 1.9; color: #2f2a3a; }
.ookubo-shukuyo-workplace h3 { margin: 0 0 10px; font-size: 1.28em; color: #3a2a6f; line-height: 1.5; }
.ookubo-shukuyo-workplace .skw-note { font-size: 0.9em; color: #55506a; margin: 0 0 18px; }
.ookubo-shukuyo-workplace .skw-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ookubo-shukuyo-workplace .skw-field-group { border: 1px solid #ded6ee; border-radius: 10px; padding: 12px 14px; margin: 0; background: #fff; }
.ookubo-shukuyo-workplace .skw-field-group legend { font-weight: 700; font-size: 0.92em; color: #4a2a6f; padding: 0 6px; }
.ookubo-shukuyo-workplace .skw-fields-row { display: flex; gap: 8px; align-items: flex-end; }
.ookubo-shukuyo-workplace .skw-fields-row label { font-size: 0.82em; color: #55506a; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.ookubo-shukuyo-workplace .skw-in { width: 100%; box-sizing: border-box; padding: 7px 8px; border: 1px solid #cfc3e4; border-radius: 6px; font-size: 1em; background: #fff; color: #2f2a3a; }
.ookubo-shukuyo-workplace .skw-submit { margin-top: 16px; text-align: center; }
.ookubo-shukuyo-workplace .skw-calc { background: #6a4a9f; color: #fff; border: none; border-radius: 8px; padding: 12px 30px; font-size: 1.02em; font-weight: 700; cursor: pointer; transition: background 0.15s ease; }
.ookubo-shukuyo-workplace .skw-calc:hover { background: #56397f; }
/* エクスポート欄は鑑定後に生成されるため、それまでこのリンクは飛び先が無い。
   既存3ツール(skl/skt/skp)と同じく、既定は非表示にして計算成功後に出す。 */
.ookubo-shukuyo-workplace .skw-jump-link { display: none; font-size: 0.86em; margin: 10px 0 0; }
.ookubo-shukuyo-workplace .skw-jump-link a { color: #6a4a9f; text-decoration: underline; text-underline-offset: 2px; }
.ookubo-shukuyo-workplace .skw-err { color: #a3283a; font-weight: 700; margin: 14px 0 0; }
.ookubo-shukuyo-workplace .skw-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 22px 0 0; }
.ookubo-shukuyo-workplace .skw-card { background: #fff; border: 1px solid #ded6ee; border-radius: 10px; padding: 14px 16px; }
.ookubo-shukuyo-workplace .skw-card-label { font-size: 0.82em; color: #6f6785; margin: 0 0 4px; }
.ookubo-shukuyo-workplace .skw-card-shuku { font-size: 1.7em; font-weight: 700; color: #4a2a6f; line-height: 1.3; }
.ookubo-shukuyo-workplace .skw-card-shuku a { color: #4a2a6f; text-decoration: underline; text-underline-offset: 3px; }
.ookubo-shukuyo-workplace .skw-card-lunar { font-size: 0.8em; color: #7a7290; margin: 2px 0 8px; }
.ookubo-shukuyo-workplace .skw-card-essence { font-size: 0.9em; color: #3f3950; margin: 0; }
.ookubo-shukuyo-workplace .skw-panels { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 18px 0 0; }
.ookubo-shukuyo-workplace .skw-panel { background: #fff; border: 1px solid #ded6ee; border-radius: 10px; padding: 14px 16px; }
.ookubo-shukuyo-workplace .skw-panel-head { font-size: 0.86em; color: #6f6785; margin: 0 0 6px; }
.ookubo-shukuyo-workplace .skw-panel-rel { font-size: 1.12em; font-weight: 700; color: #3a2a6f; margin: 0 0 8px; }
.ookubo-shukuyo-workplace .skw-mark { display: inline-block; padding: 2px 10px; border-radius: 4px; margin-left: 8px; font-weight: 700; font-size: 0.88em; }
.ookubo-shukuyo-workplace .skw-mark-good { background: #d4edda; color: #155724; }
.ookubo-shukuyo-workplace .skw-mark-ok { background: #e6efff; color: #1e3a6f; }
.ookubo-shukuyo-workplace .skw-mark-neu { background: #e5e5e5; color: #57606a; }
.ookubo-shukuyo-workplace .skw-mark-warn { background: #fff3cd; color: #856404; }
.ookubo-shukuyo-workplace .skw-mark-bad { background: #f8d7da; color: #721c24; }
.ookubo-shukuyo-workplace .skw-panel-text { font-size: 0.92em; margin: 0; color: #3f3950; }
.ookubo-shukuyo-workplace .skw-positions { background: #fff; border: 1px solid #ded6ee; border-radius: 10px; padding: 14px 16px; margin: 18px 0 0; }
.ookubo-shukuyo-workplace .skw-positions-title { font-weight: 700; color: #4a2a6f; margin: 0 0 8px; font-size: 0.98em; }
.ookubo-shukuyo-workplace .skw-positions ul { margin: 0; padding-left: 1.2em; }
.ookubo-shukuyo-workplace .skw-positions li { font-size: 0.9em; margin: 4px 0; }
.ookubo-shukuyo-workplace .skw-cta { background: #f5efff; border-left: 4px solid #6a4a9f; border-radius: 6px; padding: 12px 16px; margin: 18px 0 0; font-size: 0.9em; line-height: 1.85; }
.ookubo-shukuyo-workplace .skw-cta a { color: #4a2a6f; text-decoration: underline; text-underline-offset: 2px; }
.ookubo-shukuyo-workplace .skw-export { background: #fff; border: 1px solid #ded6ee; border-radius: 10px; padding: 16px 18px; margin: 22px 0 0; }
.ookubo-shukuyo-workplace .skw-export-title { font-weight: 700; color: #4a2a6f; margin: 0 0 6px; }
.ookubo-shukuyo-workplace .skw-export-desc { font-size: 0.86em; color: #55506a; margin: 0 0 12px; }
.ookubo-shukuyo-workplace .skw-prompt-input-row { display: flex; gap: 8px; }
.ookubo-shukuyo-workplace .skw-prompt-input { flex: 1; padding: 8px 10px; border: 1px solid #cfc3e4; border-radius: 6px; font-size: 0.95em; }
.ookubo-shukuyo-workplace .skw-prompt-input-err { border-color: #c0392b; background: #fdeaea; }
.ookubo-shukuyo-workplace .skw-prompt-reveal { background: #6a4a9f; color: #fff; border: none; border-radius: 6px; padding: 8px 18px; font-weight: 700; cursor: pointer; }
.ookubo-shukuyo-workplace .skw-prompt-member-note { font-size: 0.82em; color: #6a6080; margin: 10px 0 0; padding: 10px 14px; background: #f7f3fd; border-left: 3px solid #a98ac9; border-radius: 6px; line-height: 1.8; }
.ookubo-shukuyo-workplace .skw-prompt-member-note a { color: #4a2a6f; text-decoration: underline; }
.ookubo-shukuyo-workplace .skw-export-buttons button { background: #6a4a9f; color: #fff; border: none; border-radius: 6px; padding: 9px 18px; font-size: 0.92em; font-weight: 700; cursor: pointer; }
.ookubo-shukuyo-workplace .skw-prompt-display-header { display: flex; justify-content: space-between; align-items: center; margin: 0 0 6px; font-weight: 700; font-size: 0.92em; color: #4a2a6f; }
.ookubo-shukuyo-workplace .skw-prompt-copy { background: #6a4a9f; color: #fff; border: none; border-radius: 6px; padding: 6px 14px; font-size: 0.82em; font-weight: 700; cursor: pointer; }
.ookubo-shukuyo-workplace .skw-prompt-textarea { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid #ded6ee; border-radius: 8px; background: #fdfcff; font-size: 0.85em; line-height: 1.8; color: #3f3950; resize: vertical; font-family: inherit; min-height: 140px; height: 300px; }
.ookubo-shukuyo-workplace .skw-prompt-hint { font-size: 0.8em; color: #6f6785; margin: 8px 0 0; line-height: 1.7; }
.ookubo-shukuyo-workplace .skw-privacy { font-size: 0.78em; color: #7a7290; margin: 18px 0 0; }
@media (max-width: 540px) {
    .ookubo-shukuyo-workplace { padding: 18px 14px; }
    .ookubo-shukuyo-workplace .skw-pair,
    .ookubo-shukuyo-workplace .skw-cards,
    .ookubo-shukuyo-workplace .skw-panels { grid-template-columns: 1fr; }
    .ookubo-shukuyo-workplace .skw-card-shuku { font-size: 1.5em; }
}

/* === 由来: ookubo-rokusei-calc.php（六星占術） === */
.ookubo-rokusei-calc {
    max-width: 680px;
    margin: 24px auto;
    padding: 20px;
    border: 1px solid #d0d7de;
    border-radius: 10px;
    background: #fafbfc;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Meiryo", sans-serif;
    line-height: 1.6;
}
/* 見出しは「紺文字＋青い下線」だとハイパーリンクの視覚記号そのものになり、
   押せると誤解される（デッドクリックの原因）。本文色＋無彩色の罫線に変更。 */
.ookubo-rokusei-calc h3 {
    margin: 0 0 8px 0;
    font-size: 1.15em;
    border-bottom: 2px solid #d0d7de;
    padding-bottom: 4px;
    color: #24292f;
}
.ookubo-rokusei-calc .rkc-note {
    font-size: 0.9em;
    color: #57606a;
    margin: 0 0 16px 0;
}
.ookubo-rokusei-calc .rkc-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    margin-bottom: 14px;
    align-items: end;
}
.ookubo-rokusei-calc .rkc-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.ookubo-rokusei-calc .rkc-field label {
    font-size: 0.85em;
    font-weight: 600;
    color: #24292f;
}
.ookubo-rokusei-calc .rkc-field select,
.ookubo-rokusei-calc .rkc-field input[type="number"] {
    padding: 6px 10px;
    border: 1px solid #d0d7de;
    border-radius: 6px;
    font-size: 1em;
    min-width: 80px;
    background: #fff;
}
.ookubo-rokusei-calc .rkc-btn {
    padding: 10px 20px;
    background: #4a6fa5;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 1em;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}
.ookubo-rokusei-calc .rkc-btn:hover {
    background: #3b5a85;
}
.ookubo-rokusei-calc .rkc-boundary-wrap {
    margin: 10px 0 14px 0;
    padding: 10px 12px;
    border: 1px dashed #c4cbd3;
    border-radius: 6px;
    background: #fff;
}
.ookubo-rokusei-calc .rkc-boundary-wrap legend {
    font-size: 0.85em;
    font-weight: 600;
    color: #24292f;
    padding: 0 6px;
}
.ookubo-rokusei-calc .rkc-boundary-wrap label {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin: 4px 0;
    font-size: 0.92em;
    cursor: pointer;
}
.ookubo-rokusei-calc .rkc-boundary-wrap label small {
    color: #6e7781;
    font-size: 0.85em;
    margin-left: 4px;
}
.ookubo-rokusei-calc .rkc-result {
    margin-top: 16px;
    padding: 16px;
    background: #fff;
    border: 1px solid #d0d7de;
    border-radius: 8px;
    display: none;
}
.ookubo-rokusei-calc .rkc-result.show {
    display: block;
}
/* 結果の主役表示。紺文字だとボタン／リンクに見えるため、
   下地の琥珀色と調和する濃茶にして「マーカーで引いた強調」に見せる。 */
.ookubo-rokusei-calc .rkc-result-main {
    font-size: 1.35em;
    font-weight: 700;
    color: #5f2a04;
    margin-bottom: 12px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #fff6db 0%, #ffe4a0 100%);
    border-radius: 6px;
    display: inline-block;
}
.ookubo-rokusei-calc .rkc-result dl {
    margin: 0;
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 6px 14px;
    font-size: 0.95em;
}
.ookubo-rokusei-calc .rkc-result dt {
    font-weight: 600;
    color: #57606a;
}
.ookubo-rokusei-calc .rkc-result dd {
    margin: 0;
    color: #24292f;
}
.ookubo-rokusei-calc .rkc-yearly-head {
    margin-top: 18px;
    padding: 6px 10px;
    background: #2d5a8f;
    color: #fff;
    font-weight: 700;
    font-size: 1.02em;
    border-radius: 5px 5px 0 0;
}
.ookubo-rokusei-calc .rkc-yearly-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 6px;
    font-size: 0.92em;
}
.ookubo-rokusei-calc .rkc-yearly-table th,
.ookubo-rokusei-calc .rkc-yearly-table td {
    border: 1px solid #d0d7de;
    padding: 6px 8px;
    text-align: center;
}
.ookubo-rokusei-calc .rkc-yearly-table th {
    background: #eef2f6;
    font-weight: 600;
}
.ookubo-rokusei-calc .rkc-yearly-table .rkc-y-ks td {
    background: #fff7e6;
}
.ookubo-rokusei-calc .rkc-yearly-table .rkc-y-cs td {
    background: #ffe0b2;
    color: #7a4a00;
}
.ookubo-rokusei-calc .rkc-yearly-table .rkc-y-ds td {
    background: #ffd0d0;
    color: #b3261e;
    font-weight: 700;
}
.ookubo-rokusei-calc .rkc-yearly-note {
    font-size: 0.78em;
    color: #6e7781;
    margin: 0 0 10px 0;
}
.ookubo-rokusei-calc .rkc-shukumei-head {
    margin-top: 18px;
    padding: 6px 10px;
    background: #1e3a5f;
    color: #fff;
    font-weight: 700;
    font-size: 1.02em;
    border-radius: 5px 5px 0 0;
}
.ookubo-rokusei-calc .rkc-shukumei-main {
    padding: 10px 14px;
    background: linear-gradient(135deg, #fff6db 0%, #ffccb2 100%);
    font-size: 1.18em;
    font-weight: 700;
    color: #8b2c08;
    border-radius: 0 0 5px 5px;
    margin-bottom: 8px;
}
.ookubo-rokusei-calc .rkc-shukumei-main.rkc-shukumei-none {
    background: #e8f5e9;
    color: #2e7d32;
    font-size: 0.95em;
    font-weight: 600;
}
.ookubo-rokusei-calc .rkc-shukumei-main.rkc-shukumei-hint {
    background: #eef3f8;
    color: #33414f;
    font-size: 0.95em;
    font-weight: 600;
    border: 1px solid #cdd9e5;
}
.ookubo-rokusei-calc .rkc-shukumei-year {
    font-size: 0.9em;
    color: #5f2a04;
    font-weight: 600;
}
.ookubo-rokusei-calc .rkc-shukumei-detail {
    font-size: 0.88em;
    margin-bottom: 8px;
}
.ookubo-rokusei-calc .rkc-daiun-table {
    margin-top: 8px;
    font-size: 0.85em;
}
.ookubo-rokusei-calc .rkc-daiun-table summary {
    cursor: pointer;
    color: #1e3a5f;
    font-weight: 600;
    padding: 4px 0;
}
.ookubo-rokusei-calc .rkc-daiun-table table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 6px;
}
.ookubo-rokusei-calc .rkc-daiun-table th,
.ookubo-rokusei-calc .rkc-daiun-table td {
    border: 1px solid #d0d7de;
    padding: 4px 8px;
    text-align: center;
}
.ookubo-rokusei-calc .rkc-daiun-table th {
    background: #f0f2f5;
}
.ookubo-rokusei-calc .rkc-shukumei-mark {
    color: #cf222e;
    font-weight: 700;
    font-size: 0.9em;
}
.ookubo-rokusei-calc .rkc-error {
    color: #cf222e;
    background: #ffebe9;
    padding: 8px 12px;
    border-radius: 6px;
    margin-top: 10px;
    font-size: 0.9em;
}
@media (max-width: 480px) {
    .ookubo-rokusei-calc .rkc-form { gap: 8px; }
    .ookubo-rokusei-calc .rkc-field select,
    .ookubo-rokusei-calc .rkc-field input[type="number"] { min-width: 70px; }
    .ookubo-rokusei-calc .rkc-result-main { font-size: 1.15em; }
}

/* === 由来: ookubo-shukuyo-calc.php（宿曜 本体(skc)） === */
.ookubo-shukuyo-calc {
    max-width: 720px;
    margin: 24px auto;
    padding: 20px;
    border: 1px solid #d0d7de;
    border-radius: 10px;
    background: #fafbfc;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Meiryo", sans-serif;
    line-height: 1.6;
    color: #24292f;
}
.ookubo-shukuyo-calc h3 {
    margin: 0 0 8px 0;
    font-size: 1.15em;
    border-bottom: 2px solid #7a5a9f;
    padding-bottom: 4px;
    color: #4a2a6f;
}
.ookubo-shukuyo-calc .skc-note {
    font-size: 0.9em;
    color: #57606a;
    margin: 0 0 16px 0;
}
.ookubo-shukuyo-calc .skc-section-title {
    margin: 18px 0 8px;
    padding: 6px 10px;
    background: #4a2a6f;
    color: #fff;
    font-weight: 700;
    font-size: 1.02em;
    border-radius: 5px;
}
.ookubo-shukuyo-calc .skc-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-bottom: 14px;
    align-items: end;
}
.ookubo-shukuyo-calc .skc-field { display: flex; flex-direction: column; gap: 4px; }
.ookubo-shukuyo-calc .skc-field label { font-size: 0.82em; font-weight: 600; color: #24292f; }
.ookubo-shukuyo-calc .skc-field input[type="number"] {
    padding: 6px 10px;
    border: 1px solid #d0d7de;
    border-radius: 6px;
    background: #fff;
    font-size: 0.95em;
    min-height: 34px;
    color: #24292f;
    width: 90px;
}
.ookubo-shukuyo-calc button.skc-calc {
    padding: 8px 22px;
    background: #7a5a9f;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 0.98em;
    cursor: pointer;
    font-weight: 700;
}
.ookubo-shukuyo-calc button.skc-calc:hover { background: #603f85; }
.ookubo-shukuyo-calc .skc-result { margin-top: 14px; }
.ookubo-shukuyo-calc .skc-main-box {
    padding: 14px 18px;
    background: linear-gradient(135deg, #f7edff 0%, #e9d8ff 100%);
    border: 1px solid #c9a8ff;
    border-radius: 8px;
    margin-bottom: 12px;
}
.ookubo-shukuyo-calc .skc-main-box h4 {
    margin: 0 0 6px;
    font-size: 0.92em;
    color: #4a2a6f;
}
.ookubo-shukuyo-calc .skc-main-box .skc-honmei {
    font-size: 1.8em;
    font-weight: 800;
    color: #4a2a6f;
    margin: 0;
    letter-spacing: 0.05em;
}
.ookubo-shukuyo-calc .skc-main-box .skc-honmei-desc {
    margin: 8px 0 0;
    color: #3a2050;
    font-size: 0.92em;
    line-height: 1.7;
}
.ookubo-shukuyo-calc .skc-meta-row {
    display: flex; flex-wrap: wrap;
    gap: 6px 18px;
    font-size: 0.88em;
    color: #57606a;
    margin: 6px 0 0;
}
.ookubo-shukuyo-calc .skc-meta-row strong { color: #24292f; margin-right: 4px; }
.ookubo-shukuyo-calc .skc-lunar-info {
    display: flex; flex-wrap: wrap;
    gap: 4px 14px;
    font-size: 0.82em;
    color: #6a7080;
    margin: 4px 0 8px;
    padding: 4px 2px;
}
.ookubo-shukuyo-calc .skc-lunar-info:empty { display: none; }
.ookubo-shukuyo-calc .skc-lunar-info strong { color: #4a5060; margin-right: 3px; font-weight: 600; }
.ookubo-shukuyo-calc table.skc-lucky {
    width: 100%;
    border-collapse: collapse;
    margin: 6px 0 14px;
    font-size: 0.92em;
    background: #fff;
}
.ookubo-shukuyo-calc table.skc-lucky th,
.ookubo-shukuyo-calc table.skc-lucky td {
    border: 1px solid #d0d7de;
    padding: 6px 8px;
    text-align: center;
}
.ookubo-shukuyo-calc table.skc-lucky th {
    background: #f0e6f8;
    color: #4a2a6f;
    font-weight: 700;
}
.ookubo-shukuyo-calc table.skc-lucky td.skc-lucky-shuku {
    font-weight: 700;
    color: #4a2a6f;
    font-size: 1.15em;
}
.ookubo-shukuyo-calc .skc-today-box {
    padding: 12px 16px;
    background: #fff8e6;
    border: 1px solid #e0c878;
    border-radius: 6px;
    margin-bottom: 12px;
    font-size: 0.95em;
}
.ookubo-shukuyo-calc .skc-today-box .skc-today-rel {
    font-size: 1.25em;
    font-weight: 700;
    color: #8a5a00;
}
.ookubo-shukuyo-calc .skc-today-box .skc-today-mark {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 4px;
    margin-left: 6px;
    font-weight: 700;
    font-size: 0.9em;
}
/* 吉凶マークのチップ。丸みのある塗りつぶし＝押せるUIに見えるのに無反応だと
   デッドクリックになるため、実際に押せるようにして意味を出す。 */
.ookubo-shukuyo-calc .skc-today-mark[data-rel] {
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(122,90,159,0.15);
    transition: filter 0.12s ease, box-shadow 0.12s ease;
}
/* カレンダー側のマークは padding が無く 12px 角ほどしかないため、
   押せるようにするのに合わせて指で押せる大きさのチップにする。 */
.ookubo-shukuyo-calc .skc-cal-mark-slot .skc-today-mark[data-rel] {
    display: inline-block;
    padding: 4px 9px;
    border-radius: 4px;
    font-weight: 700;
    line-height: 1.2;
    position: relative;
}
/* 見た目のチップは 26x21px しかなく WCAG 2.5.8(最小 24x24) の高さを満たさない。
   カレンダーは1行1日のテーブルで行ピッチが 27px しかないため、チップ自体を
   44px 角まで太らせると行が伸びて縦長になる。そこで見た目は変えず、擬似要素で
   当たり判定だけを 44x26px に広げる（行ピッチ 27px 未満なので上下の行と重ならない）。 */
.ookubo-shukuyo-calc .skc-cal-mark-slot .skc-today-mark[data-rel]::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 44px;
    height: 26px;
    transform: translate(-50%, -50%);
}
.ookubo-shukuyo-calc .skc-today-mark[data-rel]:hover,
.ookubo-shukuyo-calc .skc-today-mark[data-rel][aria-expanded="true"] {
    filter: brightness(0.94);
    box-shadow: 0 0 0 2px rgba(122,90,159,0.35);
}
.ookubo-shukuyo-calc .skc-today-mark[data-rel]:focus {
    outline: 2px solid #7a5a9f;
    outline-offset: 1px;
}
.ookubo-shukuyo-calc .skc-mark-hint { font-size: 0.82em; color: #57606a; margin: 6px 0 0; line-height: 1.6; }
.skc-rel-pop {
    position: absolute; z-index: 99999; max-width: 300px;
    background: #fff; border: 1px solid #d8c7e4; border-radius: 10px;
    box-shadow: 0 6px 20px rgba(122,90,159,.25);
    padding: 12px 14px; font-size: 0.86em; line-height: 1.75; color: #333;
}
.skc-rel-pop__name { font-weight: 700; color: #4a2a6f; display: block; margin-bottom: 4px; }
.skc-rel-pop[hidden] { display: none; }
@media (max-width: 480px) { .skc-rel-pop { max-width: 86vw; } }
.ookubo-shukuyo-calc .skc-mark-good { background: #d4edda; color: #155724; }
.ookubo-shukuyo-calc .skc-mark-ok { background: #e6efff; color: #1e3a6f; }
.ookubo-shukuyo-calc .skc-mark-bad { background: #f8d7da; color: #721c24; }
.ookubo-shukuyo-calc .skc-mark-warn { background: #fff3cd; color: #856404; }
.ookubo-shukuyo-calc .skc-mark-neu { background: #e5e5e5; color: #57606a; }
.ookubo-shukuyo-calc .skc-special-row {
    margin: 10px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.ookubo-shukuyo-calc a.skc-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px 4px 4px;
    border-radius: 999px;
    color: #fff;
    font-weight: 700;
    font-size: 0.88em;
    text-decoration: none;
    border: none;
    line-height: 1.2;
}
.ookubo-shukuyo-calc a.skc-badge:hover { opacity: 0.85; color: #fff; }
.ookubo-shukuyo-calc a.skc-badge .skc-badge-disc {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgba(255,255,255,0.28);
    font-size: 0.95em;
    font-weight: 800;
}
.ookubo-shukuyo-calc .skc-cal-mark-slot {
    display: inline-block;
    min-width: 28px;
    text-align: right;
    padding-right: 2px;
    vertical-align: middle;
}
.ookubo-shukuyo-calc .skc-cal-badge-slot {
    display: inline-block;
    min-width: 22px;
    text-align: left;
    padding-left: 2px;
    vertical-align: middle;
}
.ookubo-shukuyo-calc a.skc-cal-badge {
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    color: #fff;
    font-size: 0.72em;
    line-height: 18px;
    text-align: center;
    font-weight: 800;
    text-decoration: none;
    vertical-align: middle;
}
.ookubo-shukuyo-calc a.skc-cal-badge:hover { opacity: 0.85; color: #fff; }
.ookubo-shukuyo-calc .skc-badge-kanro    { background: #2a8f4a; }
.ookubo-shukuyo-calc .skc-badge-kongoubu { background: #c89020; }
.ookubo-shukuyo-calc .skc-badge-rasetsu  { background: #a8423d; }
/* 凌犯期間・七曜凌逼・六害宿 (v1.10.0) — リンク先ページなしのため span で表示 */
.ookubo-shukuyo-calc span.skc-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px 4px 4px;
    border-radius: 999px;
    color: #fff;
    font-weight: 700;
    font-size: 0.88em;
    border: none;
    line-height: 1.2;
    cursor: help;
}
.ookubo-shukuyo-calc span.skc-badge .skc-badge-disc {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgba(255,255,255,0.28);
    font-size: 0.95em;
    font-weight: 800;
}
.ookubo-shukuyo-calc span.skc-cal-badge {
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    color: #fff;
    font-size: 0.72em;
    line-height: 18px;
    text-align: center;
    font-weight: 800;
    vertical-align: middle;
    cursor: help;
}
.ookubo-shukuyo-calc .skc-badge-ryouhan   { background: #4a5a8f; }
.ookubo-shukuyo-calc .skc-badge-ryouhitsu { background: #6a3a8f; }
.ookubo-shukuyo-calc .skc-badge-rokugai   { background: #7a1f1f; }
.ookubo-shukuyo-calc .skc-beta-tag {
    display: inline-block;
    margin-left: 8px;
    padding: 1px 8px;
    border: 1px solid #c89020;
    border-radius: 999px;
    background: #fffaf0;
    color: #8a5a00;
    font-size: 0.72em;
    font-weight: 700;
    vertical-align: middle;
    line-height: 1.6;
}
.ookubo-shukuyo-calc .skc-ryouhan-note {
    margin: 6px 0 0;
    font-size: 0.88em;
    line-height: 1.65;
}
.ookubo-shukuyo-calc table.skc-rokugai {
    width: 100%;
    border-collapse: collapse;
    margin: 4px 0 6px;
    font-size: 0.9em;
    background: #fff;
}
.ookubo-shukuyo-calc table.skc-rokugai th,
.ookubo-shukuyo-calc table.skc-rokugai td {
    border: 1px solid #d0d7de;
    padding: 5px 8px;
    text-align: left;
    vertical-align: top;
}
.ookubo-shukuyo-calc table.skc-rokugai th {
    background: #f8ecec;
    font-weight: 700;
    color: #7a1f1f;
    white-space: nowrap;
    text-align: center;
}
.ookubo-shukuyo-calc table.skc-rokugai td.skc-rokugai-shuku {
    font-weight: 700;
    white-space: nowrap;
    text-align: center;
}
.ookubo-shukuyo-calc table.skc-calendar {
    width: 100%;
    border-collapse: collapse;
    margin: 4px 0 12px;
    font-size: 0.85em;
    background: #fff;
}
.ookubo-shukuyo-calc table.skc-calendar th,
.ookubo-shukuyo-calc table.skc-calendar td {
    border: 1px solid #d0d7de;
    padding: 4px 6px;
    text-align: center;
}
.ookubo-shukuyo-calc table.skc-calendar th { background: #f0e6f8; font-weight: 700; color: #4a2a6f; }
.ookubo-shukuyo-calc table.skc-calendar td.skc-rel-cell { font-weight: 700; }
.ookubo-shukuyo-calc .skc-aisyou-form {
    display: flex; flex-wrap: wrap; gap: 10px 12px; align-items: end;
    margin: 8px 0 10px;
    padding: 10px 14px;
    background: #f5f0fa;
    border: 1px dashed #c9a8ff;
    border-radius: 6px;
}
.ookubo-shukuyo-calc .skc-aisyou-result {
    margin: 8px 0 0;
    padding: 10px 14px;
    background: #fff;
    border: 1px solid #c9a8ff;
    border-radius: 6px;
}
.ookubo-shukuyo-calc .skc-aisyou-result .skc-aisyou-main {
    font-size: 1.1em; font-weight: 700; color: #4a2a6f; margin: 0 0 6px;
}
.ookubo-shukuyo-calc .skc-error {
    padding: 10px 12px;
    background: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
    border-radius: 6px;
    margin-top: 8px;
    font-size: 0.9em;
}
.ookubo-shukuyo-calc .skc-privacy {
    font-size: 0.8em; color: #6a7080; margin-top: 10px;
    padding: 6px 10px; background: #f3f5f7; border-radius: 4px;
    border-left: 3px solid #8a9aae;
}
@media (max-width: 480px) {
    .ookubo-shukuyo-calc .skc-main-box .skc-honmei { font-size: 1.4em; }
    .ookubo-shukuyo-calc table.skc-calendar { font-size: 0.78em; }
    .ookubo-shukuyo-calc table.skc-calendar th,
    .ookubo-shukuyo-calc table.skc-calendar td { padding: 3px 2px; }
}

/* === 由来: ookubo-shukuyo-calc.php（宿曜 相性/恋愛(skl)） === */
/* 30代女性向け繊細パレット: ローズダスト + ローズグレー + クリーム
   既存 .ookubo-shukuyo-calc とは完全に独立したクラス名空間 */
.ookubo-shukuyo-aishou-love {
    max-width: 760px;
    margin: 28px auto;
    padding: 26px 22px;
    border: 1px solid #ead5dc;
    border-radius: 14px;
    background: #fdfafb;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Mincho ProN", "Yu Mincho", "Hiragino Sans", "Meiryo", sans-serif;
    line-height: 1.75;
    color: #4a3744;
    letter-spacing: 0.02em;
}
.ookubo-shukuyo-aishou-love h3 {
    margin: 0 0 10px 0;
    font-size: 1.16em;
    font-weight: 600;
    border-bottom: 1px solid #d9b8c4;
    padding-bottom: 8px;
    color: #8a4a64;
    letter-spacing: 0.05em;
}
.ookubo-shukuyo-aishou-love .skl-note { font-size: 0.9em; color: #7a6470; margin: 0 0 18px 0; line-height: 1.85; }
.ookubo-shukuyo-aishou-love .skl-pair { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 12px; }
.ookubo-shukuyo-aishou-love .skl-field-group { flex: 1; min-width: 240px; padding: 14px 16px; border: 1px solid #e8c5d0; border-radius: 10px; background: #fdf6f8; }
.ookubo-shukuyo-aishou-love .skl-field-group legend { font-weight: 600; color: #8a4a64; padding: 0 8px; font-size: 0.92em; letter-spacing: 0.06em; }
.ookubo-shukuyo-aishou-love .skl-fields-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.ookubo-shukuyo-aishou-love .skl-fields-row label { display: flex; flex-direction: column; gap: 4px; font-size: 0.8em; font-weight: 500; color: #6a5060; }
.ookubo-shukuyo-aishou-love .skl-in { padding: 7px 12px; border: 1px solid #e0c8d2; border-radius: 6px; background: #fff; font-size: 0.95em; min-height: 36px; width: 92px; color: #4a3744; }
.ookubo-shukuyo-aishou-love .skl-in:focus { outline: none; border-color: #c98aa9; box-shadow: 0 0 0 2px rgba(201,138,169,0.18); }
.ookubo-shukuyo-aishou-love .skl-submit { text-align: center; margin: 16px 0 4px; }
.ookubo-shukuyo-aishou-love .skl-jump-link { display: none; margin: 12px 0 0; text-align: center; font-size: 0.86em; }
.ookubo-shukuyo-aishou-love .skl-jump-link a {
    display: inline-block;
    padding: 7px 22px;
    color: #8a4a64;
    text-decoration: none;
    border: 1px dashed #c98aa9;
    border-radius: 999px;
    background: #fdfafb;
    transition: all 0.2s;
    letter-spacing: 0.05em;
}
.ookubo-shukuyo-aishou-love .skl-jump-link a:hover {
    background: #fdf6f8;
    border-style: solid;
    box-shadow: 0 1px 6px rgba(201,138,169,0.18);
}
.ookubo-shukuyo-aishou-love button.skl-calc {
    padding: 12px 36px;
    background: linear-gradient(135deg, #c98aa9 0%, #b87a9f 100%);
    color: #fff; border: none; border-radius: 999px;
    font-size: 1em; cursor: pointer; font-weight: 600;
    letter-spacing: 0.08em; box-shadow: 0 2px 8px rgba(184,122,159,0.28);
    transition: all 0.2s;
}
.ookubo-shukuyo-aishou-love button.skl-calc:hover { background: linear-gradient(135deg, #b87a9f 0%, #9d6586 100%); box-shadow: 0 3px 12px rgba(184,122,159,0.4); transform: translateY(-1px); }
.ookubo-shukuyo-aishou-love .skl-result { margin-top: 20px; }
.ookubo-shukuyo-aishou-love .skl-error { padding: 12px 14px; background: #fdf0f3; border: 1px solid #e8b8c4; color: #8a4a5a; border-radius: 8px; margin-top: 10px; font-size: 0.9em; }
.ookubo-shukuyo-aishou-love .skl-honmei-cards { display: flex; gap: 14px; flex-wrap: wrap; margin: 12px 0 18px; }
.ookubo-shukuyo-aishou-love .skl-honmei-card { flex: 1; min-width: 220px; padding: 16px 18px; border-radius: 12px; border: 1px solid; background: #fff; }
.ookubo-shukuyo-aishou-love .skl-honmei-card.you { border-color: #d8b8d2; background: linear-gradient(135deg, #fdf8fb 0%, #f4e3ef 100%); }
.ookubo-shukuyo-aishou-love .skl-honmei-card.partner { border-color: #e0b5b8; background: linear-gradient(135deg, #fdf6f5 0%, #f5dfdb 100%); }
.ookubo-shukuyo-aishou-love .skl-honmei-card .skl-label { font-size: 0.82em; font-weight: 600; letter-spacing: 0.1em; }
.ookubo-shukuyo-aishou-love .skl-honmei-card.you .skl-label { color: #8060a0; }
.ookubo-shukuyo-aishou-love .skl-honmei-card.partner .skl-label { color: #a06872; }
.ookubo-shukuyo-aishou-love .skl-honmei-card .skl-shuku { font-size: 1.85em; font-weight: 600; margin: 6px 0; letter-spacing: 0.06em; font-family: "Hiragino Mincho ProN", "Yu Mincho", serif; }
.ookubo-shukuyo-aishou-love .skl-honmei-card.you .skl-shuku { color: #6a4a8a; }
.ookubo-shukuyo-aishou-love .skl-honmei-card.partner .skl-shuku { color: #8a4a5a; }
.ookubo-shukuyo-aishou-love .skl-honmei-card .skl-summary { font-size: 0.85em; line-height: 1.7; color: #5a4858; margin-top: 6px; }
.ookubo-shukuyo-aishou-love .skl-honmei-card a { color: inherit; text-decoration: underline; text-decoration-color: rgba(0,0,0,0.2); text-underline-offset: 3px; }
.ookubo-shukuyo-aishou-love .skl-wheel-wrap { background: #fff; border: 1px solid #ead5dc; border-radius: 12px; padding: 16px 10px; margin: 14px 0 18px; }
.ookubo-shukuyo-aishou-love .skl-wheel-toggle { display: flex; gap: 8px; justify-content: center; margin-bottom: 12px; flex-wrap: wrap; }
.ookubo-shukuyo-aishou-love .skl-wheel-btn { padding: 7px 18px; border: 1px solid #d8b8c8; background: #fff; cursor: pointer; border-radius: 999px; font-weight: 500; font-size: 0.88em; color: #6a5060; transition: all 0.2s; letter-spacing: 0.05em; }
.ookubo-shukuyo-aishou-love .skl-wheel-btn:hover { background: #fdf0f5; }
.ookubo-shukuyo-aishou-love .skl-wheel-btn.active { background: #c98aa9; color: #fff; border-color: #c98aa9; }
.ookubo-shukuyo-aishou-love .skl-wheel-svg { display: block; margin: 0 auto; max-width: 100%; height: auto; }
/* 花弁と中央はタップで解説が出る＝押せる部品として見せる */
.ookubo-shukuyo-aishou-love .skl-petal,
.ookubo-shukuyo-aishou-love .skl-shuku-hit { cursor: pointer; -webkit-tap-highlight-color: rgba(201,138,169,0.2); }
.ookubo-shukuyo-aishou-love .skl-petal circle,
.ookubo-shukuyo-aishou-love .skl-shuku-hit circle { transition: filter 0.12s ease; }
.ookubo-shukuyo-aishou-love .skl-petal:hover circle,
.ookubo-shukuyo-aishou-love .skl-shuku-hit:hover circle { filter: brightness(0.95); }
.ookubo-shukuyo-aishou-love .skl-petal[data-open] circle,
.ookubo-shukuyo-aishou-love .skl-shuku-hit[data-open] circle { stroke: #a8577f; stroke-width: 3; }
.ookubo-shukuyo-aishou-love .skl-petal:focus,
.ookubo-shukuyo-aishou-love .skl-shuku-hit:focus { outline: 2px solid #a8577f; outline-offset: 2px; }
.ookubo-shukuyo-aishou-love .skl-wheel-hint { text-align: center; margin: 8px 0 0; font-size: 0.82em; color: #7a6470; line-height: 1.6; }
.skl-info-pop {
    position: absolute; z-index: 99999; max-width: 320px;
    background: #fff; border: 1px solid #ead5dc; border-radius: 10px;
    box-shadow: 0 6px 20px rgba(160,96,128,.25);
    padding: 12px 14px; font-size: 0.86em; line-height: 1.75; color: #3a3038;
}
.skl-info-pop__name { font-weight: 700; color: #8a4a64; display: block; margin-bottom: 4px; }
.skl-info-pop[hidden] { display: none; }
@media (max-width: 480px) { .skl-info-pop { max-width: 86vw; } }
.ookubo-shukuyo-aishou-love .skl-section-title {
    margin: 22px 0 12px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #c98aa9 0%, #b87a9f 100%);
    color: #fff; font-weight: 500; font-size: 0.98em;
    border-radius: 8px; letter-spacing: 0.08em;
}
.ookubo-shukuyo-aishou-love .skl-panels { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ookubo-shukuyo-aishou-love .skl-panel { padding: 16px 18px; border: 1px solid; border-radius: 12px; background: #fff; }
.ookubo-shukuyo-aishou-love .skl-panel.cat-love { border-color: #e8c8d8; background: #fdf6f9; }
.ookubo-shukuyo-aishou-love .skl-panel.cat-marriage { border-color: #d8c8a8; background: #fdfaf2; }
.ookubo-shukuyo-aishou-love .skl-panel.cat-sex { border-color: #d8b0b0; background: #fdf3f3; }
.ookubo-shukuyo-aishou-love .skl-panel-head { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-bottom: 10px; }
.ookubo-shukuyo-aishou-love .skl-panel-cat { font-weight: 600; font-size: 0.94em; letter-spacing: 0.05em; }
.ookubo-shukuyo-aishou-love .skl-panel.cat-love .skl-panel-cat { color: #a85878; }
.ookubo-shukuyo-aishou-love .skl-panel.cat-marriage .skl-panel-cat { color: #8a7038; }
.ookubo-shukuyo-aishou-love .skl-panel.cat-sex .skl-panel-cat { color: #985858; }
.ookubo-shukuyo-aishou-love .skl-panel-rel { display: inline-block; padding: 3px 12px; border-radius: 999px; font-weight: 600; font-size: 0.82em; letter-spacing: 0.04em; }
.ookubo-shukuyo-aishou-love .skl-rel-good { background: #e8f0e0; color: #4a6a3a; }
.ookubo-shukuyo-aishou-love .skl-rel-ok { background: #e6ecf2; color: #4a5a78; }
.ookubo-shukuyo-aishou-love .skl-rel-warn { background: #f8eed8; color: #8a6a3a; }
.ookubo-shukuyo-aishou-love .skl-rel-bad { background: #f5dde0; color: #8a4a5a; }
.ookubo-shukuyo-aishou-love .skl-rel-neu { background: #e8e0e4; color: #6a5868; }
.ookubo-shukuyo-aishou-love .skl-adult-tag { background: #b87a8a; color: #fff; padding: 2px 10px; border-radius: 999px; font-size: 0.72em; font-weight: 500; letter-spacing: 0.08em; }
.ookubo-shukuyo-aishou-love .skl-panel-body { font-size: 0.9em; line-height: 1.85; margin: 6px 0 0; color: #4a3744; }
.ookubo-shukuyo-aishou-love .skl-panel-body strong { color: #6a4a7a; font-weight: 600; }
.ookubo-shukuyo-aishou-love .skl-direction-label {
    font-weight: 500; font-size: 0.86em; padding: 5px 12px;
    background: #f4e3ef; color: #6a4a7a;
    border-radius: 999px; display: inline-block; margin-bottom: 8px;
    letter-spacing: 0.05em;
}
.ookubo-shukuyo-aishou-love .skl-direction-label.b2a { background: #f5dfdb; color: #8a4a5a; }
.ookubo-shukuyo-aishou-love .skl-export { margin: 22px 0 8px; padding: 18px 20px; background: #fdf8fa; border: 1px solid #ead5dc; border-radius: 12px; scroll-margin-top: 20px; }
.ookubo-shukuyo-aishou-love .skl-export-title { font-weight: 600; font-size: 0.96em; margin-bottom: 8px; color: #8a4a64; letter-spacing: 0.05em; }
.ookubo-shukuyo-aishou-love .skl-export-desc { font-size: 0.86em; margin: 0 0 12px; color: #5a4858; line-height: 1.8; }
.ookubo-shukuyo-aishou-love .skl-export-buttons { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.ookubo-shukuyo-aishou-love .skl-export button { padding: 8px 18px; border: 1px solid #d8b8c8; background: #fff; color: #8a4a64; cursor: pointer; border-radius: 999px; font-weight: 500; font-size: 0.86em; letter-spacing: 0.04em; transition: all 0.2s; }
.ookubo-shukuyo-aishou-love .skl-export button:hover { background: #fdf0f5; border-color: #c98aa9; }
.ookubo-shukuyo-aishou-love .skl-export-toggle { font-size: 0.82em; color: #7a6470; cursor: pointer; user-select: none; padding: 4px 0; }
.ookubo-shukuyo-aishou-love .skl-json-pre { background: #2a2530; color: #e8d8e0; padding: 12px 14px; border-radius: 8px; font-size: 0.74em; overflow-x: auto; max-height: 360px; line-height: 1.6; margin-top: 8px; font-family: ui-monospace, "SFMono-Regular", Consolas, monospace; }
.ookubo-shukuyo-aishou-love .skl-prompt-section { margin-top: 16px; padding-top: 14px; border-top: 1px dashed #e8d5dc; }
.ookubo-shukuyo-aishou-love .skl-prompt-title { font-weight: 600; font-size: 0.94em; color: #8a4a64; margin-bottom: 8px; letter-spacing: 0.05em; }
.ookubo-shukuyo-aishou-love .skl-prompt-lock-msg { font-size: 0.84em; color: #7a6470; margin: 0 0 10px; line-height: 1.75; }
.ookubo-shukuyo-aishou-love .skl-prompt-input-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.ookubo-shukuyo-aishou-love .skl-prompt-input { padding: 9px 14px; border: 1px solid #e0c8d2; border-radius: 999px; background: #fff; font-size: 0.9em; min-width: 200px; color: #4a3744; transition: border-color 0.2s, box-shadow 0.2s; letter-spacing: 0.02em; }
.ookubo-shukuyo-aishou-love .skl-prompt-input:focus { outline: none; border-color: #c98aa9; box-shadow: 0 0 0 2px rgba(201,138,169,0.18); }
.ookubo-shukuyo-aishou-love .skl-prompt-input-err { border-color: #c97070 !important; animation: skl-prompt-shake 0.32s; }
@keyframes skl-prompt-shake {
    0%,100% { transform: translateX(0); }
    25% { transform: translateX(-4px); }
    75% { transform: translateX(4px); }
}
.ookubo-shukuyo-aishou-love .skl-prompt-reveal { padding: 9px 22px; border: 1px solid #c98aa9; background: #fdf6f8; color: #8a4a64; cursor: pointer; border-radius: 999px; font-weight: 600; font-size: 0.86em; letter-spacing: 0.05em; transition: all 0.2s; }
.ookubo-shukuyo-aishou-love .skl-prompt-reveal:hover { background: #c98aa9; color: #fff; box-shadow: 0 2px 8px rgba(201,138,169,0.28); }
.ookubo-shukuyo-aishou-love .skl-prompt-display { margin-top: 12px; padding: 14px 16px; background: #fff; border: 1px solid #ead5dc; border-radius: 10px; }
.ookubo-shukuyo-aishou-love .skl-prompt-display-header { display: flex; gap: 8px; align-items: center; justify-content: space-between; margin-bottom: 8px; flex-wrap: wrap; }
.ookubo-shukuyo-aishou-love .skl-prompt-display-header > span { font-weight: 600; color: #8a4a64; font-size: 0.9em; letter-spacing: 0.04em; }
.ookubo-shukuyo-aishou-love .skl-prompt-copy { padding: 6px 14px; border: 1px solid #d8b8c8; background: #fff; color: #8a4a64; cursor: pointer; border-radius: 999px; font-weight: 500; font-size: 0.82em; letter-spacing: 0.04em; transition: background 0.2s; }
.ookubo-shukuyo-aishou-love .skl-prompt-copy:hover { background: #fdf0f5; border-color: #c98aa9; }
.ookubo-shukuyo-aishou-love .skl-prompt-textarea { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid #e0c8d2; border-radius: 8px; background: #fdfafb; font-size: 0.85em; line-height: 1.8; color: #4a3744; resize: vertical; font-family: inherit; min-height: 180px; }
.ookubo-shukuyo-aishou-love .skl-prompt-textarea:focus { outline: none; border-color: #c98aa9; box-shadow: 0 0 0 2px rgba(201,138,169,0.18); }
.ookubo-shukuyo-aishou-love .skl-prompt-hint { font-size: 0.8em; color: #7a6470; margin: 8px 0 0; line-height: 1.7; }
.ookubo-shukuyo-aishou-love .skl-prompt-member-note {
    font-size: 0.82em;
    color: #6a5060;
    margin: 10px 0 0;
    padding: 10px 14px;
    background: #fdf6f8;
    border-left: 3px solid #c98aa9;
    border-radius: 6px;
    line-height: 1.8;
}
.ookubo-shukuyo-aishou-love .skl-prompt-member-note a {
    color: #8a4a64;
    text-decoration: underline;
    text-underline-offset: 3px;
    font-weight: 600;
}
.ookubo-shukuyo-aishou-love .skl-prompt-member-note a:hover { color: #6a3a52; }
.ookubo-shukuyo-aishou-love .skl-privacy { font-size: 0.82em; color: #7a6470; margin-top: 16px; padding: 8px 12px; background: #fdf6f8; border-radius: 6px; border-left: 3px solid #d8b8c8; line-height: 1.7; }
@media (max-width: 540px) {
    .ookubo-shukuyo-aishou-love { padding: 18px 14px; }
    .ookubo-shukuyo-aishou-love .skl-panels { grid-template-columns: 1fr; }
    .ookubo-shukuyo-aishou-love .skl-honmei-card .skl-shuku { font-size: 1.5em; }
}

/* === 由来: ookubo-shukuyo-calc.php（宿曜 三九の秘法(skt)） === */
.ookubo-shukuyo-triangle {
    max-width: 780px; margin: 28px auto; padding: 26px 22px;
    border: 1px solid #ead5dc; border-radius: 14px; background: #fdfafb;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Mincho ProN", "Yu Mincho", "Hiragino Sans", "Meiryo", sans-serif;
    line-height: 1.75; color: #4a3744; letter-spacing: 0.02em;
}
.ookubo-shukuyo-triangle h3 { margin: 0 0 10px 0; font-size: 1.16em; font-weight: 600; border-bottom: 1px solid #d9b8c4; padding-bottom: 8px; color: #8a4a64; letter-spacing: 0.05em; }
.ookubo-shukuyo-triangle .skt-note { font-size: 0.9em; color: #7a6470; margin: 0 0 18px 0; line-height: 1.85; }
.ookubo-shukuyo-triangle .skt-trio { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.ookubo-shukuyo-triangle .skt-fieldset { flex: 1; min-width: 220px; padding: 14px 16px; border: 1px solid #e8c5d0; border-radius: 10px; background: #fdf6f8; }
.ookubo-shukuyo-triangle .skt-fieldset.role-self { border-color: #d8b8d2; background: #fdf8fb; }
.ookubo-shukuyo-triangle .skt-fieldset.role-liked { border-color: #e0a8b8; background: #fdf3f6; }
.ookubo-shukuyo-triangle .skt-fieldset.role-rival { border-color: #c8b0d8; background: #f8f4fb; }
.ookubo-shukuyo-triangle .skt-fieldset legend { font-weight: 600; padding: 0 8px; font-size: 0.92em; letter-spacing: 0.05em; }
.ookubo-shukuyo-triangle .role-self legend { color: #6a4a8a; }
.ookubo-shukuyo-triangle .role-liked legend { color: #a04868; }
.ookubo-shukuyo-triangle .role-rival legend { color: #6a5090; }
.ookubo-shukuyo-triangle .skt-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-bottom: 8px; }
.ookubo-shukuyo-triangle .skt-row label { display: flex; flex-direction: column; gap: 3px; font-size: 0.78em; font-weight: 500; color: #6a5060; }
.ookubo-shukuyo-triangle .skt-in { padding: 7px 10px; border: 1px solid #e0c8d2; border-radius: 6px; background: #fff; font-size: 0.92em; min-height: 36px; width: 76px; color: #4a3744; }
.ookubo-shukuyo-triangle .skt-sex { padding: 7px 10px; border: 1px solid #e0c8d2; border-radius: 6px; background: #fff; font-size: 0.9em; min-height: 36px; color: #4a3744; }
.ookubo-shukuyo-triangle .skt-in:focus, .ookubo-shukuyo-triangle .skt-sex:focus { outline: none; border-color: #c98aa9; box-shadow: 0 0 0 2px rgba(201,138,169,0.18); }
.ookubo-shukuyo-triangle .skt-submit { text-align: center; margin: 16px 0 4px; }
.ookubo-shukuyo-triangle button.skt-calc { padding: 12px 36px; background: linear-gradient(135deg, #c98aa9 0%, #b87a9f 100%); color: #fff; border: none; border-radius: 999px; font-size: 1em; cursor: pointer; font-weight: 600; letter-spacing: 0.08em; box-shadow: 0 2px 8px rgba(184,122,159,0.28); transition: all 0.2s; }
.ookubo-shukuyo-triangle button.skt-calc:hover { background: linear-gradient(135deg, #b87a9f 0%, #9d6586 100%); box-shadow: 0 3px 12px rgba(184,122,159,0.4); transform: translateY(-1px); }
.ookubo-shukuyo-triangle .skt-jump-link { display: none; margin: 12px 0 0; text-align: center; font-size: 0.86em; }
.ookubo-shukuyo-triangle .skt-jump-link a { display: inline-block; padding: 7px 22px; color: #8a4a64; text-decoration: none; border: 1px dashed #c98aa9; border-radius: 999px; background: #fdfafb; transition: all 0.2s; letter-spacing: 0.05em; }
.ookubo-shukuyo-triangle .skt-jump-link a:hover { background: #fdf6f8; border-style: solid; }
.ookubo-shukuyo-triangle .skt-result { margin-top: 20px; }
.ookubo-shukuyo-triangle .skt-error { padding: 12px 14px; background: #fdf0f3; border: 1px solid #e8b8c4; color: #8a4a5a; border-radius: 8px; margin-top: 10px; font-size: 0.9em; }
.ookubo-shukuyo-triangle .skt-section-title { margin: 22px 0 12px; padding: 8px 14px; background: linear-gradient(135deg, #c98aa9 0%, #b87a9f 100%); color: #fff; font-weight: 500; font-size: 0.98em; border-radius: 8px; letter-spacing: 0.08em; }
.ookubo-shukuyo-triangle .skt-persona-cards { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; }
.ookubo-shukuyo-triangle .skt-persona { padding: 14px 16px; border-radius: 12px; border: 1px solid; background: #fff; }
.ookubo-shukuyo-triangle .skt-persona.role-self { border-color: #d8b8d2; background: linear-gradient(135deg,#fdf8fb 0%,#f1e5f4 100%); }
.ookubo-shukuyo-triangle .skt-persona.role-liked { border-color: #e0a8b8; background: linear-gradient(135deg,#fdf3f6 0%,#f7dfe6 100%); }
.ookubo-shukuyo-triangle .skt-persona.role-rival { border-color: #c8b0d8; background: linear-gradient(135deg,#f8f4fb 0%,#ece3f4 100%); }
.ookubo-shukuyo-triangle .skt-persona .skt-role-label { font-size: 0.8em; font-weight: 600; letter-spacing: 0.08em; }
.ookubo-shukuyo-triangle .role-self .skt-role-label { color: #6a4a8a; }
.ookubo-shukuyo-triangle .role-liked .skt-role-label { color: #a04868; }
.ookubo-shukuyo-triangle .role-rival .skt-role-label { color: #6a5090; }
.ookubo-shukuyo-triangle .skt-persona .skt-shuku { font-size: 1.6em; font-weight: 600; margin: 5px 0; letter-spacing: 0.05em; font-family: "Hiragino Mincho ProN", "Yu Mincho", serif; color: #6a4a7a; }
.ookubo-shukuyo-triangle .skt-persona .skt-essence { font-size: 0.84em; line-height: 1.7; color: #5a4858; }
.ookubo-shukuyo-triangle .skt-persona a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.ookubo-shukuyo-triangle .skt-pref-box { padding: 16px 18px; border: 1px solid #e0a8b8; border-radius: 12px; background: #fdf3f6; }
.ookubo-shukuyo-triangle .skt-pref-box h4 { margin: 0 0 8px; font-size: 0.98em; color: #a04868; font-weight: 600; }
.ookubo-shukuyo-triangle .skt-pref-item { margin: 8px 0; font-size: 0.9em; line-height: 1.8; }
.ookubo-shukuyo-triangle .skt-pref-item strong { color: #8a4a64; }
.ookubo-shukuyo-triangle .skt-view-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ookubo-shukuyo-triangle .skt-view-card { padding: 14px 16px; border: 1px solid #ead5dc; border-radius: 12px; background: #fff; }
.ookubo-shukuyo-triangle .skt-view-card .skt-view-head { font-weight: 600; font-size: 0.9em; color: #8a4a64; margin-bottom: 6px; }
.ookubo-shukuyo-triangle .skt-rel-pill { display: inline-block; padding: 3px 12px; border-radius: 999px; font-weight: 600; font-size: 0.82em; letter-spacing: 0.04em; margin-left: 4px; }
.ookubo-shukuyo-triangle .skt-rel-good { background: #e8f0e0; color: #4a6a3a; }
.ookubo-shukuyo-triangle .skt-rel-ok { background: #e6ecf2; color: #4a5a78; }
.ookubo-shukuyo-triangle .skt-rel-warn { background: #f8eed8; color: #8a6a3a; }
.ookubo-shukuyo-triangle .skt-rel-bad { background: #f5dde0; color: #8a4a5a; }
.ookubo-shukuyo-triangle .skt-rel-neu { background: #e8e0e4; color: #6a5868; }
.ookubo-shukuyo-triangle .skt-view-body { font-size: 0.86em; line-height: 1.75; color: #4a3744; margin-top: 6px; }
.ookubo-shukuyo-triangle .skt-strength { padding: 18px 20px; border: 1px solid #e0a8b8; border-radius: 14px; background: linear-gradient(135deg, #fdf6f8 0%, #f7e3ea 100%); }
.ookubo-shukuyo-triangle .skt-strength h4 { margin: 0 0 12px; font-size: 1.0em; color: #a04868; font-weight: 600; text-align: center; }
.ookubo-shukuyo-triangle .skt-bar-row { display: flex; align-items: center; gap: 10px; margin: 8px 0; }
.ookubo-shukuyo-triangle .skt-bar-label { flex: 0 0 92px; font-size: 0.85em; font-weight: 600; }
.ookubo-shukuyo-triangle .skt-bar-label.self { color: #6a4a8a; }
.ookubo-shukuyo-triangle .skt-bar-label.rival { color: #6a5090; }
.ookubo-shukuyo-triangle .skt-bar-track { flex: 1; height: 22px; background: #f0e3ea; border-radius: 999px; overflow: hidden; position: relative; }
.ookubo-shukuyo-triangle .skt-bar-fill { height: 100%; border-radius: 999px; transition: width 0.6s ease; }
.ookubo-shukuyo-triangle .skt-bar-fill.self { background: linear-gradient(90deg, #c98ad8 0%, #a86ac0 100%); }
.ookubo-shukuyo-triangle .skt-bar-fill.rival { background: linear-gradient(90deg, #9d80c8 0%, #7a5aa8 100%); }
.ookubo-shukuyo-triangle .skt-bar-val { flex: 0 0 56px; text-align: right; font-size: 0.88em; font-weight: 700; color: #6a4a7a; }
.ookubo-shukuyo-triangle .skt-verdict { margin-top: 12px; text-align: center; font-size: 1.0em; font-weight: 700; padding: 10px; border-radius: 8px; background: #fff; color: #8a4a64; }
.ookubo-shukuyo-triangle .skt-strength-note { font-size: 0.8em; color: #7a6470; margin: 10px 0 0; line-height: 1.7; }
.ookubo-shukuyo-triangle .skt-export { margin: 22px 0 8px; padding: 18px 20px; background: #fdf8fa; border: 1px solid #ead5dc; border-radius: 12px; scroll-margin-top: 20px; }
.ookubo-shukuyo-triangle .skt-export-title { font-weight: 600; font-size: 0.96em; margin-bottom: 8px; color: #8a4a64; letter-spacing: 0.05em; }
.ookubo-shukuyo-triangle .skt-export-desc { font-size: 0.86em; margin: 0 0 12px; color: #5a4858; line-height: 1.8; }
.ookubo-shukuyo-triangle .skt-export-buttons { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.ookubo-shukuyo-triangle .skt-export button { padding: 8px 18px; border: 1px solid #d8b8c8; background: #fff; color: #8a4a64; cursor: pointer; border-radius: 999px; font-weight: 500; font-size: 0.86em; letter-spacing: 0.04em; transition: all 0.2s; }
.ookubo-shukuyo-triangle .skt-export button:hover { background: #fdf0f5; border-color: #c98aa9; }
.ookubo-shukuyo-triangle .skt-prompt-section { margin-top: 16px; padding-top: 14px; border-top: 1px dashed #e8d5dc; }
.ookubo-shukuyo-triangle .skt-prompt-title { font-weight: 600; font-size: 0.94em; color: #8a4a64; margin-bottom: 8px; letter-spacing: 0.05em; }
.ookubo-shukuyo-triangle .skt-prompt-input-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.ookubo-shukuyo-triangle .skt-prompt-input { padding: 9px 14px; border: 1px solid #e0c8d2; border-radius: 999px; background: #fff; font-size: 0.9em; min-width: 220px; color: #4a3744; transition: border-color 0.2s, box-shadow 0.2s; letter-spacing: 0.02em; }
.ookubo-shukuyo-triangle .skt-prompt-input:focus { outline: none; border-color: #c98aa9; box-shadow: 0 0 0 2px rgba(201,138,169,0.18); }
.ookubo-shukuyo-triangle .skt-prompt-input-err { border-color: #c97070 !important; animation: skt-prompt-shake 0.32s; }
@keyframes skt-prompt-shake { 0%,100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
.ookubo-shukuyo-triangle .skt-prompt-reveal { padding: 9px 22px; border: 1px solid #c98aa9; background: #fdf6f8; color: #8a4a64; cursor: pointer; border-radius: 999px; font-weight: 600; font-size: 0.86em; letter-spacing: 0.05em; transition: all 0.2s; }
.ookubo-shukuyo-triangle .skt-prompt-reveal:hover { background: #c98aa9; color: #fff; }
.ookubo-shukuyo-triangle .skt-prompt-display { margin-top: 12px; padding: 14px 16px; background: #fff; border: 1px solid #ead5dc; border-radius: 10px; }
.ookubo-shukuyo-triangle .skt-prompt-display-header { display: flex; gap: 8px; align-items: center; justify-content: space-between; margin-bottom: 8px; flex-wrap: wrap; }
.ookubo-shukuyo-triangle .skt-prompt-display-header > span { font-weight: 600; color: #8a4a64; font-size: 0.9em; letter-spacing: 0.04em; }
.ookubo-shukuyo-triangle .skt-prompt-copy { padding: 6px 14px; border: 1px solid #d8b8c8; background: #fff; color: #8a4a64; cursor: pointer; border-radius: 999px; font-weight: 500; font-size: 0.82em; transition: background 0.2s; }
.ookubo-shukuyo-triangle .skt-prompt-copy:hover { background: #fdf0f5; }
/* rows="15" のままだと約390pxになりページが縦長になるため、初期高さを300pxに圧縮。
   height 指定なのでユーザーのドラッグ(resize:vertical)は従来どおり効く。 */
.ookubo-shukuyo-triangle .skt-prompt-textarea { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid #e0c8d2; border-radius: 8px; background: #fdfafb; font-size: 0.85em; line-height: 1.8; color: #4a3744; resize: vertical; font-family: inherit; min-height: 140px; height: 300px; }
.ookubo-shukuyo-triangle .skt-prompt-textarea:focus { outline: none; border-color: #c98aa9; box-shadow: 0 0 0 2px rgba(201,138,169,0.18); }
.ookubo-shukuyo-triangle .skt-prompt-hint { font-size: 0.8em; color: #7a6470; margin: 8px 0 0; line-height: 1.7; }
.ookubo-shukuyo-triangle .skt-prompt-member-note { font-size: 0.82em; color: #6a5060; margin: 10px 0 0; padding: 10px 14px; background: #fdf6f8; border-left: 3px solid #c98aa9; border-radius: 6px; line-height: 1.8; }
.ookubo-shukuyo-triangle .skt-prompt-member-note a { color: #8a4a64; text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
.ookubo-shukuyo-triangle .skt-prompt-member-note a:hover { color: #6a3a52; }
.ookubo-shukuyo-triangle .skt-privacy { font-size: 0.82em; color: #7a6470; margin-top: 16px; padding: 8px 12px; background: #fdf6f8; border-radius: 6px; border-left: 3px solid #d8b8c8; line-height: 1.7; }
@media (max-width: 600px) {
    .ookubo-shukuyo-triangle { padding: 18px 14px; }
    .ookubo-shukuyo-triangle .skt-persona-cards { grid-template-columns: 1fr; }
    .ookubo-shukuyo-triangle .skt-view-grid { grid-template-columns: 1fr; }
    .ookubo-shukuyo-triangle .skt-persona .skt-shuku { font-size: 1.4em; }
}

/* === 由来: ookubo-shukuyo-calc.php（宿曜 親子(skp)） === */
.ookubo-shukuyo-parents {
    max-width: 780px; margin: 28px auto; padding: 26px 22px;
    border: 1px solid #d8dcea; border-radius: 14px; background: #fbfcfe;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Mincho ProN", "Yu Mincho", "Hiragino Sans", "Meiryo", sans-serif;
    line-height: 1.75; color: #37414a; letter-spacing: 0.02em;
}
.ookubo-shukuyo-parents h3 { margin: 0 0 10px 0; font-size: 1.16em; font-weight: 600; border-bottom: 1px solid #b8c4d9; padding-bottom: 8px; color: #3a5a7a; letter-spacing: 0.05em; }
.ookubo-shukuyo-parents .skp-note { font-size: 0.9em; color: #64707a; margin: 0 0 18px 0; line-height: 1.85; }
.ookubo-shukuyo-parents .skp-trio { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.ookubo-shukuyo-parents .skp-fieldset { flex: 1; min-width: 210px; padding: 14px 16px; border: 1px solid #c5d0e0; border-radius: 10px; background: #f6f8fc; }
.ookubo-shukuyo-parents .skp-fieldset.role-father { border-color: #b8c8dc; background: #f3f7fb; }
.ookubo-shukuyo-parents .skp-fieldset.role-mother { border-color: #e0c0cc; background: #fdf5f8; }
.ookubo-shukuyo-parents .skp-fieldset.role-self { border-color: #c0d8c8; background: #f4faf6; }
.ookubo-shukuyo-parents .skp-fieldset legend { font-weight: 600; padding: 0 8px; font-size: 0.92em; letter-spacing: 0.05em; }
.ookubo-shukuyo-parents .role-father legend { color: #3a6a9a; }
.ookubo-shukuyo-parents .role-mother legend { color: #a04868; }
.ookubo-shukuyo-parents .role-self legend { color: #3a8a5a; }
.ookubo-shukuyo-parents .skp-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.ookubo-shukuyo-parents .skp-row label { display: flex; flex-direction: column; gap: 3px; font-size: 0.78em; font-weight: 500; color: #5a6570; }
.ookubo-shukuyo-parents .skp-in { padding: 7px 10px; border: 1px solid #cad4e2; border-radius: 6px; background: #fff; font-size: 0.92em; min-height: 36px; width: 76px; color: #37414a; }
.ookubo-shukuyo-parents .skp-in:focus { outline: none; border-color: #7a9ac8; box-shadow: 0 0 0 2px rgba(122,154,200,0.18); }
.ookubo-shukuyo-parents .skp-submit { text-align: center; margin: 16px 0 4px; }
.ookubo-shukuyo-parents button.skp-calc { padding: 12px 36px; background: linear-gradient(135deg, #6a9ac8 0%, #5a7ab0 100%); color: #fff; border: none; border-radius: 999px; font-size: 1em; cursor: pointer; font-weight: 600; letter-spacing: 0.08em; box-shadow: 0 2px 8px rgba(90,122,176,0.28); transition: all 0.2s; }
.ookubo-shukuyo-parents button.skp-calc:hover { background: linear-gradient(135deg, #5a7ab0 0%, #4a6598 100%); box-shadow: 0 3px 12px rgba(90,122,176,0.4); transform: translateY(-1px); }
.ookubo-shukuyo-parents .skp-jump-link { display: none; margin: 12px 0 0; text-align: center; font-size: 0.86em; }
.ookubo-shukuyo-parents .skp-jump-link a { display: inline-block; padding: 7px 22px; color: #3a5a7a; text-decoration: none; border: 1px dashed #7a9ac8; border-radius: 999px; background: #fbfcfe; transition: all 0.2s; letter-spacing: 0.05em; }
.ookubo-shukuyo-parents .skp-jump-link a:hover { background: #f3f7fb; border-style: solid; }
.ookubo-shukuyo-parents .skp-result { margin-top: 20px; }
.ookubo-shukuyo-parents .skp-error { padding: 12px 14px; background: #fdf0f3; border: 1px solid #e8b8c4; color: #8a4a5a; border-radius: 8px; margin-top: 10px; font-size: 0.9em; }
.ookubo-shukuyo-parents .skp-section-title { margin: 22px 0 12px; padding: 8px 14px; background: linear-gradient(135deg, #6a9ac8 0%, #5a7ab0 100%); color: #fff; font-weight: 500; font-size: 0.98em; border-radius: 8px; letter-spacing: 0.08em; }
.ookubo-shukuyo-parents .skp-persona-cards { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; }
.ookubo-shukuyo-parents .skp-persona { padding: 14px 16px; border-radius: 12px; border: 1px solid; background: #fff; }
.ookubo-shukuyo-parents .skp-persona.role-father { border-color: #b8c8dc; background: linear-gradient(135deg,#f3f7fb 0%,#e3edf6 100%); }
.ookubo-shukuyo-parents .skp-persona.role-mother { border-color: #e0c0cc; background: linear-gradient(135deg,#fdf5f8 0%,#f6e3ea 100%); }
.ookubo-shukuyo-parents .skp-persona.role-self { border-color: #c0d8c8; background: linear-gradient(135deg,#f4faf6 0%,#e3f2e8 100%); }
.ookubo-shukuyo-parents .skp-persona .skp-role-label { font-size: 0.8em; font-weight: 600; letter-spacing: 0.08em; }
.ookubo-shukuyo-parents .role-father .skp-role-label { color: #3a6a9a; }
.ookubo-shukuyo-parents .role-mother .skp-role-label { color: #a04868; }
.ookubo-shukuyo-parents .role-self .skp-role-label { color: #3a8a5a; }
.ookubo-shukuyo-parents .skp-persona .skp-shuku { font-size: 1.6em; font-weight: 600; margin: 5px 0; letter-spacing: 0.05em; font-family: "Hiragino Mincho ProN", "Yu Mincho", serif; color: #3a5a7a; }
.ookubo-shukuyo-parents .skp-persona .skp-essence { font-size: 0.84em; line-height: 1.7; color: #4a5560; }
.ookubo-shukuyo-parents .skp-persona a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
.ookubo-shukuyo-parents .skp-view-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ookubo-shukuyo-parents .skp-view-card { padding: 14px 16px; border: 1px solid #d8dcea; border-radius: 12px; background: #fff; }
.ookubo-shukuyo-parents .skp-view-head { font-weight: 600; font-size: 0.9em; color: #3a5a7a; margin-bottom: 6px; }
.ookubo-shukuyo-parents .skp-rel-pill { display: inline-block; padding: 3px 12px; border-radius: 999px; font-weight: 600; font-size: 0.82em; letter-spacing: 0.04em; margin-left: 4px; }
.ookubo-shukuyo-parents .skp-rel-good { background: #e8f0e0; color: #4a6a3a; }
.ookubo-shukuyo-parents .skp-rel-ok { background: #e6ecf2; color: #4a5a78; }
.ookubo-shukuyo-parents .skp-rel-warn { background: #f8eed8; color: #8a6a3a; }
.ookubo-shukuyo-parents .skp-rel-bad { background: #f5dde0; color: #8a4a5a; }
.ookubo-shukuyo-parents .skp-rel-neu { background: #e8e0e4; color: #6a5868; }
.ookubo-shukuyo-parents .skp-view-body { font-size: 0.86em; line-height: 1.75; color: #37414a; margin-top: 6px; }
.ookubo-shukuyo-parents .skp-kangae { margin-top: 8px; padding: 8px 10px; background: #f6f8fc; border-left: 3px solid #7a9ac8; border-radius: 5px; font-size: 0.82em; line-height: 1.7; color: #4a5560; }
.ookubo-shukuyo-parents .skp-kangae strong { color: #3a5a7a; }
.ookubo-shukuyo-parents .skp-understand { padding: 18px 20px; border: 1px solid #c5d0e0; border-radius: 14px; background: linear-gradient(135deg, #f3f7fb 0%, #e6eef6 100%); }
.ookubo-shukuyo-parents .skp-understand h4 { margin: 0 0 12px; font-size: 1.0em; color: #3a5a7a; font-weight: 600; text-align: center; }
.ookubo-shukuyo-parents .skp-bar-row { display: flex; align-items: center; gap: 10px; margin: 8px 0; }
.ookubo-shukuyo-parents .skp-bar-label { flex: 0 0 100px; font-size: 0.85em; font-weight: 600; }
.ookubo-shukuyo-parents .skp-bar-label.father { color: #3a6a9a; }
.ookubo-shukuyo-parents .skp-bar-label.mother { color: #a04868; }
.ookubo-shukuyo-parents .skp-bar-track { flex: 1; height: 22px; background: #e3e9f0; border-radius: 999px; overflow: hidden; }
.ookubo-shukuyo-parents .skp-bar-fill { height: 100%; border-radius: 999px; transition: width 0.6s ease; }
.ookubo-shukuyo-parents .skp-bar-fill.father { background: linear-gradient(90deg, #7aa8d8 0%, #5a7ab0 100%); }
.ookubo-shukuyo-parents .skp-bar-fill.mother { background: linear-gradient(90deg, #d88ab0 0%, #b86a90 100%); }
.ookubo-shukuyo-parents .skp-bar-val { flex: 0 0 56px; text-align: right; font-size: 0.88em; font-weight: 700; color: #3a5a7a; }
.ookubo-shukuyo-parents .skp-understand-note { font-size: 0.8em; color: #64707a; margin: 10px 0 0; line-height: 1.7; }
.ookubo-shukuyo-parents .skp-export { margin: 22px 0 8px; padding: 18px 20px; background: #f6f9fc; border: 1px solid #d8dcea; border-radius: 12px; scroll-margin-top: 20px; }
.ookubo-shukuyo-parents .skp-export-title { font-weight: 600; font-size: 0.96em; margin-bottom: 8px; color: #3a5a7a; letter-spacing: 0.05em; }
.ookubo-shukuyo-parents .skp-export-desc { font-size: 0.86em; margin: 0 0 12px; color: #4a5560; line-height: 1.8; }
.ookubo-shukuyo-parents .skp-export-buttons { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.ookubo-shukuyo-parents .skp-export button { padding: 8px 18px; border: 1px solid #b8c8dc; background: #fff; color: #3a5a7a; cursor: pointer; border-radius: 999px; font-weight: 500; font-size: 0.86em; letter-spacing: 0.04em; transition: all 0.2s; }
.ookubo-shukuyo-parents .skp-export button:hover { background: #eef4fa; border-color: #7a9ac8; }
.ookubo-shukuyo-parents .skp-prompt-section { margin-top: 16px; padding-top: 14px; border-top: 1px dashed #d5dce8; }
.ookubo-shukuyo-parents .skp-prompt-title { font-weight: 600; font-size: 0.94em; color: #3a5a7a; margin-bottom: 8px; letter-spacing: 0.05em; }
.ookubo-shukuyo-parents .skp-prompt-input-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.ookubo-shukuyo-parents .skp-prompt-input { padding: 9px 14px; border: 1px solid #cad4e2; border-radius: 999px; background: #fff; font-size: 0.9em; min-width: 220px; color: #37414a; transition: border-color 0.2s, box-shadow 0.2s; letter-spacing: 0.02em; }
.ookubo-shukuyo-parents .skp-prompt-input:focus { outline: none; border-color: #7a9ac8; box-shadow: 0 0 0 2px rgba(122,154,200,0.18); }
.ookubo-shukuyo-parents .skp-prompt-input-err { border-color: #c97070 !important; animation: skp-prompt-shake 0.32s; }
@keyframes skp-prompt-shake { 0%,100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
.ookubo-shukuyo-parents .skp-prompt-reveal { padding: 9px 22px; border: 1px solid #7a9ac8; background: #f3f7fb; color: #3a5a7a; cursor: pointer; border-radius: 999px; font-weight: 600; font-size: 0.86em; letter-spacing: 0.05em; transition: all 0.2s; }
.ookubo-shukuyo-parents .skp-prompt-reveal:hover { background: #7a9ac8; color: #fff; }
.ookubo-shukuyo-parents .skp-prompt-member-note { font-size: 0.82em; color: #5a6570; margin: 10px 0 0; padding: 10px 14px; background: #f3f7fb; border-left: 3px solid #7a9ac8; border-radius: 6px; line-height: 1.8; }
.ookubo-shukuyo-parents .skp-prompt-member-note a { color: #3a5a7a; text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
.ookubo-shukuyo-parents .skp-prompt-display { margin-top: 12px; padding: 14px 16px; background: #fff; border: 1px solid #d8dcea; border-radius: 10px; }
.ookubo-shukuyo-parents .skp-prompt-display-header { display: flex; gap: 8px; align-items: center; justify-content: space-between; margin-bottom: 8px; flex-wrap: wrap; }
.ookubo-shukuyo-parents .skp-prompt-display-header > span { font-weight: 600; color: #3a5a7a; font-size: 0.9em; letter-spacing: 0.04em; }
.ookubo-shukuyo-parents .skp-prompt-copy { padding: 6px 14px; border: 1px solid #b8c8dc; background: #fff; color: #3a5a7a; cursor: pointer; border-radius: 999px; font-weight: 500; font-size: 0.82em; transition: background 0.2s; }
.ookubo-shukuyo-parents .skp-prompt-copy:hover { background: #eef4fa; }
.ookubo-shukuyo-parents .skp-prompt-textarea { width: 100%; box-sizing: border-box; padding: 12px 14px; border: 1px solid #cad4e2; border-radius: 8px; background: #fbfcfe; font-size: 0.85em; line-height: 1.8; color: #37414a; resize: vertical; font-family: inherit; min-height: 140px; }
.ookubo-shukuyo-parents .skp-prompt-textarea:focus { outline: none; border-color: #7a9ac8; box-shadow: 0 0 0 2px rgba(122,154,200,0.18); }
.ookubo-shukuyo-parents .skp-prompt-hint { font-size: 0.8em; color: #64707a; margin: 8px 0 0; line-height: 1.7; }
.ookubo-shukuyo-parents .skp-privacy { font-size: 0.82em; color: #64707a; margin-top: 16px; padding: 8px 12px; background: #f3f7fb; border-radius: 6px; border-left: 3px solid #b8c8dc; line-height: 1.7; }
@media (max-width: 600px) {
    .ookubo-shukuyo-parents { padding: 18px 14px; }
    .ookubo-shukuyo-parents .skp-persona-cards { grid-template-columns: 1fr; }
    .ookubo-shukuyo-parents .skp-view-grid { grid-template-columns: 1fr; }
    .ookubo-shukuyo-parents .skp-persona .skp-shuku { font-size: 1.4em; }
}

/* === 由来: ookubo-sizhu-calc.php（四柱推命 命式ツール） === */
.ookubo-sizhu-calc {
    max-width: 960px;
    margin: 24px auto;
    padding: 20px;
    border: 1px solid #d0d7de;
    border-radius: 10px;
    background: #fafbfc;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Meiryo", sans-serif;
    line-height: 1.6;
    color: #24292f;
}
.ookubo-sizhu-calc h3 {
    margin: 0 0 8px 0;
    font-size: 1.15em;
    border-bottom: 2px solid #4a6fa5;
    padding-bottom: 4px;
    color: #1e3a5f;
}
.ookubo-sizhu-calc h4 {
    margin: 16px 0 6px 0;
    font-size: 1.02em;
    color: #1e3a5f;
    border-left: 4px solid #4a6fa5;
    padding-left: 8px;
}
.ookubo-sizhu-calc .szc-note {
    font-size: 0.88em;
    color: #57606a;
    margin: 0 0 16px 0;
}
.ookubo-sizhu-calc .szc-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-bottom: 14px;
    align-items: end;
}
.ookubo-sizhu-calc .szc-field { display: flex; flex-direction: column; gap: 4px; }
.ookubo-sizhu-calc select.szc-in-zoukan-result {
    display: inline-block; width: auto; max-width: 100%;
    padding: 3px 6px; margin-left: 2px; vertical-align: middle;
    border: 1px solid #d0d7de; border-radius: 6px; background: #fff; font-size: 0.92em;
}
.ookubo-sizhu-calc .szc-field label { font-size: 0.82em; font-weight: 600; color: #24292f; }
.ookubo-sizhu-calc .szc-field select,
.ookubo-sizhu-calc .szc-field input[type="number"] {
    padding: 5px 8px;
    border: 1px solid #d0d7de;
    border-radius: 6px;
    background: #fff;
    font-size: 0.95em;
    min-height: 32px;
    color: #24292f;
}
.ookubo-sizhu-calc .szc-field.szc-check { flex-direction: row; align-items: center; gap: 6px; }
.ookubo-sizhu-calc .szc-field.szc-check label { font-size: 0.88em; font-weight: 500; }
.ookubo-sizhu-calc button.szc-calc {
    padding: 8px 20px;
    background: #4a6fa5;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 0.98em;
    cursor: pointer;
    font-weight: 600;
}
.ookubo-sizhu-calc button.szc-calc:hover { background: #3d5d8a; }
.ookubo-sizhu-calc .szc-result { margin-top: 18px; }
.ookubo-sizhu-calc .szc-compare-wrap {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 12px;
}
.ookubo-sizhu-calc .szc-method {
    background: #fff;
    border: 1px solid #d0d7de;
    border-radius: 8px;
    padding: 12px 14px;
}
.ookubo-sizhu-calc .szc-method.szc-hengqi { border-color: #a05a6e; background: #fff8f9; }
.ookubo-sizhu-calc .szc-method h4 { margin-top: 0; }
.ookubo-sizhu-calc .szc-method.szc-hengqi h4 { border-left-color: #a05a6e; color: #6a2a3f; }
.ookubo-sizhu-calc table.szc-chart {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.92em;
    margin: 6px 0;
    table-layout: fixed;
    /* Defensive overrides: force horizontal writing mode on all descendants
       to prevent iOS Safari from inheriting vertical writing-mode from
       parent contexts, which was reported to cause time-pillar column only
       to render vertically on iPhone 14. */
    writing-mode: horizontal-tb;
}
.ookubo-sizhu-calc table.szc-chart,
.ookubo-sizhu-calc table.szc-chart * {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    text-combine-upright: none !important;
}
.ookubo-sizhu-calc table.szc-chart thead th:first-child {
    width: 18%;
}
.ookubo-sizhu-calc table.szc-chart thead th:not(:first-child) {
    width: 20.5%;
}
.ookubo-sizhu-calc table.szc-chart th,
.ookubo-sizhu-calc table.szc-chart td {
    border: 1px solid #d0d7de;
    padding: 5px 4px;
    text-align: center;
    vertical-align: middle;
    word-break: keep-all;
    overflow-wrap: normal;
    line-height: 1.35;
}
.ookubo-sizhu-calc table.szc-chart th {
    background: #eef3f8;
    font-weight: 600;
    font-size: 0.88em;
}
.ookubo-sizhu-calc table.szc-chart td.szc-kan { font-size: 1.4em; font-weight: 600; color: #1e3a5f; }
.ookubo-sizhu-calc table.szc-chart td.szc-shi { font-size: 1.4em; font-weight: 600; color: #6a2a3f; }
.ookubo-sizhu-calc table.szc-chart td.szc-zk { font-size: 0.88em; color: #333; }
/* 通変星（蔵干通変も同クラス）＝単独の解説を出さないため、リンクと誤解される青は使わず本文色を継承 */
.ookubo-sizhu-calc table.szc-chart td.szc-tsuu { font-size: 0.82em; }
.ookubo-sizhu-calc table.szc-chart td.szc-12un { font-size: 0.82em; color: #6a2a3f; }
.ookubo-sizhu-calc table.szc-chart td.szc-kub { font-size: 0.82em; color: #999; text-align: center; }
.ookubo-sizhu-calc table.szc-chart td.szc-kub-hit { color: #c0392b; font-weight: 700; font-size: 1.05em; }
.ookubo-sizhu-calc table.szc-chart td.szc-kub-base { color: #888; font-size: 0.78em; }
/* 神殺は補助星。干支や通変星と同じ強さで出さないよう、一段小さく淡い色で置く */
.ookubo-sizhu-calc table.szc-chart td.szc-ss { font-size: 0.76em; color: #5a6a7a; line-height: 1.5; }
/* 干支の関係 */
/* 下マージンは次の見出し（大運）との間隔。テーマ側でh4のmargin-topが0に
   潰れるため、ここで持たないと2pxしか空かない。14px＝「大運→流年」と同じ間合い */
.ookubo-sizhu-calc .szc-kankei { font-size: 0.88em; color: #24292f; margin: 10px 0 14px; }
.ookubo-sizhu-calc .szc-kankei-list { margin: 4px 0 0; padding-left: 1.2em; }
.ookubo-sizhu-calc .szc-kankei-list li { margin: 2px 0; line-height: 1.6; }
/* 参考扱い（破・天干の冲）は使わない流派も多いので、一段落として置く */
.ookubo-sizhu-calc .szc-kankei-list li.szc-kankei-ref { color: #8a929c; font-size: 0.94em; }
.ookubo-sizhu-calc table.szc-timeline td.szc-tl-kub { text-align: center; font-size: 0.85em; }
.ookubo-sizhu-calc table.szc-timeline tr.szc-tl-kub-hit { background: #fff5f3; }
.ookubo-sizhu-calc table.szc-timeline tr.szc-tl-kub-hit td.szc-tl-kub { color: #c0392b; font-weight: 700; }

/* 用語ツールチップ: 解説が出る語だけ点線下線で示す。
   色では示さない（リンク誤認＝デッドクリックの原因になるため）。 */
.ookubo-sizhu-calc table.szc-chart .szc-term-cell { cursor: pointer; padding: 2px; }
.ookubo-sizhu-calc .szc-term {
    display: inline-block;
    border-bottom: 1px dotted #7a5a9f;
    padding: 4px 5px;
    line-height: 1.25;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(122,90,159,0.15);
}
/* 列見出し（時柱・日柱・月柱・年柱） */
.ookubo-sizhu-calc table.szc-chart th.szc-term-cell .szc-term { padding: 3px 4px; }
.ookubo-sizhu-calc table.szc-chart .szc-term-cell[aria-expanded="true"] .szc-term,
.ookubo-sizhu-calc .szc-term[aria-expanded="true"] { background: #f3ecf8; }
.ookubo-sizhu-calc table.szc-chart .szc-term-cell:focus,
.ookubo-sizhu-calc .szc-term:focus { outline: 2px solid #7a5a9f; outline-offset: 1px; }
.ookubo-sizhu-calc .szc-chart-hint { font-size: 0.8em; color: #57606a; margin: 6px 0 0; line-height: 1.6; }
.szc-term-pop {
    position: absolute; z-index: 99999; max-width: 300px;
    background: #fff; border: 1px solid #cfd8e3; border-radius: 10px;
    box-shadow: 0 6px 20px rgba(30,58,95,.22);
    padding: 12px 14px; font-size: 0.86em; line-height: 1.75; color: #333;
}
.szc-term-pop__name { font-weight: 700; color: #1e3a5f; display: block; margin-bottom: 4px; }
.szc-term-pop[hidden] { display: none; }
@media (max-width: 480px) { .szc-term-pop { max-width: 86vw; } }

/* Very narrow viewports (iPhone SE, small Android): reduce padding/font-size
   further and allow horizontal scroll as fallback. */
@media (max-width: 420px) {
    .ookubo-sizhu-calc table.szc-chart {
        font-size: 0.85em;
    }
    .ookubo-sizhu-calc table.szc-chart th,
    .ookubo-sizhu-calc table.szc-chart td {
        padding: 4px 2px;
    }
    .ookubo-sizhu-calc table.szc-chart td.szc-kan,
    .ookubo-sizhu-calc table.szc-chart td.szc-shi { font-size: 1.25em; }
}
.ookubo-sizhu-calc .szc-daiun, .ookubo-sizhu-calc .szc-ryunen {
    overflow-x: auto;
    margin: 8px 0 14px;
}
.ookubo-sizhu-calc table.szc-timeline {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.87em;
    min-width: 580px;
}
.ookubo-sizhu-calc table.szc-timeline th,
.ookubo-sizhu-calc table.szc-timeline td {
    border: 1px solid #d0d7de;
    padding: 4px 6px;
    text-align: center;
}
.ookubo-sizhu-calc table.szc-timeline th { background: #eef3f8; }
.ookubo-sizhu-calc table.szc-timeline td.szc-gz-cell { font-weight: 600; color: #1e3a5f; }
.ookubo-sizhu-calc .szc-meta-list { font-size: 0.9em; color: #57606a; margin: 4px 0; }
.ookubo-sizhu-calc .szc-meta-list strong { color: #24292f; margin-right: 4px; }
.ookubo-sizhu-calc .szc-diff {
    background: #fff8e1;
    padding: 10px 12px;
    border-radius: 6px;
    border: 1px solid #e0c878;
    margin-bottom: 14px;
    font-size: 0.9em;
}
.ookubo-sizhu-calc .szc-diff strong { color: #7a5a00; }
.ookubo-sizhu-calc .szc-wuxing { display: flex; gap: 8px; flex-wrap: wrap; font-size: 0.88em; }
.ookubo-sizhu-calc .szc-wuxing span {
    padding: 2px 8px; border-radius: 4px; background: #f0f3f6;
}
.ookubo-sizhu-calc .szc-wuxing .szc-wx-0 { background: #e6f5e6; color: #2a5a2a; } /* 木 */
.ookubo-sizhu-calc .szc-wuxing .szc-wx-1 { background: #fce4e4; color: #8a2a2a; } /* 火 */
.ookubo-sizhu-calc .szc-wuxing .szc-wx-2 { background: #f7edd6; color: #7a5a1a; } /* 土 */
.ookubo-sizhu-calc .szc-wuxing .szc-wx-3 { background: #eef1f5; color: #4a5a6a; } /* 金 */
.ookubo-sizhu-calc .szc-wuxing .szc-wx-4 { background: #d9e9f5; color: #1a3a5a; } /* 水 */
.ookubo-sizhu-calc .szc-caution {
    font-size: 0.82em; color: #6a4a1a; margin-top: 10px;
    padding: 8px 10px; background: #fff8e1; border-radius: 4px;
    border-left: 3px solid #e0c878;
}
.ookubo-sizhu-calc .szc-privacy {
    font-size: 0.80em; color: #6a7080; margin-top: 8px;
    padding: 6px 10px; background: #f3f5f7; border-radius: 4px;
    border-left: 3px solid #8a9aae;
}
.ookubo-sizhu-calc .szc-json-section {
    margin: 20px 0 8px; padding: 14px 16px;
    border: 1px solid #cdbfe0; border-radius: 10px; background: #fcfbff;
}
.ookubo-sizhu-calc .szc-json-section h4 {
    margin: 0 0 6px; border-left-color: #7a5a9f; color: #5b3d8a;
}
.ookubo-sizhu-calc .szc-json-desc { font-size: 0.9em; color: #57606a; margin: 0 0 12px; }
.ookubo-sizhu-calc .szc-json-block {
    margin: 0 0 12px; padding: 10px 12px;
    border: 1px solid #e3d6ee; border-radius: 8px; background: #fff;
}
.ookubo-sizhu-calc .szc-json-step { font-size: 0.9em; color: #5b3d8a; margin: 0 0 8px; }
.ookubo-sizhu-calc .szc-json-btns { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 0; }
.ookubo-sizhu-calc .szc-json-btns button,
.ookubo-sizhu-calc .szc-prompt-copy {
    padding: 8px 16px; border: none; border-radius: 6px; cursor: pointer;
    font-size: 0.95em; font-weight: 600; background: #7a5a9f; color: #fff;
}
.ookubo-sizhu-calc .szc-json-btns button:hover,
.ookubo-sizhu-calc .szc-prompt-copy:hover { background: #654a85; }
.ookubo-sizhu-calc .szc-json-prompt-wrap { margin: 10px 0 4px; }
.ookubo-sizhu-calc .szc-json-prompt-wrap summary { cursor: pointer; font-size: 0.9em; font-weight: 600; color: #5b3d8a; }
.ookubo-sizhu-calc .szc-json-prompt {
    width: 100%; box-sizing: border-box; margin: 8px 0; padding: 8px 10px;
    border: 1px solid #d0d7de; border-radius: 6px; font-size: 0.86em;
    line-height: 1.5; background: #fff; color: #24292f; resize: vertical;
}
.ookubo-sizhu-calc .szc-json-links { font-size: 0.86em; margin: 8px 0 0; }
.ookubo-sizhu-calc .szc-json-links a { color: #5b3d8a; }

/* === 由来: ookubo-mond-cta.php v1.8.0 variant "rokusei_light"（六星→/mondカタログ送客・P1-3 2026-08-20） ===
   ck-6sei-salon-cta（紫・インラインstyle）と同型のborder-left箱。色相を青系に変えて
   「サロン=対面（紫）／mondカタログ=オンライン（青）」の役割を視覚的に区別する。
   既存 ck-6sei-tryai と同系色（#5b7fb9 / #f4f8fd / #2d5a8a）。 */
.ck-6sei-mond-cta {
    margin: 1.8em 0;
    padding: 15px 18px;
    border-left: 4px solid #5b7fb9;
    background: #f4f8fd;
    border-radius: 0 8px 8px 0;
    line-height: 1.85;
    font-size: 0.97em;
    color: #333;
}
.ck-6sei-mond-cta a {
    display: inline-block;
    margin-top: 7px;
    color: #2d5a8a;
    font-weight: 700;
    text-decoration: none;
    text-underline-offset: 2px;
}
.ck-6sei-mond-cta a:hover { text-decoration: underline; }

/* ============================================================
   フェーズ4（2026-08-20）: 反復インラインstyleのクラス化。
   クラス名 = 宣言のmd5先頭8桁（同じ宣言は全ページで同名）。
   生成: p76_dedupe_styles_to_classes_20260820.py --emit-css
   注意: 元は inline style＝あらゆる非importantに勝つため、全宣言 !important で
   その優先度を再現する（付けない版は Cocoon の p/img/ul 既定に負けることを実測）。
   ============================================================ */
/* ×40 on [22498] */
.ckx-c9f8db6f{display: inline-block !important; padding: 7px 16px !important; background: #fff !important; color: #4a3a8a !important; text-decoration: none !important; border: 1px solid #d8c5ea !important; border-radius: 999px !important; font-size: 0.92em !important; line-height: 1.5 !important; white-space: nowrap !important; box-shadow: 0 1px 3px rgba(61,41,82,0.12) !important; transition: background 0.15s,color 0.15s,border-color 0.15s,transform 0.15s !important;}
/* ×37 on [623, 22498] */
.ckx-71141fe4{margin: 0.4em 0 1.2em 0 !important; padding: 10px 14px !important; background: #f4f1fa !important; border: 1px solid #d8c5ea !important; border-left: 4px solid #7a5a9f !important; border-radius: 8px !important; font-size: 0.9em !important; line-height: 1.75 !important; color: #3a3050 !important;}
/* ×33 on [23462] */
.ckx-258aed58{margin-bottom:0.45em !important; background:#f3ecfa !important; border-left:3px solid #7a5a9f !important; border-radius: 8px !important; padding:0.4em 0.7em !important;}
/* ×33 on [23462] */
.ckx-943df416{display:inline-block !important; background:#7a5a9f !important; color:#fff !important; font-size:0.76em !important; font-weight:bold !important; border-radius: 999px !important; padding:1px 9px !important; margin-right:7px !important; vertical-align:middle !important;}
/* ×19 on [22498] */
.ckx-ee60c0cd{display: inline-block !important; padding: 6px 14px !important; background: linear-gradient(135deg,#7a5a9f 0%,#8568a8 100%) !important; color: #fff !important; border-radius: 999px !important; font-size: 0.86em !important; font-weight: bold !important; text-decoration: none !important; box-shadow: 0 1px 3px rgba(61,41,82,0.12) !important;}
/* ×19 on [22498] */
.ckx-f7a92ddc{display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 8px !important; margin: 0 0 8px !important;}
/* ×19 on [22498] */
.ckx-459c797e{display: inline-block !important; padding: 10px 22px !important; background: #7a5a9f !important; color: #fff !important; border: none !important; border-radius: 5px !important; font-size: 0.95em !important; font-weight: bold !important; cursor: pointer !important;}
/* ×19 on [23462] */
.ckx-904fda71{margin-bottom:0.45em !important; background:#f8f8fb !important; border-left:3px solid #c9c9d6 !important; border-radius: 8px !important; padding:0.4em 0.7em !important;}
/* ×19 on [23462] */
.ckx-95dfcce1{display:inline-block !important; background:#e9e9f0 !important; color:#4a4a5a !important; font-size:0.76em !important; font-weight:bold !important; border-radius: 999px !important; padding:1px 9px !important; margin-right:7px !important; vertical-align:middle !important;}
/* ×18 on [22498] */
.ckx-c81114c9{cursor: pointer !important; padding: 8px 12px !important; background: #f3ecfa !important; border-radius: 8px !important; color: #4a2a6f !important; font-weight: bold !important; font-size: 0.93em !important;}
/* ×18 on [22498] */
.ckx-d9f8e296{display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 10px !important;}
/* ×18 on [22498] */
.ckx-195d8b4d{margin: 8px 0 0 0 !important; font-size: 0.85em !important; color: #666 !important; line-height: 1.6 !important;}
/* ×15 on [623] */
.ckx-c36002ce{display: block !important; text-decoration: none !important; color: inherit !important; background: #fff !important; border: 1px solid #e3d6ee !important; border-radius: 8px !important; padding: 0.8em 1em !important; box-shadow: 0 1px 3px rgba(61,41,82,0.12) !important; height: 100% !important;}
/* ×15 on [623] */
.ckx-c2dcd28c{display: block !important; font-weight: bold !important; font-size: 0.95em !important; color: #5b3d8a !important; line-height: 1.4 !important; margin-bottom: 0.2em !important;}
/* ×15 on [623] */
.ckx-a48d6a89{display: block !important; font-size: 0.8em !important; color: #666 !important; line-height: 1.5 !important;}
/* ×13 on [22906] */
.ckx-16aecce1{margin:0 0 10px !important; font-size:0.9em !important; color:#444 !important; line-height:1.7 !important;}
/* ×13 on [22906] */
.ckx-de5a7660{display:flex !important; flex-wrap:wrap !important; align-items:center !important; gap:10px !important;}
/* ×13 on [22906] */
.ckx-01104cda{margin:8px 0 0 !important; font-size:0.84em !important; color:#666 !important; line-height:1.6 !important;}
/* ×12 on [623, 22498, 23462] */
.ckx-114a7c5a{color:#7a5a9f !important; text-decoration:underline !important; text-underline-offset:2px !important;}
/* ×11 on [23462] */
.ckx-6e106e83{font-size:1.02em !important; line-height:1.95 !important; list-style:none !important; padding-left:0 !important;}
/* ×11 on [623] */
.ckx-7290ebae{color:#e8d9a0 !important; text-decoration:underline !important;}
/* ×10 on [623, 22498] */
.ckx-459cb2c2{display: block !important; padding: 0.7em 0.6em !important; background: linear-gradient(135deg,#7a5a9f 0%,#8568a8 100%) !important; color: #fff !important; text-decoration: none !important; text-align: center !important; border-radius: 8px !important; font-weight: 600 !important; font-size: 0.92em !important; box-shadow: 0 2px 6px rgba(61,41,82,0.16) !important;}
/* ×9 on [22498] */
.ckx-fa7f76e3{display: block !important; font-size: 0.8em !important; color: #8a7aa0 !important; font-weight: bold !important; margin: 0 0 4px !important;}
/* ×9 on [22498] */
.ckx-1818718c{display: flex !important; flex-wrap: wrap !important; gap: 8px !important;}
/* ×9 on [22906] */
.ckx-288da577{display:inline-block !important; padding:7px 16px !important; background:#fff !important; color:#4a3a8a !important; text-decoration:none !important; border:1px solid #d8c5ea !important; border-radius: 999px !important; font-size:0.92em !important; line-height:1.5 !important; white-space:nowrap !important; box-shadow: 0 1px 3px rgba(61,41,82,0.12) !important; transition:background 0.15s,color 0.15s,border-color 0.15s,transform 0.15s !important;}
/* ×8 on [22498] */
.ckx-6288b045{margin: 0 0 12px !important; padding: 12px 16px !important; background: #fff !important; border-left: 4px solid #c9a227 !important; font-size: 0.95em !important; line-height: 1.85 !important; color: #333 !important; white-space: pre-line !important;}
/* ×8 on [23462] */
.ckx-401b173b{font-size:0.9em !important; color:#6a5a7a !important; line-height:1.8 !important; margin:0.2em 0 0.7em !important;}
/* ×7 on [22498] */
.ckx-6ac50119{border: 1px solid #e3d9ef !important; border-radius: 12px !important; padding: 14px 16px !important; margin: 0 0 14px !important; background: #fdfcff !important;}
/* ×7 on [22498] */
.ckx-1bfc7328{font-size: 1.05em !important; font-weight: bold !important; color: #4a2a6f !important; margin: 0 0 6px !important; line-height: 1.5 !important;}
/* ×7 on [22498] */
.ckx-9698ec17{font-size: 0.95em !important; color: #4b4256 !important; line-height: 1.75 !important; margin: 0 0 8px !important;}
/* ×7 on [22498] */
.ckx-d9f25826{font-size: 0.86em !important; font-weight: bold !important; color: #0a6b8a !important; background: #eef7fb !important; border-radius: 8px !important; padding: 5px 10px !important; margin: 0 0 8px !important;}
/* ×7 on [22498] */
.ckx-dadbd8f3{display: inline-block !important; background: #7a5a9f !important; color: #fff !important; font-weight: bold !important; text-decoration: none !important; border-radius: 8px !important; padding: 9px 16px !important; font-size: 0.92em !important;}
/* ×7 on [23462] */
.ckx-e72bc37d{display:inline-block !important; margin:0 6px 8px 0 !important; padding:7px 16px !important; background:#fff !important; border:1.5px solid #7a5a9f !important; border-radius: 999px !important; color:#4a2a6f !important; font-weight:600 !important; font-size:0.92em !important; text-decoration:none !important;}
/* ×6 on [22498] */
.ckx-156acc3c{width: 100% !important; height: auto !important; border: 1px solid #e3d9ef !important; border-radius: 12px !important; box-shadow: 0 4px 12px rgba(61,41,82,0.18) !important;}
/* ×6 on [22498] */
.ckx-25b62d9f{margin-top: 6px !important; font-size: 0.82em !important; color: #666 !important; line-height: 1.5 !important;}
/* ×6 on [22498] */
.ckx-af299987{margin: 1em 0 1.6em !important; border: 2px solid #c9a227 !important; border-radius: 8px !important; padding: 16px 18px !important; background: #fbf7ea !important;}
/* ×6 on [22498] */
.ckx-d8a330b0{margin: 0 0 10px !important; font-size: 1.05em !important; color: #7a5a10 !important; font-weight: 800 !important;}  /* h5専用。site-fontsの800!importantが従来勝っていたため800で現状再現 */
/* ×6 on [22498] */
.ckx-f1909c27{flex: 1 !important; min-width: 160px !important; padding: 9px 12px !important; border: 1px solid #c9a227 !important; border-radius: 6px !important; font-size: 0.95em !important;}
/* ×6 on [22498] */
.ckx-45b0d97b{padding: 9px 20px !important; background: #7a5a10 !important; color: #fff !important; border: none !important; border-radius: 6px !important; font-weight: bold !important; cursor: pointer !important; font-size: 0.95em !important;}
/* ×5 on [22906] */
.ckx-bd7e7abb{display:inline-block !important; margin-left:6px !important; padding:1px 7px !important; background:#e74c3c !important; color:#fff !important; border-radius: 8px !important; font-size:0.62em !important; font-weight:bold !important; vertical-align:middle !important;}
/* ×4 on [23462] */
.ckx-0fe7f296{width:100% !important; height:auto !important; border:1px solid #e5e0ee !important; border-radius: 12px !important;}

/* === 由来: ookubo-tesou-checker.php（手相チェッカー。フェーズ4でスコープ化 #TC 前置） === */
#TC{--komebai:#b8556f;--murasaki:#7a6997;--ink:#4a4038;--paper:#f7f2ec;--card:#fffdfb;
    --faint:#c9beb4;--line:#e6ddd4;--accent:#b8556f;}#TC *{box-sizing:border-box}#TC{max-width:760px;margin:0 auto;padding:6px 4px 40px;color:var(--ink);
    font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.7}#TC h3{font-size:17px;margin:26px 0 4px;color:var(--komebai);font-weight:700}#TC .lead{font-size:13px;color:#8a7d72;margin:0 0 18px}#TC .q{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 16px 18px;margin:0 0 16px}#TC .q .qt{font-size:14.5px;font-weight:700;margin:0 0 3px}#TC .q .qh{font-size:12px;color:#9a8d82;margin:0 0 12px}#TC .opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}#TC .opt{border:2px solid var(--line);border-radius:12px;background:#fff;padding:8px 6px 10px;cursor:pointer;
    text-align:center;transition:border-color .15s,background .15s;min-height:44px}#TC .opt:hover{border-color:#e2c3cd}#TC .opt.sel{border-color:var(--accent);background:#fdf4f6}#TC .opt svg{width:100%;max-width:118px;height:auto;display:block;margin:0 auto 4px}#TC .opt .ol{font-size:12.5px;font-weight:600}#TC .opt .od{font-size:11px;color:#9a8d82;margin-top:1px}#TC .checks{display:flex;flex-wrap:wrap;gap:8px}#TC .chk{border:2px solid var(--line);border-radius:10px;background:#fff;padding:8px 12px;cursor:pointer;font-size:13px}#TC .chk.sel{border-color:var(--accent);background:#fdf4f6}#TC .dsec{margin:4px 0 12px;font-size:13px;font-weight:700;color:#8f5aa0}#TC #moreBtn{width:100%;border:2px dashed #d9c3cf;border-radius:14px;background:#fdfaf8;color:#a06a80;
    padding:14px;font-size:14px;font-weight:700;cursor:pointer;margin:2px 0 16px}#TC #moreBtn:hover{background:#fbf3f6}#TC .actions{margin:22px 0 0;text-align:center}#TC .prenote{margin:14px auto 0;max-width:560px;background:#fdfaf8;border:1px dashed #d9c3cf;
    border-radius:12px;padding:12px 16px;text-align:left;font-size:12.5px;line-height:1.7}#TC .prenote .pn-t{font-weight:700;color:#a06a80;font-size:13px;margin:0 0 6px;text-align:center}#TC .prenote ul{margin:0;padding-left:1.3em;list-style:disc}#TC .prenote li{margin:2px 0}#TC .prenote .pn-n{color:#8a7d72;font-size:11.5px;margin-top:6px}#TC .btn{display:inline-block;border:0;border-radius:999px;padding:13px 30px;font-size:15px;font-weight:700;
    cursor:pointer;background:linear-gradient(135deg,#b8556f,#8f5aa0);color:#fff;box-shadow:0 6px 16px rgba(150,80,110,.28)}#TC .btn.sub{background:#fff;color:var(--komebai);border:1.5px solid #e2c3cd;box-shadow:none;font-size:13px;padding:9px 18px}#TC #result{display:none;margin-top:26px}#TC .member-zone{margin-top:30px;padding-top:4px;border-top:1px dashed #e6ddd4}#TC #result.show{display:block}#TC .rbox{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px}#TC .noans{background:#fdf6ec;border-color:#e3cfae;line-height:1.85}#TC .noans p{margin:0 0 .6em}#TC .noans p:last-child{margin-bottom:0}#TC .typecard{background:linear-gradient(135deg,#b8556f,#8f5aa0);color:#fff;border-radius:16px;
    padding:20px 18px;text-align:center;margin:0 0 8px}#TC .typecard .tk{font-size:12px;opacity:.85;letter-spacing:.1em}#TC .typecard .tn{font-size:24px;font-weight:700;margin:4px 0 8px}#TC .typecard .td{font-size:13px;text-align:left;opacity:.96;line-height:1.75}#TC #composite svg{width:100%;max-width:330px;height:auto;border-radius:10px}#TC .badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:8px}#TC .badge{font-size:11.5px;color:#8f5aa0;background:#f5f0f8;border:1px solid #e3d8ec;border-radius:999px;padding:3px 10px}#TC .theme{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line)}#TC .theme:last-child{border-bottom:0}#TC .theme .ti{font-size:20px;line-height:1.3;width:28px;text-align:center}#TC .theme .tb{flex:1}#TC .theme .tt{font-size:13.5px;font-weight:700}#TC .theme .meter{vertical-align:-2px;margin-left:8px}#TC .theme .tx{font-size:13px;margin-top:2px}#TC textarea{width:100%;min-height:180px;border:1px solid var(--line);border-radius:10px;padding:12px;
    font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;resize:vertical;background:#fbfaf8}#TC .rrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}#TC /* プロンプト本文は2, #TC 000字超あり全文展開するとページが極端に縦長になるため、高さ固定＋スクロール。
     下端の内側シャドウは「続きがある」合図。コピーは全文が対象（表示範囲に依存しない）。 */
  .prompt{white-space:pre-wrap;font-size:12.5px;background:#fbfaf8;border:1px solid var(--line);border-radius:10px;padding:12px;line-height:1.6;
    max-height:300px;overflow-y:auto;overscroll-behavior:contain;box-shadow:inset 0 -14px 14px -14px rgba(0,0,0,0.15)}#TC .reading p{margin:0 0 9px;font-size:13.5px}#TC .reading .rl{color:var(--komebai);font-weight:700}#TC .reading .disc{font-size:11.5px;color:#a99;margin-top:6px}#TC .gated{background:linear-gradient(135deg,#fbf4f6,#f5f0f8);border-color:#ecdfe8}#TC .lock{display:flex;flex-wrap:wrap;gap:8px;align-items:center}#TC .lock input{border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:14px;flex:1;min-width:150px}#TC .cta{margin-top:18px;text-align:center;background:linear-gradient(135deg,#faf2f5,#f3eef7);border:1px solid #ecdfe8;
    border-radius:14px;padding:16px}#TC .cta a{color:#fff;background:linear-gradient(135deg,#b8556f,#8f5aa0);text-decoration:none;border-radius:999px;
    padding:11px 24px;font-weight:700;font-size:14px;display:inline-block;margin-top:8px}#TC .hint{font-size:11.5px;color:#a99;margin-top:8px}#TC .hint a{color:#b8556f;text-decoration:underline;font-weight:600}#TC .hint a:hover{color:#8f5aa0}#TC .cs-badge{display:inline-block;font-size:11px;font-weight:700;color:#fff;background:#c99a2e;
    border-radius:999px;padding:2px 10px;vertical-align:middle;margin-left:4px;letter-spacing:.02em}#TC .coming-soon{background:#fff8e8;border:1px solid #e6d29a;border-radius:10px;padding:11px 14px;
    font-size:12.5px;color:#8a6d3b;margin:8px 0 2px;line-height:1.7}#TC .mz-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}#TC .mz-pill{display:inline-block;padding:6px 12px;border-radius:999px;font-size:12.5px;text-decoration:none;border:1.5px solid var(--line);background:#fff;color:var(--ink)}#TC .mz-pill.gold{background:#fffaf0;border-color:#c9a227}#TC .tlead{margin:8px 0 0;font-size:12.5px}#TC .tlead a{color:#b8556f}

