/* =========================================================
   MIRARLABS QUEST V3
   STYLE PART 2A
   Theme • Background • Sidebar • Header • Hero
========================================================= */

:root{

--bg:#070B14;
--bg2:#0E1628;

--panel:rgba(17,24,39,.72);
--panel2:rgba(25,34,55,.82);

--border:rgba(255,255,255,.08);

--text:#F8FAFC;
--muted:#94A3B8;

--primary:#7C3AED;
--secondary:#2563EB;
--cyan:#22D3EE;
--success:#22C55E;
--danger:#EF4444;

--radius:24px;

--transition:.28s ease;

}

/* ========================================================= */

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:Inter,sans-serif;

background:

radial-gradient(circle at top left,#7C3AED20,transparent 30%),

radial-gradient(circle at bottom right,#22D3EE15,transparent 35%),

linear-gradient(180deg,#070B14,#0B1220);

color:var(--text);

min-height:100vh;

overflow-x:hidden;

}

/* ========================================================= */

body::before{

content:"";

position:fixed;

left:-300px;
top:-300px;

width:700px;
height:700px;

background:

radial-gradient(circle,#7C3AED35,transparent 70%);

filter:blur(90px);

z-index:-2;

}

body::after{

content:"";

position:fixed;

right:-250px;
bottom:-250px;

width:650px;
height:650px;

background:

radial-gradient(circle,#22D3EE20,transparent 70%);

filter:blur(100px);

z-index:-2;

}

/* ========================================================= */

.sidebar{

position:fixed;

left:0;
top:0;

width:260px;

height:100vh;

padding:32px;

background:

rgba(8,12,24,.92);

border-right:

1px solid var(--border);

backdrop-filter:blur(24px);

display:flex;

flex-direction:column;

}

/* ========================================================= */

.brand{

text-align:center;

margin-bottom:38px;

}

.brand-logo{

width:125px;

display:block;

margin:auto;

transition:.35s;

filter:

drop-shadow(0 0 25px rgba(124,58,237,.45));

}

.brand-logo:hover{

transform:scale(1.04);

filter:

drop-shadow(0 0 35px rgba(37,99,235,.55));

}

.brand h2{

margin-top:16px;

font-size:25px;

font-weight:800;

letter-spacing:.4px;

}

.brand p{

margin-top:6px;

font-size:11px;

letter-spacing:3px;

color:var(--muted);

}

/* ========================================================= */

.sidebar nav{

display:flex;

flex-direction:column;

gap:10px;

}

.sidebar nav a{

display:flex;

align-items:center;

gap:12px;

padding:15px 18px;

border-radius:18px;

text-decoration:none;

color:#CBD5E1;

font-weight:600;

transition:var(--transition);

cursor:pointer;

}

.sidebar nav a:hover{

background:

rgba(124,58,237,.15);

color:#fff;

transform:translateX(4px);

}

.sidebar nav a.active{

background:

linear-gradient(

135deg,

var(--primary),

var(--secondary)

);

box-shadow:

0 12px 35px rgba(124,58,237,.35);

}

/* ========================================================= */

.main{

margin-left:260px;

padding:36px;

}

/* ========================================================= */

.topbar{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:32px;

}

.welcome h1{

font-size:36px;

font-weight:800;

margin-bottom:10px;

}

.welcome p{

color:var(--muted);

font-size:15px;

line-height:1.6;

max-width:520px;

}

.top-actions{

display:flex;

align-items:center;

gap:16px;

}

/* ========================================================= */

.wallet-btn{

padding:15px 24px;

border:none;

border-radius:16px;

background:

linear-gradient(

135deg,

var(--primary),

var(--secondary)

);

color:#fff;

font-weight:700;

cursor:pointer;

transition:var(--transition);

box-shadow:

0 15px 40px rgba(124,58,237,.35);

}

.wallet-btn:hover{

transform:translateY(-3px);

box-shadow:

0 22px 55px rgba(37,99,235,.45);

}

/* ========================================================= */

.profile-chip{

display:flex;

align-items:center;

gap:12px;

padding:8px 14px;

border-radius:999px;

background:var(--panel);

border:1px solid var(--border);

backdrop-filter:blur(18px);

}

.profile-chip img{

width:42px;

height:42px;

border-radius:50%;

border:2px solid rgba(124,58,237,.45);

}

.profile-chip span{

font-weight:700;

}

/* ========================================================= */

.hero{

display:grid;

grid-template-columns:2fr 1fr;

gap:24px;

margin-bottom:30px;

}

.hero-card{

background:var(--panel);

border:1px solid var(--border);

backdrop-filter:blur(20px);

border-radius:28px;

padding:34px;

position:relative;

overflow:hidden;

}

.hero-card::before{

content:"";

position:absolute;

right:-120px;

top:-120px;

width:280px;

height:280px;

border-radius:50%;

background:

radial-gradient(

circle,

rgba(124,58,237,.25),

transparent

);

filter:blur(30px);

}

.badge{

display:inline-block;

padding:9px 16px;

border-radius:999px;

background:

linear-gradient(

135deg,

var(--primary),

var(--secondary)

);

font-size:12px;

font-weight:700;

margin-bottom:18px;

}

.hero-card h2{

font-size:38px;

font-weight:800;

margin-bottom:14px;

}

.hero-card p{

font-size:15px;

line-height:1.8;

color:var(--muted);

max-width:600px;

}

.hero-buttons{

display:flex;

gap:14px;

margin-top:28px;

}

.primary{

padding:15px 24px;

border:none;

border-radius:16px;

background:

linear-gradient(

135deg,

var(--primary),

var(--secondary)

);

color:#fff;

font-weight:700;

cursor:pointer;

transition:var(--transition);

}

.primary:hover{

transform:translateY(-3px);

}

.secondary{

padding:15px 24px;

border:none;

border-radius:16px;

background:#1E293B;

color:#fff;

cursor:pointer;

transition:var(--transition);

}

.secondary:hover{

background:#26344E;

}
/* =========================================================
   MIRARLABS QUEST V3
   STYLE PART 2B
   Stats • Dashboard Grid • Rewards • Quest
=========================================================*/

/* =======================
   STATS
======================= */

.stats{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:22px;

margin-bottom:32px;

}

.stat-card{

position:relative;

overflow:hidden;

padding:26px;

border-radius:26px;

background:var(--panel);

border:1px solid var(--border);

backdrop-filter:blur(22px);

transition:.3s;

cursor:pointer;

}

.stat-card::before{

content:"";

position:absolute;

right:-50px;
top:-50px;

width:140px;
height:140px;

border-radius:50%;

background:

radial-gradient(circle,

rgba(124,58,237,.25),

transparent);

transition:.3s;

}

.stat-card:hover{

transform:translateY(-6px);

box-shadow:

0 20px 55px

rgba(124,58,237,.20);

}

.stat-card:hover::before{

transform:scale(1.2);

}

.stat-card h4{

font-size:12px;

letter-spacing:2px;

text-transform:uppercase;

color:var(--muted);

margin-bottom:12px;

}

.stat-card h2{

font-size:40px;

font-weight:800;

margin-bottom:10px;

}

.stat-card small{

color:var(--muted);

font-size:13px;

}

/* =======================
   GRID
======================= */

.dashboard-grid{

display:grid;

grid-template-columns:

2fr 1fr 1fr;

gap:22px;

}

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

.panel{

padding:28px;

border-radius:26px;

background:var(--panel);

border:1px solid var(--border);

backdrop-filter:blur(20px);

transition:.3s;

position:relative;

overflow:hidden;

}

.panel::after{

content:"";

position:absolute;

right:-80px;

bottom:-80px;

width:200px;

height:200px;

border-radius:50%;

background:

radial-gradient(circle,

rgba(37,99,235,.18),

transparent);

}

.panel:hover{

transform:translateY(-5px);

box-shadow:

0 18px 45px

rgba(37,99,235,.18);

}

.panel h3{

font-size:22px;

margin-bottom:18px;

}

.panel p{

line-height:1.8;

color:var(--muted);

}

/* =======================
   PROGRESS
======================= */

.progress{

height:12px;

background:#1F2937;

border-radius:999px;

overflow:hidden;

margin:18px 0;

}

.fill{

height:100%;

background:

linear-gradient(

90deg,

var(--primary),

var(--cyan)

);

animation:

xpMove

2s ease;

}

@keyframes xpMove{

0%{

width:0;

}

}

/* =======================
   QUEST CARD
======================= */

.quest-card{

margin-top:20px;

padding:20px;

border-radius:22px;

background:

linear-gradient(

180deg,

rgba(22,30,48,.9),

rgba(14,20,34,.9)

);

border:1px solid

rgba(255,255,255,.06);

}

.quest-title{

font-size:18px;

font-weight:700;

margin-bottom:10px;

}

.quest-desc{

font-size:14px;

line-height:1.7;

color:var(--muted);

margin-bottom:18px;

}

.quest-footer{

display:flex;

justify-content:space-between;

align-items:center;

}

/* =======================
   REWARD CARD
======================= */

.reward-card{

padding:24px;

margin-top:18px;

border-radius:24px;

background:

linear-gradient(

180deg,

#19243A,

#101827

);

border:1px solid

rgba(255,255,255,.06);

transition:.3s;

position:relative;

overflow:hidden;

}

.reward-card:hover{

transform:translateY(-6px);

box-shadow:

0 18px 50px

rgba(124,58,237,.18);

}

.reward-card::before{

content:"";

position:absolute;

top:-70px;

right:-70px;

width:180px;

height:180px;

border-radius:50%;

background:

radial-gradient(

circle,

rgba(124,58,237,.20),

transparent);

}

.reward-icon{

width:64px;

height:64px;

display:flex;

align-items:center;

justify-content:center;

font-size:28px;

border-radius:18px;

background:

linear-gradient(

135deg,

var(--primary),

var(--secondary)

);

margin-bottom:18px;

}

.reward-card h3{

font-size:22px;

margin-bottom:8px;

}

.reward-card p{

font-size:14px;

line-height:1.8;

color:var(--muted);

margin-bottom:18px;

}

.reward-cost{

display:inline-block;

padding:8px 14px;

border-radius:999px;

background:

rgba(124,58,237,.15);

color:#C4B5FD;

font-weight:700;

margin-bottom:20px;

}

/* =======================
   BUTTONS
======================= */

.claim-btn,

.claimed-btn,

.locked-btn{

width:100%;

padding:15px;

border:none;

border-radius:16px;

font-size:15px;

font-weight:700;

cursor:pointer;

transition:.3s;

}

.claim-btn{

background:

linear-gradient(

135deg,

var(--primary),

var(--secondary)

);

color:white;

}

.claim-btn:hover{

transform:translateY(-3px);

}

.claimed-btn{

background:#16A34A;

color:white;

cursor:default;

}

.locked-btn{

background:#1F2937;

color:#94A3B8;

cursor:not-allowed;

}

/* =======================
   MINI BADGES
======================= */

.badge-rare{

background:#2563EB;

}

.badge-epic{

background:#7C3AED;

}

.badge-legendary{

background:#F59E0B;

}

/* =======================
   FLOAT EFFECT
======================= */

.stat-card,

.reward-card,

.panel{

animation:

floatCard

5s ease-in-out infinite;

}

@keyframes floatCard{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-4px);

}

100%{

transform:translateY(0);

}

}
/* =========================================================
   MIRARLABS QUEST V3
   STYLE PART 2C
   Profile • Leaderboard • Settings • Toast • Modal
=========================================================*/

/* ==========================
   PROFILE
========================== */

.profile-layout{

display:grid;

grid-template-columns:320px 1fr;

gap:24px;

margin-top:30px;

}

.profile-sidebar{

background:var(--panel);

border:1px solid var(--border);

border-radius:28px;

padding:30px;

text-align:center;

backdrop-filter:blur(22px);

}

.profile-avatar{

width:140px;

height:140px;

margin:auto;

border-radius:50%;

overflow:hidden;

border:4px solid rgba(124,58,237,.35);

box-shadow:0 0 40px rgba(124,58,237,.25);

}

.profile-avatar img{

width:100%;

height:100%;

object-fit:cover;

}

.profile-name{

font-size:28px;

font-weight:800;

margin-top:22px;

}

.profile-role{

margin-top:8px;

font-size:13px;

letter-spacing:2px;

color:var(--muted);

text-transform:uppercase;

}

.profile-badge{

display:inline-flex;

align-items:center;

gap:8px;

padding:8px 14px;

margin-top:18px;

border-radius:999px;

background:linear-gradient(135deg,var(--primary),var(--secondary));

font-size:12px;

font-weight:700;

}

.profile-stats{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

}

.profile-box{

background:var(--panel);

border:1px solid var(--border);

border-radius:22px;

padding:24px;

}

.profile-box small{

display:block;

color:var(--muted);

font-size:12px;

letter-spacing:1px;

margin-bottom:10px;

}

.profile-box h2{

font-size:30px;

}

/* ==========================
   LEADERBOARD
========================== */

.leaderboard-card{

display:flex;

align-items:center;

justify-content:space-between;

padding:20px;

margin-bottom:18px;

border-radius:22px;

background:var(--panel);

border:1px solid var(--border);

transition:.3s;

}

.leaderboard-card:hover{

transform:translateY(-4px);

box-shadow:0 15px 40px rgba(37,99,235,.18);

}

.rank-badge{

width:52px;

height:52px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

font-size:18px;

font-weight:700;

background:linear-gradient(135deg,var(--primary),var(--secondary));

}

.rank-user{

flex:1;

margin-left:18px;

}

.rank-user h3{

font-size:18px;

margin-bottom:4px;

}

.rank-user span{

font-size:13px;

color:var(--muted);

}

.rank-xp{

font-size:18px;

font-weight:700;

color:#C4B5FD;

}

/* ==========================
   SETTINGS
========================== */

.settings-group{

background:var(--panel);

border:1px solid var(--border);

border-radius:24px;

padding:28px;

margin-bottom:22px;

}

.settings-title{

font-size:18px;

font-weight:700;

margin-bottom:18px;

}

.setting-item{

display:flex;

justify-content:space-between;

align-items:center;

padding:16px 0;

border-bottom:1px solid rgba(255,255,255,.05);

}

.setting-item:last-child{

border:none;

}

.setting-left h4{

font-size:16px;

margin-bottom:4px;

}

.setting-left p{

font-size:13px;

color:var(--muted);

}

/* ==========================
   SWITCH
========================== */

.switch{

position:relative;

width:56px;

height:30px;

}

.switch input{

display:none;

}

.slider{

position:absolute;

inset:0;

background:#1F2937;

border-radius:999px;

cursor:pointer;

transition:.3s;

}

.slider:before{

content:"";

position:absolute;

left:4px;

top:4px;

width:22px;

height:22px;

background:white;

border-radius:50%;

transition:.3s;

}

.switch input:checked + .slider{

background:linear-gradient(135deg,var(--primary),var(--secondary));

}

.switch input:checked + .slider:before{

transform:translateX(26px);

}

/* ==========================
   TOAST
========================== */

.toast{

position:fixed;

right:25px;

top:25px;

min-width:300px;

padding:18px 22px;

border-radius:18px;

background:rgba(17,24,39,.95);

border:1px solid rgba(255,255,255,.08);

backdrop-filter:blur(18px);

box-shadow:0 18px 50px rgba(0,0,0,.35);

z-index:9999;

opacity:0;

transform:translateY(-15px);

transition:.3s;

}

.toast.show{

opacity:1;

transform:translateY(0);

}

.toast.success{

border-left:5px solid #22C55E;

}

.toast.error{

border-left:5px solid #EF4444;

}

.toast.warning{

border-left:5px solid #F59E0B;

}

/* ==========================
   MODAL
========================== */

.modal{

position:fixed;

inset:0;

background:rgba(0,0,0,.65);

display:none;

align-items:center;

justify-content:center;

backdrop-filter:blur(8px);

z-index:9998;

}

.modal.active{

display:flex;

}

.modal-content{

width:520px;

max-width:92%;

padding:34px;

border-radius:26px;

background:var(--panel2);

border:1px solid var(--border);

box-shadow:0 25px 70px rgba(0,0,0,.45);

}

.modal-content h2{

margin-bottom:16px;

}

.modal-content p{

color:var(--muted);

line-height:1.8;

margin-bottom:24px;

}

.modal-actions{

display:flex;

justify-content:flex-end;

gap:12px;

}

/* ==========================
   DARK MODE
========================== */

body.dark-mode{

--bg:#05070D;

--panel:rgba(10,15,25,.88);

--panel2:rgba(15,20,32,.92);

--border:rgba(255,255,255,.05);

--text:#FFFFFF;

--muted:#9CA3AF;

}
/* =========================================================
   MIRARLABS QUEST V3
   STYLE PART 2D
   Responsive • Animation • Skeleton • Scrollbar
=========================================================*/

/* ==========================
   SCROLLBAR
========================== */

::-webkit-scrollbar{
width:10px;
height:10px;
}

::-webkit-scrollbar-track{
background:#0B1220;
}

::-webkit-scrollbar-thumb{
background:linear-gradient(
180deg,
var(--primary),
var(--secondary)
);
border-radius:999px;
}

::-webkit-scrollbar-thumb:hover{
background:linear-gradient(
180deg,
#8B5CF6,
#3B82F6
);
}

/* ==========================
   SELECTION
========================== */

::selection{
background:rgba(124,58,237,.35);
color:#fff;
}

/* ==========================
   CARD HOVER
========================== */

.hero-card,
.stat-card,
.panel,
.reward-card,
.profile-box,
.profile-sidebar,
.settings-group,
.leaderboard-card{

transition:
transform .28s,
box-shadow .28s,
border-color .28s;

}

.hero-card:hover,
.stat-card:hover,
.panel:hover,
.reward-card:hover,
.profile-box:hover,
.profile-sidebar:hover,
.settings-group:hover,
.leaderboard-card:hover{

transform:translateY(-6px);

border-color:
rgba(124,58,237,.35);

box-shadow:
0 22px 70px
rgba(124,58,237,.18);

}

/* ==========================
   BUTTON EFFECT
========================== */

button{

position:relative;

overflow:hidden;

}

button::before{

content:"";

position:absolute;

left:-120%;

top:0;

width:120%;

height:100%;

background:

linear-gradient(

90deg,

transparent,

rgba(255,255,255,.18),

transparent

);

transition:.55s;

}

button:hover::before{

left:120%;

}

/* ==========================
   FLOAT
========================== */

@keyframes floating{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-6px);

}

100%{

transform:translateY(0);

}

}

