Skip to content

Redesign: Scandi Warm Forest visual theme#3

Draft
Copilot wants to merge 2 commits into
mainfrom
copilot/redesign-scandi-warm-forest
Draft

Redesign: Scandi Warm Forest visual theme#3
Copilot wants to merge 2 commits into
mainfrom
copilot/redesign-scandi-warm-forest

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 17, 2026

Full visual redesign of the Soc Ops Social Bingo app using a Scandinavian hygge-inspired aesthetic — warm birch cream backgrounds, deep forest green accents, Lora serif headings, and earthy terracotta/parchment tones throughout.

CSS (app.css + index.html)

  • Added :root palette with 13 semantic CSS variables (--color-bg, --color-accent, --color-marked-*, --color-winning-*, etc.)
  • Loaded Lora (400/700) and Source Sans 3 (300/400/600) via Google Fonts; set as default body font at weight 300
  • 30+ new utility classes: bg-linen (with subtle diagonal grain texture), bg-surface, bg-sage, semantic text-*/border-* variants, font-heading, rounded-2xl, shadow-md
  • Added fadeSlideUp and fadeIn keyframe animations with .delay-1/2/3 stagger helpers

Components

  • StartScreen — Staggered fadeSlideUp entrance, Lora h1, parchment instruction card with border-calm + shadow-md, sage green CTA
  • GameScreenbg-linen full-screen layout, bg-surface header with border-calm, pine-wash bingo banner with marker replacing emoji
  • BingoBoardgap-1gap-2
  • BingoSquare — All state classes migrated to semantic tokens; free space uses font-heading; checkmark text-green-600text-sage
  • BingoModal — Parchment card, Lora heading, animate-fade-in replaces bounce, rounded-2xl throughout
// BingoSquare.GetCssClasses() — before vs after
// before: "bg-amber-200 border-amber-400 text-amber-900"
// after:  "bg-winning-calm border-winning text-winning"
Original prompt

Redesign: Scandinavian Calm — Variation 2: Scandi Warm Forest

Perform a full visual redesign of the Soc Ops Social Bingo app using a Scandi Warm Forest aesthetic. This is the warmest, richest interpretation: inspired by Norwegian cabin hygge, birch forest floors, and hand-thrown ceramic mugs. Deep forest greens, warm birch wood tones, and terracotta details. Think of a cosy cabin in Telemark with candlelight and timber walls.


Design Direction

Feeling: Hygge warmth. Rich but never garish. Earthy, grounded, human. The board feels like carved wood tiles.

Palette (CSS variables — define in :root in app.css):

--color-bg: #EDE8DF           // warm birch cream
--color-surface: #F7F3EC      // soft parchment
--color-border: #D4C9B7       // warm tan border
--color-text: #2C2016         // deep warm brown-black
--color-text-muted: #7A6B56   // warm mid-brown
--color-accent: #3E6B4E       // deep forest green
--color-accent-hover: #325840
--color-marked-bg: #CFDFD3    // soft pine wash
--color-marked-border: #7DAF8A
--color-marked-text: #254D34
--color-winning-bg: #F0E2CA   // warm birch gold
--color-winning-border: #C8996A
--color-winning-text: #7A3E12

Typography:

  • Heading font: Lora (serif, weights 400 and 700) — warmth and craftsmanship
  • Body font: Source Sans 3 (weight 300 and 400) — readable, friendly
  • Load both via Google Fonts
  • h1, h2, headings: Lora
  • Body, button text, square labels: Source Sans 3
  • No letter-spacing on body; headings use modest letter-spacing: 0.04em
  • Buttons use Source Sans 3, weight 600, comfortable letter-spacing: 0.06em

Key style principles:

  • Visible warmth: borders are visible but friendly, not hairline
  • Cards have a gentle box-shadow: 0 2px 8px rgba(44, 32, 22, 0.08) for depth
  • Rounded corners lean rounder: border-radius: 1rem (rounded-2xl) for cards, border-radius: 0.75rem for squares
  • A subtle CSS noise/grain on the background is welcome: use a CSS background-image: url("data:image/svg+xml,...") noise pattern in .bg-linen to add texture without images (or a subtle repeating linear-gradient diagonal pattern that evokes grain)
  • Mark checkmark should feel like a stamp: thicker or

Files to change

1. SocOps/wwwroot/index.html

  • Add Google Fonts link before app.css:
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
    <link href="https://fonts.googleapis.com/css2?family=Lora:wght@400;700&family=Source+Sans+3:wght@300;400;600&display=swap" rel="stylesheet" />
  • Update theme-color meta to #3E6B4E

2. SocOps/wwwroot/css/app.css

  • Change body:
    body {
        font-family: 'Source Sans 3', sans-serif;
        font-weight: 300;
        -webkit-tap-highlight-color: transparent;
    }
  • Add all CSS custom properties to :root
  • Add semantic utility classes (do NOT remove existing ones):
    • .bg-linenbackground-color: var(--color-bg) with optional subtle grain texture via background-image
    • .bg-surfacebackground-color: var(--color-surface)
    • .bg-sagebackground-color: var(--color-accent)
    • .bg-marked-calmbackground-color: var(--color-marked-bg)
    • .bg-winning-calmbackground-color: var(--color-winning-bg)
    • .text-primarycolor: var(--color-text)
    • .text-mutedcolor: var(--color-text-muted)
    • .text-sagecolor: var(--color-accent)
    • .text-markedcolor: var(--color-marked-text)
    • .text-winningcolor: var(--color-winning-text)
    • .border-calmborder-color: var(--color-border)
    • .border-marked-calmborder-color: var(--color-marked-border)
    • .border-winningborder-color: var(--color-winning-border)
    • .rounded-2xlborder-radius: 1rem
    • .gap-2gap: 0.5rem
    • .tracking-widestletter-spacing: 0.15em
    • .tracking-wideletter-spacing: 0.06em
    • .font-lightfont-weight: 300
    • .font-headingfont-family: 'Lora', serif
    • .max-w-lgmax-width: 32rem
    • .text-2xlfont-size: 1.5rem; line-height: 2rem
    • .text-basefont-size: 1rem; line-height: 1.5rem
    • .mt-2 through .mt-8 → margin-top equivalents
    • .py-6padding-top: 1.5rem; padding-bottom: 1.5rem
    • .uppercasetext-transform: uppercase
    • .shadow-mdbox-shadow: 0 2px 8px rgba(44, 32, 22, 0.08)
  • Add animations:
    @keyframes fadeSlideUp {
      from { opacity: 0; transform: translateY(10px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    .animate-fade-slide-up { animation: fadeSlideUp 0.55s cubic-bezier(0.16, 1, 0.3, 1) both; }
    .delay-1 { animation-delay: 0.1s; }
    .delay-2 { animation-delay: 0.22s; }
    .delay-3 { animation-delay: 0.36s; }
    
    @keyframes fadeIn {
      from { opacity: 0; transform: scale(0.96) translateY(6px); }
      to   { opacity: 1; transform: scale(1) translateY(0); }
    }
    .animate-fade-in { anim...

📍 Connect Copilot coding agent with Jira, Azure Boards or Linear to delegate work to Copilot in one click without leaving your project management tool.

Co-authored-by: DaveOps30 <114296949+DaveOps30@users.noreply.github.com>
Copilot AI changed the title [WIP] Redesign Soc Ops Social Bingo app with Scandi Warm Forest aesthetic Redesign: Scandi Warm Forest visual theme Mar 17, 2026
Copilot AI requested a review from DaveOps30 March 17, 2026 05:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants