.cartninja-wrap {
	--cartninja-primary: #0EA5A0;
	--cartninja-primary-hover: #0C8A86;
	--cartninja-title: #0F2B2B;
	--cartninja-border: #C2E8E7;
	--cartninja-muted: #4A6F6F;
	--cartninja-toggle-off: #9AB8B8;
	--cartninja-bg: #F0FAFA;
	--cartninja-card: #FFFFFF;
	--cartninja-success: #10B981;
	--cartninja-success-bg: #ECFDF5;
	--cartninja-warning: #F59E0B;
	--cartninja-warning-bg: #FFFBEB;
	--cartninja-error: #EF4444;
	--cartninja-error-bg: #FEF2F2;
	--cartninja-accent: #FF6B4A;
	max-width: none;
	margin-right: 20px;
	border-radius: 8px;
}

.cartninja-wrap .button-primary,
.cartninja-wrap .submit .button-primary {
	background: var(--cartninja-primary);
	border-color: var(--cartninja-primary);
	color: #fff;
	text-shadow: none;
	box-shadow: none
}

.cartninja-wrap .button-primary:hover,
.cartninja-wrap .button-primary:focus,
.cartninja-wrap .submit .button-primary:hover,
.cartninja-wrap .submit .button-primary:focus {
	background: var(--cartninja-primary-hover);
	border-color: var(--cartninja-primary-hover);
	color: #fff
}

.cartninja-wrap input[type=text],
.cartninja-wrap input[type=password],
.cartninja-wrap input[type=url],
.cartninja-wrap input[type=number],
.cartninja-wrap input[type=email],
.cartninja-wrap select,
.cartninja-wrap textarea {
	border-color: var(--cartninja-border);
	border-radius: 6px
}

.cartninja-wrap input:focus,
.cartninja-wrap select:focus,
.cartninja-wrap textarea:focus {
	border-color: var(--cartninja-primary);
	box-shadow: 0 0 0 1px var(--cartninja-primary);
	outline: 2px solid transparent
}

.cartninja-wrap input[type=checkbox] {
	accent-color: var(--cartninja-primary)
}

.cartninja-wrap input[type=checkbox]:not(:checked) {
	accent-color: var(--cartninja-toggle-off)
}

.cartninja-wrap .notice-success {
	background: var(--cartninja-success-bg);
	border-left-color: var(--cartninja-success)
}

.cartninja-wrap .notice-warning {
	background: var(--cartninja-warning-bg);
	border-left-color: var(--cartninja-warning)
}

.cartninja-wrap .notice-error {
	background: var(--cartninja-error-bg);
	border-left-color: var(--cartninja-error)
}

.cartninja-card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 20px;
	margin: 24px 0
}

.cartninja-card,
.cartninja-settings-panel {
	background: var(--cartninja-card);
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	padding: 24px;
	box-shadow: 0 10px 24px rgba(15, 43, 43, .06)
}

.cartninja-card h3 {
	margin: 0 0 8px;
	font-size: 14px;
	color: var(--cartninja-muted)
}

.cartninja-card strong {
	display: block;
	font-size: 28px;
	line-height: 1.2;
	color: var(--cartninja-primary)
}

.cartninja-card-grid--dashboard .cartninja-stat-card:last-child strong {
	color: var(--cartninja-success)
}

.cartninja-page-hero {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	align-items: stretch;
	padding: 28px 30px;
	border-radius: 8px;
	color: #fff;
	background: linear-gradient(135deg, var(--cartninja-primary) 0%, var(--cartninja-primary-hover) 100%);
	box-shadow: 0 18px 36px rgba(14, 165, 160, .18)
}

.cartninja-page-hero--dashboard,
.cartninja-page-hero--carts {
	background: linear-gradient(135deg, var(--cartninja-primary) 0%, var(--cartninja-primary-hover) 100%)
}

.cartninja-page-hero__content {
	max-width: 700px
}

.cartninja-page-hero__eyebrow {
	display: inline-block;
	margin-bottom: 10px;
	padding: 6px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .16);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase
}

.cartninja-hero-title {
	margin: 0 0 10px;
	color: #fff;
	font-size: 34px;
	font-weight: 600;
	line-height: 1.15
}

.cartninja-page-hero p {
	margin: 0;
	color: rgba(255, 255, 255, .9);
	font-size: 15px;
	line-height: 1.6
}

