:root{--bg:#0d0f14;--panel:#151922;--panel2:#1d2230;--text:#f7f7fb;--muted:#969dad;--accent:#7c4dff;--line:#2a3040;--danger:#ef5350}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial}.center{min-height:100vh;display:grid;place-items:center;padding:28px}.card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 70px #0005}.card{padding:34px}.wide{width:min(900px,96vw)}.login{width:min(430px,95vw)}h1,h2,h3{margin-top:0}.muted,small{color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:.18em;color:#a88cff;font-weight:800;margin-bottom:10px}.brandmark{font-size:46px;color:#9a7cff}.form{display:grid;gap:18px}.form label{display:grid;gap:8px;color:#cfd4df;font-size:14px}.form input,.form select{width:100%;background:#0e1118;color:white;border:1px solid #32394a;border-radius:11px;padding:13px 14px;font:inherit}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.btn{display:inline-block;border:0;border-radius:11px;padding:13px 18px;text-decoration:none;color:white;font-weight:700;cursor:pointer}.primary{background:linear-gradient(135deg,#7651ff,#9c4dff)}.danger{background:#50262a}.alert{background:#4a2024;padding:12px;border-radius:10px;margin:12px 0}.success{color:#b9f6ca;margin-bottom:16px}.home{background:radial-gradient(circle at 50% 0,#24183e 0,#0d0f14 45%)}.launcher{text-align:center;width:min(900px,95vw)}.launch-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px}.launch-card{background:#151922;border:1px solid #303749;border-radius:24px;padding:42px 25px;text-decoration:none;color:white;display:grid;gap:10px;transition:.2s}.launch-card:hover{transform:translateY(-3px);border-color:#7c4dff}.launch-card span{font-size:42px}.launch-card b{font-size:21px}.launch-card small{font-size:14px}
.admin{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:30px 22px;background:#11151d;border-right:1px solid var(--line);display:flex;flex-direction:column}.sidebar nav{display:grid;gap:8px;margin-top:35px}.sidebar nav a,.logout{color:#cdd2dd;text-decoration:none;padding:12px 14px;border-radius:10px}.sidebar nav a:hover{background:#1e2430;color:white}.logout{margin-top:auto}.content{margin-left:250px;padding:35px;width:calc(100% - 250px)}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.user{background:#202634;padding:10px 14px;border-radius:999px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stat{background:linear-gradient(145deg,#181d27,#12161e);border:1px solid var(--line);border-radius:18px;padding:22px}.stat small{display:block}.stat strong{display:block;font-size:32px;margin-top:8px}.panel{padding:24px}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel-head a{color:#a98dff}.thumb-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.thumb-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px}.frame-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.frame-preview{height:260px;background:#0c0f15;border:1px dashed #394154;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;overflow:hidden}.frame-preview img{max-width:100%;max-height:100%;object-fit:contain}.empty{text-align:center;color:#8e96a7}.photo-admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.photo-card{overflow:hidden;background:#0f131b;border:1px solid var(--line);border-radius:15px}.photo-card img{width:100%;aspect-ratio:16/10;object-fit:cover}.photo-card>div{padding:12px;display:grid;gap:5px}.actions{display:flex;gap:12px;margin-top:8px}.actions a{color:#b29cff}.actions .red{color:#ff8a80}.photo-download{width:min(720px,95vw);text-align:center}.photo-download img{display:block;max-width:100%;max-height:65vh;margin:20px auto;border-radius:14px}
@media(max-width:800px){.grid2,.launch-grid,.frame-grid{grid-template-columns:1fr}.sidebar{width:76px;padding:20px 8px}.sidebar h2,.sidebar .eyebrow{display:none}.sidebar nav a{font-size:0}.sidebar nav a::first-letter{font-size:20px}.content{margin-left:76px;width:calc(100% - 76px);padding:20px}.stats{grid-template-columns:1fr 1fr}.thumb-grid,.photo-admin-grid{grid-template-columns:repeat(2,1fr)}}
