/* Filter bar */
.letitgo-filter {
    margin: 1.5rem 0 1rem;
    padding: 0.75rem 1rem;
    border: 1px solid #ddd;
    background: #fafafa;
    border-radius: 4px;

    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
}

.letitgo-filter__field {
    flex: 1 1 200px;
    min-width: 180px;
}

.letitgo-filter__field label {
    display: block;
    font-size: 0.85rem;
    margin-bottom: 0.25rem;
    font-weight: 600;
}

.letitgo-filter__field select {
    width: 100%;
    box-sizing: border-box;
    padding: 0.25rem 0.4rem;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 0.9rem;
}

.letitgo-filter__actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.letitgo-filter__actions button {
    padding: 0.35rem 0.9rem;
    border-radius: 3px;
    border: none;
    cursor: pointer;
    background-color: #0073aa;
    color: #fff;
    font-size: 0.9rem;
}

.letitgo-filter__actions button:hover {
    background-color: #005a87;
}

.letitgo-filter__clear {
    font-size: 0.85rem;
    text-decoration: none;
}

/* Container for listings loop */
.letitgo-listings {
    margin: 2rem 0;
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

/* Individual listing card */
.letitgo-listing {
    border: 1px solid #ddd;
    padding: 1rem;
    border-radius: 4px;
    background: #fff;
}

/* Thumbnail image wrapper */
.letitgo-listing__thumb {
    margin-bottom: 0.75rem;
}

.letitgo-listing__thumb img {
    display: block;
    width: 100%;
    height: auto;
}

/* Title */
.letitgo-listing__title {
    font-size: 1.1rem;
    margin: 0 0 0.5rem;
}

.letitgo-listing__title a {
    text-decoration: none;
}

/* Category badges */
.letitgo-listing__categories {
    margin-bottom: 0.5rem;
}

.letitgo-listing__category-badge {
    display: inline-block;
    font-size: 0.75rem;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    background: #f3f3f3;
    margin-right: 0.25rem;
}

/* Price / URL / excerpt / expires */
.letitgo-listing__price {
    font-weight: bold;
    margin-bottom: 0.25rem;
}

.letitgo-listing__url {
    margin-bottom: 0.5rem;
    word-break: break-all;
}

.letitgo-listing__excerpt {
    font-size: 0.9rem;
    color: #444;
}

.letitgo-listing__expires-small {
    font-size: 0.8rem;
    color: #666;
    margin-bottom: 0.5rem;
}

/* Submit / edit form styles */
.letitgo-submit-form {
    max-width: 600px;
    margin: 2rem 0;
}

.letitgo-edit-listing {
    margin: 2rem 0;
}

.letitgo-edit-listing__title {
    margin: 0 0 1rem;
    font-size: 1.3rem;
}

.letitgo-field {
    margin-bottom: 1rem;
}

.letitgo-field label {
    font-weight: 600;
}

.letitgo-field input[type="text"],
.letitgo-field input[type="url"],
.letitgo-field input[type="date"],
.letitgo-field select,
.letitgo-field textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0.45rem 0.5rem;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 0.95rem;
}

.letitgo-field input[type="file"] {
    font-size: 0.9rem;
}

.letitgo-field__help {
    display: block;
    font-size: 0.8rem;
    color: #666;
    margin-top: 0.2rem;
}

/* Submit button */
.letitgo-field--submit button {
    display: inline-block;
    padding: 0.5rem 1.1rem;
    border-radius: 999px;
    border: none;
    cursor: pointer;
    background-color: #0073aa;
    color: #fff;
    font-size: 0.95rem;
}

.letitgo-field--submit button:hover {
    background-color: #005a87;
}

/* Messages */
.letitgo-success {
    color: #155724;
    background-color: #d4edda;
    padding: 0.5rem 0.75rem;
    border-radius: 3px;
    margin-bottom: 1rem;
}

.letitgo-error {
    color: #721c24;
    background-color: #f8d7da;
    padding: 0.5rem 0.75rem;
    border-radius: 3px;
    margin-bottom: 1rem;
}

/* Single meta block above content */
.letitgo-single-meta {
    border: 1px solid #e2e2e2;
    padding: 0.75rem 1rem;
    border-radius: 4px;
    background: #fafafa;
    margin-bottom: 1.5rem;
    font-size: 0.9rem;
}

.letitgo-single-meta__categories,
.letitgo-single-meta__price,
.letitgo-single-meta__url,
.letitgo-single-meta__expires {
    margin-bottom: 0.25rem;
}

