Lab 23 / the shell

The frame, whole.

Everything that stays when the page changes, drawn as it stands: the marks the platform is written in, the switcher that names whose books and which application, the rail and its three states, the world clock, the group block, the notification centre, the period selector and the attention rail. The content area is empty throughout, because the shell owns everything around a page and nothing inside it.

01 / the icon family

Two hundred and sixty-seven marks, drawn for this system.

Every mark is drawn to the system's own hand: 1.75 stroke, square caps, mitred joins, 24px grid, no rounding anywhere, and each one is descriptive rather than generic. The family covers every navigation row in all six modules, the instruments, the nineteen item types a booking is made of, and the structural geometry the interface itself needs, so nothing anywhere on the platform is drawn by a borrowed hand.

CRM

Accounting & Finance

HR & Payroll

Workstation

Content Management and Consolidated Reporting

The instruments

The trade, what a booking is made of

The handOne stroke weight, square caps, mitred joins, 24px grid. The same hand as the frame, so a mark never looks imported.
DescriptiveDepartures is a climb off a runway, Approvals a signed sheet, Meet and greet a person holding a name board. Each says its noun.
One weight onlyNo filled variants, no duotone. Emphasis comes from colour and position, never from a second icon style.
Marks are not buttonsIcons ride inside rows and instruments. Page actions stay words; the family never re-opens that door.
How the family lives

Inline paths in a single component. A mark is corrected in one place, a new mark is drawn rather than imported, and a mark is chosen by name at the point of use so no binding can shadow it.

02 / the shell

One card, three states, five clocks, one block.

The merged switcher, closed

Northline Travel LLCUnited States - Books in USD
CRM

Three facts in the order a person needs them: the entity, the books it keeps, the application in hand.

Open, one panel and two sections

Entity
Northline Travel LLCUnited States - Books in USD
Northline Travel UK LtdUnited Kingdom - Books in GBP
Northline Voyages SASFrance - Books in EUR
Concord Voyages SASwitzerland - Books in CHF
Module
CRM
Accounting & Finance
HR & Payroll
Workstation
Content Management
Consolidated Reporting

The rail's three states, corrected

RestInk-two text on the rail ground, the mark quiet, no fill of any kind.
HoverThe row lifts to the card ground and its text goes to ink. Nothing else moves.
ActiveCard ground, ink text, 2px blue left edge, blue mark, semibold. One row only.
NeverGrey washes, ink fills, tinted hovers. A filled dark row means something is wrong.

The world clock

World clock
New York08:14
London13:14
Paris14:14
Beijing20:14
Tokyo+121:14

Five by default at the foot of the rail, seven at most. The add control states the room left and disables itself at seven rather than failing on the click.

The group block, and the height law

CRM · Customers Search, jump to a reference, or ask TAI⌘K 3 FT

TAI, the bell and the mark are three cells behind hairlines in one frame, identity anchoring the right end. The command field is the same 32px height on the same baseline: nothing in the bar sits at its own size. The user mark returns to initials only, as labs 02, 05, 06 and 10 always drew it; the name and email live in the account menu's header, and notifications also take a rail row under a You group.

01 / the notification centre

What the platform actually says.

The platform can legitimately raise notifications from eight sources, and the variety in that list is what the design carries: some notifications are a person doing something, some are a clock running out, some are money moving, and some are the outside world changing its mind. They do not deserve the same row.

The sweep · what can raise a notification today

SourceEvents
PeopleMentioned in a trip discussion · reply to your comment · a record handed to you · an internal note on something you own · a colleague requests your approval
CustomersA quotation signed · a quotation declined · a share link opened for the first time · a customer replies on a ticket · a customer replies to a shared itinerary
Your workA task falls due · a task runs late · an anchored reminder fires · an approval is decided
MoneyA payment lands against a booking · a payment is reversed · an invoice is raised · an invoice passes its terms · a credit note is issued · a credit release needs your signature · a supplier bill falls due · a supplier line nears its limit
FulfilmentAn item's ticketing deadline runs down · a supplier confirms · issuance is blocked by the gate · a voucher is still unissued near departure · traveller documents are missing
Policy clocksA refundable booking reaches its next penalty step · free cancellation ends today · an option hold expires · a quotation expires
The outside worldA flight time moves · a flight is cancelled · a hotel changes a room type · weather threatens a departure · a visa rule changes for a destination
SystemA release is published · an export is ready · an import finished with errors · a role or permission changes

