:root {
	--vmp-ink: #18202f;
	--vmp-muted: #667085;
	--vmp-line: #d8dee8;
	--vmp-panel: #ffffff;
	--vmp-soft: #f6f8fb;
	--vmp-accent: #0f766e;
	--vmp-accent-dark: #115e59;
}

.vmp-shell {
	box-sizing: border-box;
	max-width: 1180px;
	margin: 0 auto;
	padding: 32px 18px;
	color: var(--vmp-ink);
}

.vmp-panel,
.vmp-store-card,
.vmp-store-hero {
	background: var(--vmp-panel);
	border: 1px solid var(--vmp-line);
	border-radius: 8px;
	box-shadow: 0 12px 32px rgba(24, 32, 47, 0.06);
}

.vmp-panel {
	padding: 24px;
}

.vmp-eyebrow {
	margin: 0 0 6px;
	color: var(--vmp-accent);
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}

.vmp-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 22px;
}

.vmp-form-single {
	grid-template-columns: 1fr;
}

.vmp-form label,
.vmp-form span {
	display: block;
}

.vmp-form span {
	margin-bottom: 6px;
	font-weight: 700;
}

.vmp-form input,
.vmp-form select,
.vmp-form textarea,
.vmp-inline-form select {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--vmp-line);
	border-radius: 6px;
	padding: 11px 12px;
	background: #fff;
}

.vmp-wide {
	grid-column: 1 / -1;
}

.vmp-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 16px;
	border: 0;
	border-radius: 6px;
	background: var(--vmp-accent);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.vmp-button:hover {
	background: var(--vmp-accent-dark);
	color: #fff;
}

.vmp-dashboard-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-top: 18px;
}

.vmp-mini-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-bottom: 18px;
}

.vmp-mini-form input,
.vmp-mini-form select,
.vmp-mini-form textarea {
	box-sizing: border-box;
	width: 100%;
	border: 1px solid var(--vmp-line);
	border-radius: 6px;
	padding: 10px 11px;
}

.vmp-mini-form textarea,
.vmp-mini-form .vmp-button {
	grid-column: 1 / -1;
}

.vmp-check {
	display: flex !important;
	align-items: center;
	gap: 8px;
}

.vmp-check input {
	width: auto;
}

.vmp-notice {
	margin-top: 16px;
	padding: 12px 14px;
	border-radius: 6px;
	background: #ecfdf5;
	color: #065f46;
}

.vmp-dashboard-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.vmp-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin: 24px 0;
}

.vmp-stats div {
	padding: 16px;
	border: 1px solid var(--vmp-line);
	border-radius: 8px;
	background: var(--vmp-soft);
}

.vmp-stats span {
	display: block;
	color: var(--vmp-muted);
	font-size: 13px;
}

.vmp-stats strong {
	display: block;
	margin-top: 8px;
	font-size: 24px;
}

.vmp-table {
	width: 100%;
	border-collapse: collapse;
}

.vmp-table th,
.vmp-table td {
	padding: 12px;
	border-bottom: 1px solid var(--vmp-line);
	text-align: left;
}

.vmp-store-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 16px;
}

.vmp-store-card {
	display: block;
	padding: 20px;
	color: var(--vmp-ink);
	text-decoration: none;
}

.vmp-store-card > a {
	color: inherit;
	text-decoration: none;
}

.vmp-store-card strong,
.vmp-store-card span {
	display: block;
}

.vmp-store-card-head,
.vmp-store-profile,
.vmp-store-meta {
	display: flex;
	align-items: center;
	gap: 12px;
}

.vmp-store-card-head img,
.vmp-store-logo {
	width: 58px;
	height: 58px;
	border-radius: 8px;
	object-fit: cover;
}

.vmp-store-card-head small {
	display: block;
	margin-bottom: 3px;
	color: var(--vmp-accent);
	font-weight: 700;
}

.vmp-store-card em {
	display: block;
	margin-top: 12px;
	font-style: normal;
	font-weight: 600;
}

.vmp-store-card span {
	margin-top: 8px;
	color: var(--vmp-muted);
}