.hero-side{

animation:

floating

6s ease-in-out infinite;

}

/* ==========================
   FADE
========================== */

@keyframes fadeUp{

from{

opacity:0;

transform:

translateY(18px);

}

to{

opacity:1;

transform:

translateY(0);

}

}

.hero,
.stats,
.dashboard-grid,
.profile-layout{

animation:

fadeUp .6s ease;

}

/* ==========================
   PULSE
========================== */

@keyframes pulseGlow{

0%{

box-shadow:

0 0 0 rgba(124,58,237,.2);

}

50%{

box-shadow:

0 0 30px rgba(124,58,237,.25);

}

100%{

box-shadow:

0 0 0 rgba(124,58,237,.2);

}

}

.wallet-btn{

animation:

pulseGlow

3s infinite;

}

/* ==========================
   SKELETON
========================== */

.skeleton{

position:relative;

overflow:hidden;

background:#1F2937;

border-radius:16px;

}

.skeleton::after{

content:"";

position:absolute;

left:-100%;

top:0;

width:100%;

height:100%;

background:

linear-gradient(

90deg,

transparent,

rgba(255,255,255,.12),

transparent

);

animation:

loading

1.3s infinite;

}

@keyframes loading{

100%{

left:100%;

}

}

/* ==========================
   EMPTY STATE
========================== */

