/* =========================================================
   Darvit Account — login / register / forgot password
   ========================================================= */

/* ---- چیدمان کلی ---- */
.dwa-auth {
	min-height: 100vh;
	min-height: 100dvh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 32px;
	background: var(--dwa-bg);
}
.dwa-auth__card {
	width: 100%;
	max-width: 1216px;
	min-height: min(780px, calc(100dvh - 64px));
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
	gap: 12px;
	padding: 12px;
	background: var(--dwa-card);
	border: 1px solid var(--dwa-border);
	border-radius: var(--dwa-r-card);
}

/* ---- ستون فرم ---- */
.dwa-auth__pane {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 20px 32px 16px;
}
.dwa-auth__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 48px;
}
.dwa-auth__brand { display: flex; align-items: center; gap: 4px; }
.dwa-auth__back { margin-inline-start: -10px; }

.dwa .dwa-logo { display: inline-flex; align-items: center; gap: 8px; color: var(--dwa-text); font-weight: 700; font-size: 18px; line-height: 1; }
.dwa .dwa-logo img { display: block; height: 40px; width: auto; max-width: 180px; object-fit: contain; }
.dwa .dwa-logo--text .dwa-ico { width: 30px; height: 30px; }

.dwa-auth__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 16px;
	width: 100%;
	max-width: 460px;
	margin: 0 auto;
	padding: 40px 0;
}

.dwa-step { display: none; flex-direction: column; gap: 18px; margin: 0; padding: 0; border: 0; }
.dwa-step.is-active { display: flex; animation: dwa-in .28s ease-out; }
@keyframes dwa-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

.dwa-step__head { text-align: center; margin-bottom: 6px; }
.dwa .dwa-step__title { font-size: 24px; line-height: 1.45; margin-bottom: 8px; }
.dwa-step__sub { color: var(--dwa-muted); font-size: 15px; line-height: 1.9; }
.dwa-step__sub b { color: var(--dwa-brand-ink); font-weight: 700; }

.dwa .dwa-field--code input { font-size: 22px; font-weight: 700; letter-spacing: .35em; min-height: 58px; }
.dwa .dwa-field--code input::placeholder { font-size: 15px; font-weight: 400; letter-spacing: 0; }

.dwa-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

.dwa .dwa-btn--timer {
	background: var(--dwa-card) !important;
	border-color: var(--dwa-border) !important;
	color: var(--dwa-muted) !important;
	font-weight: 400;
	font-size: 14px;
}
.dwa .dwa-btn--timer:not([disabled]) { border-color: var(--dwa-brand-ink) !important; color: var(--dwa-brand-ink) !important; font-weight: 700; cursor: pointer; }
.dwa .dwa-btn--timer:not([disabled]):hover { background: var(--dwa-surface) !important; }
.dwa .dwa-btn--timer.is-loading::after { border-color: var(--dwa-brand-ink); border-top-color: transparent; }

.dwa-links { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: -4px; }
.dwa-links .dwa-ico { margin-top: 1px; }

