/* ==========================================================================
   Pomirishi — skin za korpu / checkout / Moj nalog.
   Preslikava dizajn tokene na standardne WooCommerce klase, bez izmene markup-a.
   ========================================================================== */

:root {
	--pm-bg: #FFFFFF;
	--pm-surface: #F5F6F3;
	--pm-ink: #1B1D19;
	--pm-forest: #455335;
	--pm-moss: #56683F;
	--pm-sage: #6E7F5C;
	--pm-cream: #F2F4EE;
	--pm-border: #E6E8E3;
	--pm-border-strong: #CDD1C7;
	--pm-muted-2: #686D64;
	--pm-font: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce {
	font-family: var(--pm-font);
	color: var(--pm-ink);
}

/* Dugmad */
.woocommerce-cart .woocommerce .button,
.woocommerce-checkout .woocommerce .button,
.woocommerce-account .woocommerce .button,
.woocommerce-cart .checkout-button,
.woocommerce-checkout #place_order {
	background: var(--pm-forest) !important;
	color: var(--pm-surface) !important;
	font-family: var(--pm-font) !important;
	font-weight: 700 !important;
	letter-spacing: 0.04em;
	border: none !important;
	border-radius: 999px !important;
	padding: 14px 28px !important;
	transition: background 0.2s ease;
	text-transform: none;
}

.woocommerce-cart .woocommerce .button:hover,
.woocommerce-checkout .woocommerce .button:hover,
.woocommerce-account .woocommerce .button:hover,
.woocommerce-checkout #place_order:hover {
	background: var(--pm-moss) !important;
}

/* Tabela korpe */
.woocommerce-cart table.shop_table {
	border: 1px solid var(--pm-border);
	border-radius: 20px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}

.woocommerce-cart table.shop_table th {
	background: var(--pm-surface);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--pm-moss);
	padding: 14px 12px;
}

.woocommerce-cart table.shop_table td {
	border-top: 1px solid var(--pm-border);
	padding: 14px 12px;
	vertical-align: middle;
}

.woocommerce-cart table.shop_table img {
	border-radius: 12px;
	width: 64px;
}

.woocommerce-cart .product-remove a {
	color: #9AA08D !important;
	font-size: 18px;
}

/* Forme (checkout, nalog) */
.woocommerce-checkout .woocommerce form .form-row input.input-text,
.woocommerce-checkout .woocommerce form .form-row textarea,
.woocommerce-checkout .woocommerce form .form-row select,
.woocommerce-account .woocommerce form .form-row input.input-text,
.woocommerce-account .woocommerce form .form-row textarea,
.woocommerce-cart .coupon input.input-text {
	font-family: var(--pm-font);
	font-size: 15px;
	border: 1.5px solid var(--pm-border-strong);
	border-radius: 12px;
	padding: 12px 14px;
	background: var(--pm-bg);
	color: var(--pm-ink);
}

.woocommerce-checkout .woocommerce form .form-row input.input-text:focus,
.woocommerce-checkout .woocommerce form .form-row textarea:focus,
.woocommerce-account .woocommerce form .form-row input.input-text:focus {
	border-color: var(--pm-moss);
	outline: none;
	box-shadow: 0 0 0 3px rgba(86, 101, 63, 0.12);
}

.woocommerce-checkout .woocommerce form .form-row label,
.woocommerce-account .woocommerce form .form-row label {
	font-size: 13px;
	font-weight: 600;
	color: var(--pm-ink);
}

.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading {
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: var(--pm-ink);
}

/* Pregled porudžbine — spojen sa naslovom u jednu karticu */
.woocommerce-checkout #order_review {
	background: var(--pm-surface);
	border-radius: 0 0 24px 24px;
	padding: 16px 28px 28px;
}

.woocommerce-checkout #order_review table.shop_table {
	background: transparent;
	border: none;
}

.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td {
	border-color: var(--pm-border);
	font-size: 14px;
}

/* Obaveštenja */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-top-color: var(--pm-moss);
	background: var(--pm-surface);
	color: var(--pm-ink);
	border-radius: 12px;
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--pm-moss);
}

