Costco style — DASHBOARD.md

Warehouse, Receipt, No-Frills · 창고형, 영수증, 꾸밈없음

A dashboard design spec read from the public design of costco.com, its monthly sales releases and the places members meet the company: the warehouse price sign, the register receipt and the Warehouse Savings coupon book. Costco publishes almost no charts; it shows its numbers on signs, receipts, coupons and in release tables. This spec turns those into dashboard parts — price signs as key figures, the receipt as the department table (with barcode bars, and transactions by hour where the receipt prints its barcode), the coupon book as a figure — and adds a warehouse board against plan and the holiday buy stacked as pallet racks, all in one card and chart grammar on costco.com's blue bands, charcoal section bands and ruled grids. It then adds what a website spec leaves out and a dashboard needs: validated data colors, card anatomy, chart rules, number and date formats in English and Korean, density, filters, accessibility, and settings for Tableau, Power BI and the web. Add it to a project with one command (or the zip on the sample page), or hand it to whoever builds your dashboards. The live sample was built from it.

npx @vizney/styles@latest add costco
# or, without Node:
curl -fsSL https://styles.vizney.com/install.sh | sh -s -- costco

That puts DASHBOARD.md in the project root and the dashboard-style agent skill (build, restyle, review) in .claude/skills/dashboard-style/, together with tokens.css, tokens.json, costco.tps, powerbi-theme.json and prompt.md. Coding agents that read skills pick it up whenever a task touches a dashboard or a chart; any other agent can be told to follow DASHBOARD.md.

Not an official Costco design, and not affiliated with or endorsed by Costco Wholesale. A reference style read from the publicly visible design of costco.com and its public touchpoints such as warehouse signs, receipts and printed coupons; it carries no logo, typeface, photo or data of theirs. The sample's company, Vizney Wholesale, and all its numbers are fictional. Trademarks belong to their owners.

Visual Theme & Atmosphere

A warehouse that prints its numbers. The page is white under costco.com's frame: a blue promo band with the week and the coupon book's dates, a #fafafa header, the blue region band that is the filter, and a #fafafa status row that reports in green, where costco.com says which warehouse is open. The report opens like a monthly sales release — Net sales of $51.46 million for the retail week ended November 1, 2026, an increase of 8.6 percent from $47.39 million last year. — set in regular weight with only the money and the percent bold, the way a price is. Below it stand six price signs: white cards in a thin black frame, an item code at the top, the name in bold caps, the figure huge with $ and decimals as superscripts, and a date code in the corner.

Three devices carry the report, and each is built to be read before it is admired. The price sign is the key figure. The register receipt is the department table: monospace lines with a barcode-striped bar for each department's sales, thousands of dollars that add up to the subtotal, **** TOTAL, the item count, and — where a receipt prints its barcode — transactions by hour as thin ink bars. The coupon book is the promotion figure: a charcoal band and a ruled grid of coupons with the channel line, the item number and limit, the green savings and a bar of redemptions against forecast. Around them sit standard views on plain white cards: comparable sales as lines (reported against Adjusted*), a warehouse board ranked against plan, and the holiday buy stacked as pallets on racks.

No frills: no shadows, no rounded cards, no gradients, no photos. Section bands are charcoal #333333 with white 22px/700 headings, like the coupon page's categories; blocks under them are ruled by 1px #eeeeee. One blue does the data's talking, gray does the rest, and orange flags what fell short. Every number answers a question someone acts on: against last year and against plan, the shortfalls ranked, the busy hours shown where the receipt's barcode sits.

