:root{--bg: #0a0a0a;--fg: #f5f5f5;--muted: #a1a1aa;--surface: #18181b;--border: #27272a;--primary: #2bc76a;--primary-shadow: rgba(0, 0, 0, .45);--primary-text: #ffffff;--display: "Bebas Neue", "Helvetica Neue", Arial, sans-serif;--body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg);color:var(--fg);font-family:var(--body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}button{font:inherit;cursor:pointer;background:none;border:none;color:inherit}img{display:block;max-width:100%}.layout{min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding:24px 16px 48px;gap:24px}.brand{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:8px}.brand-logo{height:36px;max-width:200px;object-fit:contain}.brand-name{font-family:var(--display);letter-spacing:.06em;font-size:20px;color:var(--muted);text-transform:uppercase}.headline{font-family:var(--display);font-size:clamp(40px,9vw,72px);letter-spacing:.02em;line-height:1;margin:0;text-align:center;color:var(--primary-text)}.subhead{font-size:14px;color:var(--muted);text-align:center;margin:0}.gallery{display:flex;flex-direction:column;gap:16px;width:100%;max-width:720px;align-items:center}.tile{position:relative;cursor:pointer;border-radius:14px;overflow:hidden;border:2px solid transparent;transition:transform .15s ease,border-color .15s ease,opacity .15s ease;background:var(--surface);opacity:.55;width:100%;max-width:460px}.tile.selected{opacity:1;border-color:var(--primary);transform:scale(1.01)}.tile img{width:100%;height:auto;display:block}.tile-meta{position:absolute;bottom:8px;left:8px;font-family:var(--display);font-size:14px;letter-spacing:.08em;text-transform:uppercase;background:#0000008c;color:#fff;padding:4px 8px;border-radius:4px}@media(min-width:720px){.gallery.row{flex-direction:row;justify-content:center;flex-wrap:wrap}.gallery.row .tile{max-width:240px}}.actions{display:flex;flex-direction:column;gap:10px;width:100%;max-width:360px}.btn{font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;font-size:18px;height:52px;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;filter:drop-shadow(0 6px 14px var(--primary-shadow));transition:transform .1s ease,opacity .15s ease}.btn:active{transform:translateY(1px) scale(.99)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-text)}.btn-secondary{background:transparent;color:var(--fg);border:1px solid var(--border);filter:none}.center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;gap:12px;text-align:center;padding:24px}.spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.15);border-top-color:var(--primary);border-radius:999px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.muted{color:var(--muted);font-size:14px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);color:var(--fg);padding:10px 16px;border-radius:999px;font-size:13px;z-index:50;animation:rise .2s ease}@keyframes rise{0%{opacity:0;transform:translate(-50%,8px)}}