/* Kuponi i ukupno */
.woocommerce-cart .cart_totals h2 {
	font-size: 22px;
	font-weight: 800;
}

.woocommerce-cart .cart_totals table.shop_table {
	border-radius: 16px;
}

.woocommerce .woocommerce-Price-amount {
	color: var(--pm-moss);
	font-weight: 700;
}

/* ==========================================================================
   KRITIČNO: WooCommerce clearfix (::before/::after { content:" "; display:table })
   postaje GRID/FLEX stavka i zauzima prvu ćeliju — zato su kartice išle cik-cak
   a naslovi bili centrirani. Na svim našim grid/flex kontejnerima preko Woo
   markupa pseudo-elementi se gase.
   ========================================================================== */

.pm-account--auth #customer_login::before,
.pm-account--auth #customer_login::after,
.pm-account--dash .u-columns.col2-set::before,
.pm-account--dash .u-columns.col2-set::after,
.pm-account--dash .woocommerce-Address-title::before,
.pm-account--dash .woocommerce-Address-title::after,
.pm-wc-page--cart .woocommerce::before,
.pm-wc-page--cart .woocommerce::after,
.pm-wc-page--cart .coupon::before,
.pm-wc-page--cart .coupon::after,
.pm-wc-page--checkout form.woocommerce-checkout::before,
.pm-wc-page--checkout form.woocommerce-checkout::after,
.woocommerce-customer-details .col2-set::before,
.woocommerce-customer-details .col2-set::after,
.woocommerce-customer-details .woocommerce-columns--addresses::before,
.woocommerce-customer-details .woocommerce-columns--addresses::after,
.pm-wc-page .col2-set.addresses::before,
.pm-wc-page .col2-set.addresses::after,
.woocommerce-order ul.woocommerce-order-overview::before,
.woocommerce-order ul.woocommerce-order-overview::after {
	content: none !important;
	display: none !important;
}

/* ==========================================================================
   Moj nalog — kompletan template teme (woocommerce/page-account.php)
   ========================================================================== */

.pm-account {
	max-width: 1320px;
	margin: 0 auto;
	padding: 40px 32px 96px;
}

.pm-account .woocommerce {
	font-family: var(--pm-font);
	color: var(--pm-ink);
}

/* ---- Prijava / registracija (odjavljen korisnik) ---- */

.pm-account--auth {
	max-width: 1080px;
}

/* Google prijava (Nextend Social Login) iznad formi */
.pm-social-login {
	max-width: 420px;
	margin: 0 auto 32px;
	text-align: center;
}

.pm-social-login__title {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--pm-muted-2);
	margin-bottom: 14px;
}

.pm-social-login div.nsl-container .nsl-container-buttons {
	display: block;
	padding: 0;
}

.pm-social-login div.nsl-container .nsl-container-buttons a {
	display: block;
	width: 100%;
	margin: 0;
}

.pm-social-login .nsl-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	min-height: 52px;
	border: 1.5px solid var(--pm-border-strong) !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	background: #FFFFFF !important;
	font-family: var(--pm-font) !important;
	font-weight: 600;
	color: var(--pm-ink) !important;
	transition: border-color 0.15s ease;
}

.pm-social-login .nsl-button:hover {
	border-color: var(--pm-forest) !important;
}

.pm-social-login__or {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 28px;
	font-size: 13px;
	color: var(--pm-muted-3);
}

.pm-social-login__or::before,
.pm-social-login__or::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--pm-border);
}

/* Ako plugin sam ubaci dugmad i u WooCommerce forme — prikazujemo samo naš blok iznad. */
.pm-account--auth #customer_login .nsl-container {
	display: none !important;
}

.pm-account--auth #customer_login {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	align-items: start;
}

.pm-account--auth #customer_login .u-column1,
.pm-account--auth #customer_login .u-column2 {
	background: var(--pm-bg);
	border: 1px solid var(--pm-border);
	border-radius: 24px;
	padding: 36px 32px;
	width: auto;
	float: none;
}

.pm-account--auth #customer_login h2 {
	font-size: 26px;
	font-weight: 800;
	letter-spacing: -0.01em;
	margin: 0 0 22px;
	color: var(--pm-ink);
}

