:root{--bg:#ffffff;--text:#111827;--accent:#111827;--muted:#737373;--line:#e8e8e8;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font,Inter),Arial,sans-serif}.landing{min-height:100vh;display:grid;place-content:center;text-align:center;padding:24px}.landing img{width:190px;margin:auto}.landing h1{font-size:46px;letter-spacing:-.06em;margin:20px 0 8px}.landing p{max-width:520px;color:var(--muted);line-height:1.6}.gallery-wrap{max-width:1180px;margin:0 auto;padding:24px 16px 60px}.hero{border:1px solid var(--line);border-radius:32px;padding:28px;background:rgba(255,255,255,.68);backdrop-filter:blur(16px);margin-bottom:14px}.brandline{display:flex;align-items:center;gap:10px;color:var(--muted)}.brandline img{width:42px;height:42px;border-radius:14px;object-fit:cover}.hero h1{font-size:clamp(34px,6vw,74px);line-height:.94;letter-spacing:-.075em;margin:20px 0 10px}.hero p{margin:0;color:var(--muted)}.toolbar{position:sticky;top:0;z-index:4;background:color-mix(in srgb,var(--bg),transparent 15%);backdrop-filter:blur(14px);padding:10px 0;display:flex;gap:10px}.toolbar input{flex:1;border:1px solid var(--line);border-radius:999px;padding:13px 16px;background:#fff;color:var(--text)}.toolbar button,.card button,dialog button{border:0;background:var(--accent);color:#fff;border-radius:999px;padding:13px 17px;font-weight:750;cursor:pointer}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:12px}.card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}.card a{display:block}.card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#eee}.meta{padding:11px}.name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#444}.select{width:100%;margin-top:9px;background:#f3f4f6!important;color:#111!important}.card.selected{outline:3px solid var(--accent);outline-offset:2px}dialog{border:0;border-radius:24px;padding:22px;max-width:360px;width:calc(100% - 32px)}dialog::backdrop{background:rgba(0,0,0,.35)}dialog h2{margin:0 0 8px}dialog p{color:#666}dialog input{width:100%;border:1px solid var(--line);border-radius:16px;padding:13px;margin:8px 0 14px}@media(max-width:640px){.grid{grid-template-columns:repeat(2,1fr)}.toolbar{display:block}.toolbar button{width:100%;margin-top:8px}.hero{border-radius:26px;padding:22px}}
