/* ==========================================================================
   Pagina de produs
   ========================================================================== */

.dt-product { padding-bottom: var(--dt-9); background: var(--dt-bg); }

.dt-product__top {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
	gap: var(--dt-5);
	align-items: start;
	padding: var(--dt-2) 0 var(--dt-6);
}

/* --- Galerie --- */
.dt-product__gallery {
	background: var(--dt-surface);
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius-lg);
	padding: var(--dt-3);
}
.dt-product__gallery .woocommerce-product-gallery { position: relative; }
.dt-product__gallery .woocommerce-product-gallery__image img { border-radius: var(--dt-radius); }
.dt-product__gallery .flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: var(--dt-2) 0 0;
	padding: 0;
	list-style: none;
}
.dt-product__gallery .flex-control-thumbs li { width: 76px; }
.dt-product__gallery .flex-control-thumbs img {
	width: 100%;
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius-sm);
	cursor: pointer;
	opacity: 0.75;
	transition: opacity var(--dt-t), border-color var(--dt-t);
}
.dt-product__gallery .flex-control-thumbs img:hover,
.dt-product__gallery .flex-control-thumbs img.flex-active { opacity: 1; border-color: var(--dt-red); }
.dt-product__gallery .woocommerce-product-gallery__trigger {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 5;
	width: 40px;
	height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--dt-radius-sm);
	background: var(--dt-surface);
	border: 1px solid var(--dt-border);
	color: var(--dt-text-2);
	text-decoration: none;
}

/* --- Rezumat --- */
.dt-product__summary { display: grid; gap: var(--dt-2); align-content: start; }

.dt-product__brand { font-size: 13px; font-weight: 600; color: var(--dt-text-3); }

.dt-product__title-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.dt-product__title { margin: 0; }

.dt-product__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px var(--dt-2);
	font-size: 13px;
	color: var(--dt-text-2);
}
.dt-product__rating { display: inline-flex; align-items: center; gap: 6px; color: var(--dt-text-2); text-decoration: none; }
.dt-product__rating .star-rating { color: #E8A317; }

.dt-product__discontinued {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 12px 14px;
	border-radius: var(--dt-radius-sm);
	background: var(--dt-warning-soft);
	color: #6B3A0B;
	font-size: var(--dt-fs-sm);
	font-weight: 600;
}

.dt-product__excerpt { color: var(--dt-text-2); font-size: var(--dt-fs-lg); line-height: 1.55; }
.dt-product__excerpt p { margin: 0 0 10px; }
.dt-product__excerpt p:last-child { margin-bottom: 0; }

.dt-product__specs {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 10px;
	margin: var(--dt-1) 0;
	padding: 0;
	list-style: none;
}
.dt-product__specs li {
	display: grid;
	gap: 8px;
	padding: 14px 12px;
	background: var(--dt-surface);
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius);
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--dt-text-2);
	text-align: center;
	justify-items: center;
}
.dt-product__specs .dt-icon { color: var(--dt-text-2); }

/* --- Zona de cumpărare --- */
.dt-product__buy {
	display: grid;
	gap: var(--dt-2);
	padding: var(--dt-3);
	background: var(--dt-surface);
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius-lg);
}
.dt-product__lead { font-size: 13px; color: var(--dt-text-2); margin-top: -8px; }
.dt-product__price .dt-price { font-size: 1.875rem; }

.dt-product__buy form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0; }
.dt-product__buy form.cart .quantity { display: flex; }
.dt-product__buy form.cart .quantity input {
	width: 84px;
	height: var(--dt-btn-h);
	padding: 0 10px;
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius-sm);
	font-family: var(--dt-font);
	font-size: 15px;
	text-align: center;
	color: var(--dt-text);
}
.dt-product__buy form.cart button[type="submit"],
.dt-product__buy .single_add_to_cart_button {
	flex: 1;
	min-width: 200px;
	min-height: var(--dt-btn-h);
	padding: 0 26px;
	border: 0;
	border-radius: var(--dt-radius-sm);
	background: var(--dt-red);
	color: #fff;
	font-family: var(--dt-font);
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: background-color var(--dt-t);
}
.dt-product__buy .single_add_to_cart_button:hover { background: var(--dt-red-hover); }

.dt-product__actions { display: flex; flex-wrap: wrap; gap: var(--dt-3); }

.dt-product__trust {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: var(--dt-2) 0 0;
	border-top: 1px solid var(--dt-border);
	list-style: none;
}
.dt-product__trust li { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--dt-text-2); }
.dt-product__trust .dt-icon { color: var(--dt-text-3); flex: none; }
.dt-product__trust a { color: var(--dt-text-2); }