.pm-account .woocommerce form.login,
.pm-account .woocommerce form.register,
.pm-account .woocommerce form.woocommerce-ResetPassword {
	border: none;
	padding: 0;
	margin: 0;
	border-radius: 0;
}

.pm-account .woocommerce form .form-row {
	padding: 0;
	margin: 0 0 16px;
}

.pm-account .woocommerce form .form-row label {
	font-size: 13px;
	font-weight: 600;
	color: var(--pm-ink);
	margin-bottom: 6px;
	display: block;
}

.pm-account .woocommerce form .form-row input.input-text,
.pm-account .woocommerce form .form-row input[type="text"],
.pm-account .woocommerce form .form-row input[type="email"],
.pm-account .woocommerce form .form-row input[type="password"],
.pm-account .woocommerce form .form-row input[type="tel"],
.pm-account .woocommerce form .form-row input[type="date"],
.pm-account .woocommerce form .form-row select,
.pm-account .woocommerce form .form-row textarea {
	width: 100%;
	box-sizing: border-box;
	font-family: var(--pm-font);
	font-size: 15px;
	border: 1.5px solid var(--pm-border-strong);
	border-radius: 12px;
	padding: 12px 14px;
	background: var(--pm-bg);
	color: var(--pm-ink);
}

.pm-account .woocommerce form .form-row input:focus,
.pm-account .woocommerce form .form-row select:focus,
.pm-account .woocommerce form .form-row textarea:focus {
	border-color: var(--pm-moss);
	outline: none;
	box-shadow: 0 0 0 3px rgba(86, 101, 63, 0.12);
}

.pm-account .woocommerce form .woocommerce-form-login__rememberme {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	font-size: 14px;
	font-weight: 500;
}

.pm-account .woocommerce form .woocommerce-form-login__rememberme input {
	width: auto;
	accent-color: var(--pm-forest);
}

.pm-account .woocommerce .button,
.pm-account .woocommerce button[type="submit"] {
	width: 100%;
	background: var(--pm-forest) !important;
	color: var(--pm-surface) !important;
	font-family: var(--pm-font) !important;
	font-size: 15px;
	font-weight: 700 !important;
	letter-spacing: 0.04em;
	border: none !important;
	border-radius: 999px !important;
	padding: 15px 28px !important;
	cursor: pointer;
	transition: background 0.2s ease;
}

.pm-account .woocommerce .button:hover,
.pm-account .woocommerce button[type="submit"]:hover {
	background: var(--pm-moss) !important;
}

.pm-account .woocommerce .lost_password {
	font-size: 14px;
	margin: 14px 0 0;
}

.pm-account .woocommerce .lost_password a {
	color: var(--pm-moss);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Nextend social login dugmad */
.pm-account .nsl-container {
	margin-top: 18px;
}

/* Zaboravljena lozinka — jedna centrirana kartica */
.pm-account .woocommerce form.woocommerce-ResetPassword {
	max-width: 520px;
	margin: 0 auto;
	background: var(--pm-surface);
	border-radius: 24px;
	padding: 36px 32px;
}

/* ---- Kontrolna tabla (prijavljen korisnik) ----
   Horizontalni meni iznad sadržaja — ne zavisi od strukture Woo wrappera
   (plugini ubacuju dodatne elemente pa je grid raspored bio nepouzdan). */

.pm-account--dash .woocommerce {
	display: block;
}

.pm-account--dash .woocommerce-MyAccount-navigation {
	float: none;
	width: auto;
	margin-bottom: 36px;
}

.pm-account--dash .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	min-width: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0 0 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	border-bottom: 1px solid var(--pm-border);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: inline-block;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border: 1.5px solid var(--pm-border-strong);
	border-radius: 999px;
	padding: 10px 18px;
	color: var(--pm-ink);
	text-decoration: none;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	border-color: var(--pm-forest);
	color: var(--pm-forest);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--pm-forest);
	border-color: var(--pm-forest);
	color: var(--pm-surface);
}

.pm-account--dash .woocommerce-MyAccount-content p {
	font-size: 15px;
	line-height: 1.65;
	color: #4E534A;
}

