/* インバウンド観光客数チェッカー v1.0.0 — テーマ干渉防止のため全クラスに ibc- プレフィックス */
.ibc-app{
  --ibc-navy:#0E2238; --ibc-ink:#1C2B3A;
  --ibc-jp:#1E4D8C; --ibc-fg:#C84B1E;
  --ibc-fg-soft:#FBEDE6; --ibc-jp-soft:#EAF0F8;
  --ibc-line:#D8DEE6; --ibc-card:#FFFFFF; --ibc-muted:#5B6B7C;
  font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic Medium",YuGothic,Meiryo,sans-serif;
  color:var(--ibc-ink); line-height:1.6; max-width:760px; margin:1.5em auto;
}
.ibc-app *{box-sizing:border-box}
.ibc-panel{background:var(--ibc-card);border:1px solid var(--ibc-line);border-radius:12px;overflow:hidden}
.ibc-head{background:var(--ibc-navy);color:#fff;padding:22px 24px 18px}
.ibc-eyebrow{font-size:11px;letter-spacing:.18em;color:#9FB6CC;margin-bottom:6px}
.ibc-title{font-size:20px;font-weight:700;line-height:1.4;color:#fff}
.ibc-src{font-size:11px;color:#9FB6CC;margin-top:8px}
.ibc-body{padding:20px 24px 24px}

.ibc-selrow{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:4px}
.ibc-field{flex:1;min-width:200px}
.ibc-field label{display:block;font-size:12px;font-weight:700;color:var(--ibc-muted);margin-bottom:6px}
.ibc-app select,.ibc-app input[type=number]{
  width:100%;padding:11px 12px;font-size:15px;border:1px solid var(--ibc-line);
  border-radius:8px;background:#fff;color:var(--ibc-ink);appearance:auto;max-width:none;
}
.ibc-app select:focus,.ibc-app input:focus{outline:2px solid var(--ibc-jp);outline-offset:1px}

.ibc-result{margin-top:20px;display:none}
.ibc-result.ibc-show{display:block}
.ibc-placename{font-size:15px;font-weight:700;margin-bottom:2px}
.ibc-placemeta{font-size:12px;color:var(--ibc-muted);margin-bottom:14px}

.ibc-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.ibc-stats{grid-template-columns:1fr}}
.ibc-stat{border:1px solid var(--ibc-line);border-radius:10px;padding:14px 16px}
.ibc-stat.ibc-jp{background:var(--ibc-jp-soft);border-color:#C4D3E6}
.ibc-stat.ibc-fg{background:var(--ibc-fg-soft);border-color:#EFC9B6}
.ibc-lbl{font-size:12px;font-weight:700;display:flex;align-items:center;gap:6px}
.ibc-dot{width:9px;height:9px;border-radius:50%}
.ibc-stat.ibc-jp .ibc-dot{background:var(--ibc-jp)}
.ibc-stat.ibc-fg .ibc-dot{background:var(--ibc-fg)}
.ibc-num{font-size:30px;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin:2px 0 0}
.ibc-stat.ibc-jp .ibc-num{color:var(--ibc-jp)}
.ibc-stat.ibc-fg .ibc-num{color:var(--ibc-fg)}
.ibc-unit{font-size:13px;font-weight:600;margin-left:2px}
.ibc-yoy{font-size:12px;color:var(--ibc-muted);margin-top:2px}
.ibc-yoy b.ibc-up{color:#1A7A3C}.ibc-yoy b.ibc-down{color:#B3261E}

.ibc-sharewrap{margin-top:16px}
.ibc-sharehead{display:flex;justify-content:space-between;font-size:12px;color:var(--ibc-muted);margin-bottom:6px}
.ibc-sharebar{display:flex;height:26px;border-radius:6px;overflow:hidden;border:1px solid var(--ibc-line)}
.ibc-seg-jp{background:var(--ibc-jp)}
.ibc-seg-fg{background:var(--ibc-fg)}
.ibc-sharelegend{display:flex;gap:16px;font-size:12px;margin-top:6px;color:var(--ibc-muted)}
.ibc-sharelegend span{display:inline-flex;align-items:center;gap:5px}
.ibc-sharelegend i{width:10px;height:10px;border-radius:2px;display:inline-block}
.ibc-lg-jp{background:var(--ibc-jp)}.ibc-lg-fg{background:var(--ibc-fg)}
.ibc-natline{font-size:12px;color:var(--ibc-muted);margin-top:6px}

.ibc-extras{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
@media(max-width:520px){.ibc-extras{grid-template-columns:1fr 1fr}}
.ibc-ex{border:1px dashed var(--ibc-line);border-radius:8px;padding:10px 12px;text-align:center}
.ibc-k{font-size:11px;color:var(--ibc-muted)}
.ibc-v{font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}
.ibc-v small{font-size:11px;font-weight:600}

.ibc-muni{margin-top:24px;border-top:2px solid var(--ibc-navy);padding-top:18px}
.ibc-h2{font-size:15px;font-weight:800;margin-bottom:4px}
.ibc-note{font-size:12px;color:var(--ibc-muted);margin-bottom:12px}
.ibc-mt10{margin-top:10px}
.ibc-intensity{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.ibc-intensity button{
  flex:1;min-width:120px;padding:10px 8px;font-size:13px;border:1px solid var(--ibc-line);
  background:#fff;border-radius:8px;cursor:pointer;color:var(--ibc-ink);line-height:1.4
}
.ibc-intensity button small{display:block;font-size:11px;color:var(--ibc-muted)}
.ibc-intensity button.ibc-on{border-color:var(--ibc-navy);background:var(--ibc-navy);color:#fff}
.ibc-intensity button.ibc-on small{color:#B9CADB}

.ibc-muniresult{display:none;margin-top:14px}
.ibc-muniresult.ibc-show{display:block}
.ibc-pubresult{display:none;margin-top:14px}
.ibc-pubresult.ibc-show{display:block}
.ibc-estblock{display:none}
.ibc-estblock.ibc-show{display:block}

.ibc-estbadge{display:inline-block;font-size:11px;font-weight:700;color:#7A4A12;background:#FBF0DC;border:1px solid #E8D3A8;border-radius:4px;padding:2px 8px;margin-bottom:8px}
.ibc-pubbadge{display:inline-block;font-size:11px;font-weight:700;color:#0E5A2E;background:#E3F4E9;border:1px solid #A9D9BC;border-radius:4px;padding:2px 8px;margin-bottom:8px}
.ibc-srcline{font-size:11px;color:var(--ibc-muted);margin-top:8px}
.ibc-metricwarn{font-size:11px;color:#7A4A12;background:#FBF0DC;border:1px solid #E8D3A8;border-radius:6px;padding:8px 10px;margin-top:10px;line-height:1.5}
.ibc-navail{font-size:13px;color:var(--ibc-muted)}

.ibc-foot{font-size:11px;color:var(--ibc-muted);padding:14px 24px;border-top:1px solid var(--ibc-line);background:#FAFBFC}
.ibc-foot p{margin:0}
.ibc-foot p+p{margin-top:4px}
