/**
 * Due Penalty Calc — frontend styles (prefix dpc-)
 */

:root {
	--dpc-radius: 16px;
	--dpc-radius-sm: 10px;
	--dpc-radius-pill: 999px;
	--dpc-transition: 0.25s ease;
	--dpc-font-family:
		-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
		Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
}

.dpc-intro {
	max-width: 960px;
	margin: 0 auto 1.25rem;
	padding: 0 20px;
	font-family: var(--dpc-font-family);
	font-size: 0.95rem;
	line-height: 1.55;
	color: #333;
}
.dpc-intro p { margin: 0 0 0.5rem; }

.dpc-wrapper {
	max-width: 960px;
	margin: 0 auto;
	padding: clamp(18px, 3vw, 28px);
	background: var(--dpc-bg, linear-gradient(135deg, #0f0f23 0%, #1a1a3e 50%, #16213e 100%));
	border-radius: var(--dpc-radius);
	box-shadow: var(--dpc-shadow, 0 8px 32px rgba(0, 0, 0, 0.3));
	color: var(--dpc-text, #f0f0f5);
	font-family: var(--dpc-font-family);
	box-sizing: border-box;
}
.dpc-wrapper *, .dpc-wrapper *::before, .dpc-wrapper *::after {
	box-sizing: border-box;
}

.dpc-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}
.dpc-title {
	margin: 0;
	font-size: clamp(1.15rem, 2vw, 1.4rem);
	font-weight: 700;
	color: var(--dpc-text, #f0f0f5);
	letter-spacing: -0.01em;
}

.dpc-side__label {
	display: block;
	font-size: 0.78rem;
	font-weight: 600;
	color: var(--dpc-text-muted, rgba(255, 255, 255, 0.65));
	margin-bottom: 6px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.dpc-input-group {
	background: var(--dpc-surface, rgba(255, 255, 255, 0.08));
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.15));
	border-radius: var(--dpc-radius-sm);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	transition: border-color var(--dpc-transition), box-shadow var(--dpc-transition), background var(--dpc-transition);
}
.dpc-input-group:focus-within {
	border-color: var(--dpc-accent, #00d4aa);
	box-shadow: 0 0 0 3px var(--dpc-accent-soft, rgba(0, 212, 170, 0.2));
	background: var(--dpc-surface-hover, rgba(255, 255, 255, 0.12));
}

.dpc-amount,
.dpc-date {
	appearance: none;
	-webkit-appearance: none;
	width: 100%;
	border: 0;
	background: transparent;
	color: var(--dpc-text, #f0f0f5);
	font-size: 1rem;
	font-weight: 600;
	padding: 10px 14px;
	font-family: inherit;
	outline: none;
	min-width: 0;
}
.dpc-amount--compact {
	font-size: clamp(1.1rem, 2.5vw, 1.35rem);
}
.dpc-date { font-weight: 500; }

.dpc-params {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-bottom: 20px;
}
.dpc-field--wide { grid-column: 1 / -1; }
.dpc-hint {
	margin: 6px 0 0;
	font-size: 0.78rem;
	color: var(--dpc-text-muted, rgba(255, 255, 255, 0.65));
}

.dpc-import {
	margin-bottom: 20px;
	padding: 14px 16px;
	border: 1px dashed var(--dpc-border, rgba(255, 255, 255, 0.2));
	border-radius: var(--dpc-radius-sm);
	background: var(--dpc-surface, rgba(255, 255, 255, 0.04));
}
.dpc-import__hint {
	margin-top: 0;
	margin-bottom: 10px;
}
.dpc-import__row {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.dpc-file-input {
	font-family: inherit;
	font-size: 0.88rem;
	color: var(--dpc-text, #f0f0f5);
	max-width: 100%;
}
.dpc-file-input::file-selector-button {
	appearance: none;
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.2));
	border-radius: var(--dpc-radius-pill);
	background: var(--dpc-surface, rgba(255, 255, 255, 0.08));
	color: var(--dpc-text, #f0f0f5);
	padding: 6px 14px;
	margin-right: 10px;
	font-family: inherit;
	font-size: 0.82rem;
	font-weight: 500;
	cursor: pointer;
	transition: background var(--dpc-transition), border-color var(--dpc-transition);
}
.dpc-file-input::file-selector-button:hover {
	background: var(--dpc-accent-soft, rgba(0, 212, 170, 0.2));
	border-color: var(--dpc-accent, #00d4aa);
	color: var(--dpc-accent, #00d4aa);
}
.dpc-import__status {
	margin: 10px 0 0;
	font-size: 0.85rem;
	line-height: 1.4;
}
.dpc-import__status--ok {
	color: var(--dpc-accent, #00d4aa);
}
.dpc-import__status--err {
	color: var(--dpc-warning, #ff6b6b);
}

/* ── Вкладки «Отгрузки» / «Оплаты» (segmented control) ───────────────── */
.dpc-tabs {
	--dpc-tabs-ease: cubic-bezier(0.4, 0, 0.2, 1);
	margin-bottom: 16px;
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.15));
	border-radius: var(--dpc-radius);
	overflow: hidden;
	background: var(--dpc-surface, rgba(255, 255, 255, 0.06));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
.dpc-tabs__nav {
	position: relative;
	display: flex;
	gap: 4px;
	margin: 12px 12px 0;
	padding: 5px;
	border-radius: var(--dpc-radius-pill);
	background: var(--dpc-accent-soft, rgba(0, 212, 170, 0.12));
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.1));
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.06);
}
.dpc-tabs__glider {
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: 0;
	height: calc(100% - 10px);
	border-radius: var(--dpc-radius-pill);
	background: var(--dpc-surface, rgba(255, 255, 255, 0.12));
	box-shadow:
		0 1px 2px rgba(0, 0, 0, 0.08),
		0 4px 14px rgba(0, 0, 0, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.12);
	transition:
		transform 0.38s var(--dpc-tabs-ease),
		width 0.38s var(--dpc-tabs-ease);
	pointer-events: none;
	will-change: transform, width;
}
.dpc-tabs__tab {
	appearance: none;
	position: relative;
	z-index: 1;
	flex: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 44px;
	padding: 8px 14px;
	border: 0;
	border-radius: var(--dpc-radius-pill);
	background: transparent;
	color: var(--dpc-text-muted, rgba(255, 255, 255, 0.6));
	font-family: inherit;
	font-size: 0.86rem;
	font-weight: 600;
	letter-spacing: -0.01em;
	cursor: pointer;
	transition:
		color 0.28s var(--dpc-tabs-ease),
		transform 0.2s var(--dpc-tabs-ease);
}
.dpc-tabs__tab:hover {
	color: var(--dpc-text, #f0f0f5);
}
.dpc-tabs__tab:active {
	transform: scale(0.98);
}
.dpc-tabs__tab--active {
	color: var(--dpc-text, #f0f0f5);
}
.dpc-tabs__tab--active .dpc-tabs__icon {
	color: var(--dpc-accent, #00d4aa);
	transform: scale(1.05);
}
.dpc-tabs__tab:focus-visible {
	outline: 2px solid var(--dpc-accent, #00d4aa);
	outline-offset: 2px;
}
.dpc-tabs__icon {
	display: inline-flex;
	flex-shrink: 0;
	color: var(--dpc-text-muted, rgba(255, 255, 255, 0.45));
	transition:
		color 0.28s var(--dpc-tabs-ease),
		transform 0.28s var(--dpc-tabs-ease);
}
.dpc-tabs__tab-text {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 0;
}
.dpc-tabs__tab-label {
	white-space: nowrap;
}
.dpc-tabs__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 1.35rem;
	height: 1.35rem;
	padding: 0 7px;
	border-radius: var(--dpc-radius-pill);
	font-size: 0.72rem;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	line-height: 1;
	letter-spacing: 0.02em;
	transition:
		background 0.28s var(--dpc-tabs-ease),
		color 0.28s var(--dpc-tabs-ease),
		box-shadow 0.28s var(--dpc-tabs-ease),
		transform 0.28s var(--dpc-tabs-ease);
}
.dpc-tabs__tab:not(.dpc-tabs__tab--active) .dpc-tabs__count {
	background: var(--dpc-surface-hover, rgba(255, 255, 255, 0.1));
	color: var(--dpc-text-muted, rgba(255, 255, 255, 0.75));
	box-shadow: inset 0 0 0 1px var(--dpc-border, rgba(255, 255, 255, 0.14));
}
.dpc-tabs__tab--active .dpc-tabs__count {
	background: var(--dpc-table-head-bg, var(--dpc-accent, #00d4aa));
	color: var(--dpc-table-head-text, #0a0a1a);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	transform: scale(1.04);
}
.dpc-tabs__body {
	position: relative;
}
.dpc-tabs__panel {
	display: flex;
	flex-direction: column;
	min-height: 0;
}
.dpc-tabs__panel[hidden] {
	display: none !important;
}
.dpc-tabs__scroll {
	height: 260px;
	overflow-y: auto;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.dpc-tabs__scroll .dpc-edit-table thead th {
	position: sticky;
	top: 0;
	z-index: 2;
}
.dpc-tabs__footer {
	flex-shrink: 0;
	padding: 10px 12px;
	border-top: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.12));
	background: var(--dpc-surface, rgba(255, 255, 255, 0.04));
}
.dpc-table-wrap--in-tab {
	margin-bottom: 0;
	border: 0;
	border-radius: 0;
}
.dpc-list-block__title {
	margin: 0 0 10px;
	font-size: 0.92rem;
	font-weight: 600;
	color: var(--dpc-text, #f0f0f5);
}

.dpc-table-wrap {
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.15));
	border-radius: var(--dpc-radius-sm);
	overflow: hidden;
	margin-bottom: 10px;
	background: var(--dpc-surface, rgba(255, 255, 255, 0.06));
}

.dpc-edit-table,
.dpc-result-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.74rem;
}
.dpc-edit-table th,
.dpc-edit-table td,
.dpc-result-table th,
.dpc-result-table td {
	padding: 6px 7px;
	border-bottom: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.12));
	text-align: left;
	vertical-align: middle;
}
.dpc-edit-table thead th,
.dpc-result-table thead th {
	text-align: center;
	font-size: 0.62rem;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 700;
	color: var(--dpc-table-head-text, #0a0a1a);
	background: var(--dpc-table-head-bg, var(--dpc-accent, #00d4aa));
	border-bottom: 2px solid var(--dpc-accent-hover, var(--dpc-accent, #00d4aa));
	line-height: 1.12;
	white-space: pre-line;
	word-break: normal;     /* не режем слова на 1–2 символа */
	overflow-wrap: normal;  /* перенос только по пробелам/\\n */
	hyphens: manual;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.18);
}
.dpc-edit-table thead th {
	padding: 8px 6px;
}
.dpc-result-table thead th {
	padding: 8px 6px;
}
.dpc-edit-table input {
	width: 100%;
	border: 0;
	background: transparent;
	color: var(--dpc-text, #f0f0f5);
	font-family: inherit;
	font-size: 0.74rem;
	padding: 4px 0;
	outline: none;
}
.dpc-edit-table__actions { width: 44px; text-align: center; }

.dpc-row-remove {
	appearance: none;
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.2));
	background: transparent;
	color: var(--dpc-warning, #ff6b6b);
	width: 32px;
	height: 32px;
	border-radius: var(--dpc-radius-pill);
	cursor: pointer;
	font-size: 1.1rem;
	line-height: 1;
	transition: background var(--dpc-transition), transform var(--dpc-transition);
}
.dpc-row-remove:hover {
	background: var(--dpc-accent-soft, rgba(255, 107, 107, 0.15));
}
.dpc-row-remove:active { transform: scale(0.96); }

.dpc-chip {
	appearance: none;
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.15));
	background: var(--dpc-surface, rgba(255, 255, 255, 0.08));
	color: var(--dpc-text, #f0f0f5);
	padding: 5px 12px;
	border-radius: var(--dpc-radius-pill);
	font-size: 0.82rem;
	font-weight: 500;
	cursor: pointer;
	font-family: inherit;
	transition: background var(--dpc-transition), color var(--dpc-transition), border-color var(--dpc-transition), transform var(--dpc-transition);
}
.dpc-chip:hover {
	background: var(--dpc-accent-soft, rgba(0, 212, 170, 0.2));
	color: var(--dpc-accent, #00d4aa);
	border-color: var(--dpc-accent, #00d4aa);
}
.dpc-chip:active { transform: scale(0.96); }

.dpc-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 16px;
}
.dpc-btn {
	appearance: none;
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.15));
	border-radius: var(--dpc-radius-pill);
	padding: 10px 20px;
	font-size: 0.92rem;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
	transition: background var(--dpc-transition), color var(--dpc-transition), border-color var(--dpc-transition), transform var(--dpc-transition);
}
.dpc-btn--primary {
	background: var(--dpc-accent, #00d4aa);
	border-color: var(--dpc-accent, #00d4aa);
	color: #0a0a1a;
}
.dpc-btn--primary:hover {
	background: var(--dpc-accent-hover, #00f5c4);
	border-color: var(--dpc-accent-hover, #00f5c4);
}
.dpc-btn--secondary {
	background: var(--dpc-surface, rgba(255, 255, 255, 0.08));
	color: var(--dpc-text, #f0f0f5);
}
.dpc-btn--secondary:hover {
	background: var(--dpc-accent-soft, rgba(0, 212, 170, 0.2));
	border-color: var(--dpc-accent, #00d4aa);
	color: var(--dpc-accent, #00d4aa);
}
.dpc-btn:active { transform: scale(0.96); }
.dpc-btn:disabled { opacity: 0.6; cursor: not-allowed; }

.dpc-result {
	margin-top: 12px;
	padding: 12px 16px;
	background: var(--dpc-accent-soft, rgba(0, 212, 170, 0.2));
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.15));
	border-radius: var(--dpc-radius-sm);
	font-size: 0.95rem;
	line-height: 1.4;
	min-height: 2.8em;
	display: flex;
	align-items: center;
}
.dpc-result b {
	color: var(--dpc-accent, #00d4aa);
	font-weight: 700;
	margin: 0 4px;
}
.dpc-result--error {
	background: rgba(255, 107, 107, 0.15);
	border-color: var(--dpc-warning, #ff6b6b);
	color: var(--dpc-text, #f0f0f5);
}
.dpc-result--error b { color: var(--dpc-warning, #ff6b6b); }

.dpc-results { margin-top: 8px; }
.dpc-results-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 12px;
}
.dpc-result-table tbody tr:nth-child(even) {
	background: rgba(255, 255, 255, 0.03);
}
.dpc-result-table thead th.dpc-col--event,
.dpc-result-table tbody td.dpc-col--event {
	background: var(--dpc-accent-soft, rgba(0, 212, 170, 0.14));
}
.dpc-result-table thead th.dpc-col--event {
	background: rgba(0, 212, 170, 0.28);
	color: var(--dpc-text, #f0f0f5);
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.35);
}
.dpc-result-table tbody tr:nth-child(even) td.dpc-col--event {
	background: rgba(0, 212, 170, 0.16);
}
.dpc-result-table thead th.dpc-col--overdue,
.dpc-result-table tbody td.dpc-col--overdue {
	background: rgba(255, 107, 107, 0.12);
	font-weight: 600;
}
.dpc-result-table thead th.dpc-col--overdue {
	background: rgba(255, 107, 107, 0.26);
	color: var(--dpc-text, #f0f0f5);
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.35);
}
.dpc-result-table tbody tr:nth-child(even) td.dpc-col--overdue {
	background: rgba(255, 107, 107, 0.14);
}
.dpc-cell--empty {
	color: var(--dpc-text-muted, rgba(255, 255, 255, 0.45));
}
.dpc-result-table__total td {
	border-bottom: 0;
	font-size: 0.95rem;
}
.dpc-result-table__total td.dpc-col--event {
	background: var(--dpc-accent-soft, rgba(0, 212, 170, 0.14));
}
.dpc-result-table td:nth-child(n+5) {
	text-align: right;
	white-space: nowrap;
}
.dpc-result-table thead th:nth-child(n+5) {
	text-align: center;
	white-space: pre-line; /* разрешаем переносы в заголовках */
}
.dpc-result-table td:first-child,
.dpc-result-table thead th:first-child,
.dpc-result-table td:nth-child(2),
.dpc-result-table td:nth-child(3),
.dpc-result-table thead th:nth-child(2),
.dpc-result-table thead th:nth-child(3) {
	text-align: center;
}
.dpc-result-table td:nth-child(4),
.dpc-result-table thead th:nth-child(4) {
	text-align: center;
}

/* ── Таблица начисления: фикс. шапка/подвал, панорама мышью/тачем ─ */
.dpc-result-table-panel {
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.15));
	border-radius: var(--dpc-radius-sm);
	overflow: hidden;
	margin-bottom: 10px;
	background: var(--dpc-surface, rgba(255, 255, 255, 0.06));
}

.dpc-result-table-panel__head {
	border-bottom: 0;
}

.dpc-result-table-panel__foot {
	border-top: 0;
}

.dpc-result-table-panel__body {
	max-height: min(75vh, 520px);
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
}

.dpc-result-table-panel__head,
.dpc-result-table-panel__foot {
	background: rgba(0, 0, 0, 0.0);
	margin: 0;
	padding: 0;
}

.dpc-result-table-panel__head .dpc-result-table,
.dpc-result-table-panel__foot .dpc-result-table {
	margin: 0;
}

/* Убираем "зазоры": границы рисуем только в теле/итогах */
.dpc-result-table-panel__head th { border-bottom-width: 0; }
.dpc-result-table-panel__foot td { border-bottom-width: 0; }
.dpc-result-table-panel__foot td { border-top: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.12)); }

.dpc-result-table-panel__track {
	overflow-x: hidden;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	cursor: grab;
	touch-action: pan-y pinch-zoom;
	scrollbar-width: none;
	-ms-overflow-style: none;
	display: block;
	width: 100%;
	user-select: none;
}

/* Bootstrap/table-responsive: делаем его скролл-контейнером и прячем полосу */
.dpc-result-table-panel .table-responsive {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	-ms-overflow-style: none;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
}
.dpc-result-table-panel .table-responsive::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

.dpc-result-table-panel__track::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

.dpc-result-table-panel.is-panning,
.dpc-result-table-panel.is-panning .dpc-result-table-panel__track {
	cursor: grabbing;
	user-select: none;
}

.dpc-result-table-panel .dpc-result-table {
	table-layout: fixed;
	width: 1190px;
	min-width: 1190px;
	border-collapse: collapse;
}

/* Фиксированные ширины колонок, чтобы шапка/тело/итоги выглядели как одна таблица */
.dpc-result-table-panel .dpc-result-table th:nth-child(1),
.dpc-result-table-panel .dpc-result-table td:nth-child(1) { width: 40px; }

.dpc-result-table-panel .dpc-result-table th:nth-child(2),
.dpc-result-table-panel .dpc-result-table td:nth-child(2),
.dpc-result-table-panel .dpc-result-table th:nth-child(3),
.dpc-result-table-panel .dpc-result-table td:nth-child(3) { width: 110px; }

.dpc-result-table-panel .dpc-result-table th:nth-child(4),
.dpc-result-table-panel .dpc-result-table td:nth-child(4) { width: 60px; }

.dpc-result-table-panel .dpc-result-table th:nth-child(5),
.dpc-result-table-panel .dpc-result-table td:nth-child(5),
.dpc-result-table-panel .dpc-result-table th:nth-child(6),
.dpc-result-table-panel .dpc-result-table td:nth-child(6),
.dpc-result-table-panel .dpc-result-table th:nth-child(7),
.dpc-result-table-panel .dpc-result-table td:nth-child(7),
.dpc-result-table-panel .dpc-result-table th:nth-child(8),
.dpc-result-table-panel .dpc-result-table td:nth-child(8) { width: 160px; }

.dpc-result-table-panel .dpc-result-table th:nth-child(9),
.dpc-result-table-panel .dpc-result-table td:nth-child(9) { width: 90px; }

.dpc-result-table-panel .dpc-result-table th:nth-child(10),
.dpc-result-table-panel .dpc-result-table td:nth-child(10) { width: 140px; }

.dpc-result-table th,
.dpc-result-table td {
	padding-left: 8px;
	padding-right: 8px;
}

.dpc-result-table td {
	font-size: 0.72rem;
	font-variant-numeric: tabular-nums;
}

.dpc-result-table td:nth-child(2),
.dpc-result-table td:nth-child(3) {
	white-space: nowrap;
	font-size: 0.70rem;
}

.dpc-result-table td:nth-child(n+5) {
	font-size: 0.70rem;
	letter-spacing: 0;
}

@media (max-width: 760px) {
	.dpc-result-table-panel__body {
		max-height: min(70vh, 460px);
	}
	.dpc-result-table th,
	.dpc-result-table td {
		padding-left: 6px;
		padding-right: 6px;
	}
}

.dpc-block,
.dpc-faq,
.dpc-disclaimer {
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.12));
	font-size: 0.9rem;
	line-height: 1.55;
	color: var(--dpc-text-muted, rgba(255, 255, 255, 0.75));
}
.dpc-block__title {
	margin: 0 0 0.75rem;
	font-size: 1rem;
	color: var(--dpc-text, #f0f0f5);
}
.dpc-block__body p { margin: 0 0 0.5rem; }

.dpc-faq-item {
	border: 1px solid var(--dpc-border, rgba(255, 255, 255, 0.12));
	border-radius: var(--dpc-radius-sm);
	margin-bottom: 8px;
	overflow: hidden;
}
.dpc-faq-ask {
	appearance: none;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 14px;
	border: 0;
	background: var(--dpc-surface, rgba(255, 255, 255, 0.06));
	color: var(--dpc-text, #f0f0f5);
	font-family: inherit;
	font-size: 0.9rem;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
}
.dpc-faq-ask__caret::before { content: "▸"; }
.dpc-faq-item--expanded .dpc-faq-ask__caret::before { content: "▾"; }
.dpc-faq-answer-wrap {
	display: none;
	padding: 0 14px 12px;
}
.dpc-faq-item--expanded .dpc-faq-answer-wrap { display: block; }
.dpc-faq-answer-text { margin: 0; }

.dpc-disclaimer {
	font-size: 0.82rem;
	opacity: 0.85;
}

@media (max-width: 720px) {
	.dpc-params { grid-template-columns: 1fr; }
	.dpc-tabs__scroll { height: 220px; }
	.dpc-tabs__nav { margin: 10px 10px 0; padding: 4px; }
	.dpc-tabs__tab {
		flex-direction: column;
		gap: 4px;
		min-height: 52px;
		padding: 8px 10px;
		font-size: 0.8rem;
	}
	.dpc-tabs__tab-text {
		flex-direction: column;
		gap: 4px;
	}
	.dpc-tabs__icon svg {
		width: 16px;
		height: 16px;
	}
}

@media (max-width: 560px) {
	.dpc-actions { flex-direction: column; }
	.dpc-btn { width: 100%; text-align: center; }
}