.cartninja-page-hero__badge {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	min-width: 250px;
	padding: 18px;
	border-radius: 8px;
	background: rgba(255, 255, 255, .16);
	backdrop-filter: blur(4px)
}

.cartninja-page-hero__badge .dashicons {
	font-size: 24px;
	width: 24px;
	height: 24px;
	color: #fff
}

.cartninja-page-hero__badge strong {
	display: block;
	margin-bottom: 4px;
	color: #fff;
	font-size: 22px
}

.cartninja-page-hero__badge p {
	margin: 0;
	color: rgba(255, 255, 255, .84);
	font-size: 13px
}

.cartninja-settings-hero {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	align-items: stretch;
	padding: 28px 30px;
	border-radius: 8px;
	background: linear-gradient(135deg, var(--cartninja-primary) 0%, var(--cartninja-primary-hover) 100%);
	color: #fff;
	box-shadow: 0 18px 36px rgba(14, 165, 160, .18)
}

.cartninja-settings-hero__content {
	max-width: 640px
}

.cartninja-settings-hero__eyebrow {
	display: inline-block;
	margin-bottom: 10px;
	padding: 6px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .16);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase
}

.cartninja-settings-hero p {
	margin: 0;
	color: rgba(255, 255, 255, .88);
	font-size: 15px;
	line-height: 1.6
}

.cartninja-settings-hero__meta {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	min-width: 260px
}

.cartninja-settings-meta-card {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 16px 18px;
	border-radius: 8px;
	background: rgba(255, 255, 255, .16);
	backdrop-filter: blur(4px)
}

.cartninja-settings-meta-card .dashicons {
	font-size: 22px;
	width: 22px;
	height: 22px;
	color: #fff
}

.cartninja-settings-meta-card strong {
	display: block;
	margin-bottom: 4px;
	color: #fff;
	font-size: 15px
}

.cartninja-settings-meta-card p {
	margin: 0;
	color: rgba(255, 255, 255, .84);
	font-size: 13px
}

.cartninja-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 22px 0
}

.cartninja-tabs a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	padding: 12px 16px;
	border-radius: 8px 8px 0 0;
	border: 1px solid var(--cartninja-border);
	border-bottom: 3px solid transparent;
	background: var(--cartninja-card);
	color: var(--cartninja-muted);
	font-weight: 600;
	box-shadow: 0 3px 10px rgba(15, 43, 43, .04);
	transition: all .18s ease
}

.cartninja-tabs a:hover {
	border-color: var(--cartninja-primary);
	background: #fff;
	color: var(--cartninja-title)
}

.cartninja-tabs a .dashicons {
	font-size: 18px;
	width: 18px;
	height: 18px
}

.cartninja-tabs a.is-active {
	background: var(--cartninja-primary);
	border-color: var(--cartninja-primary);
	border-bottom-color: var(--cartninja-primary-hover);
	color: #fff
}

.cartninja-settings-panel {
	padding: 28px
}

.cartninja-settings-section {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 26px;
	padding: 24px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-card)
}

.cartninja-settings-section--soft {
	background: var(--cartninja-warning-bg);
	border-color: #FCD58D
}

.cartninja-settings-section--nested {
	margin-bottom: 0;
	background: var(--cartninja-bg)
}

.cartninja-settings-section__head {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	margin-bottom: 0
}

.cartninja-settings-section__head>.dashicons {
	width: 42px;
	height: 42px;
	font-size: 42px;
	color: var(--cartninja-primary)
}

.cartninja-settings-section__head h2,
.cartninja-editor-wrap h3 {
	margin: 0 0 6px;
	font-size: 20px;
	line-height: 1.2;
	color: var(--cartninja-title)
}

.cartninja-settings-section__head p,
.cartninja-editor-wrap .description,
.cartninja-field-card p,
.cartninja-helper-row p {
	margin: 0;
	color: var(--cartninja-muted);
	line-height: 1.55
}

.cartninja-field-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px
}

.cartninja-color-field-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px
}

.cartninja-color-field-grid--solid {
	grid-template-columns: repeat(2, minmax(0, 1fr))
}

.cartninja-field-card {
	padding: 18px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-card)
}

.cartninja-field-card--full {
	margin-top: 0
}

.cartninja-field-card label {
	display: block;
	margin-bottom: 10px;
	font-weight: 700;
	color: var(--cartninja-title)
}

.cartninja-label-with-help {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	vertical-align: middle
}