.pm-account--dash .woocommerce-MyAccount-content h2,
.pm-account--dash .woocommerce-MyAccount-content h3 {
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: var(--pm-ink);
}

.pm-account--dash .woocommerce-MyAccount-content a:not(.button) {
	color: var(--pm-moss);
	font-weight: 600;
}

/* Tabele (porudžbine, poeni, preuzimanja) */
.pm-account--dash table.shop_table {
	border: 1px solid var(--pm-border);
	border-radius: 20px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	width: 100%;
}

.pm-account--dash table.shop_table thead th {
	background: var(--pm-surface);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--pm-moss);
	padding: 14px 12px;
	text-align: left;
}

.pm-account--dash table.shop_table td,
.pm-account--dash table.shop_table tbody th {
	border-top: 1px solid var(--pm-border);
	padding: 14px 12px;
	vertical-align: middle;
	font-size: 14px;
}

.pm-account--dash table.shop_table .button {
	width: auto;
	padding: 10px 20px !important;
	font-size: 13px;
	margin: 2px 4px 2px 0;
}

/* Adrese */
.pm-account--dash .col2-set .col-1,
.pm-account--dash .col2-set .col-2 {
	float: none;
	width: auto;
}

.pm-account--dash .u-columns.col2-set {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	align-items: start;
}

/* Elementi koje plugini ubace u col2-set ne smeju da zauzmu grid ćeliju kartice */
.pm-account--dash .u-columns.col2-set > *:not(.col-1):not(.col-2):not(.woocommerce-Address) {
	grid-column: 1 / -1;
}

.pm-account--dash .woocommerce-Address {
	text-align: left;
}

.pm-account--dash .woocommerce-Address-title h2,
.pm-account--dash .woocommerce-Address-title h3 {
	flex: 1;
	text-align: left;
	float: none;
}

.pm-account--dash .woocommerce-Address-title .edit {
	float: none;
	white-space: nowrap;
}

.pm-account--dash .woocommerce-Address,
.pm-account--dash .u-columns.col2-set .col-1 > .woocommerce-Address-title,
.pm-account--dash .u-columns.col2-set address {
	min-width: 0;
}

.pm-account--dash .woocommerce-Address {
	border: 1px solid var(--pm-border);
	border-radius: 20px;
	padding: 24px;
}

.pm-account--dash .woocommerce-Address-title {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
}

.pm-account--dash .woocommerce-Address-title h2,
.pm-account--dash .woocommerce-Address-title h3 {
	margin: 0 0 10px;
	font-size: 18px;
}

