/* Katsudousha Tools — テーマ（JIN:R）を汚さない最小スタイル */
.ksd-compare,.ksd-sim,.ksd-market,.ksd-school,.ksd-photo{margin:1.5em 0;font-size:15px;line-height:1.6}
.ksd-compare__controls{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-bottom:8px}
.ksd-compare__controls label{display:inline-flex;align-items:center;gap:4px;cursor:pointer}
.ksd-compare__hint{color:#777;font-size:12px}
.ksd-compare__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ksd-table{width:100%;border-collapse:collapse;min-width:960px;font-size:13.5px}
.ksd-td-name{min-width:13em;font-weight:700}
.ksd-table td{max-width:16em}
.ksd-table td[data-label="月謝の例"],.ksd-table td[data-label="最寄駅・徒歩"]{white-space:nowrap}
.ksd-table th,.ksd-table td{border:1px solid #e5e5e5;padding:8px 10px;vertical-align:top;text-align:left}
.ksd-table thead th{background:#fafafa;white-space:nowrap;font-weight:700}
.ksd-table thead th[data-sort]{cursor:pointer;user-select:none}
.ksd-table thead th[data-sort]::after{content:" ⇅";color:#aaa;font-size:11px}
.ksd-table thead th[data-dir="asc"]::after{content:" ▲";color:#F97316}
.ksd-table thead th[data-dir="desc"]::after{content:" ▼";color:#F97316}
.ksd-table td[data-value]{font-variant-numeric:tabular-nums;white-space:nowrap}
.ksd-table--kv{min-width:0}
.ksd-table--kv th{width:9em;background:#fafafa;white-space:nowrap}
.ksd-pr{display:inline-block;margin-left:6px;padding:0 6px;border:1px solid #F97316;color:#F97316;border-radius:3px;font-size:11px;line-height:1.6;vertical-align:middle}
.ksd-note{font-size:12px;color:#777;margin:8px 0 0}
.ksd-sim__form{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;padding:12px 14px;background:#fff8f2;border:1px solid #ffd9b8;border-radius:8px;margin-bottom:10px}
.ksd-sim__form select{padding:4px 6px}
.ksd-sim__best td{background:#fff8f2}
.ksd-market{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border-left:4px solid #F97316;background:#f7f7f5}
.ksd-market__k{font-size:13px;color:#555}
.ksd-market__v{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;margin-left:12px}
.ksd-market__sub{font-size:13px;color:#555}
.ksd-gbp{display:inline-flex;align-items:center;gap:4px;font-weight:700}
.ksd-gbp__star{color:#F5A623}
.ksd-gbp__count{font-weight:400;color:#666}
.ksd-gbp__src{font-weight:400;font-size:12px;margin-left:6px}
.ksd-photo{margin:0 0 1em}
.ksd-photo img{max-width:100%;height:auto;border-radius:6px}
.ksd-photo figcaption{font-size:12px;color:#777;margin-top:4px}
.ksd-cta{margin:12px 0 0}
.ksd-btn{display:inline-block;padding:12px 24px;background:#F97316;color:#fff!important;border-radius:999px;font-weight:700;text-decoration:none!important}
.ksd-btn:hover{opacity:.9}
@media (max-width:600px){
  .ksd-table{font-size:13px}
  .ksd-market__v{font-size:22px}
}

/* v0.3.0: TOP3カード・料金非公開一覧・LPスクショ */
.ksd-top3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:1.2em 0}
.ksd-top3__card{position:relative;background:#fff;border:1px solid #e5e5e5;border-radius:10px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:6px}
.ksd-top3__rank{display:inline-block;align-self:flex-start;background:#F97316;color:#fff;font-weight:700;font-size:12px;padding:2px 10px;border-radius:999px}
.ksd-top3__name{font-weight:700;font-size:15.5px;line-height:1.4}
.ksd-top3__fit{font-size:12.5px;color:#666;line-height:1.5}
.ksd-top3__kv{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:4px 0 0;font-size:13px}
.ksd-top3__kv dt{color:#888;white-space:nowrap}
.ksd-top3__kv dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
.ksd-top3__btn{margin-top:auto;display:block;text-align:center;padding:9px 12px;border-radius:999px;background:#F97316;color:#fff!important;font-weight:700;font-size:13.5px;text-decoration:none!important}
.ksd-table--undisclosed{min-width:640px}
.ksd-school__lp{margin:0 0 14px}
.ksd-school__lp img{width:100%;height:auto;border:1px solid #e5e5e5;border-radius:8px;display:block}
.ksd-school__lp figcaption{font-size:12px;color:#777;margin-top:4px}
@media (max-width:600px){ .ksd-top3{grid-template-columns:1fr} }

/* v0.4.0: クチコミ要旨・TOP3の横スクロール（スマホ） */
.ksd-reviews{margin:12px 0 14px;padding:12px 14px;background:#fffaf5;border:1px solid #ffe1c9;border-radius:8px}
.ksd-reviews__head{font-weight:700;font-size:14px;margin-bottom:6px}
.ksd-reviews__topic{font-weight:400;font-size:12px;color:#8a5a2b;margin-left:8px}
.ksd-reviews__list{margin:0;padding:0;list-style:none;font-size:13.5px}
.ksd-reviews__list li{padding:5px 0;border-top:1px dashed #ffe1c9}
.ksd-reviews__star{color:#F5A623;font-weight:700;margin-right:6px}
.ksd-reviews__when{color:#888;font-size:12px;margin-right:8px}
.ksd-reviews .ksd-note{margin-top:6px}
@media (max-width:600px){
  .ksd-top3{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:6px}
  .ksd-top3__card{flex:0 0 82%;scroll-snap-align:start}
}