.cartninja-help {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	color: var(--cartninja-muted);
	cursor: help;
	outline: 0
}

.cartninja-help>.dashicons {
	width: 18px;
	height: 18px;
	font-size: 18px;
	line-height: 1
}

.cartninja-help:hover,
.cartninja-help:focus {
	color: var(--cartninja-primary)
}

.cartninja-help__text {
	position: absolute;
	left: 50%;
	bottom: calc(100% + 8px);
	z-index: 20;
	display: none;
	width: 240px;
	padding: 9px 10px;
	border-radius: 6px;
	background: #102A2A;
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.4;
	text-align: left;
	white-space: normal;
	box-shadow: 0 10px 24px rgba(15, 43, 43, .18);
	transform: translateX(-50%)
}

.cartninja-help__text:after {
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	border: 6px solid transparent;
	border-top-color: #102A2A;
	transform: translateX(-50%)
}

.cartninja-help:hover .cartninja-help__text,
.cartninja-help:focus .cartninja-help__text {
	display: block
}

.cartninja-input-wrap {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 0 12px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: #fff
}

.cartninja-input-wrap:focus-within {
	border-color: var(--cartninja-primary);
	box-shadow: 0 0 0 1px var(--cartninja-primary)
}

.cartninja-input-wrap .dashicons {
	color: var(--cartninja-primary)
}

.cartninja-input-wrap input {
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	min-height: 44px;
	padding-left: 0;
	width: 100%
}

.cartninja-input-unit {
	flex: 0 0 auto;
	color: var(--cartninja-muted);
	font-weight: 600
}

.cartninja-toggle-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px
}

.cartninja-toggle-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-card);
	cursor: pointer;
	transition: all .18s ease
}

.cartninja-toggle-card:hover {
	border-color: var(--cartninja-primary);
	box-shadow: 0 8px 20px rgba(14, 165, 160, .1)
}

.cartninja-toggle-card input {
	flex: 0 0 auto;
	margin: 0
}

.cartninja-toggle-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	border-radius: 8px;
	background: var(--cartninja-bg);
	color: var(--cartninja-primary);
	font-size: 20px
}

.cartninja-toggle-card__content {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0
}

.cartninja-toggle-card__content strong {
	color: var(--cartninja-title);
	line-height: 1.2;
	white-space: nowrap
}

.cartninja-toggle-card__content small {
	color: var(--cartninja-muted);
	line-height: 1.45
}

.cartninja-helper-row {
	display: flex;
	justify-content: space-between;
	gap: 14px;
	align-items: center;
	margin-top: 10px
}

.cartninja-editor-wrap {
	padding: 20px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-card)
}

.cartninja-editor-wrap .wp-editor-wrap {
	margin-top: 14px
}

.cartninja-template-preview {
	margin-top: 12px;
	font-family: Consolas, Monaco, monospace
}

.cartninja-upgrade-list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 16px;
	margin-top: 20px
}

.cartninja-upgrade-item {
	padding: 18px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-card)
}

.cartninja-lock {
	color: var(--cartninja-error);
	margin-right: 6px
}

.cartninja-preview-box,
.cartninja-cart-details {
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-bg);
	padding: 16px;
	margin-top: 16px
}

.cartninja-popup-builder {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 460px);
	gap: 22px;
	align-items: start
}

.cartninja-popup-builder__controls {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0
}

.cartninja-popup-content-panel {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 20px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-bg)
}

.cartninja-popup-content-panel__head h3 {
	margin: 0 0 6px;
	color: var(--cartninja-title);
	font-size: 18px
}

.cartninja-popup-content-panel__head p {
	margin: 0;
	color: var(--cartninja-muted);
	line-height: 1.5
}

.cartninja-popup-builder__preview {
	position: sticky;
	top: 32px;
	max-height: calc(100vh - 52px);
	overflow: auto
}

.cartninja-popup-preview {
	margin-top: 4px
}

.cartninja-popup-preview__modes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-bottom: 10px
}

.cartninja-popup-preview__modes .button {
	width: 100%;
	border-color: var(--cartninja-border);
	color: var(--cartninja-muted);
	text-align: center
}

.cartninja-popup-preview__modes .button.is-active {
	border-color: var(--cartninja-primary);
	background: var(--cartninja-primary);
	color: #fff
}

.cartninja-popup-preview__stage {
	padding: 22px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: rgba(15, 43, 43, .08)
}