.dt-product__consult {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px var(--dt-2);
	padding: var(--dt-2);
	border-radius: var(--dt-radius);
	background: var(--dt-bg);
	font-size: var(--dt-fs-sm);
	font-weight: 600;
}
.dt-product__consult .dt-icon { color: var(--dt-text-2); flex: none; }
.dt-product__consult span { flex: 1; min-width: 160px; }

/* --- Navigația pe secțiuni --- */
.dt-product__nav {
	position: sticky;
	top: calc(var(--dt-header-h) + 44px);
	z-index: 20;
	margin-bottom: var(--dt-3);
	background: var(--dt-surface);
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius);
	overflow-x: auto;
	box-shadow: 0 6px 20px rgba(21, 23, 25, 0.06);
}
.dt-product__nav ul {
	display: flex;
	gap: var(--dt-4);
	margin: 0;
	padding: 0 var(--dt-3);
	list-style: none;
}
.dt-product__nav a {
	display: inline-flex;
	align-items: center;
	height: 52px;
	color: var(--dt-text-2);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	border-bottom: 2px solid transparent;
	transition: color var(--dt-t), border-color var(--dt-t);
}
.dt-product__nav a:hover { color: var(--dt-text); border-bottom-color: var(--dt-red); }

/* --- Secțiuni --- */
.dt-product__section { margin-bottom: var(--dt-3); scroll-margin-top: 160px; }
.dt-product__section-title { margin-bottom: var(--dt-3); }
.dt-product__panel { padding: var(--dt-4); scroll-margin-top: 160px; }
.dt-product__panel > .dt-h3 { margin-bottom: var(--dt-3); }
.dt-product__panel-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--dt-2); margin-bottom: var(--dt-3); }
.dt-product__panel-head .dt-h3 { margin: 0; }

.dt-product__two-col {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: var(--dt-3);
	align-items: start;
}
.dt-product__two-col--support { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); }

/* Avantaje */
.dt-highlight { padding: var(--dt-3); display: grid; gap: 8px; align-content: start; }
.dt-highlight__icon { color: var(--dt-text-2); }
.dt-highlight__title { margin: 0; font-size: 15px; font-weight: 700; line-height: 1.3; }
.dt-highlight__text { margin: 0; font-size: 13px; line-height: 1.5; color: var(--dt-text-2); }

/* Descriere */
.dt-product__description { padding: var(--dt-5); }
.dt-prose { max-width: 72ch; color: var(--dt-text-2); line-height: 1.7; }
.dt-prose h2, .dt-prose h3 { color: var(--dt-text); margin: 1.6em 0 0.5em; }
.dt-prose h2 { font-size: var(--dt-fs-h3); }
.dt-prose h3 { font-size: var(--dt-fs-h4); }
.dt-prose > :first-child { margin-top: 0; }
.dt-prose ul, .dt-prose ol { padding-left: 1.2em; }
.dt-prose li { margin-bottom: 0.4em; }
.dt-prose img { max-width: 100%; height: auto; border-radius: var(--dt-radius); }

/* Tabel de specificații */
.dt-spec-table { width: 100%; border-collapse: collapse; font-size: var(--dt-fs-sm); }
.dt-spec-table th,
.dt-spec-table td { padding: 12px 0; text-align: left; border-bottom: 1px solid var(--dt-border); vertical-align: top; }
.dt-spec-table th { font-weight: 500; color: var(--dt-text-2); width: 46%; }
.dt-spec-table td { font-weight: 600; color: var(--dt-text); }
.dt-spec-table tr:last-child th,
.dt-spec-table tr:last-child td { border-bottom: 0; }

/* Conținutul pachetului */
.dt-box-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: var(--dt-2);
	margin: 0 0 var(--dt-2);
	padding: 0;
	list-style: none;
}
.dt-box-list li {
	display: grid;
	gap: 8px;
	justify-items: center;
	padding: var(--dt-2);
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius);
	text-align: center;
}
.dt-box-list__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 4 / 3;
	border-radius: var(--dt-radius-sm);
	background: var(--dt-bg);
	color: var(--dt-text-3);
	overflow: hidden;
}
.dt-box-list__media img { width: 100%; height: 100%; object-fit: contain; }
.dt-box-list__name { font-size: 13px; font-weight: 600; line-height: 1.35; }
.dt-box-list__note { font-size: 12px; color: var(--dt-text-3); }