/* نوع مشتری */
.dwa .dwa-seg { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0; padding: 0; border: 0; min-width: 0; }
.dwa .dwa-seg legend { grid-column: 1 / -1; float: right; width: 100%; }
.dwa .dwa-seg__opt {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 56px;
	padding: 10px 14px;
	border: 1px solid var(--dwa-border);
	border-radius: var(--dwa-r);
	background: var(--dwa-card);
	font-size: 15px;
	font-weight: 500;
	cursor: pointer;
	transition: border-color .2s, background-color .2s;
}
.dwa .dwa-seg__opt:hover { border-color: #B9C0B7; }
.dwa .dwa-seg__opt input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.dwa .dwa-seg__ico { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 999px; background: var(--dwa-surface); color: var(--dwa-muted); flex: 0 0 auto; transition: background-color .2s, color .2s; }
.dwa .dwa-seg__opt.is-checked { border-color: var(--dwa-text); background: var(--dwa-bg); }
.dwa .dwa-seg__opt.is-checked .dwa-seg__ico { background: var(--dwa-brand); color: #000; }
.dwa .dwa-seg__opt:focus-within { outline: 3px solid rgba(32, 163, 0, .3); outline-offset: 1px; }

.dwa-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

/* نوار اعتماد */
.dwa-trust {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 22px;
	color: var(--dwa-muted);
}
.dwa-trust .dwa-laurel { flex: 0 0 auto; color: #BFC6BD; }
.dwa-trust .dwa-laurel:last-child { transform: scaleX(-1); }
.dwa-trust__mark {
	display: inline-flex;
	align-items: center;
	padding-inline-end: 12px;
	border-inline-end: 1px solid var(--dwa-border);
	color: var(--dwa-brand-ink);
}
.dwa-trust p { font-size: 13px; line-height: 1.85; max-width: 300px; text-align: center; }

/* پایین صفحه */
.dwa-auth__foot nav { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 22px; padding-top: 8px; }
.dwa-auth__foot a { color: var(--dwa-muted); font-size: 14px; }
.dwa-auth__foot a:hover { color: var(--dwa-text); }

/* ---- ستون تصویر ---- */
.dwa-auth__visual {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 0;
	padding: 72px 48px 36px;
	overflow: hidden;
	border-radius: var(--dwa-r);
	background-color: var(--dwa-surface);
	background-image: radial-gradient(circle, #D9E0D6 1px, transparent 1.4px);
	background-size: 22px 22px;
}
.dwa-auth__tag {
	position: absolute;
	top: 20px;
	right: 20px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 14px 4px 12px;
	border-radius: 999px;
	background: var(--dwa-card);
	border: 1px solid var(--dwa-border);
	font-size: 13px;
	color: var(--dwa-text);
}
.dwa-auth__tag .dwa-ico { color: var(--dwa-brand-ink); }
.dwa-auth__art { width: 100%; max-width: 470px; margin-bottom: 4px; }
.dwa-auth__art svg { display: block; width: 100%; height: auto; }

.dwa-slides { width: 100%; max-width: 440px; min-height: 120px; text-align: center; }
.dwa-slide.is-active { animation: dwa-in .4s ease-out; }
.dwa .dwa-slide h2 { font-size: 20px; margin-bottom: 8px; }
.dwa-slide p { color: var(--dwa-muted); font-size: 15px; line-height: 2; }

.dwa-dots { display: flex; gap: 6px; margin-top: auto; padding-top: 20px; }
.dwa .dwa-dot {
	-webkit-appearance: none;
	appearance: none;
	width: 8px;
	height: 6px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: #C3CAC1;
	cursor: pointer;
	transition: width .3s, background-color .3s;
}
.dwa .dwa-dot.is-active { width: 34px; background: var(--dwa-text); }

/* انیمیشن تصویر: پالس انرژی روی کابل‌ها، چشمک LED، شناور شدن سپر */
.dwa-ill-halo { stroke: #8CFF70; stroke-width: 9; opacity: .5; }
.dwa-ill-core { stroke: #20A300; stroke-width: 2; }
.dwa-ill-pulse { stroke: #187A00; stroke-width: 3.2; stroke-dasharray: 10 190; animation: dwa-pulse 3.2s linear infinite; }
.dwa-ill-led { animation: dwa-led 2.4s ease-in-out infinite; }
.dwa-ill-led:nth-of-type(3n) { animation-delay: .8s; }
.dwa-ill-float { animation: dwa-float 4s ease-in-out infinite; }
@keyframes dwa-pulse { from { stroke-dashoffset: 200; } to { stroke-dashoffset: 0; } }
@keyframes dwa-led { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
@keyframes dwa-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
.dwa-auth.is-offscreen .dwa-ill-pulse,
.dwa-auth.is-offscreen .dwa-ill-led,
.dwa-auth.is-offscreen .dwa-ill-float { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
	.dwa-ill-pulse { stroke-dasharray: none; opacity: 0; }
}

/* ---- واکنش‌گرا ---- */
@media (max-width: 1100px) {
	.dwa-auth__visual { padding: 64px 28px 28px; }
	.dwa-auth__pane { padding: 16px 20px 12px; }
}
@media (max-width: 900px) {
	.dwa-auth { padding: 16px; align-items: stretch; }
	.dwa-auth__card { grid-template-columns: 1fr; min-height: calc(100dvh - 32px); }
	.dwa-auth__visual { display: none; }
	.dwa-auth__pane { padding: 8px 8px 8px; }
}
@media (max-width: 480px) {
	.dwa-auth { padding: 0; }
	.dwa-auth__card { border: 0; border-radius: 0; min-height: 100dvh; padding: 12px 16px; }
	.dwa-auth__pane { padding: 0; }
	.dwa-auth__body { padding: 24px 0; }
	.dwa .dwa-step__title { font-size: 22px; }
	.dwa-grid2 { grid-template-columns: 1fr; }
	.dwa-trust { gap: 8px; }
	.dwa-trust .dwa-laurel { display: none; }
	.dwa-row2 { grid-template-columns: 1fr; }
}
