/* =====================================================
   RoshdServer Maintenance Page
   Version : 1.0
===================================================== */

:root{

--bg:#050816;
--bg2:#09152d;
--primary:#00d4ff;
--secondary:#2563eb;
--success:#22c55e;
--warning:#f59e0b;
--danger:#ef4444;

--text:#ffffff;
--text2:#cbd5e1;

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

--radius:22px;

}

*{

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

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Vazirmatn',sans-serif;

background:
radial-gradient(circle at top right,#123c8a55,transparent 40%),
radial-gradient(circle at bottom left,#00d4ff22,transparent 35%),
linear-gradient(135deg,var(--bg),var(--bg2));

color:var(--text);

overflow-x:hidden;

min-height:100vh;

position:relative;

}

a{

text-decoration:none;

color:white;

}

img{

max-width:100%;

display:block;

}

.container{

width:min(1200px,92%);

margin:auto;

padding:70px 0;

position:relative;

z-index:2;

}

.glass-card{

background:var(--glass);

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

backdrop-filter:blur(18px);

border-radius:32px;

padding:55px;

box-shadow:

0 0 50px rgba(0,0,0,.45),

0 0 120px rgba(0,212,255,.08);

overflow:hidden;

position:relative;

}

.glass-card::before{

content:"";

position:absolute;

top:-120px;

right:-120px;

width:320px;

height:320px;

background:#00d4ff20;

filter:blur(80px);

border-radius:50%;

}

.glass-card::after{

content:"";

position:absolute;

bottom:-150px;

left:-100px;

width:280px;

height:280px;

background:#2563eb30;

filter:blur(100px);

border-radius:50%;

}

.logo-box{

display:flex;

flex-direction:column;

align-items:center;

justify-content:center;

margin-bottom:45px;

}

.logo-circle{

width:120px;

height:120px;

border-radius:50%;

background:linear-gradient(135deg,#00d4ff,#2563eb);

display:flex;

justify-content:center;

align-items:center;

font-size:40px;

font-weight:900;

position:relative;

box-shadow:

0 0 30px #00d4ff,

0 0 70px rgba(0,212,255,.45);

}

.pulse{

position:absolute;

width:100%;

height:100%;

border-radius:50%;

border:2px solid #00d4ff;

animation:pulse 2.5s infinite;

}

.logo-box h1{

margin-top:22px;

font-size:42px;

font-weight:800;

}

.logo-box p{

margin-top:8px;

color:var(--text2);

font-size:15px;

letter-spacing:4px;

text-transform:uppercase;

}
/* ===============================
   STATUS
================================ */

.status-label{

display:inline-flex;

align-items:center;

gap:12px;

padding:10px 18px;

background:rgba(34,197,94,.08);

border:1px solid rgba(34,197,94,.3);

border-radius:40px;

margin:0 auto 35px;

color:#8af5b2;

font-size:15px;

font-weight:600;

}

.status-label span{

width:12px;

height:12px;

border-radius:50%;

background:#22c55e;

box-shadow:

0 0 12px #22c55e,

0 0 25px #22c55e;

animation:blink 1.5s infinite;

}

/* ===============================
   TITLES
================================ */

h2{

font-size:42px;

font-weight:800;

text-align:center;

margin-bottom:25px;

line-height:1.6;

}

.description{

max-width:850px;

margin:auto;

text-align:center;

font-size:18px;

line-height:2.3;

color:var(--text2);

margin-bottom:45px;

}

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

.progress-wrapper{

margin-top:35px;

}

.progress-title{

display:flex;

justify-content:space-between;

margin-bottom:15px;

font-size:16px;

font-weight:700;

}

.progress-bar{

height:14px;

background:#0b1730;

border-radius:50px;

overflow:hidden;

box-shadow:inset 0 0 12px rgba(0,0,0,.4);

}

.progress-fill{

height:100%;

width:86%;

border-radius:50px;

background:linear-gradient(90deg,#00d4ff,#2563eb);

background-size:300%;

animation:

progressGlow 5s linear infinite;

}

/* ===============================
   COUNTDOWN
================================ */

.countdown-box{

display:grid;

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

gap:18px;

margin-top:50px;

margin-bottom:55px;

}

.count-item{

background:rgba(255,255,255,.05);

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

border-radius:20px;

padding:25px;

text-align:center;

transition:.35s;

}

.count-item:hover{

transform:translateY(-8px);

border-color:#00d4ff;

box-shadow:0 15px 35px rgba(0,212,255,.18);

}

.count-item span{

display:block;

font-size:42px;

font-weight:900;

color:var(--primary);

margin-bottom:10px;

}

.count-item label{

color:var(--text2);

font-size:15px;

}

/* ===============================
   SERVICE STATUS
================================ */

.service-status{

margin-top:20px;

}

.service-status h3{

font-size:28px;

margin-bottom:25px;

text-align:center;

}

.status-grid{

display:grid;

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

gap:20px;

}

.status-card{

background:rgba(255,255,255,.05);

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

border-radius:18px;

padding:22px;

display:flex;

align-items:center;

justify-content:space-between;

transition:.35s;

}

.status-card:hover{

transform:translateY(-5px);

border-color:#00d4ff;

}

.status-card .dot{

width:14px;

height:14px;

border-radius:50%;

margin-left:15px;

}

.status-card.online .dot{

background:#22c55e;

box-shadow:0 0 15px #22c55e;

}

.status-card.warning .dot{

background:#f59e0b;

box-shadow:0 0 15px #f59e0b;

}

.status-card b{

font-size:15px;

color:var(--text2);

}
/* =====================================================
   FEATURES
===================================================== */

.features{

display:grid;

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

gap:25px;

margin-top:70px;

margin-bottom:60px;

}

.feature-card{

background:rgba(255,255,255,.04);

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

border-radius:22px;

padding:35px;

text-align:center;

transition:.35s;

position:relative;

overflow:hidden;

}

.feature-card::before{

content:"";

position:absolute;

width:220px;

height:220px;

background:#00d4ff18;

border-radius:50%;

top:-120px;

left:-120px;

filter:blur(40px);

opacity:0;

transition:.4s;

}

.feature-card:hover::before{

opacity:1;

}

.feature-card:hover{

transform:translateY(-10px);

border-color:#00d4ff;

box-shadow:0 25px 45px rgba(0,212,255,.18);

}

.feature-card .icon{

font-size:48px;

margin-bottom:20px;

}

.feature-card h4{

font-size:23px;

margin-bottom:15px;

}

.feature-card p{

line-height:2;

color:var(--text2);

}

/* =====================================================
   NOTICE
===================================================== */

.notice{

margin-top:60px;

background:linear-gradient(135deg,#0b1730,#10254f);

border-radius:24px;

padding:40px;

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

text-align:center;

}

.notice h3{

font-size:28px;

margin-bottom:20px;

}

.notice p{

line-height:2.3;

font-size:17px;

color:var(--text2);

}

/* =====================================================
   CONTACT
===================================================== */

.contact-box{

margin-top:60px;

text-align:center;

}

.contact-box h3{

font-size:30px;

margin-bottom:30px;

}

.buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn{

padding:16px 34px;

border-radius:14px;

font-weight:700;

transition:.35s;

display:inline-flex;

align-items:center;

justify-content:center;

min-width:220px;

}

.telegram{

background:#229ED9;

}

.phone{

background:#16a34a;

}

.btn:hover{

transform:translateY(-5px);

filter:brightness(1.08);

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

}

/* =====================================================
   SYSTEM INFO
===================================================== */

.system-info{

display:grid;

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

gap:25px;

margin-top:70px;

}

.info-box{

background:rgba(255,255,255,.04);

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

border-radius:22px;

padding:35px;

}

.info-box h3{

margin-bottom:25px;

font-size:24px;

}

.info-box ul{

list-style:none;

}

.info-box ul li{

padding:14px 0;

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

display:flex;

gap:12px;

align-items:center;

color:var(--text2);

}

.info-box ul li:last-child{

border:none;

}

.specs{

display:grid;

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

gap:18px;

}

.spec{

background:#0c1b38;

border-radius:18px;

padding:20px;

text-align:center;

}

.spec strong{

display:block;

font-size:26px;

color:var(--primary);

margin-bottom:8px;

}

.spec span{

color:var(--text2);

font-size:14px;

}
/* =====================================================
   FOOTER
===================================================== */

footer{

margin-top:80px;

padding-top:40px;

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

text-align:center;

}

.footer-top h3{

font-size:30px;

font-weight:800;

margin-bottom:15px;

}

.footer-top p{

color:var(--text2);

font-size:16px;

line-height:2;

max-width:650px;

margin:0 auto 35px;

}

.footer-contact{

display:flex;

justify-content:center;

align-items:center;

flex-wrap:wrap;

gap:20px;

margin-bottom:30px;

}

.footer-contact a{

padding:14px 26px;

border-radius:14px;

background:rgba(255,255,255,.05);

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

transition:.35s;

font-weight:600;

}

.footer-contact a:hover{

background:#00d4ff;

color:#05101f;

transform:translateY(-5px);

}

.copyright{

padding:25px 0;

font-size:14px;

color:#94a3b8;

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

}

/* =====================================================
   BACKGROUND EFFECTS
===================================================== */

#particles{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

pointer-events:none;

z-index:0;

}

.background-grid{

position:fixed;

inset:0;

background-image:

linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),

linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);

background-size:40px 40px;

opacity:.4;

z-index:0;

}

.blur{

position:fixed;

border-radius:50%;

filter:blur(120px);

z-index:0;

}

.blur1{

width:350px;

height:350px;

background:#00d4ff22;

top:-120px;

right:-120px;

}

.blur2{

width:300px;

height:300px;

background:#2563eb22;

bottom:-120px;

left:-120px;

}

/* =====================================================
   ANIMATIONS
===================================================== */

@keyframes pulse{

0%{

transform:scale(1);

opacity:1;

}

70%{

transform:scale(1.45);

opacity:0;

}

100%{

transform:scale(1.45);

opacity:0;

}

}

@keyframes blink{

0%,100%{

opacity:1;

}

50%{

opacity:.35;

}

}

@keyframes progressGlow{

0%{

background-position:0%;

}

100%{

background-position:300%;

}

}

@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-10px);

}

100%{

transform:translateY(0);

}

}

/* =====================================================
   RESPONSIVE
===================================================== */

@media(max-width:992px){

.features{

grid-template-columns:1fr;

}

.system-info{

grid-template-columns:1fr;

}

.status-grid{

grid-template-columns:1fr;

}

.countdown-box{

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

}

.glass-card{

padding:35px;

}

}

@media(max-width:768px){

.logo-circle{

width:90px;

height:90px;

font-size:32px;

}

.logo-box h1{

font-size:34px;

}

h2{

font-size:28px;

}

.description{

font-size:16px;

line-height:2;

}

.count-item span{

font-size:30px;

}

.buttons{

flex-direction:column;

}

.btn{

width:100%;

}

}

@media(max-width:480px){

.container{

width:94%;

}

.glass-card{

padding:25px 18px;

border-radius:20px;

}

.countdown-box{

grid-template-columns:1fr 1fr;

gap:12px;

}

.status-label{

font-size:13px;

padding:8px 14px;

}

.notice{

padding:25px;

}

.notice h3{

font-size:22px;

}

.notice p{

font-size:15px;

}

.footer-top h3{

font-size:24px;

}

.footer-contact{

flex-direction:column;

}

}