/* Digibit Darilni boni */

/* -------------------------------------------------------------------------
   Vnosna polja prevzamejo videz teme.

   Pravila spodaj so zavita v :where(), zato je njihova specifičnost 0 in
   jih prevozi vsako pravilo teme (digibit-shop oblikuje
   .woocommerce form .form-row input.input-text — zato so polja v obrazcu
   tudi označena s tema razredoma). Kjer tema polj ne oblikuje, veljajo
   vrednosti tu: zaobljenost, obroba in ozadje se vzamejo iz spremenljivk
   teme, če jih ta ponuja, sicer iz nadomestnih vrednosti.

   Lastne vrednosti lahko trgovina nastavi z --dgv-radius in --dgv-radius-chip.
   Za vsako vrednost velja vrstni red: --dgv-* (trgovina) → --dgb-* (tema digibit-shop)
   → --theme-* (Blocksy: Customizer → General → Forms / Colors / Buttons) → nadomestna vrednost.
   ---------------------------------------------------------------------- */
:where(.dgv-fields, .dgv-recipient, .dgv-redeem, .dgv-balance)
:where(input[type="text"], input[type="email"], input[type="number"], input[type="date"], input[type="tel"], textarea, select) {
	width: 100%;
	box-sizing: border-box;
	min-height: var(--theme-form-field-height, auto);
	padding: var(--theme-form-field-padding, .72em .9em);
	border: var(--theme-form-field-border-width, 1px) var(--theme-form-field-border-style, solid)
		var(--dgb-line, var(--theme-form-field-border-initial-color, rgba(0, 0, 0, .18)));
	border-radius: var(--dgv-radius, var(--dgb-radius-s, var(--theme-form-field-border-radius, 10px)));
	background: var(--dgb-base, var(--theme-form-field-background-initial-color, #fff));
	color: var(--theme-form-text-initial-color, inherit);
	font: inherit;
}
:where(.dgv-fields, .dgv-recipient, .dgv-redeem, .dgv-balance)
:where(input[type="text"], input[type="email"], input[type="number"], input[type="date"], input[type="tel"], textarea, select):focus {
	border-color: var(--dgb-brand, var(--theme-form-field-border-focus-color, var(--theme-palette-color-1, currentColor)));
	background: var(--dgb-base, var(--theme-form-field-background-focus-color, var(--theme-form-field-background-initial-color, #fff)));
	color: var(--theme-form-text-focus-color, inherit);
	outline: none;
}
:where(.dgv-fields, .dgv-redeem, .dgv-balance) :where(textarea) { min-height: 5.4em; line-height: 1.5; }

.dgv-fields { margin: 0 0 1.2em; display: grid; gap: 1em; }
.dgv-fields fieldset { border: 0; padding: 0; margin: 0; }
.dgv-fields legend { font-weight: 600; margin-bottom: .45em; padding: 0; }
.dgv-amounts { display: flex; flex-wrap: wrap; gap: .5em; }
.dgv-amounts legend { width: 100%; }
.dgv-chip { position: relative; cursor: pointer; }
.dgv-chip input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.dgv-chip > span {
	display: inline-block; padding: .55em 1.1em;
	border: 1px solid var(--dgb-line, var(--theme-form-field-border-initial-color, rgba(0, 0, 0, .25)));
	border-radius: var(--dgv-radius-chip, var(--theme-button-border-radius, 999px));
	background: var(--dgb-base, var(--theme-form-field-background-initial-color, transparent));
	color: var(--dgb-ink-2, inherit);
	transition: border-color .15s, color .15s, box-shadow .15s;
}
.dgv-chip:hover > span { border-color: var(--dgb-brand, var(--theme-palette-color-1, currentColor)); }
.dgv-chip.is-active > span, .dgv-chip input:checked + span {
	border-color: var(--dgb-brand, var(--theme-palette-color-1, currentColor));
	color: var(--dgb-brand, var(--theme-palette-color-1, inherit));
	box-shadow: inset 0 0 0 1px var(--dgb-brand, var(--theme-palette-color-1, currentColor));
	font-weight: 600;
}
.dgv-chip input:focus-visible + span { outline: 2px solid currentColor; outline-offset: 2px; }
.dgv-custom { display: flex; align-items: center; gap: .4em; width: 100%; margin: 0; padding: 0; }
.dgv-custom input { max-width: 10em; }
.dgv-delivery label { display: block; margin: .2em 0; cursor: pointer; }
.dgv-recipient p { margin: 0 0 .7em; padding: 0; }
.dgv-recipient label { display: block; font-size: .92em; margin-bottom: .2em; }
.dgv-note { font-size: .88em; opacity: .75; margin: 0; }
.dgv-redeem, .dgv-balance { margin: .5em 0 1em; }
.dgv-redeem label, .dgv-balance label { display: block; font-weight: 600; margin-bottom: .3em; }
.dgv-redeem-row { display: flex; gap: .5em; }
.dgv-redeem-row input { flex: 1; min-width: 0; text-transform: uppercase; letter-spacing: .04em; }
.dgv-msg { display: block; font-size: .9em; margin-top: .35em; }
.dgv-err { color: #b32d2e; }
.dgv-ok { color: #2e7d32; }
.dgv-code { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .92em; letter-spacing: .03em; }
.dgv-applied a.dgv-remove { font-weight: 400; font-size: .85em; }
.dgv-form-row td { padding-top: .8em; }
.dgv-blocks { padding: 12px 16px; display: grid; gap: 8px; }
.dgv-b-row { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; }
.dgv-b-amount { font-weight: 600; white-space: nowrap; }
.dgv-b-link { background: none; border: 0; padding: 0; color: inherit; text-decoration: underline; cursor: pointer; font-size: .9em; }
.dgv-b-form { display: flex; gap: 8px; }
.dgv-b-form input {
	flex: 1; min-width: 0; padding: 8px 10px; text-transform: uppercase;
	border: 1px solid var(--dgb-line, var(--theme-form-field-border-initial-color, #757575));
	border-radius: var(--dgv-radius, var(--dgb-radius-s, var(--theme-form-field-border-radius, 6px)));
	background: var(--dgb-base, var(--theme-form-field-background-initial-color, #fff)); color: inherit;
}
.dgv-delivery-note { margin-top: 1em; }
.dgv-used { list-style: none; margin: 0 0 .6em; padding: 0; display: grid; gap: .35em; }
.dgv-used li {
	display: flex; flex-wrap: wrap; align-items: center; gap: .5em; padding: .45em .6em;
	border: 1px dashed var(--dgb-line-2, var(--dgb-line, currentColor));
	border-radius: var(--dgv-radius, var(--dgb-radius-s, 8px));
}
.dgv-used-amount { font-weight: 600; margin-left: auto; }
.dgv-used .dgv-remove { background: none; border: 0; padding: 0; color: inherit; text-decoration: underline; cursor: pointer; font-size: .9em; }
.dgv-muted { font-weight: 400; opacity: .7; }

.dgv-redeem-note { display: block; font-size: .85em; opacity: .75; margin: -.15em 0 .35em; }
.dgv-nocash { border: 2px solid var(--dgb-brand, var(--theme-palette-color-1, currentColor)); border-radius: var(--dgv-radius, var(--theme-form-field-border-radius, 6px)); padding: .6em .85em; margin: 0 0 1.1em; line-height: 1.4; }
.dgv-nocash strong { display: block; text-transform: uppercase; letter-spacing: .04em; }
.dgv-nocash span { display: block; font-size: .88em; opacity: .8; margin-top: .2em; }

.dgv-consent { margin: .6em 0 1em; }
.dgv-consent strong, .dgv-b-consent strong { font-weight: 700; }
.dgv-b-consent { display: flex; gap: .5em; align-items: flex-start; margin: 0 0 .9em; padding: .6em .75em; border: 2px solid currentColor; border-radius: 6px; line-height: 1.35; cursor: pointer; }
.dgv-b-consent input { margin-top: .2em; flex: none; }
.dgv-nocash-note { margin: 1em 0; }
.dgv-forfeit { display: block; flex-basis: 100%; font-size: .85em; color: #8a4b00; margin-top: .2em; }