Measured in a browser on November 4, 2026 (costco.com signed out, its Warehouse Savings page and warehouse locator, costco.co.kr, investor.costco.com): costco.com's MUI tokens are costco-blue #005dab, blue-700 #004c8a, blue-100 #eff7fb, the logo red #e51937, red-500 #c13533, green #008000, green-700 #0b6e22, caution #ca4d00 and a gray ladder #fafafa #eeeeee #d9d9d9 #cccccc #909090 #707070 #5f5f5f #333333; text #333333 / #5f5f5f / #707070; spacing 4 · 8 · 12 · 16 · 24 · 32; radius 4px (shape) and 3px (buttons). The header is a 31px #005dab promo band (white 18px), a 138px #fafafa header, a 44px #005dab nav band (white 16px) and a #fafafa row that names the member's warehouse with an Open until <time> status in 12px #008000. The primary button is #005dab with white 16px/400, a 3px radius and 12px 16px padding. A product tile sets its price at 24px/700 with 14px/700 superscript $ and cents; badges are 20px slanted tags (clip-path: polygon(0 0, 100% 0, calc(100% - 12px) 100%, 0 100%)). The Warehouse Savings page has 22px/700 white headings on #333333 bands (12px 16px 4px, 50px tall), a grid of white cells ruled 1px #eeeeee, and coupons that read: the channel (Warehouse 16px/700 #c13533 & Online #005dab, or an Online Only tag) → the item name 16px → Item <7 digits> and Limit <n>. in 12px #707070 → the price in #0b6e22 at 40px/700 with 18px superscripts → After $<n> OFF. The locator writes gas prices to a tenth of a cent with the last digit as a superscript. The monthly sales release writes one sentence of net sales and tables of comparable sales, with a second set *Excluding the impacts from changes in gasoline prices and foreign exchange.; there are no charts. On a warehouse price sign the item code sits at the top, a date code at the bottom right, and an asterisk marks an item that will not be restocked; at the exit the item count at the foot of the receipt is checked against the cart. Costco Sans has no Hangul, and costco.co.kr loads no Korean web font.

Color Palette & Roles

Surfaces and text are costco.com's gray ladder; blue frames the page; the rules are the coupon page's.

Token Hex Role
canvas #ffffff page background
bar #fafafa header, the status row, the footer, the workbench's package panel
paper · plot #ffffff · #ffffff price signs, cards, the receipt, coupon cells; a chart sits on its card
rule · hair #eeeeee the ruled grid between cells, rules between board rows, chart gridlines
line #d9d9d9 the edge of a standalone card, the workbench window
edge #cccccc chart baselines, the tooltip border, the language toggle, the edge of an arriving pallet slot
sign · band · ink #333333 the 1px frame of a price sign · section bands · titles, key figures and table values
text-2 #5f5f5f subtitles, the comparison words of a change, secondary values (6.4:1)
muted #707070 figure labels, notes, axis ticks, item numbers, table headers (4.95:1)
faint #909090 date codes, line numbers and the receipt's dashed rules only (3.2:1, never running text)
blue · blue-700 · blue-100 #005dab · #004c8a · #eff7fb the promo and region bands, buttons, links, focus, the Online channel word, slanted tags · button hover and the subject's text step · hovered rows and cells
red · red-500 #e51937 · #c13533 the logo red, only on a second kind of slanted tag · the Warehouse channel word
green · green-700 #008000 · #0b6e22 status text (24 of 24 warehouses reporting) · coupon savings ($10 OFF) and good changes
caution → bad #ca4d00 → #bc4700 costco.com's caution, darkened to 4.5:1 for text: bad changes, behind plan

Rules: - Cards are white with a 1px #d9d9d9 edge, or cells of a ruled block (1px #eeeeee). No radius except the price sign's 2px and the buttons' 3px; no shadows except the tooltip and the toast. - Blue #005dab is the frame (bands, buttons, links); data gets its own blue #1a70c2. The logo red #e51937 is never data. - Charcoal #333333 is for section bands, the sign frame and ink; never fill a card with it. - Green says that something is fine, in words (reporting, ahead of plan, OFF); orange says that something fell short. Neither is ever a series.

Data Colors

Costco draws almost no charts — its sales releases are tables — so the data hues come from the pair costco.com uses to split its channels: Warehouse red and Online blue. Blue is the subject everywhere; red appears only beside blue, in the channel figure; everything else is gray. Every value passed an OKLab validator (color-vision-deficiency separation, normal-vision separation, contrast) on the card #ffffff and the header #fafafa. Use them exactly; do not generate tints.

Role Mark Label text Use
Subject #1a70c2 #004c8a what the title names: adjusted comparable sales, the department or coupon the title picks, the busiest day, sold pallets, Premium sign-ups, Online
Second category #d42f37 #c13533 Warehouse, only beside Online in the channel figure
Other #cccccc text-2 everything else; bars of warehouses ahead of plan; pallets in the warehouse
Comparison #909090, dashed 2px (6 on, 4 off) ink reported comparable sales against adjusted; last year
Plan #333333, solid 1px (the board) or 2px (the racks) ink the plan line; PLAN 30%
Behind plan #bc4700 #bc4700 bars and values of warehouses behind plan; negative VS LY in the receipt
Receipt bar stripes of #333333; the line the title names #1a70c2 — department sales in the receipt
Arriving #ffffff with a 1px #cccccc edge — pallet slots still to come
Sequential #8eb6e5 #5c96d7 #2174c7 #10599e #0a3e6f ink on the two lightest, white on the rest color by value
Diverging #9b1e22 #d42f34 #e9a29c · #d9d9d9 · #8eb6e5 #2174c7 #0b569a each arm's darkest above and below a midpoint
Status good #0b6e22, bad #bc4700, neutral #909090 — change text and status words only

