/* SGT UI minimal: menú principal + cards (basado en captura de referencia) */

/*
 * Tipografía del panel: Plus Jakarta Sans (cargada vía Sgt_UI_Menu).
 * Modales del SPA van al body; se aplica con body.sgt-ui-mainmenu-page.
 */
body.sgt-ui-mainmenu-page {
	--sgt-ui-font-sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

body.sgt-ui-mainmenu-page .sgt-ui-modal {
	font-family: var(--sgt-ui-font-sans);
}

/* Solo administradores (manage_options): tarjeta/enlace Usuarios */
.sgt-ui-mainmenu:not(.sgt-ui-mainmenu--admin) [data-admin-only="1"] {
	display: none !important;
}

.sgt-ui-mainmenu {
	font-family: var(--sgt-ui-font-sans, "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
	color: #1f2937;
	font-size: 14px;
	line-height: 1.35;
	/* Rompe contenedores Gutenberg `is-layout-constrained` */
	width: 100vw !important;
	max-width: 100vw !important;
	box-sizing: border-box !important;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	margin: 0 !important;
	padding: 0 !important;
}

.sgt-ui-mainmenu-topbar {
	background: linear-gradient(165deg, #1e2328 0%, #2c3338 55%, #252b30 100%);
	color: #e2e4e7;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	position: relative;
	z-index: 10;
}

.sgt-ui-mainmenu-topbar-inner {
	max-width: none;
	margin: 0;
	padding: 0.75rem 1.25rem;
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-direction: row !important;
	min-width: 0;
}

.sgt-ui-mainmenu-brand {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	min-width: 220px;
	flex-shrink: 0;
}

/* Logo completo (SGT en la imagen): no duplicar texto al lado. */
.sgt-ui-mainmenu-brand--full-logo .sgt-ui-mainmenu-brand-title,
.sgt-ui-mainmenu-brand--full-logo .sgt-ui-mainmenu-brand-sub {
	display: none !important;
}

.sgt-ui-mainmenu-brand--full-logo {
	min-width: 0;
}

.sgt-ui-mainmenu-brand--full-logo .sgt-ui-mainmenu-brand-logo {
	width: auto;
	height: 34px;
	max-width: min(220px, 55vw);
	object-fit: contain;
	background: transparent;
	box-shadow: none;
}

.sgt-ui-mainmenu-brand-logo {
	width: 30px;
	height: 30px;
	border-radius: 10px;
	object-fit: contain;
	display: inline-block;
	background: rgba(255, 255, 255, 0.06);
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.25);
}

.sgt-ui-mainmenu-brand-mark {
	width: 30px;
	height: 30px;
	border-radius: 10px;
	background: radial-gradient(circle at 30% 30%, #ff9f1a, #f97316 55%, #ea580c 100%);
	display: inline-block;
	box-shadow: 0 8px 18px rgba(249, 115, 22, 0.25);
}

.sgt-ui-mainmenu-brand-title {
	font-weight: 800;
	font-size: 1.05rem;
	letter-spacing: -0.02em;
}

.sgt-ui-mainmenu-brand-sub {
	display: block;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: rgba(167, 170, 173, 0.9);
	margin-top: 0.1rem;
}

.sgt-ui-mainmenu-nav {
	display: flex;
	gap: 0.6rem;
	flex: 1 1 auto;
	align-items: center;
	flex-wrap: nowrap !important;
	flex-direction: row !important;
	/* Evita que la suma de enlaces (nowrap) empuje gear/campana/usuario fuera del viewport:
	   body.sgt-ui-mainmenu-page tiene overflow:hidden y el bloque derecho queda recortado. */
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

.sgt-ui-mainmenu-link {
	text-decoration: none;
	color: #ea580c;
	font-weight: 700;
	padding: 0.4rem 0.55rem;
	border-radius: 8px;
	background: transparent;
	transition: background 0.15s ease, color 0.15s ease;
	font-size: 0.95rem;
	white-space: nowrap;
}

.sgt-ui-mainmenu-link:hover,
.sgt-ui-mainmenu-link.is-active {
	background: rgba(234, 88, 12, 0.16);
	color: #c2410c;
}

.sgt-ui-mainmenu-link--beta {
	position: relative;
}

.sgt-ui-mainmenu-link--beta span {
	font-weight: 800;
	font-size: 0.75rem;
	color: rgba(234, 88, 12, 0.8);
}

.sgt-ui-mainmenu-right {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	flex: 0 0 auto;
	flex-shrink: 0;
}

.sgt-ui-mainmenu-hamb {
	display: none;
}

.sgt-ui-mainmenu-icon {
	width: 38px;
	height: 38px;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: transparent;
	color: #d1d5db;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	position: relative;
	flex-shrink: 0;
	-webkit-appearance: none;
	appearance: none;
}

/* Algunos themes ocultan SVG dentro de botones; forzar visibilidad en el header del panel. */
.sgt-ui-mainmenu .sgt-ui-mainmenu-icon svg,
.sgt-ui-mainmenu .sgt-ui-mainmenu-user-icon svg,
.sgt-ui-mainmenu .sgt-ui-mainmenu-user-caret svg {
	display: block !important;
	width: 18px;
	height: 18px;
	visibility: visible !important;
	opacity: 1 !important;
	overflow: visible !important;
	flex-shrink: 0;
}

/* Gutenberg / themes: reset de fill en path hace los íconos “invisibles” (currentColor sin pintar). */
.sgt-ui-mainmenu-topbar .sgt-ui-mainmenu-icon svg path,
.sgt-ui-mainmenu-topbar .sgt-ui-mainmenu-hamb svg path,
.sgt-ui-mainmenu-topbar .sgt-ui-mainmenu-user-icon svg path {
	fill: currentColor !important;
}

.sgt-ui-notifbadge {
	position: absolute;
	top: -6px;
	right: -6px;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	background: #ef4444;
	color: #fff;
	font-weight: 900;
	font-size: 11px;
	line-height: 18px;
	text-align: center;
	border: 2px solid #1e2328;
	box-sizing: border-box;
}

.sgt-ui-notifdd {
	position: absolute;
	right: 1.25rem;
	top: calc(100% + 10px);
	width: min(420px, 92vw);
	background: #ffffff;
	border: 1px solid rgba(0,0,0,0.12);
	border-radius: 14px;
	box-shadow: 0 20px 45px rgba(0,0,0,0.18);
	z-index: 99999;
	overflow: hidden;
}

.sgt-ui-notifdd__title {
	padding: 0.75rem 0.85rem;
	font-weight: 900;
	color: #111827;
	background: #f9fafb;
	border-bottom: 1px solid rgba(0,0,0,0.06);
}

.sgt-ui-notifdd__empty {
	padding: 0.85rem;
	color: #6b7280;
	font-weight: 800;
}

.sgt-ui-notifdd__list {
	max-height: 360px;
	overflow: auto;
}

.sgt-ui-notifdd__item {
	width: 100%;
	border: 0;
	background: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.7rem 0.85rem;
	border-bottom: 1px solid rgba(0,0,0,0.06);
	text-align: left;
}

.sgt-ui-notifdd__item:hover {
	background: #f9fafb;
}

.sgt-ui-notifdd__code {
	font-weight: 900;
	color: #111827;
}

.sgt-ui-notifdd__sub {
	color: #6b7280;
	font-weight: 700;
	font-size: 0.88rem;
	margin-top: 2px;
}

.sgt-ui-notifdd__estado {
	font-weight: 900;
	color: #111827;
	font-size: 0.85rem;
	opacity: 0.8;
	white-space: nowrap;
}

.sgt-ui-notifdd__section.is-late .sgt-ui-notifdd__sectitle {
	color: #b91c1c;
}

.sgt-ui-notifdd__sectitle {
	padding: 0.6rem 0.85rem;
	font-weight: 900;
	color: #111827;
	background: #fff;
	border-bottom: 1px solid rgba(0,0,0,0.06);
}

.sgt-ui-notifdd__section.is-late {
	background: rgba(239, 68, 68, 0.06);
}

.sgt-ui-odetail__actionsmsg {
	margin-top: 0.65rem;
	padding: 0.55rem 0.65rem;
	border-radius: 10px;
	font-weight: 800;
	font-size: 0.9rem;
	border: 1px solid rgba(0,0,0,0.10);
	background: #f9fafb;
	color: #374151;
}

.sgt-ui-odetail__actionsmsg.is-ok {
	background: rgba(34, 197, 94, 0.10);
	border-color: rgba(34, 197, 94, 0.25);
	color: #14532d;
}

.sgt-ui-odetail__actionsmsg.is-warn {
	background: rgba(234, 179, 8, 0.10);
	border-color: rgba(234, 179, 8, 0.25);
	color: #713f12;
}

.sgt-ui-odetail__actionsmsg.is-err {
	background: rgba(239, 68, 68, 0.10);
	border-color: rgba(239, 68, 68, 0.25);
	color: #7f1d1d;
}

.sgt-ui-odetail .sgt-ui-sena-fieldrow {
	display: flex;
	gap: 0.5rem;
	align-items: center;
}

.sgt-ui-odetail .sgt-ui-sena-fieldrow .sgt-ui-input {
	flex: 1;
	min-width: 0;
}

.sgt-ui-odetail .sgt-ui-imputar-sena-btn {
	flex: 0 0 auto;
	white-space: nowrap;
	font-size: 0.85rem;
}

.sgt-ui-mainmenu-user-wrap {
	position: relative;
	flex: 0 0 auto;
	z-index: 20;
}

.sgt-ui-mainmenu-user {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.35rem 0.65rem;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.06);
	cursor: pointer;
	font: inherit;
	color: inherit;
	margin: 0;
	text-align: left;
	-webkit-appearance: none;
	appearance: none;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.sgt-ui-mainmenu-user:hover,
.sgt-ui-mainmenu-user-wrap.is-open .sgt-ui-mainmenu-user {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.22);
}

.sgt-ui-mainmenu-user-name {
	font-weight: 700;
	font-size: 0.92rem;
	color: #e2e4e7;
	white-space: nowrap;
	max-width: 14rem;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sgt-ui-mainmenu-user-caret {
	display: flex;
	align-items: center;
	color: rgba(226, 228, 231, 0.75);
	line-height: 0;
}

.sgt-ui-mainmenu-user-caret svg {
	display: block;
}

.sgt-ui-mainmenu-user-wrap.is-open .sgt-ui-mainmenu-user-caret svg {
	transform: rotate(180deg);
}

.sgt-ui-mainmenu-user-dropdown {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	min-width: 208px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 12px 40px rgba(15, 23, 42, 0.12), 0 4px 12px rgba(15, 23, 42, 0.08);
	border: 1px solid rgba(15, 23, 42, 0.08);
	padding: 0.4rem 0;
	display: none;
}

.sgt-ui-mainmenu-user-wrap.is-open .sgt-ui-mainmenu-user-dropdown {
	display: block;
}

.sgt-ui-mainmenu-user-dropdown__item {
	display: block;
	padding: 0.62rem 1.05rem;
	color: #374151;
	text-decoration: none;
	font-weight: 600;
	font-size: 0.92rem;
	line-height: 1.35;
	transition: background 0.12s ease;
}

.sgt-ui-mainmenu-user-dropdown__item:hover,
.sgt-ui-mainmenu-user-dropdown__item:focus {
	background: #f3f4f6;
	color: #111827;
	outline: none;
}

.sgt-ui-mainmenu-banner {
	background: linear-gradient(90deg, #f97316, #fb923c);
	color: #fff;
	padding: 0.85rem 1.25rem;
	font-size: 0.95rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}

.sgt-ui-mainmenu-banner-text {
	margin: 0;
	line-height: 1.35;
}

.sgt-ui-mainmenu-banner-cta {
	color: #fff;
	font-weight: 800;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.25);
	padding: 0.55rem 0.9rem;
	border-radius: 10px;
	white-space: nowrap;
}

.sgt-ui-mainmenu-content {
	max-width: none !important;
	margin: 0 !important;
	padding: 1.25rem 1.25rem 1.5rem;
}

/* Si el theme aplica max-width a hijos directos (is-layout-constrained), evitar el clamp */
.is-layout-constrained > .sgt-ui-mainmenu,
.wp-block-post-content.is-layout-constrained > .sgt-ui-mainmenu {
	max-width: 100vw !important;
	width: 100vw !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	transform: translateX(-50%) !important;
}

.sgt-ui-mainmenu-hero-title {
	margin: 0 0 0.25rem 0;
	font-size: 1.55rem;
	font-weight: 900;
	color: #111827;
}

.sgt-ui-mainmenu-hero-sub {
	margin: 0 0 1rem 0;
	color: rgba(17, 24, 39, 0.55);
}

.sgt-ui-mainmenu-cards {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.15rem;
}

.sgt-ui-mainmenu-card a {
	display: block;
	text-decoration: none;
	color: #fff;
	height: 150px;
	border-radius: 14px;
	padding: 1.1rem 1.1rem;
	position: relative;
	overflow: hidden;
}

.sgt-ui-mainmenu-card-title {
	display: block;
	font-size: 1.25rem;
	font-weight: 900;
	margin-bottom: 0.25rem;
}

.sgt-ui-mainmenu-card-desc {
	display: block;
	font-size: 0.88rem;
	opacity: 0.9;
	line-height: 1.25;
	max-width: 24ch;
}

.sgt-ui-mainmenu-card-icon {
	position: absolute;
	right: 1rem;
	top: 1rem;
	opacity: 0.95;
	color: rgba(255, 255, 255, 0.95);
}

/* Colores (aprox a la captura) */
.sgt-ui-mainmenu-card--blue a { background: linear-gradient(135deg, #2563eb, #3b82f6); }
.sgt-ui-mainmenu-card--purple a { background: linear-gradient(135deg, #7c3aed, #9333ea); }
.sgt-ui-mainmenu-card--orange a { background: linear-gradient(135deg, #f97316, #fb7185); }
.sgt-ui-mainmenu-card--green a { background: linear-gradient(135deg, #16a34a, #22c55e); }
.sgt-ui-mainmenu-card--teal a { background: linear-gradient(135deg, #14b8a6, #2dd4bf); }
.sgt-ui-mainmenu-card--slate a { background: linear-gradient(135deg, #334155, #475569); }

/* Hub Finanzas: dos tarjetas */
.sgt-ui-view-finanzas .sgt-ui-finanzas-cards {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 52rem;
}

@media (max-width: 640px) {
	.sgt-ui-view-finanzas .sgt-ui-finanzas-cards {
		grid-template-columns: 1fr;
	}
}

.sgt-ui-mainmenu-card.sgt-ui-mainmenu-card--disabled > span.sgt-ui-mainmenu-card-block {
	display: block;
	color: #fff;
	height: 150px;
	border-radius: 14px;
	padding: 1.1rem 1.1rem;
	position: relative;
	overflow: hidden;
	cursor: not-allowed;
	opacity: 0.72;
	background: linear-gradient(135deg, #64748b, #94a3b8) !important;
}

/* Deudas / cuenta corriente (misma línea visual que tablas Órdenes/Clientes) */
.sgt-ui-cc-deudores-table tbody tr:nth-child(even) {
	background: #fafafa;
}

.sgt-ui-cc-deudores-table tbody tr.sgt-ui-cc-deudorow {
	cursor: pointer;
}

.sgt-ui-cc-deudores-table tbody tr.sgt-ui-cc-deudorow:hover {
	background: rgba(234, 88, 12, 0.07);
}

.sgt-ui-cc-saldo-cell {
	font-weight: 900;
	white-space: nowrap;
}

#sgt-ui-cc-count-line {
	white-space: normal;
	line-height: 1.35;
}

.sgt-ui-cc-deudores-lead {
	margin: -0.1rem 0 0.55rem;
	font-size: 0.86rem;
	line-height: 1.45;
	max-width: 42rem;
}

.sgt-ui-cc-deudores-chips {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.55rem;
	margin: -0.15rem 0 0.75rem;
}

.sgt-ui-cc-deudores-chip {
	display: inline-flex;
	align-items: center;
	padding: 0.28rem 0.55rem;
	font-size: 0.78rem;
	font-weight: 700;
	color: #9a3412;
	background: rgba(255, 247, 237, 0.95);
	border: 1px solid rgba(234, 88, 12, 0.28);
	border-radius: 999px;
}

.sgt-ui-cc-deudores-chip--btn {
	cursor: pointer;
	font: inherit;
	font-weight: 800;
	color: #c2410c;
	background: #fff;
	border-color: rgba(234, 88, 12, 0.4);
}

.sgt-ui-cc-deudores-chip--btn:hover {
	background: rgba(254, 215, 170, 0.35);
}

.sgt-ui-linkbtn {
	border: none;
	background: none;
	padding: 0;
	margin: 0;
	font: inherit;
	font-weight: 800;
	font-size: 0.86rem;
	color: #2563eb;
	cursor: pointer;
	text-decoration: none;
}

.sgt-ui-linkbtn:hover {
	text-decoration: underline;
	color: #1d4ed8;
}

.sgt-ui-modal__panel--cc {
	max-width: min(96vw, 920px);
	width: min(92vw, 920px);
}

.sgt-ui-modal-cc__tablewrap {
	max-height: min(52vh, 440px);
	overflow: auto;
	margin-top: 0.65rem;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
}

.sgt-ui-cc-modal-footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 0.85rem;
	padding-top: 0.75rem;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.sgt-ui-cc-saldo-line {
	font-weight: 900;
	font-size: 1.02rem;
	color: #111827;
}

#sgt-ui-cc-saldo-val {
	color: #b91c1c;
	font-weight: 900;
}

.sgt-ui-cc-modal-actions {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.sgt-ui-mainmenu-view {
	width: 100%;
}

/* PC / tablet ancha: lienzo gris + tarjeta blanca centrada (misma idea que Gestión de productos) */
@media (min-width: 900px) {
	.sgt-ui-mainmenu-content {
		background: #e8ecf1;
	}

	.sgt-ui-mainmenu-view {
		max-width: min(1180px, 100%);
		margin-left: auto;
		margin-right: auto;
		background: #ffffff;
		border-radius: 14px;
		box-shadow:
			0 2px 16px rgba(15, 23, 42, 0.07),
			0 1px 4px rgba(15, 23, 42, 0.04);
		padding: 1.25rem 1.35rem 1.65rem;
		box-sizing: border-box;
	}

	.sgt-ui-mainmenu-home {
		max-width: min(1180px, 100%);
		margin-left: auto;
		margin-right: auto;
		background: #ffffff;
		border-radius: 14px;
		box-shadow:
			0 2px 16px rgba(15, 23, 42, 0.07),
			0 1px 4px rgba(15, 23, 42, 0.04);
		padding: 1.25rem 1.35rem 1.65rem;
		box-sizing: border-box;
	}
}

/* Móvil: ancho usable y sin recortes por flex/min-width */
@media (max-width: 899px) {
	.sgt-ui-mainmenu-content {
		padding-left: max(0.65rem, env(safe-area-inset-left, 0px));
		padding-right: max(0.65rem, env(safe-area-inset-right, 0px));
	}

	.sgt-ui-mainmenu-view {
		min-width: 0;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.sgt-ui-mainmenu-home {
		min-width: 0;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

.sgt-ui-view-orders__topbar {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.75rem;
}

.sgt-ui-view-backlink {
	text-decoration: none;
	color: #ea580c;
	font-weight: 700;
}

.sgt-ui-view-orders__title {
	margin: 0;
	font-size: 1.4rem;
	font-weight: 900;
	color: #111827;
}

.sgt-ui-view-orders__topbar--stack {
	align-items: flex-start;
	flex-wrap: wrap;
}

.sgt-ui-view-orders__intro {
	min-width: 0;
	flex: 1 1 auto;
}

.sgt-ui-view-orders__subtitle {
	margin: 0.35rem 0 0;
	font-size: 0.88rem;
	line-height: 1.45;
	max-width: 42rem;
}

.sgt-ui-breadcrumbs {
	font-size: 0.78rem;
	font-weight: 800;
	color: rgba(17,24,39,0.55);
	margin: 0 0 0.55rem;
}

.sgt-ui-breadcrumbs a {
	color: rgba(234, 88, 12, 0.95);
	text-decoration: none;
}

.sgt-ui-breadcrumbs a:hover {
	text-decoration: underline;
}

.sgt-ui-bcsep {
	display: inline-block;
	margin: 0 0.35rem;
	color: rgba(17,24,39,0.35);
}

.sgt-ui-view-loading,
.sgt-ui-view-empty,
.sgt-ui-view-error {
	padding: 1rem;
	background: #ffffff;
	border: 1px solid rgba(0,0,0,0.08);
	border-radius: 12px;
	color: #374151;
}

.sgt-ui-view-orders__tablewrap {
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 12px;
	overflow: auto;
}

.sgt-ui-view-orders__tablewrap.is-loading,
.sgt-ui-orders-cards.is-loading,
.sgt-ui-clients-cards.is-loading {
	opacity: 0.6;
	pointer-events: none;
}

/* Clientes: cards solo en móvil (mismo patrón que órdenes). */
.sgt-ui-clients-cards {
	display: none;
}

.sgt-ui-badge--muted {
	background: #f3f4f6;
	color: #4b5563;
	border-color: rgba(0, 0, 0, 0.1);
	font-size: 0.8rem;
}

.sgt-ui-clientcard__footline {
	min-width: 0;
	flex: 1 1 auto;
	font-size: 0.88rem;
	font-weight: 700;
	color: #4b5563;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding-right: 0.35rem;
}

.sgt-ui-clientcard .sgt-ui-ordercard__foot {
	align-items: center;
}

/* Tarjeta cliente (móvil): "N órdenes" / "Sin órdenes" abre Órdenes filtrado por DNI */
button.sgt-ui-clientcard-ordenes-btn.sgt-ui-badge {
	margin: 0;
	font: inherit;
	font-weight: 900;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	text-align: center;
	line-height: inherit;
}

button.sgt-ui-clientcard-ordenes-btn.sgt-ui-badge:disabled {
	cursor: not-allowed;
	opacity: 0.55;
}

.sgt-ui-actions {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
}

.sgt-ui-iconbtn {
	width: 32px;
	height: 32px;
	border-radius: 10px;
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	color: #111827;
	cursor: pointer;
	line-height: 1;
	font-size: 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	/* Emoji en botones: fallback por si quedan caracteres sueltos (p. ej. ✎) */
	font-family: var(--sgt-ui-font-sans, "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif), "Segoe UI Emoji", "Segoe UI Symbol", "Apple Color Emoji", "Noto Color Emoji", sans-serif;
}

.sgt-ui-iconbtn__svg {
	display: block;
	width: 1.1em;
	height: 1.1em;
	flex-shrink: 0;
	pointer-events: none;
}

.sgt-ui-iconbtn:hover {
	background: #f9fafb;
}

.sgt-ui-orders-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.75rem;
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 12px;
	margin-bottom: 0.75rem;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

.sgt-ui-orders-toolbar__left {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	flex: 1 1 auto;
	min-width: 0;
}

.sgt-ui-orders-search {
	flex: 1 1 520px;
	min-width: 220px;
}

.sgt-ui-orders-search__input {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid rgba(0,0,0,0.14);
	border-radius: 10px;
	padding: 0.65rem 0.85rem;
	font-size: 0.95rem;
	outline: none;
}

.sgt-ui-orders-search__input:focus {
	border-color: rgba(234, 88, 12, 0.65);
	box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.15);
}

.sgt-ui-orders-tecnico-wrap {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	flex: 0 0 auto;
	min-width: 0;
}
.sgt-ui-orders-tecnico-lbl {
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #94a3b8;
	line-height: 1.2;
}
.sgt-ui-orders-tecnico-select {
	min-width: 10.5rem;
	max-width: 14rem;
	padding: 0.5rem 0.65rem;
	font-size: 0.9rem;
	border-radius: 10px;
}
.sgt-ui-orders-tecnico-select:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}
.sgt-ui-orders-count {
	white-space: nowrap;
	color: #6b7280;
	font-weight: 700;
	font-size: 0.95rem;
}

.sgt-ui-orders-toolbar__right {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex: 0 0 auto;
}

/* Órdenes: panel de alertas (semáforo) */
.sgt-ui-orders-alertpanel {
	margin: 0 0 0.85rem;
}

.sgt-ui-orders-alertpanel__title {
	margin: 0 0 0.55rem;
	font-size: 1.05rem;
	font-weight: 800;
	color: #111827;
	letter-spacing: -0.02em;
}

.sgt-ui-orders-alertpanel__cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.65rem;
}

@media (max-width: 900px) {
	.sgt-ui-orders-alertpanel__cards {
		grid-template-columns: 1fr;
	}
}

.sgt-ui-alertcard {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	min-height: 7.5rem;
	padding: 0.85rem 0.85rem 0.75rem 0.75rem;
	border: none;
	border-radius: 14px;
	text-align: left;
	font: inherit;
	color: #0f172a;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
	cursor: pointer;
	transition: transform 0.12s, box-shadow 0.15s;
}

button.sgt-ui-alertcard:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.16);
}

.sgt-ui-alertcard--red {
	background: linear-gradient(145deg, #ef4444 0%, #dc2626 55%, #b91c1c 100%);
	color: #fff;
}

.sgt-ui-alertcard--amber {
	background: linear-gradient(145deg, #facc15 0%, #eab308 45%, #ca8a04 100%);
	color: #422006;
}

.sgt-ui-alertcard--green {
	background: linear-gradient(145deg, #4ade80 0%, #22c55e 50%, #15803d 100%);
	color: #fff;
	cursor: default;
	box-shadow: 0 4px 14px rgba(22, 163, 74, 0.35);
}

.sgt-ui-alertcard.is-on {
	outline: 3px solid rgba(255, 255, 255, 0.95);
	outline-offset: 2px;
}

.sgt-ui-alertcard--amber.is-on {
	outline-color: rgba(66, 32, 6, 0.55);
}

.sgt-ui-alertcard__icowrap {
	flex-shrink: 0;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.22);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.sgt-ui-alertcard--amber .sgt-ui-alertcard__icowrap {
	background: rgba(255, 255, 255, 0.45);
}

.sgt-ui-alertcard__ico {
	font-size: 1.1rem;
	font-weight: 900;
	line-height: 1;
}

.sgt-ui-alertcard__ico--warn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.35rem;
	height: 1.35rem;
	border-radius: 999px;
	border: 2px solid rgba(255, 255, 255, 0.95);
	font-size: 0.95rem;
}

.sgt-ui-alertcard__ico--clock {
	font-size: 1.15rem;
}

.sgt-ui-alertcard__ico--money {
	font-size: 1.2rem;
	font-weight: 800;
}

.sgt-ui-alertcard__body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

.sgt-ui-alertcard__line {
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.25;
}

.sgt-ui-alertcard__num {
	font-size: 1.65rem;
	font-weight: 900;
	margin-right: 0.15rem;
	vertical-align: -0.05em;
}

.sgt-ui-alertcard--amber .sgt-ui-alertcard__num {
	font-size: 1.75rem;
}

.sgt-ui-alertcard__hint {
	margin: 0.15rem 0 0;
	font-size: 0.78rem;
	font-weight: 600;
	opacity: 0.92;
	line-height: 1.3;
}

.sgt-ui-alertcard--amber .sgt-ui-alertcard__hint {
	color: #713f12;
	opacity: 1;
}

.sgt-ui-alertcard__hint--dim {
	opacity: 0.85;
	font-weight: 500;
}

.sgt-ui-alertcard__pill {
	align-self: flex-start;
	margin-top: 0.35rem;
	padding: 0.12rem 0.45rem;
	border-radius: 999px;
	font-size: 0.62rem;
	font-weight: 900;
	letter-spacing: 0.06em;
	background: #fef08a;
	color: #1c1917;
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
}

.sgt-ui-alertcard__cta {
	margin-top: 0.45rem;
	align-self: flex-start;
	padding: 0.38rem 0.75rem;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.22);
	color: #fff;
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
	font-family: inherit;
	backdrop-filter: blur(4px);
}

.sgt-ui-alertcard__cta:hover {
	background: rgba(255, 255, 255, 0.35);
}

.sgt-ui-alertcard__money {
	margin-top: auto;
	padding-top: 0.35rem;
	font-size: 1.35rem;
	font-weight: 900;
	letter-spacing: 0.02em;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
}

.sgt-ui-orders-alertpanel__foot {
	margin-top: 0.5rem;
	display: flex;
	justify-content: flex-end;
}

.sgt-ui-orders-alertpanel__clear {
	font-size: 0.85rem;
}

/* Productos: Punto de venta (layout tipo captura) */
.sgt-ui-view-productos .sgt-ui-prods-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

.sgt-ui-prods-head__ratewrap {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.12rem;
	text-align: right;
	max-width: min(100%, 22rem);
}

.sgt-ui-prods-rate-sub {
	font-size: 0.78rem;
	line-height: 1.35;
}

.sgt-ui-prods-dolar-cfg {
	font-size: 0.8rem;
	margin-top: 0.2rem;
	align-self: flex-end;
}

.sgt-ui-prods-rate {
	color: #6b7280;
	font-weight: 800;
	font-size: 0.95rem;
}

.sgt-ui-modal__panel--dolar {
	width: min(920px, 96vw);
	max-height: min(92vh, 900px);
}

.sgt-ui-dolar-modal__body {
	padding: 0 0.15rem 0.35rem;
}

.sgt-ui-dolar-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(228px, 1fr));
	gap: 0.65rem;
}

.sgt-ui-dolar-card {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 12px;
	padding: 0.65rem;
	background: #fafafa;
}

.sgt-ui-dolar-card--active {
	border-color: #f97316;
	box-shadow: 0 0 0 1px rgba(249, 115, 22, 0.22);
}

.sgt-ui-dolar-card__head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0.35rem;
	margin-bottom: 0.5rem;
	font-weight: 800;
	font-size: 0.88rem;
	line-height: 1.25;
}

.sgt-ui-dolar-badge {
	font-size: 0.62rem;
	font-weight: 800;
	padding: 0.12rem 0.38rem;
	border-radius: 6px;
	white-space: nowrap;
}

.sgt-ui-dolar-badge--ok {
	background: #22c55e;
	color: #fff;
}

.sgt-ui-dolar-card__prices {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.35rem;
}

.sgt-ui-dolar-pick {
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 10px;
	padding: 0.42rem 0.35rem;
	background: #fff;
	cursor: pointer;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	font: inherit;
	width: 100%;
	box-sizing: border-box;
}

.sgt-ui-dolar-pick:hover {
	border-color: #f97316;
}

.sgt-ui-dolar-pick.is-picked {
	border-color: #22c55e;
	box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.3);
}

.sgt-ui-dolar-pick__lbl {
	font-size: 0.7rem;
	color: #6b7280;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.sgt-ui-dolar-pick__val {
	font-weight: 900;
	font-size: 0.98rem;
}

.sgt-ui-dolar-pick__use {
	font-size: 0.62rem;
	font-weight: 800;
	color: #15803d;
}

.sgt-ui-dolar-modal__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: flex-end;
	margin-top: 0.85rem;
}

.sgt-ui-prods-tabs {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
	border-bottom: 1px solid rgba(0,0,0,0.08);
	padding-bottom: 0.55rem;
	margin-bottom: 0.75rem;
}

.sgt-ui-prods-tab {
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	color: #374151;
	font-weight: 900;
	border-radius: 999px;
	padding: 0.45rem 0.75rem;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.sgt-ui-prods-tab.is-active {
	background: rgba(234, 88, 12, 0.12);
	border-color: rgba(234, 88, 12, 0.35);
	color: #7c2d12;
}

.sgt-ui-pos {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	gap: 1rem;
	align-items: start;
}

.sgt-ui-pos__left,
.sgt-ui-pos__right {
	min-width: 0;
}

.sgt-ui-pos-list {
	background: #fff;
	border: 1px solid rgba(0,0,0,0.08);
	border-radius: 12px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05);
	padding: 0.35rem;
	max-height: 560px;
	overflow: auto;
}

.sgt-ui-pos-items {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.sgt-ui-pos-item {
	width: 100%;
	text-align: left;
	border: 1px solid rgba(0,0,0,0.06);
	background: #fff;
	border-radius: 12px;
	padding: 0.6rem 0.7rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	cursor: pointer;
}

.sgt-ui-pos-item:hover {
	border-color: rgba(234, 88, 12, 0.35);
	box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.10);
}

.sgt-ui-pos-item__code {
	font-size: 0.78rem;
	color: #6b7280;
	font-weight: 800;
	margin-bottom: 0.1rem;
}

.sgt-ui-pos-item__name {
	font-weight: 900;
	color: #111827;
}

.sgt-ui-pos-item__price {
	font-weight: 900;
	color: #1d4ed8;
	white-space: nowrap;
}

.sgt-ui-pos-item__stock {
	font-size: 0.8rem;
	color: #6b7280;
	font-weight: 800;
	text-align: right;
}

.sgt-ui-pos-cart {
	background: #fff;
	border: 1px solid rgba(0,0,0,0.08);
	border-radius: 12px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05);
	padding: 0.8rem 0.9rem;
	min-height: 320px;
	display: flex;
	flex-direction: column;
}

.sgt-ui-pos-cart__title {
	font-weight: 900;
	color: #111827;
	margin-bottom: 0.6rem;
}

.sgt-ui-pos-cart__empty {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 1.25rem 0;
}

.sgt-ui-pos-cart__emptyico {
	font-size: 2.2rem;
	opacity: 0.55;
}

.sgt-ui-pos-cart__items {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	flex: 1 1 auto;
}

.sgt-ui-pos-cartrow {
	display: grid;
	grid-template-columns: 1fr auto auto;
	gap: 0.6rem;
	align-items: center;
	border: 1px solid rgba(0,0,0,0.06);
	border-radius: 12px;
	padding: 0.55rem 0.6rem;
}

.sgt-ui-pos-cartrow__name {
	font-weight: 900;
	color: #111827;
	min-width: 0;
}

.sgt-ui-pos-cartrow__controls {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.sgt-ui-pos-qtybtn {
	width: 32px;
	height: 32px;
	border-radius: 10px;
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	font-weight: 900;
	cursor: pointer;
}

.sgt-ui-pos-qty {
	min-width: 26px;
	text-align: center;
	font-weight: 900;
}

.sgt-ui-pos-cartrow__price {
	font-weight: 900;
	white-space: nowrap;
}

.sgt-ui-pos-cart__foot {
	margin-top: 0.75rem;
	border-top: 1px solid rgba(0,0,0,0.06);
	padding-top: 0.75rem;
}

.sgt-ui-pos-cart__total {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0.65rem;
	font-weight: 900;
}

.sgt-ui-pos-actions {
	justify-content: space-between;
}

@media (max-width: 960px) {
	.sgt-ui-pos {
		grid-template-columns: 1fr;
	}
	.sgt-ui-pos-list {
		max-height: 420px;
	}
}

.sgt-ui-prods-catalog .sgt-ui-orders-toolbar__left {
	flex-wrap: wrap;
}

.sgt-ui-prods-estado {
	font-size: 0.88rem;
	font-weight: 700;
}

.sgt-ui-prods-estado--on {
	color: #14854a;
}

.sgt-ui-prods-estado--off {
	color: #6b7280;
}

.sgt-ui-prods-cathead {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
	flex-wrap: wrap;
}

.sgt-ui-prods-cathead__title {
	font-size: 1.15rem;
	font-weight: 900;
	color: #111827;
}

.sgt-ui-prods-cathead__sub {
	margin-top: 0.35rem;
	font-size: 0.92rem;
	line-height: 1.45;
	max-width: 40rem;
}

.sgt-ui-prods-catlist {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 12px;
	overflow: hidden;
	background: #fff;
}

.sgt-ui-prods-catrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.85rem 1rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.sgt-ui-prods-catrow:last-child {
	border-bottom: none;
}

.sgt-ui-prods-catrow__main {
	flex: 1;
	min-width: 0;
}

.sgt-ui-prods-catrow__name {
	font-weight: 800;
	font-size: 1rem;
	color: #111827;
}

.sgt-ui-prods-catrow__desc {
	font-size: 0.9rem;
	color: #6b7280;
	margin-top: 0.2rem;
	line-height: 1.4;
}

.sgt-ui-prods-catrow__tipo {
	font-size: 0.82rem;
	margin-top: 0.25rem;
}

.sgt-ui-prods-catrow__side {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	flex-shrink: 0;
}

.sgt-ui-compra-total {
	font-size: 1.15rem;
	font-weight: 900;
	color: #111827;
	padding: 0.65rem 0;
}

.sgt-ui-compra-lineas {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	margin: 0.75rem 0 0.9rem;
}

.sgt-ui-compra-line {
	display: grid;
	grid-template-columns: 1fr 110px 140px 110px 40px;
	gap: 0.65rem;
	align-items: end;
	padding: 0.75rem;
	border: 1px solid rgba(0,0,0,0.08);
	border-radius: 12px;
	background: #fff;
}

.sgt-ui-compra-line__lbl {
	display: block;
	font-size: 0.85rem;
	font-weight: 800;
	color: #374151;
	margin-bottom: 0.35rem;
}

.sgt-ui-compra-ac {
	position: relative;
	min-width: 0;
}

.sgt-ui-compra-ac__dd {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 6px);
	z-index: 50;
	background: #fff;
	border: 1px solid rgba(0,0,0,0.12);
	border-radius: 12px;
	box-shadow: 0 8px 18px rgba(0,0,0,0.14);
	list-style: none;
	margin: 0;
	padding: 0.25rem 0;
	max-height: 260px;
	overflow: auto;
}

.sgt-ui-compra-ac__opt {
	padding: 0.55rem 0.75rem;
	cursor: pointer;
	font-size: 0.95rem;
}

.sgt-ui-compra-ac__opt:hover {
	background: #f9fafb;
}

.sgt-ui-compra-empty {
	text-align: center;
	padding: 2.5rem 1rem;
}

.sgt-ui-compra-empty__ico {
	font-size: 3rem;
	opacity: 0.5;
	margin-bottom: 0.6rem;
}

.sgt-ui-compra-empty__title {
	font-weight: 900;
	font-size: 1.05rem;
	color: #111827;
	margin-bottom: 0.25rem;
}

.sgt-ui-compras-estado-btn.is-active {
	background: rgba(249, 115, 22, 0.12);
	border-color: rgba(249, 115, 22, 0.45);
	font-weight: 700;
}

.sgt-ui-compras-gestion {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.65rem;
}

.sgt-ui-compras-topboard {
	width: 100%;
}

.sgt-ui-compras-gestion--nueva .sgt-ui-compras-maincols {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
}

.sgt-ui-compras-maincols {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	flex-wrap: wrap;
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
}

.sgt-ui-compras-main-inner {
	flex: 1 1 18rem;
	min-width: min(100%, 18rem);
}

.sgt-ui-compras-maincols > .sgt-ui-compras-estados {
	flex: 0 0 12.5rem;
	border: 1px solid var(--sgt-ui-border, #e5e5e5);
	border-radius: 8px;
	padding: 0.45rem;
	background: var(--sgt-ui-surface, #fafafa);
	position: sticky;
	top: 0.75rem;
	align-self: flex-start;
	flex-shrink: 0;
	max-height: calc(100vh - 120px);
	overflow-y: auto;
}

.sgt-ui-compras-prio-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin-bottom: 0.45rem;
}

.sgt-ui-compras-prio-tabs__btn {
	border: 1px solid rgba(15, 23, 42, 0.12);
	background: #fff;
	border-radius: 7px;
	padding: 0.32rem 0.65rem;
	font-size: 0.8rem;
	font-weight: 600;
	color: #374151;
	cursor: pointer;
}

.sgt-ui-compras-prio-tabs__btn:hover {
	border-color: rgba(249, 115, 22, 0.45);
	color: #9a3412;
}

.sgt-ui-compras-prio-tabs__btn.is-active {
	border-color: rgba(249, 115, 22, 0.55);
	background: rgba(249, 115, 22, 0.1);
	color: #9a3412;
}

.sgt-ui-compras-prioridad {
	flex: 1 1 auto;
	width: 100%;
	max-width: none;
	border: 1px solid rgba(249, 115, 22, 0.35);
	border-radius: 10px;
	padding: 0.55rem 0.65rem 0.65rem;
	background: linear-gradient(180deg, rgba(249, 115, 22, 0.06), #fff 42%);
	align-self: stretch;
	position: static;
	max-height: none;
	overflow: visible;
}

.sgt-ui-compras-woo-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.75rem;
	margin: 0.35rem 0 0.45rem;
	padding: 0.4rem 0.45rem;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 8px;
	background: var(--sgt-ui-surface, #fafafa);
}

.sgt-ui-compras-woo-catrow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.65rem;
	margin: 0 0 0.5rem;
}

.sgt-ui-compras-woo-catrow > label {
	font-size: 0.8rem;
	font-weight: 700;
	color: #374151;
	white-space: nowrap;
}

.sgt-ui-compras-woo-catrow .sgt-ui-input--select {
	flex: 1 1 12rem;
	max-width: min(100%, 28rem);
	min-width: 10rem;
}

.sgt-ui-compras-woo-catrow__wait {
	font-size: 0.78rem;
	white-space: nowrap;
}

.sgt-ui-compras-woo-toolbar__chk {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.82rem;
	cursor: pointer;
	user-select: none;
}

.sgt-ui-compras-woo-toolbar__msg {
	font-size: 0.8rem;
	flex: 1 1 8rem;
	min-width: 0;
}

.sgt-ui-compras-woo-tbl-wrap {
	overflow: auto;
	max-height: min(48vh, 380px);
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 7px;
	background: #fff;
}

.sgt-ui-compras-woo-tbl {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.8125rem;
	line-height: 1.25;
}

.sgt-ui-compras-woo-tbl th,
.sgt-ui-compras-woo-tbl td {
	padding: 0.22rem 0.4rem;
	border-bottom: 1px solid rgba(15, 23, 42, 0.06);
	vertical-align: middle;
}

.sgt-ui-compras-woo-tbl thead th {
	position: sticky;
	top: 0;
	z-index: 1;
	background: #f9fafb;
	font-weight: 700;
	font-size: 0.76rem;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: #4b5563;
}

.sgt-ui-compras-woo-tbl__chk {
	width: 2rem;
	text-align: center;
}

.sgt-ui-compras-prio-thumb--xs {
	width: 28px;
	height: 28px;
	border-radius: 5px;
}

.sgt-ui-compras-prioridad__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	margin-bottom: 0.35rem;
}

.sgt-ui-compras-prioridad__title {
	font-weight: 800;
	font-size: 0.95rem;
	color: #9a3412;
}

.sgt-ui-compras-prioridad__sub {
	font-size: 0.78rem;
	line-height: 1.35;
	color: #6b7280;
	margin: 0 0 0.55rem;
}

.sgt-ui-compras-prioridad__hint {
	padding: 0.35rem 0;
	font-size: 0.86rem;
}

.sgt-ui-compras-prioridad__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sgt-ui-compras-prioridad__row {
	display: flex;
	gap: 0.4rem;
	align-items: flex-start;
	padding: 0.22rem 0;
	border-top: 1px solid rgba(15, 23, 42, 0.06);
}

.sgt-ui-compras-prioridad__row:first-child {
	border-top: 0;
	padding-top: 0.08rem;
}

.sgt-ui-compras-prio-thumb {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 8px;
	overflow: hidden;
	background: #f3f4f6;
	cursor: zoom-in;
	display: flex;
	align-items: center;
	justify-content: center;
}

.sgt-ui-compras-prio-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sgt-ui-compras-prio-thumb--empty {
	cursor: default;
	font-size: 1.35rem;
	line-height: 1;
}

.sgt-ui-compras-prioridad__meta {
	display: flex;
	gap: 0.45rem;
	min-width: 0;
	flex: 1;
}

.sgt-ui-compras-prioridad__prio {
	flex-shrink: 0;
	font-weight: 800;
	font-size: 0.78rem;
	color: #ea580c;
	width: 1.25rem;
	text-align: right;
}

.sgt-ui-compras-prioridad__txt {
	min-width: 0;
	flex: 1;
}

.sgt-ui-compras-prioridad__name {
	font-size: 0.8rem;
	font-weight: 600;
	line-height: 1.28;
	word-break: break-word;
}

.sgt-ui-compras-prioridad__stock {
	font-size: 0.72rem;
	color: #4b5563;
	margin-top: 0.2rem;
	line-height: 1.35;
}

.sgt-ui-compras-prioridad__ratio {
	color: #b45309;
	font-weight: 700;
}

.sgt-ui-compra-imglightbox {
	position: fixed;
	inset: 0;
	z-index: 100050;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 1.25rem;
	box-sizing: border-box;
}

.sgt-ui-compra-imglightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.72);
	cursor: pointer;
}

.sgt-ui-compra-imglightbox__dialog {
	position: relative;
	z-index: 1;
	max-width: min(96vw, 1100px);
	max-height: 92vh;
	margin: 0;
	padding: 0.35rem;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.sgt-ui-compra-imglightbox__close {
	position: absolute;
	top: 0.25rem;
	right: 0.25rem;
	z-index: 2;
	width: 2.25rem;
	height: 2.25rem;
	border: 0;
	border-radius: 8px;
	background: rgba(15, 23, 42, 0.65);
	color: #fff;
	font-size: 1.35rem;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.sgt-ui-compra-imglightbox__close:hover {
	background: rgba(15, 23, 42, 0.85);
}

.sgt-ui-compra-imglightbox__img {
	display: block;
	max-width: min(92vw, 1050px);
	max-height: 85vh;
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: 6px;
}

body.sgt-ui-compra-imglightbox-open {
	overflow: hidden;
}

@media (max-width: 900px) {
	.sgt-ui-compras-maincols {
		width: 100%;
	}
}

.sgt-ui-prods-detail--refreshing {
	opacity: 0.92;
}

.sgt-ui-compras-row--selected > td {
	background: rgba(249, 115, 22, 0.08);
}

.sgt-ui-compra-items-table .sgt-ui-num {
	text-align: right;
	white-space: nowrap;
}

/* Ventas: filtros + vacío (historial) */
.sgt-ui-ventas-card-head {
	align-items: flex-start;
	gap: 0.75rem;
	flex-wrap: wrap;
}

.sgt-ui-ventas-card-head__text {
	min-width: 0;
}

.sgt-ui-ventas-card-head__sub {
	margin-top: 0.2rem;
	font-size: 0.9rem;
	line-height: 1.35;
}

.sgt-ui-ventas-clearhead {
	flex-shrink: 0;
	white-space: nowrap;
}

.sgt-ui-ventas-filters {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 1rem;
	padding: 1rem;
	margin: 0 0 1rem;
	background: #f9fafb;
	border: 1px solid rgba(15, 23, 42, 0.06);
	border-radius: 10px;
}

.sgt-ui-ventas-filters__field {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.sgt-ui-ventas-filters__field--grow {
	flex: 1 1 220px;
	min-width: 180px;
}

.sgt-ui-ventas-filters__lbl {
	font-size: 0.78rem;
	font-weight: 800;
	color: #374151;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.sgt-ui-ventas-filters__input {
	width: 100%;
	box-sizing: border-box;
	max-width: 100%;
}

.sgt-ui-ventas-empty {
	text-align: center;
	padding: 2.5rem 1rem 1.5rem;
}

.sgt-ui-ventas-empty__ico {
	font-size: 3rem;
	opacity: 0.45;
	margin-bottom: 0.65rem;
	line-height: 1;
}

.sgt-ui-ventas-empty__title {
	font-weight: 900;
	font-size: 1.08rem;
	color: #111827;
	margin-bottom: 0.35rem;
}

.sgt-ui-ventas-tipo {
	display: inline-block;
	font-weight: 800;
	font-size: 0.82rem;
	padding: 0.2rem 0.5rem;
	border-radius: 999px;
	letter-spacing: 0.02em;
}

.sgt-ui-ventas-tipo--pos {
	background: #eff6ff;
	color: #1d4ed8;
	border: 1px solid #bfdbfe;
}

.sgt-ui-ventas-tipo--orden {
	background: #f0fdf4;
	color: #15803d;
	border: 1px solid #bbf7d0;
}

.sgt-ui-ventas-tipo--sena {
	background: #fff7ed;
	color: #c2410c;
	border: 1px solid #fed7aa;
}

/* Ajustes: estados de órdenes (color + ícono) */
.sgt-ui-estados-orden-card {
	margin-top: 1rem;
}

.sgt-ui-estados-orden-list {
	max-height: min(50vh, 22rem);
	overflow-y: auto;
	margin-bottom: 1rem;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	padding: 0.35rem;
	-webkit-overflow-scrolling: touch;
}

.sgt-ui-estado-row {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.5rem 0.4rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.sgt-ui-estado-row:last-child {
	border-bottom: none;
}

.sgt-ui-estado-swatch {
	flex-shrink: 0;
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.12);
}

.sgt-ui-estado-swatch-ico {
	font-size: 1.1rem;
	line-height: 1;
	filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.35));
}

.sgt-ui-estado-row-txt {
	flex: 1;
	min-width: 0;
}

.sgt-ui-estado-row-name {
	font-weight: 800;
	font-size: 0.95rem;
	color: #111827;
}

.sgt-ui-estado-row-desc {
	font-size: 0.82rem;
	margin-top: 0.15rem;
}

.sgt-ui-estado-row-actions {
	display: flex;
	gap: 0.15rem;
	flex-shrink: 0;
}

.sgt-ui-estado-editor {
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	padding-top: 0.85rem;
	margin-top: 0.25rem;
}

.sgt-ui-estado-editor__lbl {
	display: block;
	font-weight: 800;
	font-size: 0.78rem;
	color: #4b5563;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin: 0.65rem 0 0.35rem;
}

.sgt-ui-estado-editor__lbl:first-child {
	margin-top: 0;
}

.sgt-ui-estado-colors {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.sgt-ui-estado-color-opt {
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 6px;
	border: 2px solid transparent;
	padding: 0;
	cursor: pointer;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15);
}

.sgt-ui-estado-color-opt.is-selected,
.sgt-ui-estado-color-opt:focus-visible {
	border-color: #111827;
	outline: none;
}

.sgt-ui-estado-icons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	max-height: 7rem;
	overflow-y: auto;
	padding: 0.25rem 0;
}

.sgt-ui-estado-ico-opt {
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 8px;
	border: 2px solid #e5e7eb;
	background: #fff;
	padding: 0;
	cursor: pointer;
	font-size: 1.15rem;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.sgt-ui-estado-ico-opt.is-selected,
.sgt-ui-estado-ico-opt:focus-visible {
	border-color: #f97316;
	outline: none;
}

.sgt-ui-estado-cierre-wrap {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin: 0.75rem 0 0.5rem;
	font-weight: 600;
	font-size: 0.9rem;
	cursor: pointer;
}

.sgt-ui-estado-editor-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.75rem;
}

.sgt-ui-badge--estado-thema .sgt-ui-badge-ico {
	margin-right: 0.15rem;
}

.sgt-ui-finrow {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.25rem 0;
}

.sgt-ui-finrow__k {
	color: #374151;
}

.sgt-ui-finrow__v {
	font-weight: 900;
	color: #111827;
}

.sgt-ui-presup-card .sgt-ui-card__body {
	padding-top: 0.65rem;
}

.sgt-ui-presup-chip {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.2rem;
	padding: 0.55rem 0.65rem;
	border-radius: 10px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	background: #f9fafb;
}

.sgt-ui-presup-chip__main {
	font-weight: 800;
	font-size: 0.95rem;
	color: #111827;
}

.sgt-ui-presup-chip__sub {
	font-size: 0.82rem;
	color: #6b7280;
	font-weight: 600;
}

.sgt-ui-presup-chip--aprobado {
	border-color: rgba(22, 163, 74, 0.35);
	background: rgba(22, 163, 74, 0.08);
}

.sgt-ui-presup-chip--aprobado .sgt-ui-presup-chip__main {
	color: #15803d;
}

.sgt-ui-presup-chip--pendiente {
	border-color: rgba(217, 119, 6, 0.35);
	background: rgba(251, 191, 36, 0.12);
}

.sgt-ui-presup-chip--pendiente .sgt-ui-presup-chip__main {
	color: #b45309;
}

.sgt-ui-presup-chip--rechazado {
	border-color: rgba(220, 38, 38, 0.3);
	background: rgba(254, 226, 226, 0.45);
}

.sgt-ui-presup-chip--rechazado .sgt-ui-presup-chip__main {
	color: #b91c1c;
}

.sgt-ui-presup-chip--sin .sgt-ui-presup-chip__main {
	color: #6b7280;
	font-weight: 700;
}

@media (max-width: 960px) {
	.sgt-ui-compra-line {
		grid-template-columns: 1fr 1fr;
	}
	.sgt-ui-compra-line__qty,
	.sgt-ui-compra-line__precio,
	.sgt-ui-compra-line__moneda,
	.sgt-ui-compra-line-del {
		grid-column: span 1;
	}
}

.sgt-ui-orders-gear {
	width: 38px;
	height: 38px;
	border-radius: 10px;
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	cursor: pointer;
}

.sgt-ui-orders-gear.is-active {
	border-color: rgba(234, 88, 12, 0.55);
	box-shadow: 0 0 0 2px rgba(234, 88, 12, 0.18);
	background: rgba(255, 247, 237, 0.95);
}

.sgt-ui-orders-new {
	height: 38px;
	border-radius: 10px;
	border: 1px solid rgba(234, 88, 12, 0.35);
	background: #ea580c;
	color: #fff;
	font-weight: 900;
	padding: 0 0.85rem;
	cursor: pointer;
	box-shadow: 0 1px 2px rgba(0,0,0,0.12);
}

.sgt-ui-orders-new:hover {
	background: #c2410c;
}

.sgt-ui-clients-import {
	height: 38px;
}

.sgt-ui-clients-table th,
.sgt-ui-clients-table td {
	font-size: 0.86rem;
}

.sgt-ui-tar {
	text-align: right;
}

.sgt-ui-tin {
	width: 100%;
	max-width: 5.75rem;
	box-sizing: border-box;
}

.sgt-ui-orden-items-toolbar {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
	margin-bottom: 0.5rem;
}

.sgt-ui-orden-items-tablewrap {
	overflow-x: auto;
	margin-bottom: 0.25rem;
}

.sgt-ui-orden-items {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.86rem;
}

.sgt-ui-orden-items th,
.sgt-ui-orden-items td {
	padding: 0.35rem 0.25rem;
	vertical-align: middle;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.sgt-ui-orden-items th {
	font-weight: 700;
	text-align: left;
	color: rgba(0, 0, 0, 0.55);
}

.sgt-ui-badge--tipo-servicio {
	background: #0ea5e9;
	color: #fff;
	border: 0;
}

.sgt-ui-badge--tipo-repuesto {
	background: #64748b;
	color: #fff;
	border: 0;
}

.sgt-ui-modal-oc-list {
	max-height: min(320px, 50vh);
	overflow: auto;
	margin-top: 0.35rem;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
}

.sgt-ui-modal-oc-row {
	padding: 0.5rem 0.65rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	gap: 0.5rem;
	align-items: center;
	text-align: left;
}

.sgt-ui-modal-oc-row:last-child {
	border-bottom: 0;
}

.sgt-ui-modal-oc-row:hover {
	background: rgba(249, 115, 22, 0.07);
}

#sgt-ui-orden-items-msg.is-err,
#sgt-ui-modal-oc-msg.is-err {
	color: #b91c1c;
}

.sgt-ui-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: none;
}

.sgt-ui-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.35);
}

.sgt-ui-modal__panel {
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	width: min(520px, 92vw);
	background: #fff;
	box-shadow: -12px 0 32px rgba(0,0,0,0.25);
	padding: 0.75rem 0.9rem 1rem;
	box-sizing: border-box;
	overflow: auto;
}

.sgt-ui-modal__panel--neworder {
	width: min(640px, 92vw);
}

/* Detalle de venta (POS): modal centrado */
.sgt-ui-modal__panel--venta-detalle {
	position: fixed;
	left: 50%;
	top: 50%;
	right: auto;
	transform: translate(-50%, -50%);
	width: min(520px, calc(100vw - 1.25rem));
	max-height: min(90vh, calc(100vh - 2rem));
	height: auto;
	border-radius: 14px;
	padding: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
	box-sizing: border-box;
}

.sgt-ui-modal--venta-detalle .sgt-ui-modal__head {
	flex-shrink: 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	margin: 0;
	padding: 0.75rem 0.9rem;
}

/* Cambio rápido de estado: anclado arriba + centrado horizontal (evita mitad del modal fuera de pantalla al “centrar” al 50% vertical) */
.sgt-ui-modal--estado .sgt-ui-modal__panel--estado {
	position: fixed;
	left: 50%;
	top: max(0.65rem, env(safe-area-inset-top, 0px));
	right: auto;
	bottom: auto;
	transform: translateX(-50%);
	width: min(420px, calc(100vw - 1.25rem - env(safe-area-inset-left, 0px) - env(safe-area-inset-right, 0px)));
	max-height: calc(100vh - 1.25rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
	max-height: calc(100dvh - 1.25rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
	height: auto;
	border-radius: 14px;
	padding: 0;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	display: flex;
	flex-direction: column;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
	box-sizing: border-box;
}

.sgt-ui-modal--estado .sgt-ui-modal__head {
	flex-shrink: 0;
	margin: 0;
	padding: 0.75rem max(0.9rem, env(safe-area-inset-right, 0px)) 0.65rem max(0.9rem, env(safe-area-inset-left, 0px));
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.sgt-ui-modal--estado .sgt-ui-modal__panel--estado > .sgt-ui-form {
	flex: 0 1 auto;
	min-height: auto;
	overflow: visible;
	padding: 0.65rem max(0.9rem, env(safe-area-inset-right, 0px)) max(0.9rem, env(safe-area-inset-bottom, 0px)) max(0.9rem, env(safe-area-inset-left, 0px));
}

.sgt-ui-modal--estado .sgt-ui-form__actions {
	flex-shrink: 0;
	margin-top: 0.85rem !important;
}

.sgt-ui-venta-detalle-body {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding: 0.85rem 0.9rem;
	-webkit-overflow-scrolling: touch;
}

.sgt-ui-venta-detalle-cards {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 0.5rem;
	margin-bottom: 1rem;
}

@media (max-width: 480px) {
	.sgt-ui-venta-detalle-cards {
		grid-template-columns: 1fr;
	}
}

.sgt-ui-venta-detalle-card {
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	padding: 0.55rem 0.65rem;
	background: #fafafa;
}

.sgt-ui-venta-detalle-card__ico {
	font-size: 1.25rem;
	display: block;
	margin-bottom: 0.2rem;
}

.sgt-ui-venta-detalle-card__lbl {
	font-size: 0.72rem;
	font-weight: 800;
	color: #6b7280;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.sgt-ui-venta-detalle-card__val {
	font-weight: 800;
	color: #111827;
	font-size: 0.95rem;
	margin-top: 0.15rem;
	word-break: break-word;
}

.sgt-ui-venta-detalle-banner {
	padding: 0.5rem 0.65rem;
	border-radius: 8px;
	margin-bottom: 0.75rem;
	font-weight: 700;
	font-size: 0.9rem;
}

.sgt-ui-venta-detalle-banner--off {
	background: #fef2f2;
	color: #b91c1c;
	border: 1px solid #fecaca;
}

.sgt-ui-venta-detalle-concepto {
	margin: 0.65rem 0 0.85rem;
	padding: 0.65rem 0.75rem;
	border-radius: 10px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	background: #fafafa;
}

.sgt-ui-venta-detalle-concepto__lbl {
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #6b7280;
	margin-bottom: 0.35rem;
}

.sgt-ui-venta-detalle-concepto__txt {
	font-size: 0.92rem;
	line-height: 1.45;
	color: #111827;
	word-break: break-word;
	white-space: pre-wrap;
}

.sgt-ui-venta-detalle-prodhead {
	font-weight: 900;
	margin: 0 0 0.5rem;
	color: #111827;
}

.sgt-ui-venta-detalle-lines {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sgt-ui-venta-detalle-line {
	padding: 0.65rem 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.sgt-ui-venta-detalle-line__main {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0.75rem;
}

.sgt-ui-venta-detalle-line__name {
	font-weight: 700;
	flex: 1;
	min-width: 0;
}

.sgt-ui-venta-detalle-line__total {
	font-weight: 800;
	flex-shrink: 0;
}

.sgt-ui-venta-detalle-line__sub {
	font-size: 0.86rem;
	color: #6b7280;
	margin-top: 0.2rem;
	font-weight: 600;
}

.sgt-ui-venta-detalle-totals {
	background: #f3f4f6;
	border-radius: 10px;
	padding: 0.65rem 0.75rem;
	margin-top: 0.75rem;
}

.sgt-ui-venta-detalle-totals__row {
	display: flex;
	justify-content: space-between;
	font-size: 0.9rem;
	color: #4b5563;
}

.sgt-ui-venta-detalle-totals__total {
	display: flex;
	justify-content: space-between;
	margin-top: 0.35rem;
	font-size: 1.15rem;
	font-weight: 900;
	color: #1d4ed8;
}

.sgt-ui-venta-detalle-anular {
	margin-top: 0.75rem;
}

.sgt-ui-venta-detalle-footer {
	flex-shrink: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	padding: 0.75rem 0.9rem;
	background: #fafafa;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 0.75rem;
}

.sgt-ui-venta-detalle-printfmt label {
	display: block;
	font-size: 0.78rem;
	font-weight: 800;
	color: #4b5563;
	margin-bottom: 0.25rem;
}

.sgt-ui-venta-detalle-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	justify-content: flex-end;
}

@media (max-width: 520px) {
	.sgt-ui-venta-detalle-footer {
		flex-direction: column;
		align-items: stretch;
	}

	.sgt-ui-venta-detalle-actions {
		justify-content: stretch;
	}

	.sgt-ui-venta-detalle-actions .sgt-ui-btn {
		flex: 1;
		justify-content: center;
	}
}

.sgt-ui-btn--success {
	background: #16a34a;
	border-color: rgba(22, 163, 74, 0.4);
	color: #fff;
}

.sgt-ui-btn--success:hover {
	background: #15803d;
}

.sgt-ui-venta-edit-tablewrap {
	overflow-x: auto;
	margin-bottom: 0.65rem;
}

.sgt-ui-venta-edit-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.88rem;
}

.sgt-ui-venta-edit-table th,
.sgt-ui-venta-edit-table td {
	padding: 0.35rem 0.4rem;
	border-bottom: 1px solid #eee;
	text-align: left;
	vertical-align: middle;
}

.sgt-ui-venta-edit-table .sgt-ui-input {
	min-width: 4rem;
	padding: 0.35rem 0.5rem;
}

.sgt-ui-venta-edit-notas-lbl {
	display: block;
	font-weight: 700;
	margin-bottom: 0.25rem;
}

.sgt-ui-venta-edit-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: flex-end;
	margin-top: 0.65rem;
}

.sgt-ui-venta-edit-msg {
	margin-top: 0.5rem;
	color: #b45309;
	font-weight: 700;
	font-size: 0.9rem;
}

.sgt-ui-venta-edit-hint {
	margin: 0 0 0.65rem;
}

.sgt-ui-modal__panel--center {
	position: fixed;
	left: 50%;
	right: auto;
	top: 50%;
	transform: translate(-50%, -50%);
	height: auto;
	max-height: min(82vh, 720px);
	width: min(560px, 92vw);
	border-radius: 14px;
	padding: 0;
	overflow: hidden;
	font-size: 0.92rem;
	line-height: 1.25;
}

.sgt-ui-modal__panel--center .sgt-ui-modal__head {
	padding: 0.7rem 0.85rem;
	margin: 0;
	border-bottom: 1px solid rgba(0,0,0,0.08);
}

.sgt-ui-modal__panel--center .sgt-ui-modal__title {
	font-size: 0.98rem;
}

.sgt-ui-modal__panel--center .sgt-ui-muted {
	font-size: 0.82rem;
}

.sgt-ui-wa {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 10px;
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	color: #16a34a;
	text-decoration: none;
	margin-left: 0.4rem;
	flex: 0 0 auto;
}

.sgt-ui-wa:hover {
	background: rgba(22,163,74,0.08);
	border-color: rgba(22,163,74,0.25);
}

.sgt-ui-wa svg {
	width: 17px;
	height: 17px;
	display: block;
}

.sgt-ui-modal__panel--center .sgt-ui-card__body {
	padding: 0.85rem;
	overflow: auto;
	max-height: calc(min(82vh, 720px) - 62px);
}

.sgt-ui-modal--sorteo .sgt-ui-modal__backdrop {
	background: radial-gradient(circle at 30% 20%, rgba(249, 115, 22, 0.22), rgba(0,0,0,0.38) 55%, rgba(0,0,0,0.45) 100%);
	backdrop-filter: blur(2px);
}

.sgt-ui-modal--sorteo .sgt-ui-modal__panel--sorteo {
	width: min(860px, calc(100vw - 1.25rem));
	max-height: min(90vh, calc(100vh - 2rem));
	height: auto;
	border-radius: 18px;
	padding: 0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 28px 70px rgba(0, 0, 0, 0.35);
	transform: translate(-50%, -50%) scale(0.98);
	opacity: 0;
	animation: sgt-ui-sorteo-pop 180ms ease-out forwards;
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__head {
	background: linear-gradient(135deg, #111827 0%, #1f2937 55%, #0f172a 100%);
	color: rgba(255,255,255,0.92);
	border-bottom: 1px solid rgba(255,255,255,0.08);
	padding: 0.95rem 1.05rem;
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__title {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	font-weight: 900;
	letter-spacing: -0.02em;
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__ico {
	width: 36px;
	height: 36px;
	border-radius: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #111827;
	background: radial-gradient(circle at 30% 30%, #ffd08a, #fb923c 55%, #f97316 100%);
	box-shadow: 0 10px 24px rgba(249, 115, 22, 0.35);
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__body {
	padding: 1rem 1.05rem 1.05rem;
	background: linear-gradient(180deg, #ffffff 0%, #fff7ed 100%);
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__status {
	font-weight: 800;
	color: #111827;
	margin: 0 0 0.45rem;
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__countwrap {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.75rem;
	margin: 0 0 0.9rem;
	border-radius: 16px;
	background: radial-gradient(circle at 30% 20%, rgba(249, 115, 22, 0.22), rgba(249, 115, 22, 0.08) 45%, rgba(17, 24, 39, 0.02) 100%);
	border: 1px solid rgba(249, 115, 22, 0.18);
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__count {
	font-size: 3rem;
	font-weight: 950;
	letter-spacing: -0.04em;
	color: #111827;
	text-shadow: 0 10px 30px rgba(249, 115, 22, 0.18);
	animation: sgt-ui-sorteo-pulse 950ms ease-in-out infinite;
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__winners {
	margin-top: 0.25rem;
}

.sgt-ui-sorteo-wcard {
	display: flex;
	gap: 0.85rem;
	justify-content: space-between;
	align-items: stretch;
	padding: 0.85rem 0.95rem;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(17, 24, 39, 0.08);
	box-shadow: 0 14px 32px rgba(17, 24, 39, 0.08);
	margin: 0 0 0.65rem;
	transform: translateY(6px);
	opacity: 0;
	animation: sgt-ui-sorteo-reveal 420ms cubic-bezier(.2,.8,.2,1) forwards;
}

.sgt-ui-sorteo-wcard__left {
	min-width: 0;
}

.sgt-ui-sorteo-wcard__badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-weight: 900;
	font-size: 0.92rem;
	color: #111827;
	margin-bottom: 0.35rem;
}

.sgt-ui-sorteo-wcard__spark {
	color: #f59e0b;
	filter: drop-shadow(0 6px 14px rgba(245, 158, 11, 0.28));
	animation: sgt-ui-sorteo-spark 1.6s ease-in-out infinite;
}

.sgt-ui-sorteo-wcard__meta {
	color: #6b7280;
	font-size: 0.92rem;
}

.sgt-ui-sorteo-wcard__name {
	font-weight: 950;
	font-size: 1.08rem;
	letter-spacing: -0.02em;
	color: #0f172a;
	margin-top: 0.2rem;
	word-break: break-word;
}

.sgt-ui-sorteo-wcard__tel {
	margin-top: 0.35rem;
	color: #374151;
	font-weight: 700;
}

.sgt-ui-sorteo-wcard__telico {
	opacity: 0.7;
}

.sgt-ui-sorteo-wcard__right {
	text-align: right;
	min-width: 16rem;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 0.5rem;
}

.sgt-ui-sorteo-wcard__prize {
	font-weight: 950;
	color: #0f172a;
	font-size: 1.02rem;
}

.sgt-ui-sorteo-wcard__cta .sgt-ui-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.sgt-ui-sorteo-waico {
	display: inline-flex;
}

.sgt-ui-modal--sorteo .sgt-ui-sorteo__actions {
	justify-content: flex-end;
}

@keyframes sgt-ui-sorteo-pop {
	from { transform: translate(-50%, -50%) scale(0.975); opacity: 0; }
	to { transform: translate(-50%, -50%) scale(1); opacity: 1; }
}

@keyframes sgt-ui-sorteo-pulse {
	0%, 100% { transform: scale(1); }
	50% { transform: scale(1.06); }
}

@keyframes sgt-ui-sorteo-reveal {
	to { transform: translateY(0); opacity: 1; }
}

@keyframes sgt-ui-sorteo-spark {
	0%, 100% { transform: rotate(0deg) scale(1); }
	50% { transform: rotate(10deg) scale(1.08); }
}

@media (max-width: 640px) {
	.sgt-ui-modal--sorteo .sgt-ui-modal__panel--sorteo {
		width: calc(100vw - 1rem);
		border-radius: 14px;
	}
	.sgt-ui-sorteo-wcard {
		flex-direction: column;
	}
	.sgt-ui-sorteo-wcard__right {
		min-width: 0;
		text-align: left;
	}
	.sgt-ui-modal--sorteo .sgt-ui-sorteo__count {
		font-size: 2.6rem;
	}
}

/* Ajustes: pestañas Configuración / Sorteo en vivo */
.sgt-ui-ajustes-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	margin: 0 0 1rem;
}
.sgt-ui-ajustes-tab {
	appearance: none;
	border: 1px solid rgba(15, 23, 42, 0.12);
	background: #f8fafc;
	color: #334155;
	font: inherit;
	font-weight: 600;
	font-size: 0.92rem;
	padding: 0.45rem 1rem;
	border-radius: 999px;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.sgt-ui-ajustes-tab:hover {
	background: #fff;
	border-color: rgba(59, 130, 246, 0.35);
	color: #0f172a;
}
.sgt-ui-ajustes-tab.is-active {
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
	border-color: transparent;
	color: #fff;
	box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
}
.sgt-ui-ajustes-tabpanes {
	display: block;
}
.sgt-ui-ajustes-pane--live {
	margin-top: 0.25rem;
}
.sgt-ui-ajustes-pane--subastas {
	margin-top: 0.25rem;
}
.sgt-ui-subastas-host {
	min-height: 12rem;
}
.sgt-ui-subastas-pane__head {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0 0 1rem;
}
.sgt-ui-subastas-pane__title {
	margin: 0;
	font-size: 1.15rem;
	font-weight: 700;
	color: #0f172a;
}
.sgt-ui-subastas-pane__back {
	flex-shrink: 0;
}

/* Sorteo «en vivo»: vista tipo frontpage para filmar / proyectar */
.sgt-sorteo-broadcast {
	border-radius: 22px;
	overflow: hidden;
	background: linear-gradient(155deg, #0b1220 0%, #111c2f 42%, #0c1528 100%);
	color: #e2e8f0;
	box-shadow: 0 28px 70px rgba(15, 23, 42, 0.38);
	border: 1px solid rgba(148, 163, 184, 0.12);
}
.sgt-sorteo-broadcast__hero {
	display: flex;
	align-items: center;
	gap: 1.35rem;
	padding: 1.75rem 2rem 1.35rem;
	background: radial-gradient(120% 90% at 10% 0%, rgba(56, 189, 248, 0.18), transparent 55%),
		radial-gradient(90% 80% at 90% 20%, rgba(168, 85, 247, 0.14), transparent 50%);
	border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}
.sgt-sorteo-broadcast__logo {
	flex-shrink: 0;
	width: 4.5rem;
	height: 4.5rem;
	border-radius: 16px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
}
.sgt-sorteo-broadcast__logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.sgt-sorteo-broadcast__kicker {
	margin: 0 0 0.25rem;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #38bdf8;
}
.sgt-sorteo-broadcast__title {
	margin: 0;
	font-size: clamp(1.45rem, 3.5vw, 2.1rem);
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.15;
	color: #f8fafc;
}
.sgt-sorteo-broadcast__subtitle {
	margin: 0.45rem 0 0;
	font-size: 0.95rem;
	color: #94a3b8;
	max-width: 36rem;
	line-height: 1.45;
}
.sgt-sorteo-broadcast__stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
	gap: 1rem;
	padding: 1.15rem 2rem;
	background: rgba(0, 0, 0, 0.18);
	border-bottom: 1px solid rgba(148, 163, 184, 0.1);
}
.sgt-sorteo-broadcast__stat {
	padding: 0.65rem 0.85rem;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.06);
}
.sgt-sorteo-broadcast__stat-label {
	display: block;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #94a3b8;
	margin-bottom: 0.2rem;
}
.sgt-sorteo-broadcast__stat-num {
	display: block;
	font-size: 1.85rem;
	font-weight: 800;
	color: #f1f5f9;
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
}
.sgt-sorteo-broadcast__stat-hint {
	display: block;
	font-size: 0.78rem;
	color: #64748b;
	margin-top: 0.15rem;
}
.sgt-sorteo-broadcast__toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	padding: 1rem 2rem 0.25rem;
}
.sgt-sorteo-broadcast .sgt-ui-btn--ghost {
	color: #e2e8f0;
	border-color: rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.04);
}
.sgt-sorteo-broadcast .sgt-ui-btn--ghost:hover {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.35);
	color: #fff;
}
.sgt-sorteo-broadcast__btn--cta {
	box-shadow: 0 6px 20px rgba(34, 197, 94, 0.35);
}
.sgt-sorteo-broadcast__msg {
	margin: 0.35rem 2rem 0;
	padding: 0.55rem 0.85rem;
	border-radius: 10px;
	background: rgba(56, 189, 248, 0.12);
	border: 1px solid rgba(56, 189, 248, 0.35);
	color: #bae6fd;
	font-size: 0.9rem;
}
.sgt-sorteo-broadcast__msg.sgt-sorteo-broadcast__msg--err {
	background: rgba(248, 113, 113, 0.12);
	border-color: rgba(248, 113, 113, 0.4);
	color: #fecaca;
}
.sgt-sorteo-broadcast__hint {
	margin: 0.65rem 2rem 0;
	font-size: 0.88rem;
	color: #94a3b8;
	line-height: 1.45;
}
.sgt-sorteo-broadcast__hint strong {
	color: #cbd5e1;
}
.sgt-sorteo-broadcast__stage {
	min-height: 260px;
	padding: 1.5rem 2rem 2.25rem;
	background: radial-gradient(80% 60% at 50% 0%, rgba(99, 102, 241, 0.12), transparent 65%);
}
.sgt-sorteo-broadcast__idle {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 12rem;
	color: #64748b;
	font-size: 1.1rem;
	font-weight: 600;
}
.sgt-sorteo-broadcast__idle p {
	margin: 0;
}
.sgt-sorteo-broadcast__status {
	text-align: center;
	font-size: 1.05rem;
	font-weight: 600;
	color: #bae6fd;
	margin-bottom: 0.5rem;
}
.sgt-sorteo-broadcast__countwrap {
	display: flex;
	justify-content: center;
	margin: 0.5rem 0 1rem;
}
.sgt-sorteo-broadcast__count {
	font-size: clamp(3rem, 14vw, 6.5rem);
	font-weight: 900;
	line-height: 1;
	color: #fef08a;
	text-shadow: 0 0 40px rgba(250, 204, 21, 0.35);
	font-variant-numeric: tabular-nums;
	animation: sgt-ui-sorteo-pulse 950ms ease-in-out infinite;
}
.sgt-sorteo-broadcast__winners {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	align-items: stretch;
	max-width: 52rem;
	margin: 0 auto;
}
.sgt-sorteo-broadcast__winners .sgt-ui-sorteo-wcard {
	max-width: none;
}
.sgt-sorteo-broadcast__actions {
	display: flex;
	justify-content: center;
	margin-top: 1rem;
}

/* Subastas (panel admin). */
.sgt-ui-subasta-admin__meta p {
	margin: 0.35rem 0;
}
.sgt-ui-subasta-admin__reserva {
	color: #0369a1;
	font-weight: 600;
}
.sgt-ui-subasta-admin__winner {
	color: #047857;
	font-weight: 600;
}

/* Modal detalle cliente (vista lectura, referencia móvil). */
.sgt-ui-modal__panel--center.sgt-ui-clientdetail {
	width: min(440px, 94vw);
	max-height: min(90vh, 800px);
	display: flex;
	flex-direction: column;
	padding: 0;
}

.sgt-ui-clientdetail__head {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	padding: 0.85rem 0.95rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	background: #fff;
}

.sgt-ui-clientdetail__headico {
	color: #64748b;
	display: flex;
	flex-shrink: 0;
}

.sgt-ui-clientdetail__headtitle {
	flex: 1 1 auto;
	font-weight: 800;
	font-size: 1.05rem;
	color: #1e293b;
	min-width: 0;
}

.sgt-ui-clientdetail__close {
	margin-left: auto;
	width: 38px;
	height: 38px;
	border-radius: 10px;
	border: none;
	background: #ffe4e6;
	color: #64748b;
	font-size: 1.05rem;
	cursor: pointer;
	line-height: 1;
	flex-shrink: 0;
}

.sgt-ui-clientdetail__close:hover {
	background: #fecdd3;
	color: #334155;
}

.sgt-ui-clientdetail__body {
	padding: 0.8rem 1rem 0.95rem;
	overflow-y: auto;
	flex: 1 1 auto;
	min-height: 0;
	-webkit-overflow-scrolling: touch;
}

.sgt-ui-clientdetail__row {
	margin-bottom: 0.7rem;
}

.sgt-ui-clientdetail__row:last-child {
	margin-bottom: 0;
}

.sgt-ui-clientdetail__label {
	display: block;
	font-size: 0.78rem;
	color: #9ca3af;
	font-weight: 600;
	margin-bottom: 0.12rem;
}

.sgt-ui-clientdetail__val {
	display: block;
	font-weight: 800;
	font-size: 0.95rem;
	color: #0f172a;
	word-break: break-word;
}

.sgt-ui-clientdetail__val--telwrap,
.sgt-ui-clientdetail__val--mailwrap {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.sgt-ui-clientdetail__tel {
	color: #16a34a;
	font-weight: 800;
	text-decoration: none;
}

.sgt-ui-clientdetail__tel:hover {
	text-decoration: underline;
}

.sgt-ui-clientdetail__wa {
	display: inline-flex;
	align-items: center;
	color: #16a34a;
	text-decoration: none;
}

.sgt-ui-clientdetail__wa:hover {
	opacity: 0.85;
}

.sgt-ui-clientdetail__waico {
	width: 22px;
	height: 22px;
	display: block;
}

.sgt-ui-clientdetail__mailico {
	width: 18px;
	height: 18px;
	color: #2563eb;
	flex-shrink: 0;
}

.sgt-ui-clientdetail__mail {
	color: #2563eb;
	font-weight: 800;
	text-decoration: none;
	word-break: break-all;
}

.sgt-ui-clientdetail__mail:hover {
	text-decoration: underline;
}

.sgt-ui-clientdetail__footer {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 0.5rem;
	padding: 0.8rem;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	background: #f8fafc;
	flex-shrink: 0;
}

.sgt-ui-clientdetail__btn {
	flex: 1 1 28%;
	min-width: 0;
	border: none;
	border-radius: 12px;
	padding: 0.65rem 0.3rem;
	font-weight: 800;
	font-size: 0.8rem;
	cursor: pointer;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.2rem;
	color: #fff;
	line-height: 1.15;
}

.sgt-ui-clientdetail__btn:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

.sgt-ui-clientdetail__btnico {
	font-size: 1.1rem;
	line-height: 1;
}

.sgt-ui-clientdetail__btn--orders {
	background: linear-gradient(180deg, #fb923c, #ea580c);
}

.sgt-ui-clientdetail__btn--edit {
	background: linear-gradient(180deg, #22c55e, #16a34a);
}

.sgt-ui-clientdetail__btn--del {
	background: #94a3b8;
}

.sgt-ui-clientdetail__hint {
	margin: 0;
	flex: 1 1 100%;
	font-size: 0.8rem;
	color: #64748b;
	text-align: center;
	line-height: 1.35;
}

.sgt-ui-formsec {
	padding: 0.65rem 0;
	border-bottom: 1px solid rgba(0,0,0,0.06);
}

.sgt-ui-formsec__title {
	font-weight: 900;
	color: #111827;
	margin: 0 0 0.35rem;
}

.sgt-ui-formsec__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	flex-wrap: wrap;
	margin-bottom: 0.35rem;
}

.sgt-ui-formsec__head .sgt-ui-formsec__title {
	margin: 0;
}

/* Reasignar cliente: el desplegable debe verse sobre el panel del modal */
#sgt-ui-modal-reasign-cliente .sgt-ui-modal__panel--center .sgt-ui-card__body {
	overflow: visible;
}
#sgt-ui-modal-reasign-cliente .sgt-ui-clientpicker__list {
	z-index: 50;
}

.sgt-ui-clientlink {
	font-weight: 900;
	font-size: 0.85em;
	margin-left: 0.45rem;
	color: #ea580c;
	text-decoration: none;
}

.sgt-ui-clientlink:hover {
	text-decoration: underline;
}

.sgt-ui-clientpicker {
	position: relative;
}

.sgt-ui-clientpicker__list {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 6px);
	background: #fff;
	border: 1px solid rgba(0,0,0,0.12);
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.12);
	max-height: 240px;
	overflow: auto;
	z-index: 5;
}

.sgt-ui-clientpicker__item {
	display: block;
	width: 100%;
	text-align: left;
	background: #fff;
	border: 0;
	padding: 0.6rem 0.75rem;
	cursor: pointer;
	font-weight: 800;
	color: #111827;
}

.sgt-ui-clientpicker__item:hover {
	background: #f9fafb;
}

.sgt-ui-clientpicker__empty {
	padding: 0.65rem 0.75rem;
	color: #6b7280;
	font-weight: 800;
}

.sgt-ui-form__actions--sticky {
	position: sticky;
	bottom: 0;
	background: #fff;
	padding-top: 0.75rem;
	border-top: 1px solid rgba(0,0,0,0.08);
}

@media (min-width: 1100px) {
	/* En pantallas grandes: “dock” derecho, como la referencia */
	.sgt-ui-modal__backdrop {
		background: rgba(0,0,0,0.10);
	}
	.sgt-ui-modal__panel--neworder {
		width: min(720px, 44vw);
	}
}

.sgt-ui-modal__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid rgba(0,0,0,0.08);
	margin-bottom: 0.75rem;
}

.sgt-ui-modal__title {
	font-weight: 900;
	font-size: 1.1rem;
	color: #111827;
}

.sgt-ui-modal__close {
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	border-radius: 10px;
	width: 38px;
	height: 38px;
	cursor: pointer;
}

.sgt-ui-form label {
	display: block;
	font-weight: 800;
	color: #374151;
	font-size: 0.9rem;
	margin: 0.65rem 0 0.35rem;
}

.sgt-ui-input {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid rgba(0,0,0,0.14);
	border-radius: 10px;
	padding: 0.65rem 0.75rem;
	font-size: 0.95rem;
	outline: none;
}

.sgt-ui-input--select {
	appearance: none;
	background-image: linear-gradient(45deg, transparent 50%, rgba(0,0,0,0.55) 50%), linear-gradient(135deg, rgba(0,0,0,0.55) 50%, transparent 50%);
	background-position: calc(100% - 18px) calc(1em + 1px), calc(100% - 13px) calc(1em + 1px);
	background-size: 5px 5px, 5px 5px;
	background-repeat: no-repeat;
	padding-right: 2rem;
}

.sgt-ui-inputrow {
	display: grid;
	grid-template-columns: 1fr 40px;
	gap: 0.5rem;
	align-items: center;
}

.sgt-ui-btn--icon {
	width: 40px;
	height: 40px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 900;
}

.sgt-ui-grid2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}
@media (max-width: 860px) {
	.sgt-ui-grid2 { grid-template-columns: 1fr; }
}

.sgt-ui-alert {
	border: 1px solid rgba(0,0,0,0.08);
	background: rgba(0,0,0,0.03);
	border-radius: 12px;
	padding: 0.75rem 0.9rem;
	margin: 0 0 0.9rem;
}
.sgt-ui-alert--muted { color: #374151; }

.sgt-ui-ajcard.sgt-ui-noperm {
	opacity: 0.55;
	filter: grayscale(0.25);
}
.sgt-ui-ajlist .sgt-ui-ajrow {
	display: grid;
	grid-template-columns: 1fr 34px;
	align-items: center;
	gap: 0.5rem;
	padding: 0.4rem 0;
	border-bottom: 1px solid rgba(0,0,0,0.05);
}
.sgt-ui-ajlist .sgt-ui-ajrow:last-child { border-bottom: none; }
.sgt-ui-ajtxt { font-weight: 650; color: #111827; }
.sgt-ui-ajadd {
	display: grid;
	grid-template-columns: 180px 1fr auto;
	gap: 0.6rem;
	align-items: center;
	margin-top: 0.75rem;
}

.sgt-ui-tag {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 999px;
	border: 1px solid rgba(0,0,0,0.12);
	vertical-align: middle;
	margin-right: 0.35rem;
}

.sgt-ui-tagchips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-top: 0.6rem;
}

.sgt-ui-chip {
	border: 1px solid rgba(0,0,0,0.12);
	background: rgba(0,0,0,0.03);
	color: #111827;
	border-radius: 999px;
	padding: 0.35rem 0.6rem;
	font-weight: 800;
	cursor: pointer;
}

.sgt-ui-chip:hover {
	background: rgba(0,0,0,0.06);
}

.sgt-ui-empresa-card .sgt-ui-card__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sgt-ui-empresa-logo-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.85rem 1rem;
	margin-bottom: 0.85rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	background: rgba(0, 0, 0, 0.02);
}

.sgt-ui-emp-logo-preview {
	flex: 0 0 auto;
	width: 88px;
	height: 88px;
	border-radius: 10px;
	border: 1px dashed rgba(0, 0, 0, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: #fff;
}

.sgt-ui-emp-logo-img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}

.sgt-ui-emp-logo-placeholder {
	font-size: 0.78rem;
	font-weight: 700;
	color: #9ca3af;
	text-align: center;
	padding: 0.35rem;
}

.sgt-ui-emp-logo-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	align-items: center;
}

.sgt-ui-empcfg-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.75rem;
	align-items: start;
}

.sgt-ui-empcfg-full {
	grid-column: 1 / -1;
}

@media (max-width: 720px) {
	.sgt-ui-empcfg-grid {
		grid-template-columns: 1fr;
	}
	.sgt-ui-empcfg-full {
		grid-column: auto;
	}
}

.sgt-ui-input--area {
	min-height: 92px;
	resize: vertical;
}

.sgt-ui-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.75rem;
}

.sgt-ui-form__row--full {
	grid-template-columns: 1fr;
}

.sgt-ui-deposito-preview {
	padding: 0.65rem 0.75rem;
	border-radius: 8px;
	border: 1px solid rgba(14, 165, 233, 0.25);
	background: rgba(14, 165, 233, 0.07);
}

.sgt-ui-deposito-preview__title {
	font-weight: 700;
	font-size: 0.95rem;
	margin-bottom: 0.25rem;
}

.sgt-ui-checkboxrow {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.65rem;
	font-weight: 600;
	cursor: pointer;
}

.sgt-ui-checkboxrow input {
	width: 1.05rem;
	height: 1.05rem;
}

.sgt-ui-form__actions {
	display: flex;
	justify-content: flex-end;
	gap: 0.5rem;
	margin-top: 0.9rem;
}

.sgt-ui-cc-manual-card__actions.sgt-ui-form__actions {
	margin-top: auto;
	justify-content: flex-start;
}

.sgt-ui-btn {
	border-radius: 10px;
	padding: 0.65rem 0.9rem;
	font-weight: 900;
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	cursor: pointer;
}

.sgt-ui-btn--primary {
	background: #ea580c;
	border-color: rgba(234, 88, 12, 0.35);
	color: #fff;
}

.sgt-ui-btn--primary:hover {
	background: #c2410c;
}

.sgt-ui-btn--ghost {
	background: #fff;
	color: #374151;
}

.sgt-ui-form__msg {
	margin-top: 0.75rem;
	padding: 0.65rem 0.75rem;
	border-radius: 10px;
	background: #fff5f2;
	border: 1px solid rgba(234, 88, 12, 0.35);
	color: #7c2d12;
	font-weight: 700;
}

.sgt-ui-viewcfg__sectiontitle {
	font-weight: 900;
	color: #111827;
	margin: 0.25rem 0 0.75rem;
}

.sgt-ui-viewcfg__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.5rem 0.75rem;
}

.sgt-ui-viewcfg__opt {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.6rem 0.75rem;
	border: 1px solid rgba(0,0,0,0.10);
	border-radius: 10px;
	background: #f9fafb;
	font-weight: 800;
	color: #374151;
}

.sgt-ui-viewcfg__opt input {
	width: 18px;
	height: 18px;
}

/* Modal configuración de vista: centrado en viewport (no heredar panel lateral derecho). */
.sgt-ui-modal__panel--viewcfg {
	position: fixed;
	left: 50%;
	right: auto;
	top: 50%;
	bottom: auto;
	transform: translate(-50%, -50%);
	width: min(580px, calc(100vw - 1.25rem));
	max-width: calc(100vw - 1.25rem);
	max-height: min(85vh, calc(100vh - 2rem));
	max-height: min(85vh, calc(100dvh - max(1.25rem, env(safe-area-inset-top, 0px) + env(safe-area-inset-bottom, 0px) + 1.5rem)));
	height: auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
	padding: 0;
	overflow: hidden;
	border-radius: 14px;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.28);
	background: #fff;
	box-sizing: border-box;
}

.sgt-ui-modal__panel--viewcfg .sgt-ui-modal__head {
	flex-shrink: 0;
	padding: 0.75rem 0.9rem;
	margin: 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.sgt-ui-viewcfg-scroll {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	padding: 0.65rem 0.9rem 0.25rem;
	-webkit-overflow-scrolling: touch;
}

.sgt-ui-viewcfg__footer {
	flex-shrink: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0.75rem;
	padding: 0.75rem 0.9rem max(0.85rem, env(safe-area-inset-bottom, 0px));
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	background: #fafafa;
}

@media (max-width: 420px) {
	.sgt-ui-modal__panel--viewcfg {
		width: calc(100vw - 0.75rem);
		max-width: calc(100vw - 0.75rem);
		max-height: calc(100dvh - 0.75rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
		border-radius: 12px;
	}

	.sgt-ui-viewcfg__footer {
		flex-direction: column-reverse;
		align-items: stretch;
	}

	.sgt-ui-viewcfg__footer .sgt-ui-btn {
		width: 100%;
		justify-content: center;
	}
}

.sgt-ui-viewcfg__grid--3 {
	grid-template-columns: 1fr 1fr 1fr;
}

@media (max-width: 520px) {
	.sgt-ui-viewcfg__grid--3 {
		grid-template-columns: 1fr;
	}
}

.sgt-ui-viewcfg__opt--col.is-on {
	background: rgba(34, 197, 94, 0.14);
	border-color: rgba(22, 163, 74, 0.35);
}

.sgt-ui-viewcfg__rowlinks {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1rem;
	margin-top: 0.45rem;
}

.sgt-ui-viewcfg__linkbtn {
	background: none;
	border: 0;
	padding: 0;
	font: inherit;
	font-weight: 800;
	color: #dc2626;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.sgt-ui-viewcfg__checkline {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	margin-bottom: 0.5rem;
	background: #fafafa;
	cursor: pointer;
}

.sgt-ui-viewcfg__checkline input {
	margin-top: 0.2rem;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

.sgt-ui-viewcfg__checkmain {
	display: block;
	font-weight: 800;
	color: #111827;
}

.sgt-ui-viewcfg__checksub {
	display: block;
	font-size: 0.85rem;
	color: #6b7280;
	font-weight: 600;
	margin-top: 0.2rem;
}

.sgt-ui-viewcfg__block {
	margin-bottom: 1.1rem;
}

.sgt-ui-viewcfg__sechead {
	font-weight: 900;
	color: #1d4ed8;
	margin: 0 0 0.5rem;
	font-size: 0.95rem;
	display: flex;
	align-items: center;
	gap: 0.35rem;
}

.sgt-ui-viewcfg__sechead--cols {
	color: #15803d;
}

.sgt-ui-viewcfg__sechead--states {
	color: #2563eb;
}

.sgt-ui-viewcfg__hint {
	margin: 0 0 0.65rem;
	font-size: 0.88rem;
	color: #4b5563;
	font-weight: 600;
}

.sgt-ui-viewcfg__secico {
	font-size: 1rem;
	line-height: 1;
}

.sgt-ui-orders-cell--clip {
	max-width: 14rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Patrón de desbloqueo 3×3 (campo equipo_patron_contrasena, formato 1-2-5-8) */
.sgt-ui-patron-field {
	min-width: 0;
}

.sgt-ui-patron-field__row {
	grid-template-columns: 1fr auto;
	align-items: stretch;
	gap: 0.5rem;
}

.sgt-ui-patron-field__row .sgt-ui-input {
	min-width: 0;
}

.sgt-ui-patron-panel {
	margin-top: 0.65rem;
	padding: 0.75rem;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 12px;
	background: #f9fafb;
}

.sgt-ui-patron-hint {
	font-size: 0.85rem;
	margin: 0 0 0.65rem;
	line-height: 1.35;
}

.sgt-ui-patron-stage {
	position: relative;
	width: min(280px, 100%);
	max-width: 100%;
	aspect-ratio: 1;
	margin: 0 auto 0.65rem;
	touch-action: none;
	user-select: none;
	-webkit-user-select: none;
}

.sgt-ui-patron-lines {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	color: #2563eb;
}

.sgt-ui-patron-dots {
	position: absolute;
	inset: 0;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: 1fr 1fr 1fr;
	padding: 6%;
	gap: 0;
	box-sizing: border-box;
}

.sgt-ui-patron-dot {
	border: none;
	background: transparent;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	touch-action: none;
	-webkit-tap-highlight-color: transparent;
}

.sgt-ui-patron-dot__inner {
	width: 44px;
	height: 44px;
	max-width: 88%;
	max-height: 88%;
	border-radius: 50%;
	background: #fff;
	border: 3px solid #9ca3af;
	box-sizing: border-box;
	transition: border-color 0.12s ease, background 0.12s ease;
}

.sgt-ui-patron-dot.is-active .sgt-ui-patron-dot__inner {
	border-color: #2563eb;
	background: #dbeafe;
}

.sgt-ui-patron-msg {
	font-size: 0.86rem;
	font-weight: 700;
	color: #b45309;
	margin: 0 0 0.5rem;
}

.sgt-ui-patron-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.5rem;
}

.sgt-ui-view-orders__table {
	width: 100%;
	border-collapse: collapse;
	min-width: 860px;
}

.sgt-ui-view-orders__table th,
.sgt-ui-view-orders__table td {
	text-align: left;
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.06);
	vertical-align: top;
}

.sgt-ui-view-orders__table th {
	background: #f9fafb;
	font-weight: 900;
	color: #374151;
}

/* Desktop: achicar tabla para que fecha entre mejor (móvil no se toca: usa cards) */
@media (min-width: 821px) {
	.sgt-ui-view-orders__table th,
	.sgt-ui-view-orders__table td {
		font-size: 0.86rem;
		padding: 0.55rem 0.6rem;
	}
}

.sgt-ui-mainmenu-brand {
	text-decoration: none;
	color: inherit;
	cursor: pointer;
}

.sgt-ui-card {
	background: #ffffff;
	border: 1px solid rgba(0,0,0,0.08);
	border-radius: 12px;
	box-shadow: 0 1px 2px rgba(0,0,0,0.05);
	margin-bottom: 0.75rem;
}

.sgt-ui-card__head {
	padding: 0.75rem 0.85rem;
	border-bottom: 1px solid rgba(0,0,0,0.06);
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sgt-ui-card__title {
	font-weight: 900;
	color: #111827;
}

.sgt-ui-card__body {
	padding: 0.75rem 0.85rem;
}

/* Gestión CC (Finanzas): panel enmarcado para el buscador de cliente */
.sgt-ui-ccv-gestion-panel {
	margin-top: 0.65rem;
	background: #ffffff;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06), 0 4px 14px rgba(15, 23, 42, 0.04);
	overflow: hidden;
}
.sgt-ui-ccv-gestion-panel__head {
	padding: 0.65rem 0.9rem;
	font-weight: 800;
	font-size: 0.92rem;
	color: #0f172a;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	background: linear-gradient(180deg, #f1f5f9 0%, #e8eef5 100%);
	border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}
.sgt-ui-ccv-gestion-panel__body {
	padding: 0.9rem;
}
.sgt-ui-ccv-gestion-panel__hint {
	margin: 0.75rem 0 0;
	font-size: 0.82rem;
	line-height: 1.45;
}

/* Cuenta corriente (Finanzas): dos formularios en grilla; botones alineados al pie */
.sgt-ui-cc-manual-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin-top: 0.75rem;
	align-items: stretch;
}

.sgt-ui-cc-manual-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin-bottom: 0;
}

.sgt-ui-cc-manual-card .sgt-ui-cc-manual-card__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
	padding-bottom: 0.85rem;
}

.sgt-ui-cc-manual-card__fields {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	min-height: 0;
}

.sgt-ui-cc-manual-row {
	margin: 0;
	gap: 0.6rem;
	align-items: flex-end;
}

.sgt-ui-cc-manual-field {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.sgt-ui-cc-manual-field .sgt-ui-input,
.sgt-ui-cc-manual-row .sgt-ui-input {
	width: 100%;
	box-sizing: border-box;
}

.sgt-ui-cc-manual-card__actions {
	margin-top: auto;
	padding-top: 0.85rem;
	justify-content: flex-start;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.sgt-ui-cc-manual-btn {
	width: 100%;
	max-width: 100%;
	justify-content: center;
}

.sgt-ui-prov-cc-saldo--debemos {
	color: #b91c1c;
	font-weight: 800;
	font-size: 0.92rem;
}

.sgt-ui-prov-cc-saldo--favor {
	color: #15803d;
	font-weight: 800;
	font-size: 0.92rem;
}

/* CC proveedor: columna de edición compacta (icono ✎) */
.sgt-ui-provcc-actions-col {
	width: 44px;
	max-width: 48px;
	padding-left: 0.2rem !important;
	padding-right: 0.2rem !important;
}
.sgt-ui-provcc-actions-cell {
	text-align: center;
	vertical-align: middle;
	padding-top: 0.3rem !important;
	padding-bottom: 0.3rem !important;
}
.sgt-ui-provcc-actions-cell .sgt-ui-iconbtn {
	flex-shrink: 0;
}

@media (min-width: 641px) {
	.sgt-ui-cc-manual-btn {
		width: auto;
		max-width: none;
	}
}

/* Cuenta unificada (Fase 1): cliente + proveedor vinculado, solo lectura */
.sgt-ui-cc-unificado {
	margin-top: 0.75rem;
	padding: 1rem 1.1rem;
	background: linear-gradient(135deg, #fffbeb 0%, #f8fafc 55%, #f0fdf4 100%);
	border: 1px solid rgba(234, 88, 12, 0.22);
	border-radius: 12px;
	box-sizing: border-box;
}
.sgt-ui-cc-unificado__head {
	margin-bottom: 0.85rem;
}
.sgt-ui-cc-unificado__title {
	font-weight: 800;
	font-size: 1.05rem;
	color: #0f172a;
}
.sgt-ui-cc-unificado__sub {
	margin: 0.35rem 0 0;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #475569;
}
.sgt-ui-cc-unificado__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
}
@media (max-width: 720px) {
	.sgt-ui-cc-unificado__grid {
		grid-template-columns: 1fr;
	}
}
.sgt-ui-cc-unificado__item {
	padding: 0.65rem 0.75rem;
	background: rgba(255, 255, 255, 0.85);
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 10px;
}
.sgt-ui-cc-unificado__item--neto {
	border-color: rgba(234, 88, 12, 0.35);
	background: #fff;
}
.sgt-ui-cc-unificado__lbl {
	display: block;
	font-size: 0.78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #64748b;
}
.sgt-ui-cc-unificado__val {
	display: block;
	margin-top: 0.25rem;
	font-size: 1.15rem;
	font-weight: 800;
}
.sgt-ui-cc-unificado__val--neto {
	font-size: 1.25rem;
}
.sgt-ui-cc-unificado__hint {
	display: block;
	margin-top: 0.2rem;
	font-size: 0.75rem;
	color: #94a3b8;
}
.sgt-ui-cc-unificado__actions {
	margin-top: 0.85rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}
.sgt-ui-cc-comp-max-hint {
	font-size: 0.88rem;
}
.sgt-ui-cc-comp-hist {
	margin-top: 1rem;
	padding-top: 0.85rem;
	border-top: 1px dashed rgba(15, 23, 42, 0.12);
}
.sgt-ui-cc-comp-hist__title {
	font-weight: 700;
	font-size: 0.92rem;
	color: #334155;
	margin-bottom: 0.5rem;
}
.sgt-ui-cc-comp-hist__table {
	font-size: 0.88rem;
}
.sgt-ui-cc-comp-hist__row--anul td {
	opacity: 0.65;
}
.sgt-ui-cc-comp-hist__actions {
	white-space: nowrap;
}

/* Cuenta corriente (cliente y proveedor): bloques más legibles — toolbar y tabla en “caja” */
.sgt-ui-view-cc-cliente .sgt-ui-ccv-toolbar,
.sgt-ui-view-prov-cc-detalle .sgt-ui-ccv-toolbar {
	padding: 0.85rem 1rem;
	background: #f8fafc;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 12px;
	box-sizing: border-box;
}

.sgt-ui-view-cc-cliente .sgt-ui-cc-manual-card.sgt-ui-card {
	border: 1px solid rgba(15, 23, 42, 0.11);
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.06);
}

.sgt-ui-view-cc-cliente .sgt-ui-cc-movs-wrap {
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 12px;
	background: #fff;
	padding: 0.35rem 0.5rem 0.5rem;
	box-sizing: border-box;
}

/* Toolbar filtros + saldo en cuenta corriente: en pantallas chicas apila limpio */
.sgt-ui-ccv-toolbar .sgt-ui-form__row {
	flex-wrap: wrap;
}

@media (max-width: 640px) {
	.sgt-ui-cc-manual-grid {
		grid-template-columns: 1fr;
		gap: 0.85rem;
	}

	.sgt-ui-cc-manual-row {
		flex-direction: column;
		align-items: stretch;
	}

	.sgt-ui-ccv-toolbar .sgt-ui-orders-toolbar__right {
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 100%;
	}

	.sgt-ui-ccv-toolbar .sgt-ui-cc-saldo-line {
		width: 100%;
	}
}

/* Pedir a proveedor SPA: toolbar estilo cuenta corriente + modal alta ítem */
.sgt-ui-view-pedirprov .sgt-ui-pedirprov-lead {
	margin: 0 0 1rem;
	max-width: 44rem;
	line-height: 1.45;
}

.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar.sgt-ui-ccv-toolbar {
	margin-bottom: 1rem;
	padding: 0.85rem 1rem;
	background: #f8fafc;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 12px;
	box-sizing: border-box;
}

.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.sgt-ui-pedirprov-add-modal__body {
	padding: 0.75rem 1rem 1rem;
	box-sizing: border-box;
}

.sgt-ui-pedirprov-add-field {
	margin-bottom: 0.65rem;
}

.sgt-ui-pedirprov-add-field .sgt-ui-input,
.sgt-ui-pedirprov-add-field select.sgt-ui-input {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

.sgt-ui-pedirprov-add-form .sgt-ui-pedirprov-add-row.sgt-ui-form__row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	grid-template-columns: unset;
}

.sgt-ui-pedirprov-add-row {
	gap: 0.65rem;
	margin-bottom: 0.65rem;
}

.sgt-ui-pedirprov-add-field--qty {
	min-width: 6rem;
	flex: 0 0 auto;
}

.sgt-ui-pedirprov-add-field--prov {
	min-width: 10rem;
	flex: 1 1 12rem;
}

.sgt-ui-pedirprov-add-label {
	display: block;
	font-size: 12px;
	margin-bottom: 0.25rem;
}

.sgt-ui-pedirprov-add-actions {
	margin: 0;
	padding-top: 0.35rem;
}

.sgt-ui-pedirprov-add-submit {
	width: 100%;
}

@media (min-width: 641px) {
	.sgt-ui-pedirprov-add-submit {
		width: auto;
	}
}

@media (max-width: 640px) {
	.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar .sgt-ui-orders-toolbar__right {
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 100%;
	}

	.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar__tabs {
		width: 100%;
	}
}

/* Pedir proveedor: toolbar en fila (no columna) en móvil/tablet */
@media (max-width: 820px) {
	.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar.sgt-ui-orders-toolbar {
		flex-direction: row !important;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 0.65rem;
	}

	.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar .sgt-ui-orders-toolbar__left.sgt-ui-pedirprov-toolbar__tabs {
		flex-direction: row !important;
		flex-wrap: wrap;
		flex: 1 1 auto;
		min-width: 0;
		align-items: center;
		gap: 0.45rem;
	}

	.sgt-ui-view-pedirprov .sgt-ui-pedirprov-toolbar .sgt-ui-orders-toolbar__right.sgt-ui-pedirprov-toolbar__actions {
		flex-direction: row !important;
		flex-wrap: wrap;
		flex: 0 1 auto;
		justify-content: flex-end;
		align-items: center;
		gap: 0.45rem;
	}
}

/* Pedir proveedor: tarjetas móvil al estilo listado de órdenes */
.sgt-ui-pedirprov-grp-body .sgt-ui-pedirprov-cards {
	padding: 0.65rem 0.75rem 0.85rem;
	box-sizing: border-box;
}

.sgt-ui-pedirprov-grupo-card .sgt-ui-ordercard__row .sgt-ui-ordercard__txt {
	white-space: normal;
	word-break: break-word;
}

.sgt-ui-pedirprov-grupo-stat-lineas {
	font-weight: 900;
	color: #111827;
}

.sgt-ui-pedirprov-grupo-stat-ord {
	color: #6b7280;
	font-weight: 800;
}

.sgt-ui-pedirprov-grupo-listmini {
	margin: 0.35rem 0 0;
	font-size: 0.72rem;
	line-height: 1.45;
	color: #64748b;
	font-weight: 700;
	word-break: break-word;
}

.sgt-ui-pedirprov-grupo-chevbtn {
	flex-shrink: 0;
	align-self: center;
	background: none;
	border: none;
	margin: 0;
	padding: 0 0.1rem;
	font-size: 2rem;
	line-height: 1;
	color: rgba(107, 114, 128, 0.75);
	cursor: pointer;
	font-family: inherit;
}

.sgt-ui-pedirprov-grupo-chevbtn:focus-visible {
	outline: 2px solid rgba(234, 88, 12, 0.65);
	outline-offset: 2px;
	border-radius: 4px;
}

.sgt-ui-modal__panel--pedirprov-detail .sgt-ui-pedirprov-detail-modal__body {
	max-height: min(72vh, 36rem);
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	padding: 0.5rem 1rem 1rem;
	box-sizing: border-box;
}

.sgt-ui-pedirprov-detail-block {
	margin-bottom: 1.1rem;
}

.sgt-ui-pedirprov-detail-block:last-child {
	margin-bottom: 0.25rem;
}

.sgt-ui-pedirprov-detail-blockhead {
	font-weight: 900;
	font-size: 0.88rem;
	color: #0f172a;
	margin: 0 0 0.4rem;
	padding-bottom: 0.25rem;
	border-bottom: 1px solid rgba(15, 23, 42, 0.1);
}

.sgt-ui-pedirprov-detail-tablewrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.sgt-ui-pedirprov-detail-table {
	min-width: 280px;
	font-size: 0.88rem;
}

.sgt-ui-pedirprov-card-supplierline {
	margin: 0 0 0.15rem;
}

.sgt-ui-pedirprov-card-supplier-name {
	display: block;
	font-weight: 900;
	font-size: 1.05rem;
	color: #111827;
	line-height: 1.3;
	word-break: break-word;
}

.sgt-ui-pedirprov-card-selectrow {
	margin-top: 0.5rem;
}

.sgt-ui-pedirprov-card-selectlabel {
	display: block;
	font-size: 12px;
	margin-bottom: 0.3rem;
	font-weight: 700;
}

.sgt-ui-pedirprov-card-selectrow .sgt-ui-pp-assign-prov {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

.sgt-ui-pedirprov-card-delwrap {
	text-align: center;
	margin: 0.35rem 0 0;
}

.sgt-ui-pedirprov-card-delwrap .sgt-ui-linkbtn {
	font-size: 0.82rem;
}

.sgt-ui-pedirprov-grupo-card .sgt-ui-ordercard__foot {
	margin-top: 0.55rem;
	padding-top: 0.55rem;
	align-items: center;
}

.sgt-ui-pedirprov-card-foot.sgt-ui-ordercard__foot {
	align-items: flex-start;
}

.sgt-ui-pedirprov-grupo-card .sgt-ui-pedirprov-card-foot.sgt-ui-ordercard__foot {
	align-items: center;
}

.sgt-ui-pedirprov-card-foot-main {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 0.55rem;
	flex: 1 1 auto;
	min-width: 0;
	padding-top: 0.1rem;
}

.sgt-ui-pedirprov-card-total-units.sgt-ui-ordercard__price {
	flex-shrink: 0;
	font-size: 1.2rem;
	line-height: 1.15;
}

.sgt-ui-pedirprov-card-foot-list {
	display: block;
	font-size: 0.7rem;
	line-height: 1.45;
	color: #64748b;
	font-weight: 700;
	flex: 1 1 auto;
	min-width: 0;
	word-break: break-word;
}

@media (min-width: 821px) {
	.sgt-ui-pedirprov-grp-body .sgt-ui-pedirprov-cards {
		display: none !important;
	}
}

.sgt-ui-muted {
	color: #6b7280;
	font-weight: 700;
	font-size: 0.92rem;
}

.sgt-ui-list {
	margin: 0;
	padding-left: 1.1rem;
}

.sgt-ui-odetail__top {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	margin: 0.25rem 0 0.75rem;
}

.sgt-ui-tabs {
	display: flex;
	gap: 0.4rem;
	margin: 0 0 0.75rem;
	flex-wrap: wrap;
}

.sgt-ui-tab {
	border: 1px solid rgba(0,0,0,0.12);
	background: #fff;
	color: #374151;
	font-weight: 900;
	border-radius: 999px;
	padding: 0.45rem 0.75rem;
	cursor: pointer;
}

.sgt-ui-tab.is-active {
	background: rgba(234, 88, 12, 0.12);
	border-color: rgba(234, 88, 12, 0.35);
	color: #7c2d12;
}

.sgt-ui-tabpane {
	display: none;
}

.sgt-ui-tabpane.is-active {
	display: block;
}

.sgt-ui-photobar {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin-bottom: 0.75rem;
}

.sgt-ui-photogrid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: 0.75rem;
}

.sgt-ui-photo {
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid rgba(0,0,0,0.10);
	background: #fff;
}

.sgt-ui-photo img {
	display: block;
	width: 100%;
	height: 140px;
	object-fit: cover;
	cursor: zoom-in;
}

body.sgt-ui-foto-lightbox-open {
	overflow: hidden;
}

.sgt-ui-foto-lightbox {
	position: fixed;
	inset: 0;
	z-index: 100050;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	padding: max(0.75rem, env(safe-area-inset-top)) max(0.75rem, env(safe-area-inset-right))
		max(0.75rem, env(safe-area-inset-bottom)) max(0.75rem, env(safe-area-inset-left));
	box-sizing: border-box;
}

.sgt-ui-foto-lightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.9);
	cursor: pointer;
}

.sgt-ui-foto-lightbox__panel {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: min(96vw, 1100px);
	max-height: min(92vh, 900px);
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.65rem;
}

.sgt-ui-foto-lightbox__close {
	position: absolute;
	top: 0.35rem;
	right: 0.35rem;
	z-index: 3;
	width: 40px;
	height: 40px;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.35);
	background: rgba(0, 0, 0, 0.45);
	color: #fff;
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.sgt-ui-foto-lightbox__imgwrap {
	flex: 1;
	min-height: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	overflow: hidden;
	background: #0f172a;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

.sgt-ui-foto-lightbox__img {
	display: block;
	max-width: 100%;
	max-height: min(78vh, 800px);
	width: auto;
	height: auto;
	object-fit: contain;
}

.sgt-ui-foto-lightbox__bar {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 2;
}

.sgt-ui-photo__del {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 30px;
	height: 30px;
	border-radius: 999px;
	border: 1px solid rgba(0,0,0,0.15);
	background: rgba(255,255,255,0.92);
	cursor: pointer;
	font-weight: 900;
	line-height: 1;
}

.sgt-ui-odetail__title {
	font-weight: 900;
	color: #111827;
	font-size: 1.05rem;
}

.sgt-ui-odetail__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 0.9rem;
	align-items: start;
}

.sgt-ui-odetail__side {
	position: sticky;
	top: 0.75rem;
}

@media (max-width: 980px) {
	.sgt-ui-odetail__grid {
		grid-template-columns: 1fr;
	}
	.sgt-ui-odetail__side {
		position: static;
	}
}

/* Seguimiento público — tarjeta bajo resumen financiero (detalle de orden) */
.sgt-ui-pubtrack__head {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}
.sgt-ui-pubtrack__head-ico {
	display: inline-flex;
	color: #c2410c;
	flex-shrink: 0;
}
.sgt-ui-pubtrack__title {
	margin: 0;
}
.sgt-ui-pubtrack__body {
	padding-top: 0.65rem;
}
.sgt-ui-pubtrack__hint {
	margin: 0 0 0.75rem;
	font-size: 0.88rem;
	line-height: 1.45;
	color: #6b7280;
}
.sgt-ui-pubtrack__warn {
	margin: 0 0 0.75rem;
	font-size: 0.82rem;
	line-height: 1.4;
	color: #92400e;
	background: #fffbeb;
	border: 1px solid #fcd34d;
	border-radius: 8px;
	padding: 0.5rem 0.6rem;
}
.sgt-ui-pubtrack__actions {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}
.sgt-ui-pubtrack__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	width: 100%;
	box-sizing: border-box;
	padding: 0.55rem 0.75rem;
	border-radius: 10px;
	font-weight: 800;
	font-size: 0.88rem;
	text-decoration: none;
	cursor: pointer;
	border: none;
	transition: filter 0.15s ease, opacity 0.15s ease;
	font-family: inherit;
	line-height: 1.2;
}
.sgt-ui-pubtrack__btn:disabled,
.sgt-ui-pubtrack__btn.is-disabled {
	opacity: 0.45;
	pointer-events: none;
	cursor: not-allowed;
}
.sgt-ui-pubtrack__btn--copy {
	background: #2563eb;
	color: #fff;
}
.sgt-ui-pubtrack__btn--copy:not(:disabled):hover {
	filter: brightness(1.05);
}
.sgt-ui-pubtrack__btn--wa {
	background: #16a34a;
	color: #fff;
}
.sgt-ui-pubtrack__btn--wa:not(:disabled):hover {
	filter: brightness(1.05);
}
.sgt-ui-pubtrack__btn--open {
	background: #fff;
	color: #1f2937;
	border: 1px solid rgba(0,0,0,0.18);
}
.sgt-ui-pubtrack__btn--open:not(.is-disabled):hover {
	background: #f9fafb;
	border-color: rgba(0,0,0,0.22);
}
.sgt-ui-pubtrack__svg {
	flex-shrink: 0;
	display: block;
}
.sgt-ui-pubtrack__feedback {
	margin-top: 0.55rem !important;
	font-size: 0.82rem;
}

.sgt-ui-orders-cards {
	display: none;
}

.sgt-ui-ordercard {
	background: #ffffff;
	border: 1px solid rgba(0,0,0,0.10);
	border-radius: 12px;
	padding: 0.9rem 0.95rem;
	box-shadow: 0 1px 2px rgba(0,0,0,0.06);
}

.sgt-ui-ordercard--sin-tecnico {
	position: relative;
	overflow: hidden;
	border-color: rgba(234, 88, 12, 0.35);
}

.sgt-ui-ordercard__ribbon {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 3;
	width: 7.5rem;
	height: 7.5rem;
	pointer-events: none;
	overflow: hidden;
}

.sgt-ui-ordercard__ribbon::before {
	content: "Sin técnico";
	position: absolute;
	top: 1.15rem;
	right: -2.35rem;
	width: 10.5rem;
	padding: 0.35rem 0;
	background: linear-gradient(135deg, #fb923c 0%, #ea580c 45%, #c2410c 100%);
	color: #fff;
	font-size: 0.62rem;
	font-weight: 900;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	line-height: 1.2;
	transform: rotate(45deg);
	box-shadow: 0 2px 10px rgba(194, 65, 12, 0.35);
	border-top: 1px solid rgba(255, 255, 255, 0.35);
	border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.sgt-ui-orderrow--sin-tecnico td:first-child {
	position: relative;
	padding-left: 0.7rem;
}

.sgt-ui-orderrow--sin-tecnico td:first-child::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	background: linear-gradient(180deg, #fb923c 0%, #ea580c 50%, #c2410c 100%);
	border-radius: 2px 0 0 2px;
	pointer-events: none;
}

.sgt-ui-ordercard + .sgt-ui-ordercard {
	margin-top: 0.75rem;
}

.sgt-ui-clientcard {
	cursor: pointer;
}

.sgt-ui-cc-deudor-card,
.sgt-ui-prov-cc-card {
	cursor: pointer;
}

.sgt-ui-clients-cards .sgt-ui-clientcard + .sgt-ui-clientcard {
	margin-top: 0.75rem;
}

.sgt-ui-ordercard__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0.75rem;
}

.sgt-ui-ordercard__num {
	font-weight: 900;
	color: #111827;
}

.sgt-ui-ordercard__date {
	color: #6b7280;
	font-weight: 800;
	margin-left: 0.35rem;
}

.sgt-ui-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.6rem;
	border-radius: 10px;
	border: 1px solid rgba(0,0,0,0.18);
	background: #f9fafb;
	font-weight: 900;
	font-size: 0.85rem;
	color: #111827;
	white-space: nowrap;
}

.sgt-ui-ordercard__body {
	margin-top: 0.6rem;
}

.sgt-ui-ordercard__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	margin-top: 0.65rem;
	padding: 0.45rem 0.25rem;
	border-radius: 10px;
	background: rgba(249, 250, 251, 0.95);
	border: 1px solid rgba(0, 0, 0, 0.06);
}

.sgt-ui-ordercard__actions .sgt-ui-iconbtn.sgt-ui-ordercard__actbtn {
	min-width: 2.65rem;
	min-height: 2.65rem;
	font-size: 1.15rem;
	border-radius: 10px;
}

.sgt-ui-ordercard__row {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin-top: 0.45rem;
	color: #111827;
	font-weight: 800;
}

.sgt-ui-ordercard__ico {
	width: 22px;
	text-align: center;
	opacity: 0.85;
}

.sgt-ui-ordercard__txt {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sgt-ui-ordercard__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 0.75rem;
	padding-top: 0.75rem;
	border-top: 1px solid rgba(0,0,0,0.06);
}

.sgt-ui-ordercard__price {
	font-weight: 900;
	font-size: 1.25rem;
	color: #16a34a;
}

.sgt-ui-ordercard__chev {
	font-size: 2rem;
	line-height: 1;
	color: rgba(107,114,128,0.7);
}

@media (max-width: 480px) {
	.sgt-ui-mainmenu-topbar-inner {
		flex-direction: row !important;
		align-items: center;
		flex-wrap: nowrap;
	}
	.sgt-ui-mainmenu-brand {
		min-width: 0;
	}
	.sgt-ui-mainmenu-nav {
		flex-wrap: nowrap !important;
		justify-content: flex-start !important;
		flex-direction: row !important;
	}
	.sgt-ui-mainmenu-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.sgt-ui-mainmenu-banner {
		flex-direction: column;
		align-items: flex-start;
	}
	.sgt-ui-mainmenu-banner-cta {
		white-space: normal;
	}
}

@media (max-width: 520px) {
	.sgt-ui-mainmenu-cards {
		grid-template-columns: 1fr;
	}
	.sgt-ui-mainmenu-card a {
		height: 108px;
	}
}

@media (max-width: 820px) {
	/* Topbar colapsable en móvil */
	.sgt-ui-mainmenu-topbar-inner {
		flex-wrap: wrap !important;
	}
	.sgt-ui-mainmenu-hamb {
		display: inline-flex;
		margin-left: auto;
	}
	.sgt-ui-mainmenu-nav {
		display: none;
		width: 100%;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0.35rem;
		padding: 0.65rem 0.25rem 0.15rem;
		border-top: 1px solid rgba(255,255,255,0.08);
	}
	.sgt-ui-mainmenu.is-navopen .sgt-ui-mainmenu-nav {
		display: flex;
	}
	.sgt-ui-mainmenu-link {
		padding: 0.6rem 0.65rem;
		background: rgba(255,255,255,0.04);
		border: 1px solid rgba(255,255,255,0.08);
		color: #e2e4e7;
	}
	.sgt-ui-mainmenu-link:hover,
	.sgt-ui-mainmenu-link.is-active {
		background: rgba(234, 88, 12, 0.18);
		color: #ffd7c2;
	}
}

@media (max-width: 820px) {
	/* En móvil/tablet: cards como la referencia, ocultar tabla */
	.sgt-ui-view-orders__tablewrap:not(.sgt-ui-cc-movs-wrap):not(.sgt-ui-prov-cc-tablewrap) {
		display: none;
	}
	/* Ventas/Compras/Catálogo dentro de Productos: tabla con scroll (sin listado móvil en cards) */
	.sgt-ui-prods-ventas .sgt-ui-view-orders__tablewrap:not(.sgt-ui-cc-movs-wrap):not(.sgt-ui-prov-cc-tablewrap),
	.sgt-ui-compra-list .sgt-ui-view-orders__tablewrap:not(.sgt-ui-cc-movs-wrap):not(.sgt-ui-prov-cc-tablewrap),
	.sgt-ui-prods-catalog .sgt-ui-view-orders__tablewrap:not(.sgt-ui-cc-movs-wrap):not(.sgt-ui-prov-cc-tablewrap),
	/* Personal: sin tarjetas móviles */
	.sgt-ui-view-usuarios .sgt-ui-view-orders__tablewrap {
		display: block !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		margin-left: -0.35rem;
		margin-right: -0.35rem;
		padding-left: 0.35rem;
		padding-right: 0.35rem;
	}
	.sgt-ui-prods-ventas .sgt-ui-view-orders__table,
	.sgt-ui-compra-list .sgt-ui-view-orders__table,
	.sgt-ui-prods-catalog .sgt-ui-view-orders__table {
		min-width: 520px;
	}
	.sgt-ui-view-usuarios .sgt-ui-view-orders__table {
		min-width: 640px;
	}
	/* Cuenta corriente: mantener tabla con scroll horizontal */
	.sgt-ui-view-cc-cliente .sgt-ui-cc-movs-wrap {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		margin-left: -0.35rem;
		margin-right: -0.35rem;
		padding-left: 0.35rem;
		padding-right: 0.35rem;
	}
	.sgt-ui-view-cc-cliente .sgt-ui-cc-movs-wrap .sgt-ui-view-orders__table {
		min-width: 640px;
	}
	/* Finanzas — proveedores CC: misma tabla con scroll */
	.sgt-ui-view-prov-cc .sgt-ui-prov-cc-tablewrap {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		margin-left: -0.35rem;
		margin-right: -0.35rem;
		padding-left: 0.35rem;
		padding-right: 0.35rem;
	}
	.sgt-ui-view-prov-cc .sgt-ui-prov-cc-tablewrap .sgt-ui-view-orders__table {
		min-width: 560px;
	}
	.sgt-ui-orders-cards,
	.sgt-ui-clients-cards {
		display: block;
	}
	/* Toolbar similar a captura: buscador arriba, acciones abajo */
	.sgt-ui-orders-toolbar {
		flex-direction: column;
		align-items: stretch;
		gap: 0.75rem;
	}
	.sgt-ui-orders-toolbar__left {
		flex-direction: column;
		align-items: stretch;
		gap: 0.5rem;
	}
	.sgt-ui-orders-search {
		flex: none;
		min-width: 0;
	}
	.sgt-ui-orders-tecnico-select {
		width: 100%;
		max-width: none;
	}
	.sgt-ui-orders-toolbar__right {
		justify-content: space-between;
	}
}

/* Visitante: acceso en la misma página (formulario integrado). */
.sgt-ui-mainmenu--guest-login .sgt-ui-mainmenu-brand--static {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	cursor: default;
	text-decoration: none;
	color: inherit;
}

.sgt-ui-mainmenu-guest {
	max-width: 22rem;
	margin: 2rem auto;
	padding: 1.75rem 1.5rem;
	border-radius: 14px;
	background: #fff;
	border: 1px solid rgba(15, 23, 42, 0.1);
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
	text-align: left;
}
.sgt-ui-mainmenu-guest__title {
	margin: 0 0 0.5rem;
	font-size: 1.35rem;
	font-weight: 800;
	color: #111827;
}
.sgt-ui-mainmenu-guest__text {
	margin: 0 0 1.25rem;
	font-size: 0.95rem;
	line-height: 1.45;
	color: #4b5563;
}
.sgt-ui-mainmenu-guest__err {
	margin: 0 0 1rem;
	padding: 0.55rem 0.75rem;
	border-radius: 8px;
	font-size: 0.9rem;
	font-weight: 600;
	color: #b91c1c;
	background: #fef2f2;
	border: 1px solid #fecaca;
}
.sgt-ui-mainmenu-guest__form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}
.sgt-ui-mainmenu-guest__label {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	margin: 0;
	font-size: 0.88rem;
	font-weight: 600;
	color: #374151;
}
.sgt-ui-mainmenu-guest__input {
	width: 100%;
	box-sizing: border-box;
	padding: 0.55rem 0.75rem;
	border-radius: 8px;
	border: 1px solid rgba(15, 23, 42, 0.15);
	font: inherit;
}
.sgt-ui-mainmenu-guest__remember {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin: 0;
	font-size: 0.88rem;
	font-weight: 600;
	color: #4b5563;
	cursor: pointer;
}
.sgt-ui-mainmenu-guest__submit {
	margin-top: 0.25rem;
	padding: 0.62rem 1rem;
	border: none;
	border-radius: 10px;
	font: inherit;
	font-weight: 800;
	cursor: pointer;
	color: #fff;
	background: linear-gradient(90deg, #f97316, #ea580c);
}
.sgt-ui-mainmenu-guest__submit:hover,
.sgt-ui-mainmenu-guest__submit:focus {
	filter: brightness(1.05);
	outline: none;
}

/* Cerrar sesión: mismo aspecto que los ítems del menú usuario. */
button.sgt-ui-mainmenu-user-dropdown__item.sgt-ui-mainmenu-logout-btn {
	width: 100%;
	border: none;
	background: transparent;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

/* --- Estadísticas financieras (Finanzas SPA) --- */
.sgt-ui-finstats {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 0 1.5rem;
}

.sgt-ui-finstats-title {
	margin-top: 0.2rem;
	margin-bottom: 0.75rem;
}

.sgt-ui-finstats-tabs {
	display: flex;
	gap: 0;
	border-bottom: 2px solid rgba(15, 23, 42, 0.08);
	margin-bottom: 1rem;
}

.sgt-ui-finstats-tab {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.65rem 1.1rem 0.75rem;
	background: transparent;
	border: none;
	border-bottom: 3px solid transparent;
	margin-bottom: -2px;
	font: inherit;
	font-weight: 700;
	font-size: 0.95rem;
	color: #64748b;
	cursor: pointer;
}

.sgt-ui-finstats-tab:hover {
	color: #334155;
}

.sgt-ui-finstats-tab.is-active {
	color: #ea580c;
	border-bottom-color: #ea580c;
}

.sgt-ui-finstats-tab-ico {
	font-size: 1.1rem;
	line-height: 1;
}

.sgt-ui-finstats-card {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
	border: 1px solid rgba(15, 23, 42, 0.06);
	padding: 1rem 1.15rem;
	margin-bottom: 1rem;
}

.sgt-ui-finstats-filters .sgt-ui-finstats-filter-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem 1rem;
}

.sgt-ui-finstats-filters .sgt-ui-finstats-filter-row--cat {
	margin-top: 0.75rem;
	padding-top: 0.75rem;
	border-top: 1px solid rgba(15, 23, 42, 0.06);
}

.sgt-ui-finstats-lbl {
	font-size: 0.8rem;
	font-weight: 700;
	color: #475569;
}

.sgt-ui-finstats-select,
.sgt-ui-finstats-date {
	min-width: 0;
	max-width: 100%;
}

.sgt-ui-finstats-date {
	width: 10.5rem;
}

.sgt-ui-finstats-cat-clear {
	font-size: 0.82rem;
	padding: 0.45rem 0.75rem;
}

.sgt-ui-finstats-kpis {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.75rem;
	margin-bottom: 1rem;
}

@media (max-width: 900px) {
	.sgt-ui-finstats-kpis {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.sgt-ui-finstats-kpis {
		grid-template-columns: 1fr;
	}
}

.sgt-ui-finstats-kpi {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	text-align: left;
	gap: 0.25rem;
	padding: 1rem 1rem 0.9rem;
	background: #fff;
	border-radius: 12px;
	border: 2px solid rgba(15, 23, 42, 0.08);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
	cursor: pointer;
	font: inherit;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.sgt-ui-finstats-kpi:hover {
	border-color: rgba(59, 130, 246, 0.35);
	box-shadow: 0 2px 8px rgba(59, 130, 246, 0.08);
}

.sgt-ui-finstats-kpi.is-selected {
	border-color: #3b82f6;
	box-shadow: 0 2px 10px rgba(59, 130, 246, 0.12);
}

.sgt-ui-finstats-kpi-ico {
	width: 2rem;
	height: 2rem;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	font-weight: 800;
	margin-bottom: 0.15rem;
}

.sgt-ui-finstats-kpi-ico--blue {
	background: #eff6ff;
	color: #2563eb;
}

.sgt-ui-finstats-kpi-ico--green {
	background: #ecfdf5;
	color: #15803d;
}

.sgt-ui-finstats-kpi-ico--red {
	background: #fef2f2;
	color: #b91c1c;
}

.sgt-ui-finstats-kpi-ico--dark {
	background: #f8fafc;
	color: #0f172a;
}

.sgt-ui-finstats-kpi-val {
	font-size: 1.35rem;
	font-weight: 800;
	color: #0f172a;
	line-height: 1.2;
}

.sgt-ui-finstats-kpi-sub {
	font-size: 0.78rem;
	color: #64748b;
	line-height: 1.3;
}

.sgt-ui-finstats-kpi-lbl {
	font-size: 0.82rem;
	font-weight: 700;
	color: #334155;
	margin-top: 0.15rem;
}

.sgt-ui-finstats-chartcard {
	padding: 0.85rem 1rem 1rem;
}

.sgt-ui-finstats-chart-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.5rem;
}

.sgt-ui-finstats-chart-title {
	font-size: 1rem;
	font-weight: 800;
	color: #0f172a;
}

.sgt-ui-finstats-bucket-toggle {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
}

.sgt-ui-finstats-bucket-lbl {
	font-size: 0.78rem;
	font-weight: 700;
	color: #64748b;
	margin-right: 0.25rem;
}

.sgt-ui-finstats-bucket-btn {
	padding: 0.35rem 0.65rem;
	border-radius: 8px;
	border: 1px solid rgba(15, 23, 42, 0.12);
	background: #fff;
	font: inherit;
	font-size: 0.78rem;
	font-weight: 700;
	color: #475569;
	cursor: pointer;
}

.sgt-ui-finstats-bucket-btn:hover {
	background: #f8fafc;
}

.sgt-ui-finstats-bucket-btn.is-active {
	background: #3b82f6;
	border-color: #2563eb;
	color: #fff;
}

.sgt-ui-finstats-chart-wrap {
	min-height: 200px;
	overflow-x: auto;
}

.sgt-ui-finstats-chart-svg {
	width: 100%;
	height: auto;
	display: block;
}

.sgt-ui-finstats-chart-line {
	stroke: #3b82f6;
	stroke-width: 2.25;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.sgt-ui-finstats-chart-dot {
	fill: #fff;
	stroke: #2563eb;
	stroke-width: 2;
}

.sgt-ui-finstats-chart-axis {
	stroke: rgba(15, 23, 42, 0.12);
	stroke-width: 1;
}

.sgt-ui-finstats-chart-ylbl {
	font-size: 10px;
	fill: #64748b;
}

.sgt-ui-finstats-chart-xlbl {
	font-size: 9px;
	fill: #64748b;
}

.sgt-ui-finstats-chart-empty {
	padding: 2rem 1rem;
	text-align: center;
}

/* Estadísticas de taller (pestañas y gráficos SVG) */
.sgt-ui-tallerstats-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-bottom: 1rem;
}

.sgt-ui-tallerstats-tab {
	padding: 0.45rem 0.95rem;
	border-radius: 8px;
	border: 1px solid rgba(15, 23, 42, 0.12);
	background: #fff;
	font: inherit;
	font-size: 0.88rem;
	font-weight: 700;
	color: #475569;
	cursor: pointer;
}

.sgt-ui-tallerstats-tab:hover {
	background: #f8fafc;
}

.sgt-ui-tallerstats-tab.is-active {
	background: #0f766e;
	border-color: #0d9488;
	color: #fff;
}

.sgt-ui-taller-chartgrid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}

@media (min-width: 1024px) {
	.sgt-ui-taller-chartgrid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sgt-ui-taller-chartcard--span-full {
		grid-column: 1 / -1;
	}
}

.sgt-ui-taller-chartcard .sgt-ui-taller-chartbody {
	min-height: 120px;
}

.sgt-ui-taller-chartbody--vert {
	min-height: 260px;
}

.sgt-ui-taller-chartbody--scroll {
	overflow-x: auto;
}

.sgt-ui-taller-pie-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1rem;
}