.empty-state{

padding:50px 30px;

text-align:center;

opacity:.8;

}

.empty-state img{

width:120px;

margin-bottom:20px;

opacity:.6;

}

.empty-state h3{

margin-bottom:10px;

}

.empty-state p{

color:var(--muted);

line-height:1.8;

}

/* ==========================
   MOBILE
========================== */

@media (max-width:1200px){

.dashboard-grid{

grid-template-columns:1fr;

}

.stats{

grid-template-columns:repeat(2,1fr);

}

.hero{

grid-template-columns:1fr;

}

.profile-layout{

grid-template-columns:1fr;

}

}

/* ==========================
   TABLET
========================== */

@media (max-width:900px){

.sidebar{

width:90px;

padding:20px 10px;

}

.brand h2,
.brand p{

display:none;

}

.sidebar nav a{

justify-content:center;

font-size:20px;

}

.sidebar nav a span{

display:none;

}

.main{

margin-left:90px;

}

}

/* ==========================
   PHONE
========================== */

@media (max-width:768px){

body{

display:block;

}

.sidebar{

position:relative;

width:100%;

height:auto;

display:flex;

flex-direction:column;

}

.main{

margin-left:0;

padding:20px;

}

.topbar{

flex-direction:column;

align-items:flex-start;

gap:20px;

}

.top-actions{

width:100%;

justify-content:space-between;

}

.stats{

grid-template-columns:1fr;

}

.hero-buttons{

flex-direction:column;

}

.wallet-btn,
.primary,
.secondary{

width:100%;

}

.profile-stats{

grid-template-columns:1fr;

}

}

