Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5bead9104 | ||
|
|
cd5aefbb14 |
No files matched your search
@@ -0,0 +1,37 @@
|
||||
# Горизонтальный лэйаут карточек портфолио — план реализации
|
||||
|
||||
> **Для Hermes:** реализовывать после подтверждения Николая; не создавать новый компонент или новые классы-модификаторы.
|
||||
|
||||
**Цель:** расширить существующие `.mp-card--stack` и `.mp-card--link` горизонтальным лэйаутом — текст слева, изображение справа.
|
||||
|
||||
**Подход:** использовать текущую структуру `.mp-card` и её дочерние `.mp-card__body` / `.mp-card__media`, сохраняя `.mp-card--link` для ссылочного поведения. Изменить существующие стили стека так, чтобы карточка получила горизонтальную компоновку; сохранить прежний вариант для текущих потребителей и сделать новый вид адаптивным. Показать существующий класс в каталоге дизайн-системы.
|
||||
|
||||
**Стек:** HTML, CSS, существующая сборка страниц.
|
||||
|
||||
---
|
||||
|
||||
### Задача 1: Расширить существующий стек горизонтальным лэйаутом
|
||||
|
||||
**Цель:** расположить текстовый блок слева, изображение справа и адаптировать раскладку к узким экранам, не создавая новый компонент или модификатор.
|
||||
|
||||
**Файлы:**
|
||||
- Изменить: `public/css/main.css` (стили `.mp-card` и его существующих layout-модификаторов около строк 3433–3498; проверить правила `.mp-card__media` и связанные responsive-правила перед изменением).
|
||||
|
||||
**Проверка:** проверить области применения `.mp-card--stack` и `.mp-card--link`; исключить регрессии других карточек и выполнить `npm run build:pages`.
|
||||
|
||||
### Задача 2: Обновить демонстрацию существующей карточки
|
||||
|
||||
**Цель:** показать горизонтальный лэйаут существующего `.mp-card--stack` + `.mp-card--link` в каталоге дизайн-системы и обновить подпись.
|
||||
|
||||
**Файлы:**
|
||||
- Изменить: `src/pages/cases/design-system.html` (демо карточки портфолио около строк 756–802).
|
||||
|
||||
**Проверка:** собрать страницы и проверить пример на широком и узком экранах.
|
||||
|
||||
### Задача 3: Проверить результат и зафиксировать
|
||||
|
||||
**Цель:** проверить новый лэйаут и прежних потребителей карточек.
|
||||
|
||||
**Проверка:** `npm run build:pages`, открыть собранный каталог через dev-сервер, проверить responsive-вид; выполнить `git diff --check` и осмотреть diff. После успешной проверки создать локальный git commit согласно `AGENTS.md`; не пушить.
|
||||
|
||||
**Открытый вопрос:** `.mp-card--stack` задействован также вне каталога портфолио; при реализации нужно сохранить существующий стековый вариант там, где он уже используется, добавив горизонтальный лэйаут в рамках уже существующих классов, без нового имени класса.
|
||||
@@ -47,7 +47,7 @@
|
||||
| `data-font` | Стек | Назначение |
|
||||
|---|---|---|
|
||||
| `merriweather` | Merriweather + Alice | По умолчанию. Alice — проза, Merriweather — заголовки |
|
||||
| `geologica` | Geologica + PT Sans | Гротеск + нейтральная проза |
|
||||
| `medeo` | Medeo Sans | Гротеск, интерфейс и проза |
|
||||
| `mono` | Source Code Pro + PT Mono | Моноширинный |
|
||||
|
||||
### Шкала
|
||||
|
||||
+3
-3
@@ -2,7 +2,7 @@
|
||||
|
||||
## Генерация PDF
|
||||
|
||||
Скрипт `scripts/generate-resume-pdf.mjs` открывает `resume/` через Puppeteer, применяет шрифт geologica (PT Sans), убирает подложку/обводку блока `.resume-doc` и сохраняет PDF.
|
||||
Скрипт `scripts/generate-resume-pdf.mjs` открывает `resume/` через Puppeteer, применяет шрифт medeo (Medeo Sans), убирает подложку/обводку блока `.resume-doc` и сохраняет PDF.
|
||||
|
||||
**Важно**: скрипт требует запущенный dev-сервер (`npm run serve` → `localhost:4175`).
|
||||
|
||||
@@ -15,12 +15,12 @@ npm run generate:resume-pdf
|
||||
или вручную:
|
||||
|
||||
```bash
|
||||
node scripts/generate-resume-pdf.mjs http://localhost:4175/resume/ geologica
|
||||
node scripts/generate-resume-pdf.mjs http://localhost:4175/resume/ medeo
|
||||
```
|
||||
|
||||
Параметры:
|
||||
- `[url]` — URL страницы (по умолчанию `http://localhost:4175/resume/`)
|
||||
- `[font]` — ID шрифта: `geologica`, `merriweather`, `mono` (по умолчанию `geologica`)
|
||||
- `[font]` — ID шрифта: `medeo`, `merriweather`, `mono` (по умолчанию `medeo`)
|
||||
|
||||
### Выходной файл
|
||||
|
||||
|
||||
+51
-51
@@ -1,51 +1,51 @@
|
||||
# Локальные vendor-ассеты (шрифты и Plyr)
|
||||
|
||||
Сайт не использует Google Fonts и jsDelivr в рантайме. Файлы лежат в `public/` и попадают на хостинг через git push.
|
||||
|
||||
## Что где
|
||||
|
||||
| Путь | Содержимое |
|
||||
|------|------------|
|
||||
| `public/assets/fonts/*.css` | Три пресета темы: `merriweather`, `geologica`, `mono` |
|
||||
| `public/assets/fonts/files/*.woff2` | Файлы шрифтов (из `@fontsource/*`) |
|
||||
| `public/vendor/plyr/` | `plyr.css`, `plyr.min.mjs` (из `plyr@3.8.4`) |
|
||||
|
||||
Подключение:
|
||||
|
||||
- Шрифты — inline `theme-init-script` и [`theme-fonts.js`](../public/js/modules/theme/theme-fonts.js).
|
||||
- CSS Plyr — partial [`src/partials/head-plyr.html`](../src/partials/head-plyr.html) только на страницах с `video[data-case-video-player]`.
|
||||
- JS Plyr — [`video-player.js`](../public/js/modules/cases/video-player.js).
|
||||
|
||||
## Обновление
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run vendor:copy
|
||||
```
|
||||
|
||||
Скрипт: [`scripts/copy-vendor.mjs`](../scripts/copy-vendor.mjs). Пересобирает `public/assets/fonts/` и `public/vendor/plyr/` из `node_modules`.
|
||||
|
||||
Полная сборка (vendor + HTML):
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
Только HTML из `src/`:
|
||||
|
||||
```bash
|
||||
npm run build:pages
|
||||
```
|
||||
|
||||
## Добавить или изменить шрифт
|
||||
|
||||
1. Установить пакет `@fontsource/...` или `@fontsource-variable/...`.
|
||||
2. Добавить источник в `FONT_BUNDLES` в `copy-vendor.mjs`.
|
||||
3. `npm run vendor:copy`.
|
||||
4. Проверить имена `font-family` в [`public/css/main.css`](../public/css/main.css) (`html[data-font=...]`).
|
||||
|
||||
## Обновить Plyr
|
||||
|
||||
1. Обновить версию в `package.json` (`dependencies.plyr`).
|
||||
2. `npm install` → `npm run vendor:copy`.
|
||||
3. При смене API — правки в `video-player.js`.
|
||||
# Локальные vendor-ассеты (шрифты и Plyr)
|
||||
|
||||
Сайт не использует Google Fonts и jsDelivr в рантайме. Файлы лежат в `public/` и попадают на хостинг через git push.
|
||||
|
||||
## Что где
|
||||
|
||||
| Путь | Содержимое |
|
||||
|------|------------|
|
||||
| `public/assets/fonts/*.css` | Три пресета темы: `merriweather`, `medeo`, `mono` |
|
||||
| `public/assets/fonts/files/*.woff2` | Файлы шрифтов (из `@fontsource/*`, `medeo-font`) |
|
||||
| `public/vendor/plyr/` | `plyr.css`, `plyr.min.mjs` (из `plyr@3.8.4`) |
|
||||
|
||||
Подключение:
|
||||
|
||||
- Шрифты — inline `theme-init-script` и [`theme-fonts.js`](../public/js/modules/theme/theme-fonts.js).
|
||||
- CSS Plyr — partial [`src/partials/head-plyr.html`](../src/partials/head-plyr.html) только на страницах с `video[data-case-video-player]`.
|
||||
- JS Plyr — [`video-player.js`](../public/js/modules/cases/video-player.js).
|
||||
|
||||
## Обновление
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run vendor:copy
|
||||
```
|
||||
|
||||
Скрипт: [`scripts/copy-vendor.mjs`](../scripts/copy-vendor.mjs). Пересобирает `public/assets/fonts/` и `public/vendor/plyr/` из `node_modules`.
|
||||
|
||||
Полная сборка (vendor + HTML):
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
Только HTML из `src/`:
|
||||
|
||||
```bash
|
||||
npm run build:pages
|
||||
```
|
||||
|
||||
## Добавить или изменить шрифт
|
||||
|
||||
1. Установить пакет `@fontsource/...` или `@fontsource-variable/...`.
|
||||
2. Добавить источник в `FONT_BUNDLES` в `copy-vendor.mjs`.
|
||||
3. `npm run vendor:copy`.
|
||||
4. Проверить имена `font-family` в [`public/css/main.css`](../public/css/main.css) (`html[data-font=...]`).
|
||||
|
||||
## Обновить Plyr
|
||||
|
||||
1. Обновить версию в `package.json` (`dependencies.plyr`).
|
||||
2. `npm install` → `npm run vendor:copy`.
|
||||
3. При смене API — правки в `video-player.js`.
|
||||
Generated
+16
-22
@@ -9,12 +9,11 @@
|
||||
"plyr": "^3.8.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@fontsource-variable/geologica": "^5.2.8",
|
||||
"@fontsource/alice": "^5.2.8",
|
||||
"@fontsource/merriweather": "^5.2.11",
|
||||
"@fontsource/pt-mono": "^5.2.8",
|
||||
"@fontsource/pt-sans": "^5.2.8",
|
||||
"@fontsource/source-code-pro": "^5.2.7",
|
||||
"medeo-font": "^1.0.0-rc.4.1",
|
||||
"puppeteer": "^25.7.0",
|
||||
"sharp": "^0.34.0"
|
||||
}
|
||||
@@ -30,16 +29,6 @@
|
||||
"tslib": "^2.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@fontsource-variable/geologica": {
|
||||
"version": "5.2.8",
|
||||
"resolved": "https://registry.npmjs.org/@fontsource-variable/geologica/-/geologica-5.2.8.tgz",
|
||||
"integrity": "sha512-hmUBi4k8C0xfi/pk/ArAyK7kRPqbkV5o/YN4nmJ+mtc14HKaAzdWAKb31gFWpveI75POgtcw3/iAepcGRnotYw==",
|
||||
"dev": true,
|
||||
"license": "OFL-1.1",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ayuhito"
|
||||
}
|
||||
},
|
||||
"node_modules/@fontsource/alice": {
|
||||
"version": "5.2.8",
|
||||
"resolved": "https://registry.npmjs.org/@fontsource/alice/-/alice-5.2.8.tgz",
|
||||
@@ -70,16 +59,6 @@
|
||||
"url": "https://github.com/sponsors/ayuhito"
|
||||
}
|
||||
},
|
||||
"node_modules/@fontsource/pt-sans": {
|
||||
"version": "5.2.8",
|
||||
"resolved": "https://registry.npmjs.org/@fontsource/pt-sans/-/pt-sans-5.2.8.tgz",
|
||||
"integrity": "sha512-b8nBGHMVwfe21IWqERlMrzIs+L/Vm3QNGbnET3H1vfclAScWExbN17N/z/dJcyPgvrcenbJDv1H3f5hTAEbcVQ==",
|
||||
"dev": true,
|
||||
"license": "OFL-1.1",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ayuhito"
|
||||
}
|
||||
},
|
||||
"node_modules/@fontsource/source-code-pro": {
|
||||
"version": "5.2.7",
|
||||
"resolved": "https://registry.npmjs.org/@fontsource/source-code-pro/-/source-code-pro-5.2.7.tgz",
|
||||
@@ -778,6 +757,21 @@
|
||||
"integrity": "sha512-vNX4ZZLJBeDEOBvdr2v/F+0aN5oMuPu7JTqrMwp+DtgK+AryOlpy6Xtm2/HpNr+azEa828oQjOtWsB6iDtSfSQ==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/medeo-font": {
|
||||
"version": "1.0.0-rc.4.1",
|
||||
"resolved": "https://registry.npmjs.org/medeo-font/-/medeo-font-1.0.0-rc.4.1.tgz",
|
||||
"integrity": "sha512-W9n0tT4viqkLth4ZSE1BZwYnZWKr0fODqI2MBPRQQMgHrt24GA15Z6e1MirU9YzEO8DbzXegRe4QxGcGxp1vNg==",
|
||||
"dev": true,
|
||||
"license": "OFL-1.1",
|
||||
"peerDependencies": {
|
||||
"next": ">=13.2.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"next": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/mitt": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
|
||||
|
||||
+2
-3
@@ -9,15 +9,14 @@
|
||||
"translate": "node scripts/translate.mjs",
|
||||
"convert-videos": "node scripts/convert-videos.mjs",
|
||||
"optimize-images": "node scripts/optimize-images.mjs",
|
||||
"generate:resume-pdf": "node scripts/generate-resume-pdf.mjs http://localhost:4175/resume/ geologica"
|
||||
"generate:resume-pdf": "node scripts/generate-resume-pdf.mjs http://localhost:4175/resume/ medeo"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@fontsource-variable/geologica": "^5.2.8",
|
||||
"@fontsource/alice": "^5.2.8",
|
||||
"@fontsource/merriweather": "^5.2.11",
|
||||
"@fontsource/pt-mono": "^5.2.8",
|
||||
"@fontsource/pt-sans": "^5.2.8",
|
||||
"@fontsource/source-code-pro": "^5.2.7",
|
||||
"medeo-font": "^1.0.0-rc.4.1",
|
||||
"puppeteer": "^25.7.0",
|
||||
"sharp": "^0.34.0"
|
||||
},
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -277,7 +290,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,139 +0,0 @@
|
||||
/* geologica-cyrillic-ext-wght-normal */
|
||||
@font-face {
|
||||
font-family: 'Geologica';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 100 900;
|
||||
src: url(./files/geologica-cyrillic-ext-wght-normal.woff2) format('woff2-variations');
|
||||
unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
|
||||
}
|
||||
|
||||
/* geologica-cyrillic-wght-normal */
|
||||
@font-face {
|
||||
font-family: 'Geologica';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 100 900;
|
||||
src: url(./files/geologica-cyrillic-wght-normal.woff2) format('woff2-variations');
|
||||
unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
|
||||
}
|
||||
|
||||
/* geologica-greek-wght-normal */
|
||||
@font-face {
|
||||
font-family: 'Geologica';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 100 900;
|
||||
src: url(./files/geologica-greek-wght-normal.woff2) format('woff2-variations');
|
||||
unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
|
||||
}
|
||||
|
||||
/* geologica-vietnamese-wght-normal */
|
||||
@font-face {
|
||||
font-family: 'Geologica';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 100 900;
|
||||
src: url(./files/geologica-vietnamese-wght-normal.woff2) format('woff2-variations');
|
||||
unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
|
||||
}
|
||||
|
||||
/* geologica-latin-ext-wght-normal */
|
||||
@font-face {
|
||||
font-family: 'Geologica';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 100 900;
|
||||
src: url(./files/geologica-latin-ext-wght-normal.woff2) format('woff2-variations');
|
||||
unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
|
||||
}
|
||||
|
||||
/* geologica-latin-wght-normal */
|
||||
@font-face {
|
||||
font-family: 'Geologica';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 100 900;
|
||||
src: url(./files/geologica-latin-wght-normal.woff2) format('woff2-variations');
|
||||
unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
|
||||
}
|
||||
|
||||
/* pt-sans-cyrillic-ext-400-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 400;
|
||||
src: url(./files/pt-sans-cyrillic-ext-400-normal.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
|
||||
}
|
||||
|
||||
/* pt-sans-cyrillic-400-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 400;
|
||||
src: url(./files/pt-sans-cyrillic-400-normal.woff2) format('woff2');
|
||||
unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
|
||||
}
|
||||
|
||||
/* pt-sans-latin-ext-400-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 400;
|
||||
src: url(./files/pt-sans-latin-ext-400-normal.woff2) format('woff2');
|
||||
unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
|
||||
}
|
||||
|
||||
/* pt-sans-latin-400-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 400;
|
||||
src: url(./files/pt-sans-latin-400-normal.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
|
||||
}
|
||||
|
||||
/* pt-sans-cyrillic-ext-700-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 700;
|
||||
src: url(./files/pt-sans-cyrillic-ext-700-normal.woff2) format('woff2');
|
||||
unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
|
||||
}
|
||||
|
||||
/* pt-sans-cyrillic-700-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 700;
|
||||
src: url(./files/pt-sans-cyrillic-700-normal.woff2) format('woff2');
|
||||
unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
|
||||
}
|
||||
|
||||
/* pt-sans-latin-ext-700-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 700;
|
||||
src: url(./files/pt-sans-latin-ext-700-normal.woff2) format('woff2');
|
||||
unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
|
||||
}
|
||||
|
||||
/* pt-sans-latin-700-normal */
|
||||
@font-face {
|
||||
font-family: 'PT Sans';
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
font-weight: 700;
|
||||
src: url(./files/pt-sans-latin-700-normal.woff2) format('woff2');
|
||||
unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
@font-face {
|
||||
font-family: "Medeo Sans";
|
||||
src: url(./files/MedeoSansVariable.woff2) format("woff2");
|
||||
font-weight: 100 900;
|
||||
font-style: normal;
|
||||
font-display: swap;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Medeo Sans";
|
||||
src: url(./files/MedeoSansVariable-Italic.woff2) format("woff2");
|
||||
font-weight: 100 900;
|
||||
font-style: italic;
|
||||
font-display: swap;
|
||||
}
|
||||
:root {
|
||||
--font-medeo-sans: "Medeo Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||
}
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-26",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -300,9 +313,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -372,7 +386,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -310,9 +323,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -382,7 +396,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -320,9 +333,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -392,7 +406,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-10-18",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -310,9 +323,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -382,7 +396,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-10-01",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -315,9 +328,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -387,7 +401,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -547,9 +560,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -620,7 +634,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
@@ -782,8 +796,8 @@
|
||||
<td>Моноширинная пара</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>geologica</code></td>
|
||||
<td>Geologica + PT Sans</td>
|
||||
<td><code>medeo</code></td>
|
||||
<td>Medeo Sans</td>
|
||||
<td>Гротеск + нейтральная проза</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -301,9 +314,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -373,7 +387,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -278,9 +291,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -497,9 +510,10 @@
|
||||
if (t.mode === "light" || t.mode === "dark") d.dataset.theme = t.mode;
|
||||
if (t.radius === "soft" || t.radius === "medium" || t.radius === "strong") d.dataset.radius = t.radius;
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") d.dataset.font = f;
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") d.dataset.font = f;
|
||||
if (t.meshBg === "off") d.dataset.meshBg = "off";
|
||||
} catch (e) {}
|
||||
})();
|
||||
@@ -561,7 +575,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -278,9 +291,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -285,9 +298,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -357,7 +371,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -297,9 +310,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -369,7 +383,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-10-01",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -307,9 +320,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -379,7 +393,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -278,9 +291,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI-дизайн и проектирование интерфейсов"
|
||||
},
|
||||
{
|
||||
@@ -300,9 +313,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -372,7 +386,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -75,9 +75,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -97,7 +98,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -277,9 +290,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -318,7 +331,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
+8
-8
@@ -152,9 +152,9 @@ html[data-font="merriweather"] {
|
||||
--font-accent: "Merriweather", var(--font);
|
||||
}
|
||||
|
||||
html[data-font="geologica"] {
|
||||
--font: "PT Sans", system-ui, -apple-system, sans-serif;
|
||||
--font-accent: "Geologica", var(--font);
|
||||
html[data-font="medeo"] {
|
||||
--font: "Medeo Sans", system-ui, -apple-system, sans-serif;
|
||||
--font-accent: "Medeo Sans", system-ui, -apple-system, sans-serif;
|
||||
}
|
||||
|
||||
html[data-font="mono"] {
|
||||
@@ -1164,8 +1164,8 @@ a.fab--secondary:visited {
|
||||
font-family: "Source Code Pro", monospace;
|
||||
}
|
||||
|
||||
.theme-font-seg__btn[data-font-option="geologica"] .theme-font-seg__label {
|
||||
font-family: "Geologica", sans-serif;
|
||||
.theme-font-seg__btn[data-font-option="medeo"] .theme-font-seg__label {
|
||||
font-family: "Medeo Sans", sans-serif;
|
||||
}
|
||||
|
||||
.theme-mesh-bg-seg__btn {
|
||||
@@ -1398,7 +1398,7 @@ html.mesh-bg-ready .hero {
|
||||
color: var(--text);
|
||||
}
|
||||
|
||||
html[data-font="geologica"] .hero__title {
|
||||
html[data-font="medeo"] .hero__title {
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
@@ -4086,7 +4086,7 @@ html[data-theme="dark"] .mp-card--stack-bottom .mp-card__tag {
|
||||
transition: color 0.2s ease;
|
||||
}
|
||||
|
||||
html[data-font="geologica"] .portfolio-card__title {
|
||||
html[data-font="medeo"] .portfolio-card__title {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
@@ -4425,7 +4425,7 @@ html[data-font="mono"] .portfolio-card__title {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
html[data-font="geologica"] .skills-category__title {
|
||||
html[data-font="medeo"] .skills-category__title {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-26",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -300,9 +313,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -372,7 +386,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -310,9 +323,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -382,7 +396,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -320,9 +333,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -392,7 +406,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-10-18",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -310,9 +323,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -382,7 +396,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-10-01",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -315,9 +328,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -387,7 +401,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -547,9 +560,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -620,7 +634,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
@@ -782,8 +796,8 @@
|
||||
<td>Monospace pair</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>geologica</code></td>
|
||||
<td>Geologica + PT Sans</td>
|
||||
<td><code>medeo</code></td>
|
||||
<td>Medeo Sans</td>
|
||||
<td>Sans-serif + neutral body text</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -301,9 +314,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -373,7 +387,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -278,9 +291,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -497,9 +510,10 @@
|
||||
if (t.mode === "light" || t.mode === "dark") d.dataset.theme = t.mode;
|
||||
if (t.radius === "soft" || t.radius === "medium" || t.radius === "strong") d.dataset.radius = t.radius;
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") d.dataset.font = f;
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") d.dataset.font = f;
|
||||
if (t.meshBg === "off") d.dataset.meshBg = "off";
|
||||
} catch (e) {}
|
||||
})();
|
||||
@@ -561,7 +575,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -278,9 +291,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -285,9 +298,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -357,7 +371,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -297,9 +310,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -369,7 +383,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-10-01",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -307,9 +320,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -379,7 +393,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -278,9 +291,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -194,7 +207,7 @@
|
||||
"creator": {
|
||||
"@id": "https://mamadaevv.site/#person"
|
||||
},
|
||||
"datePublished": "2026-09-24",
|
||||
"datePublished": "2026-10-29",
|
||||
"about": "UX/UI design and interface design"
|
||||
},
|
||||
{
|
||||
@@ -300,9 +313,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -372,7 +386,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -75,9 +75,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -97,7 +98,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -277,9 +290,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -350,7 +364,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -318,7 +331,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
+18
-5
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -271,7 +284,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Typography</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
|
||||
+18
-5
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
@@ -271,7 +284,7 @@
|
||||
<section class="theme-picker__section" aria-labelledby="theme-typography-title">
|
||||
<h3 id="theme-typography-title" class="theme-picker__section-title">Типографика</h3>
|
||||
<div class="radius-seg" role="radiogroup" aria-labelledby="theme-typography-title">
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="geologica" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="medeo" aria-label="Sans"><span class="theme-font-seg__label">Sans</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="merriweather" aria-label="Sans Serif"><span class="theme-font-seg__label">Sans Serif</span></button>
|
||||
<button type="button" class="radius-seg__btn theme-font-seg__btn" role="radio" aria-checked="false" data-font-option="mono" aria-label="Mono"><span class="theme-font-seg__label">Mono</span></button>
|
||||
</div>
|
||||
|
||||
@@ -4,10 +4,11 @@ import { prefersColorSchemeDark } from "../shared/media.js";
|
||||
export const STORAGE_KEY = "siteThemeV1";
|
||||
export const RADIUS_IDS = ["soft", "medium", "strong"];
|
||||
export const THEME_MODE_IDS = ["system", "light", "dark"];
|
||||
export const FONT_IDS = ["merriweather", "mono", "geologica"];
|
||||
export const FONT_IDS = ["merriweather", "mono", "medeo"];
|
||||
|
||||
const LEGACY_FONT_MAP = {
|
||||
onest: "geologica",
|
||||
onest: "medeo",
|
||||
geologica: "medeo",
|
||||
anonymous: "mono",
|
||||
};
|
||||
|
||||
@@ -32,7 +33,7 @@ export function defaultThemeState() {
|
||||
light: { h: 210, s: 90, l: 40 },
|
||||
dark: { h: 210, s: 90, l: 40 },
|
||||
radius: "medium",
|
||||
font: "geologica",
|
||||
font: "medeo",
|
||||
meshBg: "on",
|
||||
};
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
(function () {
|
||||
var FONT_CSS = {
|
||||
merriweather: "/assets/fonts/merriweather.css",
|
||||
geologica: "/assets/fonts/geologica.css",
|
||||
medeo: "/assets/fonts/medeo.css",
|
||||
mono: "/assets/fonts/mono.css",
|
||||
};
|
||||
try {
|
||||
@@ -78,9 +78,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "geologica") f = "geologica";
|
||||
if (f !== "merriweather" && f !== "mono" && f !== "medeo") f = "medeo";
|
||||
d.dataset.font = f;
|
||||
var mb = t.meshBg;
|
||||
if (mb === "off") {
|
||||
@@ -100,7 +101,19 @@
|
||||
})();
|
||||
</script>
|
||||
|
||||
<script defer src="https://cloud.umami.is/script.js" data-website-id="59e8e66e-2dab-4a86-acc6-b97985ad0473"></script>
|
||||
<!-- Аналитика грузится только на прод-домене: dev/preview (localhost:4175, dev.mamadaevv.site) в статистику не попадают. -->
|
||||
<script>
|
||||
(function () {
|
||||
var PROD_HOSTS = ["mamadaevv.site", "www.mamadaevv.site"];
|
||||
if (PROD_HOSTS.indexOf(location.hostname) === -1) return;
|
||||
var s = document.createElement("script");
|
||||
s.defer = true;
|
||||
s.src = "https://cloud.umami.is/script.js";
|
||||
s.setAttribute("data-website-id", "59e8e66e-2dab-4a86-acc6-b97985ad0473");
|
||||
document.head.appendChild(s);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png" />
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png" />
|
||||
|
||||
+14
-14
@@ -9,91 +9,91 @@
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/ai-assistant-figma/</loc>
|
||||
<lastmod>2026-09-26</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/ai-assistant-figma/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/ai-assistant-figma/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/ai-assistant-figma/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/ai-platform-primo-rpa-2/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/ai-platform-primo-rpa-2/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/ai-platform-primo-rpa-2/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/ai-platform-primo-rpa-2/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/ai-platform-primo-rpa-v2/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/ai-platform-primo-rpa-v2/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/ai-platform-primo-rpa-v2/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/ai-platform-primo-rpa-v2/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/ai-platform-primo-rpa/</loc>
|
||||
<lastmod>2026-10-04</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/ai-platform-primo-rpa/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/ai-platform-primo-rpa/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/ai-platform-primo-rpa/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/card-columns-obsidian/</loc>
|
||||
<lastmod>2026-10-01</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/card-columns-obsidian/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/card-columns-obsidian/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/card-columns-obsidian/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/lunacy/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/lunacy/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/lunacy/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/lunacy/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/manu-game-maker/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/manu-game-maker/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/manu-game-maker/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/manu-game-maker/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/mobile-clinic-app/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/mobile-clinic-app/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/mobile-clinic-app/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/mobile-clinic-app/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/obsidian-plugin-columns-view/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/obsidian-plugin-columns-view/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/obsidian-plugin-columns-view/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/obsidian-plugin-columns-view/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/orc-automation-panel/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/orc-automation-panel/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/orc-automation-panel/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/orc-automation-panel/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/site-portfolio/</loc>
|
||||
<lastmod>2026-10-01</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/site-portfolio/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/site-portfolio/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/site-portfolio/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/task-distribution-concept/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/task-distribution-concept/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/task-distribution-concept/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/task-distribution-concept/" />
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/cases/task-tracker/</loc>
|
||||
<lastmod>2026-09-24</lastmod>
|
||||
<lastmod>2026-10-29</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/cases/task-tracker/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/cases/task-tracker/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/cases/task-tracker/" />
|
||||
@@ -107,7 +107,7 @@
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://mamadaevv.site/</loc>
|
||||
<lastmod>2026-09-26</lastmod>
|
||||
<lastmod>2026-10-18</lastmod>
|
||||
<xhtml:link rel="alternate" hreflang="x-default" href="https://mamadaevv.site/" />
|
||||
<xhtml:link rel="alternate" hreflang="ru" href="https://mamadaevv.site/" />
|
||||
<xhtml:link rel="alternate" hreflang="en" href="https://mamadaevv.site/en/" />
|
||||
|
||||
+19
-19
@@ -16,7 +16,7 @@ const fontsFilesOut = path.join(fontsOut, "files");
|
||||
|
||||
const PLYR_VERSION = "3.8.4";
|
||||
|
||||
/** @type {{ id: string, sources: { pkg: string, css: string, familyReplace?: [string, string] }[] }[]} */
|
||||
/** @type {{ id: string, sources: { pkg: string, css: string, familyReplace?: [string, string], urlBase?: string, filesDir?: string }[] }[]} */
|
||||
const FONT_BUNDLES = [
|
||||
{
|
||||
id: "merriweather",
|
||||
@@ -27,15 +27,9 @@ const FONT_BUNDLES = [
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "geologica",
|
||||
id: "medeo",
|
||||
sources: [
|
||||
{
|
||||
pkg: "@fontsource-variable/geologica",
|
||||
css: "wght.css",
|
||||
familyReplace: ["Geologica Variable", "Geologica"],
|
||||
},
|
||||
{ pkg: "@fontsource/pt-sans", css: "400.css" },
|
||||
{ pkg: "@fontsource/pt-sans", css: "700.css" },
|
||||
{ pkg: "medeo-font", css: "dist/sans.css", urlBase: "fonts", filesDir: "dist/fonts" },
|
||||
],
|
||||
},
|
||||
{
|
||||
@@ -76,25 +70,29 @@ function copyPlyr() {
|
||||
console.log(`Plyr ${PLYR_VERSION} -> public/vendor/plyr/`);
|
||||
}
|
||||
|
||||
const woff2Re = /url\(\.\/files\/([^)]+\.woff2)\)/g;
|
||||
function fontUrlRe(base) {
|
||||
return new RegExp(`url\\(["']?\\.\\/${base}\\/([^)"']+\\.woff2)["']?\\)`, "g");
|
||||
}
|
||||
|
||||
function transformFontCss(raw, familyReplace) {
|
||||
function transformFontCss(raw, familyReplace, urlBase = "files") {
|
||||
let out = raw;
|
||||
if (familyReplace) {
|
||||
const [from, to] = familyReplace;
|
||||
out = out.split(`'${from}'`).join(`'${to}'`);
|
||||
out = out.split(`"${from}"`).join(`"${to}"`);
|
||||
}
|
||||
out = out.replace(/,\s*url\(\.\/files\/[^)]+\.woff\)/g, "");
|
||||
out = out.replace(new RegExp(`,?\\s*url\\(\\.\\/${urlBase}\\/[^)]+\\.woff\\)`, "g"), "");
|
||||
out = out.replace(/\s+format\(['"]woff['"]\)/g, "");
|
||||
// Плоская раскладка: url(./fonts/medeo-sans/X.woff2) -> url(./files/X.woff2)
|
||||
out = out.replace(fontUrlRe(urlBase), (_m, rel) => `url(./files/${path.posix.basename(rel)})`);
|
||||
return out;
|
||||
}
|
||||
|
||||
function collectWoff2Files(cssText) {
|
||||
function collectWoff2Files(cssText, urlBase = "files") {
|
||||
const names = new Set();
|
||||
const re = fontUrlRe(urlBase);
|
||||
let m;
|
||||
woff2Re.lastIndex = 0;
|
||||
while ((m = woff2Re.exec(cssText)) !== null) {
|
||||
while ((m = re.exec(cssText)) !== null) {
|
||||
names.add(m[1]);
|
||||
}
|
||||
return names;
|
||||
@@ -116,12 +114,14 @@ function buildFontBundles() {
|
||||
throw new Error(`Font CSS not found: ${cssPath}`);
|
||||
}
|
||||
const raw = fs.readFileSync(cssPath, "utf8");
|
||||
const transformed = transformFontCss(raw, source.familyReplace);
|
||||
const urlBase = source.urlBase || "files";
|
||||
const transformed = transformFontCss(raw, source.familyReplace, urlBase);
|
||||
blocks.push(transformed.trim());
|
||||
|
||||
const filesDir = path.join(pkgDir, "files");
|
||||
for (const fileName of collectWoff2Files(transformed)) {
|
||||
const srcFile = path.join(filesDir, fileName);
|
||||
const filesDir = path.join(pkgDir, source.filesDir || urlBase);
|
||||
for (const relPath of collectWoff2Files(raw, urlBase)) {
|
||||
const fileName = path.posix.basename(relPath);
|
||||
const srcFile = path.join(filesDir, relPath);
|
||||
const dstFile = path.join(fontsFilesOut, fileName);
|
||||
if (!fs.existsSync(srcFile)) {
|
||||
throw new Error(`Font file not found: ${srcFile}`);
|
||||
|
||||
@@ -5,7 +5,7 @@ import { dirname, resolve } from 'path';
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
const OUT = resolve(__dirname, '../public/assets/resume/Mamadaev_Nik__CV__Product_Designer_UX-UI.pdf');
|
||||
const PAGE = process.argv[2] || 'http://localhost:4175/resume/';
|
||||
const FONT = process.argv[3] || 'geologica';
|
||||
const FONT = process.argv[3] || 'medeo';
|
||||
|
||||
const browser = await puppeteer.launch({
|
||||
headless: true,
|
||||
|
||||
@@ -79,9 +79,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -79,9 +79,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -89,9 +89,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -89,9 +89,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -99,9 +99,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -99,9 +99,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -89,9 +89,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -89,9 +89,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -94,9 +94,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -94,9 +94,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -332,9 +332,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -472,8 +473,8 @@
|
||||
<td>Monospace pair</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>geologica</code></td>
|
||||
<td>Geologica + PT Sans</td>
|
||||
<td><code>medeo</code></td>
|
||||
<td>Medeo Sans</td>
|
||||
<td>Sans-serif + neutral body text</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
@@ -332,9 +332,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
@@ -472,8 +473,8 @@
|
||||
<td>Моноширинная пара</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>geologica</code></td>
|
||||
<td>Geologica + PT Sans</td>
|
||||
<td><code>medeo</code></td>
|
||||
<td>Medeo Sans</td>
|
||||
<td>Гротеск + нейтральная проза</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
@@ -81,9 +81,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -81,9 +81,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -58,9 +58,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -58,9 +58,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -282,9 +282,10 @@
|
||||
if (t.mode === "light" || t.mode === "dark") d.dataset.theme = t.mode;
|
||||
if (t.radius === "soft" || t.radius === "medium" || t.radius === "strong") d.dataset.radius = t.radius;
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") d.dataset.font = f;
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") d.dataset.font = f;
|
||||
if (t.meshBg === "off") d.dataset.meshBg = "off";
|
||||
} catch (e) {}
|
||||
})();
|
||||
|
||||
@@ -282,9 +282,10 @@
|
||||
if (t.mode === "light" || t.mode === "dark") d.dataset.theme = t.mode;
|
||||
if (t.radius === "soft" || t.radius === "medium" || t.radius === "strong") d.dataset.radius = t.radius;
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") d.dataset.font = f;
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") d.dataset.font = f;
|
||||
if (t.meshBg === "off") d.dataset.meshBg = "off";
|
||||
} catch (e) {}
|
||||
})();
|
||||
|
||||
@@ -58,9 +58,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -58,9 +58,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -64,9 +64,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -64,9 +64,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -77,9 +77,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -77,9 +77,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -86,9 +86,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -86,9 +86,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -58,9 +58,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -58,9 +58,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -79,9 +79,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -79,9 +79,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -61,9 +61,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
@@ -61,9 +61,10 @@
|
||||
d.dataset.radius = "medium";
|
||||
}
|
||||
var f = t.font;
|
||||
if (f === "onest") f = "geologica";
|
||||
if (f === "geologica") f = "medeo";
|
||||
if (f === "onest") f = "medeo";
|
||||
if (f === "anonymous") f = "mono";
|
||||
if (f === "merriweather" || f === "mono" || f === "geologica") {
|
||||
if (f === "merriweather" || f === "mono" || f === "medeo") {
|
||||
d.dataset.font = f;
|
||||
} else {
|
||||
d.dataset.font = "merriweather";
|
||||
|
||||
Loaded 100 of 108 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user