/* Custom Order Lookup — modern, theme-agnostic styling */

.mrsarm-ol-wrap {
	--mrsarm-ol-bg: #fff;
	--mrsarm-ol-bg-alt: #f7f7f8;
	--mrsarm-ol-border: #e4e4e7;
	--mrsarm-ol-text: #18181b;
	--mrsarm-ol-text-muted: #71717a;
	--mrsarm-ol-accent: #0a7c3a;
	--mrsarm-ol-accent-hover: #0f6a35;
	--mrsarm-ol-danger: #b91c1c;
	--mrsarm-ol-success: #15803d;

	max-width: 760px;
	margin: 2rem auto;
	padding: 1.5rem;
	background: var(--mrsarm-ol-bg);
	color: var(--mrsarm-ol-text);
	border: 1px solid var(--mrsarm-ol-border);
	border-radius: 12px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, sans-serif;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .04);
	box-sizing: border-box;
}
.mrsarm-ol-wrap *, .mrsarm-ol-wrap *::before, .mrsarm-ol-wrap *::after { box-sizing: border-box; }

.mrsarm-ol-title { margin: 0 0 .25rem; font-size: 1.5rem; font-weight: 700; }
.mrsarm-ol-intro { margin: 0 0 1.25rem; color: var(--mrsarm-ol-text-muted); }

.mrsarm-ol-tabs {
	display: flex;
	gap: .25rem;
	margin-bottom: 1rem;
	padding: .25rem;
	background: var(--mrsarm-ol-bg-alt);
	border-radius: 8px;
	overflow-x: auto;
}
.mrsarm-ol-tab {
	flex: 1 1 auto;
	min-width: max-content;
	padding: .5rem .85rem;
	border: 0;
	background: transparent;
	color: var(--mrsarm-ol-text-muted);
	font-weight: 500;
	font-size: .9rem;
	border-radius: 6px;
	cursor: pointer;
	transition: background .15s, color .15s;
}
.mrsarm-ol-tab:hover { color: var(--mrsarm-ol-text); }
.mrsarm-ol-tab.is-active {
	background: var(--mrsarm-ol-bg);
	color: var(--mrsarm-ol-text);
	box-shadow: 0 1px 2px rgba(0, 0, 0, .06);
}

.mrsarm-ol-panel { display: none; }
.mrsarm-ol-panel.is-active { display: block; }
.mrsarm-ol-panel[hidden] { display: none !important; }

.mrsarm-ol-form .mrsarm-ol-row { margin-bottom: 1rem; }
.mrsarm-ol-form label {
	display: block;
	margin-bottom: .35rem;
	font-weight: 500;
	font-size: .9rem;
}
.mrsarm-ol-form input[type="text"],
.mrsarm-ol-form input[type="email"] {
	width: 100%;
	padding: .65rem .85rem;
	border: 1px solid var(--mrsarm-ol-border);
	border-radius: 8px;
	font-size: 1rem;
	font-family: inherit;
	background: var(--mrsarm-ol-bg);
	color: var(--mrsarm-ol-text);
	transition: border-color .15s, box-shadow .15s;
}
.mrsarm-ol-form input:focus {
	outline: none;
	border-color: var(--mrsarm-ol-accent);
	box-shadow: 0 0 0 3px rgba(10, 124, 58, .15);
}
.mrsarm-ol-desc { color: var(--mrsarm-ol-text-muted); font-size: .9rem; margin: 0 0 1rem; }

.mrsarm-ol-submit {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: .7rem 1.2rem;
	background: var(--mrsarm-ol-accent);
	color: #fff;
	border: 0;
	border-radius: 8px;
	font-size: .95rem;
	font-weight: 600;
	cursor: pointer;
	transition: background .15s;
}
.mrsarm-ol-submit:hover:not(:disabled) { background: var(--mrsarm-ol-accent-hover); }
.mrsarm-ol-submit:disabled { opacity: .6; cursor: not-allowed; }
.mrsarm-ol-submit.is-loading::after {
	content: ""; width: 14px; height: 14px;
	border: 2px solid rgba(255,255,255,.4); border-top-color: #fff;
	border-radius: 50%; animation: mrsarm-ol-spin .6s linear infinite;
}
@keyframes mrsarm-ol-spin { to { transform: rotate(360deg); } }

.mrsarm-ol-msg { margin-top: 1rem; font-size: .9rem; min-height: 1.2em; }
.mrsarm-ol-msg.is-success { color: var(--mrsarm-ol-success); }
.mrsarm-ol-msg.is-error   { color: var(--mrsarm-ol-danger); }

/* Honeypot — hidden from real users, visible to naïve bots */
.mrsarm-ol-hp {
	position: absolute !important;
	left: -10000px !important;
	top: auto !important;
	width: 1px !important; height: 1px !important;
	overflow: hidden !important;
}

/* Results */
.mrsarm-ol-results { margin-top: 1.5rem; }
.mrsarm-ol-result-card {
	border: 1px solid var(--mrsarm-ol-border);
	border-radius: 10px;
	padding: 1rem 1.25rem;
	margin-bottom: 1rem;
	background: var(--mrsarm-ol-bg-alt);
}
.mrsarm-ol-result-card h4 { margin: 0 0 .25rem; font-size: 1.05rem; }
.mrsarm-ol-result-meta { color: var(--mrsarm-ol-text-muted); font-size: .85rem; margin-bottom: .75rem; }
.mrsarm-ol-result-status {
	display: inline-block;
	padding: .15rem .55rem;
	background: var(--mrsarm-ol-bg);
	border: 1px solid var(--mrsarm-ol-border);
	border-radius: 999px;
	font-size: .8rem;
	font-weight: 600;
	margin-left: .5rem;
}
.mrsarm-ol-result-items { margin: .5rem 0; padding-left: 1.25rem; font-size: .9rem; }
.mrsarm-ol-dispatch {
	margin-top: .85rem;
	padding: .75rem .85rem;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #fff;
	font-size: .9rem;
}
.mrsarm-ol-dispatch strong,
.mrsarm-ol-dispatch span,
.mrsarm-ol-dispatch small { display: block; }
.mrsarm-ol-dispatch strong { color: var(--mrsarm-ol-text-muted); font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; margin-bottom: .15rem; }
.mrsarm-ol-dispatch span { color: var(--mrsarm-ol-text); font-weight: 700; }
.mrsarm-ol-dispatch small { color: var(--mrsarm-ol-text-muted); margin-top: .2rem; }
.mrsarm-ol-tracking-line { display: block; margin-top: .55rem; font-size: .9rem; color: var(--mrsarm-ol-text-muted); }
.mrsarm-ol-tracking-line a { font-weight: 600; }
.mrsarm-ol-tracking-line small { display: block; margin-top: .15rem; color: var(--mrsarm-ol-text-muted); }

/* Verified banner */
.mrsarm-ol-verified-banner {
	padding: .75rem 1rem;
	background: #ecfdf5;
	border: 1px solid #a7f3d0;
	color: #065f46;
	border-radius: 8px;
	margin-bottom: 1.25rem;
	font-size: .9rem;
}
.mrsarm-ol-verified-banner strong { margin-right: .5rem; }
.mrsarm-ol-verified-banner code { background: rgba(0,0,0,.06); padding: .1rem .4rem; border-radius: 4px; }

/* Orders table */
.mrsarm-ol-orders { width: 100%; border-collapse: collapse; margin-top: .5rem; }
.mrsarm-ol-orders th, .mrsarm-ol-orders td {
	padding: .65rem .5rem;
	border-bottom: 1px solid var(--mrsarm-ol-border);
	text-align: left;
	vertical-align: top;
	font-size: .9rem;
}
.mrsarm-ol-orders th { font-weight: 600; color: var(--mrsarm-ol-text-muted); }
.mrsarm-ol-items { margin: 0; padding-left: 1rem; }
.mrsarm-ol-tracking small { display: block; color: var(--mrsarm-ol-text-muted); margin-top: .25rem; }

