*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Segoe UI',sans-serif;
}

body{
background:url("../images/IMG_6677.JPG") center center/cover no-repeat fixed;
color:white;
min-height:100vh;
line-height:1.6;
}

body::before{
content:"";
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.75);
z-index:-1;
}

header{
text-align:center;
padding:40px 20px;
background:rgba(0,0,0,0.4);
backdrop-filter:blur(10px);
}

header h1{
font-size:3rem;
margin-bottom:10px;
color:#4dd0ff;
}

header p{
font-size:1.2rem;
}

nav{
display:flex;
justify-content:center;
gap:25px;
padding:15px;
background:rgba(0,0,0,0.5);
backdrop-filter:blur(10px);
position:sticky;
top:0;
z-index:1000;
}

nav a{
color:white;
text-decoration:none;
font-weight:bold;
transition:0.3s;
}

nav a:hover{
color:#4dd0ff;
}

section{
max-width:1200px;
margin:25px auto;
padding:30px;
background:rgba(255,255,255,0.08);
backdrop-filter:blur(10px);
border-radius:20px;
}

.hero{
text-align:center;
}

.hero img{
width:220px;
max-width:90%;
border-radius:20px;
margin-bottom:20px;
box-shadow:0 0 25px rgba(77,208,255,0.5);
}

.hero h1{
font-size:2.8rem;
color:#4dd0ff;
margin-bottom:15px;
}

.categories h2,
.featured h2,
.articles h2,
.gallery h2,
.updates h2,
.about h2,
.submit-section h2{
text-align:center;
margin-bottom:20px;
color:#4dd0ff;
}

.category-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
}

.category-box{
text-decoration:none;
color:white;
padding:25px;
border-radius:15px;
background:rgba(255,255,255,0.05);
transition:0.3s;
text-align:center;
border:1px solid rgba(255,255,255,0.1);
}

.category-box:hover{
transform:translateY(-5px);
box-shadow:0 0 20px rgba(77,208,255,0.5);
}

.icon{
font-size:45px;
margin-bottom:10px;
}

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

.submit-btn{
display:inline-block;
padding:15px 35px;
background:#4dd0ff;
color:black;
text-decoration:none;
font-weight:bold;
border-radius:12px;
margin-top:15px;
transition:0.3s;
}

.submit-btn:hover{
background:white;
transform:scale(1.05);
}

.article,
.update-card{
background:rgba(255,255,255,0.05);
padding:20px;
margin-top:15px;
border-radius:15px;
border:1px solid rgba(255,255,255,0.1);
}

.article a{
display:inline-block;
margin-top:10px;
padding:10px 20px;
background:#4dd0ff;
color:black;
text-decoration:none;
border-radius:8px;
font-weight:bold;
}

.gallery-container{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
}

.gallery-container img{
width:100%;
height:250px;
object-fit:cover;
border-radius:15px;
}

.about p,
.hero p{
text-align:center;
}

footer{
text-align:center;
padding:30px;
background:rgba(0,0,0,0.7);
margin-top:40px;
}

@media(max-width:768px){

header h1{
font-size:2rem;
}

.hero h1{
font-size:2rem;
}

nav{
flex-wrap:wrap;
gap:15px;
}

section{
margin:15px;
padding:20px;
}

.category-grid,
.gallery-container{
grid-template-columns:1fr;
}

.hero img{
width:180px;
}

}

.district-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:15px;
    padding:20px;
}

.district{
    display:block;
    width:100%;
    background:#2563eb;
    color:white;
    border:1px solid rgba(255,255,255,.45);
    padding:18px 14px;
    border-radius:12px;
    text-align:center;
    font-weight:bold;
    font-size:1rem;
    cursor:pointer;
    transition:.25s ease;
}

.district:hover,
.district.active{
    transform:translateY(-3px);
    box-shadow:0 0 15px rgba(77,208,255,.5);
}

.sheet-message{
    margin-top:15px;
    padding:24px;
    text-align:center;
    border:1px solid rgba(255,255,255,.15);
    border-radius:15px;
    background:rgba(255,255,255,.05);
}

.sheet-message span{
    display:inline-block;
    margin-top:8px;
    opacity:.9;
}

.no-file{
    margin-top:12px;
    opacity:.75;
}

.latest{
    margin-top:40px;
}

#latestCreations{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:20px;
}

table{
    width:100%;
    border-collapse:collapse;
    margin-top:20px;
    background:rgba(255,255,255,.08);
}

th,td{
    padding:15px;
    border:1px solid rgba(255,255,255,.15);
    text-align:center;
}

th{background:#2563eb;}
tr:hover{background:rgba(255,255,255,.08);}

/* Creation list - no stray/overflow message */
#creationList{min-height:40px;}
.empty-creations{margin:0;padding:24px;text-align:center;}
