/**
 * File: /public_html/assets/css/admin.css
 * Purpose: Minimal admin interface styles for manual featured properties.
 * Dependencies: /assets/css/main.css.
 * Credit: Designed inhouse by The Taino Resource Group LLC.
 */

body.admin-body {
    background: linear-gradient(180deg, #02050a 0%, #071a30 55%, #03070d 100%);
}

.admin-shell {
    width: min(1200px, calc(100% - 32px));
    margin: 0 auto;
    padding: 32px 0 64px;
}

.admin-topbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
}

.admin-grid {
    display: grid;
    gap: 24px;
}

.admin-table-wrap {
    overflow-x: auto;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 860px;
}

.admin-table th,
.admin-table td {
    padding: 14px 12px;
    border-bottom: 1px solid var(--rtr-line);
    text-align: left;
    vertical-align: top;
}

.admin-table th {
    color: var(--rtr-gold);
    text-transform: uppercase;
    letter-spacing: 0.16em;
    font-size: 0.72rem;
}

.admin-form,
.admin-login-form {
    display: grid;
    gap: 18px;
}

.admin-field-grid {
    display: grid;
    gap: 16px;
}

.admin-field {
    display: grid;
    gap: 8px;
}

.admin-field label {
    color: var(--rtr-muted);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 0.72rem;
    font-weight: 800;
}

.admin-field input,
.admin-field textarea,
.admin-field select {
    width: 100%;
    border: 1px solid var(--rtr-line);
    border-radius: 20px;
    background: rgba(3, 7, 13, 0.48);
    color: var(--rtr-white);
    padding: 14px 16px;
    font: inherit;
}

.admin-field textarea {
    min-height: 140px;
    resize: vertical;
}

.admin-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

.admin-check {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--rtr-muted);
}

.admin-errors,
.admin-success,
.admin-note {
    border-radius: 18px;
    padding: 14px 16px;
}

.admin-errors {
    border: 1px solid rgba(200, 16, 46, 0.45);
    background: rgba(200, 16, 46, 0.16);
}

.admin-success {
    border: 1px solid rgba(167, 185, 160, 0.45);
    background: rgba(167, 185, 160, 0.12);
}

.admin-note {
    border: 1px solid var(--rtr-line);
    background: rgba(247, 244, 236, 0.05);
    color: var(--rtr-muted);
}

.admin-thumb {
    width: 96px;
    height: 72px;
    border-radius: 14px;
    object-fit: cover;
    background: rgba(247, 244, 236, 0.08);
}

.admin-inline-form {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.admin-inline-form input[type="number"] {
    width: 88px;
    border: 1px solid var(--rtr-line);
    border-radius: 999px;
    background: rgba(3, 7, 13, 0.48);
    color: var(--rtr-white);
    padding: 10px 12px;
}

.admin-login-card {
    width: min(560px, calc(100% - 32px));
    margin: 64px auto;
}

@media (min-width: 900px) {
    .admin-field-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-field-grid--full {
        grid-template-columns: 1fr;
    }
}
.btn--danger {
    border-color: rgba(255, 95, 95, 0.55);
    color: #ffb0b0;
}

.btn--danger:hover,
.btn--danger:focus {
    border-color: rgba(255, 95, 95, 0.9);
    color: #ffffff;
}

.btn--disabled,
.btn--disabled:hover,
.btn--disabled:focus {
    cursor: not-allowed;
    opacity: 0.55;
    pointer-events: none;
}

.admin-limit-note {
    margin-top: 12px;
}

/* Manual featured property create button states */
.btn--create-available {
    background: #0000BE;
    border-color: #0000BE;
    color: #ffffff;
}

.btn--create-available:hover,
.btn--create-available:focus {
    background: #1010ff;
    border-color: #1010ff;
    color: #ffffff;
}

.btn--create-maxed,
.btn--create-maxed:hover,
.btn--create-maxed:focus,
.btn--create-maxed.btn--disabled,
.btn--create-maxed.btn--disabled:hover,
.btn--create-maxed.btn--disabled:focus {
    background: #ff1f1f;
    border-color: #ff1f1f;
    color: #ffffff;
    opacity: 1;
    cursor: not-allowed;
    pointer-events: none;
}

/* Final manual property add-button states */
.admin-topbar .btn--create-available,
.admin-topbar a.btn--create-available {
    background: #00be00 !important;
    border-color: #00be00 !important;
    color: #ffffff !important;
}

.admin-topbar .btn--create-available:hover,
.admin-topbar .btn--create-available:focus,
.admin-topbar a.btn--create-available:hover,
.admin-topbar a.btn--create-available:focus {
    background: #00d600 !important;
    border-color: #00d600 !important;
    color: #ffffff !important;
}

.admin-topbar .btn--create-maxed,
.admin-topbar .btn--create-maxed:hover,
.admin-topbar .btn--create-maxed:focus,
.admin-topbar span.btn--create-maxed,
.admin-topbar span.btn--create-maxed:hover,
.admin-topbar span.btn--create-maxed:focus {
    background: #c1121f !important;
    border-color: #c1121f !important;
    color: #ffffff !important;
    opacity: 1 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}