.pm-account--dash .woocommerce-Address-title .edit {
	font-size: 13px;
	font-weight: 700;
	color: var(--pm-moss);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pm-account--dash address {
	font-style: normal;
	font-size: 15px;
	line-height: 1.7;
	color: #4E534A;
}

/* Forme unutar naloga (detalji naloga, adrese) — dugme ne mora biti full width */
.pm-account--dash .woocommerce-MyAccount-content .button,
.pm-account--dash .woocommerce-MyAccount-content button[type="submit"] {
	width: auto;
}

.pm-account--dash fieldset {
	border: 1px solid var(--pm-border);
	border-radius: 16px;
	padding: 20px;
	margin: 24px 0;
}

.pm-account--dash fieldset legend {
	font-size: 14px;
	font-weight: 700;
	padding: 0 8px;
}

/* ==========================================================================
   Korpa, checkout i detalji porudžbine — template-i teme (v1.5)
   ========================================================================== */

.pm-wc-page {
	max-width: 1320px;
	margin: 0 auto;
	padding: 40px 32px 96px;
	font-family: var(--pm-font);
	color: var(--pm-ink);
}

/* ---- Korpa ---- */

.pm-wc-page--cart .woocommerce {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	gap: 48px;
	align-items: start;
}

.pm-wc-page--cart .woocommerce > *:not(.woocommerce-cart-form):not(.cart-collaterals) {
	grid-column: 1 / -1;
}

.pm-wc-page--cart .woocommerce-cart-form,
.pm-wc-page--cart .cart-collaterals {
	min-width: 0;
	width: 100%;
	float: none;
}

.pm-wc-page--cart table.shop_table .product-name a {
	font-weight: 700;
	color: var(--pm-ink);
}

.pm-wc-page--cart table.shop_table .product-name a:hover {
	color: var(--pm-moss);
}

.pm-wc-page--cart .quantity input.qty {
	width: 72px;
	font-family: var(--pm-font);
	font-size: 15px;
	font-weight: 700;
	border: 1.5px solid var(--pm-border-strong);
	border-radius: 999px;
	padding: 10px 6px 10px 16px;
	background: var(--pm-bg);
}

.pm-wc-page--cart .coupon {
	display: flex;
	gap: 10px;
	align-items: center;
}

.pm-wc-page--cart .coupon input.input-text {
	flex: 1 1 150px;
	width: auto;
	min-width: 0;
	font-family: var(--pm-font);
	border: 1.5px solid var(--pm-border-strong);
	border-radius: 999px;
	padding: 12px 16px;
	background: var(--pm-bg);
	box-sizing: border-box;
}

.pm-wc-page--cart .coupon .button,
.pm-wc-page--cart button[name="update_cart"] {
	width: auto;
	flex: 0 0 auto;
	white-space: nowrap;
	background: none !important;
	border: 1.5px solid var(--pm-forest) !important;
	color: var(--pm-forest) !important;
	font-size: 13px !important;
	padding: 11px 18px !important;
}

.pm-wc-page--cart .coupon .button:hover,
.pm-wc-page--cart button[name="update_cart"]:hover {
	background: var(--pm-forest) !important;
	color: var(--pm-surface) !important;
}

/* Woo core: .woocommerce .cart-collaterals .cart_totals { float:right; width:48% } —
   jača specifičnost + box-sizing, inače se kartica sabije i iskoči udesno. */
.pm-wc-page--cart .woocommerce .cart-collaterals {
	width: 100% !important;
	float: none !important;
}

.pm-wc-page--cart .woocommerce .cart-collaterals .cart_totals {
	width: 100% !important;
	float: none !important;
	background: var(--pm-surface);
	border-radius: 24px;
	padding: 28px;
}

.pm-wc-page--cart .cart_totals,
.pm-wc-page--cart .cart_totals * {
	box-sizing: border-box;
}

/* Kompaktan prikaz varijacija (Izaberi boju/veličinu, Pakovanje) — korpa,
   checkout pregled, potvrda porudžbine i detalji porudžbine u nalogu. */
.pm-wc-page dl.variation,
.pm-account--dash dl.variation,
.woocommerce-order dl.variation {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 2px 6px;
	margin: 6px 0 0;
	font-size: 13px;
	color: var(--pm-muted-2);
}

.pm-wc-page dl.variation dt,
.pm-account--dash dl.variation dt,
.woocommerce-order dl.variation dt {
	font-weight: 600;
	margin: 0;
	float: none;
	clear: none;
}

.pm-wc-page dl.variation dd,
.pm-account--dash dl.variation dd,
.woocommerce-order dl.variation dd {
	margin: 0;
	float: none;
}

.pm-wc-page dl.variation dd p,
.pm-account--dash dl.variation dd p,
.woocommerce-order dl.variation dd p {
	margin: 0;
	display: inline;
}

.pm-wc-page--cart .cart_totals h2 {
	margin-top: 0;
}

.pm-wc-page--cart .cart_totals table.shop_table {
	background: transparent;
	border: none;
	border-radius: 0;
}

.pm-wc-page--cart .cart_totals table.shop_table th,
.pm-wc-page--cart .cart_totals table.shop_table td {
	background: transparent;
	border: none;
	border-top: 1px solid var(--pm-border);
	padding: 12px 4px;
	font-size: 14px;
}

.pm-wc-page--cart .wc-proceed-to-checkout {
	padding: 12px 0 0;
}

.pm-wc-page--cart .wc-proceed-to-checkout .checkout-button {
	width: 100%;
	display: block;
	text-align: center;
	font-size: 16px !important;
	padding: 17px 28px !important;
}

/* Cross-sells sklanjamo — preporuke već postoje na stranici proizvoda */
.pm-wc-page--cart .cross-sells {
	display: none;
}

/* Prazna korpa */
.pm-wc-page--cart .cart-empty.woocommerce-info {
	border: 1.5px dashed var(--pm-border-strong);
	border-radius: 20px;
	background: none;
	text-align: center;
	padding: 48px 24px;
	font-size: 17px;
	font-weight: 600;
	color: var(--pm-muted-2);
}

.pm-wc-page--cart .cart-empty.woocommerce-info::before {
	display: none;
}

.pm-wc-page--cart .return-to-shop {
	text-align: center;
	margin: 24px 0 0;
}

.pm-wc-page--cart .return-to-shop .button {
	width: auto;
}

/* ---- Checkout ---- */

.pm-wc-page--checkout form.woocommerce-checkout {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	grid-template-rows: auto 1fr;
	gap: 0 48px;
	align-items: start;
}

.pm-wc-page--checkout form.woocommerce-checkout > *:not(#customer_details):not(#order_review):not(#order_review_heading) {
	grid-column: 1 / -1;
}

.pm-wc-page--checkout #customer_details {
	grid-column: 1;
	grid-row: 1 / 3;
	min-width: 0;
}

