Import december-2020-12-18 from private repo (scrubbed 2026-05-27)

Targets Rec Room 2020.12.18 client.

Re-import after adding:
- DorkNet.ClientMod/dorknet-clientmod.json.template — config schema
  the launcher's manifest-driven patcher renders into UserData/.
- tools/build-patcher-zip.ps1 — produces the dorknet-clientpatch-{key}.zip
  Release asset the launcher fetches.
- .github/workflows/release.yml — auto-publishes both Release assets
  on v1-december-* tag push.

Scrubbed via maintainer-side scrub-for-public.ps1: same drop rules as
the prior import, plus build-patcher-zip.ps1 added to the tools/
allow-list so it survives the scrub.
This commit is contained in:
Alexa
2026-05-27 01:04:12 +03:00
commit 4edf25b2d5
375 changed files with 201291 additions and 0 deletions
+44
View File
@@ -0,0 +1,44 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
html, body, #root { height: 100%; }
body {
font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
-webkit-font-smoothing: antialiased;
}
::selection { background-color: theme('colors.brand.500'); color: white; }
}
@layer components {
.card { @apply rounded-xl border border-ink-800 bg-ink-900 shadow-card; }
.btn {
@apply inline-flex items-center justify-center gap-2 rounded-lg px-3.5 py-2 text-sm font-medium
transition-colors focus:outline-none focus:ring-2 focus:ring-brand-500/40 focus:ring-offset-2 focus:ring-offset-ink-950
disabled:cursor-not-allowed disabled:opacity-50;
}
.btn-primary { @apply btn bg-brand-500 text-white hover:bg-brand-400 active:bg-brand-600; }
.btn-secondary { @apply btn bg-ink-800 text-ink-100 hover:bg-ink-700 border border-ink-700; }
.btn-ghost { @apply btn bg-transparent text-ink-200 hover:bg-ink-800; }
.input {
@apply w-full rounded-lg border border-ink-700 bg-ink-900 px-3 py-2 text-sm text-ink-100
placeholder:text-ink-400 focus:border-brand-400 focus:outline-none focus:ring-2 focus:ring-brand-500/30;
}
.label { @apply text-xs font-medium uppercase tracking-wide text-ink-300; }
.badge {
@apply inline-flex items-center gap-1 rounded-md px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wider;
}
.badge-admin { @apply badge bg-brand-500/15 text-brand-200; }
.badge-junior { @apply badge bg-warn/15 text-warn; }
.badge-neutral { @apply badge bg-ink-800 text-ink-200; }
/* Photo grid — Pinterest-style masonry via CSS columns. column-count
stays responsive; column-gap matches the gap between cards. Each
card needs break-inside: avoid so a tall image doesn't get sliced. */
.photo-grid { @apply gap-3; column-count: 2; column-gap: 0.75rem; }
@screen sm { .photo-grid { column-count: 3; } }
@screen lg { .photo-grid { column-count: 4; } }
@screen xl { .photo-grid { column-count: 5; } }
.photo-grid > * { @apply mb-3; break-inside: avoid; display: inline-block; width: 100%; }
}