/* 3Music TV public pages — shared 2026 refresh
   Every rule is scoped to .tm-site-page so the homepage and admin surfaces keep
   their own presentation. Route and family classes are supplied by Router. */

.tm-site-page {
    --tm-refresh-bg: #f3f0ea;
    --tm-refresh-paper: #fffdf9;
    --tm-refresh-ink: #111114;
    --tm-refresh-muted: #68666d;
    --tm-refresh-line: rgba(17, 17, 20, 0.13);
    --tm-refresh-dark: #09090b;
    --tm-refresh-dark-2: #141419;
    --tm-refresh-red: #f73145;
    --tm-refresh-red-dark: #b81629;
    --tm-refresh-yellow: #ffdb01;
    --tm-refresh-purple: #ab48fb;
    --tm-refresh-blue: #4ec5ff;
    background: var(--tm-refresh-bg) !important;
    color: var(--tm-refresh-ink);
}

.tm-site-page .page_wrapper,
.tm-site-page #tm-main {
    min-width: 0;
    background: var(--tm-refresh-bg);
}

.tm-site-page #tm-main {
    min-height: 62vh;
}

/* Shared dark glass navigation */
.tm-site-page #tm-navbar {
    height: 68px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.09) !important;
    background: rgba(7, 7, 9, 0.94) !important;
    box-shadow: 0 12px 42px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.tm-site-page #tm-navbar > .w-full {
    max-width: 1328px !important;
    padding-right: 24px !important;
    padding-left: 24px !important;
}

.tm-site-page #tm-navbar a[href="https://pluzz899.com/"],
.tm-site-page #tm-navbar a[href="https://orange1079fm.com/"],
.tm-site-page #tm-navbar a[href$="/livestream"] {
    min-height: 34px;
    border-radius: var(--tm-radius-pill) !important;
}

.tm-site-page #tm-navbar a[href$="/livestream"] {
    background: var(--tm-refresh-yellow) !important;
    color: #080808 !important;
}

.tm-site-page #tm-navbar a[href$="/livestream"] > span {
    background: var(--tm-refresh-red-dark) !important;
}

.tm-site-page #tm-cat-bar {
    top: 68px !important;
    border-color: var(--tm-refresh-line) !important;
    background: rgba(255, 253, 249, 0.96) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

/* Map utility radii onto the shared corner system. */
.tm-site-page .rounded,
.tm-site-page .rounded-sm {
    border-radius: var(--tm-radius-sm) !important;
}

.tm-site-page .rounded-md,
.tm-site-page .rounded-lg {
    border-radius: var(--tm-radius-control) !important;
}

.tm-site-page .rounded-xl,
.tm-site-page .rounded-2xl {
    border-radius: var(--tm-radius-card) !important;
}

.tm-site-page .rounded-3xl {
    border-radius: var(--tm-radius-banner) !important;
}

.tm-site-page .rounded-full,
.tm-site-page .tm-live-dot,
.tm-site-page .tm-dot,
.tm-site-page .tm-avatar {
    border-radius: var(--tm-radius-pill) !important;
}

.tm-site-page img {
    max-width: 100%;
}

.tm-site-page a,
.tm-site-page button,
.tm-site-page input,
.tm-site-page select,
.tm-site-page textarea {
    -webkit-tap-highlight-color: transparent;
}

.tm-site-page a:focus-visible,
.tm-site-page button:focus-visible,
.tm-site-page input:focus-visible,
.tm-site-page select:focus-visible,
.tm-site-page textarea:focus-visible,
.tm-site-page [role="button"]:focus-visible {
    outline: 3px solid var(--tm-refresh-red-dark);
    outline-offset: 3px;
}

.tm-site-page [style*="background:#000"] a:focus-visible,
.tm-site-page [style*="background: #000"] a:focus-visible,
.tm-site-page [style*="background:#111"] a:focus-visible,
.tm-site-page [class*="hero"] a:focus-visible,
.tm-site-page [class*="player"] button:focus-visible {
    outline-color: var(--tm-refresh-yellow);
}

/* Common layout rhythm */
.tm-site-page #tm-main > .max-w-7xl,
.tm-site-page #tm-main > div > .max-w-7xl,
.tm-site-page #tm-main > section > .max-w-7xl,
.tm-site-page #tm-main .tm-container {
    max-width: 1328px !important;
}

.tm-site-page #tm-main > [x-data] > .max-w-7xl,
.tm-site-page #tm-main > .max-w-7xl,
.tm-site-page #tm-main > section.max-w-7xl {
    padding-right: 24px !important;
    padding-left: 24px !important;
}

