Files
workbuddy_skills/open-design/design-systems/ibm/DESIGN-uk.md
T
admin 5afeb6b78a ④段整套同步(六节 + P/S/F/J + 模板)+ open-design 移到技能根
一、④段整套同步(用户选候选 A)
- 新增 `references/stage-proto-doc/assets/产品文档模板.html`(16 KB/247 行,从备份拷、转 LF)。
- ④段 SKILL.md 换成备份 15:28 那版,并按模板口径改齐:
  · 「产品文档框架」从「四块+一附录」改成**六节** —— 页面结构/功能清单/使用场景/操作流程/
    跨页与界面状态/待确认与偏离;与模板同构,⛔ 不从空白页重写结构。
  · 编号从 R/S/F 改成 **P 页面/S 场景/F 功能/J 二级功能**,各自唯一、按展示顺序通排。
  · 保留旧版有价值的要求:每项功能补齐 做什么/入口在哪/输入边界/异常与恢复;重点功能三处标红;
    横向流程图每步写清页面/功能/操作/完成判据。
  · 完成标准「七节」→「六节」,自查清单同步换掉「需求」那批条目,补模板与配图两条。
  · 路径 `designs/<项目>/` → `docs/pm/<项目>/ui/`(2 处)。
  · 补回本机那条「每份产出文档开头都要有一张图」的引用(指向主 skill,段内不复述)。
- 主 skill 同步:四段结构表④行、④段沿革、画图小节(④段画页面结构图 + 用户路径)。

二、open-design 移到技能根(用户选候选 A)
- `git mv product-planning/references/stage-delivery/assets/open-design → open-design/`(4178 文件)。
- `.gitignore` 白名单加 `!/open-design/` —— 否则移出去就不再纳入版本控制。
- 引用改 11 处:路径形态 `assets/open-design/...` → `<技能根>/open-design/...`;
  「随段携带的自带件」改称「同根技能」;「路径怎么找」那条改成自带件(段内相对路径)与
  同根技能(`<技能根>/<技能名>/`)两类分开写。
- open-design 自己的 ATTRIBUTION.md 两处同步(它现在与 oil-ui-pro 同层)。
- 副作用(有益):命名闸门读数由 2063 降到 225 —— 此前它把 open-design 里 919 个第三方 md
  当成规则一起扫了;现在只扫本包 23 个 md。已确认④段的 H1 与 4a/4b/4c 子步仍在检查范围内。

三、验收
- check_naming.py --ws E:/ProgramData/AIProject/contentm_agent = 通过 225 / 失败 0 / 提示 27。
- 活文件里 `assets/open-design` 残留 0;工作区 CRLF 文件 0。
2026-10-15 21:17:28 +08:00