.vmp-store-hero {
	margin-bottom: 26px;
	padding: 28px;
	background: linear-gradient(135deg, #ffffff, #eff6ff);
}

.vmp-store-hero.has-banner {
	position: relative;
	overflow: hidden;
	background-position: center;
	background-size: cover;
	color: #fff;
}

.vmp-store-hero.has-banner::before {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.72);
	content: "";
}

.vmp-store-hero.has-banner > * {
	position: relative;
}

.vmp-store-hero.has-banner .vmp-eyebrow {
	color: #99f6e4;
}

.vmp-store-tagline {
	margin: 4px 0 0;
	font-weight: 600;
}

.vmp-verified-badge {
	display: inline-block;
	margin-left: 10px;
	padding: 4px 7px;
	border-radius: 5px;
	background: #dcfce7;
	color: #166534;
	font-size: 12px;
	vertical-align: middle;
}

.vmp-verified-mark {
	color: #0f766e;
}

.vmp-store-meta {
	flex-wrap: wrap;
	margin-top: 18px;
}

.vmp-store-meta a,
.vmp-store-meta span {
	color: inherit;
	font-size: 14px;
}

.vmp-policy-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 26px;
}

.vmp-store-reviews {
	margin-top: 32px;
}

.vmp-review-score {
	font-size: 26px;
}

.vmp-review-card {
	margin-bottom: 12px;
}

.vmp-review-card > div {
	display: flex;
	justify-content: space-between;
	color: var(--vmp-muted);
}

.vmp-document-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 12px 0 18px;
}

.vmp-variation-editor {
	padding: 14px;
	border: 1px solid #d5dce4;
	border-radius: 6px;
	background: #f8fafb;
}

.vmp-variation-rows {
	display: grid;
	gap: 8px;
}

.vmp-variation-row {
	display: grid;
	grid-template-columns: 1.2fr repeat(4, minmax(80px, 1fr));
	gap: 7px;
}

.vmp-advanced-product-fields,
.vmp-attribute-rows,
.vmp-download-rows {
	display: grid;
	gap: 10px;
}

.vmp-advanced-product-fields {
	padding: 14px;
	border: 1px solid #d5dce4;
	border-radius: 6px;
	background: #f8fafb;
}

.vmp-attribute-row,
.vmp-download-row,
.vmp-inline-upload {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 8px;
}

.vmp-download-row {
	grid-template-columns: 1fr 2fr auto auto;
}

.vmp-variation-row-advanced {
	grid-template-columns: minmax(200px, 2fr) repeat(4, minmax(75px, 1fr));
}

.vmp-variation-values {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 6px;
}

.vmp-ticket-thread {
	display: grid;
	gap: 12px;
	margin-bottom: 20px;
}

.vmp-ticket-message {
	max-width: 82%;
	padding: 12px 14px;
	border-radius: 7px;
	background: #eef2f6;
}

.vmp-ticket-message p {
	margin: 5px 0;
}

.vmp-ticket-message time {
	color: var(--vmp-muted);
	font-size: 11px;
}

.vmp-ticket-vendor {
	margin-left: auto;
	background: #dff4ef;
}

.vmp-sold-by {
	margin: 6px 0 10px;
	font-size: 14px;
}

.vmp-login-shell {
	display: grid;
	width: 100vw;
	min-height: 72vh;
	margin-left: calc(50% - 50vw);
	place-items: center;
	padding: 32px 18px;
	background: #f3f6f8;
	color: var(--vmp-ink);
}

.vmp-login-panel {
	width: min(100%, 440px);
	padding: 32px;
	border: 1px solid var(--vmp-line);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 20px 50px rgba(24, 32, 47, 0.1);
}

.vmp-login-brand h1,
.vmp-login-brand p {
	margin-top: 0;
}

.vmp-login-links {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	margin-top: 20px;
	font-size: 14px;
}

.vmp-notice-error {
	background: #fef2f2;
	color: #991b1b;
}

