THE INTRO CARD is free — what an AI skill card is and how to use one Download →Lost Lauren, contact us

THE METHODS · THE WAYS · Nº 12 · EDITION 2 · LAUNCHING SOON

LUND CARDS · THE METHODSNº 12
THE MIRROR CARD — the LSC-1 face
THE CARD AS TEXT · FOR EYES AND FOR MACHINES

THE MIRROR CARD · The parity seat: the desktop view and the phone view held side by side until they are the same site.

WAKES WHEN A responsive page is about to ship and no one has checked that the phone carries everything the desktop does. · Someone says a section that is on the desktop does not show up on their phone. · The sections seem to come in a different order on the phone than on the wide screen. · The stylesheet turns things off at small widths and no one is sure which of those are content and which are heavy effects.

THE LOOP

  1. Hold the wide view and the narrow one together
  2. Name every section gone or out of order
  3. Tell content hidden from heavy layers dropped
  4. PARITY HELD only when the phone has it all

NEVER

  • Never says PARITY HELD with a section gone
  • Never calls a dropped canvas layer a break
  • Never passes a render it cannot see
  • Never claims a certainty it does not have

IT MAKES sections — same sections, same order, in both views; surfaces — content hidden or motion stilled on small screens only; sweep — all of the above, ranked; PARITY HELD only when none is open.

THE LAW The mirror reads two snapshots of one page — the desktop render and the phone render — and lines them up by their sections. A section on the desktop that is not on the phone is MISSING ON MOBILE; the sections both views share, in a different sequence, are OUT OF ORDER; and in the stylesheet's small-screen rules, content set display:none is HIDDEN ON MOBILE and an animation set to none is MOTION OFF ON MOBILE. The heavy visual layers a phone is right to drop — a canvas, a particle field, an aurora, a breeze — are named INTENTIONAL, a deliberate choice, never a break. Breaks rank worst-first — gone, then out of order, then hidden, then stilled — and the mirror says PARITY HELD only when none is open. What it cannot see from two snapshots — the live render, the timing of motion, exact pixels, speed on the device — it names as not looked at, never as passed.

IN THE BOX SKILL.md · CARD.md · ▣ scripts/skuggsja.py (machine) · ▣ scripts/evals.py (test runner) · tests/EVALS.json (10 tests) · references/ (schema + fictional demo) · START-HERE.md · system/ doors · MY-LEDGER.md · LICENSE-NOTE.md · card.svg · card.json · card.html · AUDIT.md · MANIFEST.md · WITNESS.md · SELFTEST.md.

PROOF SELFTEST 11/11 · witnessed in Claude 2026-10-14 on fictional fixtures · the test prompts in fresh chat, 10/10 · Edition 2.

THE SEAL 98 of 100 · LEGENDARY · WITNESSED · Trigger 5 · Machinery 5 · Law 5 · Portability 5 · Proof 5

IT CAN BE WRONG an AI reading a text file: it can be wrong and can invent a number, a rule, a name or a date; check what matters against your own records and the source; the risk is yours. LICENSE-NOTE.md rides in the packet and is the licence.

THE PUNCH · SHA-256 OF SKILL.MD · 6F2B1DD56B7425F2D832D4DE

THE FACE, FULL SIZE → · THE MACHINE FACE → · card.json →

THE MIRROR CARD

The parity seat: the desktop view and the phone view held side by side until they are the same site.

SECTIONS · SURFACES · SWEEP

98LEGENDARYWITNESSEDIN CLAUDEIN LUNDRIN CHATGPT

WITNESSED — the studio saw this card run and produce what its tin promises, and wrote the date down. What the marks mean →

THE SPEC SHEET · READ BEFORE YOU BUY · THE STANDARD EVERY CARD MEETS →

SEAL
98 of 100 · LEGENDARY · WITNESSED
EDITION
E1 · witnessed 2026-10-14
MACHINE
scripts/skuggsja.py · 3 commands · selftest 11/11
RUNS
On your own computer. Standard library only, offline; no account, no key, no telemetry.
HOSTS
Claude · Claude Code · ChatGPT · Gemini · any AI that reads a file (START-HERE.md and system/ name each door)
LICENCE
One person, any number of their own AIs and computers · editions replace files · nothing renews · freeze, not loss
PUNCH
6F2B1DD56B7425F2D832D4DE · sha-256 of SKILL.md · check any file against it →

CITE THIS CARDTHE MIRROR CARD, Edition 2. Lund Studio LLC, Westminster, Colorado. https://lundr.tech/?view=mirror-card. Punch 6F2B1DD56B7425F2D832D4DE. Retrieved 2026-10-15.

What it is.

Use when a page must show the same thing on a phone as on a desktop: every section present, in the same order, nothing content hidden or stilled on small screens. Not a render or speed test.