/* Fișiere */
.dt-files { display: grid; gap: 10px; margin: 0 0 var(--dt-2); padding: 0; list-style: none; }
.dt-files li {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius-sm);
}
.dt-files .dt-icon { color: var(--dt-text-3); flex: none; }
.dt-files__name { flex: 1; min-width: 0; font-size: 14px; font-weight: 600; }
.dt-files__name em { font-style: normal; font-weight: 500; color: var(--dt-text-3); margin-left: 6px; }

.dt-product__firmware { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 var(--dt-2); font-size: var(--dt-fs-sm); }
.dt-product__firmware .dt-icon { color: var(--dt-text-3); }

.dt-product__warranty {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: var(--dt-2);
	border-radius: var(--dt-radius);
	background: var(--dt-bg);
	font-size: var(--dt-fs-sm);
}
.dt-product__warranty .dt-icon { color: var(--dt-text-2); flex: none; margin-top: 2px; }
.dt-product__warranty strong { display: block; margin-bottom: 4px; }

/* Produse mici */
.dt-mini-products {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: var(--dt-2);
	margin: 0;
	padding: 0;
	list-style: none;
}
.dt-mini-product {
	display: grid;
	gap: 6px;
	padding: var(--dt-2);
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius);
	text-decoration: none;
	color: inherit;
	transition: border-color var(--dt-t);
}
.dt-mini-product:hover { border-color: var(--dt-border-strong); }
.dt-mini-product__media { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; background: var(--dt-bg); border-radius: var(--dt-radius-sm); overflow: hidden; }
.dt-mini-product__media img { width: 100%; height: 100%; object-fit: contain; }
.dt-mini-product__name { font-size: 13.5px; font-weight: 700; line-height: 1.3; color: var(--dt-text); }
.dt-mini-product__compat { font-size: 12px; color: var(--dt-text-3); line-height: 1.35; }
.dt-mini-product__price .dt-price { font-size: 1rem; }

/* Recenzii */
.dt-reviews__score { display: flex; align-items: center; gap: var(--dt-2); margin-bottom: var(--dt-2); }
.dt-reviews__avg { font-size: 2.25rem; font-weight: 800; letter-spacing: -0.02em; }
.dt-product__panel .star-rating { color: #E8A317; }
.dt-product__panel .comment-form { display: grid; gap: 12px; }
.dt-product__panel .comment-form input[type="text"],
.dt-product__panel .comment-form input[type="email"],
.dt-product__panel .comment-form textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--dt-border);
	border-radius: var(--dt-radius-sm);
	font-family: var(--dt-font);
	font-size: 15px;
}
.dt-product__panel .commentlist { margin: 0; padding: 0; list-style: none; }

.dt-product__cta { margin-top: var(--dt-3); }

/* --- Bara sticky de cumpărare --- */
.dt-buybar {
	position: fixed;
	inset-inline: 0;
	bottom: 0;
	z-index: 80;
	display: none;
	align-items: center;
	justify-content: space-between;
	gap: var(--dt-2);
	padding: 10px var(--dt-gutter);
	background: var(--dt-surface);
	border-top: 1px solid var(--dt-border);
	box-shadow: 0 -4px 20px rgba(21, 23, 25, 0.08);
}
.dt-buybar__info { min-width: 0; display: grid; gap: 2px; }
.dt-buybar__name {
	font-size: 13px;
	font-weight: 700;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.dt-buybar__meta { display: flex; align-items: center; gap: 10px; }
.dt-buybar__meta .dt-price { font-size: 1.0625rem; }
.dt-buybar__meta .dt-stock { font-size: 12px; }
.dt-buybar .dt-btn { flex: none; }

@media (max-width: 960px) {
	.dt-product__top { grid-template-columns: minmax(0, 1fr); }
	.dt-product__two-col,
	.dt-product__two-col--support { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 720px) {
	.dt-buybar { display: flex; }
	.dt-product { padding-bottom: 90px; }
	.dt-product__nav { top: 62px; }
}

/* Fișa completă a producătorului */
.dt-spec-more { margin-top: var(--dt-2); border-top: 1px solid var(--dt-border); }
.dt-spec-more > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 14px 0 0;
	font-size: 14px;
	font-weight: 700;
	color: var(--dt-red);
	cursor: pointer;
	list-style: none;
}
.dt-spec-more > summary::-webkit-details-marker { display: none; }
.dt-spec-more > summary .dt-icon { transition: transform var(--dt-t); }
.dt-spec-more[open] > summary .dt-icon { transform: rotate(180deg); }
.dt-spec-more .dt-spec-table { margin-top: 6px; }