.cartninja-popup-preview__dialog {
	--cartninja-popup-preview-accent: #0C8A86;
	position: relative;
	max-width: 620px;
	margin: 0 auto;
	padding: 28px;
	overflow: hidden;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: linear-gradient(180deg, #F0FAFA 0%, #fff 100%);
	box-shadow: 0 24px 60px rgba(15, 43, 43, .16)
}

.cartninja-popup-preview__dialog:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 8px;
	background: var(--cartninja-popup-preview-accent)
}

.cartninja-popup-preview__close {
	position: absolute;
	top: 16px;
	right: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 999px;
	background: #F0FAFA;
	color: var(--cartninja-title);
	cursor: default
}

.cartninja-popup-preview__hero {
	padding-right: 48px
}

.cartninja-popup-preview__eyebrow {
	display: inline-flex;
	align-items: center;
	padding: 7px 12px;
	border-radius: 999px;
	background: #FFF0EB;
	color: var(--cartninja-accent);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase
}

.cartninja-popup-preview__hero h3 {
	margin: 10px 0;
	color: var(--cartninja-title);
	font-size: 30px;
	line-height: 1.12
}

.cartninja-popup-preview__hero p,
.cartninja-popup-preview__panel p {
	margin: 0;
	color: var(--cartninja-muted);
	line-height: 1.55
}

.cartninja-popup-preview__panel {
	margin-top: 22px;
	padding: 16px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: #fff
}

.cartninja-popup-preview__panel label {
	display: block;
	margin-bottom: 10px;
	color: var(--cartninja-title);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase
}

.cartninja-popup-preview__field {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
	padding: 0 14px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: #fff
}

.cartninja-popup-preview__field span {
	color: var(--cartninja-popup-preview-accent);
	font-size: 18px
}

.cartninja-popup-preview__field input {
	width: 100%;
	min-height: 50px;
	border: 0;
	background: transparent;
	color: var(--cartninja-muted);
	box-shadow: none
}

.cartninja-popup-preview__consent {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin-top: 16px;
	padding: 13px 15px;
	border-radius: 8px;
	background: #F0FAFA;
	color: var(--cartninja-muted);
	line-height: 1.5
}

.cartninja-popup-preview__consent input {
	margin-top: 3px
}

.cartninja-popup-preview__button,
.cartninja-popup-preview__button.button.button-primary {
	width: 100%;
	min-height: 52px;
	margin-top: 16px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg, #0EA5A0 0%, #0C8A86 100%);
	box-shadow: none;
	color: #fff;
	font-weight: 700;
	text-shadow: none;
	cursor: default
}

.cartninja-card-grid--dashboard .cartninja-stat-card {
	position: relative;
	overflow: hidden;
	padding-top: 26px
}

.cartninja-stat-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 16px;
	border-radius: 8px;
	background: var(--cartninja-bg);
	color: var(--cartninja-primary);
	font-size: 24px
}

.cartninja-stat-card p {
	margin: 10px 0 0;
	color: var(--cartninja-muted);
	line-height: 1.5
}

.cartninja-info-panel,
.cartninja-table-shell,
.cartninja-cart-details--drawer {
	margin-top: 24px;
	padding: 24px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-card);
	box-shadow: 0 10px 24px rgba(15, 43, 43, .05)
}

.cartninja-info-panel__head,
.cartninja-table-shell__head,
.cartninja-cart-details__head {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	margin-bottom: 18px
}

.cartninja-info-panel__head .dashicons,
.cartninja-cart-details__head .dashicons {
	font-size: 34px;
	width: 34px;
	height: 34px;
	color: var(--cartninja-primary)
}

.cartninja-info-panel__head h2,
.cartninja-table-shell__head h2,
.cartninja-cart-details__head h2 {
	margin: 0 0 6px;
	font-size: 22px;
	color: var(--cartninja-title)
}

.cartninja-info-panel__head p,
.cartninja-table-shell__head p {
	margin: 0;
	color: var(--cartninja-muted);
	line-height: 1.55
}

.cartninja-chart-wrap {
	position: relative;
	height: 360px;
	min-height: 360px;
	margin-top: 18px
}

.cartninja-chart-wrap canvas {
	display: block !important;
	width: 100% !important;
	height: 100% !important
}

.cartninja-table-shell .wp-list-table {
	border-radius: 8px;
	overflow: hidden;
	border-color: var(--cartninja-border)
}