.tm-site-page .tm-section-header,
.tm-site-page .tm-card-grid-header {
    display: flex;
    align-items: flex-end;
    gap: 18px;
    min-height: 48px;
    margin-bottom: 24px !important;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--tm-refresh-line);
}

.tm-site-page .tm-section-title,
.tm-site-page .tm-card-grid-header-title {
    margin: 0;
    color: var(--tm-refresh-ink);
    font-family: 'Graphik Headings', 'Graphik', system-ui, sans-serif;
    font-size: clamp(1.55rem, 2.82vw, 2.4rem);
    font-weight: 700;
    letter-spacing: -0.045em;
    line-height: 0.98;
    text-transform: none;
}

.tm-site-page .tm-card-grid-header-rule {
    height: 1px;
    flex: 1;
    background: var(--tm-refresh-line);
}

.tm-site-page .tm-section-link {
    min-height: 34px;
    margin-left: auto;
    padding: 9px 14px;
    border: 1px solid var(--tm-refresh-line);
    border-radius: var(--tm-radius-pill) !important;
    color: var(--tm-refresh-ink);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tm-site-page .tm-section-link:hover {
    border-color: var(--tm-refresh-red-dark);
    background: var(--tm-refresh-red-dark);
    color: #fff;
}

.tm-site-page .tm-category-tag {
    color: var(--tm-refresh-red-dark);
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.09em;
}

.tm-site-page .tm-meta {
    color: var(--tm-refresh-muted);
    font-size: 0.72rem;
    line-height: 1.5;
}

/* Cards and media */
.tm-site-page .tm-card,
.tm-site-page .tm-news-card,
.tm-site-page .tm-event-card,
.tm-site-page .tm-ticket-card,
.tm-site-page .tm-related-card {
    overflow: hidden;
    border: 1px solid var(--tm-refresh-line) !important;
    border-radius: var(--tm-radius-card) !important;
    background: var(--tm-refresh-paper);
    box-shadow: 0 12px 34px rgba(22, 20, 18, 0.055);
    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.tm-site-page .tm-card:hover,
.tm-site-page .tm-news-card:hover,
.tm-site-page .tm-event-card:hover,
.tm-site-page .tm-ticket-card:hover,
.tm-site-page .tm-related-card:hover {
    transform: translateY(-4px);
    border-color: rgba(17, 17, 20, 0.25) !important;
    box-shadow: 0 22px 54px rgba(22, 20, 18, 0.11);
}

.tm-site-page .tm-card-img,
.tm-site-page .tm-news-card-thumb img,
.tm-site-page .tm-event-card img,
.tm-site-page .tm-ticket-card img {
    object-position: center 24%;
    transition: transform 420ms cubic-bezier(.2, .7, .2, 1);
}

.tm-site-page .tm-card:hover .tm-card-img,
.tm-site-page .tm-news-card:hover .tm-news-card-thumb img,
.tm-site-page .tm-event-card:hover img,
.tm-site-page .tm-ticket-card:hover img {
    transform: scale(1.035);
}

.tm-site-page .tm-card-body,
.tm-site-page .tm-news-card-body {
    padding: 18px;
}

.tm-site-page .tm-card-title,
.tm-site-page .tm-news-card-title {
    color: var(--tm-refresh-ink);
    font-family: 'Graphik Headings', 'Graphik', system-ui, sans-serif;
    font-weight: 600;
    letter-spacing: -0.025em;
    line-height: 1.25;
    text-transform: none;
}

/* Controls */
.tm-site-page .tm-btn,
.tm-site-page .tm-load-more-btn,
.tm-site-page button[type="submit"] {
    min-height: 44px;
    border-radius: var(--tm-radius-pill) !important;
    font-weight: 800;
    letter-spacing: 0.035em;
    transition: transform 150ms ease, background-color 150ms ease, border-color 150ms ease, color 150ms ease;
}

.tm-site-page .tm-btn:hover,
.tm-site-page .tm-load-more-btn:hover,
.tm-site-page button[type="submit"]:hover:not(:disabled) {
    transform: translateY(-1px);
}

.tm-site-page .tm-btn-primary {
    border-color: var(--tm-refresh-red-dark) !important;
    background: var(--tm-refresh-red-dark) !important;
    color: #fff !important;
}

.tm-site-page .tm-btn-primary:hover {
    border-color: #94101f !important;
    background: #94101f !important;
}

.tm-site-page .tm-btn-outline,
.tm-site-page .tm-load-more-btn {
    border: 1px solid var(--tm-refresh-ink) !important;
    background: transparent;
    color: var(--tm-refresh-ink);
}

.tm-site-page .tm-btn-outline:hover,
.tm-site-page .tm-load-more-btn:hover {
    background: var(--tm-refresh-ink);
    color: #fff;
}

.tm-site-page .tm-input,
.tm-site-page input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
.tm-site-page select,
.tm-site-page textarea {
    min-height: 46px;
    border: 1px solid rgba(17, 17, 20, 0.2) !important;
    border-radius: var(--tm-radius-control) !important;
    background: rgba(255, 255, 255, 0.84);
    color: var(--tm-refresh-ink);
    box-shadow: none;
}

.tm-site-page textarea {
    min-height: 132px;
}

.tm-site-page input:focus,
.tm-site-page select:focus,
.tm-site-page textarea:focus {
    border-color: var(--tm-refresh-red-dark) !important;
    background: #fff;
}

.tm-site-page input::placeholder,
.tm-site-page textarea::placeholder {
    color: #7a777e;
}

/* Ads */
.tm-site-page [x-data^="tmAdSlot"] {
    overflow: hidden;
    max-width: 1328px;
    margin-right: auto;
    margin-left: auto;
    border-radius: var(--tm-radius-card) !important;
}

.tm-site-page [x-data^="tmAdSlot"] img {
    border-radius: inherit !important;
}

/* Shared empty/error states */
.tm-site-page .tm-empty-state,
.tm-site-page [class*="empty-state"] {
    border: 1px dashed rgba(17, 17, 20, 0.24) !important;
    border-radius: var(--tm-radius-card) !important;
    background: rgba(255, 255, 255, 0.62);
}

/* Footer polish */
.tm-site-page #tm-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.09);
    background: #08080a;
}

.tm-site-page #tm-footer .tmf-inner {
    max-width: 1328px;
    padding-right: 24px;
    padding-left: 24px;
}