/* Expired banner on single listing */
.letitgo-expired-banner {
    border: 1px solid #f5c6cb;
    background-color: #f8d7da;
    color: #721c24;
    padding: 0.6rem 0.9rem;
    border-radius: 4px;
    margin-bottom: 0.75rem;
    font-size: 0.9rem;
}

/* My Listings */
.letitgo-my-listings {
    margin: 2rem 0;
}

.letitgo-my-listings__title {
    margin: 0 0 1rem;
    font-size: 1.3rem;
}

.letitgo-my-listings__table-wrapper {
    overflow-x: auto;
}

.letitgo-my-listings__table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}

.letitgo-my-listings__table th,
.letitgo-my-listings__table td {
    border: 1px solid #ddd;
    padding: 0.5rem 0.6rem;
    text-align: left;
}

.letitgo-my-listings__table th {
    background-color: #f5f5f5;
    font-weight: 600;
}

.letitgo-my-listings__cell-title a {
    text-decoration: none;
}

.letitgo-my-listings__expires-note {
    font-size: 0.75rem;
    color: #666;
    margin-top: 0.15rem;
}

/* Status pills */
.letitgo-status {
    display: inline-block;
    padding: 0.15rem 0.4rem;
    border-radius: 999px;
    font-size: 0.78rem;
    line-height: 1.2;
}

.letitgo-status--publish {
    background-color: #d4edda;
    color: #155724;
}

.letitgo-status--pending {
    background-color: #fff3cd;
    color: #856404;
}

.letitgo-status--draft {
    background-color: #e2e3e5;
    color: #383d41;
}

.letitgo-status--expired {
    background-color: #f8d7da;
    color: #721c24;
}

/* My listings actions: layout / button group */
.letitgo-my-listings__cell-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    align-items: center;
}

/* General action link style (View / Edit) */
.letitgo-my-listings__action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.22rem 0.6rem;
    border-radius: 999px;
    border: 1px solid #ccc;
    background-color: #f7f7f7;
    font-size: 0.8rem;
    text-decoration: none;
    line-height: 1.2;
    color: #333;
    white-space: nowrap;
    gap: 0.2rem;
}

/* First action (View) gets a bit more accent */
.letitgo-my-listings__cell-actions .letitgo-my-listings__action-link--view {
    border-color: #0073aa;
    background-color: #e9f5ff;
    color: #005a87;
    font-weight: 500;
}

/* Edit link */
.letitgo-my-listings__cell-actions .letitgo-my-listings__action-link--edit {
    border-color: #d0d0d0;
}

.letitgo-my-listings__action-link:hover {
    border-color: #0073aa;
    background-color: #e1f0ff;
    color: #005a87;
}

/* Icon + label */
.letitgo-my-listings__action-label {
    display: inline-block;
}

.letitgo-my-listings__action-link .dashicons,
.letitgo-my-listings__delete-button .dashicons {
    font-size: 14px;
    width: 16px;
    height: 16px;
    line-height: 16px;
}

/* Delete form */
.letitgo-my-listings__delete-form {
    display: inline-block;
    margin: 0;
}

/* Delete button styling */
.letitgo-my-listings__delete-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    font-size: 0.8rem;
    border: 1px solid #d9534f !important;
    background-color: #fff5f5 !important;
    color: #b52b27 !important;
    padding: 0.22rem 0.65rem !important;
    border-radius: 999px !important;
    cursor: pointer;
    line-height: 1.2;
    white-space: nowrap;
}

.letitgo-my-listings__delete-button:hover {
    background-color: #d9534f !important;
    color: #ffffff !important;
}

/* Pagination */
.letitgo-pagination {
    margin-top: 1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.letitgo-pagination__link {
    font-size: 0.85rem;
    text-decoration: none;
    padding: 0.25rem 0.6rem;
    border-radius: 3px;
    border: 1px solid #ccc;
}

.letitgo-pagination__info {
    font-size: 0.85rem;
}

/* Small-screen tweaks for My Listings table */
@media (max-width: 640px) {
    .letitgo-my-listings__table th,
    .letitgo-my-listings__table td {
        font-size: 0.8rem;
        padding: 0.4rem 0.45rem;
    }

    .letitgo-my-listings__cell-actions {
        gap: 0.25rem;
    }

    .letitgo-my-listings__action-link,
    .letitgo-my-listings__delete-button {
        font-size: 0.75rem;
        padding: 0.2rem 0.5rem;
    }
}
