/* CMD-054 HSK試験日程ブログパーツ（確定デザインE10: ネイビーパネル×タイムライン×タブ×開催地展開）
   正本: /home/yykk/chilit-site/wp/mu-plugins/chilit-hsk-schedule.css（scripts/hsk_schedule/render.py が出すHTMLに対応） */
.hsk-sched{position:relative;margin:2.5em 0 1.6em;color:#fff;line-height:1.5;container-type:inline-size;overflow:hidden;background:#1A2340;border-radius:14px;padding:28px 32px 22px;font-feature-settings:"palt";}
.hsk-sched *{box-sizing:border-box;}
.hsk-sched::before{content:"";position:absolute;top:-110px;right:-14px;width:2px;height:230px;background:linear-gradient(180deg,rgba(201,162,39,0),#C9A227 40%,rgba(201,162,39,0));transform:rotate(32deg);opacity:.7;pointer-events:none;}
.hsk-sched .hsk-ghost{position:absolute;right:-24px;bottom:-20px;font-family:"Archivo Black",sans-serif;font-size:124px;font-size:17.5cqw;line-height:1;letter-spacing:-.02em;color:rgba(255,255,255,.045);pointer-events:none;user-select:none;white-space:nowrap;}
.hsk-sched .hsk-eyebrow{display:block;font-family:"Archivo Black",sans-serif;font-size:11px;letter-spacing:.24em;line-height:1;color:#C9A227;}
.hsk-sched .hsk-title{margin:8px 0 2px;font-size:21px;font-weight:700;letter-spacing:.04em;line-height:1.35;color:#fff;}
.hsk-sched .hsk-num{font-family:"Archivo Black",sans-serif;font-weight:400;letter-spacing:-.01em;line-height:1;color:#fff;}
.hsk-sched .hsk-wd{display:inline-block;min-width:22px;height:22px;line-height:22px;padding:0 5px;text-align:center;background:#C9A227;color:#1A2340;font-size:11px;font-weight:700;border-radius:4px;vertical-align:middle;letter-spacing:.04em;}
.hsk-sched .hsk-wd2{font-size:12px;color:rgba(255,255,255,.7);margin-left:6px;vertical-align:middle;}
.hsk-sched .hsk-lbl{display:block;font-size:10.5px;font-weight:700;letter-spacing:.18em;line-height:1;color:rgba(255,255,255,.6);margin:0 0 7px;}
.hsk-sched .hsk-lbl--dl{margin:10px 0 4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.14);}
.hsk-sched .hsk-line{display:grid;grid-template-columns:40px 1fr;column-gap:10px;align-items:baseline;padding:5px 0;margin:0;}
.hsk-sched .hsk-type{font-size:11px;font-weight:700;letter-spacing:.14em;color:rgba(255,255,255,.72);}
.hsk-sched .hsk-main{font-size:16px;font-weight:700;color:#fff;}
.hsk-sched .hsk-left{display:inline-block;margin-left:8px;font-size:13px;font-weight:700;color:#C9A227;letter-spacing:.04em;}
.hsk-sched .hsk-left:empty{display:none;}
.hsk-sched .hsk-sub{display:block;font-size:12px;color:rgba(255,255,255,.62);font-weight:400;}
.hsk-sched .closed .hsk-type,.hsk-sched .closed .hsk-main{color:rgba(255,255,255,.42);font-weight:400;}
.hsk-sched .soon .hsk-main{font-weight:400;color:rgba(255,255,255,.88);}
.hsk-sched .hsk-foot,.hsk-sched .hsk-more{margin:14px 0 0;font-size:12px;color:rgba(255,255,255,.62);line-height:1.7;}
.hsk-sched .hsk-more{margin-top:8px;}
/* タブ（CSSのみ）: セグメント型。PC=見出し右端／スマホ=見出し下に全幅 */
.hsk-sched .hsk-tabin,.hsk-sched .hsk-vin{position:absolute;opacity:0;width:0;height:0;pointer-events:none;margin:0;}
.hsk-sched .hsk-hd{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;}
.hsk-sched .hsk-ttl{min-width:0;}
.hsk-sched .hsk-tabs{display:inline-flex;flex-shrink:0;padding:3px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);}
.hsk-sched .hsk-tabs label{padding:7px 16px;border-radius:999px;font-size:12.5px;font-weight:700;letter-spacing:.04em;line-height:1.2;color:rgba(255,255,255,.65);cursor:pointer;white-space:nowrap;margin:0;}
.hsk-sched #hsk-tab-next:checked ~ .hsk-hd .hsk-tabs label[for="hsk-tab-next"],.hsk-sched #hsk-tab-year:checked ~ .hsk-hd .hsk-tabs label[for="hsk-tab-year"]{background:#C9A227;color:#1A2340;}
.hsk-sched .hsk-pane{display:none;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);}
.hsk-sched #hsk-tab-next:checked ~ .hsk-pane--next,.hsk-sched #hsk-tab-year:checked ~ .hsk-pane--year{display:block;}
/* 直近3回: 横タイムライン（PC） */
.hsk-sched .hsk-tl{position:relative;display:grid;grid-template-columns:repeat(3,1fr);column-gap:24px;}
.hsk-sched .hsk-tl::before{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:rgba(255,255,255,.22);}
.hsk-sched .hsk-tl .hsk-it{position:relative;padding-top:30px;}
.hsk-sched .hsk-tl .hsk-it::before{content:"";position:absolute;left:0;top:1px;width:16px;height:16px;border-radius:50%;background:#1A2340;border:3px solid rgba(255,255,255,.75);box-sizing:border-box;}
.hsk-sched .hsk-tl .hsk-it.is-open::before{border-color:#C9A227;background:#C9A227;box-shadow:0 0 0 4px rgba(201,162,39,.22);}
.hsk-sched .hsk-tl .hsk-num{font-size:36px;}
.hsk-sched .hsk-date .hsk-wdl{display:block;margin:8px 0 10px;}
.hsk-sched .hsk-tl .hsk-more{grid-column:1 / -1;}
/* 開催地の展開（CSSのみ） */
.hsk-sched .hsk-vbtn{display:inline-block;margin-top:8px;font-size:12px;color:rgba(255,255,255,.8);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:1px;}
.hsk-sched .hsk-vbtn .c{display:none;}
.hsk-sched .hsk-vin:checked ~ .hsk-vbtn .o,.hsk-sched .hsk-vin:checked ~ .hsk-vblk .hsk-vbtn .o{display:none;}
.hsk-sched .hsk-vin:checked ~ .hsk-vbtn .c,.hsk-sched .hsk-vin:checked ~ .hsk-vblk .hsk-vbtn .c{display:inline;}
.hsk-sched .hsk-venues{display:none;margin-top:8px;font-size:12px;line-height:1.7;color:rgba(255,255,255,.8);}
.hsk-sched .hsk-vin:checked ~ .hsk-venues{display:block;}
.hsk-sched .hsk-venues b{color:#C9A227;font-weight:700;margin-right:4px;}
.hsk-sched .hsk-vsum{font-size:14px;color:#fff;}
/* 年間: 縦タイムライン（PC=1回1行 横並び） */
.hsk-sched .hsk-yr{position:relative;padding-left:30px;margin-top:-4px;}
.hsk-sched .hsk-yr::before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:2px;background:rgba(255,255,255,.22);}
.hsk-sched .hsk-yr .hsk-it{position:relative;display:grid;grid-template-columns:150px 1fr 210px;column-gap:24px;padding:14px 0 16px;border-bottom:1px solid rgba(255,255,255,.12);}
.hsk-sched .hsk-yr .hsk-it:last-of-type{border-bottom:none;}
.hsk-sched .hsk-yr .hsk-it::before{content:"";position:absolute;left:-30px;top:22px;width:16px;height:16px;border-radius:50%;background:#1A2340;border:3px solid rgba(255,255,255,.75);box-sizing:border-box;}
.hsk-sched .hsk-yr .hsk-it.is-open::before{border-color:#C9A227;background:#C9A227;box-shadow:0 0 0 4px rgba(201,162,39,.22);}
.hsk-sched .hsk-yr .hsk-num{font-size:28px;}
.hsk-sched .hsk-yr .hsk-date .hsk-wdl{margin:8px 0 0;}
.hsk-sched .hsk-yr .hsk-lbl{margin-bottom:8px;}
.hsk-sched .hsk-yr .hsk-line{padding:3px 0;}
.hsk-sched .hsk-yr .hsk-venues{grid-column:1 / -1;margin-top:6px;padding-top:10px;border-top:1px dashed rgba(255,255,255,.18);}
.hsk-sched .hsk-yr .hsk-more{padding-left:0;}
@media (max-width:599px){
  .hsk-sched{padding:22px 18px 20px;border-radius:0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
  .hsk-sched .hsk-ghost{position:static;display:block;text-align:center;font-size:13vw;margin:-4px 0 2px;right:auto;bottom:auto;}
  .hsk-sched .hsk-title{font-size:19px;}
  .hsk-sched .hsk-line{grid-template-columns:38px 1fr;column-gap:8px;}
  .hsk-sched .hsk-main{font-size:15px;}
  .hsk-sched .hsk-wd2{display:block;margin:4px 0 0;}
  .hsk-sched .hsk-hd{display:block;}
  .hsk-sched .hsk-tabs{display:flex;width:100%;margin-top:14px;}
  .hsk-sched .hsk-tabs label{flex:1 1 50%;text-align:center;padding:8px 6px;}
  .hsk-sched .hsk-pane{margin-top:18px;padding-top:16px;}
  .hsk-sched .hsk-tl{grid-template-columns:1fr;padding-left:30px;margin-top:4px;}
  .hsk-sched .hsk-tl::before{left:7px;right:auto;top:6px;bottom:6px;width:2px;height:auto;}
  .hsk-sched .hsk-tl .hsk-it{padding:0 0 22px;}
  .hsk-sched .hsk-tl .hsk-it::before{left:-30px;top:10px;}
  .hsk-sched .hsk-tl .hsk-num{font-size:32px;}
  .hsk-sched .hsk-yr{padding-left:30px;margin-top:4px;}
  .hsk-sched .hsk-yr .hsk-it{grid-template-columns:1fr;row-gap:0;padding:0 0 22px;border-bottom:none;}
  .hsk-sched .hsk-yr .hsk-it::before{top:10px;}
  .hsk-sched .hsk-yr .hsk-num{font-size:32px;}
  .hsk-sched .hsk-yr .hsk-date .hsk-wdl{margin:8px 0 10px;}
  .hsk-sched .hsk-yr .hsk-lbl--dl{margin:10px 0 4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.14);}
  .hsk-sched .hsk-yr .hsk-vblk{margin-top:4px;}
  .hsk-sched .hsk-yr .hsk-vblk .hsk-lbl{display:none;} /* 「開催地」ラベル＋「開催地を見る」の二重表記を避ける（2026-08-22 中里さん指摘） */
  .hsk-sched .hsk-yr .hsk-venues{margin-top:6px;}
}
