/
AlexandrNarbaev
/
ThePath
Обзор
Документация
Войти
/
AlexandrNarbaev
/
ThePath
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
web/src/styles/global.css
196 строк
9 KB
AlexandrNarbaev
fix: search-overlay z-index from 100 to 101, above skip-link
04 июн 2026, 23:24
04 июн 2026, 23:24
ff75c29
Код
Авторство
О чём код?
@import "tailwindcss"; @theme { --color-bg-primary: #fafaf5; --color-bg-secondary: #f3f2ee; --color-text-primary: #1a1a2e; --color-text-secondary: #4a4a5e; --color-accent: #2c3e9e; --color-accent-hover: #1a2878; --color-nav-bg: #ffffff; --color-card-bg: #ffffff; --color-border: #e2e1dc; --color-danger: #c0392b; --color-gold: #e6c17b; --color-gold-hover: #f0d48a; --color-cosmic: #0a0a14; --color-cosmic-light: #12121f; --color-cosmic-card: #161630; --color-cosmic-border: #2a2a40; --color-cosmic-text: #f0efe7; --color-cosmic-text-secondary: #a0a0b8; --font-mono: 'SF Mono', 'Fira Code', 'Cascadia Code', 'Consolas', 'Monaco', monospace; --max-width-content: 720px; --sidebar-width: 260px; } @layer base { html { scroll-behavior: smooth; font-size: 18px; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif; line-height: 1.8; background-color: var(--color-bg-primary); color: var(--color-text-primary); } h1 { font-size: 2.5rem; font-weight: 700; line-height: 1.2; margin-bottom: 1rem; } h2 { font-size: 1.75rem; font-weight: 600; line-height: 1.3; margin-top: 2.5rem; margin-bottom: 1rem; } h3 { font-size: 1.25rem; font-weight: 600; line-height: 1.4; margin-top: 2rem; margin-bottom: 0.75rem; } a { color: var(--color-accent); text-decoration: none; transition: color 0.2s; } a:hover { color: var(--color-accent-hover); } blockquote { border-left: 3px solid var(--color-gold); padding: 0.5rem 1.5rem; margin: 1.5rem 0; font-style: italic; color: var(--color-text-secondary); } table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; } th, td { padding: 0.75rem 1rem; text-align: left; border-bottom: 1px solid var(--color-border); } th { font-weight: 600; background: var(--color-bg-secondary); } code { font-family: var(--font-mono); font-size: 0.85em; background: var(--color-bg-secondary); padding: 0.15em 0.4em; border-radius: 3px; } pre { background: var(--color-bg-secondary); padding: 1rem; border-radius: 8px; overflow-x: auto; font-size: 0.85rem; } } [data-theme="dark"] { --color-bg-primary: var(--color-cosmic); --color-bg-secondary: var(--color-cosmic-light); --color-text-primary: var(--color-cosmic-text); --color-text-secondary: var(--color-cosmic-text-secondary); --color-accent: var(--color-gold); --color-accent-hover: var(--color-gold-hover); --color-nav-bg: #0c0c1a; --color-card-bg: var(--color-cosmic-card); --color-border: var(--color-cosmic-border); --color-danger: #e74c3c; } .skip-link { position: absolute; top: -100%; left: 0; z-index: 100; padding: 0.5rem 1rem; background: var(--color-accent); color: white; font-weight: 600; } .skip-link:focus { top: 0; } .page-layout { display: flex; max-width: 1200px; margin: 0 auto; min-height: calc(100vh - 200px); } .content { flex: 1; max-width: var(--max-width-content); padding: 2rem 1.5rem 4rem; margin: 0 auto; } .content-wide { flex: 1; max-width: 900px; padding: 2rem 1.5rem 4rem; margin: 0 auto; } @media (max-width: 768px) { .page-layout { flex-direction: column; } .content, .content-wide { padding: 1rem; } h1 { font-size: 1.75rem; } h2 { font-size: 1.35rem; } } /* Search */ .search-trigger { background: var(--color-bg-secondary); border: 1px solid var(--color-border); border-radius: 8px; padding: 0.35rem 0.65rem; cursor: pointer; color: var(--color-text-secondary); display: flex; align-items: center; gap: 0.35rem; font-size: 0.85rem; } .search-trigger:hover { color: var(--color-accent); border-color: var(--color-accent); } .search-shortcut { font-size: 0.7rem; opacity: 0.5; font-family: var(--font-mono); } .search-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.6); z-index: 101; display: flex; align-items: flex-start; justify-content: center; padding-top: 15vh; } .search-modal { background: var(--color-card-bg); border: 1px solid var(--color-border); border-radius: 12px; width: 90%; max-width: 500px; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,0.3); } .search-input { width: 100%; padding: 1rem 1.25rem; font-size: 1.1rem; border: none; border-bottom: 1px solid var(--color-border); background: transparent; color: var(--color-text-primary); outline: none; } .search-input::placeholder { color: var(--color-text-secondary); } .search-results { max-height: 350px; overflow-y: auto; } .search-empty { padding: 2rem; text-align: center; color: var(--color-text-secondary); } .search-result { display: flex; align-items: baseline; gap: 0.75rem; padding: 0.75rem 1.25rem; color: var(--color-text-primary); text-decoration: none; transition: background 0.15s; } .search-result:hover { background: var(--color-bg-secondary); } .search-result-num { font-size: 0.8rem; font-weight: 700; color: var(--color-accent); min-width: 1.5em; } /* Progress */ .progress-container { position: fixed; top: 59px; left: 0; right: 0; height: 3px; z-index: 49; background: transparent; } .progress-fill { height: 100%; width: var(--p); background: var(--color-gold); transition: width 0.1s linear; } /* Bookmark */ .bookmark-btn { background: none; border: none; cursor: pointer; padding: 0.25rem; margin-bottom: 1rem; transition: transform 0.2s; } .bookmark-btn:hover { transform: scale(1.15); } /* Path Tracker */ .path-tracker { background: var(--color-card-bg); border: 1px solid var(--color-border); border-radius: 12px; padding: 1.25rem; margin-bottom: 1.5rem; } .path-selector { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-bottom: 1rem; } .path-tab { padding: 0.35rem 0.75rem; border-radius: 6px; border: 1px solid var(--color-border); background: transparent; color: var(--color-text-secondary); cursor: pointer; font-size: 0.8rem; transition: all 0.2s; } .path-tab:hover { border-color: var(--color-accent); color: var(--color-accent); } .path-tab.active { background: var(--color-accent); color: white; border-color: var(--color-accent); } .path-modules h4 { font-size: 0.9rem; margin: 0 0 0.75rem; color: var(--color-text-secondary); } .path-module { display: flex; align-items: center; gap: 0.5rem; padding: 0.4rem 0.5rem; border-radius: 6px; text-decoration: none; color: var(--color-text-primary); font-size: 0.85rem; transition: background 0.15s; } .path-module:hover { background: var(--color-bg-secondary); } .path-module.done { opacity: 0.6; } .pm-num { font-weight: 700; color: var(--color-accent); font-size: 0.8rem; min-width: 1.5em; } .pm-title { flex: 1; } .pm-progress { width: 60px; height: 4px; background: var(--color-border); border-radius: 2px; overflow: hidden; } .pm-bar { display: block; height: 100%; background: var(--color-gold); border-radius: 2px; transition: width 0.3s; } .pm-pct { font-size: 0.7rem; color: var(--color-text-secondary); min-width: 2.5em; text-align: right; } /* Daily Checklist */ .daily-checklist { background: var(--color-card-bg); border: 1px solid var(--color-border); border-radius: 12px; padding: 1.25rem; } .daily-checklist.done { border-color: var(--color-gold); } .dc-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.75rem; } .dc-title { font-size: 0.85rem; font-weight: 600; } .dc-count { font-size: 0.8rem; color: var(--color-text-secondary); } .dc-item { display: flex; align-items: center; gap: 0.5rem; padding: 0.4rem 0; cursor: pointer; font-size: 0.9rem; } .dc-item input { accent-color: var(--color-gold); width: 1.1em; height: 1.1em; cursor: pointer; } .dc-item.checked span { text-decoration: line-through; opacity: 0.5; } .dc-done { margin-top: 0.75rem; padding: 0.5rem; background: rgba(230,193,123,0.15); border-radius: 6px; text-align: center; font-size: 0.85rem; color: var(--color-gold); font-weight: 500; } /* Ethical Compass */ .ethical-compass { background: var(--color-card-bg); border: 1px solid var(--color-border); border-radius: 12px; padding: 1.25rem; } .ethical-compass h3 { margin: 0 0 0.75rem; font-size: 1rem; } .ec-text { font-size: 0.9rem; color: var(--color-text-secondary); margin-bottom: 1rem; line-height: 1.5; } .ec-options { display: flex; flex-direction: column; gap: 0.5rem; } .ec-btn { padding: 0.6rem 1rem; border: 1px solid var(--color-border); border-radius: 8px; background: var(--color-bg-secondary); color: var(--color-text-primary); cursor: pointer; font-size: 0.85rem; text-align: left; transition: all 0.2s; } .ec-btn:hover { border-color: var(--color-gold); background: rgba(230,193,123,0.1); color: var(--color-gold); } .ec-reset { padding: 0.5rem 1rem; border: none; background: transparent; color: var(--color-accent); cursor: pointer; font-size: 0.85rem; margin-top: 0.75rem; } /* Print */ @media print { .nav, .footer, .sidebar, .progress-container, .bookmark-btn, .module-nav, .search-trigger, .path-tracker, .daily-checklist, .ethical-compass, .hero-bg { display: none !important; } body { font-size: 12pt; line-height: 1.5; color: #000; background: #fff; } .page-layout { display: block; } .content, .content-wide { max-width: 100%; padding: 0; margin: 0; } a { color: #000; text-decoration: underline; } h1 { font-size: 18pt; } h2 { font-size: 14pt; } h3 { font-size: 12pt; } blockquote { border-left: 2px solid #999; } table { border: 1px solid #999; } th, td { border: 1px solid #999; } .prose h2 { border-bottom: 1px solid #999; } }