.sgt-ui-taller-pie-svg {
	max-width: 208px;
	flex-shrink: 0;
}

.sgt-ui-taller-pie-legend {
	flex: 1;
	min-width: 160px;
	font-size: 0.82rem;
}

.sgt-ui-taller-pie-legrow {
	display: flex;
	align-items: baseline;
	gap: 0.35rem;
	margin-bottom: 0.35rem;
	line-height: 1.3;
}

.sgt-ui-taller-pie-swatch {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 2px;
	flex-shrink: 0;
	margin-top: 0.2rem;
}

.sgt-ui-taller-pie-leglbl {
	flex: 1;
	color: #334155;
}

.sgt-ui-taller-pie-legval {
	color: #64748b;
	font-weight: 600;
	white-space: nowrap;
}

.sgt-ui-taller-bar-lbl {
	font-size: 12px;
	font-weight: 600;
	fill: #334155;
}

.sgt-ui-taller-bar-val {
	font-size: 12px;
	font-weight: 700;
	fill: #475569;
}

.sgt-ui-taller-chart-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 0.5rem;
	font-size: 0.78rem;
	font-weight: 600;
	color: #64748b;
}

.sgt-ui-taller-lg {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.sgt-ui-taller-lg-sq {
	display: inline-block;
	width: 14px;
	height: 10px;
	border-radius: 2px;
}

.sgt-ui-taller-lg-sq--ing {
	background: #94a3b8;
}

.sgt-ui-taller-lg-sq--ent {
	background: #0f766e;
}

.sgt-ui-taller-bubbles {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.65rem;
	padding: 0.35rem 0;
}

.sgt-ui-taller-bubble {
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #fff;
	font-weight: 700;
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.12);
	padding: 0.35rem;
	box-sizing: border-box;
}

