.polls-content, .poll-questions-content { padding: 8px; height: 100%; display: flex; flex-direction: column; }
.polls-container, .questions-container { flex: 1; overflow-y: auto; margin-bottom: 8px; scrollbar-width: none; padding-top: 2px; }
.polls-container::-webkit-scrollbar, .questions-container::-webkit-scrollbar { display: none; }

/* Карточки опросов */
.poll-item {
    display: flex; align-items: center; padding: 8px; background: rgba(119,124,124,0.15);
    border: 1px solid rgba(119,124,124,0.3); border-radius: 8px; cursor: pointer; transition: all 0.2s ease;
    gap: 8px; margin-bottom: 6px;
}
.poll-item:hover { background: rgba(119,124,124,0.25); transform: translateY(-1px); }
.poll-item.create-poll-item { background: rgba(76,175,80,0.2); border-color: rgba(76,175,80,0.5); }

/* Карточки вопросов */
.question-item {
    background: rgba(20,30,48,0.4); border-radius: 8px; padding: 10px; margin-bottom: 6px;
    border: 1px solid rgba(255,255,255,0.1); font-family: var(--font-family);
}
.question-item.deleted { opacity: 0.6; background: rgba(244,67,54,0.1); }

/* Заголовки */
.poll-content { flex: 1; min-width: 0; display: flex; flex-direction: column; justify-content: center; }
.poll-title { font-weight: 500; font-size: 16px; color: white; text-align: left; }
.poll-info { display: flex; justify-content: space-between; font-size: 12px; color: rgba(167,169,169,0.7); }

