:root{
    --dark:#05080b;
    --panel:#0d1519;
    --panel2:#111e24;
    --blue:#0f7f91;
    --blue2:#16a6b8;
    --cream:#f1e7d2;
    --muted:#9fb0b4;
    --danger:#ff6b6b;
    --success:#78d99f;
}
*{box-sizing:border-box}
body{
    margin:0;
    font-family:Arial, Helvetica, sans-serif;
    background:
        radial-gradient(circle at 20% 5%, rgba(22,166,184,.30), transparent 28%),
        radial-gradient(circle at 80% 12%, rgba(255,255,255,.10), transparent 20%),
        linear-gradient(180deg, #020304, #091013 55%, #020304);
    color:var(--cream);
    min-height:100vh;
}
body:before{
    content:"";
    position:fixed;
    inset:0;
    background:
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px);
    background-size:38px 38px;
    pointer-events:none;
}
.page{
    width:min(1050px, 94vw);
    margin:0 auto;
    padding:34px 0 70px;
    position:relative;
}
.admin-link-wrap{
    display:flex;
    justify-content:flex-end;
    margin-bottom:14px;
}
.admin-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    text-decoration:none;
    color:var(--cream);
    background:rgba(15,127,145,.20);
    border:1px solid rgba(22,166,184,.50);
    border-radius:999px;
    padding:10px 16px;
    font-weight:800;
    font-size:.95rem;
    box-shadow:0 8px 24px rgba(0,0,0,.22);
}
.admin-link:before{
    content:"⚙";
    font-size:1rem;
}
.admin-link:hover{
    background:rgba(22,166,184,.32);
    border-color:rgba(241,231,210,.35);
}
.hero{
    text-align:center;
    padding:42px 22px 32px;
    border:1px solid rgba(241,231,210,.18);
    background:
        linear-gradient(135deg, rgba(15,127,145,.25), rgba(0,0,0,.15)),
        rgba(0,0,0,.35);
    box-shadow:0 20px 70px rgba(0,0,0,.42);
    border-radius:28px;
    overflow:hidden;
}
.hero.small{padding:30px 22px}
.eyebrow{
    letter-spacing:.34em;
    text-transform:uppercase;
    font-size:.82rem;
    color:var(--muted);
    margin-bottom:16px;
}
h1{
    margin:0;
    text-transform:uppercase;
    line-height:.92;
    font-size:clamp(2.7rem, 8.5vw, 7rem);
    letter-spacing:.02em;
    text-shadow:0 5px 0 rgba(0,0,0,.45);
}
h1 span{color:var(--blue2)}
.hero p{
    max-width:780px;
    margin:24px auto 0;
    color:#d8e0df;
    font-size:1.08rem;
    line-height:1.55;
}
.card{
    background:linear-gradient(180deg, rgba(17,30,36,.96), rgba(9,14,18,.96));
    border:1px solid rgba(241,231,210,.17);
    border-radius:24px;
    margin-top:24px;
    padding:26px;
    box-shadow:0 12px 40px rgba(0,0,0,.30);
}
.card h2{margin-top:0;font-size:1.75rem}
.grid,.upload-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}
.upload-grid{grid-template-columns:repeat(3,minmax(0,1fr)); margin:18px 0}
label{
    display:block;
    font-weight:700;
    color:var(--cream);
    margin:16px 0;
}
input, textarea{
    width:100%;
    margin-top:8px;
    border:1px solid rgba(241,231,210,.18);
    background:#071014;
    color:#fff;
    border-radius:14px;
    padding:13px 14px;
    font-size:1rem;
    outline:none;
}
input:focus, textarea:focus{border-color:var(--blue2); box-shadow:0 0 0 3px rgba(22,166,184,.18)}
small,.hint{color:var(--muted)}
.check{
    display:flex;
    gap:12px;
    align-items:flex-start;
    font-weight:400;
}
.check input{width:auto;margin-top:2px}
button,.button{
    display:inline-block;
    text-decoration:none;
    border:0;
    border-radius:999px;
    padding:14px 22px;
    font-size:1rem;
    font-weight:900;
    color:#041014;
    background:linear-gradient(90deg, var(--cream), #fff5db);
    cursor:pointer;
    box-shadow:0 8px 24px rgba(0,0,0,.25);
}
.button.secondary{
    color:var(--cream);
    background:rgba(15,127,145,.22);
    border:1px solid rgba(22,166,184,.55);
}
.button.ghost{
    color:var(--muted);
    background:transparent;
    border:1px solid rgba(255,255,255,.18);
}
.alert{
    background:rgba(255,107,107,.12);
    border:1px solid rgba(255,107,107,.45);
    color:#ffd5d5;
    padding:14px 16px;
    border-radius:16px;
    margin:20px 0;
}
.success{
    border-color:rgba(120,217,159,.45);
    background:rgba(120,217,159,.10);
}
.topbar{
    margin:24px 0 0;
    display:flex;
    gap:12px;
    align-items:center;
    flex-wrap:wrap;
}
.topbar strong{margin-right:auto}
.entry-head{
    display:flex;
    justify-content:space-between;
    gap:18px;
    border-bottom:1px solid rgba(255,255,255,.12);
    padding-bottom:16px;
}
.meta,.contact{color:var(--muted)}
.contact{text-align:right}
.contact a{color:var(--blue2)}
.details{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 24px;
}
.details p{line-height:1.45}
.files{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:12px;
}
.login{max-width:480px;margin-left:auto;margin-right:auto}
@media(max-width:760px){
    .grid,.upload-grid,.details{grid-template-columns:1fr}
    .entry-head{display:block}
    .contact{text-align:left}
    .page{width:min(94vw, 680px)}
}