.sgt-ui-taller-bubble-n {
	font-size: 1rem;
	line-height: 1.1;
}

.sgt-ui-taller-bubble-lbl {
	font-size: 0.62rem;
	font-weight: 600;
	line-height: 1.15;
	opacity: 0.95;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	padding: 0 0.2rem;
}

.sgt-ui-taller-th-acc {
	white-space: nowrap;
}

.sgt-ui-taller-td-acc {
	vertical-align: top;
	min-width: 9.5rem;
}

.sgt-ui-taller-acciones {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.35rem;
}

.sgt-ui-taller-acciones .sgt-ui-btn {
	font-size: 0.8rem;
	padding: 0.28rem 0.5rem;
	justify-content: center;
	text-align: center;
}

/* Toast (stock / proveedor al agregar ítems) */
body.sgt-ui-mainmenu-page .sgt-ui-toast {
	position: fixed;
	bottom: 1.25rem;
	left: 50%;
	transform: translateX(-50%) translateY(120%);
	max-width: min(420px, calc(100vw - 2rem));
	padding: 0.65rem 1rem;
	background: #1e293b;
	color: #f8fafc;
	font-size: 13px;
	line-height: 1.4;
	border-radius: 8px;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.22);
	z-index: 100050;
	opacity: 0;
	transition: opacity 0.25s ease, transform 0.35s ease;
	pointer-events: none;
	font-family: var(--sgt-ui-font-sans, ui-sans-serif, system-ui, sans-serif);
}