/* Вопросы */
.question-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; }
.question-body { position: relative; }
.question-actions { display: flex; gap: 6px; justify-content: flex-end; margin-top: 8px; }
.question-author { font-size: 11px; color: #888; }
.question-author-real { font-size: 11px; color: #4CAF50; }
.question-date { font-size: 11px; color: #888; }
.question-text { font-size: 13px; line-height: 1.4; color: white; }

/* Эмодзи и счетчики */
.poll-emoji-large { font-size: 32px; min-width: 50px; display: flex; align-items: center; justify-content: center; }
.poll-questions-oval {
    width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-weight: bold; font-size: 14px; color: white; background: linear-gradient(145deg, #1565C0, #0D47A1);
    margin-left: auto; flex-shrink: 0; box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

/* Кнопки */
.back-to-polls-btn {
    background: none; border: none; color: white; font-size: 16px; cursor: pointer;
    padding: 8px 12px; margin-right: 8px; border-radius: 6px; transition: background-color 0.2s ease;
}
.back-to-polls-btn:hover { background: rgba(255,255,255,0.1); }

.vote-btn, .delete-btn {
    padding: 6px 10px; border-radius: 6px; font-size: 11px; border: 1px solid rgba(255,255,255,0.2);
    cursor: pointer; transition: all 0.2s ease;
}
.vote-btn { background: rgba(255,255,255,0.1); color: white; display: flex; align-items: center; gap: 4px; }
.vote-btn:hover:not(:disabled) { background: rgba(255,255,255,0.2); }
.vote-btn.has-voted { background: rgba(76,175,80,0.3); border-color: rgba(76,175,80,0.5); }
.vote-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.delete-btn { background: rgba(244,67,54,0.2); color: white; }
.delete-btn:hover { background: rgba(244,67,54,0.3); }

/* Формы */
.create-poll-form, .question-form {
    background: rgba(20,30,48,0.6); padding: 10px; border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.2); margin-bottom: 8px;
}
.form-row { display: flex; gap: 6px; margin-bottom: 8px; }
.form-field { margin-bottom: 8px; }

.form-input, .form-input-small {
    padding: 8px; border-radius: 6px; border: 1px solid rgba(255,255,255,0.2);
    background: rgba(255,255,255,0.1); color: white; width: 100%; font-size: 13px;
    font-family: var(--font-family);
}
.form-input-small { flex: 1; }
.form-input::placeholder, .form-input-small::placeholder { color: rgba(255,255,255,0.6); }
textarea.form-input { min-height: 70px; resize: vertical; }

.form-actions { display: flex; gap: 6px; }
.sync-action-btn {
    width: 100%; padding: 10px; border: none; border-radius: 6px; font-size: 14px; font-weight: 600;
    cursor: pointer; transition: all 0.2s ease; margin-bottom: 6px; font-family: var(--font-family);
}
.sync-action-btn-green { background: linear-gradient(145deg, #4caf50, #3d8b40); color: white; }
.sync-action-btn-gray { background: linear-gradient(145deg, #9e9e9e, #757575); color: white; }
.sync-action-btn:disabled { cursor: not-allowed; opacity: 0.7; }
.form-actions .sync-action-btn { flex: 1; margin-bottom: 0; }

/* Состояния */
.no-questions, .no-polls, .loading { padding: 20px; text-align: center; font-style: italic; color: #888; }
.error-message { color: #f44336; padding: 10px; font-size: 13px; text-align: center; }

/* Первый экран «Твой голос» — корпоративный стиль v2, перенесённый в v1. */
#polls-screen { position:fixed; inset:0; z-index:2; display:flex; flex-direction:column; background:transparent; }
.polls-content { padding:12px 16px; background:transparent; font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace; }
.poll-item { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:11px; width:100%; margin:0 0 7px; padding:10px; border:1px solid #29313d; border-radius:11px; background:#11151d; color:#f5f7fa; }
.poll-item:hover { background:#11151d; border-color:#0f5bff; transform:none; }
.poll-item.create-poll-item { background:#11151d; border-color:#0f5bff; }
.poll-emoji-large { display:grid; place-items:center; min-width:42px; width:42px; height:42px; border:0; border-radius:0; background:transparent; box-shadow:none; color:#1d6cff; filter:drop-shadow(0 1px 5px rgba(29,108,255,.28)); }
.poll-emoji-large svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.poll-title { color:#f5f7fa; font-size:13px; font-weight:700; }
.poll-info { display:flex; justify-content:flex-start; min-width:0; gap:7px; margin-top:4px; overflow-x:auto; color:#8e99a8; font-size:11px; white-space:nowrap; scrollbar-width:none; }
.poll-info::-webkit-scrollbar { display:none; }
.poll-info span { flex:0 0 auto; }
.poll-date::before { content:'•'; margin-right:7px; color:#29313d; }
.poll-question-count { color:#0f5bff; }
.poll-arrow { color:#0f5bff; font-size:20px; line-height:1; }
.sync-action-btn-green { background:#0f5bff; }
.sync-action-btn-gray { background:#29313d; }

/* Внутренние страницы «Твой голос» в общем стиле приложения. */
#poll-questions-screen { position:fixed; inset:0; z-index:2; display:flex; flex-direction:column; background:transparent; }
.poll-questions-header { margin-bottom:0; }
.poll-questions-content { width:min(100%,430px); margin:0 auto; padding:12px 16px 18px; background:transparent; font-family:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace; }
.poll-questions-content .sync-action-container { margin-bottom:10px; }
.poll-questions-content .question-item { margin:0 0 8px; padding:12px; border:1px solid #29313d; border-radius:11px; background:#11151d; }
.poll-questions-content .question-item.deleted { background:#171116; border-color:rgba(255,69,58,.45); }
.poll-questions-content .question-header { gap:10px; margin-bottom:10px; }
.poll-questions-content .question-author { color:#f5f7fa; font-size:11px; font-weight:700; }
.poll-questions-content .question-author-real { color:#0f5bff; font-size:10px; }
.poll-questions-content .question-date { color:#8e99a8; font-size:10px; white-space:nowrap; }
.poll-questions-content .question-text { color:#f5f7fa; font-size:13px; line-height:1.5; }
.poll-questions-content .question-actions { gap:7px; margin-top:12px; }
.poll-questions-content .vote-btn, .poll-questions-content .delete-btn { min-height:34px; border-radius:8px; border-color:#29313d; background:#080a0f; color:#f5f7fa; }
.poll-questions-content .vote-btn.has-voted { border-color:#0f5bff; background:rgba(15,91,255,.16); color:#f5f7fa; }
.poll-questions-content .question-form { margin-bottom:10px; padding:12px; border:1px solid #29313d; border-radius:11px; background:#11151d; }
.poll-questions-content .form-input, .poll-questions-content .form-input-small { border-color:#29313d; border-radius:10px; background:#080a0f; }
.poll-questions-content .sync-action-btn { border-radius:10px; }
