/* =====================================================
   🌍 GLOBAL RESET + BASE
===================================================== */

*{
box-sizing:border-box;
margin:0;
padding:0;
}

body{
font-family:'Segoe UI', Arial, sans-serif;
background:#f4f6fb;
color:#222;
}
.slides{
position:relative;
width:100%;
height:100%;
}

/* =====================================================
   🎯 HEADER (ULTRA PREMIUM EDTECH LEVEL)
===================================================== */
.header{
display:flex;
align-items:center;
padding:14px 40px;
background:linear-gradient(90deg,#5b3cc4,#7a5cff);
color:white;
position:fixed;
top:0;
left:0;
right:0;
z-index:999;
box-shadow:0 6px 20px rgba(0,0,0,0.15);
}

/* LEFT */
.header-left{
display:flex;
align-items:center;
gap:14px;
}

/* MENU CENTER STRETCH */
.nav-menu{
display:flex;
gap:28px;
margin-left:40px;
flex:1;   /* ⭐ IMPORTANT */
}

/* RIGHT */


.logo-img{
height:40px;
}

.logo-text{
font-size:20px;
font-weight:700;
letter-spacing:.5px;
}

/* NAV MENU */


.nav-menu a{
color:white;
text-decoration:none;
font-weight:500;
font-size:15px;
white-space:nowrap;
}

.nav-menu a::after{
content:"";
position:absolute;
bottom:-6px;
left:0;
width:0%;
height:2px;
background:white;
transition:.3s;
}

.nav-menu a:hover::after{
width:100%;
}

/* RIGHT */

.header-right{
display:flex;
align-items:center;
gap:18px;
}

/* AD */

.top-ad{
background:rgba(255,255,255,0.18);
padding:6px 16px;
border-radius:40px;
font-size:13px;
backdrop-filter:blur(6px);
}

/* ICON */

.icon-btn{
position:relative;
font-size:22px;
cursor:pointer;
transition:.2s;
}

.icon-btn:hover{
transform:scale(1.08);
}

/* BADGE */
s
.badge{
position:absolute;
top:-6px;
right:-8px;
background:#ff3b3b;
color:white;
font-size:10px;
padding:3px 6px;
border-radius:50%;
font-weight:bold;
}

/* PROFILE */

.profile-box{
position:relative;
}

.profile-img{
height:38px;
width:38px;
border-radius:50%;
border:2px solid rgba(255,255,255,.7);
cursor:pointer;
}

/* DROPDOWN */

.profile-dropdown{
display:none;
position:absolute;
right:0;
top:55px;
background:white;
color:#333;
padding:14px;
border-radius:12px;
width:180px;
box-shadow:0 10px 30px rgba(0,0,0,0.2);
}

.profile-dropdown div{
padding:8px 4px;
cursor:pointer;
}

.profile-dropdown div:hover{
color:#5b3cc4;
}

/* NOTIFICATION PANEL */

.noti-panel{
display:none;
position:fixed;
top:80px;
right:20px;
width:320px;
background:white;
padding:20px;
border-radius:16px;
box-shadow:0 20px 40px rgba(0,0,0,0.2);
z-index:999;
}

/* =====================================================
   🖼 SLIDER (MODERN SMOOTH)
===================================================== */

.slider{
width:100%;
height:380px;
overflow:hidden;
position:relative;
}

.slide{
display:none;
position:absolute;
width:100%;
height:100%;
}

.slide.active{
display:block;
animation:fadeSlide .6s ease;
}

@keyframes fadeSlide{
from{opacity:0}
to{opacity:1}
}

.slide img{
width:100%;
height:100%;
object-fit:cover;
}

.slide-text{
position:absolute;
bottom:40px;
left:50px;
color:white;
font-size:34px;
font-weight:700;
text-shadow:0 4px 10px rgba(0,0,0,.5);
}

/* =====================================================
   📦 CARDS (EDTECH PREMIUM GRID)
===================================================== */

.section-title{
padding:28px 40px 12px;
font-size:22px;
font-weight:700;
}

.card-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:24px;
padding:0 40px 50px;
}

