:root {
    --hammer-ink: #17202a;
    --hammer-steel: #263241;
    --hammer-gold: #f6c343;
    --hammer-paper: #f6f4ef;
}

body {
    background: var(--hammer-paper);
    color: var(--hammer-ink);
}

.bg-hammer {
    background: var(--hammer-ink);
}

.brand-mark {
    height: 24px;
    width: 24px;
    object-fit: contain;
    vertical-align: text-bottom;
}

.home-hero {
    background:
        linear-gradient(90deg, rgba(23, 32, 42, 0.97) 0%, rgba(23, 32, 42, 0.88) 42%, rgba(23, 32, 42, 0.46) 100%),
        url("../img/legacy-auction.jpg");
    background-position: center;
    background-size: cover;
    color: #fff;
}

.portal-header {
    background:
        linear-gradient(135deg, rgba(23, 32, 42, 0.96), rgba(38, 50, 65, 0.93)),
        radial-gradient(circle at 80% 20%, rgba(246, 195, 67, 0.25), transparent 28%);
    color: #fff;
}

.hero-panel,
.metric-card,
.empty-state {
    background: #fff;
    border: 1px solid rgba(23, 32, 42, 0.12);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(23, 32, 42, 0.08);
}

.hero-panel {
    color: var(--hammer-ink);
    padding: 1.25rem;
}

.flow-step {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.7rem 0;
}

.flow-step i {
    color: #8c6a00;
    font-size: 1.15rem;
}

.auction-card {
    border-radius: 8px;
}

.empty-state {
    padding: 2rem;
    text-align: center;
    color: #5f6873;
}

.empty-state i {
    display: block;
    font-size: 2rem;
    color: #8c6a00;
    margin-bottom: 0.75rem;
}

.metric-card {
    padding: 1.25rem;
}

.metric-label {
    display: block;
    color: #5f6873;
    font-size: 0.88rem;
}

.metric-value {
    display: block;
    font-size: 2rem;
    font-weight: 700;
}

.form-control {
    border-radius: 6px;
}

.capture-screen {
    max-width: 1600px;
}

.capture-totals,
.capture-toolbar {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.capture-totals {
    background: #fff;
    border: 1px solid rgba(23, 32, 42, 0.12);
    border-radius: 8px;
    padding: 0.75rem 1rem;
}

.capture-table-wrap {
    overflow-x: auto;
    background: #fff;
    border: 1px solid rgba(23, 32, 42, 0.12);
}

.capture-table {
    min-width: 1380px;
    table-layout: fixed;
}

.capture-table th {
    background: var(--hammer-steel);
    color: #fff;
    font-size: 0.82rem;
}

.capture-table th:nth-child(1) {
    width: 54px;
}

.capture-table th:nth-child(2),
.capture-table th:nth-child(6),
.capture-table th:nth-child(9),
.capture-table th:nth-child(10) {
    width: 70px;
}

.capture-table th:nth-child(3) {
    width: 90px;
}

.capture-table th:nth-child(4) {
    width: 330px;
}

.capture-table th:nth-child(5),
.capture-table th:nth-child(7) {
    width: 120px;
}

.capture-table th:nth-child(8) {
    width: 110px;
}

.capture-table th:nth-child(11) {
    width: 300px;
}

.capture-line-number {
    text-align: center;
    font-weight: 700;
    color: #5f6873;
}

.capture-input {
    border-radius: 4px;
    font-size: 1rem;
    min-height: 34px;
}

.capture-code {
    text-transform: uppercase;
}

.capture-prefix-control {
    align-items: center;
    display: flex;
    gap: 0.4rem;
}

.capture-prefix {
    text-transform: uppercase;
    width: 76px;
}

.capture-sequence {
    text-transform: uppercase;
}

.capture-money,
.capture-qty {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.capture-warning-row td {
    background: #fff4f4;
}

.capture-live-warning-row td {
    background: #fff7ed;
}

.capture-live-ready-row td {
    background: #f3fbf5;
}

.capture-promoted-row td {
    background: #f4fbf4;
}

.capture-void-row td,
.capture-live-void-row td {
    background: #f3f4f6;
}

.capture-warnings .badge {
    margin: 0 0.15rem 0.15rem 0;
}

.capture-void-reason {
    max-width: 220px;
}

.capture-suggest-box {
    background: #fff;
    border: 1px solid rgba(23, 32, 42, 0.22);
    border-radius: 6px;
    box-shadow: 0 10px 24px rgba(23, 32, 42, 0.16);
    max-height: 260px;
    overflow-y: auto;
    padding: 0.25rem;
    position: absolute;
    z-index: 1080;
}

.capture-suggest-box[hidden] {
    display: none;
}

.capture-suggest-box button {
    background: transparent;
    border: 0;
    border-radius: 4px;
    display: block;
    font-size: 0.9rem;
    padding: 0.35rem 0.45rem;
    text-align: left;
    width: 100%;
}

.capture-suggest-box button.active,
.capture-suggest-box button:hover {
    background: var(--hammer-gold);
}

.capture-suggest-box span {
    color: #5f6873;
    font-size: 0.82rem;
}
