/**
 * deal-memory.css — Comparable Deal Memory Styles
 * Batch 45: Similar deals card + Deal Library panel
 *
 * Zero hardcoded colors — all values reference base.css tokens.
 */

/* ============================================================
   SIMILAR DEALS CARD (injected into PI strategy panels)
   ============================================================ */

.lf-similar-deals-card {
    background: var(--glass-bg);
    border: 1px solid var(--glass-border);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    box-shadow: var(--glass-shadow);
    border-radius: var(--radius-sm);
    padding: 12px;
    margin-top: 16px;
}

/* Eyebrow header */
.similar-deals__header {
    font-size: 0.6rem;
    font-weight: var(--weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-widest);
    color: var(--text-muted);
    border-left: 3px solid var(--gold-500);
    padding-left: 8px;
    margin-bottom: 10px;
}

/* Best deal callout */
.best-deal-callout {
    background: var(--gold-alpha-10);
    border-left: 3px solid var(--gold-500);
    padding: 8px 10px;
    border-radius: var(--radius-xs);
    font-size: 0.78rem;
    color: var(--text-secondary);
    margin-bottom: 10px;
    line-height: var(--leading-snug);
}

.best-deal-callout strong {
    color: var(--gold-400);
}

/* Individual similar deal rows */
.similar-deal-row {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 0;
    border-bottom: 1px solid var(--glass-border);
}

.similar-deal-row:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.similar-deal-row__address {
    font-size: 0.75rem;
    color: var(--text-primary);
    flex: 1 1 0;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.similar-deal-row__chip {
    font-size: 0.6rem;
    font-weight: var(--weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    padding: 2px 6px;
    border-radius: var(--radius-full);
    white-space: nowrap;
    flex-shrink: 0;
}

/* Reuse rp-badge strategy colors */
.similar-deal-row__chip--flip      { background: var(--cyan-alpha-10); color: var(--text-cyan); border: 1px solid var(--cyan-alpha-20); }
.similar-deal-row__chip--wholesale { background: var(--gold-alpha-20); color: var(--gold-500); border: 1px solid var(--gold-alpha-30); }
.similar-deal-row__chip--rental    { background: var(--color-positive-bg); color: var(--color-positive); border: 1px solid var(--color-positive-border); }
.similar-deal-row__chip--brrrr     { background: var(--color-purple-bg); color: var(--color-purple); border: 1px solid var(--color-purple-border); }
.similar-deal-row__chip--financing { background: var(--blue-muted); color: var(--text-secondary); border: 1px solid var(--glass-border); }

.similar-deal-row__stats {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    flex-shrink: 0;
}

.similar-deal-row__arv {
    font-size: 0.72rem;
    font-weight: var(--weight-semibold);
    color: var(--gold-400);
}

.similar-deal-row__meta {
    font-size: 0.65rem;
    color: var(--text-muted);
}

.similar-deals__empty {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: center;
    padding: 12px 0 4px;
}

/* ============================================================
   DEAL LIBRARY PANEL (inside Reports slide-in panel)
   ============================================================ */

/* Tab pill strip at top of reports panel */
.rp-tabs {
    display: flex;
    gap: 6px;
    padding: 12px 16px 0;
    border-bottom: 1px solid var(--glass-border);
    margin-bottom: 0;
}

.rp-tab-pill {
    font-size: 0.75rem;
    font-weight: var(--weight-medium);
    color: var(--text-muted);
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    padding: 6px 10px 8px;
    cursor: pointer;
    transition: color 0.18s ease, border-color 0.18s ease;
    letter-spacing: var(--tracking-wide);
}

.rp-tab-pill:hover {
    color: var(--text-secondary);
}

.rp-tab-pill--active {
    color: var(--gold-400);
    border-bottom-color: var(--gold-500);
}

/* Panel content areas */
.rp-panel-content {
    display: none;
    flex-direction: column;
    height: 100%;
    overflow-y: auto;
}

.rp-panel-content--active {
    display: flex;
}

/* Deal Library panel container */
#lf-deal-library-panel {
    padding: 16px;
    flex: 1;
    min-height: 0;
    display: none;
    flex-direction: column;
}

#lf-deal-library-panel.rp-panel-content--active {
    display: flex;
}

