/* 離世資訊頁（/info/）共用樣式。字型與顏色沿用紀念牆首頁的設定。
   字級只用 5 種：28／22／17／15／13（桌機答案放大到 34）。 */
:root{
  color-scheme:light;
  --bg:#FFFFFF; --ink:#18212B; --ink-2:#3B4651; --muted:#6B7480; --line:#E2E5E9; --soft:#F4F6F8;
  --brand:#1E4D5C; --brand-tint:#E5EEF0;
  --serif:"Noto Serif TC","Songti TC","PMingLiU",serif;
  --sans:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif;
}
:root:lang(ja){
  --serif:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;
  --sans:"Noto Sans JP","Hiragino Sans","Yu Gothic",system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
[hidden]{display:none!important}
h1,h2,p{margin:0}
a{color:var(--brand);text-underline-offset:3px}
button,input{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px}

/* 頁首：與紀念牆相同 */
.hdr{border-bottom:1px solid var(--line);background:var(--bg)}
.hdr .in{max-width:1040px;margin:0 auto;padding:0 20px;height:64px;display:flex;align-items:center;gap:16px}
.logo{font-family:var(--serif);font-weight:900;font-size:20px;color:var(--ink);text-decoration:none;white-space:nowrap}
.hnav{margin-left:auto;display:flex;align-items:center;gap:4px}
.hnav a{white-space:nowrap;text-decoration:none}
.hnav .lk{color:var(--ink-2);font-size:15px;padding:8px 10px}
.hnav .lk:hover{color:var(--ink);text-decoration:underline}
.hnav .lk[aria-current="page"]{color:var(--ink);font-weight:500}
.hnav .cta{display:inline-flex;align-items:center;border-radius:999px;background:var(--brand);color:#fff;font-weight:700;font-size:14px;padding:7px 14px;line-height:1.2}
@media (max-width:520px){.hdr .in{gap:8px}.hnav{gap:0}.hnav .lk{padding:8px 6px;font-size:14px}.hnav .cta{padding:6px 10px;font-size:13px}}
@media (max-width:400px){.hnav .hide-s{display:none}}

.col{max-width:600px;margin:0 auto;padding:0 24px}
@media (max-width:400px){.col{padding:0 20px}}

/* 文字層級 */
.back{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:12px;font-size:17px;text-decoration:none}
.kicker{font-size:13px;color:var(--muted)}
.title{font-family:var(--serif);font-size:28px;font-weight:600;line-height:1.35}
.lead{font-size:15px;line-height:1.7;color:var(--muted)}
.q{font-size:17px;font-weight:500;color:var(--muted)}
.answer{font-family:var(--serif);font-size:28px;font-weight:600;line-height:1.45;letter-spacing:.01em;text-wrap:pretty}
@media (min-width:640px){.answer{font-size:34px}}
.meta{font-size:13px;color:var(--muted)}
.note{font-size:13px;line-height:1.6;color:var(--muted)}
.body{font-size:17px;line-height:1.85}

.sec{margin-top:48px}
.sec > h2{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.4;margin-bottom:16px}

/* 出處一行 */
.cite{font-size:13px;color:var(--muted)}
.cite b{font-weight:500;color:var(--ink)}
.source{display:flex;flex-direction:column;gap:4px;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}
.source a{font-size:15px}

/* 引述 */
.quotes{display:flex;flex-direction:column}
.qitem{padding:20px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.qitem:first-child{padding-top:4px}
.qitem:last-child{border-bottom:0}
.quote{font-family:var(--serif);font-size:17px;font-weight:500;line-height:1.75}

/* 清單（iOS 分組清單的做法） */
.group{background:var(--soft);border-radius:12px;padding:0 16px}
.row{min-height:56px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:17px;line-height:1.5}
.row:last-child{border-bottom:0}
a.row:hover{color:var(--brand)}
.row .side{flex:none;font-size:15px;color:var(--muted);text-align:right;max-width:55%}
.row .soon{flex:none;font-size:13px;color:var(--muted)}
.row .two{display:flex;flex-direction:column;gap:2px}
.row .two small{font-size:15px;color:var(--muted)}
.chev{flex:none}

/* 出處清單 */
.srcs{display:flex;flex-direction:column}
.src{padding:14px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.src:last-child{border-bottom:0}
.src a,.src span:first-child{font-size:15px;line-height:1.6}

/* 按鈕 */
.btn-primary{display:flex;justify-content:center;align-items:center;min-height:52px;border:0;border-radius:999px;background:var(--brand);color:#fff;text-decoration:none;font-size:17px;font-weight:500}
.btn-primary:hover{background:#17404C}
.btn-ghost{flex:1;min-height:48px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--ink);font-size:15px}
.btn-ghost:hover{border-color:var(--muted)}

/* 地區切換 */
.seg{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:var(--soft)}
.seg a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:999px;color:var(--muted);font-size:15px;text-decoration:none}
.seg a[aria-current="true"]{background:var(--bg);color:var(--ink);font-weight:500;box-shadow:0 1px 2px rgba(24,33,43,.12)}
.vbar{margin-top:24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}

/* 時間軸（真的是先後順序） */
.tl{display:flex;flex-direction:column}
.tl .ti{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:16px;color:var(--ink);text-decoration:none}
.tl .rail{display:flex;flex-direction:column;align-items:center}
.tl .dot{width:12px;height:12px;margin-top:9px;border-radius:999px;border:1.5px solid var(--brand);background:var(--bg)}
.tl .dot.on{background:var(--brand)}
.tl .line{flex:1;width:1px;background:#CBD2D9}
.tl .txt{padding-bottom:28px;display:flex;flex-direction:column;gap:4px}
.tl .ti:last-child .txt{padding-bottom:0}
.tl .name{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.4}
.tl .desc{font-size:15px;line-height:1.7;color:var(--muted)}
.tl .flag{font-size:13px;font-weight:500;color:var(--brand)}
.tl .soon{font-size:13px;color:var(--muted)}
a.ti:hover .name{color:var(--brand)}

/* 主題兩欄 */
.topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.topics > *{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:17px}
.topics > span{color:var(--muted)}


/* 日期卡 */
.datecard{margin-top:32px;background:var(--soft);border-radius:16px;padding:24px 20px;display:flex;flex-direction:column;gap:20px}
.datecard label{font-size:15px;color:var(--muted)}
.datecard input{width:100%;min-height:52px;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg);font-size:17px;font-variant-numeric:tabular-nums}
.datecard .today{font-family:var(--serif);font-size:22px;font-weight:600}
.days{display:flex;flex-direction:column}
.day{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:2px;align-items:baseline;margin:0 -12px;padding:12px;border-radius:10px;color:var(--ink);text-decoration:none}
.day .lbl{font-size:17px;font-weight:500}
.day .qq{grid-column:1 / -1;font-size:15px;color:var(--muted)}
.day .when{font-size:15px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.day.next{background:var(--brand-tint)}
.day.next .when{color:var(--brand)}
.day.past .lbl{color:var(--muted)}
a.day:hover .lbl{color:var(--brand)}
.actions{display:flex;gap:12px}

/* 總覽頁與題目頁 */
.hubhead{margin-top:32px;display:flex;flex-direction:column;gap:8px}
.seggroup + .seggroup{margin-top:28px}
.seggroup h3{margin:0 0 10px;font-size:15px;font-weight:500;color:var(--muted)}
.qhead{margin-top:24px;display:flex;flex-direction:column;gap:16px}
.qhead .kicker{margin-bottom:-8px}
.notice{margin-top:24px;padding:14px 16px;border-radius:12px;background:var(--soft);font-size:15px;line-height:1.7;color:var(--ink-2)}
.notice.help{background:var(--brand-tint);color:var(--ink)}
.notice a{font-weight:500}
.morev{margin-top:8px}
.morev summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:15px;color:var(--brand)}
.morev summary::-webkit-details-marker{display:none}
.morev[open] summary{display:none}
.upd{margin-top:16px}
.dcin{display:flex;flex-direction:column;gap:8px}
.sec .btn-primary{margin-top:24px}
footer .langs{display:inline-flex;gap:12px}
footer .langs a{color:var(--muted);text-decoration:none}
footer .langs a[aria-current="true"]{color:var(--ink);font-weight:500}

/* 三張卡片（離世資訊首頁）：像擺在桌上的三張牌 */
.col.wide{max-width:1000px}
.table{margin:16px -24px 0;padding:40px 16px 48px}
@media (max-width:400px){.table{margin:24px -20px 0}}
.deck{display:flex;justify-content:center;max-width:440px;margin:0 auto}
.pcard{--r:0deg;--y:0px;--i:0;position:relative;display:block;flex:none;width:calc((100% + 18px) / 3);margin:0 -3px;aspect-ratio:5/7;border:1px solid #E9DDB8;border-radius:12px;background:linear-gradient(180deg,#FDF8E7,#FAF2D9);color:var(--ink);text-decoration:none;
  box-shadow:0 1px 1px rgba(24,33,43,.06),0 6px 16px rgba(24,33,43,.10);
  transform:translateY(var(--y)) rotate(var(--r));
  transition:transform .6s cubic-bezier(.22,1.15,.36,1) calc(var(--i)*90ms),opacity .45s ease calc(var(--i)*90ms),box-shadow .3s ease}
.pcard:nth-child(1){--r:-5deg;--y:6px;--i:0}
.pcard:nth-child(2){--r:2deg;--y:-4px;--i:1}
.pcard:nth-child(3){--r:6deg;--y:8px;--i:2}
.deck.predeal .pcard{opacity:0;transform:translateY(56px) rotate(0deg) scale(.9)}
.deck.ready .pcard{transition-delay:0s}
@media (hover:hover){
  .pcard:hover,.pcard:focus-visible{z-index:5;transform:translateY(calc(var(--y) - 16px)) rotate(var(--r)) scale(1.03);box-shadow:0 2px 4px rgba(24,33,43,.08),0 22px 44px rgba(24,33,43,.20)}
}
.pcard.pull{z-index:6;transform:translateY(calc(var(--y) - 44px)) rotate(0deg) scale(1.07);box-shadow:0 30px 60px rgba(24,33,43,.26)}
.pcard.away{visibility:hidden}
.pc-face{position:absolute;inset:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:16px 3px;border:1px solid #EFE3C2;border-radius:8px;text-align:center}
.pc-num{position:absolute;top:6px;left:8px;font-family:var(--serif);font-size:11px;font-weight:600;line-height:1;color:#A48C57;letter-spacing:.04em}
.pc-art{display:block;line-height:0}
.pc-art svg{width:32px;height:32px;fill:none;stroke:var(--brand);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pc-t{margin-top:4px;font-family:var(--serif);font-size:16px;font-weight:600;line-height:1.35;text-wrap:balance}
.pc-d{display:none;font-size:14px;line-height:1.65;color:var(--ink-2);text-wrap:balance}
/* break card text at punctuation (Chinese) or between phrases (Japanese), never inside a word */
:lang(zh-Hant) .pc-t,:lang(zh-Hant) .pc-d{word-break:keep-all;overflow-wrap:anywhere}
:lang(ja) .pc-t,:lang(ja) .pc-d{word-break:auto-phrase;overflow-wrap:anywhere}
:lang(ja) .pc-t{font-size:13.5px;letter-spacing:-.02em}
@media (min-width:760px){
  .table{margin:24px 0 0;padding:48px 24px 64px}
  .deck{max-width:none}
  .pcard{flex:none;width:232px;margin:0 -10px;border-radius:16px}
  .pcard:nth-child(1){--r:-8deg;--y:22px}
  .pcard:nth-child(2){--r:0deg;--y:0px;z-index:2}
  .pcard:nth-child(3){--r:8deg;--y:22px}
  .pc-face{inset:8px;gap:10px;padding:28px 20px;border-radius:10px}
  .pc-num{top:10px;left:12px;font-size:14px}
  .pc-art svg{width:52px;height:52px;stroke-width:1.6}
  .pc-t,:lang(ja) .pc-t{font-size:24px;letter-spacing:0}
  .pc-d{display:block}
  }

/* 手機：點一張牌，牌被抽到畫面中間 */
html.drawing{overflow:hidden}
.drawview{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px}
.drawview[hidden]{display:none}
.dv-bg{position:absolute;inset:0;width:100%;border:0;background:rgba(24,33,43,0);cursor:pointer;transition:background-color .3s ease}
.drawview.on .dv-bg{background:rgba(24,33,43,.5)}
.dv-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;width:min(300px,76vw)}
.dv-card{position:relative;width:100%;aspect-ratio:5/7;border:1px solid #E9DDB8;border-radius:16px;background:linear-gradient(180deg,#FDF8E7,#FAF2D9);box-shadow:0 28px 64px rgba(0,0,0,.30);transition:transform .45s cubic-bezier(.22,1.1,.36,1)}
.dv-card .pc-face{inset:8px;gap:10px;padding:28px 20px;border-radius:10px}
.dv-card .pc-num{top:10px;left:12px;font-size:14px}
.dv-card .pc-art svg{width:60px;height:60px;stroke-width:1.6}
.dv-card .pc-t{font-size:26px}
.dv-card .pc-d{display:block;font-size:15px}
.dv-go{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;border-radius:999px;background:var(--brand);color:#fff;font-size:17px;font-weight:500;text-decoration:none;opacity:0;transform:translateY(8px);transition:opacity .25s ease .2s,transform .25s ease .2s}
.dv-back{min-height:44px;padding:0 16px;border:0;background:none;color:#fff;font-size:15px;opacity:0;transition:opacity .25s ease .2s}
.drawview.on .dv-go{opacity:1;transform:none}
.drawview.on .dv-back{opacity:.9}
@media (prefers-reduced-motion:reduce){
  .pcard,.dv-card,.dv-go,.dv-back,.dv-bg{transition:none}
  .deck.predeal .pcard{opacity:1;transform:translateY(var(--y)) rotate(var(--r))}
}

/* 時期頁：一疊問題卡，像互助會、諮商用的對話卡 */
.stagehead{margin-top:16px;display:flex;align-items:center;gap:12px}
.stagehead .sh-art svg{display:block;width:36px;height:36px;fill:none;stroke:var(--brand);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.qdeck{position:relative;display:flex;gap:14px;margin:20px -24px 0;padding:12px calc(50vw - min(41vw,160px)) 20px;scroll-padding-inline:calc(50vw - min(41vw,160px));overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.qdeck::-webkit-scrollbar{display:none}
@media (max-width:400px){.qdeck{margin:20px -20px 0}}
.qcard{flex:none;width:min(82vw,320px);aspect-ratio:5/7;perspective:1400px;scroll-snap-align:center;transition:transform .3s ease,opacity .3s ease}
.qdeck .qcard:not(.is-cur){transform:scale(.93);opacity:.6}
.qc-in{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.75,.25,1)}
.qcard.flipped .qc-in{transform:rotateY(180deg)}
.qc-face{position:absolute;inset:0;display:flex;flex-direction:column;padding:28px 26px 24px;border:1px solid #E9DDB8;border-radius:16px;background:linear-gradient(180deg,#FDF8E7,#FAF2D9);box-shadow:0 1px 1px rgba(24,33,43,.05),0 10px 26px rgba(24,33,43,.10);backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;cursor:pointer}
.qc-face::before{content:"";position:absolute;inset:8px;border:1px solid #EFE3C2;border-radius:10px;pointer-events:none}
.qc-back{transform:rotateY(180deg);background:linear-gradient(180deg,#FFFDF5,#FCF7E8)}
/* a turned-down corner says the card can be turned over */
.qc-front::after{content:"";position:absolute;right:8px;bottom:8px;width:26px;height:26px;border-bottom-right-radius:10px;background:linear-gradient(315deg,#EADBB0 0 50%,transparent 50%);pointer-events:none}
.qc-q{margin-top:auto}
.qc-q{position:relative;margin:auto 0;font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.5;color:var(--ink);text-decoration:none;text-wrap:pretty}
.qc-q:focus-visible{outline-offset:6px}
.qc-vet{position:relative;align-self:flex-start;margin:16px 0 auto;padding:2px 10px;border-radius:999px;background:rgba(164,140,87,.14);font-size:12px;color:#7A6639}
.qc-a{position:relative;margin-top:16px;font-family:var(--serif);font-size:17px;font-weight:500;line-height:1.7;color:var(--ink);display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.qc-v{position:relative;margin-top:14px;padding-top:14px;border-top:1px solid #EFE3C2;font-size:14px;line-height:1.7;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.qc-go{position:relative;margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border-radius:999px;background:var(--brand);color:#fff;font-size:15px;font-weight:500;text-decoration:none}
:lang(zh-Hant) .qc-q,:lang(zh-Hant) .qc-a{word-break:keep-all;overflow-wrap:anywhere}
.qc-a,.qc-go{flex:none}
.qc-v{flex:0 1 auto;min-height:0}
:lang(ja) .qc-q,:lang(ja) .qc-a{word-break:auto-phrase;overflow-wrap:anywhere}
.stx{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.stx-card{display:flex;align-items:center;gap:12px;min-height:72px;padding:14px 16px;border:1px solid #E9DDB8;border-radius:14px;background:linear-gradient(180deg,#FDF8E7,#FAF2D9);color:var(--ink);text-decoration:none}
.stx-card:hover{border-color:#D8C690}
.stx-card .pc-art svg{width:28px;height:28px;stroke-width:1.8}
.stx-t{font-family:var(--serif);font-size:17px;font-weight:600;line-height:1.4}
@media (min-width:760px){
  .stagehead .sh-art svg{width:44px;height:44px}
  .qdeck{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0 0;padding:0;overflow:visible}
  .qcard{width:auto}
  .qdeck .qcard:not(.is-cur){transform:none;opacity:1}
  .qc-face:hover{box-shadow:0 2px 4px rgba(24,33,43,.06),0 18px 40px rgba(24,33,43,.16)}
  .stx{grid-template-columns:repeat(2,minmax(0,280px))}
}
@media (prefers-reduced-motion:reduce){.qc-in,.qcard{transition:none}}

/* 題目頁（卡片版）：世界各地的人這樣做 */
.qhero{position:relative;margin-top:16px;padding:30px 24px 28px;border:1px solid #E9DDB8;border-radius:18px;background:linear-gradient(180deg,#FDF8E7,#FAF2D9);box-shadow:0 1px 1px rgba(24,33,43,.05),0 10px 26px rgba(24,33,43,.08)}
.qhero::before{content:"";position:absolute;inset:8px;border:1px solid #EFE3C2;border-radius:12px;pointer-events:none}
.qh-q{position:relative;font-family:var(--serif);font-size:24px;font-weight:600;line-height:1.5;text-wrap:pretty}
.qh-a{position:relative;margin-top:14px;font-size:16px;line-height:1.8;color:var(--ink-2)}
:lang(zh-Hant) .qh-q{word-break:keep-all;overflow-wrap:anywhere}
:lang(ja) .qh-q{word-break:auto-phrase;overflow-wrap:anywhere}
.swipe{display:flex;align-items:flex-start;gap:12px;margin:0 -24px;padding:4px 24px 16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:24px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.swipe::-webkit-scrollbar{display:none}
@media (max-width:400px){.swipe{margin:0 -20px;padding:4px 20px 16px;scroll-padding-inline:20px}}
.swipe > *{flex:none;scroll-snap-align:start}
.plcard{width:min(78vw,300px);padding:20px 18px;border:1px solid var(--line);border-radius:16px;background:var(--bg);box-shadow:0 1px 2px rgba(24,33,43,.05),0 8px 20px rgba(24,33,43,.06)}
.pl-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.pl-flag{font-size:28px;line-height:1}
.pl-head h3{margin:0;font-family:var(--serif);font-size:20px;font-weight:600}
.plcard ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.plcard li + li{padding-top:14px;border-top:1px solid var(--line)}
.pl-t{font-size:16px;font-weight:500;line-height:1.6}
.pl-w{margin-top:4px;font-size:14px;line-height:1.65;color:var(--muted)}
.pl-src{display:inline-block;margin-top:6px;font-size:13px;line-height:1.5}
.storycard{max-width:720px;padding:22px 20px;border-radius:16px;background:var(--soft)}
.storycard p{font-size:16px;line-height:1.85}
.vnote{width:min(70vw,260px);margin:0;padding:18px 18px 16px;border:1px solid #E9DDB8;border-radius:14px;background:linear-gradient(180deg,#FDF8E7,#FAF2D9)}
.vnote blockquote{margin:0;font-family:var(--serif);font-size:16px;font-weight:500;line-height:1.7}
.vnote figcaption{margin-top:10px;font-size:13px;color:#8C7650}
.vfoot{margin-top:4px}
.srcall{margin-top:40px;border-top:1px solid var(--line);padding-top:8px}
.srcall > summary{cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;font-size:15px;color:var(--brand)}
.srcall > summary::-webkit-details-marker{display:none}
.relcards{display:grid;gap:10px}
.relcard{display:block;padding:16px 18px;border:1px solid #E9DDB8;border-radius:14px;background:linear-gradient(180deg,#FDF8E7,#FAF2D9);color:var(--ink);text-decoration:none;font-family:var(--serif);font-size:17px;font-weight:600;line-height:1.5}
.relcard:hover{border-color:#D8C690}
.qcta{margin-top:32px}
@media (min-width:760px){
  .qhero{padding:44px 48px 40px}
  .qh-q{font-size:30px;max-width:760px}
  .qh-a{font-size:17px;max-width:720px}
  .swipe{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;overflow:visible}
  .swipe > *{width:auto}
  .relcards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .qcta{max-width:360px}
  .notice{max-width:720px}
}

/* 時期頁 */
.sec.sub{margin-top:36px}
.sec.sub > h2{font-family:var(--sans);font-size:15px;font-weight:500;color:var(--muted);margin-bottom:10px}
.daytool{margin-top:24px;border:1px solid var(--line);border-radius:12px}
.daytool > summary{cursor:pointer;list-style:none;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;font-size:15px;font-weight:500;color:var(--brand)}
.daytool > summary::-webkit-details-marker{display:none}
.daytool > summary::after{content:"+";font-size:20px;font-weight:400;color:var(--muted)}
.daytool[open] > summary::after{content:"−"}
.daytool .datecard{margin:0 8px 8px}

footer{margin-top:72px;border-top:1px solid var(--line);padding:28px 0 40px;font-size:13px;color:var(--muted)}
footer .in{max-width:1040px;margin:0 auto;padding:0 20px;display:flex;flex-wrap:wrap;gap:4px 16px}

@media print{
  .hdr,footer,.no-print,.actions{display:none!important}
  body{font-size:12pt}
  .datecard{background:#fff;border:1px solid #999;break-inside:avoid}
}