/* ==========================
   EXTRA SMALL
========================== */

@media (max-width:480px){

.hero-card{

padding:22px;

}

.panel{

padding:20px;

}

.stat-card{

padding:20px;

}

.profile-sidebar{

padding:22px;

}

.reward-card{

padding:20px;

}

}

/* ===== PATCH V3 SYNC ===== */

.top-left{flex:1;display:flex;align-items:center}
.top-right{display:flex;align-items:center;gap:14px}
.search-box{
display:flex;
align-items:center;
gap:10px;
width:100%;
max-width:520px;
padding:14px 18px;
background:var(--panel);
border:1px solid var(--border);
border-radius:18px;
}
.search-box input{
flex:1;
background:transparent;
border:none;
outline:none;
color:var(--text);
font-size:15px;
}
.icon-btn{
width:48px;height:48px;
border:none;
border-radius:14px;
background:var(--panel);
color:#fff;
cursor:pointer;
position:relative;
}
.notify-dot{
position:absolute;
right:10px;
top:10px;
width:8px;
height:8px;
background:#ef4444;
border-radius:50%;
}
.profile-menu{
display:flex;
align-items:center;
gap:12px;
padding:8px 14px;
background:var(--panel);
border:1px solid var(--border);
border-radius:18px;
}
.profile-menu img{
width:42px;
height:42px;
border-radius:50%;
object-fit:cover;
}
.welcome-banner{
display:flex;
justify-content:space-between;
align-items:center;
gap:20px;
margin:24px 0 30px;
padding:28px;
background:var(--panel);
border:1px solid var(--border);
border-radius:24px;
}
.welcome-right{
display:flex;
gap:16px;
}
.mini-card{
background:rgba(255,255,255,.04);
padding:16px 18px;
border-radius:18px;
min-width:120px;
text-align:center;
}
.hero-main,.hero-side{display:flex;flex-direction:column}
.hero-info{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:14px;
margin-top:24px;
}
.hero-info>div{
background:rgba(255,255,255,.04);
padding:16px;
border-radius:18px;
}
.season-card-large{
background:var(--panel);
border:1px solid var(--border);
border-radius:28px;
padding:28px;
}
.hero-wallet{margin-top:22px;width:100%}
.quest-grid{display:grid;gap:18px}
.quest-card{
display:flex;
align-items:center;
justify-content:space-between;
gap:18px;
}
.quest-icon{
width:58px;
height:58px;
display:flex;
align-items:center;
justify-content:center;
font-size:24px;
border-radius:16px;
background:linear-gradient(135deg,var(--primary),var(--secondary));
}
.quest-body{flex:1}
.reward-tag{
display:inline-block;
margin-top:10px;
padding:6px 12px;
border-radius:999px;
background:rgba(124,58,237,.15);
color:#c4b5fd;
font-size:12px;
font-weight:700;
}
.panel-header{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:20px;
}
.dashboard-bottom{
display:grid;
grid-template-columns:2fr 1fr;
gap:22px;
margin-top:22px;
}
.activity-item{
display:flex;
gap:14px;
align-items:center;
padding:14px 0;
border-bottom:1px solid rgba(255,255,255,.05);
}
.referral-box{text-align:center}
.menu-badge,.menu-counter{
margin-left:auto;
padding:3px 8px;
border-radius:999px;
font-size:11px;
font-weight:700;
background:rgba(124,58,237,.18);
color:#c4b5fd;
}
.page-title{margin-bottom:24px}
.achievement-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
}
.achievement-card{
padding:24px;
background:var(--panel);
border:1px solid var(--border);
border-radius:22px;
text-align:center;
}
@media(max-width:1100px){
.welcome-banner,.dashboard-bottom,.hero{grid-template-columns:1fr;display:block}
.welcome-right{margin-top:20px;flex-wrap:wrap}
.hero-info{grid-template-columns:1fr}
}


