[html]<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ролевая анкета</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
/* Сброс стилей и базовые настройки */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
:root {
--primary-dark: #0a0a0f;
--secondary-dark: #12121f;
--accent-color: #7a5fb6;
--accent-light: #9a7fd6;
--text-primary: #e8e6e3;
--text-secondary: #a8a6a3;
--border-color: #2a2a3a;
--card-bg: rgba(26, 26, 38, 0.7);
--shadow-color: rgba(0, 0, 0, 0.5);
}
body {
font-family: 'Segoe UI', 'Roboto', sans-serif;
background-color: var(--primary-dark);
color: var(--text-primary);
line-height: 1.6;
overflow-x: hidden;
min-height: 100vh;
background-image:
radial-gradient(circle at 10% 20%, rgba(122, 95, 182, 0.05) 0%, transparent 20%),
radial-gradient(circle at 90% 80%, rgba(122, 95, 182, 0.05) 0%, transparent 20%);
}
/* Основной контейнер */
.container {
display: grid;
grid-template-columns: 320px 1fr;
min-height: 100vh;
max-width: 1600px;
margin: 0 auto;
background-color: var(--secondary-dark);
box-shadow: 0 0 50px var(--shadow-color);
}
/* Левая колонка с Альсиной */
.alsina-column {
position: relative;
overflow: hidden;
background-color: #000;
}
.alsina-image {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
position: absolute;
top: 0;
left: 0;
opacity: 0.9;
filter: contrast(1.1) brightness(0.9);
}
.alsina-overlay {
position: absolute;
bottom: 0;
left: 0;
right: 0;
padding: 30px 20px;
background: linear-gradient(to top, rgba(10, 10, 15, 0.95), transparent);
backdrop-filter: blur(2px);
}
.alsina-name {
font-size: 1.8rem;
font-weight: 300;
letter-spacing: 3px;
margin-bottom: 10px;
color: var(--accent-light);
text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}
.alsina-quote {
font-style: italic;
color: var(--text-secondary);
font-size: 0.95rem;
line-height: 1.5;
border-left: 2px solid var(--accent-color);
padding-left: 15px;
}
/* Правая колонка с контентом */
.content-column {
padding: 30px;
overflow-y: auto;
max-height: 100vh;
}
/* Заголовок */
.header {
text-align: center;
margin-bottom: 40px;
padding-bottom: 20px;
border-bottom: 1px solid var(--border-color);
position: relative;
}
.header::after {
content: '';
position: absolute;
bottom: -1px;
left: 50%;
transform: translateX(-50%);
width: 100px;
height: 2px;
background: var(--accent-color);
}
.main-title {
font-size: 2.5rem;
font-weight: 300;
letter-spacing: 4px;
margin-bottom: 10px;
color: var(--text-primary);
}
.subtitle {
color: var(--text-secondary);
font-size: 1rem;
font-weight: 300;
}
/* Галерея персонажей */
.gallery-section {
margin-bottom: 40px;
}
.gallery-title {
font-size: 1.2rem;
margin-bottom: 20px;
color: var(--accent-light);
text-align: center;
letter-spacing: 2px;
}
.character-gallery {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 20px;
margin-bottom: 20px;
}
.character-item {
text-align: center;
width: 110px;
transition: transform 0.3s ease;
}
.character-item:hover {
transform: translateY(-5px);
}
.character-image {
width: 100px;
height: 100px;
border-radius: 50%;
object-fit: cover;
border: 3px solid var(--border-color);
transition: all 0.3s ease;
margin-bottom: 8px;
}
.character-item:hover .character-image {
border-color: var(--accent-color);
box-shadow: 0 5px 15px rgba(122, 95, 182, 0.3);
}
.character-name {
font-size: 0.85rem;
color: var(--text-secondary);
font-weight: 300;
}
/* Система вкладок */
.tabs-section {
margin-top: 40px;
}
.tabs-header {
display: flex;
border-bottom: 1px solid var(--border-color);
margin-bottom: 30px;
position: sticky;
top: 0;
background-color: var(--secondary-dark);
z-index: 10;
padding-top: 10px;
}
.tab-btn {
flex: 1;
padding: 18px 10px;
background: none;
border: none;
color: var(--text-secondary);
font-size: 1rem;
cursor: pointer;
transition: all 0.3s ease;
position: relative;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: 400;
}
.tab-btn:hover {
color: var(--text-primary);
}
.tab-btn.active {
color: var(--accent-light);
}
.tab-btn.active::after {
content: '';
position: absolute;
bottom: -1px;
left: 0;
width: 100%;
height: 2px;
background: var(--accent-color);
}
/* Контент вкладок */
.tab-content {
display: none;
animation: fadeIn 0.5s ease;
}
.tab-content.active {
display: block;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(10px); }
to { opacity: 1; transform: translateY(0); }
}
.tab-title {
font-size: 1.8rem;
color: var(--accent-light);
margin-bottom: 25px;
padding-bottom: 15px;
border-bottom: 1px solid var(--border-color);
}
.paragraph {
margin-bottom: 20px;
text-align: justify;
}
.highlight {
background-color: rgba(122, 95, 182, 0.1);
border-left: 3px solid var(--accent-color);
padding: 20px;
margin: 25px 0;
font-style: italic;
color: var(--text-primary);
}
/* Карточки */
.cards-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 25px;
margin: 30px 0;
}
.card {
background-color: var(--card-bg);
border-radius: 8px;
padding: 25px;
border: 1px solid var(--border-color);
transition: all 0.3s ease;
}
.card:hover {
border-color: var(--accent-color);
transform: translateY(-5px);
box-shadow: 0 10px 25px var(--shadow-color);
}
.card-icon {
color: var(--accent-color);
font-size: 1.5rem;
margin-bottom: 15px;
}
.card-title {
font-size: 1.2rem;
margin-bottom: 10px;
color: var(--accent-light);
}
/* Списки */
.styled-list {
list-style: none;
margin: 20px 0;
}
.styled-list li {
padding: 10px 0;
padding-left: 25px;
position: relative;
border-bottom: 1px dashed var(--border-color);
}
.styled-list li:before {
content: '→';
position: absolute;
left: 0;
color: var(--accent-color);
}
/* Предупреждение/заключение */
.callout {
background-color: rgba(122, 95, 182, 0.1);
border: 1px solid var(--accent-color);
padding: 30px;
border-radius: 8px;
margin-top: 40px;
text-align: center;
}
.callout-title {
color: var(--accent-light);
font-size: 1.5rem;
margin-bottom: 15px;
}
/* Теги */
.tags {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 30px;
}
.tag {
background-color: rgba(122, 95, 182, 0.1);
color: var(--accent-light);
padding: 8px 15px;
border-radius: 20px;
font-size: 0.85rem;
border: 1px solid var(--border-color);
}
/* Футер */
.footer {
text-align: center;
margin-top: 50px;
padding-top: 20px;
border-top: 1px solid var(--border-color);
color: var(--text-secondary);
font-size: 0.9rem;
}
/* Адаптивность */
@media (max-width: 1100px) {
.container {
grid-template-columns: 280px 1fr;
}
}
@media (max-width: 900px) {
.container {
grid-template-columns: 1fr;
grid-template-rows: auto 1fr;
}
.alsina-column {
height: 400px;
}
.alsina-image {
object-position: center 30%;
}
.cards-grid {
grid-template-columns: 1fr;
}
.tabs-header {
flex-wrap: wrap;
}
.tab-btn {
min-width: 50%;
padding: 15px 5px;
font-size: 0.9rem;
}
}
@media (max-width: 600px) {
.content-column {
padding: 20px;
}
.main-title {
font-size: 2rem;
}
.character-gallery {
gap: 15px;
}
.character-item {
width: 90px;
}
.character-image {
width: 80px;
height: 80px;
}
.tab-btn {
min-width: 100%;
}
}
</style>
</head>
<body>
<div class="container">
<!-- Левая колонка с Альсиной -->
<div class="alsina-column">
<img src="https://upforme.ru/uploads/001c/92/09/2/85238.jpg" alt="Альсина Димитреску" class="alsina-image">
<div class="alsina-overlay">
<div class="alsina-name">АЛЬСИНА</div>
<div class="alsina-quote">"Каждый гость в моём замке проходит испытание. Не все выдерживают его. Но те, кто выдерживает... становятся частью легенды."</div>
</div>
</div>
<!-- Правая колонка с контентом -->
<div class="content-column">
<!-- Заголовок -->
<div class="header">
<h1 class="main-title">РОЛЕВАЯ АНКЕТА</h1>
<p class="subtitle">Поиск соучастника для тёмных фантазий</p>
</div>
<!-- Галерея персонажей -->
<div class="gallery-section">
<h3 class="gallery-title">ПЕРСОНАЖИ, КОТОРЫЕ МЕНЯ ВДОХНОВЛЯЮТ</h3>
<div class="character-gallery">
<div class="character-item">
<img src="https://upforme.ru/uploads/001c/92/09/2/229215.jpg" alt="Беллатрикс Лестрейндж" class="character-image">
<div class="character-name">Беллатрикс</div>
</div>
<div class="character-item">
<img src="https://via.placeholder.com/100x100/5a3a7a/ffffff?text=Альсина" alt="Альсина Димитреску" class="character-image">
<div class="character-name">Альсина</div>
</div>
<div class="character-item">
<img src="https://via.placeholder.com/100x100/5a3a7a/ffffff?text=Снейп" alt="Северус Снейп" class="character-image">
<div class="character-name">Снейп</div>
</div>
<div class="character-item">
<img src="https://via.placeholder.com/100x100/5a3a7a/ffffff?text=Ниган" alt="Ниган" class="character-image">
<div class="character-name">Ниган</div>
</div>
<div class="character-item">
<img src="https://via.placeholder.com/100x100/5a3a7a/ffffff?text=Лара" alt="Лара Крофт" class="character-image">
<div class="character-name">Лара</div>
</div>
</div>
</div>
<!-- Система вкладок -->
<div class="tabs-section">
<div class="tabs-header">
<button class="tab-btn active" data-tab="tab1">Обо мне</button>
<button class="tab-btn" data-tab="tab2">Философия</button>
<button class="tab-btn" data-tab="tab3">Предпочтения</button>
<button class="tab-btn" data-tab="tab4">Вселенные</button>
<button class="tab-btn" data-tab="tab5">Сценарии</button>
</div>
<!-- Контент вкладок -->
<div class="tabs-content">
<!-- Вкладка 1 -->
<div id="tab1" class="tab-content active">
<h2 class="tab-title">ОБО МНЕ</h2>
<p class="paragraph">Иногда кажется, что всё это началось не в 2008-м, а гораздо раньше. Как будто под кожей всегда сидела эта трещина. А потом просто нашлось слово, чтобы её оправдать. «Ролевая игра». Звучит почти невинно. Как «дочка моряка» или «ночной кошмар».</p>
<div class="highlight">
Мы не играли. Мы заражались. Словно подхватывали друг от друга лихорадку через короткие, рубленые строчки в звёздочках. Это был не текст. Это был обмен жидкостями.
</div>
<p class="paragraph">Пот, слюна, адреналин — всё это текло по проводам. Мы писали 24/7, потому что остановиться значило почувствовать, как реальность, эта старая, дряблая шлюха, снова наваливается на тебя грудью. Сон был не сном, а временным отключением сознания.</p>
<h3>Мой путь</h3>
<ul class="styled-list">
<li>Первый форум — не клуб, а убежище</li>
<li>Первые миры: Каллисто из «Зены», шпионка с лицом Диты фон Тиз</li>
<li>Поттериана — тёмные ритуалы и магия, пахнущая кровью</li>
<li>Возвращение с зомби-апокалипсисом: пять лет медленного совокупления со смертью</li>
<li>Три с половиной года молчания и возвращение</li>
</ul>
<div class="tags">
<span class="tag">#ТёмнаяФантазия</span>
<span class="tag">#ПсихологическаяИгра</span>
<span class="tag">#ЭротикаУжаса</span>
<span class="tag">#ПерсонажнаяГлубина</span>
</div>
</div>
<!-- Вкладка 2 -->
<div id="tab2" class="tab-content">
<h2 class="tab-title">ФИЛОСОФИЯ</h2>
<div class="cards-grid">
<div class="card">
<div class="card-icon"><i class="fas fa-feather-alt"></i></div>
<h3 class="card-title">Как я пишу</h3>
<p>Мне неважно, как вы пишете. Мне важно — чувствуете ли вы. Главное — проникновение идеи, даже если оно грязное, неопрятное, с грамматическими соплями.</p>
</div>
<div class="card">
<div class="card-icon"><i class="fas fa-ruler-horizontal"></i></div>
<h3 class="card-title">Размер поста</h3>
<p>Три-пять тысяч символов — достаточно, чтобы возбудиться, но не устать. Тридцать тысяч — это марафон, когда тебя несут, а остановиться уже невозможно.</p>
</div>
<div class="card">
<div class="card-icon"><i class="fas fa-hand-sparkles"></i></div>
<h3 class="card-title">Ритуал</h3>
<p>Я читаю ваш пост перед самым ответом. Чтобы ваш голос звучал у меня в голове. Чтобы мой ответ был не монологом, а спазмом на ваше вторжение.</p>
</div>
<div class="card">
<div class="card-icon"><i class="fas fa-comments"></i></div>
<h3 class="card-title">Обратная связь</h3>
<p>После хорошей сцены хочется закурить. Или вытереться. «Критика» — слово для тех, кто смотрит в замочную скважину. Мы либо делаем это вместе, либо нет.</p>
</div>
</div>
</div>
<!-- Вкладка 3 -->
<div id="tab3" class="tab-content">
<h2 class="tab-title">ПРЕДПОЧТЕНИЯ</h2>
<div class="cards-grid">
<div class="card">
<div class="card-icon"><i class="fas fa-fire"></i></div>
<h3 class="card-title">Напряжение</h3>
<p>Место не имеет значения. Везде хорошо, если есть напряжение — эта электрическая заряженность пространства между персонажами.</p>
</div>
<div class="card">
<div class="card-icon"><i class="fas fa-skull"></i></div>
<h3 class="card-title">Боль и смерть</h3>
<p>Я принимаю боль. Я требую смерти. Если это логично. Если это красиво. Если это служит истории, а не просто шокирует.</p>
</div>
<div class="card">
<div class="card-icon"><i class="fas fa-crown"></i></div>
<h3 class="card-title">Доминирование</h3>
<p>Люблю вести сюжет — быть тем, кто доминирует. Или тем, кто подчиняется, чтобы в нужный момент перевернуть всё и задушить сверху.</p>
</div>
<div class="card">
<div class="card-icon"><i class="fas fa-ghost"></i></div>
<h3 class="card-title">Неписей</h3>
<p>Не картонных дурачков. А таких, у которых в глазах настоящая, животная мука. Или настоящая, животная похоть. Разницы почти нет.</p>
</div>
</div>
</div>
<!-- Вкладка 4 -->
<div id="tab4" class="tab-content">
<h2 class="tab-title">ВСЕЛЕННЫЕ</h2>
<p class="paragraph">Мир для меня — не сеттинг. Это позиция. Это поза. Это то, как тела сталкиваются в темноте.</p>
<div class="cards-grid">
<div class="card">
<h3 class="card-title">«Ходячие мертвецы»</h3>
<p>Секс как валюта, утешение, оружие и наказание после конца света. Потные спины в тесном фургоне, обмен на еду, тихий стон от отчаяния.</p>
</div>
<div class="card">
<h3 class="card-title">«Resident Evil»</h3>
<p>Холод клинических столов и горячее дыхание биологической угрозы. Эротика нарушения границ на клеточном уровне.</p>
</div>
<div class="card">
<h3 class="card-title">«Гарри Поттер»</h3>
<p>Тёмные ритуалы в подвалах Малфоев. Кровь на пергаменте. Боль как ингредиент зелья. Беллатрикс, целующая подол мантии Повелителя.</p>
</div>
<div class="card">
<h3 class="card-title">«Хранители» / «Пацаны»</h3>
<p>Секс как политика, как патология. Изнасилование идеалов силой, абсолютной и безразличной.</p>
</div>
</div>
</div>
<!-- Вкладка 5 -->
<div id="tab5" class="tab-content">
<h2 class="tab-title">СЦЕНАРИИ</h2>
<p class="paragraph">Мои незакрытые гештальты. Мои порнографические сценарии.</p>
<div class="cards-grid">
<div class="card">
<h3 class="card-title">Поглощение Альсиной</h3>
<p>Не встреча. Поглощение. Медленное, церемониальное. Гость, который хочет быть раздавленным её величием, исчезнуть в ней.</p>
</div>
<div class="card">
<h3 class="card-title">Элис и Леон</h3>
<p>Секс как акт агрессивной вентиляции. Быстрый, жёсткий, в перерыве между волнами монстров. Без поцелуев. Только хрипы и укусы.</p>
</div>
<div class="card">
<h3 class="card-title">Лара и Нейтан</h3>
<p>Соперничество, которое разрешается физическим подавлением. Трофей — не артефакт, а сломленная воля.</p>
</div>
<div class="card">
<h3 class="card-title">Детектив и маньяк</h3>
<p>Расследование, где детектив влюбляется в призрак жертвы. А потом находит её живой — и понимает, что она маньяк. Эротика соучастия.</p>
</div>
</div>
<div class="callout">
<h3 class="callout-title">Если ты прочитал это, и у тебя не дрогнула рука...</h3>
<p>Я не ищу партнёра для игр. Я ищу соавтора для порно-некролога по всем этим прекрасным, мёртвым мирам. Того, кто не побоится испачкаться.</p>
<p style="margin-top: 15px; font-size: 1.1rem;"><strong>Я жду. Трещина открыта.</strong></p>
</div>
</div>
</div>
</div>
<!-- Футер -->
<div class="footer">
<p>© 2024 • Ролевая анкета • Поиск соучастника для тёмных фантазий</p>
<p><i class="fas fa-heart" style="color: #7a5fb6; margin: 0 5px;"></i> Все персонажи вымышлены</p>
</div>
</div>
</div>
<script>
// Инициализация при загрузке страницы
document.addEventListener('DOMContentLoaded', function() {
// Элементы табов
const tabBtns = document.querySelectorAll('.tab-btn');
const tabContents = document.querySelectorAll('.tab-content');
// Функция для переключения табов
function switchTab(tabId) {
// Скрыть все табы
tabContents.forEach(content => {
content.classList.remove('active');
});
// Убрать активный класс у всех кнопок
tabBtns.forEach(btn => {
btn.classList.remove('active');
});
// Показать выбранный таб
const activeTab = document.getElementById(tabId);
if (activeTab) {
activeTab.classList.add('active');
}
// Активировать соответствующую кнопку
const activeBtn = document.querySelector(`.tab-btn[data-tab="${tabId}"]`);
if (activeBtn) {
activeBtn.classList.add('active');
}
}
// Добавить обработчики событий для кнопок табов
tabBtns.forEach(btn => {
btn.addEventListener('click', function() {
const tabId = this.getAttribute('data-tab');
switchTab(tabId);
});
});
// Добавить обработчики для изображений персонажей
const characterImages = document.querySelectorAll('.character-image');
characterImages.forEach(img => {
img.addEventListener('click', function() {
// Убрать выделение у всех изображений
characterImages.forEach(i => {
i.style.borderColor = '';
i.style.transform = '';
});
// Выделить текущее изображение
this.style.borderColor = '#7a5fb6';
this.style.transform = 'scale(1.1)';
// Здесь можно добавить логику для отображения информации о персонаже
// Например, можно показывать модальное окно с деталями персонажа
});
});
// Инициализация первого таба как активного
switchTab('tab1');
// Плавная прокрутка при переключении табов (опционально)
tabBtns.forEach(btn => {
btn.addEventListener('click', function() {
const tabsSection = document.querySelector('.tabs-section');
if (tabsSection) {
window.scrollTo({
top: tabsSection.offsetTop - 20,
behavior: 'smooth'
});
}
});
});
});
</script>
</body>
</html>[/html]
