:root{
  --bg:#0a0a0b; --fg:#e8e8e6; --muted:#9a9a96; --line:#1e1e20; --accent:#d6ff5c;
  --card:#121214; --radius:14px;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg);font:14px/1.5 Inter,system-ui,sans-serif}
.topbar{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);background:rgba(10,10,11,.9);backdrop-filter:blur(12px)}
.brand{display:flex;gap:12px;align-items:baseline}
.brand span{color:var(--muted);font-size:12px}
.controls{display:flex;gap:8px}
.controls input,.controls select{background:var(--card);color:var(--fg);border:1px solid var(--line);border-radius:10px;padding:8px 12px;min-width:180px}
.controls input{width:320px}
main{max-width:1600px;margin:0 auto;padding:18px}
.breadcrumb{color:var(--muted);font-size:12px;margin-bottom:12px}
.gallery{columns:320px 4;column-gap:12px}
@media(max-width:900px){.gallery{columns:2} .controls input{width:100%}}
figure{break-inside:avoid;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:0 0 12px 0;position:relative;cursor:zoom-in}
figure img{width:100%;height:auto;display:block;background:#1a1a1c}
figure figcaption{padding:10px 12px}
figure .meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.tag{font-size:11px;border:1px solid var(--line);padding:2px 8px;border-radius:999px;color:var(--muted)}
figure .path{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.empty{padding:60px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:var(--radius)}
.hidden{display:none!important}
.noscript figure{cursor:default}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;z-index:50}
.lightbox img{max-width:92vw;max-height:78vh;border-radius:12px}
.lightbox #lb-meta{margin-top:14px;max-width:720px;text-align:center;color:#ccc;font-size:13px}
.lightbox button{position:absolute;top:16px;right:18px;background:transparent;color:#fff;font-size:32px;border:0;cursor:pointer}
.footer{display:flex;gap:12px;justify-content:space-between;padding:18px;color:var(--muted);border-top:1px solid var(--line);font-size:12px}
.footer a{color:var(--muted);text-decoration:none;border-bottom:1px dotted}
.footer a:hover{color:var(--fg)}