/* ==== FINAL SYNC PATCH ==== */
.topbar{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
.search-box{width:100%}
.search-box svg{flex:0 0 auto;color:#94A3B8}
.search-box input{width:100%}
.profile-menu{min-width:220px}
.profile-info{display:flex;flex-direction:column;line-height:1.2}
.dropdown-arrow{margin-left:auto;color:#94A3B8}
.welcome-left h1{font-size:52px;line-height:1.05;margin:10px 0}
.season-tag{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(124,58,237,.18);color:#c4b5fd;font-weight:700}
.hero{align-items:start}
.hero-main{gap:18px}
.hero-side{justify-content:flex-start}
.season-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:20px 0}
.hero-wallet,.wallet-btn{border:none;border-radius:16px;padding:15px 22px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-weight:700}
.hero-info strong,.season-grid strong{display:block;font-size:22px;margin-top:6px}
.quest-card{background:rgba(255,255,255,.03);padding:18px;border-radius:18px;border:1px solid var(--border)}
.dashboard-bottom{margin-bottom:40px}


/* ===== UI POLISH PATCH ===== */
.sidebar{
background:linear-gradient(180deg,#080d18,#0b1323)!important;
box-shadow:20px 0 60px rgba(0,0,0,.35);
}
.main{padding:28px 34px 40px;}
.search-box{
height:54px!important;
max-width:430px!important;
background:rgba(255,255,255,.03)!important;
}
.search-box input::placeholder{color:#7b8798}
.wallet-btn{
height:52px;
padding:0 24px!important;
font-size:15px;
}
.welcome-banner{
padding:22px 28px!important;
}
.welcome-left h1{
font-size:46px!important;
max-width:520px;
}
.hero{
grid-template-columns:minmax(0,2fr) 340px!important;
gap:24px!important;
}
.hero-main{
padding-right:10px;
}
.hero-side .season-card-large{
position:sticky;
top:28px;
}
.hero-info{
grid-template-columns:repeat(3,1fr)!important;
}
.hero-info>div,.mini-card,.stat-card,.panel,.reward-card{
box-shadow:0 12px 36px rgba(0,0,0,.22);
}
.panel:hover,.stat-card:hover,.reward-card:hover{
transform:translateY(-8px) scale(1.01);
}
.quest-card{
padding:20px!important;
transition:.25s;
}
.quest-card:hover{
background:rgba(124,58,237,.08)!important;
}
.profile-menu{
min-width:240px;
justify-content:space-between;
}
.profile-menu img{
width:46px!important;
height:46px!important;
background:#1b2333;
}
@media(max-width:1200px){
.hero{grid-template-columns:1fr!important;}
.hero-side{margin-top:20px;}
.search-box{max-width:none!important;}
}
