Command palette — flexi (velký), roste s oknem; ⌘K · Ask AI (Tab) · náhled kontextu vpravo
Ask AI Tab
Sekce
Sekce
Sekce
Navigate
Form dialog — 640 střední; taby šablon, pole, Create more + primár s ⌘↵
Title
All Tab
Field label
Set value…
Field label
Set value…
Field label
Set value…
Field label
Set value…
Field label
Set value…
Create more
Transaction — 640 střední; vstupy + ledger (položky · součet · zůstatek před→po) + primár nesoucí cenu
Title
Field label
Field labeloptional
PoložkaQty × priceSubtotal
Tier label 000 × 00 00 000
Tier label 000 × 00 00 000
Tier label 000 × 00 00 000
Filter multiplier × 0,0 00 000
Total 00 000
Balance after 000 000→ 00 000

Footnote — how the figures are derived. Credits are deducted once.

Escclose
Task — nový úkol, 640 střední, commit; JEDNO pole (úkol nemá název a popis), @ v textu propojí záznam, chips řádek = relace mimo text (kontext otevření + Propojit); plný kanon na kartě Dialog úkolu
Nový úkol
Vytvořit další
Task — existující úkol, 640 střední, dokument: ŽÁDNÝ edit mód — view = edit, text je contenteditable přímo ve view, autosave („Uloženo" v hlavičce), žádný primár; circle checkbox = hotovo; ⋮ dole v patičce vpravo = jediná položka Smazat + Cancel Esc; dialog roste s obsahem do 80vh; podúkoly a overlaye viz karta Dialog úkolu
Úkol Uloženo 14:32
Připravit podklady pro a poslat rekapitulaci — termíny, rozsah pilotu a návazné kroky probrat s ještě před schůzkou.
Deal — nový obchod, 640 střední; stejná struktura jako nový úkol — jeden primární input (název) + chips řádek s + Propojit (stejný kanon jako úkol — našeptávání osob, institucí, produktů) + inline meta toolbar dole: Objem (dialog input) · Vlastník (našeptávání uživatelů CRM, předvyplněn „já“)
New deal
Create more
Objem — dialog input; částka + měna
CZK
Propojit — našeptávání osob, institucí a produktů
KPKomerční pojišťovnainstituce
ZWZdeněk Welzlosoba
FIFond Invest IIprodukt
Vlastník — našeptávání uživatelů CRM; předvyplněn „já“
ŠSŠtěpán Svobodajá
JNJana Nováková
MDMarek Dvořák
Confirm — 400 malý, centrovaný; titulek + jedna věta důsledku + Zrušit / destruktivní primár
Title of the decision
Čtení e-mailu — flexi (velký), pracovní okno .work (F75): tělo je cizí HTML v iframu bez vlastní výšky, okno se proto roztahuje na celou plochu jako psaní (tady reprezentativní výška — karta je statická); hlavička (odesílatel · komu · čas), tělo s citovaným vláknem, reply lišta
View email
Re: Prístup k prostredi eshop
roman.fura@seznam.cz to Štěpán Svoboda
16th Jun 2026 5:08 PM
Doufám, že jsi přivezl další cenný kov 🙏👍😄 ---------- Původní e-mail ---------- Od: Štěpán Svoboda <stepan@clientelo.cz> Komu: Roman Fura <roman.fura@seznam.cz> Kopie: Mkura Jiří <Jiri.Mkura@lbm.cz> Datum: 15. 6. 2026 12:10:28 Předmět: Re: Prístup k prostredi eshop Ahoj Romane, ted jsem se vratil z druhe regaty. Diky moc, checknu to s Frantiskem a jdeme makat. Preji fajn den, Stepan > On 12. 6. 2026, at 18:46, <roman.fura@seznam.cz> <roman.fura@seznam.cz> wrote: > > > Stepane, dnes sel do mailu (na tebou zaslany email kontakt) TOKEN s instrukcemi k > instalaci VPN forti klienta. Kdyby nahodou si ten clovek nevedel rady (doufam , ze ano), > tak at se ozve Jirkovi Mkurovi a ten mu pomuže s přístupem. > > Hezky víkend. > p.s. nemeli jsme dostatek forti licenci, chvilku to trvalo. > >
Psaní e-mailu — flexi (velký), pracovní okno .work: roztahuje se na celé okno, výšku mu dává okno, ne obsah (tady reprezentativní výška — karta je statická); příjemci (chips + našeptávač), předmět, tělo, toolbar příloh/formátování, Odeslat ⌘↵
Compose email
From Š Štěpán Svoboda
To Cc / Bcc
Subject
Mass sending
Nová událost — 640 střední; typ (video · telefon · schůzka · úkol), účastníci s návrhy, propojení na obchod, Create more
Event
Type
Video conferencing
Google Meet meet.google.com/abz-qrtp-xyz
When
Mon, 30 Jun 2026
10:00
–
10:30
Participants
JNJana Nováková
MD Marek Dvořák marek.dvorak@apm.cz Klient
Deal / project
AP
APAPM Capital — Fond II
Description
Add a description…
Esc zavřít
Náhled souboru — flexi (velký); výšku bere z obsahu, strop viewport − žlab (F51), .tall netřeba. Stáhnout v hlavičce; nad stropem scrolluje tělo
Sken QR — 400 malý; kamerová scéna 1:1 (max 340) + reticle, hint pod scénou
Dvě třídy dialogu — commit něco odešle, dokument něco upravuje. Nikdy nemíchat obojí.
commit — primár nese akci, ⌘↵ commitne, Esc ruší
Nový kontakt ✕
Zrušit Vytvořit ⌘↵
dokument — autosave, stav v hlavičce, patička jen vkládá
Patrik Šimčík Uloženo ⋯ ✕
Nadpis poznámky Tělo je markdown…
+
Commit má primár a Create-more; dokument nemá co potvrzovat — proto v patičce jen „+“ pro vložení bloku a stav uložení nahoře. Plnou dokumentovou instanci drží karta Dialog poznámky.
Anatomie hlavičky — tři zóny, mezi nimi nic
Název UloženoKopírovat odkaz ⋯✕
1 · kontext — ikona + název, nebo entity chip, když dialog patří k záznamu 2 · kontextové akce 3 · ⋮ a zavřít
Hlavička nese kontext, ne jen název — když dialog pracuje nad záznamem, ukazuje entity chip. Akční zóna je vždy vpravo a vždy ve stejném pořadí.
Mobil — šuplík ze spoda: pod 720 px se KAŽDÝ dialog prezentuje jako bottom sheet — plná šířka, zaoblení jen nahoře, grabber, patička nad safe-area; malý i střední berou výšku z obsahu, flexi jede téměř na plnou výšku (strop 92 %). První plná instance: karta Dialog úkolu.
commit jako šuplík — jediné velké CTA přes celou šířku (Create-more jen na desktopu); Zrušit nahrazuje gesto dolů a ✕
Nový kontakt ✕
Vytvořit
dokument jako šuplík — autosave, výška podle obsahu; víc obsahu = vyšší šuplík
Patrik Šimčík Uloženo ✕
Nadpis poznámky Tělo je markdown…
+ ⋯
Gesto dolů / tap na scrim = Esc (rozepsaný commit se před zahozením zeptá) · overlaye uvnitř = druhý šuplík nad prvním · klávesnice zvedá patičku (safe-area) · desktopová kotva ~11vh se nemění. Sjednocení startuje u úkolu (plná instance na kartě Dialog úkolu) a postupně ho přebírají všechny dialogy.
Plášť. Jeden scrim (--ov-scrim), jeden podpisový stín (--overlay-shadow), radius-xl, obsah clipnutý. Max 1 rám — plášť je jediný box, žádné rámy v rámech (§0).
Dvě třídy. Commit odesílá — primár + ⌘↵, Esc ruší. Dokument upravuje — autosave, stav „Uloženo“ v hlavičce, žádný primár. Nikdy nemíchat obojí v jednom dialogu.
Hlavička. Vlevo kontext: ikona + název, nebo entity chip, když dialog patří k záznamu. Vpravo akční zóna: kontextové akce · ⋮ · zavřít. Mezi tím nic.
Kotva. Form a quick dokují ~11vh od horní hrany; confirm centruje — na moment vlastní obrazovku. Flexi nedokuje: stojí v okně symetricky, žlab je stejný nahoře i dole.
Tři třídy, ne tři čísla. Malý 400 (confirm, sken QR) a střední 640 (form, transakce, úkol, událost) jsou MÍRY — formulář dostane tolik místa, kolik mají jeho kolonky. Velký je FLEXI (.acrm-dialog.flex): plocha na práci, ne kolonky k vyplnění, proto nemá pevný rozměr v žádné ose — šířku bere z okna (žlab po obvodu, strop 1200), výšku z OBSAHU: plášť roste jen tolik, kolik obsah potřebuje, a když se obsah se žlabem do viewportu nevejde, zastaví se na 100vh − 2מlab (--sp-6) a scrolluje JEN tělo (F51). Pevný pixelový strop výšky neexistuje. Pracovní okna, kterým výšku nemá co diktovat obsah (paleta, psaní e-mailu, ČTENÍ e-mailu — tělo je cizí HTML v iframu bez vlastní výšky, F75 —, psaní poznámky, náhled šablony), se ROZTAHUJÍ na celé okno — modifikátor .work (height: 100 % žlabového boxu, v kódu <Dialog className="work">): výšku jim dává okno, ne obsah, obsah uvnitř jen scrolluje. Používá ho paleta, oba e-maily, dokument i náhled souboru. V kódu <Dialog size="s|m|l">, nikdy magické číslo. Modifikátor .tall (88vh) zůstává jen pro pevné míry; flexi ho nepotřebuje. Head+foot pinned, scrolluje jen tělo. (Instance níž jsou vykreslené v reprezentativní šířce — karta je statická stránka; flexi se pozná až v okně prohlížeče.)
Ledger. Když dialog utrácí kredity/peníze: položkové řádky (badge · množ.×cena · mezisoučet), tučný součet, zůstatek před→po. Mono čísla vpravo, bez boxu — dělí hairline a prostor.
Patička commitu. Vlevo kontextové ghost afordance, vpravo Create-more přepínač, sekundár (Esc) a max jeden primár s ⌘↵ hintem. Destrukce = .btn.danger.
Patička dokumentu. Vlevo „+“ pro vložení bloku, vpravo nic — dokument nemá co potvrzovat. Stav uložení patří do hlavičky, ne do patičky.
Dokumentové tělo. Třída dokumentu si nestaví vlastní obsah: .acrm-dialog-body.doc dodává sazbu pro čtení a psaní v odstavcích (--dlg-title-font 28, --dlg-body-font 15/1.7 — sémantické tokeny končí u --h1 16 a --p 13, což je měřítko pro husté UI) a bezešvé plochy: nadpis, pole i editor bez rámečku, podkladu a fokusního prstence. Čitelnost drží míra sloupce .dlg-measure (680), NE šířka pláště — proto může být flexi velkorysý, aniž by se text rozlil. Hlavičkový blok polí = .dlg-field (label ve sloupci, hodnota holý text); modifikátor .flush vypne žlab těla tam, kde si obsah kreslí pruhy sám (e-mail).
Klávesy. ⌘K otevře hledání · Esc zavře · ↑↓ naviguje · ↵ vybere · ⌘↵ commitne primár.
Overlaye uvnitř se portálují. Každý picker, našeptávač, dropdown, bubble toolbar i blokové menu — jinak ho ořízne overflow pláště (menu .acrm-popover 101 je nad dialogem 80/90 — ořez overflow pláště je to, co portál řeší).
Menu bez nadpisu. Žádné menu v dialogu nemá nadpis nad položkami — ani picker, ani ⋮, ani blokové menu.
Motion. Scrim fade 120 ms; plášť rise 10 px + scale .985→1 za 160 ms. Reduced-motion = okamžitě.
Fokus. Trap uvnitř pláště, autofocus primární input, po zavření zpět na trigger. aria-modal — ale jen dokud je okno modální: v modeless stavech (compact, min) si fokus nebere a aria-modal nemá, jinak by nešlo pracovat s obsahem pod ním.
Stavy okna. Dokumentová flexi okna (psaní a čtení e-mailu, poznámka, náhled souboru) můžou OPT-IN dostat stavy velikosti — expanded · compact · min — a s nimi modeless režim bez scrimu. Ovládání sedí v hlavičce od nejmenší po největší a nabízí jen CÍLOVÉ stavy — aktuální stav se nerenderuje (AD 5. 8. 2026); je to transformační akce, ne další ✕, a před ✕ už nestojí oddělovač. Confirm (400) je nedostane nikdy — čeká se na něj await. Plný kanon, dok minimalizovaných oken i vrstvení jsou na kartě „Dialog — stavy okna“.
Kód. React <Dialog> z @acrm/ui + useConfirm(); window.confirm se nepoužívá. Žádný dialog nestaví vlastní plášť — vždy .acrm-dialog + modifikátor.
Text. Sentence case v nadpisech i tlačítkách; tlačítko nese sloveso akce, ne „OK“.
Mobil. Pod 720 px se každý dialog stává šuplíkem ze spoda — plná šířka, zaoblení jen nahoře, grabber, patička nad safe-area; malý i střední berou výšku z obsahu, flexi téměř plnou výšku (strop 92 %). Patička commitu nese jediné velké CTA přes celou šířku — Create-more zůstává jen na desktopu. Gesto dolů / scrim = Esc, rozepsaný commit se před zahozením ptá; overlaye = druhý šuplík nad prvním. Kotva ~11vh na desktopu se nemění.