/* ================================================================
   ococotomo Dictionary — Shared Stylesheet
   対象: body.single-dictionary
   用途: /wp-content/themes/[theme]/dictionaly-shared.css に設置
================================================================ */

/* ── リセット（辞典エリア内のみ） ── */
.single-dictionary .dict-wrap *{box-sizing:border-box;margin:0;padding:0;}

/* ── CSS変数 ── */
.single-dictionary .dict-wrap{
  --sage:#ff8800;
  --primary:#ff8800;
  --sage-light:#fff3e6;
  --sage-mid:#ffcc88;
  --ink:#1e1a16;
  --ink-mid:#5a4e44;
  --ink-light:#9a8e82;
  --paper-warm:#fdf6ef;
  --border:#e8ddd0;
  --serif:'Noto Sans JP', sans-serif;
  --sans:'Noto Sans JP', sans-serif;
  font-family:var(--sans);
  color:var(--ink);
  max-width:720px;
  margin:0 auto;
  padding-bottom:80px;
}

/* ── Hero ── */
.single-dictionary .dict-hero{padding:10px 0 48px;text-align:center;border-bottom:1px solid var(--border);}
.single-dictionary .dict-hero-tag{display:inline-block;font-size:11px;font-weight:500;letter-spacing:.12em;color:var(--sage);background:var(--sage-light);border:1px solid var(--sage-mid);border-radius:100px;padding:4px 14px;margin-bottom:20px;}
.single-dictionary .dict-hero-title{font-family:var(--serif);font-size:clamp(24px,5vw,36px);font-weight:300;color:var(--ink);line-height:1.5;letter-spacing:.03em;margin-bottom:14px;}
.single-dictionary .dict-hero-lead{font-size:14px;color:var(--ink-mid);line-height:1.9;max-width:480px;margin:0 auto 24px;}
.single-dictionary .dict-hero-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
.single-dictionary .dict-hero-nav-btn{font-size:12px;color:var(--ink-mid);background:var(--paper-warm);border:1px solid var(--border);border-radius:8px;padding:7px 14px;text-decoration:none;display:inline-block;transition:all .18s;cursor:pointer;font-family:var(--sans);}
.single-dictionary .dict-hero-nav-btn:hover{border-color:var(--sage);color:var(--sage);background:var(--sage-light);}

/* ── Sticky Nav ── */
.single-dictionary .dict-nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border);}
.single-dictionary .dict-nav-inner{display:flex;overflow-x:auto;gap:0;scrollbar-width:none;max-width:720px;margin:0 auto;}
.single-dictionary .dict-nav-inner::-webkit-scrollbar{display:none;}
.single-dictionary .dict-nav-btn{flex-shrink:0;padding:11px 14px;font-size:12px;color:var(--ink-light);border:none;background:none;cursor:pointer;font-family:var(--sans);transition:color .18s;white-space:nowrap;border-bottom:2px solid transparent;}
.single-dictionary .dict-nav-btn:hover{color:var(--ink-mid);}
.single-dictionary .dict-nav-btn.active{color:var(--sage);border-bottom-color:var(--primary);font-weight:500;}

/* ── Section Header ── */
.single-dictionary .sec-header{padding:52px 32px 36px;border-bottom:1px solid var(--border);}
.single-dictionary .sec-label{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.single-dictionary .sec-label-line{width:28px;height:1px;background:var(--sage);}
.single-dictionary .sec-label-text{font-size:11px;font-weight:500;letter-spacing:.14em;color:var(--sage);}
.single-dictionary .sec-title{font-family:var(--serif);font-size:clamp(22px,4vw,28px);font-weight:400;color:var(--ink);line-height:1.5;letter-spacing:.03em;margin-bottom:14px;}
.single-dictionary .sec-lead{font-size:14px;color:var(--ink-mid);line-height:1.9;max-width:520px;}
.single-dictionary .toc-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;}
.single-dictionary .toc-pill{font-size:11.5px;color:var(--ink-mid);background:#fff;border:1px solid var(--border);border-radius:100px;padding:4px 12px;text-decoration:none;display:inline-block;transition:all .18s;}
.single-dictionary .toc-pill:hover{border-color:var(--sage);color:var(--sage);background:var(--sage-light);}

/* ── Content ── */
.single-dictionary .content{padding:0 32px;}
@media(max-width:600px){
  .single-dictionary .dict-hero,
  .single-dictionary .sec-header,
  .single-dictionary .content{padding-left:0;padding-right:0;}
}
.single-dictionary .h3-block{padding-top:52px;}
.single-dictionary .h3-anchor{display:block;position:relative;top:-72px;visibility:hidden;}
.single-dictionary .h3-label{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;letter-spacing:.1em;color:var(--sage);margin-bottom:12px;}
.single-dictionary .h3-dot{width:6px;height:6px;border-radius:50%;background:var(--sage);}
.single-dictionary h3.heading{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--ink);line-height:1.6;margin-bottom:18px;letter-spacing:.03em;padding-bottom:14px;border-bottom:1px solid var(--border);}
.single-dictionary .body-text{font-size:14px;color:var(--ink-mid);line-height:2.0;margin-bottom:18px;}
.single-dictionary .section-divider{height:1px;background:var(--border);margin:52px 0 0;}

