/* ks-syutokenrailway-db: フロントエンドCSS */
.ks-station-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}
.ks-station-table th,
.ks-station-table td {
    padding: 8px 12px;
    border: 1px solid #e0e0e0;
    text-align: left;
}
.ks-station-table th { background: #f5f5f5; font-weight: 700; }
.ks-station-table tbody tr:nth-child(even) { background: #fafafa; }

.ks-line-badge {
    display: inline-block;
    padding: 1px 5px;
    border-radius: 3px;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    min-width: 20px;
    text-align: center;
}
.ks-transfer  { background: #E60012; color: #fff; font-size: 10px; padding: 1px 5px; border-radius: 3px; }
.ks-primary-badge { background: #F68B1E; color:#fff; font-size:10px; padding:1px 5px; border-radius:3px; margin-right:4px; }

.ks-line-list { list-style: none; padding: 0; }
.ks-line-list li { padding: 6px 0; border-bottom: 1px solid #f0f0f0; }

.ks-school-stations { list-style: none; padding: 0; }
.ks-school-stations li { padding: 8px 0; border-bottom: 1px solid #f0f0f0; }

/* 検索フォーム */
.ks-search-input {
    width: 100%;
    max-width: 400px;
    padding: 8px 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
}
.ks-search-results {
    position: absolute;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    max-width: 400px;
    max-height: 280px;
    overflow-y: auto;
    z-index: 999;
    box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
.ks-result-item {
    padding: 10px 14px;
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
    font-size: 13px;
}
.ks-result-item:hover { background: #f0f7ff; }
.ks-result-sub { color: #777; font-size: 11px; margin-top: 2px; }