The panel · five leads, three rows each, the rest one click away

Notifications
3Mark all read
Happened9Will happen6
Flight EK 202 cancelled by the airline14 Sep · 2 pax BKG-7QP2K4M9Marchetti GroupCaught by TAI11m Open the itemTell the customerMark read
Ticketing deadline runs out03:12 left ITM-2K9DQ4XWHaneda to ItamiSupplier clock25m Issue nowHold with supplierMark read
Last free cancellation step reached50%100% ITM-7WB3N8LMPark Hyatt KyotoPolicy clock1h See the policyMark read
Marchetti Group signed the quotationUSD 196,300 QUT-5RD9K3WPKyoto roadshow v1.2Elena Marchetti2h Create the bookingOpen the quotation
Payment receivedUSD 60,000 BKG-7QP2K4M9Balance USD 16,300Marchetti Group3h Open the booking
See all 15 in the notification centre

How the row is built

The markThe kind's own icon, drawn from the family. A flight change wears the flight, a signature wears the pen, money wears the note. The mark is how the eye sorts the list before reading a word.
The headlineWhat happened, in six words or so, with the actor named when a person did it. Never a category label like "Operations".
Three rows, one question eachROW ONE, what happened: the mark, the headline naming the actor, and the one figure the nature carries. ROW TWO, which record: the reference, what it is, who or what caused it, and when. ROW THREE, what to do: the actions. Every notification wears the same three, so the eye learns one shape and the actions are always in the same place.
The figure sits with the headlineRight of the headline, because what happened and how much are one thought: money, time remaining, a date and party, or the old value struck through with the new beside it. One chip, never a row of them.
Row two names the recordThe reference in a quiet frame, then what it is in words ("Haneda to Itami", "Park Hyatt Kyoto", "Balance USD 16,300"), then the actor and the elapsed time. "Caught by TAI", "Supplier clock" and "Policy clock" are honest actors and they matter: a machine noticing is different from a customer acting.
Five, then the doorThe panel holds FIVE notifications and no more, ordered by consequence and then by time, exactly as the attention rail ranks. The sixth is not hidden, it is one click away: the foot states how many there are in total and opens the notification centre, which is where scrolling, filtering and history belong. A panel that scrolls is a page pretending to be a menu.
Row three is the pointAt most two actions, the primary in ink, on their own row in the same place on every notification. A notification with nothing to do still offers the way in, so no row is a dead end. Mark read sits quietly at the right.
Where 460px comes from

A headline plus its figure on one line is what sets the width: at 460px "Last free cancellation step reached" and its 50% to 100% chip share a line without either being squeezed. Narrower and the headline wraps, which costs a third line on every row.

Severity, and the count

The edge is hueless as everywhere else: solid ink is broken, hatched is about to break, information carries nothing. The header count stays the platform law, what is BROKEN rather than what is unread, so an unread release note does not put a red number on the bell. Unread rows carry the faintest paper tint, and and with five three-row leads the whole panel is roughly 520px tall, which still clears any laptop without scrolling.

02 / the world clock

A plus where the eye already is, and a real manager behind it.

The add control sits at the right end of the clock's own header, in line with the times below it, so the column of controls and the column of figures share an edge. Behind the plus is a proper interface: the active clocks with their handles and a remove control, a search that answers to city names and ISO codes, and the weather, which the platform already has an API for and which is the second thing anyone wants to know about a place.

In the rail · weather beside the time

World clock
New York18°08:14
London14°13:14
Paris26°14:14
Beijing29°20:14
Tokyo+131°21:14

City, then the weather as a mark and a temperature, then the time. Three columns, one baseline, and the day marker only when the date differs.