.tm-site-page #tm-footer .tmf-social-icon,
.tm-site-page #tm-footer .tmf-live-badge {
    border-radius: var(--tm-radius-pill) !important;
}

.tm-site-page #tm-footer .tmf-nl-input {
    border-radius: var(--tm-radius-control) !important;
    background: #111115;
    color: #fff;
}

.tm-site-page #tm-footer .tmf-nl-btn {
    border-radius: var(--tm-radius-control) !important;
}

.tm-site-page #tm-footer .tmf-link,
.tm-site-page #tm-footer .tmf-cat-link,
.tm-site-page #tm-footer .tmf-nl-disclaimer,
.tm-site-page #tm-footer .tmf-nl-disclaimer-link {
    color: #a8a6ad;
}

.tm-site-page #tm-footer .tmf-bottom-copy,
.tm-site-page #tm-footer .tmf-bottom-link,
.tm-site-page #tm-footer .tmf-live-badge {
    color: #96949c;
}

/* Keep global floating widgets clear of the persistent player. */
.tm-site-page .tm-sw-widget {
    right: 24px;
    bottom: 84px;
    overflow: hidden;
    border-radius: var(--tm-radius-card) !important;
}

@media (max-width: 900px) {
    .tm-site-page #tm-navbar {
        height: 62px !important;
    }

    .tm-site-page #tm-cat-bar {
        top: 62px !important;
    }

    .tm-site-page .tm-section-header,
    .tm-site-page .tm-card-grid-header {
        align-items: flex-end;
    }
}

@media (max-width: 640px) {
    .tm-site-page #tm-navbar > .w-full,
    .tm-site-page #tm-main > [x-data] > .max-w-7xl,
    .tm-site-page #tm-main > .max-w-7xl,
    .tm-site-page #tm-main > section.max-w-7xl,
    .tm-site-page #tm-footer .tmf-inner {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    .tm-site-page .tm-section-header,
    .tm-site-page .tm-card-grid-header {
        gap: 12px;
    }

    .tm-site-page .tm-section-title,
    .tm-site-page .tm-card-grid-header-title {
        font-size: 1.6rem;
    }

    .tm-site-page .tm-section-link {
        padding-right: 11px;
        padding-left: 11px;
    }

    .tm-site-page #tm-footer .tmf-nl-input,
    .tm-site-page #tm-footer .tmf-nl-btn {
        border-radius: var(--tm-radius-control) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tm-site-page *,
    .tm-site-page *::before,
    .tm-site-page *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