It carries a machine that shows its working: sections — same sections, same order, in both views; surfaces — content hidden or motion stilled on small screens only; sweep — all of the above, ranked; PARITY HELD only when none is open — 11 checks in its selftest. It never says PARITY HELD with a section gone; never calls a dropped canvas layer a break; never passes a render it cannot see; never claims a certainty it does not have.

The law, written into the card.

It is in the card itself, so the AI follows it.

THE LAWThe mirror reads two snapshots of one page — the desktop render and the phone render — and lines them up by their sections. A section on the desktop that is not on the phone is MISSING ON MOBILE; the sections both views share, in a different sequence, are OUT OF ORDER; and in the stylesheet's small-screen rules, content set display:none is HIDDEN ON MOBILE and an animation set to none is MOTION OFF ON MOBILE. The heavy visual layers a phone is right to drop — a canvas, a particle field, an aurora, a breeze — are named INTENTIONAL, a deliberate choice, never a break. Breaks rank worst-first — gone, then out of order, then hidden, then stilled — and the mirror says PARITY HELD only when none is open. What it cannot see from two snapshots — the live render, the timing of motion, exact pixels, speed on the device — it names as not looked at, never as passed.

The method.

  1. Take two snapshots of the one page: the rendered HTML saved once at a wide window and once at a narrow one (in a browser, each view's `document.documentElement.outerHTML` after it has loaded).
  2. Hold them by their sections: every `<section>`, `<main>`, `<article>`, keyed by its id. A section on the desktop and not the phone is MISSING ON MOBILE; one on the phone and not the desktop is a MOBILE ONLY note, not a break.
  3. Check the order: the sections both views share must run in the same sequence, or OUT OF ORDER names the first place they diverge.
  4. Read the stylesheet's small-screen rules (the `max-width` media blocks): content set display:none is HIDDEN ON MOBILE, an animation set to none is MOTION OFF ON MOBILE — unless the selector names a heavy layer (canvas, particle, aurora, breeze), which is INTENTIONAL.
  5. Rank every break worst-first — gone before out-of-order before hidden before stilled — and say PARITY HELD only when none is open, naming in the same breath what the mirror did not look at: the live render, the timing, the pixels, the speed — those go to THE ARMADA CARD.

What you bring.

  • The desktop snapshot — the page's rendered HTML at a wide window.
  • The phone snapshot — the same page's rendered HTML at a narrow window.
  • The stylesheet behind them (optional), so the mirror can read what the small-screen rules turn off.

Planned as a separate seat, not in this box and not yet on sale: the studio's own last parity pass before a responsive build ships.

What it does once your AI has it.

  • sections Same sections, same order, in both views
  • surfaces Content hidden or motion stilled on small screens only
  • sweep All of the above, ranked; PARITY HELD only when none is open

What it will never do.

It never says PARITY HELD with a section gone; never calls a dropped canvas layer a break; never passes a render it cannot see; never claims a certainty it does not have.

Where it hands off: Whether the page actually renders error-free on real phones and tablets → THE ARMADA CARD; the mirror compares two snapshots, it does not drive a device; A single artifact swept for dead links, duplicate ids, placeholders and wrong counts → THE ODIN'S EYE CARD; The whole seven-step build method the parity check sits inside → THE STORM CARD.

It is not a render, contrast or speed check. It is an AI reading a text file: it can be wrong, so check what matters against your own records and the source. The holder brings their own AI; no endorsement by Anthropic or any other AI company is claimed.

What’s in the buy.

  • SKILL.md — the card your AI reads: when it wakes, the loop, the never-lines, the hand-offs.
  • CARD.md — the whole card in ten sections: face, law, method, machine, what you bring, never, tests, seal, term.
  • scripts/skuggsja.py — the machine, Python standard library only; `selftest` proves it on its own fixtures.
  • tests/EVALS.json and scripts/evals.py — 10 test prompts and the offline runner that scores your AI's answers.
  • references/ — the data schema and FICTIONAL demo files, invented to show the machine, not real.
  • MY-LEDGER.md — your own record of what you asked and what you decided.
  • START-HERE.md, system/short-prompt.md, system/rules.md — the doors, for any AI with or without skills.
  • card.svg, card.json, card.html, AUDIT.md, MANIFEST.md, WITNESS.md, SELFTEST.md — the faces and the proof.
  • NOT IN THE BOX — any studio edition (planned, not yet on sale: the studio's own last parity pass before a responsive build ships). Also not in the box: any data you must bring, and advice of any kind (not a render, contrast or speed check).

PROOF · SELFTEST 11/11 · WITNESSED IN CLAUDE 2026-10-14 ON FICTIONAL FIXTURES · THE 10 TEST PROMPTS ASKED IN A FRESH CHAT HOLDING ONLY THE CARD · 10/10 · EDITION 2 · PUNCH 6F2B1DD56B7425F2D832D4DE

ON EVERY DOOR · A CARD FOR YOUR AI, A FILE FOR YOUR COMPUTER

In Claude: turn on code execution under Settings › Capabilities, then Customize › Skills › + › Create skill, and upload the zip as it is — START-HERE.md in the box walks you through it, and tells you how to keep the ledger. In ChatGPT, Gemini and the rest: a Project, a GPT or a Gem with the card’s files attached and the short door in the box pasted as its instructions. The words run anywhere an AI reads Markdown; the machines run wherever the host runs Python. Witnessed in Claude only. The host marks →

Take it.

Nº 12 — LAUNCHING SOON

Sold as is under the term printed. A card instructs an AI you operate; results depend on your model, your files and your judgement. Not medical, legal, tax or financial advice, never the person’s boss, and not a licence to practise. The terms →

ONE PAYMENT · NOTHING RENEWS ITSELF

OFFLINE · ONE LICENCE · PUNCH-CHECKABLE · THE STANDARD

One payment. The file is yours to keep and keeps working at its edition; new editions issued in the year after you buy reach you by email as replacement files. Tax is added at checkout where it applies. Nothing auto-renews.

One email when it is on sale, from the studio; nothing else, ever.

A TERM, NOT A SUBSCRIPTION: NOTHING RENEWS ITSELF AND NOBODY IS CHARGED AGAIN. WHEN A TERM ENDS THE FILES STAY ON YOUR COMPUTER AND STAY READABLE — FREEZE, NOT LOSS.

THE MACHINE · IN THE OPEN · FROM THE CARD’S OWN SELFTEST.MD

skuggsja.py, every command showing its working.

A small Python program, standard library only. Your AI runs it; you can too. The block below is pasted from the card’s own SELFTEST.md, as printed when it was run from inside the packet.

sectionssame sections, same order, in both views
surfacescontent hidden or motion stilled on small screens only
sweepall of the above, ranked; PARITY HELD only when none is open
selftest11 checks that prove the machine; it must print selftest 11/11
THE SELFTEST, AS PRINTED
ok   1  a matched pair holds parity — no section MISSING, no order break
ok   2  the mirror sees the section MISSING ON MOBILE and will not pass it
ok   3  the mirror sees the order does NOT match between the two views
ok   4  the mirror FLAGS content set display:none on small screens only
ok   5  the mirror sees the animation stilled on small screens only
ok   6  a heavy canvas layer is read as INTENTIONAL, a content block is not
ok   7  the canvas drop is named a deliberate choice, never a break
ok   8  the sweep gathers every break (4 found)
ok   9  the sweep ranks gone before out-of-order before hidden before stilled
ok   10  the report names what it did not look at and never says PARITY HELD with a break open
ok   11  a matched pair with only canvas dropped passes the whole sweep: PARITY HELD
selftest 11/11

THE RUN IS PASTED FROM THE CARD’S OWN SELFTEST.MD AS PRINTED. ITS FIXTURES ARE FICTIONAL, INVENTED FOR THE TEST; NO PRIVATE PERSON IS NAMED.

QUESTIONS AT THE TABLE

Asked before the wire.

What does it need from me?

The desktop snapshot — the page's rendered HTML at a wide window. The phone snapshot — the same page's rendered HTML at a narrow window. The stylesheet behind them (optional), so the mirror can read what the small-screen rules turn off. If something it needs is missing, it says what is missing and stops there.

Does it send anything anywhere?

No. The machine is a standard-library Python program that runs on your own computer and sends nothing anywhere; the words run wherever an AI reads Markdown. No server, no account, no key.

What is on the record?

The machine's selftest (11/11), run from inside the packet in Claude on 2026-10-14 on fictional fixtures and pasted into SELFTEST.md as printed; the twelve-check audit (AUDIT.md). Owed, and said so in WITNESS.md: Any run on real data. Every demo file is fictional. The punch on the face is the SHA-256 of SKILL.md, so a downloaded copy can be checked against this room.

Can it be wrong?

Yes — it is an AI reading a text file: it can be wrong and can invent a number, a rule, a name or a date; check what matters against your own records and the source; the risk is yours. LICENSE-NOTE.md rides in the packet and is the licence. It is not a render, contrast or speed check.

What will it never do?

It never says PARITY HELD with a section gone; never calls a dropped canvas layer a break; never passes a render it cannot see; never claims a certainty it does not have.

← THE METHODS · THE FLOOR →

AT YOUR ELBOW, NEVER THE BOSS · NOT A RENDER, CONTRAST OR SPEED CHECK · NOT A PAYMENT CARD · NO REFUNDS · © 2026 LUND STUDIO LLC

PAY BYAmerican Express Apple Pay Diners ClubDiscoverGoogle Pay Mastercard PayPalShop Pay Visa
CART · 0