The manager · active clocks, search, weather

World clock5 of 7
New YorkUS08:14
LondonGB13:14
ParisFR14:14
BeijingCN20:14
TokyoJP21:14
SingaporeSingapore · GMT+8SG28°
SintraPortugal · GMT+1PT24°
SinopTurkiye · GMT+3TR22°

Search answers to the city, the country and the ISO code, so "SG", "Singapore" and "Sing" all land. Each result previews its offset and current weather before it is added, and the header states the room left rather than failing at seven.

03 / the switcher panel

Same card, half the height.

An entity keeps one line with its books pushed to the right in mono, and the six modules become a two column grid. Ten rows become four rows and three, and the whole panel fits under the card without covering the navigation.

The panel, open

Entity
Northline Travel LLCUS · USD
Northline Travel UK LtdGB · GBP
Northline Voyages SASFR · EUR
Concord Voyages SACH · CHF
Module
CRM
Accounting
HR & Payroll
Workstation
Content
Group

The books move to a mono tail: "US · USD" says what the long sentence said. Modules take their marks and short names, two to a row. The full names stay on the card and in the crumb, so nothing is lost.

04 / the period selector

Four answers, or your own.

A list that names every period a person might want is wrong for somebody. Two modes. Simple is the four periods anyone asks for by name. Advanced holds the quarters and a range you draw yourself, with the year switcher beside it and the day count stated as you pick, so the range is understood before it is applied.

Simple

SimpleAdvanced
Current month1 - 22 Aug 2026
Previous monthJul 2026
This year2026 to date
Last year2025

Advanced · quarters and a drawn range

SimpleAdvanced
This quarterJul - Sep 2026
Previous quarterApr - Jun 2026
2026August
Mo Tu We Th Fr Sa Su
28293031123 45678910 11121314151617 18192021222324 25262728293031
6 Aug to 20 Aug15 daysApply
What the day count is for

A range picked by eye is easy to get wrong by a day at either end. Stating "15 days" as the second date lands turns the picture into a fact, and it is the number a person compares periods with anyway.

06 / the attention rail, redrawn

Room to breathe, now that it scrolls.

The rail carries up to ten and scrolls, so the type sits at full size and the cell has a proper structure.

The rail · lead, eight alert cells, the door

The four cell states, at size

Incident inverts to ink behind a red edge, and only a genuinely crossed gate earns it. Danger carries the solid red edge, attention the orange hatch, and the door sits on paper with no edge at all, because it is a way out rather than an alarm.

Anatomy of a cell

The edge, 4pxSeverity, read before anything is read. Solid red is broken, orange hatch is about to break, the door has none.
The name, 10pxInter, medium, uppercase, wide tracking, in muted ink. It names the number, and it no longer truncates: a cell that cannot show its own name is not a cell.
The figure, 23pxMono, tight, tabular. The point of the cell and now the largest thing in it, with money carrying its currency in full.
The hairlineSeparates what is happening from where it is answered, so the cell reads as two facts rather than three lines of caption.
The destination, 10px"Module · Page", with the arrow at the right edge. It is the promise that clicking goes somewhere, and it never abbreviates.
The hover, one stepTo the muted tint, per L26c. Ink is a state, not a hover.
What the extra room bought

Names no longer truncate ("Overdue receiva…" and "Unissued depart…" are gone), the figures return to full size, and the destination is a legible line rather than a whisper. The cell is 232px against the old 143px floor, and the rail scrolls to reach the tenth.

The lead, alone

Needs you
15Open Issues
Today, 22 Jul · 08:14
Inverted, aloneInk, and the only permanently ink thing on the board apart from a live incident. Weight says urgency before a number is read.
The count at size36px mono with the noun beside it. Fifteen is the point of the lead, not a caption under a label.
A live clockThe date carries the time and it ticks. A worklist about today should show that today is moving.
One pulse, one sweepA pulsing indicator and a slow sweep at the foot, both honouring reduced motion. The only animation anywhere on the board.