Visual Theme & Atmosphere
Nintendo.com circa 2001 is the web rendered as console hardware. Where most sites of the era reached for either grunge texture or corporate gradients, this interface builds itself out of brushed-periwinkle metal plates — every region is a discrete beveled panel, edge-lit with a brighter highlight on top and a {colors.chrome-indigo} shadow line beneath, as if stamped from the same injection-molded plastic as a Game Boy. The whole page reads as one machine faceplate: a body of {colors.canvas} periwinkle chrome carrying inset modules, with the corners of the largest panels physically chamfered (cut at 45°) rather than rounded, reinforcing the manufactured-object feeling.
The system runs on a tight three-voice contrast. The structural voice is the cool periwinkle-to-indigo chrome ({colors.canvas}, {colors.periwinkle}, {colors.chrome-indigo}). The authority voice is {colors.carbon} carbon-navy — the top navigation bar, the right-rail action buttons, and the footer, all near-black slabs printed with a faint halftone dot-matrix texture that evokes a speaker grille. The energy voice is warm and reserved for one job only: telling you where to go. {colors.nav-gold} lights the primary menu words, {colors.amber} fills the utility chips and badges, and {colors.signal} orange marks every "forward" cue — the round arrow buttons, the chevron chips beside each headline, the Submit button. Warmth in this system always means action; the cool chrome never carries it.
...
Key Characteristics:
- Every UI region is a beveled metal plate in
{colors.canvas}periwinkle, edge-lit on top and shadow-lined with{colors.chrome-indigo}below — the page is assembled, not laid out. - ...
Live Visual Theme Representation:
Visual Theme Example
Color Palette & Roles
The palette is a cool metallic chassis with rationed warm signal. Read it as three layers: the periwinkle chrome that everything is built from, the carbon command slabs, and the warm wayfinding accents that are the only saturated color in the steady-state interface.
Brand & Accent
- Nintendo Red (
{colors.primary}— #e60012): The racetrack logo wordmark and the brand's anchor hue. Used sparingly as pure brand identity and doubled as the validation/alert color. Never a surface fill outside the logo plate. - Signal Orange (
{colors.signal}— #f68d1f): The "go forward" color. Fills every round arrow button, every chevron chip beside a headline, the Submit button, and the "Play It On" platform badges. If something advances you, it is orange. - ...
Surface
- Periwinkle Metallic (
{colors.canvas}— #7a8aba): The primary interface body — the brushed-metal chrome that every module is inset into. - Light Periwinkle (
{colors.periwinkle}— #8ba1d4): Raised mid panels (poll panel, system tiles) — one step brighter than canvas for elevation. - ...
Text
- Carbon Navy (
{colors.ink}— #21242e): Primary text on light chrome, and the fill of the dark command layer (nav bar, rail buttons, footer). - Chrome Indigo (
{colors.ink-soft}— #3d4f97): Secondary text and small-caps chrome labels. - ...
Semantic
- Error / Alert (
{colors.error}— #e60012): Validation and destructive states reuse the brand red. - Systems Teal (
{colors.systems-teal}— #206479): Page-accent tint — the Systems hero's circuit-board cyan field. - ...
Typography Rules
Font Family
The era's web-safe reality is Arial / Helvetica throughout — there are no webfonts. The system gets its character not from typeface choice but from treatment: tight uppercase tracking on every chrome label, and a heavy outlined-and-shadowed display style for hero wordmarks that mimics console box-art logotype. Body copy is plain small Arial; links are the same family at bold weight in{colors.ink-soft}.
The micro-labels (vertical left-rail tabs, footer fine print) render with the soft pixelation characteristic of small bitmap-rendered Arial of the period — for a faithful reproduction, pair Arial with a pixel face such as Silkscreen or VT323 at the 10–11px label sizes.
Hierarchy
| Token | Size | Weight | Line Height | Letter Spacing | Use |
|---|---|---|---|---|---|
| ... | ... | ... | ... | ... | ... |
Principles
- Uppercase + tracking is the chrome voice. Every structural label — nav words, panel headers ("Official News", "Featured Sites", "Player's Poll"), button text — is uppercase Arial Bold with a half-pixel of tracking. It reads like silkscreened legends on a controller.
- Display type is outlined, never flat. Hero wordmarks always carry a thick contrasting outline and a hard offset shadow so they pop off the photographic field — the box-art convention.
- ...
Note on Font Substitutes
...Layout Principles
Spacing System
- Base unit: 8px (
{spacing.sm}) — the gutter rhythm between list rows and grid cells. - Tokens:
{spacing.xxs}2px ·{spacing.xs}4px ·{spacing.sm}8px ·{spacing.md}12px ·{spacing.lg}16px ·{spacing.xl}24px ·{spacing.xxl}32px ·{spacing.section}48px - ...
Grid & Container
- Fixed-width canvas ~780–830px wide (a desktop-era fixed table layout, centered). No fluid scaling — the interface is sized to a single target window like an application.
- Masthead row: Mario mascot + speech bubble (left) and search module (right) float above the chrome.
- ...
Whitespace Philosophy
Empty space is engineered seam, not breathing room. Modules butt against each other separated by thin{colors.chrome-indigo} bevel lines and a few pixels of canvas, so the eye reads grouped plates. The density is intentional: it makes the page feel like a packed control panel where everything is one click away.
Responsive Strategy
Breakpoints
| Name | Width | Key Changes |
|---|---|---|
| ... | ... | ... |
Touch Targets
...Collapsing Strategy
Image Behavior
Grid Layout Wireframe Mockup:
Layout Grid Example
Depth & Elevation
Depth in this system is physical bevel simulation, not soft shadow. There is no blurred drop-shadow vocabulary; instead every plate is given the illusion of being a raised piece of molded plastic.
| Level | Treatment | Use |
|---|---|---|
| ... | ... | ... |
Decorative Depth
Depth is also carried by texture and photography: the halftone dot-matrix on carbon slabs reads as a recessed speaker grille; hero fields use motion-blur, circuit-board patterns, and product renders with their own cast shadows to create literal pictorial depth; chamfered corners on the outer chrome suggest a machined faceplate edge. The left-rail rotated tabs appear to tuck behind the main chrome, a small but effective layered cue.Elevation Level Showcase:
Elevation Level Example
Used for background layers, sidebar headers, or baseline borders.
Used for floating product elements, cards, and hover states.
Used for modals, select menus, code editor tooltips, and overlay headers.
Border Radius & Shape Scale:
Component Stylings
Border Radius Scale
| Token | Value | Use |
|---|---|---|
| ... | ... | ... |
Photography Geometry
Hero photography fills beveled rectangles at roughly 4:1 (banner) and 16:9 proportions, full-bleed within the panel. Featured-site and game thumbnails are near-4:3 fixed tiles (~95×60px) framed by a 1–2px{colors.chrome-indigo} edge with {rounded.sm} corners. The mascot is a transparent cutout overlapping the masthead, breaking the rectangular grid for personality.
...
Navigation
nav-bar — Primary top navigation
{colors.carbon}slab with a faint halftone-dot texture, ~28px tall, carrying the{components.logo-pill}at left, the five{colors.nav-gold}section words in{typography.nav-link}uppercase, and the amber Code Bank / Game Finder utility chips at right. Sharp corners ({rounded.none}),{spacing.sm}padding.
subnav-strip — Secondary navigation
- A
{colors.canvas-soft}pale-sky strip directly beneath the nav bar, carrying utility links (Parents, Customer Service, Corporate, Global, Privacy, Store, Contact) in{typography.ui-label}{colors.ink}, separated by thin dividers. Sharp,{spacing.xs}padding.
left-rail-tab — Rotated section tabs
- A thin vertical strip of
{colors.carbon}tabs (Top Ten, Top Rentals, Player's Choice, ESRB Ratings) with vertically-rotated{typography.ui-label}text in{colors.canvas-soft}, clipped to the left chrome edge. Sharp corners,{spacing.xs}padding.
Brand & Masthead
logo-pill — Nintendo racetrack logo
- The wordmark in
{colors.primary}red set inside a white{rounded.full}racetrack pill, outlined. Sits at the left of the nav bar.{spacing.xs}padding.
mascot-bubble — Mario welcome speech bubble
- A white
{rounded.lg}rounded-rectangle speech bubble with a tail, carrying "Welcome to Nintendo.com!" in{typography.micro}{colors.carbon}, paired with the Mario cutout in the masthead.{spacing.sm}padding.
Buttons
button-primary — Amber utility / Go chip
{colors.amber}fill,{colors.carbon}text in{typography.ui-label},{rounded.xs}corners,{spacing.md}padding, with a beveled top highlight. The everyday tool button (Code Bank, Game Finder, Go).- ...
button-submit — Forward / Submit
{colors.signal}orange fill,{colors.on-primary}white text in{typography.ui-label},{rounded.xs},{spacing.lg}padding. The "commit" action (poll Submit, Go on archives).
button-secondary — Right-rail action button
{colors.carbon}near-black slab,{colors.on-primary}white text in{typography.ui-label}, sharp{rounded.none}corners,{spacing.md}padding, with a small leading icon. Used for Login / Subscribe / Newsletter / Help in the right rail.
button-icon-arrow — Round forward arrow
- A 22px
{colors.signal}orange{rounded.full}disc with a white chevron — the primary "go" affordance on hero panels and section links.
button-arrow-chip — Headline chevron chip
- An 18px
{colors.signal}orange{rounded.xs}chip with a white forward chevron, sitting at the right end of each{components.news-row}to advance to the article.
Inputs & Forms
search-field — Masthead search input
- White
{colors.surface}field,{colors.ink}text in{typography.body},{rounded.xs}corners, 1px{colors.hairline}border, ~20px tall, paired with an "All" category dropdown and an amber Go chip.
text-input — Generic text field
- Same chassis as
search-field: white fill,{colors.ink}text,{rounded.xs},{colors.hairline}1px border,{spacing.xs}padding. Used in the Login form (Username / Password / E-mail), news-archive keyword, and date fields.
select-dropdown — Native select ("Click to choose")
- A white
{colors.surface}field with{colors.ink}text in{typography.body},{rounded.xs}corners, and a hard 1px{colors.carbon}border (sharper than the inputs) closing on a beveled native dropdown-chevron button at the right edge. ~24px tall,{spacing.xs}padding. Used for the Register form's Month / Year pickers.
field-label — Inline form label
- A bold
{colors.ink}label in{typography.link}(Arial Bold 12px) sitting left of its input (Username, Password, E-mail, Month, Year).{rounded.none},{spacing.xxs}padding.
radio-option — Poll radio button
- A 12px white
{rounded.full}radio dot with a{colors.hairline}ring, paired with{typography.body}option text. Used in the Player's Poll.
form-panel — Form container (Login / Register)
- A
{colors.platinum}light-gray{rounded.md}panel holding a form, capped by a{components.section-label-bar}header (≡ LOG IN / ≡ REGISTER).{spacing.lg}interior. The Login page pairs two side by side.
dotted-divider — Dotted hairline rule
- A 1px dotted
{colors.muted-indigo}separator rule used between form sub-sections (the "Note:" line, "Forgot Your Password?"). A recurring Y2K-chrome detail — dotted rather than solid.
Cards & Panels
hero-panel — Photographic hero plate
- A
{rounded.md}beveled rectangle filled with full-bleed product photography over a page-tinted field ({colors.lavender}/{colors.systems-teal}/{colors.games-red}), topped with an outlined{typography.display}wordmark and a{components.button-icon-arrow}call-to-action.{spacing.lg}interior.
section-label-bar — Panel header
- A
{colors.canvas}header strip with a small grid/list glyph and an uppercase{typography.ui-label}title ("Official News", "Featured Sites", "Player's Poll"). Sharp corners,{spacing.sm}padding. Caps every content module.
news-row — Headline list row
- A
{colors.platinum}{rounded.sm}row with a small category icon, a{typography.link}headline in{colors.ink-soft}, and a trailing{components.button-arrow-chip}.{spacing.sm}padding. Stacked into the Official News / Other Headlines lists.
featured-tile — Featured-site thumbnail
- A
{colors.carbon}-framed{rounded.sm}tile (~95×60px) holding a screenshot thumbnail with a{typography.micro}URL caption (e.g. www.pokemon.com). Tight{spacing.xxs}padding, arranged in a 2×2 grid.
poll-panel — Player's Poll module
- A
{colors.periwinkle}raised{rounded.md}panel posing a question, listing{components.radio-option}choices, and closing with a{components.button-submit}.{spacing.md}interior.
info-box — "What Is" explainer card
- A white
{colors.surface}{rounded.sm}card with an amber header tab ("What Is — Game Finder") and{typography.body}explanatory copy.{spacing.md}padding. Sits in the right rail.
promo-card — Side product promo
- A
{colors.lavender}{rounded.sm}card carrying an outlined product wordmark (e.g. Game Boy Advance) over a small product render, in the right rail.{spacing.md}padding.
system-tile — Hardware grid tile (Systems page)
- A
{colors.periwinkle}{rounded.sm}tile holding a console render over a circuit-board backdrop with an outlined system name (Nintendo 64, Super Nintendo, Game Boy).{spacing.sm}padding, arranged in a 2×3 grid.
link-row-card — Utility link card (Systems page)
- A white
{rounded.sm}card with an amber label tab (Technical Help, Store Locator, Online Store), a character icon, and a one-line{typography.body}description.{spacing.sm}padding.
calendar-widget — Month calendar (News page)
- A white
{rounded.sm}grid calendar in{typography.micro}, with a{colors.carbon}caption header (e.g. "June 01"), highlighted event dates, and a month-select dropdown.{spacing.sm}padding.
Badges & Footer
esrb-badge — ESRB Privacy-Certified mark
- A small
{colors.amber}{rounded.xs}badge reading "ESRB — Privacy Certified" in{typography.micro}{colors.carbon}, pinned in the footer.
esrb-rating-square — Game content-rating square
- A 20px white
{rounded.xs}square stamping the content-rating letter (E, T) in{typography.ui-label}{colors.carbon}, on each game card.
footer-bar — Page footer
- A
{colors.carbon}chamfered slab with the "©1997–2001 Nintendo…" copyright in{typography.micro}{colors.canvas-soft}, the ESRB badge, and a privacy link. Sharp corners,{spacing.lg}padding.
Examples (illustrative)
ex-pricing-tier — Default Pricing tier card. Re-uses feature-card chrome with brand canvas-soft surface.
- Properties:
backgroundColor,textColor,borderColor,rounded,padding
ex-pricing-tier-featured — Featured/highlighted tier — polarity-flipped surface (dark fill + light text in light mode, light fill + dark text in dark mode).
- Properties:
backgroundColor,textColor,rounded,padding
ex-product-selector — What's Included summary card — re-purposed for SaaS / B2B verticals (NOT a literal product gallery).
- Properties:
backgroundColor,rounded,padding
ex-cart-drawer — Subscription summary — re-purposed for SaaS / B2B (line items per add-on, not literal cart).
- Properties:
backgroundColor,rounded,padding,item-divider
ex-app-shell-row — Sidebar nav row inside the App Shell example. Active state uses brand primary as the indicator.
- Properties:
backgroundColor,activeIndicator,rounded,padding
ex-data-table-cell — Default data-table th + td chrome. Header uses mono-caps eyebrow typography; body uses body-sm.
- Properties:
headerBackground,headerTypography,bodyTypography,cellPadding,rowBorder
ex-auth-form-card — Sign-in / sign-up card. Re-uses feature-card chrome with text-input primitives inside.
- Properties:
backgroundColor,rounded,padding
ex-modal-card — Modal dialog surface — same chrome as feature-card with elevated shadow.
- Properties:
backgroundColor,rounded,padding
ex-empty-state-card — Empty-state illustration frame.
- Properties:
backgroundColor,rounded,padding,captionTypography
ex-toast — Toast notification surface — feature-card shape + medium shadow.
- Properties:
backgroundColor,rounded,padding,typography
Interactive Component Demonstrations:
Component Interactive Example
Do's and Don'ts
Do
- Build every region as a beveled plate: a
{colors.canvas}body with a brighter top edge and a{colors.chrome-indigo}shadow line beneath. The "assembled machine" feel depends on it. - Reserve warm color for wayfinding only —
{colors.nav-gold}for nav words,{colors.amber}for utility/badges,{colors.signal}for forward/Submit. Cool chrome never carries action color. - Keep structural labels uppercase Arial Bold with 0.5px tracking (
{typography.ui-label}) — it is the silkscreen-legend voice of the whole system. - Render hero wordmarks as outlined + drop-shadowed
{typography.display}over full-bleed photographic fields tinted per page. - Use
{colors.carbon}with halftone texture for the command layer (nav, right rail, footer) to separate "system controls" from "content." - Let panels butt together with thin bevel seams; density is the intended texture.
- Default corners to sharp/chamfered (
{rounded.none}); spend roundness only on the logo pill, radio dots, and circle-arrow badges.
Don't
- Don't soften every corner — turning the sharp chrome into a uniformly rounded card system erases the manufactured-faceplate identity.
- Don't introduce a soft blurred drop-shadow elevation language; depth here is hard bevels and pictorial photography, not Material elevation.
- Don't let
{colors.signal}and{colors.amber}bleed into decorative use — warm color must always mean "act here." - Don't add accent colors outside the page-tint heroes (
{colors.systems-teal},{colors.games-red}); the steady-state chrome is strictly cool periwinkle + carbon. - Don't widen body copy or whitespace into an airy modern layout; the packed, fixed-canvas density is the brand.
- Don't flatten the dual-nav structure (gold primary words over the pale secondary strip) into one bar — the layered command hierarchy is signature.
- Don't render hero or system wordmarks as flat text; without the outline + shadow they lose the box-art reference entirely.
- Build every region as a beveled plate: a
{colors.canvas}body with a brighter top edge and a{colors.chrome-indigo}shadow line beneath. The "assembled machine" feel depends on it. - Reserve warm color for wayfinding only —
{colors.nav-gold}for nav words,{colors.amber}for utility/badges,{colors.signal}for forward/Submit. Cool chrome never carries action color. - Keep structural labels uppercase Arial Bold with 0.5px tracking (
{typography.ui-label}) — it is the silkscreen-legend voice of the whole system. - Render hero wordmarks as outlined + drop-shadowed
{typography.display}over full-bleed photographic fields tinted per page. - Use
{colors.carbon}with halftone texture for the command layer (nav, right rail, footer) to separate "system controls" from "content." - Let panels butt together with thin bevel seams; density is the intended texture.
- Default corners to sharp/chamfered (
{rounded.none}); spend roundness only on the logo pill, radio dots, and circle-arrow badges.
- Don't soften every corner — turning the sharp chrome into a uniformly rounded card system erases the manufactured-faceplate identity.
- Don't introduce a soft blurred drop-shadow elevation language; depth here is hard bevels and pictorial photography, not Material elevation.
- Don't let
{colors.signal}and{colors.amber}bleed into decorative use — warm color must always mean "act here." - Don't add accent colors outside the page-tint heroes (
{colors.systems-teal},{colors.games-red}); the steady-state chrome is strictly cool periwinkle + carbon. - Don't widen body copy or whitespace into an airy modern layout; the packed, fixed-canvas density is the brand.
- Don't flatten the dual-nav structure (gold primary words over the pale secondary strip) into one bar — the layered command hierarchy is signature.
- Don't render hero or system wordmarks as flat text; without the outline + shadow they lose the box-art reference entirely.
Responsive Behavior
Responsive Adaptation Note:
Responsive Behavior Example
Agent Prompt Guide
Copyable Agent Integration Prompt:
Prompt Guide Copy Box
Full System Design Tokens
The parsed design tokens extracted from the core stylesheet of this design system:
| Design Token | Hex Value | System Palette Role |
|---|---|---|
| --primary | #e60012 | System color representation for primary |
| --signal | #f68d1f | System color representation for signal |
| --amber | #ecab37 | System color representation for amber |
| --nav-gold | #e48600 | System color representation for nav-gold |
| --canvas | #7a8aba | System color representation for canvas |
| --canvas-soft | #9fbee7 | System color representation for canvas-soft |
| --sky | #9fbee7 | System color representation for sky |
| --lavender | #acace7 | System color representation for lavender |
| --ice | #c0d5e6 | System color representation for ice |
| --periwinkle | #8ba1d4 | System color representation for periwinkle |
| --chrome-indigo | #3d4f97 | System color representation for chrome-indigo |
| --muted-indigo | #60619c | System color representation for muted-indigo |
| --platinum | #dedede | System color representation for platinum |
| --surface | #ffffff | System color representation for surface |
| --carbon | #21242e | System color representation for carbon |
| --hairline | #5a5f8c | System color representation for hairline |
| --ink | #21242e | System color representation for ink |
| --ink-soft | #3d4f97 | System color representation for ink-soft |
| --on-primary | #ffffff | System color representation for on-primary |
| --systems-teal | #206479 | System color representation for systems-teal |
| --games-red | #a7282b | System color representation for games-red |
| --error | #e60012 | System color representation for error |