body.sgt-ui-mainmenu-page .sgt-ui-toast.sgt-ui-toast--visible {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

body.sgt-ui-mainmenu-page .sgt-ui-toast.sgt-ui-toast--out {
	opacity: 0;
	transform: translateX(-50%) translateY(40%);
}

/* --- Vista Agenda (calendario mensual) --- */
.sgt-ui-view-agenda {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0.5rem 1rem 1.5rem;
	box-sizing: border-box;
}

.sgt-ui-agenda-title {
	font-size: 1.35rem;
	font-weight: 700;
	margin: 0.25rem 0 0.75rem;
	color: #111827;
}

.sgt-ui-agenda-tabs {
	display: inline-flex;
	gap: 0;
	margin-bottom: 1rem;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, 0.1);
	background: #fff;
}

.sgt-ui-agenda-tab {
	border: 0;
	background: #fff;
	padding: 0.45rem 1rem;
	font-size: 0.88rem;
	cursor: pointer;
	color: #475569;
	font-family: inherit;
	border-right: 1px solid rgba(0, 0, 0, 0.08);
}

.sgt-ui-agenda-tab:last-child {
	border-right: 0;
}

.sgt-ui-agenda-tab.is-active {
	background: #374151;
	color: #fff;
}

.sgt-ui-agenda-card {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	padding: 0.85rem 1rem 1rem;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.sgt-ui-agenda-cal-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.65rem;
}