.vmp-portal {
	display: grid;
	grid-template-columns: 248px minmax(0, 1fr);
	width: 100vw;
	min-height: 100vh;
	margin-left: calc(50% - 50vw);
	background: #f3f6f8;
	color: var(--vmp-ink);
}

.vmp-portal-sidebar {
	position: sticky;
	top: 0;
	display: flex;
	height: 100vh;
	box-sizing: border-box;
	flex-direction: column;
	padding: 22px 16px;
	border-right: 1px solid #d5dce4;
	background: #fff;
}

.vmp-portal-brand {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 0 8px 22px;
}

.vmp-portal-brand img {
	width: 42px;
	height: 42px;
	border-radius: 6px;
	object-fit: cover;
}

.vmp-portal-brand small,
.vmp-portal-brand strong {
	display: block;
}

.vmp-portal-brand small {
	color: var(--vmp-muted);
	font-size: 11px;
	text-transform: uppercase;
}

.vmp-portal-nav {
	display: grid;
	gap: 3px;
}

.vmp-portal-nav a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 40px;
	padding: 0 11px;
	border-radius: 6px;
	color: #344054;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.vmp-portal-nav a:hover,
.vmp-portal-nav a.is-active {
	background: #e7f5f2;
	color: #0b625b;
}

.vmp-portal-nav a span {
	min-width: 21px;
	padding: 2px 5px;
	border-radius: 10px;
	background: #0f766e;
	color: #fff;
	font-size: 11px;
	text-align: center;
}

.vmp-portal-sidebar-foot {
	display: grid;
	gap: 10px;
	margin-top: auto;
	padding: 18px 8px 0;
	border-top: 1px solid var(--vmp-line);
	font-size: 14px;
}

.vmp-portal-main {
	box-sizing: border-box;
	min-width: 0;
	padding: 26px clamp(18px, 3vw, 42px) 56px;
}

.vmp-portal-header,
.vmp-portal-section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.vmp-portal-header {
	margin-bottom: 22px;
}

.vmp-portal-header p,
.vmp-portal-header h1,
.vmp-portal-section-head h2 {
	margin: 0;
}

.vmp-portal-header p {
	color: var(--vmp-muted);
	font-size: 13px;
}

.vmp-portal-header h1 {
	margin-top: 3px;
	font-size: 25px;
}

.vmp-portal-status,
.vmp-fulfillment {
	display: inline-block;
	padding: 5px 9px;
	border-radius: 5px;
	background: #eef2f6;
	color: #475467;
	font-size: 12px;
	font-weight: 700;
}

.vmp-portal-status-active,
.vmp-fulfillment-delivered {
	background: #dcfce7;
	color: #166534;
}

.vmp-portal-status-pending,
.vmp-fulfillment-processing,
.vmp-fulfillment-packed {
	background: #fef3c7;
	color: #92400e;
}

.vmp-fulfillment-shipped {
	background: #dbeafe;
	color: #1d4ed8;
}

.vmp-portal-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin-bottom: 18px;
}

.vmp-portal-stats > div {
	padding: 17px;
	border: 1px solid #d5dce4;
	border-radius: 7px;
	background: #fff;
}

.vmp-portal-stats span,
.vmp-portal-stats strong {
	display: block;
}

.vmp-portal-stats span {
	color: var(--vmp-muted);
	font-size: 12px;
	font-weight: 600;
}

.vmp-portal-stats strong {
	margin-top: 7px;
	font-size: 22px;
}

.vmp-portal-panel {
	margin-bottom: 18px;
	padding: 20px;
	border: 1px solid #d5dce4;
	border-radius: 7px;
	background: #fff;
}

.vmp-portal-panel > h2,
.vmp-portal-section-head h2 {
	margin-top: 0;
	font-size: 17px;
}