.cartninja-table-shell .wp-list-table.cartninja-carts {
	table-layout: auto
}

.cartninja-table-shell .wp-list-table thead th,
.cartninja-table-shell .wp-list-table tfoot th {
	font-weight: 700
}

.cartninja-table-shell .tablenav.top {
	margin-top: 0;
	margin-bottom: 14px;
	padding-top: 0
}

.cartninja-table-shell .actions select {
	border-color: var(--cartninja-border);
	border-radius: 6px;
	min-height: 38px
}

.cartninja-table-shell .button {
	border-radius: 6px
}

.column-actions {
	width: 1%;
	white-space: nowrap
}

.cartninja-table-actions {
	display: flex;
	flex-wrap: nowrap;
	gap: 6px;
	justify-content: flex-start;
	align-items: center;
	white-space: nowrap
}

.cartninja-action-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 8px;
	border: 1px solid var(--cartninja-border);
	border-radius: 6px;
	background: #fff;
	color: var(--cartninja-title);
	text-decoration: none;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	font-size: 13px
}

.cartninja-action-link:hover {
	border-color: var(--cartninja-primary);
	background: var(--cartninja-bg);
	color: var(--cartninja-title)
}

.cartninja-action-link .dashicons {
	font-size: 15px;
	width: 15px;
	height: 15px
}

.cartninja-action-link--retry {
	background: var(--cartninja-warning-bg);
	border-color: #FCD58D;
	color: #A16207
}

.cartninja-action-link--retry:hover {
	background: #FFF7D6;
	color: #A16207
}

.cartninja-action-link--delete {
	background: var(--cartninja-error-bg);
	border-color: #FECACA;
	color: var(--cartninja-error)
}

.cartninja-action-link--delete:hover {
	background: #FFE4E4;
	color: var(--cartninja-error)
}

.cartninja-cart-details__head {
	justify-content: space-between;
	align-items: center
}

.cartninja-status-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase
}

.cartninja-status-pill--abandoned {
	background: var(--cartninja-warning-bg);
	color: #A16207
}

.cartninja-status-pill--recovering {
	background: var(--cartninja-bg);
	color: var(--cartninja-primary)
}

.cartninja-status-pill--recovered {
	background: var(--cartninja-success-bg);
	color: var(--cartninja-success)
}

.cartninja-status-pill--lost {
	background: var(--cartninja-error-bg);
	color: var(--cartninja-error)
}

.cartninja-status-pill--active {
	background: #EDF7F7;
	color: var(--cartninja-muted)
}

.cartninja-detail-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px
}

.cartninja-detail-card {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 18px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: #fff
}

.cartninja-detail-card .dashicons {
	font-size: 22px;
	width: 22px;
	height: 22px;
	color: var(--cartninja-primary)
}

.cartninja-detail-card label {
	display: block;
	margin-bottom: 4px;
	color: var(--cartninja-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase
}

.cartninja-detail-card strong {
	display: block;
	color: var(--cartninja-title);
	font-size: 15px;
	line-height: 1.5;
	word-break: break-word
}

.cartninja-cart-items-panel {
	margin-top: 18px;
	padding: 20px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: var(--cartninja-bg)
}

.cartninja-cart-items-panel__head {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	align-items: center;
	margin-bottom: 14px
}

.cartninja-cart-items-panel__head h3 {
	margin: 0;
	color: var(--cartninja-title)
}

.cartninja-cart-items-panel__head span {
	display: inline-flex;
	align-items: center;
	padding: 5px 10px;
	border-radius: 999px;
	background: #fff;
	color: var(--cartninja-muted);
	font-size: 12px;
	font-weight: 700
}

.cartninja-cart-items-table-wrap {
	overflow: auto;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: #fff
}

.cartninja-cart-items-table {
	border: 0
}

.cartninja-cart-items-table th,
.cartninja-cart-items-table td {
	vertical-align: middle
}

.cartninja-cart-items-table th:first-child {
	width: 46%
}

.cartninja-cart-product {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 260px
}

.cartninja-cart-product__image {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	overflow: hidden;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: #fff
}

.cartninja-cart-product__image img,
.cartninja-cart-product__thumb {
	display: block;
	width: 52px;
	height: 52px;
	object-fit: cover
}

.cartninja-cart-product__placeholder {
	display: block;
	width: 24px;
	height: 24px;
	border-radius: 6px;
	background: var(--cartninja-border)
}

.cartninja-cart-product__meta {
	min-width: 0
}

.cartninja-cart-product__meta strong {
	display: block;
	color: var(--cartninja-title);
	line-height: 1.35
}

.cartninja-cart-product__meta small {
	display: block;
	margin-top: 3px;
	color: var(--cartninja-muted);
	line-height: 1.35
}

.cartninja-empty-state {
	margin: 0;
	padding: 16px;
	border: 1px dashed var(--cartninja-border);
	border-radius: 8px;
	background: #fff;
	color: var(--cartninja-muted)
}

.cartninja-modal[hidden] {
	display: none !important
}

.cartninja-modal {
	position: fixed;
	inset: 0;
	z-index: 100000
}

.cartninja-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 43, 43, .54);
	backdrop-filter: blur(3px)
}