.sgt-ui-agenda-cal-title {
	flex: 1;
	text-align: center;
	font-weight: 600;
	font-size: 1.05rem;
	color: #111827;
}

.sgt-ui-agenda-cal-head-right {
	display: flex;
	align-items: center;
	gap: 0.35rem;
}

.sgt-ui-agenda-navbtn {
	border: 1px solid rgba(0, 0, 0, 0.12);
	background: #fff;
	border-radius: 6px;
	width: 2rem;
	height: 2rem;
	line-height: 1;
	font-size: 1.1rem;
	cursor: pointer;
	color: #334155;
	font-family: inherit;
}

.sgt-ui-agenda-hoy {
	border: 1px solid rgba(0, 0, 0, 0.12);
	background: #f1f5f9;
	border-radius: 6px;
	padding: 0.35rem 0.65rem;
	font-size: 0.85rem;
	cursor: pointer;
	color: #334155;
	font-family: inherit;
}

.sgt-ui-agenda-grid {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	font-size: 0.78rem;
}

.sgt-ui-agenda-grid th {
	font-weight: 600;
	color: #94a3b8;
	text-align: center;
	padding: 0.35rem 0.15rem;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.sgt-ui-agenda-grid td {
	vertical-align: top;
	border: 1px solid rgba(0, 0, 0, 0.06);
	padding: 0.25rem;
	min-height: 4.5rem;
	height: 5.5rem;
	background: #fff;
}

.sgt-ui-agenda-cell.is-out {
	background: #fafafa;
	border-color: transparent;
}

.sgt-ui-agenda-cell-num {
	font-weight: 600;
	color: #64748b;
	margin-bottom: 0.15rem;
}

/* Día con entrega estimada: fondo azul muy claro (leyenda) */
.sgt-ui-agenda-cell.is-entrega-day:not(.is-trabajo-day) {
	background: #eff6ff;
}

.sgt-ui-agenda-cell.is-entrega-day:not(.is-trabajo-day) .sgt-ui-agenda-cell-num {
	color: #2563eb;
}

/* Día con ingreso: fondo naranja muy claro */
.sgt-ui-agenda-cell.is-trabajo-day:not(.is-entrega-day) {
	background: #fff7ed;
}

.sgt-ui-agenda-cell.is-trabajo-day:not(.is-entrega-day) .sgt-ui-agenda-cell-num {
	color: #c2410c;
}

/* Mismo día con ingreso y entrega */
.sgt-ui-agenda-cell.is-entrega-day.is-trabajo-day {
	background: linear-gradient(155deg, #eff6ff 0%, #eff6ff 45%, #fff7ed 55%, #fff7ed 100%);
}

.sgt-ui-agenda-cell.is-entrega-day.is-trabajo-day .sgt-ui-agenda-cell-num {
	color: #1e293b;
}

/* Hoy: borde interior; solo relleno melocotón si no hay marca entrega/trabajo */
.sgt-ui-agenda-cell.is-today {
	box-shadow: inset 0 0 0 2px rgba(249, 115, 22, 0.85);
}

.sgt-ui-agenda-cell.is-today:not(.is-entrega-day):not(.is-trabajo-day) {
	background: #ffedd5;
	box-shadow: none;
}

.sgt-ui-agenda-cell.is-today:not(.is-entrega-day):not(.is-trabajo-day) .sgt-ui-agenda-cell-num {
	color: #ea580c;
}

.sgt-ui-agenda-cell.is-today.is-entrega-day:not(.is-trabajo-day) .sgt-ui-agenda-cell-num {
	color: #2563eb;
}

.sgt-ui-agenda-cell.is-today.is-trabajo-day:not(.is-entrega-day) .sgt-ui-agenda-cell-num {
	color: #c2410c;
}

.sgt-ui-agenda-cell-events {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	min-height: 0;
}

.sgt-ui-agenda-chip {
	display: block;
	width: 100%;
	text-align: left;
	border: 0;
	border-radius: 4px;
	padding: 0.2rem 0.28rem;
	font-size: 0.72rem;
	line-height: 1.2;
	cursor: pointer;
	font-family: inherit;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sgt-ui-agenda-chip:focus {
	outline: none;
}

.sgt-ui-agenda-chip:focus-visible {
	box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.55);
}

.sgt-ui-agenda-chip--trabajo:focus-visible {
	box-shadow: 0 0 0 2px rgba(234, 88, 12, 0.45);
}

.sgt-ui-agenda-chip--entrega {
	background: #dbeafe;
	color: #1e40af;
}

.sgt-ui-agenda-chip--trabajo {
	background: #ffedd5;
	color: #9a3412;
}

.sgt-ui-agenda-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 0.85rem;
	font-size: 0.82rem;
	color: #475569;
	align-items: center;
}

.sgt-ui-agenda-legend__item {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.sgt-ui-agenda-legend__sw {
	width: 12px;
	height: 12px;
	border-radius: 2px;
	display: inline-block;
}

.sgt-ui-agenda-legend__sw--entrega {
	background: #bfdbfe;
	border: 1px solid #3b82f6;
}

.sgt-ui-agenda-legend__sw--trabajo {
	background: #fed7aa;
	border: 1px solid #ea580c;
}

@media (max-width: 700px) {
	.sgt-ui-agenda-grid td {
		height: auto;
		min-height: 3.5rem;
		padding: 0.15rem;
	}

	.sgt-ui-agenda-chip {
		font-size: 0.65rem;
		padding: 0.12rem 0.18rem;
	}
}