.vmp-portal-two-column {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.vmp-order-layout {
	grid-template-columns: minmax(0, 1.6fr) minmax(260px, 0.7fr);
}

.vmp-product-layout {
	grid-template-columns: minmax(300px, 0.8fr) minmax(0, 1.2fr);
}

.vmp-table-scroll {
	overflow-x: auto;
}

.vmp-portal-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.vmp-portal-table th,
.vmp-portal-table td {
	padding: 12px 10px;
	border-bottom: 1px solid #e4e8ee;
	text-align: left;
	vertical-align: middle;
}

.vmp-portal-table th {
	color: var(--vmp-muted);
	font-size: 11px;
	text-transform: uppercase;
}

.vmp-portal-table td small {
	display: block;
	margin-top: 2px;
	color: var(--vmp-muted);
}

.vmp-portal-form {
	display: grid;
	gap: 15px;
}

.vmp-portal-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.vmp-portal-form label,
.vmp-form-label {
	display: block;
}

.vmp-portal-form label > span,
.vmp-form-label {
	display: block;
	margin-bottom: 6px;
	font-size: 13px;
	font-weight: 700;
}

.vmp-portal-form input,
.vmp-portal-form select,
.vmp-portal-form textarea {
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #cdd5df;
	border-radius: 6px;
	padding: 10px 11px;
	background: #fff;
	color: var(--vmp-ink);
}

.vmp-secondary-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 12px;
	border: 1px solid #b7c0cc;
	border-radius: 6px;
	background: #fff;
	color: #344054;
	font-weight: 600;
	cursor: pointer;
}

.vmp-portal .vmp-media-preview {
	min-height: 90px;
	margin-bottom: 10px;
	border: 1px dashed #c5ced8;
	background: #f7f9fb;
}

.vmp-portal .vmp-media-preview img {
	display: block;
	max-width: 100%;
	max-height: 220px;
	object-fit: contain;
}

.vmp-category-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 7px;
	max-height: 180px;
	overflow: auto;
	padding: 9px;
	border: 1px solid #d5dce4;
	border-radius: 6px;
}

.vmp-summary-list {
	margin: 0;
}

.vmp-summary-list div {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 10px 0;
	border-bottom: 1px solid #e4e8ee;
}

.vmp-summary-list dt {
	color: var(--vmp-muted);
}

.vmp-summary-list dd {
	margin: 0;
	font-weight: 600;
	text-align: right;
}

.vmp-notification-row,
.vmp-notification-item {
	border-bottom: 1px solid #e4e8ee;
}

.vmp-notification-row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 0;
}

.vmp-notification-row span,
.vmp-notification-item time {
	color: var(--vmp-muted);
	font-size: 12px;
}

.vmp-notification-row.is-unread,
.vmp-notification-item.is-unread {
	border-left: 3px solid var(--vmp-accent);
	padding-left: 10px;
}

.vmp-notification-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 16px 0;
}

.vmp-notification-item h3,
.vmp-notification-item p {
	margin: 4px 0;
}

.vmp-portal-balance {
	margin: 8px 0 20px;
	font-size: 30px;
	font-weight: 700;
}

.vmp-portal-balance small {
	display: block;
	color: var(--vmp-muted);
	font-size: 12px;
	font-weight: 500;
}

.vmp-portal-table .is-positive {
	color: #166534;
	font-weight: 700;
}

.vmp-portal-table .is-negative {
	color: #991b1b;
	font-weight: 700;
}

.vmp-shipping-rate-list {
	display: grid;
	gap: 10px;
}

.vmp-shipping-rate {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 14px 0;
	border-bottom: 1px solid #e4e8ee;
}

.vmp-shipping-rate p {
	margin: 5px 0;
	color: var(--vmp-muted);
}

.vmp-kyc-documents,
.vmp-permission-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.vmp-permission-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.vmp-form-actions,
.vmp-staff-list {
	display: flex;
	gap: 10px;
}

.vmp-form-actions {
	justify-content: flex-end;
}

.vmp-staff-list {
	flex-direction: column;
}

.vmp-staff-card {
	display: grid;
	gap: 12px;
	padding: 16px 0;
	border-bottom: 1px solid #e4e8ee;
}

.vmp-staff-card small {
	display: block;
	color: var(--vmp-muted);
}

.vmp-discovery-filters {
	display: grid;
	grid-template-columns: minmax(220px, 2fr) repeat(4, minmax(120px, 1fr)) auto;
	gap: 10px;
	align-items: center;
	padding: 16px;
	border: 1px solid var(--vmp-line);
	background: var(--vmp-soft);
}