/* ── Callout ── */
.single-dictionary .callout{border-radius:10px;padding:16px 18px;margin:20px 0;display:flex;gap:12px;align-items:baseline;}
.single-dictionary .c-sage{background:var(--sage-light);border:1px solid var(--sage-mid);}
.single-dictionary .c-warm{background:#fdf8f0;border:1px solid #e8d8c0;}
.single-dictionary .c-blue{background:#f0f4fc;border:1px solid #c0d0e8;}
.single-dictionary .c-red{background:#fdf0f0;border:1px solid #e8c0c0;}
.single-dictionary .callout-icon{font-size:15px;flex-shrink:0;margin-top:1px;}
.single-dictionary .callout-text{font-size:13px;line-height:1.85;}
.single-dictionary .c-sage .callout-text{color:#7a4200;}
.single-dictionary .c-warm .callout-text{color:#6a4820;}
.single-dictionary .c-blue .callout-text{color:#2a3a5a;}
.single-dictionary .c-red .callout-text{color:#7a2a2a;}
.single-dictionary .callout-title{font-weight:500;display:block;margin-bottom:3px;font-size:13.5px;}

/* ── Buttons ── */
.single-dictionary .btn-primary{display:block;width:100%;padding:14px;background:var(--primary);color:#fff;border:none;border-radius:9px;font-family:var(--sans);font-size:14px;font-weight:500;cursor:pointer;text-align:center;transition:all .2s;}
.single-dictionary .btn-primary:hover{background:#e07000;box-shadow:0 4px 16px rgba(255,136,0,.22);}
.single-dictionary .btn-secondary{display:block;width:100%;padding:12px;background:none;color:var(--ink-mid);border:1px solid var(--border);border-radius:9px;font-family:var(--sans);font-size:13px;cursor:pointer;text-align:center;transition:all .18s;}
.single-dictionary .btn-secondary:hover{border-color:var(--sage);color:var(--sage);background:var(--sage-light);}

/* ──────────────────────────────────────
   SELF CHECK
────────────────────────────────────── */
.single-dictionary .check-intro-card{border:1px solid var(--border);border-radius:14px;padding:36px 28px;text-align:center;margin-top:24px;}
.single-dictionary .check-intro-emoji{font-size:40px;margin-bottom:16px;}
.single-dictionary .check-intro-title{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--ink);line-height:1.7;margin-bottom:12px;}
.single-dictionary .check-intro-sub{font-size:13px;color:var(--ink-light);line-height:1.8;margin-bottom:28px;}
.single-dictionary .notice-box{display:inline-flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--ink-light);background:var(--paper-warm);border:1px solid var(--border);border-radius:8px;padding:10px 14px;text-align:left;max-width:440px;line-height:1.7;margin-bottom:24px;}
.single-dictionary .btn-start{background:var(--sage);border:none;color:#fff;font-size:14px;font-family:var(--sans);font-weight:500;padding:14px 32px;border-radius:8px;cursor:pointer;transition:all .2s;display:block;margin:0 auto;}
.single-dictionary .btn-start:hover{background:#e07000;box-shadow:0 4px 16px rgba(255,136,0,.22);}
.single-dictionary .progress-wrap{padding:20px 32px 0;}
@media(max-width:600px){.single-dictionary .progress-wrap{padding:20px 0 0;}}
.single-dictionary .progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.single-dictionary .progress-lbl{font-size:11px;color:var(--ink-light);font-weight:500;letter-spacing:.05em;}
.single-dictionary .progress-track{height:4px;background:var(--border);border-radius:100px;overflow:hidden;}
.single-dictionary .progress-fill{height:100%;background:var(--primary);border-radius:100px;transition:width .5s cubic-bezier(.4,0,.2,1);}
.single-dictionary .q-area{margin:20px auto 0;padding:0 32px;}
@media(max-width:600px){.single-dictionary .q-area{padding:0;}}
.single-dictionary .q-card{border:1px solid var(--border);border-radius:14px;padding:28px 24px;animation:dict-fadeSlide .3s ease;}
@keyframes dict-fadeSlide{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.single-dictionary .q-category{font-size:11px;font-weight:500;letter-spacing:.1em;color:var(--sage);margin-bottom:12px;}
.single-dictionary .q-num{font-size:11px;color:var(--ink-light);float:right;}
.single-dictionary .q-text{font-family:var(--serif);font-size:16px;font-weight:400;color:var(--ink);line-height:1.75;margin-bottom:24px;letter-spacing:.02em;}
.single-dictionary .q9-note{display:flex;gap:8px;align-items:flex-start;background:#fff8f0;border:1px solid #f0d8c0;border-radius:8px;padding:10px 12px;margin-bottom:16px;font-size:12px;color:#7c4a2e;line-height:1.7;}
.single-dictionary .opts{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
@media(max-width:380px){.single-dictionary .opts{grid-template-columns:1fr;}}
.single-dictionary .opt-btn{border:1.5px solid var(--border);border-radius:9px;background:#fff;padding:12px 10px;cursor:pointer;transition:all .18s;text-align:left;display:flex;align-items:center;gap:9px;font-family:var(--sans);}
.single-dictionary .opt-btn:hover,.single-dictionary .opt-btn.sel{border-color:var(--sage);background:var(--sage-light);}
.single-dictionary .opt-dot{width:17px;height:17px;border-radius:50%;border:1.5px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .18s;}
.single-dictionary .opt-btn.sel .opt-dot{background:var(--sage);border-color:var(--sage);}
.single-dictionary .opt-btn.sel .opt-dot::after{content:'';width:6px;height:6px;background:#fff;border-radius:50%;display:block;}
.single-dictionary .opt-label{font-size:13px;color:var(--ink);line-height:1.3;}
.single-dictionary .opt-btn.sel .opt-label{color:var(--sage);font-weight:500;}
.single-dictionary .q-nav{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:16px;border-top:1px solid var(--border);gap:10px;}
.single-dictionary .btn-back{background:none;border:1px solid var(--border);color:var(--ink-mid);font-size:12.5px;font-family:var(--sans);padding:9px 18px;border-radius:7px;cursor:pointer;transition:all .18s;}
.single-dictionary .btn-back:hover{border-color:var(--ink-mid);}
.single-dictionary .btn-next{background:var(--sage);border:none;color:#fff;font-size:13.5px;font-family:var(--sans);font-weight:500;padding:11px 24px;border-radius:7px;cursor:pointer;transition:all .2s;flex:1;max-width:200px;}
.single-dictionary .btn-next:hover{background:#e07000;transform:translateY(-1px);}
.single-dictionary .btn-next:disabled{background:var(--border);color:var(--ink-light);cursor:not-allowed;transform:none;}
.single-dictionary .result-wrap{margin:20px auto 0;padding:0 32px;animation:dict-fadeSlide .4s ease;}
@media(max-width:600px){.single-dictionary .result-wrap{padding:0;}}
.single-dictionary .q9-flag{background:#fff5f5;border:1px solid #f0c0c0;border-radius:9px;padding:14px 16px;margin-bottom:14px;font-size:13px;color:#7c2e2e;line-height:1.8;}
.single-dictionary .score-display{text-align:center;border:1px solid var(--border);border-radius:14px;padding:32px 24px;margin-bottom:16px;}
.single-dictionary .score-lbl{font-size:11px;color:var(--ink-light);letter-spacing:.1em;margin-bottom:6px;}
.single-dictionary .score-num{font-family:var(--serif);font-size:48px;font-weight:300;color:var(--ink);line-height:1;margin-bottom:3px;}
.single-dictionary .score-max{font-size:12px;color:var(--ink-light);margin-bottom:16px;}
.single-dictionary .score-bar-track{height:6px;background:var(--border);border-radius:100px;margin:0 auto 16px;max-width:280px;overflow:hidden;}
.single-dictionary .score-bar-fill{height:100%;border-radius:100px;transition:width 1s cubic-bezier(.4,0,.2,1) .3s;}
.single-dictionary .result-tag{display:inline-block;font-size:12px;font-weight:500;letter-spacing:.08em;border-radius:100px;padding:3px 14px;border:1px solid;}
.single-dictionary .result-card{border:1px solid var(--border);border-radius:14px;padding:24px;margin-bottom:14px;}
.single-dictionary .result-level{font-family:var(--serif);font-size:19px;font-weight:400;margin-bottom:10px;}
.single-dictionary .result-message{font-size:13.5px;color:var(--ink-mid);line-height:1.8;margin-bottom:6px;}
.single-dictionary .result-detail{font-size:12.5px;color:var(--ink-light);line-height:1.8;margin-bottom:16px;}
.single-dictionary .result-action{border-radius:9px;padding:14px 16px;font-size:13px;line-height:1.8;border:1px solid;}
.single-dictionary .action-lbl{font-size:10.5px;font-weight:500;letter-spacing:.1em;margin-bottom:5px;display:block;}
.single-dictionary .result-btns{display:flex;flex-direction:column;gap:8px;margin-top:16px;}
.single-dictionary .disclaimer{font-size:11px;color:var(--ink-light);line-height:1.8;text-align:center;padding:0 8px;margin-top:20px;}

/* ──────────────────────────────────────
   ABOUT
────────────────────────────────────── */
.single-dictionary .distinction-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin:20px 0;}
@media(max-width:600px){.single-dictionary .distinction-grid{grid-template-columns:1fr;}}
.single-dictionary .distinction-cell{background:#fff;padding:20px 18px;}
.single-dictionary .d-tag{font-size:11px;font-weight:500;letter-spacing:.08em;margin-bottom:10px;display:inline-block;padding:3px 10px;border-radius:100px;}
.single-dictionary .tag-normal{background:var(--sage-light);color:var(--sage);border:1px solid var(--sage-mid);}
.single-dictionary .tag-dep{background:#f0e8f5;color:#6b3a8a;border:1px solid #d4b8e8;}
.single-dictionary .d-title{font-family:var(--serif);font-size:15px;font-weight:400;color:var(--ink);margin-bottom:8px;}
.single-dictionary .d-desc{font-size:12.5px;color:var(--ink-mid);line-height:1.85;}
.single-dictionary .brain-box{border:1px solid var(--border);border-radius:12px;padding:20px;margin:20px 0;display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;}
@media(max-width:600px){.single-dictionary .brain-box{grid-template-columns:1fr;}}
.single-dictionary .brain-circle{width:72px;height:72px;background:var(--sage-light);border:1px solid var(--sage-mid);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;}
.single-dictionary .brain-text h4{font-family:var(--serif);font-size:14.5px;font-weight:400;color:var(--ink);margin-bottom:6px;}
.single-dictionary .brain-text p{font-size:13px;color:var(--ink-mid);line-height:1.85;}
.single-dictionary .type-card{border:1px solid var(--border);border-radius:11px;margin-bottom:10px;overflow:hidden;cursor:pointer;transition:border-color .2s;}
.single-dictionary .type-card:hover{border-color:var(--sage-mid);}
.single-dictionary .type-card.open{border-color:var(--sage);}
.single-dictionary .type-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;gap:10px;}
.single-dictionary .type-left{display:flex;align-items:center;gap:12px;flex:1;}
.single-dictionary .type-icon{width:34px;height:34px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.single-dictionary .type-name{font-family:var(--serif);font-size:14.5px;font-weight:400;color:var(--ink);margin-bottom:1px;}
.single-dictionary .type-sub{font-size:11.5px;color:var(--ink-light);}
.single-dictionary .type-chev{font-size:12px;color:var(--ink-light);transition:transform .25s;flex-shrink:0;}
.single-dictionary .type-card.open .type-chev{transform:rotate(180deg);}
.single-dictionary .type-body{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.single-dictionary .type-card.open .type-body{max-height:400px;}
.single-dictionary .type-content{padding:0 18px 18px;border-top:1px solid var(--border);}
.single-dictionary .type-inner{padding-top:14px;font-size:13px;color:var(--ink-mid);line-height:1.85;}
.single-dictionary .type-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.single-dictionary .type-tag{font-size:11px;padding:3px 9px;border-radius:100px;background:var(--sage-light);color:var(--sage);border:1px solid var(--sage-mid);}
.single-dictionary .stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0;}
@media(max-width:600px){.single-dictionary .stat-grid{grid-template-columns:1fr 1fr;}}
.single-dictionary .stat-card{border:1px solid var(--border);border-radius:11px;padding:18px 14px;text-align:center;}
.single-dictionary .stat-num{font-family:var(--serif);font-size:28px;font-weight:300;color:var(--ink);line-height:1;margin-bottom:3px;}
.single-dictionary .stat-unit{font-size:13px;}
.single-dictionary .stat-desc{font-size:11px;color:var(--ink-light);line-height:1.6;margin-top:6px;}
.single-dictionary .personality-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:18px 0;}
@media(max-width:600px){.single-dictionary .personality-grid{grid-template-columns:1fr;}}
.single-dictionary .p-item{border:1px solid var(--border);border-radius:9px;padding:14px;display:flex;align-items:flex-start;gap:10px;}
.single-dictionary .p-dot{width:7px;height:7px;border-radius:50%;background:var(--sage);flex-shrink:0;margin-top:8px;}
.single-dictionary .p-text{font-size:13px;color:var(--ink-mid);line-height:1.7;}
.single-dictionary .p-em{font-weight:500;color:var(--ink);font-family:var(--serif);display:block;margin-bottom:2px;font-size:13.5px;}

/* ──────────────────────────────────────
   SYMPTOMS
────────────────────────────────────── */
.single-dictionary .tab-nav{display:flex;border:1px solid var(--border);border-radius:9px;overflow:hidden;margin-bottom:20px;background:var(--paper-warm);}
.single-dictionary .tab-btn{flex:1;padding:11px 8px;border:none;background:none;font-family:var(--sans);font-size:12.5px;color:var(--ink-light);cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:3px;border-right:1px solid var(--border);line-height:1.2;}
.single-dictionary .tab-btn:last-child{border-right:none;}
.single-dictionary .tab-btn .ti{font-size:17px;}
.single-dictionary .tab-btn:hover{background:#fff;color:var(--ink-mid);}
.single-dictionary .tab-btn.active{background:#fff;color:var(--sage);font-weight:500;box-shadow:inset 0 -2px 0 var(--primary);}
.single-dictionary .sym-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;animation:dict-fadeSlide .3s ease;}
@media(max-width:600px){.single-dictionary .sym-grid{grid-template-columns:1fr;}}
.single-dictionary .sym-card{border:1px solid var(--border);border-radius:11px;padding:16px 14px;display:flex;align-items:flex-start;gap:10px;}
.single-dictionary .sym-icon-wrap{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.single-dictionary .sym-name{font-family:var(--serif);font-size:13.5px;font-weight:400;color:var(--ink);margin-bottom:3px;}
.single-dictionary .sym-desc{font-size:12px;color:var(--ink-light);line-height:1.65;}
.single-dictionary .two-weeks-box{border:1px solid var(--border);border-radius:13px;padding:22px;margin:20px 0;text-align:center;}
.single-dictionary .tw-num{font-family:var(--serif);font-size:48px;font-weight:300;color:var(--ink);line-height:1;margin-bottom:3px;}
.single-dictionary .tw-unit{font-size:14px;color:var(--ink-mid);margin-bottom:10px;}
.single-dictionary .tw-desc{font-size:12.5px;color:var(--ink-light);line-height:1.8;max-width:360px;margin:0 auto;}
.single-dictionary .earlylist{list-style:none;display:flex;flex-direction:column;gap:8px;}
.single-dictionary .earlyitem{border:1px solid var(--border);border-radius:9px;padding:14px 16px;display:flex;align-items:flex-start;gap:12px;transition:border-color .18s;}
.single-dictionary .earlyitem:hover{border-color:var(--sage-mid);}
.single-dictionary .early-badge{width:26px;height:26px;border-radius:6px;background:var(--sage-light);border:1px solid var(--sage-mid);display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;}
.single-dictionary .early-title{font-size:13.5px;font-family:var(--serif);font-weight:400;color:var(--ink);margin-bottom:3px;}
.single-dictionary .early-desc{font-size:12px;color:var(--ink-light);line-height:1.7;}
.single-dictionary .miss-tag{display:inline-block;font-size:10px;font-weight:500;letter-spacing:.04em;color:#b85a30;background:#fdf2ec;border:1px solid #e8c09a;border-radius:100px;padding:1px 7px;margin-left:5px;vertical-align:middle;}
.single-dictionary .sev-bar-track{height:7px;background:linear-gradient(to right,#7caa9a,#c8a040,#c06040,#a03030);border-radius:100px;margin-bottom:5px;}
.single-dictionary .sev-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--ink-light);font-weight:500;margin-bottom:20px;}
.single-dictionary .sev-cards{display:flex;flex-direction:column;gap:12px;}
.single-dictionary .sev-card{border-radius:12px;overflow:hidden;border:1px solid;cursor:pointer;transition:all .2s;}
.single-dictionary .sev-header{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;gap:10px;}
.single-dictionary .sev-left{display:flex;align-items:center;gap:10px;}
.single-dictionary .sev-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;}
.single-dictionary .sev-label{font-family:var(--serif);font-size:15.5px;font-weight:400;}
.single-dictionary .sev-score{font-size:11.5px;opacity:.7;font-family:var(--sans);margin-left:4px;}
.single-dictionary .sev-tag{font-size:11px;font-weight:500;letter-spacing:.06em;border-radius:100px;padding:3px 11px;border:1px solid;white-space:nowrap;}
.single-dictionary .sev-chev{font-size:11px;transition:transform .25s;opacity:.5;flex-shrink:0;}
.single-dictionary .sev-card.open .sev-chev{transform:rotate(180deg);}
.single-dictionary .sev-body{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.single-dictionary .sev-card.open .sev-body{max-height:400px;}
.single-dictionary .sev-content{border-top:1px solid;padding:16px 18px 18px;}
.single-dictionary .sev-desc{font-size:13px;line-height:1.85;margin-bottom:12px;}
.single-dictionary .sev-symptoms{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px;}
.single-dictionary .sev-sym-tag{font-size:11.5px;padding:2px 9px;border-radius:100px;border:1px solid;}
.single-dictionary .sev-action{font-size:13px;border-radius:8px;padding:11px 13px;line-height:1.75;border:1px solid;}

/* ──────────────────────────────────────
   CAUSES
────────────────────────────────────── */
.single-dictionary .nt-grid{display:grid;grid-template-columns:1fr 1fr 1fr;border-bottom:1px solid var(--border);}
@media(max-width:600px){.single-dictionary .nt-grid{grid-template-columns:1fr;}}
.single-dictionary .nt-cell{padding:18px 16px;border-right:1px solid var(--border);}
.single-dictionary .nt-cell:last-child{border-right:none;}
.single-dictionary .nt-name{font-size:12.5px;font-weight:500;color:var(--ink);margin-bottom:5px;display:flex;align-items:center;gap:5px;}
.single-dictionary .nt-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.single-dictionary .nt-role{font-size:12px;color:var(--ink-mid);line-height:1.7;margin-bottom:7px;}
.single-dictionary .nt-when{font-size:11.5px;color:var(--ink-light);line-height:1.6;padding-top:7px;border-top:1px solid var(--border);}
.single-dictionary .cause-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:20px;}
@media(max-width:600px){.single-dictionary .cause-tabs{grid-template-columns:repeat(2,1fr);}}
.single-dictionary .cause-tab{border:1.5px solid var(--border);border-radius:9px;padding:12px 7px;cursor:pointer;text-align:center;transition:all .2s;font-family:var(--sans);background:none;}
.single-dictionary .cause-tab:hover,.single-dictionary .cause-tab.active{border-color:var(--primary);background:var(--sage-light);}
.single-dictionary .cause-tab-icon{font-size:19px;margin-bottom:5px;}
.single-dictionary .cause-tab-lbl{font-size:11.5px;color:var(--ink-mid);line-height:1.3;white-space:pre-line;}
.single-dictionary .cause-tab.active .cause-tab-lbl{color:var(--primary);font-weight:500;}
.single-dictionary .cause-detail{border:1px solid var(--border);border-radius:12px;padding:22px;animation:dict-fadeSlide .3s ease;margin-bottom:20px;}
.single-dictionary .cause-detail-title{font-family:var(--serif);font-size:17px;font-weight:400;color:var(--ink);margin-bottom:10px;display:flex;align-items:center;gap:9px;}
.single-dictionary .cause-detail-desc{font-size:13.5px;color:var(--ink-mid);line-height:1.9;margin-bottom:14px;}
.single-dictionary .cause-list{list-style:none;display:flex;flex-direction:column;gap:7px;}
.single-dictionary .cause-item{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--ink-mid);line-height:1.7;padding:9px 12px;background:var(--paper-warm);border:1px solid var(--border);border-radius:7px;}
.single-dictionary .cause-bullet{width:5px;height:5px;border-radius:50%;background:var(--sage);flex-shrink:0;margin-top:6px;}
.single-dictionary .stress-row{display:grid;grid-template-columns:1fr auto 70px;align-items:center;gap:10px;font-size:12.5px;color:var(--ink-mid);}
.single-dictionary .stress-track{height:5px;background:var(--border);border-radius:100px;overflow:hidden;}
.single-dictionary .stress-fill{height:100%;border-radius:100px;}
.single-dictionary .stress-score{font-size:11.5px;color:var(--ink-light);text-align:right;white-space:nowrap;}
.single-dictionary .cycle-diagram{border:1px solid var(--border);border-radius:14px;padding:24px;margin:20px 0;}
.single-dictionary .cycle-title{font-family:var(--serif);font-size:15.5px;font-weight:400;color:var(--ink);margin-bottom:4px;}
.single-dictionary .cycle-sub{font-size:12px;color:var(--ink-light);margin-bottom:18px;}
.single-dictionary .cycle-nodes{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;align-items:center;}
.single-dictionary .cycle-node{background:var(--paper-warm);border:1px solid var(--border);border-radius:9px;padding:10px 14px;font-size:12.5px;color:var(--ink-mid);text-align:center;min-width:90px;line-height:1.35;}
.single-dictionary .cycle-node strong{display:block;font-weight:500;font-family:var(--serif);color:var(--ink);font-size:13px;margin-bottom:1px;}
.single-dictionary .cycle-arrow{font-size:16px;color:var(--sage-mid);flex-shrink:0;}
.single-dictionary .cycle-note{font-size:12px;color:var(--ink-light);text-align:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--border);line-height:1.7;}
.single-dictionary .break-list{display:flex;flex-direction:column;gap:9px;margin:18px 0;}
.single-dictionary .break-item{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--border);border-radius:9px;padding:14px 16px;transition:border-color .18s;}
.single-dictionary .break-item:hover{border-color:var(--sage-mid);}
.single-dictionary .break-num{width:26px;height:26px;border-radius:6px;background:var(--primary);color:#fff;font-size:12px;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.single-dictionary .break-title{font-size:13.5px;font-family:var(--serif);font-weight:400;color:var(--ink);margin-bottom:3px;}
.single-dictionary .break-desc{font-size:12.5px;color:var(--ink-light);line-height:1.7;}

/* ──────────────────────────────────────
   TREATMENT
────────────────────────────────────── */
.single-dictionary .visit-list{display:flex;flex-direction:column;gap:7px;margin:18px 0;}
.single-dictionary .visit-item{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--border);border-radius:9px;padding:12px 14px;}
.single-dictionary .visit-check{width:20px;height:20px;border-radius:50%;background:var(--sage-light);border:1.5px solid var(--sage-mid);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;color:var(--sage);}
.single-dictionary .visit-text{font-size:13px;color:var(--ink-mid);line-height:1.7;}
.single-dictionary .clinic-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;}
@media(max-width:600px){.single-dictionary .clinic-grid{grid-template-columns:1fr;}}
.single-dictionary .clinic-card{border:1px solid var(--border);border-radius:11px;padding:18px 16px;}
.single-dictionary .clinic-name{font-family:var(--serif);font-size:15px;font-weight:400;color:var(--ink);margin-bottom:7px;}
.single-dictionary .clinic-desc{font-size:12.5px;color:var(--ink-mid);line-height:1.75;margin-bottom:9px;}
.single-dictionary .clinic-tag{font-size:11px;padding:3px 9px;border-radius:100px;background:var(--sage-light);color:var(--sage);border:1px solid var(--sage-mid);display:inline-block;}
.single-dictionary .pillars{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:20px 0;}
@media(max-width:600px){.single-dictionary .pillars{grid-template-columns:1fr;}}
.single-dictionary .pillar-card{border-radius:12px;overflow:hidden;border:1px solid;}
.single-dictionary .pillar-header{padding:16px 16px 12px;display:flex;align-items:flex-start;gap:9px;}
.single-dictionary .pillar-icon{font-size:20px;flex-shrink:0;}
.single-dictionary .pillar-title{font-family:var(--serif);font-size:15px;font-weight:400;line-height:1.4;margin-bottom:1px;}
.single-dictionary .pillar-sub{font-size:11px;opacity:.7;}
.single-dictionary .pillar-body{padding:0 16px 16px;font-size:12.5px;line-height:1.8;}
.single-dictionary .timeline{position:relative;padding-left:26px;margin:24px 0;}
.single-dictionary .timeline::before{content:'';position:absolute;left:8px;top:0;bottom:0;width:1.5px;background:var(--border);}
.single-dictionary .tl-item{position:relative;padding-bottom:24px;}
.single-dictionary .tl-item:last-child{padding-bottom:0;}
.single-dictionary .tl-dot{position:absolute;left:-22px;top:4px;width:11px;height:11px;border-radius:50%;background:var(--sage);border:2px solid #fff;box-shadow:0 0 0 1.5px var(--sage);}
.single-dictionary .tl-phase{font-size:10.5px;font-weight:500;letter-spacing:.1em;color:var(--sage);margin-bottom:3px;}
.single-dictionary .tl-title{font-family:var(--serif);font-size:15.5px;font-weight:400;color:var(--ink);margin-bottom:5px;}
.single-dictionary .tl-desc{font-size:13px;color:var(--ink-mid);line-height:1.8;}
.single-dictionary .tl-dur{display:inline-block;font-size:11px;color:var(--ink-light);background:var(--paper-warm);border:1px solid var(--border);border-radius:100px;padding:2px 9px;margin-top:5px;}
.single-dictionary .wave-box{border:1px solid var(--border);border-radius:12px;padding:20px;margin:20px 0;}
.single-dictionary .wave-title{font-family:var(--serif);font-size:15px;font-weight:400;color:var(--ink);margin-bottom:6px;}
.single-dictionary .wave-desc{font-size:13px;color:var(--ink-mid);line-height:1.85;margin-bottom:14px;}
.single-dictionary .wave-svg-bg{background:var(--paper-warm);border-radius:9px;padding:14px 8px;}
.single-dictionary .relapse-list{display:flex;flex-direction:column;gap:7px;margin:14px 0;}
.single-dictionary .relapse-item{display:flex;align-items:flex-start;gap:11px;padding:12px 14px;border:1px solid var(--border);border-radius:9px;}
.single-dictionary .relapse-num{width:22px;height:22px;border-radius:5px;background:var(--primary);color:#fff;font-size:11.5px;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.single-dictionary .relapse-text{font-size:13px;color:var(--ink-mid);line-height:1.7;}
.single-dictionary .relapse-text strong{color:var(--ink);font-weight:500;display:block;margin-bottom:2px;font-family:var(--serif);}

/* ──────────────────────────────────────
   WORK
────────────────────────────────────── */
.single-dictionary .work-steps{display:flex;flex-direction:column;}
.single-dictionary .work-step{display:flex;gap:16px;}
.single-dictionary .work-step-line{display:flex;flex-direction:column;align-items:center;}
.single-dictionary .work-step-circle{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.single-dictionary .work-step-connector{width:2px;background:var(--sage-mid);flex:1;margin:4px 0;min-height:24px;}
.single-dictionary .work-step:last-child .work-step-connector{display:none;}
.single-dictionary .work-step-body{padding-bottom:24px;flex:1;}
.single-dictionary .work-step-title{font-family:var(--serif);font-size:15.5px;font-weight:400;color:var(--ink);margin-bottom:5px;margin-top:4px;}
.single-dictionary .work-step-desc{font-size:13px;color:var(--ink-mid);line-height:1.8;}
.single-dictionary .work-step-note{display:inline-block;font-size:11.5px;color:var(--ink-light);background:var(--paper-warm);border:1px solid var(--border);border-radius:100px;padding:2px 10px;margin-top:6px;}
.single-dictionary .benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;}
@media(max-width:600px){.single-dictionary .benefit-grid{grid-template-columns:1fr;}}
.single-dictionary .benefit-card{border:1px solid var(--border);border-radius:11px;padding:18px 16px;}
.single-dictionary .benefit-name{font-family:var(--serif);font-size:15px;font-weight:400;color:var(--ink);margin-bottom:6px;}
.single-dictionary .benefit-desc{font-size:12.5px;color:var(--ink-mid);line-height:1.75;margin-bottom:9px;}
.single-dictionary .benefit-point{font-size:12px;color:var(--sage);font-weight:500;}
.single-dictionary .tell-cards{display:flex;flex-direction:column;gap:8px;margin:18px 0;}
.single-dictionary .tell-card{border:1px solid var(--border);border-radius:9px;padding:14px 16px;}
.single-dictionary .tell-who{font-size:11.5px;font-weight:500;letter-spacing:.08em;color:var(--sage);margin-bottom:6px;}
.single-dictionary .tell-title{font-family:var(--serif);font-size:14px;font-weight:400;color:var(--ink);margin-bottom:5px;}
.single-dictionary .tell-desc{font-size:12.5px;color:var(--ink-mid);line-height:1.75;}

/* ──────────────────────────────────────
   FAMILY
────────────────────────────────────── */
.single-dictionary .dos-donts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;}
@media(max-width:600px){.single-dictionary .dos-donts{grid-template-columns:1fr;}}
.single-dictionary .dos-card{background:#fff3e6;border:1px solid #ffcc88;border-radius:12px;padding:18px;}
.single-dictionary .donts-card{background:#fdf2f0;border:1px solid #e8c0b8;border-radius:12px;padding:18px;}
.single-dictionary .dd-title{font-size:12px;font-weight:500;letter-spacing:.1em;margin-bottom:12px;}
.single-dictionary .dos-card .dd-title{color:#7a4200;}
.single-dictionary .donts-card .dd-title{color:#7a2a2a;}
.single-dictionary .dd-list{list-style:none;display:flex;flex-direction:column;gap:7px;}
.single-dictionary .dd-item{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.7;}
.single-dictionary .dos-card .dd-item{color:#5a3800;}
.single-dictionary .donts-card .dd-item{color:#5a2a2a;}
.single-dictionary .dd-mark{flex-shrink:0;font-size:13px;}
.single-dictionary .voice-cards{display:flex;flex-direction:column;gap:8px;margin:18px 0;}
.single-dictionary .voice-card{border:1px solid var(--border);border-radius:10px;padding:16px 18px;}
.single-dictionary .voice-situation{font-size:11px;font-weight:500;letter-spacing:.08em;color:var(--ink-light);margin-bottom:8px;}
.single-dictionary .voice-bad{font-size:13px;color:#9a4040;background:#fdf0f0;border:1px solid #f0c8c0;border-radius:7px;padding:9px 12px;margin-bottom:7px;line-height:1.7;}
.single-dictionary .voice-good{font-size:13px;color:#7a4200;background:var(--sage-light);border:1px solid var(--sage-mid);border-radius:7px;padding:9px 12px;line-height:1.7;}
.single-dictionary .voice-label{font-size:10.5px;font-weight:500;display:inline-block;margin-bottom:3px;letter-spacing:.05em;}
.single-dictionary .caregiver-list{display:flex;flex-direction:column;gap:8px;margin:18px 0;}
.single-dictionary .caregiver-item{display:flex;align-items:baseline;gap:12px;border:1px solid var(--border);border-radius:9px;padding:14px 16px;}
.single-dictionary .caregiver-icon{font-size:18px;flex-shrink:0;}
.single-dictionary .caregiver-title{font-family:var(--serif);font-size:14px;font-weight:400;color:var(--ink);margin-bottom:3px;}
.single-dictionary .caregiver-desc{font-size:12.5px;color:var(--ink-light);line-height:1.7;}

/* ──────────────────────────────────────
   CTA
────────────────────────────────────── */
.single-dictionary .cta-section{border-top:1px solid var(--border);padding:56px 32px;}
@media(max-width:600px){.single-dictionary .cta-section{padding:48px 0;}}
.single-dictionary .cta-inner{max-width:480px;margin:0 auto;text-align:center;}
.single-dictionary .cta-icon{font-size:36px;margin-bottom:14px;}
.single-dictionary .cta-title{font-family:var(--serif);font-size:clamp(20px,4vw,26px);font-weight:400;color:var(--ink);line-height:1.55;margin-bottom:12px;letter-spacing:.03em;}
.single-dictionary .cta-sub{font-size:13.5px;color:var(--ink-mid);line-height:1.9;margin-bottom:28px;}
.single-dictionary .cta-buttons{display:flex;flex-direction:column;gap:10px;max-width:360px;margin:0 auto 28px;}
.single-dictionary .cta-btn-main{display:block;width:100%;padding:15px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-family:var(--sans);font-size:14.5px;font-weight:500;cursor:pointer;text-align:center;transition:all .2s;letter-spacing:.03em;}
.single-dictionary .cta-btn-main:hover{background:#e07000;box-shadow:0 6px 20px rgba(255,136,0,.22);transform:translateY(-1px);}
.single-dictionary .cta-btn-sub{display:block;width:100%;padding:13px;background:none;color:var(--ink-mid);border:1px solid var(--border);border-radius:10px;font-family:var(--sans);font-size:13.5px;cursor:pointer;text-align:center;transition:all .18s;}
.single-dictionary .cta-btn-sub:hover{border-color:var(--sage);color:var(--sage);background:var(--sage-light);}
.single-dictionary .cta-hotlines{border-top:1px solid var(--border);padding-top:22px;}
.single-dictionary .cta-hotline-title{font-size:11.5px;color:var(--ink-light);letter-spacing:.1em;font-weight:500;margin-bottom:12px;}
.single-dictionary .hotline-list{display:flex;flex-direction:column;gap:8px;}
.single-dictionary .hotline-item{background:var(--paper-warm);border:1px solid var(--border);border-radius:9px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.single-dictionary .hotline-name{font-size:13px;color:var(--ink-mid);font-weight:500;}
.single-dictionary .hotline-number{font-family:var(--serif);font-size:16px;color:var(--ink);letter-spacing:.05em;}
.single-dictionary .hotline-note{font-size:11px;color:var(--ink-light);width:100%;}
.single-dictionary .cta-note{font-size:11px;color:var(--ink-light);line-height:1.8;margin-top:22px;}

/* ── サイト全体のh2スタイル上書き ── */
.single-dictionary .dict-wrap h2{
  margin:0;
  padding:0;
  background-color:transparent;
  border-radius:0;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
}