/* Naslov „Vaša narudžbina" je vizuelno vrh kartice pregleda — bez razmaka */
.pm-wc-page--checkout #order_review_heading {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	background: var(--pm-surface);
	border-radius: 24px 24px 0 0;
	padding: 26px 28px 0;
}

.pm-wc-page--checkout #order_review {
	grid-column: 2;
	grid-row: 2;
	min-width: 0;
	align-self: start;
}

/* Naslovi leve i desne kolone počinju u istoj liniji */
.pm-wc-page--checkout .woocommerce-billing-fields h3:first-child,
.pm-wc-page--checkout #customer_details h3:first-of-type {
	margin-top: 0;
}

.pm-wc-page--checkout #customer_details .col-1,
.pm-wc-page--checkout #customer_details .col-2 {
	float: none;
	width: 100%;
}

.pm-wc-page--checkout .woocommerce-billing-fields h3,
.pm-wc-page--checkout .woocommerce-shipping-fields h3,
.pm-wc-page--checkout .woocommerce-additional-fields h3,
.pm-wc-page--checkout #order_review_heading {
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: var(--pm-ink);
}

.pm-wc-page--checkout form .form-row {
	margin: 0 0 14px;
	padding: 0;
}

.pm-wc-page--checkout form .form-row label {
	font-size: 13px;
	font-weight: 600;
	color: var(--pm-ink);
}

/* Kupon i prijava toggle-ovi */
.pm-wc-page--checkout .woocommerce-form-coupon-toggle .woocommerce-info,
.pm-wc-page--checkout .woocommerce-form-login-toggle .woocommerce-info {
	background: var(--pm-surface);
	border: none;
	border-radius: 14px;
	color: var(--pm-ink);
}

/* Načini plaćanja */
.pm-wc-page--checkout #payment {
	background: transparent;
	border-radius: 0;
}

.pm-wc-page--checkout .wc_payment_methods {
	list-style: none;
	margin: 0 0 18px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.pm-wc-page--checkout .wc_payment_method {
	border: 1.5px solid var(--pm-border);
	border-radius: 14px;
	padding: 14px 16px;
	background: var(--pm-bg);
}

.pm-wc-page--checkout .wc_payment_method > label {
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
}

.pm-wc-page--checkout .wc_payment_method input[type="radio"] {
	accent-color: var(--pm-forest);
	margin-right: 8px;
}

.pm-wc-page--checkout .payment_box {
	font-size: 14px;
	color: var(--pm-muted-2);
	background: transparent !important;
	padding: 10px 0 0 !important;
	margin: 0 !important;
}

.pm-wc-page--checkout .payment_box::before {
	display: none !important;
}

.pm-wc-page--checkout #place_order {
	width: 100%;
	font-size: 16px !important;
	padding: 17px 28px !important;
}

.pm-wc-page--checkout .woocommerce-privacy-policy-text {
	font-size: 13px;
	color: var(--pm-muted-2);
}

/* ---- Porudžbina primljena + detalji porudžbine (thank you / view-order) ---- */