.vmp-nearby-controls {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: minmax(220px, 1.5fr) minmax(120px, .5fr) auto auto;
	gap: 10px;
	align-items: end;
	padding-top: 12px;
	border-top: 1px solid var(--vmp-line);
}

.vmp-nearby-controls label span {
	display: block;
	margin-bottom: 4px;
	font-weight: 700;
}

.vmp-location-privacy {
	grid-column: 1 / -1;
	margin: 0;
	color: var(--vmp-muted);
	font-size: 13px;
}

.vmp-location-status {
	grid-column: 1 / -1;
	color: #166534;
	font-size: 13px;
}

.vmp-location-status.is-error {
	color: #991b1b;
}

.vmp-store-distance {
	display: block;
	margin-top: 8px;
	color: var(--vmp-accent);
}

.vmp-location-fields {
	display: grid;
	gap: 10px;
}

.vmp-location-coordinates {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.vmp-location-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.vmp-platform-logo {
	display: block;
	width: auto;
	max-width: 220px;
	max-height: 72px;
	margin-bottom: 14px;
	object-fit: contain;
}

.vmp-onboarding-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.vmp-onboarding-head > strong {
	font-size: 22px;
}

.vmp-progress {
	overflow: hidden;
	height: 10px;
	margin: 14px 0 20px;
	border-radius: 5px;
	background: var(--vmp-line);
}

.vmp-progress span {
	display: block;
	height: 100%;
	background: var(--vmp-accent);
}

.vmp-checklist {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.vmp-checklist a {
	display: grid;
	grid-template-columns: 24px 1fr;
	gap: 8px;
	align-items: center;
	padding: 12px;
	border: 1px solid var(--vmp-line);
	border-radius: 6px;
	color: var(--vmp-ink);
	text-decoration: none;
}

.vmp-checklist a > span {
	display: inline-grid;
	width: 22px;
	height: 22px;
	border: 1px solid var(--vmp-line);
	border-radius: 50%;
	place-items: center;
}

.vmp-checklist a.is-complete > span {
	border-color: #16a34a;
	background: #dcfce7;
	color: #166534;
}

.vmp-discovery-filters input,
.vmp-discovery-filters select {
	box-sizing: border-box;
	width: 100%;
	min-height: 42px;
	border: 1px solid var(--vmp-line);
	border-radius: 6px;
	padding: 8px 10px;
	background: #fff;
}

.vmp-discovery-section {
	margin-top: 34px;
}

.vmp-collection-grid,
.vmp-comparison-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
}

.vmp-collection-card {
	overflow: hidden;
	border: 1px solid var(--vmp-line);
	border-radius: 8px;
	background: #fff;
}

.vmp-collection-card img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.vmp-collection-card div {
	padding: 16px;
}

.vmp-inline-action {
	display: inline-flex;
	margin: 8px 6px 0 0;
}

.vmp-customer-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 14px 0;
}

.vmp-store-alert,
.vmp-store-announcement {
	margin: 16px 0;
	padding: 14px 16px;
	border-left: 4px solid #b45309;
	background: #fff7ed;
	color: #7c2d12;
}

.vmp-store-announcement {
	border-left-color: var(--vmp-accent);
	background: #ecfdf5;
	color: #065f46;
}

.vmp-store-alert p,
.vmp-store-announcement p {
	margin: 4px 0 0;
}

.vmp-store-open-status,
.vmp-minimum-order {
	font-weight: 700;
}

.vmp-product-addons {
	display: grid;
	gap: 14px;
	margin: 18px 0;
	padding: 16px;
	border: 1px solid var(--vmp-line);
}

.vmp-product-addons legend {
	padding: 0 8px;
	font-weight: 700;
}

.vmp-addon-field {
	display: grid;
	gap: 5px;
}

.vmp-addon-field input[type="text"],
.vmp-addon-field input[type="file"],
.vmp-addon-field textarea,
.vmp-addon-field select {
	box-sizing: border-box;
	width: 100%;
	border: 1px solid var(--vmp-line);
	border-radius: 6px;
	padding: 10px;
}

