/* form area */
.reads-form { background: var(--panel); border: 1px solid var(--line); border-radius: 12px; padding: 24px; margin-bottom: 36px; }
.reads-form-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.kind-toggle { display: inline-flex; background: rgba(0,0,0,0.25); border-radius: 8px; padding: 3px; gap: 2px; }
.kind-toggle button { background: transparent; border: 0; color: var(--ink-dim); padding: 6px 14px; border-radius: 6px; cursor: pointer; font-family: var(--mono); font-size: 0.85rem; }
.kind-toggle button.active { background: var(--accent); color: #0a0b0f; font-weight: 500; }
#qInput { flex: 1; min-width: 200px; background: rgba(0,0,0,0.25); border: 1px solid var(--line); color: var(--ink); padding: 10px 14px; border-radius: 8px; font-size: 0.95rem; font-family: var(--sans); }
#qInput:focus { outline: none; border-color: var(--accent); }
#searchBtn { background: var(--accent); color: #0a0b0f; border: 0; padding: 10px 20px; border-radius: 8px; cursor: pointer; font-weight: 500; }
#searchBtn:disabled { opacity: 0.5; cursor: wait; }

.reads-results { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 14px; margin-top: 18px; }
.reads-results:empty { display: none; }
.candidate { background: rgba(0,0,0,0.2); border: 1px solid var(--line); border-radius: 10px; overflow: hidden; cursor: pointer; transition: transform .15s, border-color .15s; display: flex; flex-direction: column; }
.candidate:hover { transform: translateY(-2px); border-color: var(--accent); }
.candidate img { width: 100%; aspect-ratio: 2/3; object-fit: cover; background: #1a1d27; }
.candidate .info { padding: 10px 12px; flex: 1; display: flex; flex-direction: column; gap: 4px; }
.candidate .info h4 { margin: 0; font-size: 0.9rem; line-height: 1.3; color: var(--ink); }
.candidate .info p { margin: 0; font-size: 0.75rem; color: var(--ink-dim); font-family: var(--mono); }

.confirm-modal { position: fixed; inset: 0; background: rgba(0,0,0,0.7); display: flex; align-items: center; justify-content: center; z-index: 100; }
.confirm-box { background: var(--panel); border: 1px solid var(--line); border-radius: 12px; padding: 24px; max-width: 420px; width: 90%; }
.confirm-box h3 { margin: 0 0 16px; }
.confirm-box label { display: block; margin: 12px 0 6px; color: var(--ink-dim); font-size: 0.85rem; }
.confirm-box input, .confirm-box textarea { width: 100%; background: rgba(0,0,0,0.25); border: 1px solid var(--line); color: var(--ink); padding: 8px 12px; border-radius: 6px; font-family: var(--sans); }
.confirm-box textarea { resize: vertical; min-height: 60px; }
.date-ymd { display: flex; align-items: center; gap: 6px; }
.date-ymd input { width: auto; flex: 1; text-align: center; font-family: var(--mono); }
.date-ymd input#dateY { flex: 1.6; }
.date-ymd span { color: var(--ink-dim); font-family: var(--mono); }
.confirm-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 18px; }
.confirm-actions button { padding: 8px 18px; border-radius: 6px; border: 0; cursor: pointer; }
.btn-cancel { background: rgba(255,255,255,0.06); color: var(--ink-dim); }
.btn-save { background: var(--strong); color: #0a0b0f; font-weight: 500; }

/* list */
.reads-list h2 { margin-top: 40px; }
#entries { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.reads-card { display: flex; gap: 14px; background: var(--panel); border: 1px solid var(--line); border-radius: 10px; padding: 14px; transition: border-color .15s; position: relative; }
.reads-card:hover { border-color: var(--line); }
.reads-card .thumb { flex: 0 0 80px; height: 120px; border-radius: 6px; overflow: hidden; background: #1a1d27; }
.reads-card .thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.thumb-empty { display: flex; align-items: center; justify-content: center; color: var(--ink-dim); font-family: var(--mono); font-size: 0.8rem; }
.card-body { flex: 1; min-width: 0; }
.card-body .card-top { display: flex; gap: 8px; align-items: center; margin-bottom: 4px; }
.card-body .date { position: absolute; top: 14px; right: 14px; font-family: var(--mono); font-size: 0.75rem; color: var(--ink-dim); transition: right .15s; }
.reads-card:hover .card-body .date { right: 38px; }
.card-body h3 { margin: 4px 0 6px; font-size: 0.98rem; line-height: 1.3; }
.meta-line { margin: 0; font-size: 0.78rem; color: var(--ink-dim); font-family: var(--mono); }
.note { margin: 8px 0 0; font-size: 0.85rem; color: var(--ink); line-height: 1.5; padding: 6px 10px; background: rgba(0,0,0,0.2); border-radius: 6px; }
.del-btn { position: absolute; top: 9px; right: 8px; height: 30px; display: flex; align-items: center; justify-content: center; padding: 0 8px; background: transparent; border: 0; color: var(--ink-dim); font-size: 1.4rem; line-height: 1; cursor: pointer; opacity: 0; transition: opacity .15s; }
.reads-card:hover .del-btn { opacity: 0.7; }
.del-btn:hover { color: #f87171; opacity: 1; }
.reads-card.kind-book { border-left: 3px solid var(--accent-2); }
.reads-card.kind-movie { border-left: 3px solid var(--accent); }
.reads-card .kind-badge { padding: 3px 0; }
