/* ===================================================
   MOVIE SEARCH
=================================================== */
.movie-search {
    display: flex;
    gap: 8px;
    margin-top: 15px;
}

.movie-search input {
    flex: 1;
    padding: 8px 10px;

    border: 1px solid rgba(0,0,0,0.15);
    border-radius: 6px;

    font-size: 0.9rem;
}

.movie-search button {
    padding: 8px 12px;
    border: none;
    border-radius: 6px;

    background: #c9a21a;
    color: #fff;
    font-weight: 600;

    cursor: pointer;
    transition: background 0.2s ease;
}

.movie-search button:hover {
    background: #a88414;
}

/* Results */
.search-results {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.search-item {
    display: flex;
    gap: 10px;
    align-items: center;

    text-decoration: none;
    padding: 6px;
    border-radius: 6px;

    transition: background 0.2s ease;
}

.search-item:hover {
    background: rgba(0,0,0,0.05);
}

.search-item img {
    width: 45px;
    height: 65px;
    object-fit: cover;
    border-radius: 4px;
}

.search-meta {
    display: flex;
    flex-direction: column;
}

.search-title {
    font-size: 0.9rem;
    font-weight: 600;
    color: #111;
}

.search-year {
    font-size: 0.8rem;
    color: #777;
}

.search-empty {
    margin-top: 10px;
    font-size: 0.9rem;
    color: #777;
}

/* =========================
   SEARCH PANEL
========================= */

.search-page .search-panel {
    max-width: 500px;
    margin: 0 auto 25px auto;
    padding: 15px;

    background: #fff;
    border-radius: 10px;
    box-shadow: 0 0 12px rgba(0,0,0,0.12);
}

.search-page .search-panel .movie-search {
    max-width: 100%;
    margin: 0 0 12px 0;
}

.search-label {
    font-size: 0.85rem;
    font-weight: 600;
    color: #666;

    margin-bottom: 4px;
}

.search-page .movie-search input {
    background: #fafafa;
}

.search-page .search-panel form:not(:last-child) {
    border-bottom: 1px solid rgba(0,0,0,0.05);
    padding-bottom: 10px;
}

.search-page .search-item {
    gap: 14px;
}

.search-page .search-item img {
    width: 80px;
    height: auto;
    object-fit: contain;
    border-radius: 6px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}

/* =========================
   ADMIN SECTION
========================= */
/* =========================
   ADMIN FORM
========================= */

.admin-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-group label {
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 4px;
    color: #444;
}

.admin-form input,
.admin-form textarea {
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid rgba(0,0,0,0.15);
    font-size: 0.9rem;
}

.admin-form textarea {
    resize: vertical;
}

.form-actions {
    margin-top: 10px;
}

.form-actions button {
    padding: 10px;
    border: none;
    border-radius: 6px;

    background: #c9a21a;
    color: #fff;
    font-weight: 600;

    cursor: pointer;
}

.form-actions button:hover {
    background: #a88414;
}

.form-section {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(0,0,0,0.05);
}

.section-subtitle {
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 8px;
    color: #c9a21a;
}

/* Cancel Button */
.btn-cancel {
    display: inline-block;
    padding: 6px 12px;
    font-size: 0.85rem;

    color: #777;
    text-decoration: none;

    border: 1px solid rgba(0,0,0,0.15);
    border-radius: 6px;

    background: rgba(0,0,0,0.04);

    transition: all 0.2s ease;
}

.btn-cancel:hover {
    background: rgba(0,0,0,0.08);
    color: #c9a21a; /* gold accent */
}

/* =========================================
   TV GUIDE ADMIN (ISOLATED - NO CONFLICTS)
========================================= */

.tvguide-admin {
    max-width: 750px;
    margin: 0 auto;
}

/* ROW GRID */
.tvguide-admin .tg-row {
    display: grid;
    grid-template-columns:
        110px   /* Day */
        110px    /* Time */
        200px     /* Title */
        110px   /* Network */
        60px    /* OnAir */
        70px;   /* Delete */

    gap: 8px;
    margin-bottom: 8px;
    align-items: center;
    width: 100%;
}

/* allow shrink */
.tvguide-admin .tg-row > * {
    min-width: 0;
}

.tvguide-admin .tg-row button {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* inputs */
.tvguide-admin input,
.tvguide-admin select {
    width: 100%;
    padding: 6px 8px;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: 6px;
    font-size: 0.85rem;
    box-sizing: border-box;
}

/* header row */
.tvguide-admin .tg-header {
    font-weight: 600;
    font-size: 0.85rem;
    color: #555;
    margin-bottom: 6px;
}

.tvguide-admin .tg-row button {
    align-self: center;
}

/* delete button */
.tvguide-admin .tg-delete {
    height: 32px;
    padding: 0 10px;
    background: #a94442;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 0.8rem;
    cursor: pointer;
}

.tvguide-admin .tg-delete:hover {
    background: #922d2d;
}

.tvguide-admin .tg-save {
    height: 32px;
    padding: 0 12px;
    background: #c9a21a;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
}

/* save button */
.tvguide-admin .tg-save-main {
    display: block;
    margin: 15px auto 0;
    height: 36px;
    padding: 0 18px;
    background: #c9a21a;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.tvguide-admin .tg-save:hover,
.tvguide-admin .tg-save-main:hover {
    background: #a88414;
}

/* =======================================================
    EDIT EVENTS
======================================================= */
/* REMOVE BUTTON (Red) */
.tg-remove {
    height: 32px;
    padding: 0 12px;

    background: #c0392b;   /* strong red */
    color: #fff;

    border: none;
    border-radius: 6px;

    font-size: 0.85rem;
    font-weight: 600;

    cursor: pointer;
    transition: all 0.2s ease;
}

.tg-remove:hover {
    background: #a93226;   /* darker red */
}

/* =======================================================
    MOVIE DETAIL1
======================================================= */

/* MOVIE FORM */
.d1-title { text-align: center; }

.d1-group {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
}

.d1-label {
    width: 40%;
    text-align: left;
    font-weight: bold;
}

.d1-input,
.d1-select {
    width: 58%;
    padding: 8px;
    border-radius: 6px;
}

.d1-btn {
    display: block;
    margin: 15px auto 0;
    height: 36px;
    padding: 0 18px;
    background: #c9a21a;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.d1-btn:hover {
    background: #a93226;
}

.d1-success {
    color: green;
    text-align: center;
    margin-bottom: 10px;
}


/* TV FORM */
.d1-tv-title { text-align: center; }

.d1-tv-group {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
}

.d1-tv-label {
    width: 40%;
    text-align: left;
    font-weight: bold;
}

.d1-tv-input,
.d1-tv-select {
    width: 58%;
    padding: 8px;
    border-radius: 6px;
}

.d1-tv-btn {
    display: block;
    margin: 15px auto 0;
    height: 36px;
    padding: 0 18px;
    background: #c9a21a;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.d1-tv-btn:hover {
    background: #a93226;
}

.d1-tv-success {
    color: green;
    text-align: center;
    margin-bottom: 10px;
}


/* =======================================================
    CHARACTER FORMS
======================================================= */
/* MOVIE CAST */
.cast-movie-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.cast-movie-label {
    width: 40%;
    font-weight: bold;
}

.cast-movie-input, .cast-movie-select {
    width: 58%;
    padding: 8px;
    box-sizing: border-box;
    border-radius: 6px;
}

.cast-movie-btn {
    display: block;
    margin: 15px auto 0;
    height: 36px;
    padding: 0 18px;
    background: #c9a21a;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.cast-movie-btn:hover {
    background: #a93226;
}

.cast-movie-success { text-align: center; color: green; margin-bottom: 10px; }


/* TV CAST */
.cast-tv-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.cast-tv-label {
    width: 40%;
    font-weight: bold;
}

.cast-tv-input, .cast-tv-select {
    width: 58%;
    padding: 8px;
    box-sizing: border-box;
    border-radius: 6px;
}

.cast-tv-btn {
    display: block;
    margin: 15px auto 0;
    height: 36px;
    padding: 0 18px;
    background: #c9a21a;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
}

.cast-movie-btn:hover {
    background: #a93226;
}

.cast-tv-success { text-align: center; color: green; margin-bottom: 10px; }








