/*!
Theme Name: movies-downloader
Theme URI: http://underscores.me/
Author: Sonu Rajpoot
Author URI: https://updater.blog/about
Description: movies theme for download movies
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: movies-downloader
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

movies-downloader is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize.css - Only essential parts */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

img {
	max-width: 100%;
	height: auto;
	border-style: none;
}

/*--------------------------------------------------------------
# Base Styles for Movies Theme
--------------------------------------------------------------*/

body {
	background: linear-gradient(135deg, #1a2a6c, #b21f1f, #fdbb2d);
	color: white;
	min-height: 100vh;
}

/* Reset some default WordPress styles that conflict */
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

a {
	color: #fff;
	text-decoration: none;
	transition: color 0.3s ease;
}

a:hover {
	color: #ff6a4d;
}

/* Form elements styling */
button, input, select, textarea {
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

button {
	cursor: pointer;
	border: none;
}

/* WordPress specific class fixes */
.wp-block-group, .wp-block-cover, .wp-block-media-text {
	margin: 20px 0;
}

/* Gutenberg block compatibility */
.wp-block-button__link {
	background: linear-gradient(to right, #ff0080, #ff6a4d);
	color: white;
	padding: 12px 25px;
	border-radius: 8px;
	font-weight: 600;
}

.wp-block-button__link:hover {
	background: linear-gradient(to right, #ff6a4d, #ff0080);
}

/*--------------------------------------------------------------
# Utility Classes
--------------------------------------------------------------*/

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.hidden {
	display: none;
}

.visible {
	display: block;
}

/* Screen reader text - accessibility */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/*--------------------------------------------------------------
# WordPress Core Alignment
--------------------------------------------------------------*/

.alignleft {
	float: left;
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {
	float: right;
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/*--------------------------------------------------------------
# Responsive Images
--------------------------------------------------------------*/

img {
	height: auto;
}

/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object {
	max-width: 100%;
}

/*--------------------------------------------------------------
# WordPress Captions
--------------------------------------------------------------*/

.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
	font-style: italic;
	color: #666;
}

/*--------------------------------------------------------------
# WordPress Galleries
--------------------------------------------------------------*/

.gallery {
	margin-bottom: 1.5em;
	display: grid;
	gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }
.gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }
.gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }
.gallery-columns-5 { grid-template-columns: repeat(5, 1fr); }
.gallery-columns-6 { grid-template-columns: repeat(6, 1fr); }
.gallery-columns-7 { grid-template-columns: repeat(7, 1fr); }
.gallery-columns-8 { grid-template-columns: repeat(8, 1fr); }
.gallery-columns-9 { grid-template-columns: repeat(9, 1fr); }

/*--------------------------------------------------------------
# WordPress Widgets Basic Styles
--------------------------------------------------------------*/

.widget {
	margin: 0 0 2em;
}

.widget select {
	max-width: 100%;
	padding: 8px;
	border-radius: 4px;
	border: 1px solid #ccc;
}

.widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.widget li {
	padding: 5px 0;
	border-bottom: 1px solid rgba(255,255,255,0.1);
}

.widget li:last-child {
	border-bottom: none;
}

/*--------------------------------------------------------------
# Comments Basic Styles
--------------------------------------------------------------*/

.comment-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.comment-body {
	background: rgba(255, 255, 255, 0.05);
	padding: 20px;
	margin-bottom: 20px;
	border-radius: 8px;
}

.comment-meta {
	margin-bottom: 10px;
}

.comment-author .avatar {
	border-radius: 50%;
	margin-right: 10px;
}

.comment-content {
	line-height: 1.6;
}

/*--------------------------------------------------------------
# Navigation Basic Styles
--------------------------------------------------------------*/

.main-navigation {
	display: block;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: center;
}

/*--------------------------------------------------------------
# Responsive Design
--------------------------------------------------------------*/

@media screen and (max-width: 768px) {
	.alignleft,
	.alignright {
		float: none;
		margin: 0 0 1em;
	}
	
	.gallery {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.gallery-columns-3,
	.gallery-columns-4,
	.gallery-columns-5,
	.gallery-columns-6,
	.gallery-columns-7,
	.gallery-columns-8,
	.gallery-columns-9 {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 480px) {
	.gallery {
		grid-template-columns: 1fr;
	}
	
	.gallery-columns-2,
	.gallery-columns-3,
	.gallery-columns-4,
	.gallery-columns-5,
	.gallery-columns-6,
	.gallery-columns-7,
	.gallery-columns-8,
	.gallery-columns-9 {
		grid-template-columns: 1fr;
	}
}

/*--------------------------------------------------------------
# Print Styles
--------------------------------------------------------------*/

@media print {
	* {
		background: transparent !important;
		color: black !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}
	
	a,
	a:visited {
		text-decoration: underline;
	}
	
	a[href]:after {
		content: " (" attr(href) ")";
	}
	
	abbr[title]:after {
		content: " (" attr(title) ")";
	}
	
	.entry-content .wp-smiley,
	.comment-content .wp-smiley {
		border: none;
		margin-bottom: 0;
		margin-top: 0;
		padding: 0;
	}
	
	.entry-content,
	.comment-content {
		orphans: 3;
		widows: 3;
	}
	
	.entry-content h2,
	.entry-content h3,
	.comment-content h2,
	.comment-content h3 {
		page-break-after: avoid;
	}
}

.form-wrapper {
  max-width: 400px;
  margin: 50px auto;
  background: #fff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.form-wrapper h2 {
  margin-bottom: 20px;
  font-size: 24px;
  color: #333;
  text-align: center;
}

.form-wrapper input {
  width: 100%;
  padding: 12px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

.form-wrapper button {
  width: 100%;
  padding: 12px;
  background-color: #0077cc;
  color: white;
  border: none;
  border-radius: 5px;
  font-weight: bold;
  cursor: pointer;
}

.form-wrapper button:hover {
  background-color: #005fa3;
}

.form-wrapper p {
  text-align: center;
  font-size: 14px;
  color: #666;
}

.quality-tag
 {
    display: inline-block;
    background: #222;
    border-radius: 5px;
    transition: background 0.3s ease;
}
header.page-header
 {
    padding: 20px;
    text-align: center;
    background: chocolate;
    margin-bottom: 30px;
    border-radius: 5px;
    box-shadow: 2px 5px 7px greenyellow;
}
/* Pagination Wrapper */
.pagination-wrapper {
    margin: 40px 0;
    text-align: center;
}

/* UL container */
.pagination ul.page-numbers {
    display: inline-flex;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
    flex-wrap: wrap;
    justify-content: center;
}

/* LI items */
.pagination ul.page-numbers li {
    display: inline-block;
}

/* Links and spans */
.pagination a,
.pagination span {
    display: inline-block;
    padding: 8px 16px;
    text-decoration: none;
    border: 1px solid #ddd;
    border-radius: 4px;
    color: #ffffff;
    background: #333; /* base background */
    transition: all 0.3s ease;
}

/* Hover effect */
.pagination a:hover {
    background-color: goldenrod;
    border-color: #ccc;
}

/* Current page */
.pagination .current {
    background-color: #007cba;
    color: #fff;
    border-color: #007cba;
}

/* Dots (...) */
.pagination .dots {
    border: none;
    background: transparent;
    color: #fff;
    padding: 8px 12px;
}

/* Pagination Info text */
.pagination-info {
    color: #222;
    font-size: 14px;
    margin-top: 15px;
}
h2.movie-title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
    color: #fff;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}
.movie-meta{
    justify-content: space-between;
}
 .movie-meta span{
     border-radius: 5px;
     background: #cc3d6a;
 }
 .movie-description {
    font-size: 16px;
    line-height: 1.4;
    color: #ccc;
    margin-bottom: 8px;
    height: auto;
    overflow: visible; 
    }

/* Responsive tweaks */
@media (max-width: 768px) {
    .pagination a,
    .pagination span {
        padding: 6px 12px;
        font-size: 14px;
    }
    h2.movie-title {
        -webkit-line-clamp: 2;
        line-clamp: 2;
        white-space: normal;
        
    }
    h2.movie-title a{
    padding: 12px 12px 12px 0px;
    font-size: 12px;
    text-align: left;

    }
}
@media (max-width: 480px) {
 .movie-meta{
     display: flex;
     justify-content: space-between;
 }
 .movie-meta span{
     padding: 5px 6px;
     border-radius: 5px;
 }
 .movie-meta span a {
    font-size: 8px;
}
}
@media (min-width: 321px) and (max-width: 767px) {
    .container{
        padding: 0 8px !important;
    }
    div#movies-container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 5px;
    }
    .movie-grid{
        display: grid;
        grid-template-columns: repeat(2, 1fr)!important;
        gap: 8px!important;
    }
  .movie-card {
    flex: 0 0 50% !important;
    max-width: 100% !important;
  }
  .movie-description {
    font-size: 11px!important;
    line-height: 1.4;
    color: #ccc;
    margin-bottom: 8px;
    height: auto !important;
    overflow: visible !important; 
    }
   .movie-meta span a{
       font-size: 10px;
   }
   .section-title {
        font-size: 24px !important;
    }
    .size span{
        font-size: 10px;
    }
}
.movie-details-box {
    background: #1a1a1a;  
    padding: 15px;
    border-radius: 8px;
    margin: 15px 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.6;
    text-align: left;
}

.movie-detail-item {
    margin-bottom: 6px;
}

.movie-detail-item strong {
    color: #ffcc00;
    margin-right: 5px;
}

.movie-detail-item a {
    color: #fff;
    text-decoration: none;
    transition: color 0.3s;
}

.movie-detail-item a:hover {
    color: #ffcc00;
    text-decoration: underline;
}
h2.movie-title a {
    padding: 12px 12px 12px 0px !important;
}

/* --- सामान्य बॉडी और कंटेनर स्टाइल --- */
/* --- सामान्य स्टाइल और मोबाइल साइडबार (यह पहले जैसा ही है) --- */
body.nav-open {
    overflow: hidden;
}

.mobile-nav-sidebar {
    position: fixed; top: 0; left: 0; width: 280px; height: 100%;
    background-color: #111; z-index: 1001;
    transform: translateX(-100%);
    transition: transform 0.3s ease-in-out;
    padding: 20px; box-shadow: 2px 0 10px rgba(0,0,0,0.5);
}
.mobile-nav-sidebar.active { transform: translateX(0); }
.sidebar-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.sidebar-logo { font-size: 20px; font-weight: bold; color: #fff; text-decoration: none; }
.nav-close { background: none; border: none; color: #fff; font-size: 32px; cursor: pointer; }
.sidebar-divider { border: 0; border-top: 1px solid #444; margin-bottom: 20px; }
.main-menu-vertical { list-style: none; padding: 0; margin: 0; }
.main-menu-vertical li { margin-bottom: 5px; }
.main-menu-vertical a { display: block; padding: 12px 15px; color: #ddd; text-decoration: none; font-size: 16px; border-radius: 5px; transition: background-color 0.2s; }
.main-menu-vertical a:hover { background-color: #333; color: #fff; }

.nav-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background-color: rgba(0, 0, 0, 0.7); z-index: 1000;
    opacity: 0; visibility: hidden; transition: opacity 0.3s, visibility 0.3s;
}
.nav-overlay.active { opacity: 1; visibility: visible; }
/* ------------------------------------------------------------- */


/* ===== डेस्कटॉप हेडर (769px और उससे ज़्यादा) ===== */
.site-header-desktop {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
    background-color: #1a1a1a;
    color: #fff;
    border-bottom: 1px solid #333;
    border-radius: 5px;
}

.site-header-desktop .header-left { flex: 0 1 auto; /* Logo को सिर्फ अपनी जगह लेने दें */ }
.site-header-desktop .header-center { flex: 1 1 auto; text-align: center; }
.site-header-desktop .header-right {display:flex;flex: 0 1 60px;justify-content: space-between;align-items: center;}

.logo { font-size: 24px; font-weight: bold; color: #fff; text-decoration: none; }
.logo .fa-film { margin-right: 8px; }

/* डेस्कटॉप का हॉरिजॉन्टल मेनू */
.main-menu-horizontal {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    gap: 20px; /* मेनू आइटम्स के बीच स्पेस */
}
.main-menu-horizontal a {
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    padding: 8px 12px;
    border-radius: 5px;
    transition: background-color 0.2s;
}
.main-menu-horizontal a:hover {
    background-color: #333;
}

/* डिफ़ॉल्ट रूप से मोबाइल हेडर को छिपाएं */
.site-header-mobile {
    display: none;
}


/* ===== मोबाइल हेडर और रेस्पॉन्सिव लॉजिक (768px और उससे कम) ===== */
@media (max-width: 768px) {
    /* डेस्कटॉप हेडर को छिपाएं */
    .site-header-desktop {
        display: none;
    }

    /* मोबाइल हेडर को दिखाएं */
    .site-header-mobile {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 10px;
        background-color: #1a1a1a;
        color: #fff;
        border-bottom: 1px solid #333;
    }

    .site-header-mobile .header-left,
    .site-header-mobile .header-right {
        flex: 1;
    }
    .site-header-mobile .header-center {
        flex: 2; /* लोगो को ज़्यादा जगह दें ताकि वो बीच में रहे */
        text-align: center;
    }
     .site-header-mobile .header-right {
        display: flex;
        justify-content: flex-end;
    }
    
    .nav-toggle {
        background: none;
        border: none;
        color: #fff;
        font-size: 24px;
        cursor: pointer;
    }
    .header-search-bar .search-field {
        max-width: 125px !important
        
    }
	a.login-to-wishlist-btn {
    font-size: 10px;
    background: crimson;
    padding: 3px 5px;
    border-radius: 5px;
}
}

/* कॉमन सर्च बार स्टाइल */
.header-search-bar .search-form { display: flex; }
.header-search-bar .search-field { background-color: #333; border: 1px solid #555; color: #fff; padding: 8px 4px; border-radius: 5px 0 0 5px; max-width: 200px}
.header-search-bar .search-submit { background-color: #0073aa; border: none; color: #fff; padding: 8px 15px; cursor: pointer; border-radius: 0 5px 5px 0; }

input.search-field::placeholder
 {
    color: white;
}

/* tabs for meta box*/

.tab-content .tab-pane {
  display: none;
}
.tab-content .tab-pane.active {
  display: block;
}

.tab-nav {
  margin-bottom: 10px;
}

.tab-nav .tab-link {
  padding: 8px 14px;
  margin-right: 5px;
  border: 1px solid #ccc;
  background: #f7f7f7;
  cursor: pointer;
  border-radius: 4px 4px 0 0;
}

.tab-nav .tab-link.active {
  background: #0073aa;
  color: #fff;
  border-color: #0073aa;
}
.owl-dot:focus {
    outline: 2px solid #fff;
    outline-offset: 2px;
}
button.add-to-wishlist {
    border-radius: 5px;
    background: #e14e7c;
    padding: 2px;
    font-size: 12px;
    color: white;
}
 /*dashboard forget form style*/
 
.dash-forget-form {
    max-width: 400px;           /* Form width */
    margin: 30px auto;          /* Center horizontally */
    padding: 25px;
    background-color: #1e1e1e;  /* Dark background */
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.3);
    display: flex;
    flex-direction: column;
    gap: 15px;                  /* Space between inputs */
    font-family: Arial, sans-serif;
}

/* Input field styling */
.dash-forget-form input[type="text"] {
    padding: 12px 15px;
    border: 1px solid #444;
    border-radius: 8px;
    background-color: #2c2c2c;
    color: #fff;
    font-size: 16px;
    transition: border 0.3s, background-color 0.3s;
}

.dash-forget-form input[type="text"]::placeholder {
    color: #bbb;
}

.dash-forget-form input[type="text"]:focus {
    border-color: #ff6600;
    background-color: #3a3a3a;
    outline: none;
}

/* Submit button styling */
.dash-forget-form input[type="submit"] {
    padding: 12px;
    border: none;
    border-radius: 8px;
    background-color: #ff6600;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s, transform 0.2s;
}

.dash-forget-form input[type="submit"]:hover {
    background-color: #e65c00;
    transform: translateY(-2px);
}

.dash-forget-form input[type="submit"]:active {
    transform: translateY(0);
}