336 lines
31 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Design System Inspired by IBM
> Category: Медіа та споживачі
> Корпоративні технології. Дизайн-система Carbon, структурована синя палітра.
## 1. Візуальна тема та атмосфера
Сайт IBM — це цифрове втілення корпоративного авторитету, побудоване на дизайн-системі Carbon — мові дизайну настільки методично впорядкованої, що вона читається як інженерна специфікація, відтворена у вигляді веб-сторінки. Сторінка функціонує на принципі різкої дуальності: яскраво-біле (`#ffffff`) полотно з майже чорним (`#161616`) текстом, пронизане єдиним незмінним акцентом — IBM Blue 60 (`#0f62fe`). Це не грайливий мінімалізм технологічного стартапу; це корпоративна точність, дистильована у пікселі. Кожен елемент існує в рамках жорсткої сітки 2x Carbon, кожен колір відповідає семантичному токену, кожне значення відступу прив'язується до базового модуля 8px.
Сімейство шрифтів IBM Plex є хребтом системи. IBM Plex Sans у світлому накресленні (300) для відображення заголовків створює несподівано повітряну, майже делікатну якість у великих розмірах — навмисний контрапункт корпоративній вазі IBM. У розмірах основного тексту звичайне накреслення (400) з міжсимвольним інтервалом 0.16px у підписах розміром 14px вводить ретельне мікротрекінгування, яке робить текст Carbon відчутно спроектованим, а не просто набраним. IBM Plex Mono призначений для коду, даних і технічних міток, завершуючи тріо сімейства поряд із рідко використовуваним IBM Plex Serif.
Те, що визначає візуальну ідентичність IBM поза монохромно-синьою схемою, — це покладання на систему компонентних токенів Carbon. Кожен інтерактивний стан відповідає CSS-змінній з префіксом `--cds-` (Carbon Design System). Кнопки не мають захардкоджених кольорів; вони посилаються на `--cds-button-primary`, `--cds-button-primary-hover`, `--cds-button-primary-active`. Така токенізована архітектура означає, що весь візуальний шар є лише тонкою оболонкою над глибоко систематизованим фундаментом — дизайновим еквівалентом добре типізованого API.
**Ключові характеристики:**
- IBM Plex Sans у накресленні 300 (Light) для відображення — корпоративна вагомість через типографічну стриманість
- IBM Plex Mono для коду та технічного вмісту зі стабільним міжсимвольним інтервалом 0.16px у малих розмірах
- Єдиний акцентний колір: IBM Blue 60 (`#0f62fe`) — кожен інтерактивний елемент, кожен CTA, кожне посилання
- Система токенів Carbon (`--cds-*`), що керує всіма семантичними кольорами та забезпечує перемикання теми на рівні змінних
- Сітка відступів 8px зі суворим дотриманням — жодних довільних значень, все вирівнюється
- Пласкі картки без рамок на фоні `#f4f4f4` Gray 10 — глибина через нашарування фонових кольорів, а не тіні
- Поля введення з нижньою рамкою (не у вигляді прямокутника) — фірмовий патерн форм Carbon
- 0px border-radius на основних кнопках — без жодного пом'якшення, повністю прямокутні
## 2. Кольорова палітра та ролі
### Основні
- **IBM Blue 60** (`#0f62fe`): Єдиний інтерактивний колір. Основні кнопки, посилання, стани фокусу, активні індикатори. Це єдиний хроматичний відтінок у ключовій палітрі UI.
- **White** (`#ffffff`): Фон сторінки, поверхні карток, текст кнопки на синьому фоні, `--cds-background`.
- **Gray 100** (`#161616`): Основний текст, заголовки, темний фон поверхонь, навігаційна панель, підвал. `--cds-text-primary`.
### Нейтральна шкала (сімейство сірих)
- **Gray 100** (`#161616`): Основний текст, заголовки, темне оздоблення UI, фон підвалу.
- **Gray 90** (`#262626`): Вторинні темні поверхні, стани наведення на темному тлі.
- **Gray 80** (`#393939`): Третинне темне, активні стани.
- **Gray 70** (`#525252`): Вторинний текст, допоміжний текст, описи. `--cds-text-secondary`.
- **Gray 60** (`#6f6f6f`): Текст-заповнювач, відключений текст.
- **Gray 50** (`#8d8d8d`): Відключені іконки, приглушені мітки.
- **Gray 30** (`#c6c6c6`): Рамки, розділові лінії, нижні рамки полів введення. `--cds-border-subtle`.
- **Gray 20** (`#e0e0e0`): Ледь помітні рамки, контури карток.
- **Gray 10** (`#f4f4f4`): Вторинний фон поверхні, заливка карток, рядки, що чергуються. `--cds-layer-01`.
- **Gray 10 Hover** (`#e8e8e8`): Стан наведення для поверхонь Gray 10.
### Інтерактивні
- **Blue 60** (`#0f62fe`): Основний інтерактивний — кнопки, посилання, фокус. `--cds-link-primary`, `--cds-button-primary`.
- **Blue 70** (`#0043ce`): Стан наведення на посилання. `--cds-link-primary-hover`.
- **Blue 80** (`#002d9c`): Активний/натиснутий стан для синіх елементів.
- **Blue 10** (`#edf5ff`): Поверхня з синім відтінком, фон виділеного рядка.
- **Focus Blue** (`#0f62fe`): `--cds-focus` — рамка 2px inset на сфокусованих елементах.
- **Focus Inset** (`#ffffff`): `--cds-focus-inset` — біле внутрішнє кільце для фокусу на темному тлі.
### Службові та статусні
- **Red 60** (`#da1e28`): Помилка, небезпека. `--cds-support-error`.
- **Green 50** (`#24a148`): Успіх. `--cds-support-success`.
- **Yellow 30** (`#f1c21b`): Попередження. `--cds-support-warning`.
- **Blue 60** (`#0f62fe`): Інформаційний. `--cds-support-info`.
### Темна тема (тема Gray 100)
- **Background**: Gray 100 (`#161616`). `--cds-background`.
- **Layer 01**: Gray 90 (`#262626`). Поверхні карток і контейнерів.
- **Layer 02**: Gray 80 (`#393939`). Підняті поверхні.
- **Text Primary**: Gray 10 (`#f4f4f4`). `--cds-text-primary`.
- **Text Secondary**: Gray 30 (`#c6c6c6`). `--cds-text-secondary`.
- **Border Subtle**: Gray 80 (`#393939`). `--cds-border-subtle`.
- **Interactive**: Blue 40 (`#78a9ff`). Посилання та інтерактивні елементи стають світлішими для забезпечення контрастності.
## 3. Правила типографіки
### Сімейство шрифтів
- **Основний**: `IBM Plex Sans`, з запасними варіантами: `Helvetica Neue, Arial, sans-serif`
- **Моноширинний**: `IBM Plex Mono`, з запасними варіантами: `Menlo, Courier, monospace`
- **Серифний** (обмежене використання): `IBM Plex Serif`, для редакційних/виразних контекстів
- **Іконковий шрифт**: `ibm_icons` — фірмові іконкові гліфи розміром 20px
### Ієрархія
| Роль | Шрифт | Розмір | Насиченість | Висота рядка | Міжсимвольний інтервал | Примітки |
|------|------|------|--------|-------------|----------------|-------|
| Display 01 | IBM Plex Sans | 60px (3.75rem) | 300 (Light) | 1.17 (70px) | 0 | Максимальний вплив, світле накреслення для елегантності |
| Display 02 | IBM Plex Sans | 48px (3.00rem) | 300 (Light) | 1.17 (56px) | 0 | Вторинний герой, адаптивний запасний варіант |
| Heading 01 | IBM Plex Sans | 42px (2.63rem) | 300 (Light) | 1.19 (50px) | 0 | Виразний заголовок |
| Heading 02 | IBM Plex Sans | 32px (2.00rem) | 400 (Regular) | 1.25 (40px) | 0 | Заголовки розділів |
| Heading 03 | IBM Plex Sans | 24px (1.50rem) | 400 (Regular) | 1.33 (32px) | 0 | Назви підрозділів |
| Heading 04 | IBM Plex Sans | 20px (1.25rem) | 600 (Semibold) | 1.40 (28px) | 0 | Назви карток, заголовки функцій |
| Heading 05 | IBM Plex Sans | 20px (1.25rem) | 400 (Regular) | 1.40 (28px) | 0 | Більш легкі заголовки карток |
| Body Long 01 | IBM Plex Sans | 16px (1.00rem) | 400 (Regular) | 1.50 (24px) | 0 | Стандартний текст для читання |
| Body Long 02 | IBM Plex Sans | 16px (1.00rem) | 600 (Semibold) | 1.50 (24px) | 0 | Виділений основний текст, мітки |
| Body Short 01 | IBM Plex Sans | 14px (0.88rem) | 400 (Regular) | 1.29 (18px) | 0.16px | Компактний основний текст, підписи |
| Body Short 02 | IBM Plex Sans | 14px (0.88rem) | 600 (Semibold) | 1.29 (18px) | 0.16px | Жирні підписи, елементи навігації |
| Caption 01 | IBM Plex Sans | 12px (0.75rem) | 400 (Regular) | 1.33 (16px) | 0.32px | Метадані, позначки часу |
| Code 01 | IBM Plex Mono | 14px (0.88rem) | 400 (Regular) | 1.43 (20px) | 0.16px | Вбудований код, термінал |
| Code 02 | IBM Plex Mono | 16px (1.00rem) | 400 (Regular) | 1.50 (24px) | 0 | Блоки коду |
| Mono Display | IBM Plex Mono | 42px (2.63rem) | 400 (Regular) | 1.19 (50px) | 0 | Декоративний моно-заголовок для hero-секції |
### Принципи
- **Світле накреслення у великих розмірах**: виразний набір шрифтів Carbon використовує накреслення 300 (Light) при розмірі 42px і більше. Це створює характерну напругу — вміст говорить з корпоративним авторитетом, тоді як літери шепочуть із типографічною легкістю.
- **Мікротрекінгування у малих розмірах**: міжсимвольний інтервал 0.16px при розмірі 14px і 0.32px при 12px. Ці на перший погляд незначні значення є секретною зброєю Carbon для читабельності в компактних розмірах — вони злегка розкривають тісні літери IBM Plex.
- **Три функціональні насиченості**: 300 (відображення/виразний), 400 (основний текст/читання), 600 (акцент/мітки UI). Накреслення 700 навмисно відсутнє у виробничій типографічній шкалі.
- **Продуктивний проти виразного**: продуктивні набори використовують щільніші міжрядкові інтервали (1.29) для насиченого UI. Виразні набори дихають більше (1.40-1.50) для маркетингового та редакційного контенту.
## 4. Стилізація компонентів
### Кнопки
**Основна кнопка (синя)**
- Background: `#0f62fe` (Blue 60) → `--cds-button-primary`
- Text: `#ffffff` (White)
- Padding: 14px 63px 14px 15px (асиметричний — місце для кінцевої іконки)
- Border: 1px solid transparent
- Border-radius: 0px (гострий прямокутник — фірмовий знак Carbon)
- Height: 48px (стандарт), 40px (компактний), 64px (виразний)
- Hover: `#0353e9` (Blue 60 Hover) → `--cds-button-primary-hover`
- Active: `#002d9c` (Blue 80) → `--cds-button-primary-active`
- Focus: `2px solid #0f62fe` inset + `1px solid #ffffff` inner
**Вторинна кнопка (сіра)**
- Background: `#393939` (Gray 80)
- Text: `#ffffff`
- Hover: `#4c4c4c` (Gray 70)
- Active: `#6f6f6f` (Gray 60)
- Такі самі відступи та радіус, як у основної
**Третинна кнопка (Ghost Blue)**
- Background: transparent
- Text: `#0f62fe` (Blue 60)
- Border: 1px solid `#0f62fe`
- Hover: текст `#0353e9` + відтінок Blue 10 на фоні
- Border-radius: 0px
**Ghost-кнопка**
- Background: transparent
- Text: `#0f62fe` (Blue 60)
- Padding: 14px 16px
- Border: none
- Hover: відтінок фону `#e8e8e8`
**Кнопка небезпеки**
- Background: `#da1e28` (Red 60)
- Text: `#ffffff`
- Hover: `#b81921` (Red 70)
### Картки та контейнери
- Background: `#ffffff` на білій темі, `#f4f4f4` (Gray 10) для підвищених карток
- Border: none (плаский дизайн — більшість карток без рамки або тіні)
- Border-radius: 0px (відповідає прямокутній естетиці кнопок)
- Hover: фон зміщується до `#e8e8e8` (Gray 10 Hover) для клікабельних карток
- Content padding: 16px
- Розмежування: нашарування фонових кольорів (white → gray 10 → white) замість тіней
### Поля введення та форми
- Background: `#f4f4f4` (Gray 10) — `--cds-field`
- Text: `#161616` (Gray 100)
- Padding: 0px 16px (лише горизонтальний)
- Height: 40px (стандарт), 48px (великий)
- Border: none з боків/зверху — `2px solid transparent` знизу
- Bottom-border active: `2px solid #161616` (Gray 100)
- Focus: `2px solid #0f62fe` (Blue 60) нижня рамка — `--cds-focus`
- Error: `2px solid #da1e28` (Red 60) нижня рамка
- Label: 12px IBM Plex Sans, міжсимвольний інтервал 0.32px, Gray 70
- Helper text: 12px, Gray 60
- Placeholder: Gray 60 (`#6f6f6f`)
- Border-radius: 0px (зверху) — поля введення мають гострі кути
### Навігація
- Background: `#161616` (Gray 100) — темна шапка на всю ширину
- Height: 48px
- Логотип: логотип IBM з 8 смужок, білий на темному тлі, вирівняний по лівому краю
- Links: 14px IBM Plex Sans, накреслення 400, `#c6c6c6` (Gray 30) за замовчуванням
- Link hover: текст `#ffffff`
- Active link: `#ffffff` з індикатором у вигляді нижньої рамки
- Перемикач платформ: горизонтальні вкладки, вирівняні ліворуч
- Пошук: поле пошуку, що висувається після кліку на іконку
- Мобільний: гамбургер-меню з панеллю, що висувається ліворуч
### Посилання
- Default: `#0f62fe` (Blue 60) без підкреслення
- Hover: `#0043ce` (Blue 70) з підкресленням
- Visited: залишається Blue 60 (стан відвіданого не змінюється)
- Вбудовані посилання: підкреслені за замовчуванням в основному тексті
### Характерні компоненти
**Контентний блок (Hero/Feature)**
- Фонові смуги на всю ширину, що чергуються: white/gray-10
- Заголовок вирівняний ліворуч, відображуваний шрифт 60px або 48px
- CTA у вигляді синьої основної кнопки зі стрілкою
- Зображення/ілюстрація вирівняна праворуч або знизу на мобільних
**Tile (клікабельна картка)**
- Background: `#f4f4f4` або `#ffffff`
- Нижня рамка на всю ширину або зміна фону при наведенні
- Іконка зі стрілкою в правому нижньому куті при наведенні
- Без тіні — пласкість і є ідентичністю
**Тег / Мітка**
- Background: контекстний колір з прозорістю 10% (наприклад, Blue 10, Red 10)
- Text: відповідний колір 60-го ступеня
- Padding: 4px 8px
- Border-radius: 24px (таблетка — виняток із правила 0px)
- Font: 12px, накреслення 400
**Сповіщальний банер**
- Смуга на всю ширину, як правило, на фоні Blue 60 або Gray 100
- Білий текст, 14px
- Іконка закриття/приховування, вирівняна праворуч
## 5. Принципи компонування
### Система відступів
- Базовий модуль: 8px (сітка Carbon 2x)
- Шкала відступів компонентів: 2px, 4px, 8px, 12px, 16px, 24px, 32px, 40px, 48px
- Шкала відступів компонування: 16px, 24px, 32px, 48px, 64px, 80px, 96px, 160px
- Мінімальний модуль: 8px (найменший придатний для використання відступ)
- Внутрішні відступи компонентів: як правило, 16px
- Проміжок між картками/тайлами: 1px (найтонший) або 16px (стандарт)
### Сітка та контейнер
- 16-колонкова сітка (система сіток Carbon 2x)
- Максимальна ширина контенту: 1584px (максимальна контрольна точка)
- Проміжки між колонками: 32px (16px на мобільних)
- Поля: 16px (мобільний), 32px (планшет і більше)
- Контент зазвичай займає 8-12 колонок для читабельної довжини рядка
- Секції на повну ширину чергуються з обмеженим контентом
### Філософія пустого простору
- **Функціональна щільність**: Carbon надає перевагу продуктивній щільності над великим пустим простором. Секції щільніші порівняно зі споживчими дизайн-системами — це відображає корпоративну ДНК IBM.
- **Зонування за фоновим кольором**: замість великих відступів між секціями IBM використовує кольори фону, що чергуються (white → gray 10 → white), для створення візуального розмежування з мінімальним вертикальним простором.
- **Стабільний ритм 48px**: основні переходи між секціями використовують вертикальний відступ 48px. Hero-секції можуть використовувати 80px–96px.
### Шкала радіусів рамок
- **0px**: Основні кнопки, поля введення, тайли, картки — домінуюче рішення. Carbon є принципово прямокутним.
- **2px**: Зрідка для невеликих інтерактивних елементів (теги)
- **24px**: Теги/мітки (форма таблетки — єдиний округлений виняток)
- **50%**: Кола аватарів, контейнери іконок
## 6. Глибина та підйом
| Рівень | Рішення | Використання |
|-------|-----------|-----|
| Flat (Level 0) | Без тіні, фон `#ffffff` | Стандартна поверхня сторінки |
| Layer 01 | Без тіні, фон `#f4f4f4` | Картки, тайли, секції, що чергуються |
| Layer 02 | Без тіні, фон `#e0e0e0` | Підняті панелі всередині Layer 01 |
| Raised | `0 2px 6px rgba(0,0,0,0.3)` | Спадні меню, підказки, меню переповнення |
| Overlay | `0 2px 6px rgba(0,0,0,0.3)` + темна накладка | Модальні вікна, бічні панелі |
| Focus | `2px solid #0f62fe` inset + `1px solid #ffffff` | Кільце клавіатурного фокусу |
| Bottom-border | `2px solid #161616` on bottom edge | Активне поле введення, індикатор активної вкладки |
**Філософія тіней**: Carbon навмисно уникає тіней. IBM досягає глибини насамперед через нашарування фонових кольорів — накладання поверхонь з дедалі темнішими відтінками сірого замість додавання box-shadows. Це створює пласку, натхненну друком естетику, де ієрархія передається через значення кольору, а не імітованим світлом. Тіні зарезервовані виключно для плаваючих елементів (спадних меню, підказок, модальних вікон), де елемент справді перекриває вміст. Ця стриманість надає рідкісним тіням значущого ефекту — коли щось «плаває» у Carbon, це важливо.
## 7. Що робити і чого уникати
### Робіть
- Використовуйте IBM Plex Sans накреслення 300 для відображуваних розмірів (42px+) — легкість є навмисною
- Застосовуйте міжсимвольний інтервал 0.16px для основного тексту 14px і 0.32px для підписів 12px
- Використовуйте border-radius 0px для кнопок, полів введення, карток і тайлів — прямокутники є системою
- Посилайтеся на назви токенів `--cds-*` під час реалізації (наприклад, `--cds-button-primary`, `--cds-text-primary`)
- Використовуйте нашарування фонових кольорів (white → gray 10 → gray 20) для глибини замість тіней
- Використовуйте нижню рамку (не повну рамку) для індикаторів полів введення
- Зберігайте стандартну висоту кнопки 48px і асиметричні відступи для розміщення іконок
- Застосовуйте Blue 60 (`#0f62fe`) як єдиний акцент — один синій, щоб керувати всіма
### Не робіть
- Не округляйте кути кнопок — радіус 0px є ідентичністю Carbon
- Не використовуйте тіні на картках або тайлах — пласкість і є сутністю
- Не вводьте додаткові акцентні кольори — система IBM є монохромною + синьою
- Не використовуйте накреслення 700 (Bold) — шкала зупиняється на 600 (Semibold)
- Не додавайте міжсимвольний інтервал для відображуваних текстів — трекінгування застосовується лише для 14px і нижче
- Не обрамляйте поля введення повними рамками — поля Carbon використовують лише нижню рамку
- Не використовуйте градієнтні фони — поверхні IBM є пласкими, однотонними кольорами
- Не відхиляйтеся від сітки відступів 8px — кожне значення повинно ділитися на 8 (з 2px і 4px для мікроналаштувань)
## 8. Адаптивна поведінка
### Контрольні точки
| Назва | Ширина | Ключові зміни |
|------|-------|-------------|
| Small (sm) | 320px | Одна колонка, гамбургер-навігація, поля 16px |
| Medium (md) | 672px | Починаються двоколонкові сітки, розширений контент |
| Large (lg) | 1056px | Повна навігація видима, сітки 3-4 колонки |
| X-Large (xlg) | 1312px | Максимальна щільність контенту, широкі компонування |
| Max | 1584px | Максимальна ширина контенту, по центру з полями |
### Цілі для торкання
- Висота кнопки: 48px стандарт, мінімум 40px (компактний)
- Посилання навігації: висота рядка 48px для торкання
- Висота поля введення: 40px стандарт, 48px великий
- Кнопки-іконки: область торкання 48px x 48px
- Елементи мобільного меню: рядки 48px на повну ширину
### Стратегія стиснення
- Hero: відображення 60px → 42px → заголовок 32px при звуженні вікна перегляду
- Навігація: повна горизонтальна шапка → гамбургер з панеллю, що висувається
- Сітка: 4 колонки → 2 колонки → одна колонка
- Тайли/картки: горизонтальна сітка → вертикальне складання
- Зображення: зберігати пропорції, max-width 100%
- Підвал: групи посилань у кількох колонках → складання в одну колонку
- Відступи секцій: 48px → 32px → 16px
### Поведінка зображень
- Адаптивні зображення з `max-width: 100%`
- Ілюстрації продуктів масштабуються пропорційно
- Hero-зображення можуть перейти від розміщення поруч до складання знизу
- Візуалізації даних зберігають пропорції з горизонтальним прокручуванням на мобільних
## 9. Посібник з підказок для агента
### Швидкий довідник кольорів
- Primary CTA: IBM Blue 60 (`#0f62fe`)
- Background: White (`#ffffff`)
- Heading text: Gray 100 (`#161616`)
- Body text: Gray 100 (`#161616`)
- Secondary text: Gray 70 (`#525252`)
- Surface/Card: Gray 10 (`#f4f4f4`)
- Border: Gray 30 (`#c6c6c6`)
- Link: Blue 60 (`#0f62fe`)
- Link hover: Blue 70 (`#0043ce`)
- Focus ring: Blue 60 (`#0f62fe`)
- Error: Red 60 (`#da1e28`)
- Success: Green 50 (`#24a148`)
### Приклади підказок для компонентів
- "Створи hero-секцію на білому фоні. Заголовок 60px IBM Plex Sans накреслення 300, line-height 1.17, колір #161616. Підзаголовок 16px накреслення 400, line-height 1.50, колір #525252, max-width 640px. Синя CTA-кнопка (фон #0f62fe, текст #ffffff, border-radius 0px, висота 48px, відступи 14px 63px 14px 15px)."
- "Спроектуй тайл-картку: фон #f4f4f4, border-radius 0px, відступ 16px. Назва 20px IBM Plex Sans накреслення 600, line-height 1.40, колір #161616. Основний текст 14px накреслення 400, letter-spacing 0.16px, line-height 1.29, колір #525252. Hover: фон змінюється на #e8e8e8."
- "Побудуй поле форми: фон #f4f4f4, border-radius 0px, висота 40px, горизонтальний відступ 16px. Мітка зверху 12px накреслення 400, letter-spacing 0.32px, колір #525252. Нижня рамка: 2px solid transparent за замовчуванням, 2px solid #0f62fe при фокусі. Placeholder: #6f6f6f."
- "Створи темну навігаційну панель: фон #161616, висота 48px. Логотип IBM білий, вирівняний ліворуч. Посилання 14px IBM Plex Sans накреслення 400, колір #c6c6c6. Hover: текст #ffffff. Active: #ffffff з нижньою рамкою 2px."
- "Побудуй компонент тегу: фон Blue 10 (#edf5ff), текст Blue 60 (#0f62fe), відступ 4px 8px, border-radius 24px, 12px IBM Plex Sans накреслення 400."
### Посібник з ітерацій
1. Завжди використовуй border-radius 0px для кнопок, полів введення та карток — це обов'язкова вимога Carbon
2. Міжсимвольний інтервал лише у малих розмірах: 0.16px при 14px, 0.32px при 12px — ніколи для відображуваного тексту
3. Три насиченості: 300 (відображення), 400 (основний текст), 600 (акцент) — без жирного
4. Blue 60 — єдиний акцентний колір — не вводь вторинних акцентних відтінків
5. Глибина досягається нашаруванням фонових кольорів (white → #f4f4f4 → #e0e0e0), а не тінями
6. Поля введення мають лише нижню рамку, ніколи повну
7. Використовуй префікс `--cds-` для іменування токенів для сумісності з Carbon
8. 48px — стандартна висота інтерактивного елементу