/* =============================================
   介護施設検索プラグイン v2 — kaigo-search.css
   ============================================= */
#kaigo-search-app{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:15px;color:#1a1a1a;line-height:1.6;max-width:1080px;margin:0 auto;padding:1rem 0}
.kaigo-search-panel{background:#f5f5f5;border-radius:10px;padding:1.25rem;margin-bottom:1.25rem}
.kaigo-search-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;align-items:flex-end}
.kaigo-field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:140px}
.kaigo-field--wide{flex:2;min-width:200px}
.kaigo-field label{font-size:12px;color:#666}
.kaigo-field input,.kaigo-field select{padding:8px 10px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;background:#fff;color:#1a1a1a;width:100%;box-sizing:border-box}
.kaigo-field input:focus,.kaigo-field select:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 2px rgba(74,144,217,.2)}
.kaigo-filter-group{margin-bottom:8px}
.kaigo-filter-label{font-size:12px;color:#888;display:block;margin-bottom:5px}
.kaigo-pills{display:flex;flex-wrap:wrap;gap:6px}
.kaigo-pill{font-size:12px;padding:5px 12px;border-radius:99px;border:1px solid #d0d0d0;background:transparent;color:#555;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}
.kaigo-pill:hover{border-color:#999;color:#1a1a1a}
.kaigo-pill.is-active{background:#fff;border-color:#4a90d9;color:#1a58a0;font-weight:500}
.kaigo-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:8px}
.kaigo-result-count{font-size:14px;color:#666}
.kaigo-results-header select{font-size:13px;padding:6px 10px;border:1px solid #d0d0d0;border-radius:6px;background:#fff;color:#1a1a1a}
.kaigo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.kaigo-card{background:#fff;border:1px solid #e0e0e0;border-radius:10px;padding:1rem 1.125rem;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.kaigo-card:hover{border-color:#4a90d9;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.kaigo-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}
.kaigo-card-name{font-size:15px;font-weight:500;color:#1a1a1a;line-height:1.4}
.kaigo-badge{font-size:11px;padding:3px 9px;border-radius:99px;white-space:nowrap;flex-shrink:0;margin-left:8px}
.kaigo-badge--特養{background:#E1F5EE;color:#085041}
.kaigo-badge--有料老人ホーム{background:#E6F1FB;color:#0C447C}
.kaigo-badge--グループホーム{background:#EEEDFE;color:#3C3489}
.kaigo-badge--サービス付き高齢者向け住宅{background:#FAEEDA;color:#633806}
.kaigo-badge--デイサービス{background:#EAF3DE;color:#27500A}
.kaigo-badge--ショートステイ{background:#FBEAF0;color:#72243E}
.kaigo-card-addr{font-size:12px;color:#888;margin-bottom:8px}
.kaigo-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}
.kaigo-tag{font-size:11px;padding:2px 8px;border-radius:5px;background:#f0f0f0;color:#555;border:1px solid #e0e0e0}
.kaigo-card-footer{display:flex;align-items:center;justify-content:space-between}
.kaigo-price{font-size:13px;color:#1a1a1a}
.kaigo-price span{font-size:11px;color:#888}
.kaigo-avail{font-size:12px;padding:3px 10px;border-radius:5px}
.kaigo-avail--ok{background:#EAF3DE;color:#27500A}
.kaigo-avail--few{background:#FAEEDA;color:#633806}
.kaigo-avail--full{background:#FCEBEB;color:#791F1F}
.kaigo-empty{text-align:center;padding:3rem 1rem;color:#aaa;font-size:14px;grid-column:1/-1}
.kaigo-no-data{text-align:center;padding:3rem 1rem;color:#aaa;font-size:14px;grid-column:1/-1}
.kaigo-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;z-index:9999;overflow-y:auto}
.kaigo-modal-overlay[hidden]{display:none}
.kaigo-modal{background:#fff;border-radius:12px;padding:1.5rem;width:100%;max-width:560px;position:relative}
.kaigo-modal-close{position:absolute;top:12px;right:14px;background:transparent;border:none;font-size:22px;color:#888;cursor:pointer;line-height:1;padding:2px 6px}
.kaigo-modal-close:hover{color:#1a1a1a}
.kaigo-modal-name{font-size:18px;font-weight:500;margin-bottom:4px}
.kaigo-modal-type{font-size:13px;color:#666;margin-bottom:1rem}
.kaigo-modal-desc{font-size:13px;color:#555;line-height:1.8;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #eee}
.kaigo-modal-table{width:100%;font-size:13px;border-collapse:collapse;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #eee}
.kaigo-modal-table td{padding:5px 0;vertical-align:top}
.kaigo-modal-table td:first-child{color:#888;width:110px}
.kaigo-modal-svc-title{font-size:13px;color:#888;margin-bottom:6px}
.kaigo-modal-contact{display:block;width:100%;margin-top:1rem;padding:10px;background:#4a90d9;color:#fff;border:none;border-radius:7px;font-size:14px;cursor:pointer;text-align:center;text-decoration:none}
.kaigo-modal-contact:hover{background:#3a7bc8;color:#fff}
@media(max-width:600px){.kaigo-grid{grid-template-columns:1fr}.kaigo-search-row{flex-direction:column}.kaigo-field,.kaigo-field--wide{min-width:0;width:100%}}
