Pre-launch — Gluecron is in final validation. Public signups and git hosting for non-owner users open after launch review.
Commit8929744unknown_key

polish: 2026 treatment for admin sub-pages + pricing + /ask

polish: 2026 treatment for admin sub-pages + pricing + /ask

5 admin sub-pages polished: /admin/users, /admin/repos, /admin/flags,
/admin/digests, /admin/autopilot — each scoped under .adm-users-*,
.adm-repos-*, .adm-flags-*, .adm-digests-*, .adm-autopilot-* with full
2026 hero recipe.

/pricing: added the missing gradient hairline + animated orb (already
had the gradient text headline + radial-gradient blob — finishing the
look to match the rest of the polished surfaces).

/ask: AI chat surface — message bubbles, gradient input area, copy
buttons on AI responses, polished hero with 'Ask.' gradient verb.

All scoped CSS. Form actions / queries / POST handlers preserved.
Claude committed on May 25, 2026Parent: e2e0279
2 files changed+21432938929744d82565b4f16a3b4a80a5e71073eaca131
2 changed files+2143−293
Modifiedsrc/routes/admin.tsx+2109−293View fileUnifiedSplit
Large file (2,590 lines). Load full file
Modifiedsrc/routes/pricing.tsx+34−0View fileUnifiedSplit
8383 <div class="pl-root">
8484 {/* ------------------- Hero ------------------- */}
8585 <header class="pl-hero">
86 <div class="pl-hero-hairline" aria-hidden="true" />
87 <div class="pl-hero-orb" aria-hidden="true" />
8688 <div class="eyebrow">Pricing</div>
8789 <h1 class="display pl-hero-title">
8890 One subscription.{" "}
377379 z-index: -1;
378380 pointer-events: none;
379381 }
382 /* 2026 polish — gradient hairline accent across the top of the hero
383 (matches /admin, /admin/ops, error pages). */
384 .pl-hero-hairline {
385 position: absolute;
386 top: 0; left: 8%; right: 8%;
387 height: 2px;
388 background: linear-gradient(90deg, transparent 0%, #8c6dff 30%, #36c5d6 70%, transparent 100%);
389 opacity: 0.65;
390 pointer-events: none;
391 z-index: 0;
392 border-radius: 2px;
393 }
394 /* 2026 polish — soft animated radial orb behind the headline. */
395 .pl-hero-orb {
396 position: absolute;
397 top: 8%; left: 50%;
398 transform: translateX(-50%);
399 width: 420px; height: 420px;
400 background: radial-gradient(circle, rgba(140,109,255,0.20), rgba(54,197,214,0.10) 45%, transparent 70%);
401 filter: blur(80px);
402 opacity: 0.7;
403 pointer-events: none;
404 z-index: -1;
405 animation: plHeroOrb 16s ease-in-out infinite;
406 }
407 @keyframes plHeroOrb {
408 0%, 100% { transform: translateX(-50%) scale(1); opacity: 0.55; }
409 50% { transform: translateX(-50%) scale(1.12); opacity: 0.85; }
410 }
411 @media (prefers-reduced-motion: reduce) {
412 .pl-hero-orb { animation: none; }
413 }
380414 .pl-hero .eyebrow { justify-content: center; margin: 0 auto var(--s-4); }
381415 .pl-hero-title {
382416 font-size: clamp(36px, 6.5vw, 72px);
383417