/*
Theme Name: Luxor Luxury Magazine
Theme URI: https://techradar-pro.local
Author: Custom Tech Pro
Description: Clean Crisp International Newspaper with slow smooth ticker and accurate location clock.
Version: 6.0.0
*/

:root {
    --bg-body: #f8fafc;
    --bg-card: #ffffff;
    --border-color: #e2e8f0;
    --text-primary: #0f172a;
    --text-secondary: #475569;
    --text-muted: #94a3b8;
    --brand-red: #dc2626;
    --brand-dark: #090d16;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
body { background: var(--bg-body); color: var(--text-primary); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; line-height: 1.5; }
a { color: inherit; text-decoration: none; transition: color 0.2s; }
a:hover { color: var(--brand-red); }

.lux-container { max-width: 1320px; margin: 0 auto; padding: 0 20px; }

/* Financial Bar */
.lux-fin-bar { background: var(--brand-dark); color: #94a3b8; font-size: 11px; padding: 6px 0; border-bottom: 1px solid #1e293b; }
.lux-fin-inner { display: flex; align-items: center; justify-content: space-between; overflow: hidden; white-space: nowrap; }
.lux-market-item { margin-right: 25px; display: inline-flex; align-items: center; gap: 5px; }
.lux-up { color: #10b981; font-weight: 700; }
.lux-down { color: #f43f5e; font-weight: 700; }

/* Main Header */
.lux-header { background: #ffffff; border-bottom: 1px solid var(--border-color); padding: 18px 0; }
.lux-navbar { display: flex; justify-content: space-between; align-items: center; }
.lux-logo { font-size: 32px; font-weight: 900; letter-spacing: 2px; text-transform: uppercase; color: #0f172a; }
.lux-logo span { color: var(--brand-red); }
.lux-header-widgets { display: flex; align-items: center; gap: 15px; font-size: 13px; color: var(--text-secondary); }

/* Category Navigation Bar */
.lux-cat-bar { background: #ffffff; border-bottom: 2px solid #0f172a; padding: 10px 0; }
.lux-cat-menu { display: flex; gap: 20px; list-style: none; overflow-x: auto; white-space: nowrap; }
.lux-cat-menu li a { font-size: 13px; font-weight: 700; text-transform: uppercase; color: #0f172a; letter-spacing: 0.5px; padding-bottom: 3px; }
.lux-cat-menu li a:hover { color: var(--brand-red); border-bottom: 2px solid var(--brand-red); }

/* Slow Smooth Left-Moving Ticker (80 Seconds Animation) */
.lux-ticker { background: #ffffff; border-bottom: 1px solid var(--border-color); padding: 8px 0; font-size: 13px; overflow: hidden; }
.lux-ticker-inner { display: flex; align-items: center; gap: 15px; }
.lux-ticker-badge { background: var(--brand-red); color: #fff; padding: 3px 10px; border-radius: 3px; font-weight: 800; font-size: 11px; text-transform: uppercase; flex-shrink: 0; }

.lux-ticker-track { display: flex; width: 100%; overflow: hidden; white-space: nowrap; }
.lux-ticker-scroll { display: inline-block; animation: scrollLeftSlow 80s linear infinite; }
.lux-ticker-scroll:hover { animation-play-state: paused; }

@keyframes scrollLeftSlow {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}

/* Main Layout */
.lux-main-layout { display: grid; grid-template-columns: 1fr 340px; gap: 35px; margin: 25px 0 60px; }

/* Hero Section */
.lux-hero-grid { display: grid; grid-template-columns: 1.6fr 1fr; gap: 20px; margin-bottom: 35px; }
.lux-hero-main { position: relative; border-radius: 8px; overflow: hidden; height: 420px; background: #000; box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
.lux-hero-main img { width: 100%; height: 100%; object-fit: cover; opacity: 0.9; }
.lux-hero-overlay { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(15,23,42,0.95) 0%, rgba(15,23,42,0.1) 65%); display: flex; flex-direction: column; justify-content: flex-end; padding: 25px; color: #fff; }

.lux-hero-side { display: flex; flex-direction: column; gap: 20px; }
.lux-hero-side-item { position: relative; border-radius: 8px; overflow: hidden; height: 200px; background: #000; box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
.lux-hero-side-item img { width: 100%; height: 100%; object-fit: cover; opacity: 0.9; }
.lux-hero-side-item .lux-hero-overlay { padding: 15px; }

/* Feed & Cards */
.lux-feed-title { font-size: 18px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 20px; border-left: 4px solid var(--brand-red); padding-left: 10px; color: var(--text-primary); }
.lux-news-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.lux-card { background: var(--bg-card); border-radius: 8px; overflow: hidden; border: 1px solid var(--border-color); display: flex; flex-direction: column; box-shadow: 0 2px 6px rgba(0,0,0,0.03); }
.lux-card-img-wrap { width: 100%; height: 185px; overflow: hidden; }
.lux-card-img-wrap img { width: 100%; height: 100%; object-fit: cover; }
.lux-card-content { padding: 18px; display: flex; flex-direction: column; flex-grow: 1; }
.lux-card-tag { font-size: 11px; font-weight: 800; color: var(--brand-red); text-transform: uppercase; margin-bottom: 8px; }
.lux-card-title { font-size: 17px; font-weight: 700; line-height: 1.35; margin-bottom: 10px; color: var(--text-primary); }
.lux-card-desc { font-size: 13px; color: var(--text-secondary); line-height: 1.6; margin-bottom: 16px; flex-grow: 1; }
.lux-card-footer { font-size: 12px; color: var(--text-muted); border-top: 1px solid var(--border-color); padding-top: 12px; display: flex; justify-content: space-between; }

/* Pagination */
.lux-pagination { margin: 40px 0; display: flex; justify-content: center; gap: 8px; }
.lux-pagination a, .lux-pagination span { padding: 8px 16px; border: 1px solid var(--border-color); background: #fff; color: #0f172a; font-weight: 700; border-radius: 4px; font-size: 13px; }
.lux-pagination span.current { background: #0f172a; color: #fff; border-color: #0f172a; }
.lux-pagination a:hover { background: var(--brand-red); color: #fff; border-color: var(--brand-red); }

/* Sidebar & Ads */
.lux-widget { background: #ffffff; border: 1px solid var(--border-color); border-radius: 8px; padding: 20px; margin-bottom: 25px; }
.lux-widget-header { font-size: 14px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 15px; border-left: 3px solid #2563eb; padding-left: 8px; }

@media (max-width: 960px) {
    .lux-main-layout { grid-template-columns: 1fr; }
    .lux-hero-grid { grid-template-columns: 1fr; }
}