Validation (from tokens.json, light mode, on #ffffff and #fafafa): - Blue #1a70c2 and red #d42f37: CVD ΔE 21.4 (protan), normal vision 32.1, lightness inside 0.43–0.77, contrast 5.07 and 4.93:1 on white (4.86 and 4.72:1 on #fafafa). Blue sits one step lighter than the UI blue #005dab; red sits between the logo red #e51937 and the error red #c13533. - Other #cccccc is costco.com's gray-500, neutral by design (the lightness band and chroma floor do not apply). At 1.61:1 it always has a second cue: value labels, a 2px gap, a table. - Comparison #909090 (gray-600) is 3.19:1, always dashed and labeled at its end. - The sequential ramp is one hue (spread 1°), monotone, every gap ≥ 0.06 in lightness, the light end 2.11:1. The diverging arms pass the ordinal checks (light ends 2.08 and 2.11:1); the poles are 19.5 (CVD) and 26.6 (normal vision) apart; the midpoint is gray-300. - Text: blue labels #004c8a 8.75:1, red labels #c13533 5.49:1, good 6.43:1, bad 5.20:1 (4.98:1 on #fafafa).

Rules: - Blue only for what the title names; the rest gray. A card that is mostly blue has highlighted nothing. The one exception is the holiday racks, where blue is the share sold in every rack — the measure the title talks about — beside gray stock and empty slots. - Red belongs to the Warehouse channel, so a bad change is caution orange, never red. - Status is never color alone: arrows, signs, the side of the plan line and the words behind plan carry it too. - Never the UI blue #005dab or the logo red #e51937 on data.

Typography Rules

Role English Korean Weights
Sans (everything) Barlow Pretendard 400, 500, 600, 700
Mono (the receipt, codes) Overpass Mono Overpass Mono, then Pretendard for Hangul 400, 500, 600

Barlow stands in for Costco Sans. Measured at 100px, Costco Sans has a 72 cap height, a 52 x-height and 540 for ten digits; among about fifty open sans faces Barlow came second by these proportions, and it is drawn from California road signs and plates, which suits warehouse signage. Overpass comes from Highway Gothic, the US highway sign face; it sets the receipt, item numbers, sign codes, date codes and code. costco.co.kr loads no Hangul web font, so Korean uses Pretendard. There is no serif.

Element Size / weight Notes
Headline clamp(24px, 2.15vw, 30px) / 400, line-height 1.28 the sales-release sentence; only the money and the percent bold (700), like a price; Korean line-height 1.38
Lede 16px / 400, line-height 1.5, text-2 figures in 600 ink
Report name · eyebrow 28px / 400 · 12px / 700 uppercase, 0.1em, text-2 costco.com's h1 (measured); the company name above it
Sign code · name mono 11px / 500 muted · 15px / 700 uppercase, 0.02em 101 · NET SALES (Korean 15px, no uppercase)
Sign value 58px / 700, line-height 0.92, −0.015em, tabular $ and decimals at 0.42em as superscripts; the unit word under the decimals (11px / 700, 0.08em, uppercase: MILLION, PER TRIP) or after the number (13px / 700: TRIPS, M GAL); Korean 50px with the unit after it (5,146만 달러, 302,773건)
Sign change · fine print 13px text-2, the change in 700 status color · 12px, the key 11px / 700 uppercase muted, the date code mono 11px faint
Section band 22px / 700 white the coupon page's category band (measured); Korean 21px
Figure label 12px / 700 uppercase, 0.08em, muted FIGURE 1 · COMPARABLE SALES, TABLE 1 · DEPARTMENT LEDGER (Korean 13px, no uppercase: 그림 1 · 기존점 매출)
Card title · subtitle 19px / 600, line-height 1.3 · 14px on 20px, text-2 the finding; text-wrap: balance (Korean 18px on 1.42)
Receipt mono 12.5px on 19px caps; Korean department names in Pretendard 13px
Coupon channel 14px / 700 uppercase · name 16px · item line 12px muted, the number in mono 11.5px · savings 40px / 700 #0b6e22 with 18px $ and OFF
Board rank mono 11.5px muted · code mono 13.5px / 600 · region 12.5px muted · values 12.5px / 600
Rack name 14px / 700 uppercase, 0.04em · 27.4% sold 17px / 700 #004c8a · status 13px / 600
Note · key 12px on 18px muted · 13px / 500 ink the note starts with Note: / 주:
Axis ticks · value labels 12px muted · 12px / 700 ink
Fine print (method) 12.5px, line-height 1.65 the coupon book's terms

Headlines are regular (400) with bold money, as costco.com sets its h1; card titles are semibold (600); sign names and figures are bold (700). Korean breaks between words (word-break: keep-all), and a number stays on the line with the particle after it.

Numbers, Dates & Units

English Korean
Net sales in the headline $51.46 million 5,146만 달러
On a price sign $51.46 MILLION, $150.55 PER TRIP (superscript $ and decimals) 5,146만 달러, 150.55달러
In the receipt thousands of dollars: 3,720, 51,464; the header $K the same digits; the header 천 달러
Warehouses and plans $2.19M, PLAN $50.86M (+1.2%) 219만 달러, 계획 5,086만 달러(+1.2%)
Counts 302,773 trips, 3,096,130 items 302,773건; in sentences 30만 2,773번
Members · gallons 1.28 million · 1.74 M gal 128.5만 명 · 174.1만 갤런
Savings $721,748 in sentences, $721,748.46 in the receipt 72만 1,748달러, 721,748.46
Pump price $3.37⁸ (the tenth of a cent as a superscript, as on a gas sign) 3.37⁸달러
Coupon $10 OFF, Item 9310542 · Limit 10. 10 달러 할인, 상품 번호 9310542 · 구매 한도 10개
Rates · points 6.2% · −0.1 pts, ▲ 4.5 pts ahead of plan 6.2% · −0.1%p, ▲ 계획보다 4.5%p 앞섬
Change +8.6% from $47.39M last year +8.6% 지난해 4,739만 달러 대비
Dates 11/01/26, 10/26/26 – 11/01/26, Week ended 11/01/26; axis 08/09 11/1(일), 10/26(월) ~ 11/1(일), 11/1(일) 마감 주; axis 8/9
Hours 12 PM, 9–10 AM 낮 12시, 오전 9시~오전 10시
Codes sign codes 101–106, date codes 11/01, departments 01–14, warehouses W-04 the same
Missing — (no sales last year) —

Layout Principles

One column on a white page, at most 1400px wide, 32px side padding (24px up to 1359px, 16px below 640px), a 16px gap, 40px above each band. No sidebar, no logo, no photo.

  1. Promo band (#005dab, 32px): Week ended 11/01/26 · Warehouse Savings valid 10/26/26 – 11/22/26 · Week 1 of 4, white 15px / 500, centered.
  2. Header (#fafafa, 76px): the company eyebrow and the report name; on the right the period with a calendar icon, the EN/KO toggle, an outlined Export PDF and a blue Copy as Markdown.
  3. Region band (#005dab, 44px): All warehouses (24) · West (9) · Central (7) · East (8), the selected one bold with a 3px white underline; vs the same week last year on the right. It is the filter: it scopes every card, and the URL keeps it (?region=west).
  4. Status row (#fafafa, 40px, 1px #eeeeee below): a green dot and 24 of 24 warehouses reporting, gas stations, paid members, and Data as of Sun 11/01/26, 11:59 PM PT on the right.
  5. This week (no band): the left 8 of 12 columns hold the headline, the lede, six price signs (3 × 2 on a subgrid), the asterisk footnote and Figure 1 comparable sales; the right 4 hold Table 1, the receipt. The two columns end on one line: the shorter one takes the extra height — Figure 1's plot, or the receipt's hourly barcode up to 124px, with any rest above the barcode.
  6. Warehouses and holiday stock (a band): Table 2 the warehouse board (two columns) and Figure 2 the holiday buy (four racks), stacked in a ruled block.
  7. Warehouse Savings (a band with the book's dates, the week and the coupon count): Figure 3, eight coupons in a 4 × 2 ruled grid.
  8. Channels, members and gas (a band): Figure 4 channels · Figure 5 new members · Figure 6 gas by day, three cells in a ruled row.
  9. How it's built (a band): a paragraph with two buttons, three ruled steps, the workbench window and a caption.
  10. Method and sources (a band): fine print in two columns, like the coupon book's terms.
  11. Footer (#fafafa): the catalog line, the sample note, the notice and the way back.

At most seven views in one band, and every view a standard form an agent or a BI tool can rebuild. Density: at 1440 × 810 the frame, the headline, all six price signs and the top half of the receipt are on the first screen. Reading order follows the list; never lead with a chart.

Component Stylings

Charts

Depth & Elevation

Flat and white. Cards are set apart by a 1px #d9d9d9 edge or by the ruled grid, never by shadows, and never lift on hover. Shadows exist only on the tooltip and the toast (0 0 5px rgba(0,0,0,.3), costco.com's). Bands are flat charcoal; the price sign's frame is a line, not a shadow.

Interaction & Motion

Accessibility

Responsive Behavior

Each step keeps what the wider steps changed.

Tool Mapping

Web and coding agents. Load tokens.css (installed in .claude/skills/dashboard-style/; or copy the colors block from the front matter) and these fonts (the second for Korean).

<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&family=Overpass+Mono:wght@400;500;600&display=swap">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css">

The barcode bar is a repeating-linear-gradient(90deg, …) of the stripe widths above, with box-shadow: inset -2px 0 0 for its solid end. The racks are a CSS grid (grid-template-columns: repeat(20, 1fr), grid-auto-flow: column) whose slots are classed in fill order, so each bay fills from the floor. Superscripts are spans at 0.42em aligned to the top of the digits. Give a device's parts a prefix (rc-, bd-, rk-) so shared classes never leak into them.

Tableau. Paste the <color-palette> elements of costco.tps into My Tableau Repository/Preferences.tps and restart Tableau Desktop. The categorical palette runs blue, red, Other and the comparison gray; assign the subject first. - Dashboard background #ffffff. The header in a #fafafa container; the region filter as a single-value list in a #005dab container with white text; section bands as text objects on #333333 with white bold text. - Each sheet in a container with a 1px #d9d9d9 border and 18/22px inner padding; worksheet shading white; tooltips white with a #cccccc border. - Price signs: text sheets in containers with a 1px #333333 border — the code in Tableau Book 8 #707070, the name in bold caps, the value at 36–40pt bold (Tableau cannot raise the cents; write $51.46M), the change in #0b6e22 or #bc4700 with ▲ or ▼, the plan or the comparison in a small line under it. - Receipt: a text table in a monospace font with Measure Names columns for $K and VS LY% (negatives in #bc4700), beside a thin bar sheet in #333333 with the subject's row in #1a70c2. Tableau has no pattern fills, so the barcode bar becomes a plain bar; keep it thin and keep the totals in the table. Transactions by hour: a bar chart of hour inside day (both discrete), small bars in #333333, no axis, the peak as a label. - Warehouse board: bars of SUM([Net sales]) / SUM([Plan]) - 1, sorted descending, a reference line at 0 in #333333, Color by vs plan < 0 (#bc4700 / #cccccc), labels at the bar ends; the code and region as row headers. - Racks: one waffle per category from a 100-row scaffold (X = INT((INDEX()-1)/5), Y = (INDEX()-1) % 5), Color by state (#1a70c2, #cccccc, white with a gray border as a square shape), a reference line at the plan's bay. - Coupons: bars of redemptions over forecast with a reference line at 100%, the title's coupon in blue. - Grid lines on rows only, solid #eeeeee; zero line #cccccc; ticks Tableau Book 9 in #707070. - Formats: $#,##0.00,,"M" · #,##0, (thousands, for $K) · #,##0 · 0.0% · +0.0" pts";−0.0" pts"; Korean workbooks #,##0.00"달러" and +0.0"%p";−0.0"%p". Fonts: Tableau Book unless Barlow is installed on every viewing machine and on the server.

Power BI. View → Themes → Browse for themes → powerbi-theme.json. It sets the data colors (blue, red, then Other), the white page, white visuals with a 1px #d9d9d9 border and no radius, axis and gridline colors and text classes. Install Barlow on authoring and viewing machines or accept Segoe UI. - Title each visual with the finding; put the measure in the subtitle and the method in a text box that starts with Note:. - Price signs: cards with a #333333 border, the callout value 28–36pt bold, the change as a measure with conditional formatting in #0b6e22 / #bc4700, always with a sign. - Receipt: a table visual in a monospace font, $K with display units in thousands, data bars on the sales column in #333333 (the stripes become a solid bar), VS LY with a conditional font color #bc4700 below zero. - Warehouse board: a bar chart of vs plan with an X-axis constant line at 0 and conditional colors (#bc4700 below zero, #cccccc above). - Racks: a matrix of 5 rows × 20 columns with conditional background colors, or a waffle custom visual; the plan as a constant line or a text marker.

Chart libraries (D3, Observable Plot, Vega-Lite, matplotlib, Datawrapper). Subject #1a70c2 (labels #004c8a), second #d42f37 (#c13533), Other #cccccc, comparison #909090 dashed 6 4, plan #333333, behind #bc4700, gridlines #eeeeee on rows only, baseline #cccccc, ticks #707070 at 12px, plot background #ffffff, square bar ends. The sample's Figure 1 in five forms is in the workbench of the live sample; comps.csv is its data.

Do's and Don'ts

Agent Prompt Guide

Install the style (npx @vizney/styles@latest add costco, curl -fsSL https://styles.vizney.com/install.sh | sh -s -- costco, or unzip the package in the project root). Agents that read skills load dashboard-style on their own and work in one of three modes: Build (plan the views, then draw them to this file), Restyle (move an existing screen onto this file without changing its data) and Review (a table of rule, finding, severity and fix). For an agent without skills, start the prompt with Read DASHBOARD.md and follow it exactly. For example:

Read DASHBOARD.md and follow it exactly. Build our weekly warehouse report as one self-contained HTML file with
fictional data, in English and Korean (?lang=en|ko, English by default), on the white page the spec describes.
Top: a blue promo band with the week and the coupon book's dates; a #fafafa header with the report name, the period,
the EN/KO toggle, an outlined Export PDF and a blue Copy as Markdown; the blue region band as the filter for every view,
kept in the URL; a #fafafa status row with the reporting count in green.
This week: the sales-release headline ("Net sales of $X million for the retail week ended …, an increase of n percent
from $Y million last year"), a lede with comparable sales and the result against plan, and six price signs (code, caps
name, a big value with superscript $ and decimals, a signed change, a fine-print line, a date code); comparable sales as
lines (adjusted solid blue, reported dashed gray, ends labeled); beside them the department receipt: $K lines with
barcode bars and VS LY, SUBTOTAL, GAS STATION, **** TOTAL, the item count, and transactions by hour as its barcode.
The two columns end on one line.
Warehouses and holiday stock: a warehouse board ranked against plan (bars from the plan line, behind plan in orange,
two columns) and the holiday buy as pallet racks (20 × 5 slots per category: sold blue, in the warehouse gray, arriving
outlined, a plan-to-date line).
Warehouse Savings: eight coupons in a ruled grid with redemptions against forecast. Then channels, new members and gas
by day in a ruled row, and the method as fine print.
Every view on the same white card: figure label, finding title, subtitle, keys, view, "Note:". At most seven views per band.
Use only the values in Data Colors, the formats in Numbers, Dates & Units and the components in Component Stylings.
Every chart and list needs a tooltip, keyboard control and a screen-reader table.

Before it is done, the agent checks: - [ ] The headline is the sales-release sentence; the six price signs carry signed changes colored good (#0b6e22) or bad (#bc4700), a fine-print line and a date code; net sales shows its plan. - [ ] Every view sits on a white card (1px #d9d9d9) or in a ruled cell, with no shadow; every card title states a finding; every note starts with Note:. - [ ] Blue #1a70c2 only for what each title names and the rest gray; red only for Warehouse beside Online; behind plan and bad changes in #bc4700; no #005dab or logo red on data. - [ ] The receipt reads at a glance: $K lines that add up to the subtotal, a barcode bar on every department, VS LY with negatives in orange, transactions by hour where the barcode sits. - [ ] Plan appears where it matters (the lede, the net sales sign, the warehouse board, the racks), and the shortfalls are ranked and named. - [ ] Gridlines on rows only; line ends labeled; no dual axis, pie, donut, gauge, gradient or photo. - [ ] Numbers, dates, hours and money follow the formats in both languages. - [ ] Cards side by side end on one line at 1440, 1280 and 1024px without a stretched chart; nothing breaks at 390px. - [ ] Text ≥ 4.5:1; marks below 3:1 have a second cue; every view has a tooltip, keyboard control and a data table; the filter changes every card.