/* 64の鍵の活性化スケジュール。/iching/ の配色に合わせる。 */
.gkp-now,.gkp-page{--gkp-ink:#1d2433;--gkp-muted:#4f6270;--gkp-sea:#0b7a86;--gkp-border:#dae6ea;--gkp-wash:#eff7f8}
.gkp-now{margin-top:36px;padding:26px 30px 24px;background:#fff;border:1px solid var(--gkp-border);border-radius:16px;color:var(--gkp-ink);font-size:17px;line-height:1.75}
.gkp-now *{box-sizing:border-box}
/* 読み込み後に下の内容が押し下げられないよう、高さを確保する */
.gkp-now [data-pulse-body]{min-height:315px}
.gkp-now h2{font-size:26px;line-height:1.4;font-weight:750;margin:0 0 12px}
.gkp-now-key{font-size:24px;font-weight:750;line-height:1.4;margin:0 0 14px}
.gkp-now a{color:#0a6470;text-underline-offset:4px}
.gkp-terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 16px;padding:0}
.gkp-terms div{min-width:0;padding:12px 14px;background:var(--gkp-wash);border:1px solid #dcebed;border-radius:9px}
.gkp-terms dt{font-size:14px;font-weight:750;color:#2f5966}
.gkp-terms dd{margin:2px 0 0;font-size:18px;font-weight:750;overflow-wrap:anywhere}
.gkp-now-times{margin:0;padding:0}
.gkp-now-times div{display:grid;grid-template-columns:72px 1fr;gap:12px;padding:6px 0;border-top:1px solid var(--gkp-border)}
.gkp-now-times dt{font-size:15px;font-weight:750;color:var(--gkp-muted)}
.gkp-now-times dd{margin:0;font-size:16px;font-weight:600}
.gkp-now-times dd a{font-weight:750}
.gkp-now-times dd span{display:block;font-size:15px;font-weight:500}
.gkp-now-note{margin:8px 0 0;font-size:14px;color:var(--gkp-muted)}
.gkp-now-more{margin:14px 0 0;font-size:16px;font-weight:750}
.gkp-page{max-width:1120px;margin:0 auto;padding:calc(var(--nav-height,72px) + 40px) 20px 60px;color:var(--gkp-ink);font-size:17px;line-height:1.8;box-sizing:border-box}
.gkp-page *{box-sizing:border-box}
.gkp-page a{color:#0a6470;text-underline-offset:4px}
.gkp-page [hidden]{display:none!important}
.gkp-page :focus-visible{outline:3px solid #18809a;outline-offset:3px}
.gkp-head{padding:28px 34px 30px;background:#fff;border:1px solid var(--gkp-border);border-radius:20px}
.gkp-crumb{font-size:14px;color:var(--gkp-muted);margin:0 0 18px}
.gkp-head h1{font-size:clamp(28px,3.2vw,40px);line-height:1.35;font-weight:750;margin:0 0 16px}
.gkp-head p:last-child{margin-bottom:0}
.gkp-list{margin-top:36px}
.gkp-list h2{font-size:24px;line-height:1.4;font-weight:750;margin:0 0 14px;outline:none}
.gkp-page .gkp-list h2:focus-visible{outline:none}
.gkp-filter{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 18px}
.gkp-filter label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:700;color:var(--gkp-muted)}
.gkp-filter select{min-height:46px;min-width:112px;padding:8px 12px;font:inherit;font-size:17px;font-weight:600;color:var(--gkp-ink);background:#fff;border:1px solid #a6cbd4;border-radius:9px}
.gkp-filter button{min-height:46px;padding:8px 16px;font:inherit;font-size:16px;font-weight:700;color:#185d72;background:#fff;border:1px solid #abcbd4;border-radius:9px;cursor:pointer}
.gkp-filter button:hover{background:#eef6f8}
.gkp-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--gkp-border);font-size:16px;line-height:1.6}
.gkp-table thead th{padding:10px 12px;text-align:left;font-size:14px;font-weight:750;color:#2f5966;background:var(--gkp-wash);border-bottom:1px solid var(--gkp-border);white-space:nowrap}
.gkp-table tbody th,.gkp-table tbody td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--gkp-border)}
.gkp-table tbody th{font-weight:750}
.gkp-table tbody td:nth-child(2),.gkp-table tbody td:nth-child(3){font-variant-numeric:tabular-nums}
.gkp-current th,.gkp-current td{background:#e3f3f5}
.gkp-current th{box-shadow:inset 4px 0 0 var(--gkp-sea)}
.gkp-badge{display:inline-block;margin-left:8px;padding:1px 9px;font-size:13px;font-weight:750;line-height:1.6;color:#fff;background:#0a6470;border-radius:6px;white-space:nowrap}
.gkp-notes{margin-top:30px;padding:20px 24px;font-size:15px;line-height:1.8;background:#f6fafb;border-radius:12px}
.gkp-notes p{margin:0 0 8px}
.gkp-notes p:last-child{margin-bottom:0}
@media(max-width:800px){
  .gkp-now{margin-top:24px;padding:20px 18px}
  .gkp-now h2{font-size:22px}
  .gkp-now-key{font-size:21px}
  .gkp-page{padding:calc(var(--nav-height,72px) + 24px) 12px 34px;font-size:16px}
  .gkp-head{padding:22px 18px}
  .gkp-table,.gkp-table tbody{display:block;border:0;background:none}
  .gkp-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .gkp-table tr{display:block;margin:0 0 12px;padding:14px 16px;background:#fff;border:1px solid var(--gkp-border);border-radius:12px}
  .gkp-table tbody th,.gkp-table tbody td{display:block;padding:0;border:0}
  .gkp-table tbody th{margin:0 0 8px;font-size:18px}
  .gkp-table tbody td{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:2px 0}
  .gkp-table tbody td::before{content:attr(data-label);font-size:14px;font-weight:750;color:var(--gkp-muted)}
  .gkp-current{border:2px solid var(--gkp-sea)!important;background:#e3f3f5!important}
  .gkp-current th,.gkp-current td{background:none}
  .gkp-current th{box-shadow:none}
  .gkp-notes{padding:16px}
}
@media(max-width:480px){
  .gkp-now [data-pulse-body]{min-height:410px}
  .gkp-terms{grid-template-columns:1fr;gap:6px}
  .gkp-terms div{display:grid;grid-template-columns:64px 1fr;align-items:baseline;gap:8px;padding:9px 12px}
  .gkp-terms dd{margin:0;font-size:17px}
  .gkp-now-times div{grid-template-columns:60px 1fr;gap:8px}
  .gkp-filter label{flex:1 1 40%}
  .gkp-filter select{width:100%;min-width:0}
  .gkp-filter button{width:100%}
}
