/* core styles */:root{--bg:#0f172a;--text:#e5e7eb;--muted:#94a3b8;--frame:#fff;--radius:18px}
*{box-sizing:border-box}html,body{height:100%}
body{
    margin: 0;
    padding: 24px;
    font: 16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Helvetica,Arial,'Noto Sans',sans-serif;
    color: #FFFFFF;
    background: radial-gradient(1200px 600px at 15% -10%, #1f2937 0, var(--bg) 60%)
}
.wrapper{background:var(--bg);border:4px solid var(--frame);border-radius:var(--radius);overflow:hidden;max-width:1200px;margin:auto;box-shadow:0 18px 40px rgba(0,0,0,.35)}
.banner img{display:block;width:100%;height:auto}
.gallery{padding:20px;display:flex;flex-direction:column;gap:14px}
.row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:860px){.row{grid-template-columns:repeat(2,1fr)}}
.card{display:block;text-decoration:none;color:inherit;background:#0b1220;border:1px solid #1e293b;border-radius:12px;overflow:hidden}
.thumb{display:block;width:100%;height:170px;object-fit:contain;background:#fff;transition:transform .18s ease}
.card:hover .thumb{transform:scale(1.04)}
.caption{
    text-align: center;
    color: #FFFFFF;
    font-size: .9rem;
    padding: .5rem .75rem;
    background: linear-gradient(#0b1220,#0e1626);
    border-top: 1px solid #1e293b
}
.footer{color:var(--muted);text-align:center;padding:18px 12px;border-top:1px solid #1e293b}
.page{width:min(1000px,94vw);margin:auto;padding:14px}
.big{display:block;width:100%;height:auto;background:#fff;border:1px solid #1e293b;border-radius:10px}
.back{display:inline-block;margin:10px 0 0;padding:.45rem .75rem;border:1px solid #1e293b;border-radius:8px;color:var(--text);text-decoration:none}
.back:hover{background:#111827}