.vmp-addon-field small {
	color: var(--vmp-muted);
}

.vmp-hours-grid,
.vmp-product-addon-rows {
	display: grid;
	gap: 10px;
}

.vmp-hours-row {
	display: grid;
	grid-template-columns: minmax(100px, 1fr) 130px 130px 100px;
	gap: 10px;
	align-items: center;
}

.vmp-product-addon-row {
	display: grid;
	grid-template-columns: 1.2fr .8fr .6fr .6fr;
	gap: 10px;
	padding: 14px;
	border: 1px solid var(--vmp-line);
	background: var(--vmp-soft);
}

.vmp-product-addon-row textarea,
.vmp-product-addon-row input[name$="[description]"] {
	grid-column: span 2;
}

@media (max-width: 760px) {
	.vmp-form,
	.vmp-stats,
	.vmp-dashboard-grid,
	.vmp-policy-grid,
	.vmp-mini-form {
		grid-template-columns: 1fr;
	}

	.vmp-dashboard-head {
		align-items: flex-start;
		flex-direction: column;
	}

	.vmp-portal {
		display: block;
	}

	.vmp-portal-sidebar {
		position: static;
		width: 100%;
		height: auto;
		border-right: 0;
		border-bottom: 1px solid #d5dce4;
	}

	.vmp-portal-nav {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vmp-portal-sidebar-foot {
		display: flex;
		justify-content: space-between;
	}

	.vmp-portal-main {
		padding: 20px 14px 40px;
	}

	.vmp-portal-stats,
	.vmp-portal-two-column,
	.vmp-order-layout,
	.vmp-product-layout,
	.vmp-portal-form-grid {
		grid-template-columns: 1fr;
	}

	.vmp-login-links,
	.vmp-portal-header,
	.vmp-notification-item {
		align-items: flex-start;
		flex-direction: column;
	}

	.vmp-variation-row {
		grid-template-columns: 1fr;
	}

	.vmp-kyc-documents,
	.vmp-permission-grid,
	.vmp-attribute-row,
	.vmp-download-row,
	.vmp-variation-row-advanced,
	.vmp-variation-values,
	.vmp-inline-upload {
		grid-template-columns: 1fr;
	}

	.vmp-discovery-filters,
	.vmp-comparison-grid,
	.vmp-hours-row,
	.vmp-product-addon-row,
	.vmp-nearby-controls,
	.vmp-location-coordinates,
	.vmp-checklist {
		grid-template-columns: 1fr;
	}

	.vmp-product-addon-row textarea,
	.vmp-product-addon-row input[name$="[description]"] {
		grid-column: auto;
	}
}

.vmp-skip-link {
	position: fixed;
	left: 12px;
	top: -80px;
	z-index: 100000;
	padding: 10px 14px;
	background: #fff;
	color: #111827;
	border: 2px solid var(--vmp-primary);
}

.vmp-skip-link:focus {
	top: 12px;
}

.vmp-portal a:focus-visible,
.vmp-portal button:focus-visible,
.vmp-portal input:focus-visible,
.vmp-portal select:focus-visible,
.vmp-portal textarea:focus-visible {
	outline: 3px solid #f59e0b;
	outline-offset: 2px;
}

.vmp-plan-current,
.vmp-plan-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 16px;
}

.vmp-plan-current span,
.vmp-plan-current strong {
	display: block;
}

.vmp-plan-grid {
	margin-top: 18px;
}

.vmp-plan-card {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.vmp-plan-card.is-current {
	border-color: var(--vmp-primary);
	box-shadow: inset 0 3px 0 var(--vmp-primary);
}

.vmp-plan-card ul {
	flex: 1;
	margin: 0;
	padding-left: 20px;
}

.vmp-plan-price {
	font-size: 1.5rem;
}

.vmp-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 18px;
}

.vmp-pagination .page-numbers {
	display: inline-flex;
	min-width: 38px;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--vmp-line);
	border-radius: 4px;
}