.woocommerce-order ul.woocommerce-order-overview {
	list-style: none;
	margin: 0 0 40px;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.woocommerce-order ul.woocommerce-order-overview li {
	border: 1px solid var(--pm-border);
	border-radius: 16px;
	padding: 14px 20px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--pm-sage);
	float: none;
	margin: 0;
	border-right: 1px solid var(--pm-border);
}

.woocommerce-order ul.woocommerce-order-overview li strong {
	display: block;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	color: var(--pm-ink);
	margin-top: 6px;
}

.woocommerce-order .woocommerce-notice--success {
	font-size: 18px;
	font-weight: 700;
	color: var(--pm-forest);
	background: var(--pm-surface);
	border: none;
	border-radius: 16px;
	padding: 18px 22px;
}

table.woocommerce-table--order-details {
	border: 1px solid var(--pm-border);
	border-radius: 20px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	width: 100%;
	margin-bottom: 32px;
}

table.woocommerce-table--order-details thead th {
	background: var(--pm-surface);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--pm-moss);
	padding: 14px 16px;
	text-align: left;
}

table.woocommerce-table--order-details td,
table.woocommerce-table--order-details tfoot th {
	border-top: 1px solid var(--pm-border);
	padding: 13px 16px;
	font-size: 14px;
	text-align: left;
}

table.woocommerce-table--order-details tfoot th {
	color: var(--pm-muted-2);
	font-weight: 600;
}

/* Adrese naplate/isporuke jedna pored druge — pokriva sve varijante Woo
   wrappera (thankyou, view-order, razlike među verzijama/pluginima). */
.woocommerce-customer-details .woocommerce-columns--addresses,
.woocommerce-customer-details .col2-set,
.pm-wc-page .col2-set.addresses,
.woocommerce-order .col2-set.addresses {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	width: 100%;
	align-items: start;
}

.woocommerce-customer-details .woocommerce-columns--addresses > *:not(.col-1):not(.col-2):not(.woocommerce-column),
.woocommerce-customer-details .col2-set > *:not(.col-1):not(.col-2):not(.woocommerce-column) {
	grid-column: 1 / -1;
}

.woocommerce-customer-details .col-1,
.woocommerce-customer-details .col-2,
.woocommerce-customer-details .woocommerce-column,
.pm-wc-page .col2-set.addresses > .col-1,
.pm-wc-page .col2-set.addresses > .col-2 {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	border: 1px solid var(--pm-border);
	border-radius: 20px;
	padding: 24px;
	margin: 0;
}

.woocommerce-customer-details h2,
.woocommerce-order-details__title {
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.01em;
}

.woocommerce-customer-details address {
	font-style: normal;
	font-size: 15px;
	line-height: 1.7;
	color: #4E534A;
	border: none;
	padding: 0;
}

/* Responsive */
@media (max-width: 1080px) {
	.pm-wc-page--cart .woocommerce,
	.pm-wc-page--checkout form.woocommerce-checkout {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.pm-wc-page--checkout #customer_details {
		grid-column: 1 / -1;
		grid-row: auto;
	}

	.pm-wc-page--checkout #order_review_heading,
	.pm-wc-page--checkout #order_review {
		grid-column: 1 / -1;
	}
}

/* Responsive */
@media (max-width: 760px) {
	.pm-account {
		padding: 24px 20px 64px;
	}

	.pm-account--auth #customer_login,
	.pm-account--dash .u-columns.col2-set,
	.woocommerce-customer-details .woocommerce-columns--addresses,
	.woocommerce-customer-details .col2-set,
	.pm-wc-page .col2-set.addresses {
		grid-template-columns: 1fr;
	}

	.pm-account--dash table.shop_table {
		display: block;
		overflow-x: auto;
	}

	.pm-wc-page {
		padding: 24px 20px 64px;
	}

	.pm-wc-page--cart table.shop_table {
		display: block;
		overflow-x: auto;
	}

	.pm-wc-page--cart .coupon {
		flex-wrap: wrap;
	}

	.woocommerce-order ul.woocommerce-order-overview {
		flex-direction: column;
	}
}