.mrsarm-ol-actions { margin-top: 1.5rem; }

/* Force light theme so it follows the site's normal white/black styling, not browser dark mode. */
.mrsarm-ol-wrap {
	color-scheme: light;
}
.mrsarm-ol-wrap input,
.mrsarm-ol-wrap button,
.mrsarm-ol-wrap table,
.mrsarm-ol-wrap th,
.mrsarm-ol-wrap td {
	color-scheme: light;
}

/* My Account specific */
.mrsarm-ol-my-account { font-size: .95rem; }
.mrsarm-ol-orphans { width: 100%; }

@media (max-width: 600px) {
	.mrsarm-ol-orders thead { display: none; }
	.mrsarm-ol-orders tr { display: block; border: 1px solid var(--mrsarm-ol-border); border-radius: 8px; padding: .5rem; margin-bottom: .5rem; }
	.mrsarm-ol-orders td { display: block; border: 0; padding: .25rem 0; }
}

/* Added in v1.0.6: support form, timeline, resend button */
.mrsarm-ol-grid2 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 1rem;
}
.mrsarm-ol-form textarea {
	width: 100%;
	padding: .65rem .85rem;
	border: 1px solid var(--mrsarm-ol-border);
	border-radius: 8px;
	font-size: 1rem;
	font-family: inherit;
	background: #fff;
	color: var(--mrsarm-ol-text);
	resize: vertical;
}
.mrsarm-ol-support {
	margin-top: 1.5rem;
	padding: 1rem 1.25rem;
	border: 1px solid var(--mrsarm-ol-border);
	border-radius: 10px;
	background: #fff;
}
.mrsarm-ol-support h3 { margin: 0 0 .4rem; font-size: 1.05rem; }
.mrsarm-ol-timeline {
	list-style: none;
	margin: .85rem 0;
	padding: 0;
	border: 1px solid var(--mrsarm-ol-border);
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}
.mrsarm-ol-step {
	position: relative;
	padding: .58rem .8rem .58rem 2rem;
	border-bottom: 1px solid var(--mrsarm-ol-border);
	font-size: .9rem;
	color: var(--mrsarm-ol-text-muted);
}
.mrsarm-ol-step:last-child { border-bottom: 0; }
.mrsarm-ol-step::before {
	content: "";
	position: absolute;
	left: .75rem;
	top: .78rem;
	width: .55rem;
	height: .55rem;
	border-radius: 999px;
	border: 2px solid var(--mrsarm-ol-border);
	background: #fff;
}
.mrsarm-ol-step.is-done { color: var(--mrsarm-ol-text); }
.mrsarm-ol-step.is-done::before { background: var(--mrsarm-ol-accent); border-color: var(--mrsarm-ol-accent); }
.mrsarm-ol-step.is-current { color: var(--mrsarm-ol-text); font-weight: 600; }
.mrsarm-ol-step.is-current::before { border-color: var(--mrsarm-ol-accent); }
.mrsarm-ol-card-actions { margin-top: .9rem; }
.mrsarm-ol-small-btn {
	border: 1px solid var(--mrsarm-ol-border);
	background: #fff;
	color: var(--mrsarm-ol-text);
	border-radius: 8px;
	padding: .55rem .75rem;
	font-size: .88rem;
	font-weight: 600;
	cursor: pointer;
}
.mrsarm-ol-small-btn:hover:not(:disabled) { background: var(--mrsarm-ol-bg-alt); }
.mrsarm-ol-small-btn:disabled { opacity: .7; cursor: default; }
@media (max-width: 600px) {
	.mrsarm-ol-grid2 { grid-template-columns: 1fr; }
}
