.site-panel, .site-search-form, .data-health-card { padding:18px; margin:20px 0; border:2px solid #d8dfe3; border-radius:14px; background:#fff; }
.site-search-form label { display:block; margin-bottom:8px; font-weight:700; }
.site-search-row { display:flex; gap:10px; }
.site-search-row input { flex:1; min-width:0; padding:10px 12px; border:2px solid #0e7fb0; border-radius:10px; font:inherit; }
.site-search-row button, #search-kind, .search-more { min-height:44px; padding:8px 14px; border:2px solid #0e7fb0; border-radius:10px; background:#fff; color:#0b3a52; font:inherit; cursor:pointer; }
.site-search-row button { background:#0e7fb0; color:#fff; font-weight:700; }
.site-search-row input:focus-visible, .site-search-row button:focus-visible, #search-kind:focus-visible, .search-more:focus-visible { outline:3px solid #0b3a52; outline-offset:3px; }
.site-links { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; margin:20px 0; }
.site-links a { display:flex; align-items:center; min-height:54px; padding:12px; border:2px solid #0e7fb0; border-radius:10px; background:#e4f5fc; color:#0b3a52; font-weight:700; text-decoration:none; }
.site-small, .site-notice { font-size:14px; color:#46565f; }
.site-notice { margin-top:30px; }
.search-result { padding:18px 0; border-bottom:1px solid #d8dfe3; }
.search-result h2 { margin:4px 0 8px; font-size:20px; }
.search-result p { margin:0; font-size:15px; }
.search-kind { font-size:13px; color:#46565f; }
.data-health-card { font-size:14px; }
.data-health-card[data-state="attention"] { border-color:#9b6500; background:#fdf3df; }
.data-health-card a { display:inline-flex; align-items:center; min-height:44px; }
.search-more { margin:18px 0; }
@media(max-width:480px) { .site-search-row { flex-direction:column; } .site-panel, .site-search-form { padding:14px; } }
