/* チャットで練習（2026-11-05・見本）。相談チャットの部品（soudan-chat.css）に重ねる */
.rs [hidden]{display:none!important}
.rs-demo{border:1px dashed #9aa3ad;background:#f5f7f9;padding:12px 16px;font-size:14px;line-height:1.8;margin-bottom:22px;color:#374151}
.rs-lead{font-size:16px;line-height:1.9;margin:0 0 18px}

/* 場面のカード */
.rs-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rs-card{font:inherit;text-align:left;display:grid;gap:8px;align-content:start;padding:20px 20px 22px;border:1px solid #cfd5db;background:#fff;cursor:pointer;box-shadow:0 8px 24px rgba(16,19,26,.05);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;color:inherit}
.rs-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(16,19,26,.09);border-color:#1d3557}
.rs-card-label{font-size:12.5px;font-weight:700;letter-spacing:.06em;color:#1d3557}
.rs-card-title{font-family:"Noto Serif JP",serif;font-weight:700;font-size:19px;line-height:1.5}
.rs-card-who,.rs-card-role{font-size:13px;color:#5b6470;line-height:1.6}
.rs-card.is-kids{background:#fffaf0;border-color:#f0d9a8}
.rs-card.is-kids .rs-card-label{color:#b45309}

/* 場面の説明 */
.rs-brief{border:1px solid #cfd5db;background:#fff;padding:26px 26px 28px;box-shadow:0 10px 30px rgba(16,19,26,.06)}
.rs-brief.is-kids{background:#fffdf7}
.rs-brief-label,.rs-fb-label{margin:0;font-size:13px;font-weight:700;letter-spacing:.06em;color:#1d3557}
.rs-brief-title,.rs-fb-title{font-family:"Noto Serif JP",serif;font-size:clamp(21px,2.4vw,26px);line-height:1.5;margin:6px 0 16px}
.rs-brief-dl{display:grid;grid-template-columns:9em 1fr;margin:0 0 16px;border-top:1px solid #e3e7eb}
.rs-brief-dl dt,.rs-brief-dl dd{margin:0;padding:12px 4px;border-bottom:1px solid #e3e7eb;font-size:15px;line-height:1.85}
.rs-brief-dl dt{font-weight:700;color:#374151}
.rs-brief-dl ul{margin:0;padding-left:1.2em}
.rs-brief-dl li{margin:2px 0}
.rs-kidsnote{border:2px solid #f0b35a;background:#fff7e8;padding:12px 16px;font-size:14.5px;line-height:1.85;margin:0 0 14px}
.rs-kidsnote p{margin:0}
.rs-kidsnote p+p{margin-top:6px}
.rs-kidsnote a{font-weight:800;color:#c2410c}
.rs-brief-btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px}
.rs-back{font:inherit;font-size:14px;font-weight:700;padding:11px 18px;border:1px solid #9aa3ad;border-radius:999px;background:#fff;color:#374151;cursor:pointer}

/* 練習の部屋 */
.rs-room-title{align-self:center;font-size:14px;font-weight:700;color:#1d3557}
.rs-room .schat-msg.is-bot[data-who]::before{content:attr(data-who);display:block;font-size:11.5px;color:#6b7280;margin:0 0 3px 4px}
.rs-room.is-kids .schat-msg.is-bot p{background:#fffaf0;border-color:#f0d9a8}
.rs-room-foot{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:12px;border-top:1px solid #e3e7eb;background:#f7f8fa}
.rs-finish{font:inherit;font-size:15px;font-weight:700;padding:11px 20px;border:2px solid #1d3557;border-radius:999px;background:#fff;color:#1d3557;cursor:pointer}
.rs-finish:not(:disabled):hover{background:#1d3557;color:#fff}
.rs-finish:disabled{opacity:.4;cursor:default}
.rs-room-hint{font-size:13px;color:#5b6470}

/* 振り返り */
.rs-fb{margin-top:22px}
.rs-fb-in{border:1px solid #cfd5db;background:#fff;padding:26px;box-shadow:0 10px 30px rgba(16,19,26,.06)}
.rs-fb-in.is-kids{background:#fffdf7}
.rs-fb-table{width:100%;border-collapse:collapse;margin:0 0 16px}
.rs-fb-table th,.rs-fb-table td{border-bottom:1px solid #e3e7eb;padding:12px 8px;text-align:left;vertical-align:top;font-size:15px;line-height:1.8}
.rs-fb-table th{width:11em;font-weight:700}
.rs-mark{width:3em;text-align:center!important;font-size:22px!important;line-height:1.3!important;font-weight:700}
.rs-mark.is-a{color:#15803d}.rs-mark.is-b{color:#1d4ed8}.rs-mark.is-c{color:#b45309}
.rs-fb-box{padding:14px 18px;margin:12px 0 0;font-size:15px;line-height:1.85}
.rs-fb-box p{margin:0}
.rs-fb-h{font-weight:700;font-size:13.5px;letter-spacing:.04em;margin-bottom:4px!important}
.rs-fb-box.is-good{background:#effaf3;border-left:4px solid #15803d}
.rs-fb-box.is-next{background:#eff4ff;border-left:4px solid #1d4ed8}

@media(max-width:860px){
  .rs-cards{grid-template-columns:1fr}
  .rs-brief,.rs-fb-in{padding:20px 16px}
  .rs-brief-dl{grid-template-columns:1fr}
  .rs-brief-dl dt{border-bottom:0;padding-bottom:0}
  .rs-fb-table th{width:auto;display:block;border-bottom:0;padding-bottom:0}
  .rs-fb-table td{display:inline-block;border-bottom:0}
  .rs-fb-table tr{display:block;border-bottom:1px solid #e3e7eb;padding-bottom:6px}
  .rs-mark{width:auto}
}
