
[html]<!DOCTYPE html>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css">
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
/* главный контейнер */
.builder-wrap {
margin: 0 auto;
border-radius: 2rem;
overflow: hidden;
}
/* шапка */
.builder-header {
padding: 24px 32px 12px 32px;
text-align: center;
}
.builder-header{
font-size: 1.9rem;
font-weight: 700;
letter-spacing: -0.3px;
}
.builder-header p {
margin-top: 6px;
}
/* ПРЕВЬЮ АНКЕТЫ – теперь наверху, на всю ширину */
.preview-area {
padding: 24px;
}
/* Панель управления (формы + генерация кода) – две колонки */
.control-grid {
display: flex;
flex-wrap: wrap;
gap: 28px;
padding: 0 32px 32px 32px;
}
.editor-panel {
flex: 1.4;
min-width: 280px;
border-radius: 28px;
padding: 20px 24px;
border: 1px solid #e9dfca;
}
.code-panel {
flex: 1;
min-width: 280px;
background: #2f2b24;
border-radius: 28px;
padding: 20px 22px;
}
/* стилизация формы */
.form-group {
margin-bottom: 20px;
}
.form-group label {
display: block;
font-size: 0.7rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
color: #7a6a4b;
margin-bottom: 5px;
}
.form-group input, .form-group textarea {
width: 100%;
border: 1px solid #ddd0b4;
border-radius: 24px;
padding: 10px 16px;
font-family: inherit;
font-size: 0.85rem;
transition: 0.2s;
}
.form-group input:focus, .form-group textarea:focus {
outline: none;
border-color: #b9a36b;
box-shadow: 0 0 0 2px rgba(87,73,5,0.15);
}
textarea {
resize: vertical;
min-height: 90px;
}
/* НОВЫЕ СТИЛИ ДЛЯ ДВУХ КОЛОНОК В ОДНОЙ СТРОКЕ */
.form-row {
display: flex;
flex-wrap: wrap;
gap: 16px;
margin-bottom: 20px;
}
.form-row .form-group {
flex: 1;
margin-bottom: 0;
min-width: 120px;
}
/* динамические хобби */
.hobbies-list {
display: flex;
flex-direction: column;
gap: 10px;
margin-bottom: 12px;
}
.hobby-row {
display: flex;
gap: 8px;
align-items: center;
}
.hobby-row input {
flex: 1;
}
.remove-hobby {
background: #ece1cd;
border: none;
border-radius: 40px;
width: 32px;
height: 32px;
font-size: 1rem;
cursor: pointer;
transition: 0.2s;
color: #5a4a28;
}
.remove-hobby:hover {
background: #d6c5a6;
}
.add-hobby-btn {
background: none;
border: 1px dashed #bba97c;
padding: 8px 12px;
border-radius: 40px;
width: 100%;
font-weight: 500;
color: #5f4e2c;
cursor: pointer;
margin-top: 6px;
transition: 0.2s;
}
.add-hobby-btn:hover {
background: #ece1cd;
}
/* цветовые пикеры */
.color-row {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 12px;
background: #f3ecdf;
padding: 6px 12px;
border-radius: 50px;
}
.color-row span {
font-size: 0.8rem;
font-weight: 500;
color: #4e3f24;
}
.color-row input {
width: 48px;
height: 36px;
border: 1px solid #ccc;
border-radius: 16px;
cursor: pointer;
background: white;
}
/* блок кода */
.code-header {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
margin-bottom: 14px;
}
.code-header span {
color: #f0e7d6;
font-weight: 500;
}
.copy-btn {
background: #574905;
border: none;
padding: 6px 18px;
border-radius: 60px;
color: white;
font-weight: 500;
cursor: pointer;
transition: 0.2s;
}
.copy-btn:hover {
background: #7c681b;
}
.generated-code {
width: 100%;
height: 340px;
background: #1d1b16;
color: #f0e2cd;
font-family: 'Courier New', monospace;
font-size: 12px;
padding: 16px;
border-radius: 20px;
border: none;
resize: vertical;
}
.accept-codes-block {
margin-top: 20px;
}
.note {
font-size: 0.7rem;
text-align: center;
color: #9f906f;
}
@media (max-width: 850px) {
.preview-area {
margin: 16px;
}
.control-grid {
padding: 0 16px 24px 16px;
}
.form-row {
flex-direction: column;
gap: 20px;
}
.form-row .form-group {
margin-bottom: 0;
}
}
/* ----- СТИЛИ ДЛЯ ПРЕВЬЮ АНКЕТЫ (оригинальные, для корректного отображения) ----- */
/* эти стили нужны только для предпросмотра в редакторе, в финальный код не попадают */
:root {
--anketa-color-text: #2f2b24;
--anketa-color-name: #dad2c8;
--anketa-fon-color: #0e1807;
--anketa-fon-bio: #e8e7e3;
}
</style>
<div class="builder-wrap">
<div class="builder-header">
<i class="fas fa-feather-alt"></i> Анкета-конструктор + коды приёмки
</div>
<div class="preview-area">
<div id="livePreview" class="frgp-static-root"></div>
<div class="note">⬆ Живой предпросмотр анкеты. Цвета и текст меняются мгновенно.</div>
</div>
<div class="control-grid">
<!-- Левая панель: поля -->
<div class="editor-panel">
<div class="form-row">
<div class="form-group"><label>NAME SURNAME (англ.)</label><input type="text" id="inputNameEn" placeholder="LIAM SILVER"></div>
<div class="form-group"><label>Имя Фамилия (рус.)</label><input type="text" id="inputNameRu" placeholder="Лайам Сильвер"></div>
</div>
<div class="form-row">
<div class="form-group"><label>Возраст (y.o)</label><input type="text" id="inputAge" placeholder="24"></div>
<div class="form-group"><label>Дата рождения</label><input type="text" id="inputBirth" placeholder="15.06.2000"></div>
</div>
<div class="form-row">
<div class="form-group"><label>Семейное положение</label><input type="text" id="inputMaritalStatus" placeholder="холост"></div>
<div class="form-group"><label>Занятость</label><input type="text" id="inputJob" placeholder="студент"></div>
</div>
<div class="form-row">
<div class="form-group"><label>FC (имя внешности, англ.)</label><input type="text" id="inputFc" placeholder="Emma Watson"></div>
<div class="form-group"><label>Ссылка URL фото</label><input type="text" id="inputPhotoUrl" placeholder="https://..."></div>
</div>
<div class="form-group"><label>Биография / факты</label><textarea id="inputBio" rows="4">полноценная биография \nили несколько фактов о персонаже</textarea></div>
<div class="form-group">
<label>Увлечения & хобби</label>
<div id="hobbiesContainer" class="hobbies-list"></div>
<button type="button" id="addHobbyBtn" class="add-hobby-btn"><i class="fas fa-plus"></i> Добавить хобби</button>
</div>
<div class="form-row">
<div class="form-group"><label>Ссылка на ваш профиль</label><input type="text" id="inputProfileUrl" placeholder="https://..."></div>
</div>
<span class="form-group"><label>Instagram персонажа</label></span>
<div class="form-row">
<div class="form-group"><input type="text" id="inputProfileNameInsta" placeholder="@ник"></div>
<div class="form-group"><input type="text" id="inputProfileUrlInsta" placeholder="https://..."></div>
</div>
<span class="form-group"><label>Ссылка на пару (имя на англ.)</label></span>
<div class="form-row">
<div class="form-group"><input type="text" id="inputProfileNameLove" placeholder="имя пары"></div>
<div class="form-group"><input type="text" id="inputProfileUrlLove" placeholder="https://..."></div>
</div>
<div class="form-group"><label>Любимая цитата или трек</label><input type="text" id="inputQuote" placeholder="«Музыка — это тишина между нотами»"></div>
<div class="form-group"><label>Откуда узнали</label><input type="text" id="inputSource" placeholder="баннерообмен"></div>
<!-- Поля для LZ-блока и гифки -->
<div class="form-row">
<div class="form-group"><label>Текст для LZ</label><textarea id="lzText" rows="3" placeholder="я люблю тебя до слез"></textarea></div>
<div class="form-group"><label>Слово/фраза для ссылки в LZ</label>
<input type="text" id="lzLinkWord" placeholder="тебя"><div class="note">фраза или слово должны содержаться в полном тексте для LZ, чтобы вставить ссылку на нее</div></div>
</div>
<div class="form-group"><label>Ссылка на вашу анкету (для LZ)</label><input type="text" id="lzLinkAnket" placeholder="https://..."></div>
<div class="form-group"><label>Ссылка на гиф 100x100px (для ЛС)</label><input type="text" id="lzLinkAv" placeholder="https://..."></div>
</div>
<!-- Правая панель: цвета + код анкеты + коды приёмки -->
<div class="code-panel">
<div class="form-group">
<label>Цветовая схема</label>
<div class="color-row"><span>--цвет текста</span><input type="color" id="colorText" value="#2f2b24"></div>
<div class="color-row"><span>--цвет главного имени</span><input type="color" id="colorName" value="#dad2c8"></div>
<div class="color-row"><span>--цвет фона анкеты</span><input type="color" id="colorFon" value="#0e1807"></div>
<div class="color-row"><span>--цвет поля для био</span><input type="color" id="colorBio" value="#e8e7e3"></div>
</div>
<div class="code-header">
<span><i class="fas fa-code"></i> Готовый HTML</span>
<button id="copyCodeBtn" class="copy-btn"><i class="fas fa-copy"></i> Копировать код</button>
</div>
<textarea id="finalCodeArea" class="generated-code" readonly></textarea>
<div class="accept-codes-block">
<div class="code-header">
<span><i class="fas fa-code"></i> Коды приёмки</span>
<button id="copyAcceptBtn" class="copy-btn"><i class="fas fa-copy"></i> Копировать код</button>
</div>
<textarea id="allAcceptCodes" class="generated-code" readonly></textarea>
</div>
</div>
</div>
</div>
<script src="https://forumstatic.ru/files/001b/d4/18/85966.js?v=3"></script>
[/html]