/* ---- Deal Library TABLE ---- */
.dl-table-wrap {
    flex: 1;
    overflow-x: auto;
    min-height: 0;
}

.dl-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.78rem;
}

.dl-table th {
    font-size: 0.65rem;
    font-weight: var(--weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    color: var(--text-muted);
    padding: 6px 6px 8px;
    text-align: left;
    cursor: pointer;
    white-space: nowrap;
    border-bottom: 1px solid var(--glass-border);
    user-select: none;
}

.dl-table th:hover {
    color: var(--text-secondary);
    text-decoration: underline;
    text-decoration-color: var(--glass-border);
}

.dl-table td {
    font-size: 0.78rem;
    color: var(--text-secondary);
    padding: 8px 6px;
    border-bottom: 1px solid var(--glass-border);
    vertical-align: middle;
}

.dl-table tr:last-child td {
    border-bottom: none;
}

.dl-table tbody tr {
    cursor: pointer;
    transition: background 0.14s ease;
}

.dl-table tbody tr:hover td {
    background: var(--surface-glass-hover);
}

/* Sort indicator */
.dl-sort-indicator {
    display: inline-block;
    font-size: 0.6rem;
    margin-left: 3px;
    color: var(--text-dim);
    transition: color 0.14s ease;
}

.dl-sort-indicator--active {
    color: var(--gold-500);
}

/* Address cell */
.dl-addr {
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--text-primary);
    font-weight: var(--weight-medium);
}

/* Strategy chip in table */
.dl-chip {
    font-size: 0.58rem;
    font-weight: var(--weight-semibold);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    padding: 2px 6px;
    border-radius: var(--radius-full);
    white-space: nowrap;
    display: inline-block;
}

.dl-chip--flip      { background: var(--cyan-alpha-10); color: var(--text-cyan); border: 1px solid var(--cyan-alpha-20); }
.dl-chip--wholesale { background: var(--gold-alpha-20); color: var(--gold-500); border: 1px solid var(--gold-alpha-30); }
.dl-chip--rental    { background: var(--color-positive-bg); color: var(--color-positive); border: 1px solid var(--color-positive-border); }
.dl-chip--brrrr     { background: var(--color-purple-bg); color: var(--color-purple); border: 1px solid var(--color-purple-border); }
.dl-chip--financing { background: var(--blue-muted); color: var(--text-secondary); border: 1px solid var(--glass-border); }

/* Deal score dot */
.dl-score-dot {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    margin-right: 5px;
    flex-shrink: 0;
    vertical-align: middle;
}

.dl-score-dot--high   { background: var(--gold-500); }
.dl-score-dot--mid    { background: var(--color-warning); }
.dl-score-dot--low    { background: var(--color-negative); }

/* Empty state */
.dl-empty {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
    color: var(--text-muted);
    gap: 10px;
}

.dl-empty__icon {
    font-size: 2rem;
    opacity: 0.4;
    color: var(--text-dim);
}

.dl-empty__text {
    font-size: 0.85rem;
    color: var(--text-muted);
    line-height: var(--leading-relaxed);
}

/* Clear Library button */
.dl-clear-btn {
    margin-top: 16px;
    align-self: flex-start;
    background: transparent;
    border: 1.5px solid var(--color-negative);
    color: var(--color-negative);
    font-size: 0.72rem;
    font-weight: var(--weight-medium);
    padding: 6px 14px;
    border-radius: var(--btn-radius);
    cursor: pointer;
    transition: background 0.18s ease, color 0.18s ease;
    letter-spacing: var(--tracking-wide);
}

.dl-clear-btn:hover {
    background: var(--color-negative);
    color: var(--text-inverse);
}
