.place-list{list-style:none;margin:0;padding:0}
.place-row{padding:8px 12px;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:4px;min-height:72px;justify-content:center}
.place-row.closed{background-color:#f9fafb}

/* 上段：メタ情報（小さい文字） */
.row-meta{display:flex;gap:12px;align-items:baseline;font-size:12px;color:#666}
.row-meta .category{white-space:nowrap}
.row-meta .location{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}

/* 下段：主要情報（大きい文字） */
.row-main{display:flex;align-items:center;gap:8px}

/* ステータス列（固定幅） */
.status-col{display:flex;align-items:center;gap:4px;min-width:80px;white-space:nowrap}
.status-badge{display:inline-block;padding:3px 6px;border-radius:10px;font-size:11px;color:var(--status-closed-fg);background:var(--status-closed-bg);font-weight:600}
.status-badge.open{background:var(--status-open-bg);color:var(--status-open-fg)}
.status-badge.soon{background:var(--status-soon-bg);color:var(--status-soon-fg)}
.status-badge.urgent{background:var(--status-urgent-bg);color:var(--status-urgent-fg)}
.status-badge.closed{background:var(--status-closed-bg);color:var(--status-closed-fg)}
.remaining-time{font-size:13px;color:#111;font-weight:600;min-width:40px;text-align:right}

/* 店舗名列 */
.name-col{display:flex;align-items:center;gap:6px;flex:1;min-width:0}
.rating{font-size:12px;color:#f59e0b;font-weight:600;white-space:nowrap}
.rating::before{content:'★ '}
.name{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.external-link{color:#0ea5a4;text-decoration:none;font-size:14px;white-space:nowrap;flex-shrink:0}
.external-link:hover{text-decoration:underline}

/* 状態別の残り時間色 */
.place-row.status--open .remaining-time{color:var(--status-open-bg);font-weight:700}
.place-row.status--soon .remaining-time{color:var(--status-soon-bg);font-weight:700}
.place-row.status--urgent .remaining-time{color:var(--status-urgent-bg);font-weight:700}
.place-row.is-closed .remaining-time{color:var(--muted);font-weight:600}

/* 行の区切りを薄くして余白を確保 */
.place-row{border-bottom:1px solid rgba(15,23,32,0.04);padding:12px 14px}
.place-row.is-closed{background:linear-gradient(180deg,#fbfcfc,#ffffff)}

/* タグの視覚調整 */
.tag{font-weight:600;opacity:0.95}
.tag--tomorrow{background:#fef3f2;color:#b91c1c}
.tag--break{background:#eef2ff;color:#3730a3}

/* タグ列 */
.tags{display:flex;gap:4px;flex-wrap:nowrap;overflow:hidden}
.tag{background:#111827;color:#fff;padding:2px 6px;border-radius:10px;font-size:11px;white-space:nowrap}
.tag.tag--tomorrow{background:#fef3c7;color:#92400e}
.tag.tag--break{background:#eef2ff;color:#0f172a}
.tag.tag--early{background:#dbeafe;color:#0c4a6e}
.tag.tag--late{background:#1f2937;color:#fff}

@media (min-width:640px){
  .place-row{min-height:80px}
}
