/* 실서비스용 보충 스타일 (style.css = 디자인 시안과 동일) */
body { min-height: 100%; }
a { color: var(--accent); }
.brand { color: var(--ink); text-decoration: none; }
.nav a { padding: 8px 12px; border-radius: 7px; color: var(--muted); font-weight: 500; text-decoration: none; white-space: nowrap; }
.nav a:hover { background: var(--sunken); color: var(--ink); }
.nav a[aria-current="page"] { color: var(--ink); background: var(--sunken); }
.btn.small { padding: 5px 10px; font-size: 13px; }
.field input[type="password"] { border: 1px solid var(--line); background: var(--paper); border-radius: 8px; padding: 9px 12px; max-width: 100%; }
.form-err { margin: 0; color: var(--led-fail); font-size: 14px; }
.empty { background: var(--surface); border: 1px dashed var(--line); border-radius: 12px; padding: 32px; display: grid; gap: 10px; justify-items: start; }
.empty h2 { font-size: 18px; }
.empty p { margin: 0; color: var(--muted); }
.qr { width: 220px; height: 220px; max-width: 100%; }
.qr svg, .qr img { width: 100%; height: 100%; display: block; }
.feed video { width: 100%; height: 100%; display: block; object-fit: cover; background: #05080B; }
.drive-tabs { display: flex; gap: 6px; align-items: center; margin-bottom: 12px; flex-wrap: wrap; }
.tab { border: 1px solid var(--line); background: var(--surface); padding: 6px 14px; border-radius: 8px; cursor: pointer; font-weight: 600; color: var(--muted); }
.tab[aria-selected="true"] { color: var(--on-accent); background: var(--accent); border-color: var(--accent); }
.lost span { display: block; font-weight: 500; font-size: 15px; margin-top: 6px; }
.feed.warn { outline: 3px solid var(--led-drive); }
.car .live-row { display: flex; gap: 8px; flex-wrap: wrap; }