.cartninja-modal__dialog {
	position: relative;
	z-index: 1;
	width: min(920px, calc(100vw - 32px));
	max-height: calc(100vh - 48px);
	margin: 24px auto;
	overflow: auto;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 24px 64px rgba(15, 43, 43, .28)
}

.cartninja-modal__content {
	padding: 0
}

.cartninja-modal__content .cartninja-cart-details--drawer {
	margin: 0;
	border: 0;
	border-radius: 8px;
	box-shadow: none
}

.cartninja-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 999px;
	background: var(--cartninja-bg);
	color: var(--cartninja-title);
	cursor: pointer
}

.cartninja-modal__close:hover {
	background: #DAF2F1
}

.cartninja-modal-open {
	overflow: hidden
}

.cartninja-char-count {
	display: inline-flex;
	align-items: center;
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--cartninja-bg);
	color: var(--cartninja-primary);
	font-weight: 700;
	white-space: nowrap
}

.cartninja-pro-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-left: 8px;
	padding: 3px 8px;
	border-radius: 999px;
	background: #FFF0EB;
	color: var(--cartninja-accent);
	font-size: 12px
}

.cartninja-inline-field {
	display: flex;
	gap: 10px;
	align-items: center
}

.cartninja-reminder-icons {
	display: flex;
	gap: 8px;
	align-items: center
}

.cartninja-reminder-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: #EDF7F7;
	color: var(--cartninja-toggle-off)
}

.cartninja-reminder-icon.is-sent {
	background: var(--cartninja-success-bg);
	color: var(--cartninja-success)
}

.cartninja-reminder-icon.is-failed {
	background: var(--cartninja-error-bg);
	color: var(--cartninja-error)
}

.cartninja-reminder-icon.is-pending {
	background: #EDF7F7;
	color: var(--cartninja-toggle-off)
}

.cartninja-reminder-icon.is-unavailable {
	display: none
}

.cartninja-sequence-steps {
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 12px
}

.cartninja-sequence-step {
	padding: 16px;
	border: 1px solid var(--cartninja-border);
	border-radius: 8px;
	background: #fff;
	cursor: move
}

.cartninja-sequence-step__head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px
}

.cartninja-sequence-step textarea,
.cartninja-sequence-step select,
.cartninja-sequence-step input {
	max-width: 100%
}

@media (max-width:960px) {
	.cartninja-wrap {
		margin-right: 10px;
		padding: 14px
	}

	.cartninja-settings-hero,
	.cartninja-page-hero {
		flex-direction: column
	}

	.cartninja-field-grid,
	.cartninja-color-field-grid,
	.cartninja-toggle-grid,
	.cartninja-detail-grid {
		grid-template-columns: 1fr
	}

	.cartninja-helper-row {
		flex-direction: column;
		align-items: flex-start
	}

	.cartninja-inline-field,
	.cartninja-page-hero__badge {
		flex-direction: column;
		align-items: stretch
	}

	.cartninja-cart-details__head {
		flex-direction: column;
		align-items: flex-start
	}

	.cartninja-modal__dialog {
		width: calc(100vw - 18px);
		margin: 9px auto;
		max-height: calc(100vh - 18px)
	}

	.cartninja-chart-wrap {
		height: 280px;
		min-height: 280px
	}
}

@media (max-width:1280px) {
	.cartninja-popup-builder {
		grid-template-columns: 1fr
	}

	.cartninja-popup-builder__preview {
		position: static;
		max-height: none;
		overflow: visible
	}
}
