:root{--bg:#111318;--card:#1d222b;--text:#f5f7fb;--muted:#aab3c2;--accent:#23c483;--accent2:#303848;--danger:#ff6b6b}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#0d0f14,#171b23);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.wrap{max-width:1120px;margin:0 auto;padding:24px}.card{background:rgba(29,34,43,.96);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:24px;margin:18px 0;box-shadow:0 18px 40px rgba(0,0,0,.28)}.center{text-align:center}.login{max-width:460px;margin:10vh auto}.kicker{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em}h1,h2{margin-top:0}a{color:var(--accent)}.button{display:inline-block;background:var(--accent);color:#06130d;text-decoration:none;border:0;border-radius:999px;padding:12px 18px;font-weight:800;margin:5px;cursor:pointer}.button.big{font-size:1.15rem;padding:15px 24px}.button.secondary{background:var(--accent2);color:var(--text)}input{width:100%;max-width:520px;background:#0f131a;color:var(--text);border:1px solid #3b4556;border-radius:12px;padding:13px;margin:8px 0 15px;font-size:1rem}.form-grid{display:grid;grid-template-columns:1fr 220px auto;gap:14px;align-items:end}.codebox{background:#0f131a;border:1px solid #303848;border-radius:14px;padding:12px;margin:10px 0;word-break:break-all;color:#e9eef7}.topbar{display:flex;gap:16px;justify-content:space-between;align-items:center}.success{background:#123d2a;border:1px solid #23c483;padding:12px;border-radius:14px}.error{background:#491d24;border:1px solid var(--danger);padding:12px;border-radius:14px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}.tile{background:var(--card);border:1px solid rgba(255,255,255,.08);border-radius:18px;overflow:hidden}.tile img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.tile-download{display:block;text-align:center;padding:12px;text-decoration:none;font-weight:800}.single-photo{max-width:100%;max-height:72vh;border-radius:18px;box-shadow:0 18px 40px rgba(0,0,0,.35)}summary{cursor:pointer;color:var(--accent);font-weight:800}@media(max-width:760px){.wrap{padding:14px}.form-grid{grid-template-columns:1fr}.card{padding:18px;border-radius:18px}.topbar{display:block}.button{width:100%;text-align:center}}