.card{
background:white;
border-radius:16px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,0.08);
transition:.3s;
cursor:pointer;
}

.card:hover{
transform:translateY(-6px);
box-shadow:0 18px 40px rgba(0,0,0,0.15);
}

.card img{
width:100%;
height:190px;
object-fit:cover;
}

.card-content{
padding:16px;
}

.card-title{
font-size:18px;
font-weight:600;
margin-bottom:6px;
}

.meta{
color:#777;
font-size:14px;
}

/* =====================================================
   🔐 LOGIN PAGE (GLASS PREMIUM)
===================================================== */

.login-body{
height:100vh;
background:linear-gradient(270deg,#5b3cc4,#7a5cff,#3b82f6);
background-size:500% 500%;
animation:bgMove 12s infinite ease;
display:flex;
justify-content:center;
align-items:center;
}

@keyframes bgMove{
0%{background-position:0% 50%}
50%{background-position:100% 50%}
100%{background-position:0% 50%}
}

.login-box{
width:380px;
background:rgba(255,255,255,.15);
backdrop-filter:blur(25px);
padding:40px;
border-radius:20px;
box-shadow:0 20px 40px rgba(0,0,0,.3);
color:white;
text-align:center;
}

.input-group{
position:relative;
margin-bottom:24px;
}

.input-group input{
 width:100%;
 padding:14px;
 border:none;
 border-radius:10px;

 background:rgba(255,255,255,.25);
 color:#ffffff;

 font-size:15px;

 outline:none;
 caret-color:#ffffff;

 /* Autofill Fix */
 -webkit-text-fill-color:#ffffff;
 transition:background 5000s ease-in-out 0s;
}

/* Autofill Chrome Fix */
.input-group input:-webkit-autofill{
 -webkit-box-shadow:0 0 0 1000px rgba(255,255,255,.25) inset;
 -webkit-text-fill-color:#ffffff;
}


.input-group label{
position:absolute;
top:14px;
left:14px;
color:#eee;
transition:.3s;
pointer-events:none;
}
.input-group input:focus{
 background:rgba(255,255,255,.35);
}

.input-group input:focus + label,
.input-group input:valid + label{
top:-8px;
font-size:12px;
background:#5b3cc4;
padding:2px 6px;
border-radius:6px;
}

/* BUTTON */

.login-btn{
background:linear-gradient(45deg,#7a5cff,#5b3cc4);
border:none;
padding:14px;
border-radius:30px;
color:white;
font-size:16px;
font-weight:600;
cursor:pointer;
width:100%;
transition:.3s;
}

.login-btn:hover{
transform:translateY(-2px);
box-shadow:0 10px 30px rgba(0,0,0,.25);
}

#msg{
margin-top:14px;
font-size:14px;
}

/* =====================================================
   📱 RESPONSIVE (ULTRA IMPORTANT)
===================================================== */

@media(max-width:900px){

.header{
padding:14px 20px;
}

.nav-menu{
display:none;
}

.hamburger{
display:block;
}

.top-ad{
display:none;
}

}

@media(max-width:600px){

.logo-text{
display:none;
}

.slide-text{
font-size:24px;
left:20px;
}

.card-grid{
padding:0 20px 40px;
}

.section-title{
padding:24px 20px 10px;
}

}
/* ===== CBT UI ===== */

.cbt-wrapper{
height:100vh;
display:flex;
flex-direction:column;
background:#f1f3f9;
}

.cbt-topbar{
display:flex;
justify-content:space-between;
padding:15px 30px;
background:#2c2f7a;
color:white;
font-weight:600;
}

.timer-box{
background:white;
color:#2c2f7a;
padding:5px 15px;
border-radius:20px;
}

.cbt-body{
flex:1;
display:flex;
}

/* LEFT QUESTION */

.cbt-question-area{
flex:3;
background:white;
padding:30px;
}

.question-number{
font-weight:bold;
margin-bottom:10px;
}

.question-text{
font-size:22px;
margin-bottom:20px;
}

.options-box{
display:flex;
flex-direction:column;
gap:12px;
}

.option{
padding:15px;
border:2px solid #eee;
border-radius:10px;
cursor:pointer;
transition:.2s;
}

.option:hover{
border-color:#2c2f7a;
background:#eef0ff;
}

/* RIGHT PALETTE */

.cbt-palette{
flex:1;
background:#fafafa;
padding:20px;
border-left:1px solid #ddd;
}

.palette-header{
font-weight:bold;
margin-bottom:15px;
}

.palette-grid{
display:grid;
grid-template-columns:repeat(5,1fr);
gap:10px;
}

.palette-btn{
padding:10px;
background:white;
border:1px solid #ddd;
text-align:center;
cursor:pointer;
border-radius:6px;
}

/* FOOTER */

.cbt-footer{
padding:15px;
display:flex;
justify-content:center;
gap:15px;
background:white;
border-top:1px solid #ddd;
}

.btn-next{
background:#2c2f7a;
color:white;
padding:10px 25px;
border:none;
border-radius:6px;
}

.btn-review{
background:#ff9800;
color:white;
padding:10px 25px;
border:none;
border-radius:6px;
}

.btn-clear{
background:#e53935;
color:white;
padding:10px 25px;
border:none;
border-radius:6px;
}

.submit-btn{
width:100%;
margin-top:20px;
background:#4caf50;
color:white;
padding:12px;
border:none;
border-radius:8px;
}

.palette-btn.answered{
background:#4caf50;
color:white;
}
.palette-btn.notVisited{
background:#eee;
}

.palette-btn.answered{
background:#4caf50;
color:white;
}

.palette-btn.review{
background:#9c27b0;
color:white;
}

.option.selected{
border-color:#2c2f7a;
background:#e7e8ff;
}
.result-box{
 background:white;
 padding:25px;
 border-radius:12px;
 margin:20px;
 box-shadow:0 5px 20px rgba(0,0,0,0.1);
 max-width:500px;
}
.result-body{
background:#0f172a;
color:white;
font-family:Segoe UI;
}

.result-container{
max-width:500px;
margin:auto;
padding:30px;
text-align:center;
}

.score-card{
background:#1e293b;
padding:20px;
border-radius:15px;
margin-bottom:20px;
}

.score-main{
font-size:48px;
font-weight:bold;
color:#22c55e;
}

.result-stats{
display:flex;
justify-content:space-around;
margin:20px 0;
}

.stat{
padding:15px;
border-radius:12px;
width:100px;
}

.green{background:#14532d;}
.red{background:#7f1d1d;}
.gray{background:#374151;}

.result-btn{
background:#6366f1;
padding:12px 25px;
border:none;
border-radius:10px;
color:white;
cursor:pointer;
}

/* Leaderboard */

.leaderboard-body{
background:#020617;
color:white;
padding:30px;
}

.leader-row{
display:flex;
justify-content:space-between;
background:#1e293b;
margin:10px 0;
padding:15px;
border-radius:12px;
}

/* ================= MOBILE DRAWER FINAL ================= */

.hamburger{
display:flex;
align-items:center;
justify-content:center;
font-size:26px;
cursor:pointer;
margin-right:10px;
color:white;
}


/* Drawer */

.mobile-drawer{
position:fixed;
top:0;
left:-300px;
width:280px;
height:100vh;
background:#fff;
z-index:5000;
transition:0.3s ease;
box-shadow:5px 0 25px rgba(0,0,0,0.25);
padding:20px;
overflow-y:auto;
}

.mobile-drawer.open{
left:0;
}

/* Overlay */

.drawer-overlay{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.5);
z-index:4999;
display:none;
}

.drawer-overlay.show{
display:block;
}

/* Drawer Header */

.drawer-header{
display:flex;
align-items:center;
gap:12px;
margin-bottom:25px;
}

.drawer-profile{
width:50px;
height:50px;
border-radius:50%;
object-fit:cover;
}

.drawer-email{
font-size:12px;
color:#666;
}

/* Drawer Menu */

.drawer-menu{
display:flex;
flex-direction:column;
gap:14px;
}

.drawer-menu a{
text-decoration:none;
color:#333;
font-weight:500;
padding:12px;
border-radius:10px;
transition:.2s;
}

.drawer-menu a:hover{
background:#f3f4ff;
color:#5b3cc4;
}
.header-left{
display:flex;
align-items:center;
gap:10px;
}

/* Mobile */

@media(max-width:900px){

.nav-menu{
display:none;
}
}
.scroll-row{
display:flex;
gap:16px;
overflow-x:auto;
padding:10px 5px;
}

.scroll-card{
min-width:220px;
flex-shrink:0;
}
.video-container{
max-width:1100px;
margin:auto;
padding:30px 20px;
}

.pro-video-player{
width:100%;
height:520px;
border-radius:18px;
background:black;
object-fit:cover;
}

.video-title{
font-size:28px;
font-weight:700;
margin-top:15px;
}

.video-meta{
color:#9ca3af;
margin-bottom:25px;
}

.related-title{
margin:25px 0 15px;
font-size:22px;
}
/* ===== ARTICLE DETAIL PRO ===== */

.detail-body{
background:#0f172a;
color:white;
font-family:Segoe UI, Arial;
}

.detail-container{
max-width:900px;
margin:auto;
padding:30px 20px;
}

.detail-cover{
width:100%;
border-radius:20px;
margin-bottom:20px;
}

.detail-title{
font-size:32px;
font-weight:700;
margin-bottom:10px;
}

.detail-meta{
color:#9ca3af;
margin-bottom:20px;
}

.detail-desc{
line-height:1.8;
font-size:17px;
}

.related-title{
margin:30px 0 15px;
font-size:22px;
}

.scroll-row{
display:flex;
gap:16px;
overflow-x:auto;
padding:10px 5px;
}

.scroll-card{
min-width:220px;
flex-shrink:0;
}
.home-section{
margin-top:10px;
}

.section-title{
display:flex;
align-items:center;
gap:10px;
}
.page-wrapper{
display:grid;
grid-template-columns: 1fr 320px;
gap:25px;
max-width:1400px;
margin:auto;
padding:20px 20px;
}

.main-content{
min-width:0;
}

.right-ad{
position:sticky;
top:100px;
height:max-content;
}

.ad-card{
background:white;
padding:20px;
border-radius:16px;
box-shadow:0 5px 20px rgba(0,0,0,0.1);
margin-bottom:20px;
}

.ad-card img{
width:100%;
border-radius:12px;
margin-top:10px;
}

.ad-card ul{
padding-left:18px;
margin-top:10px;
color:#555;
}

.footer{
background:#111827;
color:white;
padding:25px;
text-align:center;
margin-top:40px;
}

/* MOBILE SAFE */

@media(max-width:1100px){

.page-wrapper{
grid-template-columns:1fr;
}

.right-ad{
display:none;
}

}
.video-player-box{
position:relative;
background:black;
border-radius:18px;
overflow:hidden;
}

.pro-video-player{
width:100%;
height:520px;
object-fit:cover;
}

.video-controls{
position:absolute;
bottom:0;
left:0;
right:0;
display:flex;
gap:10px;
padding:10px;
background:rgba(0,0,0,0.6);
flex-wrap:wrap;
}

.video-controls button{
background:#6366f1;
border:none;
color:white;
padding:8px 12px;
border-radius:8px;
cursor:pointer;
}

.video-controls input{
width:100px;
}
/* ===== DETAIL PAGE HEADER OFFSET ===== */

.detail-page-offset{
padding-top:90px;
}
.advanced-player{
position:relative;
}

.video-controls{
position:absolute;
bottom:15px;
left:50%;
transform:translateX(-50%);
display:flex;
gap:15px;
background:rgba(0,0,0,0.5);
padding:10px 20px;
border-radius:30px;
}

.video-controls button{
background:none;
border:none;
color:white;
font-size:20px;
cursor:pointer;
}
.detail-body button{
 background:#5b3cc4;
 color:white;
 border:none;
 padding:8px 14px;
 margin-right:10px;
 border-radius:8px;
 cursor:pointer;
}


/* ===== ARTICLE PREMIUM ===== */

.read-progress{
position:fixed;
top:0;
left:0;
height:4px;
background:linear-gradient(90deg,#7a5cff,#5b3cc4);
width:0%;
z-index:2000;
}

.article-toolbar{
display:flex;
gap:10px;
margin:15px 0;
flex-wrap:wrap;
}

.article-btn{
background:#5b3cc4;
color:white;
border:none;
padding:8px 14px;
border-radius:20px;
cursor:pointer;
font-size:14px;
}

.article-btn.outline{
background:white;
color:#5b3cc4;
border:1px solid #5b3cc4;
}

.share-float{
position:fixed;
bottom:30px;
right:30px;
background:#5b3cc4;
color:white;
width:55px;
height:55px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:22px;
cursor:pointer;
box-shadow:0 10px 25px rgba(0,0,0,0.25);
z-index:2000;
}

.dark-article{
background:#0f172a !important;
color:white !important;
}

.dark-article .card{
background:#1e293b;
color:white;
}
.read-progress{
position:fixed;
top:0;
left:0;
height:4px;
background:#7a5cff;
width:0%;
z-index:9999;
}

.article-toolbar{
display:flex;
gap:10px;
margin:15px 0;
flex-wrap:wrap;
}

.comment-box textarea{
width:100%;
padding:10px;
margin-top:10px;
border-radius:8px;
border:1px solid #ddd;
}

.comment-item{
background:white;
padding:10px;
border-radius:10px;
margin-top:10px;
}
/* ================= MEGA FOOTER ================= */

.mega-footer{
background:#020617;
color:#cbd5e1;
margin-top:80px;
}

.mega-footer-container{
max-width:1400px;
margin:auto;
display:grid;
grid-template-columns:repeat(5,1fr);
gap:40px;
padding:60px 40px;
}

.mega-col h3{
color:white;
margin-bottom:15px;
}

.mega-col h4{
color:white;
margin-bottom:15px;
font-size:18px;
}

.mega-col p{
font-size:14px;
color:#94a3b8;
line-height:1.6;
}

.mega-col a{
display:block;
text-decoration:none;
color:#94a3b8;
margin-bottom:8px;
font-size:14px;
transition:.2s;
}

.mega-col a:hover{
color:white;
padding-left:4px;
}

.app-download img{
width:140px;
margin-top:15px;
display:block;
}

/* SOCIAL */

.mega-social{
border-top:1px solid #1e293b;
padding:20px 40px;
display:flex;
gap:20px;
align-items:center;
max-width:1400px;
margin:auto;
}

.mega-social a{
color:#94a3b8;
text-decoration:none;
}

.mega-social a:hover{
color:white;
}

/* BOTTOM */

.mega-bottom{
border-top:1px solid #1e293b;
padding:20px 40px;
display:flex;
justify-content:space-between;
flex-wrap:wrap;
max-width:1400px;
margin:auto;
font-size:14px;
color:#64748b;
}

.footer-links a{
margin-left:20px;
color:#64748b;
text-decoration:none;
}

.footer-links a:hover{
color:white;
}

/* MOBILE */

@media(max-width:1100px){

.mega-footer-container{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:600px){

.mega-footer-container{
grid-template-columns:1fr;
padding:40px 20px;
}

.mega-bottom{
flex-direction:column;
gap:10px;
text-align:center;
}

}
.video-nav-bar{
display:flex;
justify-content:center;
align-items:center;
gap:14px;
margin:20px auto;
padding:12px 18px;
background:rgba(255,255,255,0.08);
backdrop-filter:blur(10px);
border-radius:14px;
flex-wrap:nowrap;
}

.video-nav-bar button{
min-width:140px;
height:44px;
border:none;
border-radius:10px;
font-weight:600;
cursor:pointer;
}

#prevVideoBtn{
background:linear-gradient(135deg,#6366f1,#4f46e5);
color:white;
}

#playlistBtn{
background:#eef2ff;
color:#4f46e5;
}

#nextVideoBtn{
background:linear-gradient(135deg,#22c55e,#16a34a);
color:white;
}

@media(max-width:600px){
.video-nav-bar{
flex-wrap:wrap;
}
}
.ultra-controls{
position:absolute;
bottom:15px;
left:50%;
transform:translateX(-50%);

display:flex;
gap:12px;
align-items:center;

background:rgba(0,0,0,0.6);
padding:10px 18px;
border-radius:30px;
backdrop-filter:blur(10px);
}

.ultra-controls button{
background:none;
border:none;
color:white;
font-size:20px;
cursor:pointer;
}

.ultra-controls select{
background:black;
color:white;
border:none;
border-radius:6px;
padding:4px 6px;
}

.ultra-controls button:hover{
transform:scale(1.15);
}
/* ===== ARTICLE EDITOR ===== */

.article-editor-body{
background:#f5f6fa;
}

.editor-wrapper{
max-width:720px;
margin:auto;
background:white;
padding:25px;
border-radius:12px;
box-shadow:0 2px 10px rgba(0,0,0,0.08);
}

/* Inputs */

.editor-input{
width:100%;
padding:14px;
margin-bottom:14px;
border-radius:8px;
border:1px solid #ddd;
font-size:16px;
}

/* Short Text */

.editor-textarea-short{
width:100%;
height:90px;
padding:12px;
border-radius:8px;
border:1px solid #ddd;
resize:none;
}

/* Block Container */

.block-card{
border:1px solid #eee;
border-radius:10px;
padding:15px;
margin-bottom:15px;
background:#fafafa;
}

/* TEXT BLOCK */

.block-textarea{
width:100%;
height:180px;
overflow-y:auto;
padding:12px;
border-radius:8px;
border:1px solid #ddd;
resize:none;
}

/* IMAGE BLOCK */

.block-image-preview{
width:100%;
height:320px;
object-fit:cover;
border-radius:10px;
background:#ddd;
margin-top:10px;
}

/* Buttons */

.editor-actions button{
padding:10px 18px;
margin-right:10px;
border:none;
border-radius:8px;
background:#6c5ce7;
color:white;
cursor:pointer;
}

.publish-btn{
width:100%;
padding:15px;
margin-top:20px;
background:#00b894;
color:white;
border:none;
border-radius:10px;
font-size:18px;
cursor:pointer;
}
/* ================= ULTRA QUIZ BUILDER DESIGN ================= */

.article-editor-body{
 background: linear-gradient(135deg,#eef2ff,#f9fafe);
 min-height:100vh;
 font-family: 'Segoe UI', sans-serif;
}

.editor-wrapper{
 max-width:900px;
 margin:40px auto;
 background:white;
 padding:35px;
 border-radius:18px;
 box-shadow:0 20px 50px rgba(0,0,0,0.08);
}

/* ================= HEADINGS ================= */

.editor-wrapper h2{
 font-size:26px;
 margin-bottom:20px;
 color:#2d3436;
}

.editor-wrapper h3{
 margin-top:25px;
 margin-bottom:10px;
 color:#636e72;
 font-size:16px;
}

/* ================= INPUTS ================= */

.editor-input,
select,
input{
 width:100%;
 padding:12px 14px;
 border-radius:10px;
 border:1px solid #e0e6ed;
 margin-bottom:12px;
 font-size:14px;
 background:#fafbff;
 transition:all .2s ease;
}

.editor-input:focus,
select:focus,
input:focus{
 border-color:#6c5ce7;
 background:white;
 outline:none;
 box-shadow:0 0 0 3px rgba(108,92,231,.1);
}

/* ================= QUESTION LIST ================= */

.question-scroll{
 max-height:260px;
 overflow-y:auto;
 border:1px solid #e0e6ed;
 border-radius:12px;
 padding:10px;
 background:#fafbff;
}

.question-item{
 padding:10px;
 border-radius:10px;
 margin-bottom:8px;
 background:white;
 border:1px solid #eef1f5;
 cursor:pointer;
 transition:.2s;
}

.question-item:hover{
 border-color:#6c5ce7;
 transform:translateY(-2px);
 box-shadow:0 6px 16px rgba(0,0,0,0.08);
}

/* ================= SELECTED QUESTIONS ================= */

#selectedList{
 border:1px dashed #dfe6e9;
 border-radius:12px;
 padding:12px;
 background:#fbfcff;
 min-height:60px;
}

/* ================= BUTTON ================= */

.publish-btn{
 width:100%;
 padding:14px;
 border:none;
 border-radius:12px;
 background:linear-gradient(135deg,#6c5ce7,#8e7bff);
 color:white;
 font-size:16px;
 font-weight:600;
 cursor:pointer;
 transition:.2s;
 box-shadow:0 10px 25px rgba(108,92,231,.25);
}

.publish-btn:hover{
 transform:translateY(-2px);
 box-shadow:0 16px 35px rgba(108,92,231,.35);
}

/* ================= MESSAGE ================= */
/* ================= ULTRA FULL EXAM BUILDER ================= */

.ultra-wrapper{
max-width:1100px;
margin:auto;
}

.ultra-header p{
color:#777;
margin-top:5px;
}

/* ===== CARDS ===== */

.ultra-card{
background:white;
border-radius:16px;
padding:20px;
margin-bottom:18px;
box-shadow:0 10px 30px rgba(0,0,0,.06);
border:1px solid #eef1f5;
}

/* ===== GRID ===== */

.grid-3{
display:grid;
grid-template-columns:1fr 1fr 1fr;
gap:12px;
}

/* ===== SUBJECT GRID ===== */

.subject-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:15px;
}

/* ===== SUBJECT CARD ===== */

.subject-row-card{
background:#fafbff;
border-radius:12px;
padding:15px;
border:1px solid #e6ebff;
}

/* ===== FLEX HEADER ===== */

.card-header-flex{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:10px;
}

/* ===== MINI BUTTON ===== */

.mini-btn{
background:#6c5ce7;
color:white;
border:none;
padding:8px 14px;
border-radius:8px;
cursor:pointer;
font-size:13px;
}

/* ===== STICKY ACTION ===== */

.action-sticky-bar{
position:sticky;
bottom:15px;
display:flex;
gap:10px;
margin-top:20px;
}

.save-btn{
background:#0984e3;
}

.generate-btn{
background:#00b894;
}

/* ===== STATUS ===== */

.status-msg{
margin-top:15px;
font-weight:600;
}

#msg{
 margin-top:12px;
 font-weight:600;
 color:#6c5ce7;
}
/* ===== FULL EXAM BUILDER COMPACT ===== */

.compact-grid-2{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:12px;
}

.compact-grid-3{
 display:grid;
 grid-template-columns:1fr 1fr 1fr;
 gap:12px;
}

.compact-card{
 background:white;
 border-radius:14px;
 padding:16px;
 border:1px solid #eef1f5;
 box-shadow:0 8px 20px rgba(0,0,0,.05);
 margin-bottom:15px;
}

.compact-card h3{
 margin-top:0;
 margin-bottom:10px;
 font-size:15px;
 color:#555;
}
.content-selector-wrap{
max-width:1200px;
margin:auto;
display:grid;
grid-template-columns: repeat(auto-fit,minmax(450px,1fr));
gap:25px;
}

.selector-card{
background: rgba(255,255,255,0.04);
border-radius:18px;
padding:20px;
border:1px solid rgba(255,255,255,0.08);
backdrop-filter: blur(10px);
}

.selector-header{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:15px;
}

.selector-actions{
display:flex;
gap:8px;
}

.selector-actions input{
padding:6px 10px;
border-radius:8px;
border:none;
background: rgba(255,255,255,0.08);
color:white;
}

.selector-actions button{
padding:6px 10px;
border:none;
border-radius:8px;
background:#6366f1;
color:white;
cursor:pointer;
}

.selector-list{
max-height:300px;
overflow:auto;
padding-right:5px;
}

.selector-list label{
display:block;
padding:6px;
border-radius:6px;
cursor:pointer;
}

.selector-list label:hover{
background: rgba(99,102,241,0.2);
}

.save-btn{
background: linear-gradient(45deg,#10b981,#059669);
border:none;
padding:14px 30px;
border-radius:14px;
color:white;
font-size:16px;
cursor:pointer;
}
.tab{
display:none;
padding:20px;
border:1px solid #ddd;
margin-top:10px;
}

.tabs button{
margin-right:10px;
padding:10px;
}
.selector-card{
background:white;
padding:20px;
border-radius:14px;
margin-bottom:20px;
box-shadow:0 4px 15px rgba(0,0,0,.08);
}

.selector-item{
display:flex;
gap:10px;
padding:8px;
border-radius:8px;
cursor:pointer;
}

.selector-item:hover{
background:#f1f5ff;
}
.selector-item{
display:flex;
gap:10px;
padding:8px;
border-radius:8px;
cursor:pointer;
}

.selector-item:hover{
background:#eef2ff;
}
/* ============================= */
/* MOBILE RESPONSIVE FIX */
/* ============================= */

@media (max-width: 768px) {

/* HEADER FIX */

.header{
flex-wrap: nowrap;
padding:8px;
height:60px;
}

.header-left{
display:flex;
align-items:center;
gap:6px;
}

.logo-text{
display:none;
}

.logo-img{
height:34px;
}


/* NAV MENU HIDE */

.nav-menu{
display:none;
}


/* HAMBURGER SHOW */

.hamburger{
display:block;
font-size:22px;
cursor:pointer;
margin-right:6px;
}


/* RIGHT SIDE FIX */

.header-right{
gap:6px;
}

.playstore-btn span{
display:none;
}

.playstore-icon{
height:28px;
}


/* PROFILE */

.profile-img{
width:32px;
height:32px;
}


/* PAGE LAYOUT FIX */

.page-wrapper{
flex-direction:column;
}


/* SIDEBAR HIDE */

.right-ad{
display:none;
}


/* MAIN CONTENT FULL */

.main-content{
width:100%;
padding:10px;
}


/* SLIDER FIX */

.slider{
height:180px;
border-radius:10px;
overflow:hidden;
}


/* SECTION FIX */

.section-title{
font-size:18px;
margin-bottom:8px;
}


/* SCROLL ROW FIX */

.scroll-row{
gap:10px;
overflow-x:auto;
padding-bottom:10px;
}


/* FOOTER FIX */

.mega-footer-container{
flex-direction:column;
gap:20px;
text-align:center;
}


.mega-bottom{
text-align:center;
font-size:13px;
}


.footer-links{
display:block;
margin-top:8px;
}

}


/* ============================= */
/* MOBILE DRAWER FIX */
/* ============================= */

.mobile-drawer{

position:fixed;
top:0;
left:-260px;

width:260px;
height:100%;

background:white;
z-index:9999;

transition:0.3s;

overflow-y:auto;

}


.mobile-drawer.active{
left:0;
}


.drawer-overlay{

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,0.5);

display:none;

z-index:9998;

}


.drawer-overlay.active{
display:block;
}


/* DRAWER MENU */

.drawer-menu a{

display:block;

padding:14px;

border-bottom:1px solid #eee;

font-size:16px;

text-decoration:none;

color:black;

}

.drawer-menu a:hover{

background:#f5f5f5;

}

