/* =====================================================================
 * Cricket Auction Pro — public theme
 * Broadcast-grade dark UI with glassmorphism. All rules scoped under
 * .cap-app so they never leak into (or inherit from) the host theme.
 * ===================================================================== */

.cap-app {
	--cap-bg: #0a0e1a;
	--cap-bg-2: #121829;
	--cap-glass: rgba(255, 255, 255, 0.05);
	--cap-glass-border: rgba(255, 255, 255, 0.10);
	--cap-text: #eef2ff;
	--cap-muted: #8b94b3;
	--cap-accent: #ffb01f;
	--cap-accent-2: #2dd4bf;
	--cap-good: #22c55e;
	--cap-warn: #f97316;
	--cap-bad: #ef4444;
	--cap-radius: 16px;
	--cap-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
	--cap-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

	font-family: var(--cap-font);
	color: var(--cap-text);
	background:
		radial-gradient(1200px 600px at 15% -10%, rgba(45, 212, 191, 0.10), transparent 60%),
		radial-gradient(1000px 500px at 110% 10%, rgba(255, 176, 31, 0.10), transparent 55%),
		var(--cap-bg);
	padding: 20px;
	border-radius: var(--cap-radius);
	line-height: 1.45;
}
.cap-app *, .cap-app *::before, .cap-app *::after { box-sizing: border-box; }
.cap-app h1, .cap-app h2, .cap-app h3 { margin: 0 0 .5em; color: var(--cap-text); font-weight: 700; }
.cap-muted { color: var(--cap-muted); font-size: 12px; letter-spacing: .03em; text-transform: uppercase; }

/* ---- Glass panels ---------------------------------------------------- */
.cap-panel {
	background: var(--cap-glass);
	border: 1px solid var(--cap-glass-border);
	border-radius: var(--cap-radius);
	box-shadow: var(--cap-shadow);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	padding: 20px;
}

/* ---- Live layout grid ------------------------------------------------ */
.cap-live-grid {
	display: grid;
	grid-template-columns: 1fr 1.4fr 1fr;
	gap: 16px;
	align-items: start;
}
.cap-history-panel { margin-top: 16px; }

/* ---- Player card ----------------------------------------------------- */
.cap-player-photo {
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 14px;
	background: linear-gradient(160deg, #1c2238, #0c1020);
	border: 1px solid var(--cap-glass-border);
	background-size: cover;
	background-position: center top;
	margin-bottom: 14px;
	position: relative;
}
.cap-player-photo::after {
	content: "🏏";
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	font-size: 48px;
	opacity: .25;
}
.cap-player-photo.has-photo::after { content: none; }
.cap-player-name { font-size: 26px; line-height: 1.1; }
.cap-player-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 16px; }
.cap-base { display: flex; flex-direction: column; gap: 2px; }
.cap-base strong { font-size: 22px; color: var(--cap-accent); }

/* ---- Pills ----------------------------------------------------------- */
.cap-pill {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid var(--cap-glass-border);
}
.cap-pill-cat { background: rgba(45, 212, 191, 0.16); color: #5eead4; }
.cap-overseas { background: rgba(96, 165, 250, 0.16); color: #93c5fd; }
.cap-pill-sold { background: rgba(34, 197, 94, 0.18); color: #86efac; }
.cap-pill-unsold { background: rgba(239, 68, 68, 0.18); color: #fca5a5; }
.cap-pill-available { background: rgba(255, 255, 255, 0.10); color: #cbd5e1; }
.cap-pill-pending { background: rgba(255, 176, 31, 0.18); color: #fcd34d; }
.cap-pill-withdrawn { background: rgba(148, 163, 184, 0.18); color: #cbd5e1; }
.cap-pill-active, .cap-pill-completed { background: rgba(34, 197, 94, 0.18); color: #86efac; }
.cap-pill-draft { background: rgba(148, 163, 184, 0.18); color: #cbd5e1; }

/* ---- Status + timer -------------------------------------------------- */
.cap-status-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.cap-status-chip {
	font-size: 12px; font-weight: 700; letter-spacing: .08em;
	padding: 6px 14px; border-radius: 999px;
	background: rgba(255, 255, 255, 0.08); border: 1px solid var(--cap-glass-border);
}
.cap-status-running { background: rgba(34, 197, 94, 0.2); color: #86efac; box-shadow: 0 0 0 1px rgba(34,197,94,.4); }
.cap-status-paused { background: rgba(249, 115, 22, 0.2); color: #fdba74; }
.cap-timer {
	font-size: 40px; font-weight: 800; font-variant-numeric: tabular-nums;
	color: var(--cap-accent-2); min-width: 90px; text-align: right;
}
.cap-timer-low { color: var(--cap-bad); animation: cap-pulse .8s ease-in-out infinite; }
@keyframes cap-pulse { 0%,100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.08); opacity: .7; } }

/* ---- Current bid ----------------------------------------------------- */
.cap-current-bid { text-align: center; margin: 8px 0 18px; }
.cap-bid-amount {
	font-size: 52px; font-weight: 900; line-height: 1;
	background: linear-gradient(90deg, var(--cap-accent), #ffd97a);
	-webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent;
	font-variant-numeric: tabular-nums;
}
.cap-leading { font-size: 16px; font-weight: 700; margin-top: 6px; }

/* ---- Buttons --------------------------------------------------------- */
.cap-btn {
	appearance: none; cursor: pointer;
	font: inherit; font-weight: 700;
	color: var(--cap-text);
	background: rgba(255, 255, 255, 0.10);
	border: 1px solid var(--cap-glass-border);
	border-radius: 12px;
	padding: 11px 16px;
	transition: transform .08s ease, background .15s ease, box-shadow .15s ease;
}
.cap-btn:hover { background: rgba(255, 255, 255, 0.18); transform: translateY(-1px); }
.cap-btn:active { transform: translateY(0); }
.cap-btn:disabled { opacity: .5; cursor: default; transform: none; }
.cap-btn-inc { background: linear-gradient(180deg, rgba(45,212,191,.22), rgba(45,212,191,.10)); border-color: rgba(45,212,191,.4); }
.cap-btn-good { background: linear-gradient(180deg, rgba(34,197,94,.3), rgba(34,197,94,.14)); border-color: rgba(34,197,94,.5); }
.cap-btn-warn { background: linear-gradient(180deg, rgba(249,115,22,.3), rgba(249,115,22,.14)); border-color: rgba(249,115,22,.5); }
.cap-btn-ghost { background: transparent; }

.cap-bid-controls { margin-top: 8px; }
.cap-bid-buttons { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.cap-custom-bid { display: flex; gap: 8px; flex: 1 1 100%; margin-top: 4px; }
.cap-custom-bid input {
	flex: 1; padding: 11px 14px; border-radius: 12px;
	background: rgba(0,0,0,.25); border: 1px solid var(--cap-glass-border); color: var(--cap-text);
}
.cap-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 6px; }
.cap-field span { font-size: 12px; color: var(--cap-muted); text-transform: uppercase; letter-spacing: .04em; }
.cap-field select {
	padding: 10px 12px; border-radius: 12px;
	background: rgba(0,0,0,.25); border: 1px solid var(--cap-glass-border); color: var(--cap-text);
}

/* ---- Auctioneer + toast --------------------------------------------- */
.cap-auctioneer { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--cap-glass-border); }
.cap-control-buttons { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.cap-control-buttons .cap-btn { padding: 9px 13px; font-size: 14px; }
.cap-toast {
	margin: 14px 0 0; padding: 10px 14px; border-radius: 12px; font-weight: 600;
}
.cap-toast-ok { background: rgba(34,197,94,.16); color: #86efac; }
.cap-toast-error { background: rgba(239,68,68,.16); color: #fca5a5; }

/* ---- Teams + history lists ------------------------------------------ */
.cap-team-list, .cap-history { list-style: none; margin: 0; padding: 0; }
.cap-team-row, .cap-history li {
	display: flex; align-items: center; gap: 10px;
	padding: 10px 4px; border-bottom: 1px solid rgba(255,255,255,.06);
}
.cap-team-name { flex: 1; font-weight: 600; }
.cap-team-meta { font-size: 13px; color: var(--cap-muted); font-variant-numeric: tabular-nums; }
.cap-history strong { margin-left: auto; color: var(--cap-accent); font-variant-numeric: tabular-nums; }
.cap-dot { width: 12px; height: 12px; border-radius: 50%; display: inline-block; flex: 0 0 auto; }

/* ---- Generic grids / cards (leaderboard, shortcodes) ---------------- */
.cap-grid { display: grid; gap: 16px; }
.cap-stats-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.cap-teams-grid { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.cap-card, .cap-stat, .cap-team-card {
	background: var(--cap-glass); border: 1px solid var(--cap-glass-border);
	border-radius: var(--cap-radius); padding: 18px; box-shadow: var(--cap-shadow);
	backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
}
.cap-stat { display: flex; flex-direction: column; gap: 6px; }
.cap-stat strong { font-size: 24px; color: var(--cap-accent); }
.cap-meter { height: 8px; border-radius: 999px; background: rgba(255,255,255,.08); overflow: hidden; margin-top: 10px; }
.cap-meter > span { display: block; height: 100%; background: linear-gradient(90deg, var(--cap-accent-2), var(--cap-accent)); }

/* ---- Tables ---------------------------------------------------------- */
.cap-table { width: 100%; border-collapse: collapse; }
.cap-table th, .cap-table td { text-align: left; padding: 12px 10px; border-bottom: 1px solid rgba(255,255,255,.07); }
.cap-table th { font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--cap-muted); }
.cap-table td { font-variant-numeric: tabular-nums; }

/* ---- Big screen ------------------------------------------------------ */
.cap-bigscreen { padding: 4vh 4vw; min-height: 80vh; }
.cap-bs-stage { display: grid; grid-template-columns: 1fr 1.2fr; gap: 4vw; align-items: center; }
.cap-bs-photo {
	width: 100%; aspect-ratio: 3 / 4; border-radius: 24px;
	background: linear-gradient(160deg, #1c2238, #0c1020); background-size: cover; background-position: center top;
	border: 1px solid var(--cap-glass-border);
}
.cap-bs-name { font-size: 5vw; line-height: 1; margin: 0 0 2vh; }
.cap-bs-timer { font-size: 8vw; font-weight: 900; color: var(--cap-accent-2); font-variant-numeric: tabular-nums; }
.cap-bs-amount {
	font-size: 9vw; font-weight: 900; line-height: 1;
	background: linear-gradient(90deg, var(--cap-accent), #ffd97a);
	-webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.cap-bs-leading { font-size: 3vw; font-weight: 700; margin-top: 1vh; }
.cap-bs-teams { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 4vh; list-style: none; padding: 0; }

/* ---- Responsive ------------------------------------------------------ */
@media (max-width: 980px) {
	.cap-live-grid { grid-template-columns: 1fr; }
	.cap-bs-stage { grid-template-columns: 1fr; }
	.cap-bs-name { font-size: 32px; }
	.cap-bs-timer { font-size: 64px; }
	.cap-bs-amount { font-size: 56px; }
	.cap-bs-leading { font-size: 22px; }
}
@media (max-width: 560px) {
	.cap-app { padding: 14px; }
	.cap-bid-amount { font-size: 40px; }
	.cap-player-name { font-size: 22px; }
	.cap-bid-buttons .cap-btn { flex: 1 1 calc(50% - 10px); }
}

/* ---- Analytics dashboard -------------------------------------------- */
.cap-analytics-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 16px;
}
.cap-chart-card {
	background: var(--cap-glass);
	border: 1px solid var(--cap-glass-border);
	border-radius: var(--cap-radius);
	padding: 18px;
	box-shadow: var(--cap-shadow);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}
.cap-chart-card h2, .cap-chart-card h3 { font-size: 15px; margin: 0 0 12px; }

/* ---- Player profile -------------------------------------------------- */
.cap-profile-head { display: flex; gap: 20px; align-items: center; margin-bottom: 18px; }
.cap-profile-head .cap-player-photo { width: 120px; flex: 0 0 120px; aspect-ratio: 1/1; margin: 0; }
.cap-profile-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 12px;
	margin-bottom: 18px;
}
.cap-profile-stats .cap-stat { padding: 14px; }
.cap-profile-stats .cap-stat strong { font-size: 22px; color: var(--cap-text); }

/* ---- AI valuation box (admin) --------------------------------------- */
.cap-ai-result { margin-top: 6px; font-size: 12px; line-height: 1.5; }
.cap-ai-box { background: rgba(45,212,191,0.08); border: 1px solid rgba(45,212,191,0.25); border-radius: 8px; padding: 8px 10px; }
.cap-ai-box details { margin-top: 4px; }
.cap-ai-box summary { cursor: pointer; color: #2271b1; }
.cap-ai-box ul { margin: 6px 0 0 16px; padding: 0; }

/* =====================================================================
 * Franchise overview ([auction_overview]) — broadcast control room.
 * ===================================================================== */
.cap-ov{
	--ov-display:"Anton", "Oswald", Impact, var(--cap-font);
	--ov-cond:"Barlow Condensed", "Oswald", var(--cap-font);
	--ov-accent:#ff7a18;
	--ov-accent-2:#ff4d2e;
	padding:18px;
}
.cap-ov .cap-ov-bar{
	display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
	background:linear-gradient(180deg, rgba(20,28,52,.7), rgba(11,17,35,.7));
	border:1px solid var(--cap-glass-border);border-radius:20px;padding:12px 14px;
	backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
	position:sticky;top:10px;z-index:20;
}
.cap-ov-brand{display:flex;align-items:center;gap:10px}
.cap-ov-mark{
	width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:20px;
	background:conic-gradient(from 210deg,#ff7a18,#ff4d2e,#ffb01f,#ff7a18);
	box-shadow:0 0 0 1px rgba(255,255,255,.15),0 8px 22px -8px rgba(255,122,24,.8);
}
.cap-ov-live{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#ff8a5b}
.cap-ov-dot{width:8px;height:8px;border-radius:50%;background:#ff4d2e;animation:cap-ov-pulse 1.6s infinite}
@keyframes cap-ov-pulse{0%{box-shadow:0 0 0 0 rgba(255,77,46,.6)}70%{box-shadow:0 0 0 9px rgba(255,77,46,0)}100%{box-shadow:0 0 0 0 rgba(255,77,46,0)}}

.cap-ov-tabs{display:flex;gap:6px;background:rgba(0,0,0,.28);padding:6px;border-radius:999px;border:1px solid var(--cap-glass-border);overflow:auto}
.cap-ov-tabs::-webkit-scrollbar{display:none}
.cap-ov-tab{
	border:0;cursor:pointer;white-space:nowrap;font-family:var(--ov-cond);font-weight:700;letter-spacing:.08em;
	text-transform:uppercase;font-size:14px;color:#aeb6d4;background:transparent;padding:10px 18px;border-radius:999px;transition:.22s;
}
.cap-ov-tab:hover{color:#fff}
.cap-ov-tab.active{color:#1a1205;background:linear-gradient(135deg,var(--ov-accent),var(--ov-accent-2));box-shadow:0 8px 20px -8px rgba(255,77,46,.9)}

.cap-ov-toggle{display:flex;gap:6px;background:rgba(0,0,0,.28);padding:5px;border-radius:12px;border:1px solid var(--cap-glass-border);transition:opacity .2s}
.cap-ov-vbtn{width:38px;height:34px;border:0;border-radius:9px;background:transparent;cursor:pointer;display:grid;place-items:center;color:#8b94b3;transition:.2s}
.cap-ov-vbtn.active{background:linear-gradient(135deg,var(--ov-accent),var(--ov-accent-2));color:#1a1205}
.cap-ov-vbtn svg{width:18px;height:18px}

.cap-ov-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:26px 4px 16px;flex-wrap:wrap}
.cap-ov-head h2{font-family:var(--ov-display);font-size:clamp(24px,4vw,40px);line-height:.92;letter-spacing:.5px;font-weight:400}
.cap-ov-head h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1.4px rgba(255,255,255,.5)}
.cap-ov-chips{display:flex;gap:10px;flex-wrap:wrap}
.cap-ov-chip{background:var(--cap-glass);border:1px solid var(--cap-glass-border);border-radius:12px;padding:8px 14px}
.cap-ov-chip b{font-family:var(--ov-cond);font-size:20px;display:block;letter-spacing:.04em;font-weight:700}
.cap-ov-chip span{color:var(--cap-muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase}

.cap-ov-panel{display:none}
.cap-ov-panel.show{display:block;animation:cap-ov-fade .4s ease}
@keyframes cap-ov-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* team grid */
.cap-ov-grid{display:grid;gap:16px;grid-template-columns:repeat(5,1fr)}
@media(max-width:1240px){.cap-ov-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1000px){.cap-ov-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.cap-ov-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:440px){.cap-ov-grid{grid-template-columns:1fr}}

.cap-ov-card{
	position:relative;border-radius:16px;overflow:hidden;isolation:isolate;color:#fff;
	border:1px solid rgba(255,255,255,.14);box-shadow:0 22px 44px -26px rgba(0,0,0,.95);
	transform:translateY(14px);opacity:0;animation:cap-ov-rise .6s cubic-bezier(.2,.7,.2,1) forwards;
}
@keyframes cap-ov-rise{to{transform:translateY(0);opacity:1}}
.cap-ov-gloss{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;
	background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.16) 46%,transparent 60%);
	transform:translateX(-120%);transition:transform .7s}
.cap-ov-card:hover{transform:translateY(-6px) scale(1.012)}
.cap-ov-card:hover .cap-ov-gloss{transform:translateX(120%)}
.cap-ov-flash{animation:cap-ov-rise .6s forwards, cap-ov-flashk 1s ease}
@keyframes cap-ov-flashk{0%{box-shadow:0 0 0 2px rgba(255,255,255,.8),0 22px 44px -26px #000}100%{box-shadow:0 22px 44px -26px rgba(0,0,0,.95)}}
.cap-ov-cbody{position:relative;z-index:2;padding:22px 18px 0;text-align:center}
.cap-ov-crest{width:84px;height:84px;border-radius:50%;margin:0 auto 14px;background:#fff;display:grid;place-items:center;
	overflow:hidden;box-shadow:0 10px 26px -10px rgba(0,0,0,.8),0 0 0 5px rgba(255,255,255,.18)}
.cap-ov-crest img{width:100%;height:100%;object-fit:cover}
.cap-ov-mono{font-family:var(--ov-display);font-size:30px}
.cap-ov-cname{font-family:var(--ov-cond);font-weight:700;font-size:17px;letter-spacing:.04em;margin-bottom:8px;opacity:.96}
.cap-ov-flabel{font-size:12px;letter-spacing:.05em;font-weight:700;opacity:.9}
.cap-ov-funds{font-family:var(--ov-display);font-size:28px;letter-spacing:.5px;margin-top:2px;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.cap-ov-foot{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;margin-top:16px;background:rgba(0,0,0,.22);border-top:1px solid rgba(255,255,255,.16)}
.cap-ov-foot>div{padding:11px 6px;text-align:center}
.cap-ov-foot>div:first-child{border-right:1px solid rgba(255,255,255,.16)}
.cap-ov-foot .k{font-size:11px;opacity:.85}
.cap-ov-foot .v{font-family:var(--ov-cond);font-weight:700;font-size:24px;line-height:1.1}
.cap-ov-ribbon{position:absolute;top:12px;left:12px;z-index:4;font-family:var(--ov-cond);font-weight:700;font-size:11px;letter-spacing:.08em;
	background:rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.22);padding:4px 9px;border-radius:8px;text-transform:uppercase}

/* team grid — list mode */
.cap-ov-grid.list{grid-template-columns:1fr;gap:10px}
.cap-ov-grid.list .cap-ov-card{display:grid;grid-template-columns:64px 1.4fr 1fr 1fr 1fr;align-items:center}
.cap-ov-grid.list .cap-ov-cbody{display:contents}
.cap-ov-grid.list .cap-ov-crest{width:46px;height:46px;margin:12px 0 12px 16px;box-shadow:0 0 0 3px rgba(255,255,255,.2)}
.cap-ov-grid.list .cap-ov-mono{font-size:18px}
.cap-ov-grid.list .cap-ov-cname{text-align:left;font-size:18px;margin:0;padding:10px 0}
.cap-ov-grid.list .cap-ov-flabel{display:none}
.cap-ov-grid.list .cap-ov-funds{font-size:22px}
.cap-ov-grid.list .cap-ov-foot{display:contents}
.cap-ov-grid.list .cap-ov-foot>div{background:transparent;border:0 !important;padding:0;text-align:center}
.cap-ov-grid.list .cap-ov-ribbon{display:none}
@media(max-width:720px){
	.cap-ov-grid.list .cap-ov-card{grid-template-columns:46px 1fr 1fr}
	.cap-ov-grid.list .cap-ov-cname{grid-column:2/4}
}

/* rank list (top buys / unsold) */
.cap-ov-ranklist{display:grid;gap:10px}
.cap-ov-row{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:14px;
	background:linear-gradient(120deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
	border:1px solid var(--cap-glass-border);border-radius:14px;padding:12px 16px;
	transform:translateY(10px);opacity:0;animation:cap-ov-rise .5s ease forwards}
.cap-ov-row:hover{border-color:rgba(255,122,24,.4)}
.cap-ov-rnk{font-family:var(--ov-display);font-size:26px;color:transparent;-webkit-text-stroke:1.4px var(--ov-accent);text-align:center}
.cap-ov-rnk-muted{-webkit-text-stroke-color:var(--cap-muted)}
.cap-ov-pname{font-weight:800;font-size:16px}
.cap-ov-pmeta{color:var(--cap-muted);font-size:12.5px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:3px}
.cap-ov-tdot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 auto}
.cap-ov-roletag{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--cap-glass-border);border-radius:999px;padding:2px 8px}
.cap-ov-price{font-family:var(--ov-cond);font-weight:700;font-size:24px;text-align:right;white-space:nowrap;color:var(--cap-price,#fff)}
.cap-ov-price-base{color:var(--cap-price,var(--cap-muted));font-size:18px}
.cap-ov-price small{display:block;font-family:var(--cap-font);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--cap-muted);font-weight:600}

/* sold grid */
.cap-ov-soldgrid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.cap-ov-soldgrid.list{grid-template-columns:1fr}
.cap-ov-soldcard{position:relative;overflow:hidden;background:var(--cap-glass);border:1px solid var(--cap-glass-border);border-radius:14px;padding:16px 16px 16px 20px;
	transform:translateY(10px);opacity:0;animation:cap-ov-rise .5s ease forwards}
.cap-ov-soldbar{position:absolute;left:0;top:0;bottom:0;width:5px}
.cap-ov-soldcard h4{font-size:16px;font-weight:800;color:#ffffff}
.cap-ov-smeta{color:var(--cap-muted);font-size:12px;margin:4px 0 12px;display:flex;align-items:center;gap:6px}
.cap-ov-sprice{font-family:var(--ov-display);font-size:23px;color:var(--cap-price,#fff)}
.cap-ov-soldgrid.list .cap-ov-soldcard{display:flex;align-items:center;gap:16px}
.cap-ov-soldgrid.list .cap-ov-smeta{margin:2px 0 0}
.cap-ov-soldgrid.list .cap-ov-sprice{margin-left:auto}

/* videos */
.cap-ov-videos{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.cap-ov-video{display:block;text-decoration:none;color:inherit;border-radius:16px;overflow:hidden;border:1px solid var(--cap-glass-border);background:var(--cap-glass);
	transform:translateY(12px);opacity:0;animation:cap-ov-rise .55s ease forwards}
.cap-ov-thumb{aspect-ratio:16/9;position:relative;display:grid;place-items:center;background:linear-gradient(140deg,#1c2238,#0c1020)}
.cap-ov-play{width:56px;height:56px;border-radius:50%;background:rgba(0,0,0,.45);display:grid;place-items:center;border:1px solid rgba(255,255,255,.4);transition:.25s}
.cap-ov-video:hover .cap-ov-play{transform:scale(1.12);background:var(--ov-accent);border-color:transparent}
.cap-ov-play svg{width:22px;height:22px;margin-left:3px;fill:#fff}
.cap-ov-dur{position:absolute;bottom:10px;right:10px;background:rgba(0,0,0,.6);font-size:11px;padding:3px 7px;border-radius:6px;font-weight:700}
.cap-ov-vmeta{padding:14px 16px}
.cap-ov-vmeta h4{font-size:15px;font-weight:700}

.cap-ov-empty{padding:48px 20px;text-align:center;color:var(--cap-muted);grid-column:1/-1}

/* =====================================================================
 * Selectable list-card styles (Settings → "List Card Style").
 * A `cap-cards-{slug}` class on the overview wrapper picks one. These
 * restyle the surface of the Top Buys / Unsold rows (.cap-ov-row) and
 * the Sold cards (.cap-ov-soldcard) so they read clearly over a busy
 * stadium background. Use solid colours (no var()) for robustness.
 * ===================================================================== */
/* 1 — Solid Slate */
.cap-cards-solid .cap-ov-row,.cap-cards-solid .cap-ov-soldcard{
	background:#10162a;border:1px solid #283354;box-shadow:0 10px 24px -16px rgba(0,0,0,.9);backdrop-filter:none}
.cap-cards-solid .cap-ov-row:hover,.cap-cards-solid .cap-ov-soldcard:hover{border-color:rgba(255,122,24,.5);background:#131a30}

/* 2 — Frosted Glass (deep) */
.cap-cards-glass .cap-ov-row,.cap-cards-glass .cap-ov-soldcard{
	background:rgba(10,15,28,.55);border:1px solid rgba(255,255,255,.14);
	-webkit-backdrop-filter:blur(16px) saturate(120%);backdrop-filter:blur(16px) saturate(120%);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 8px 26px -18px rgba(0,0,0,.8)}
.cap-cards-glass .cap-ov-row:hover,.cap-cards-glass .cap-ov-soldcard:hover{background:rgba(14,20,38,.66);border-color:rgba(255,255,255,.22)}

/* 3 — Accent Bar */
.cap-cards-bar .cap-ov-row{background:#0f1525;border:1px solid #20283f;padding-left:22px;overflow:hidden;backdrop-filter:none}
.cap-cards-bar .cap-ov-row::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#ff7a18,#ff4d2e)}
.cap-cards-bar .cap-ov-row:hover{background:#131a2c;transform:translateX(2px)}
.cap-cards-bar .cap-ov-soldcard{background:#0f1525;border:1px solid #20283f}

/* 4 — Neon Outline */
.cap-cards-neon .cap-ov-row,.cap-cards-neon .cap-ov-soldcard{
	background:rgba(8,12,24,.5);border:1.5px solid rgba(255,122,24,.55);backdrop-filter:none;
	box-shadow:0 0 0 1px rgba(255,122,24,.08),0 6px 22px -14px rgba(255,77,46,.5)}
.cap-cards-neon .cap-ov-row:hover,.cap-cards-neon .cap-ov-soldcard:hover{border-color:#ff7a18;box-shadow:0 0 18px -2px rgba(255,122,24,.45),0 6px 22px -12px rgba(255,77,46,.6)}

/* 5 — Premium Gradient */
.cap-cards-gradient .cap-ov-row,.cap-cards-gradient .cap-ov-soldcard{
	background:linear-gradient(135deg,#1a2238 0%,#0e1322 70%);border:1px solid rgba(255,255,255,.08);backdrop-filter:none;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 14px 30px -20px rgba(0,0,0,.9)}
.cap-cards-gradient .cap-ov-row:hover,.cap-cards-gradient .cap-ov-soldcard:hover{border-color:rgba(255,122,24,.4)}

/* 6 — Floating Pill (elevated) */
.cap-cards-pill .cap-ov-ranklist{gap:14px}
.cap-cards-pill .cap-ov-row,.cap-cards-pill .cap-ov-soldcard{
	background:#121a30;border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:16px 22px;backdrop-filter:none;
	box-shadow:0 18px 38px -22px rgba(0,0,0,1),0 4px 12px -8px rgba(0,0,0,.7)}
.cap-cards-pill .cap-ov-row:hover,.cap-cards-pill .cap-ov-soldcard:hover{transform:translateY(-3px);box-shadow:0 26px 46px -22px rgba(0,0,0,1),0 0 0 1px rgba(255,122,24,.3)}

/* =====================================================================
 * Selectable Sold-card styles (Frontend Design → "Sold Card Style").
 * A `cap-cards-sold-{slug}` class on the overview wrapper picks one; each
 * card carries --tc / --tc-d / --tc-tint / --tc-glow / --tc-light inline.
 * Names are forced light so they never disappear on dark cards.
 * ===================================================================== */
.cap-ov-soldcard h4{color:#fff}
.cap-cards-sold-solid .cap-ov-soldcard{background:#10162a;border:1px solid #283354;box-shadow:0 12px 26px -18px rgba(0,0,0,.95);backdrop-filter:none}
.cap-cards-sold-solid .cap-ov-soldcard:hover{background:#131a30;border-color:rgba(255,122,24,.5)}

.cap-cards-sold-tint .cap-ov-soldcard{background:linear-gradient(160deg,var(--tc-tint,#16203a),#0b0f1c);border:1px solid rgba(255,255,255,.10);backdrop-filter:none}
.cap-cards-sold-tint .cap-ov-soldcard:hover{border-color:var(--tc,#3b82f6)}

.cap-cards-sold-glass .cap-ov-soldcard{background:rgba(10,15,28,.5);border:1px solid rgba(255,255,255,.16);
	-webkit-backdrop-filter:blur(16px) saturate(120%);backdrop-filter:blur(16px) saturate(120%);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 8px 26px -18px rgba(0,0,0,.8)}
.cap-cards-sold-glass .cap-ov-soldcard:hover{background:rgba(14,20,38,.62)}

.cap-cards-sold-glow .cap-ov-soldcard{background:radial-gradient(120% 95% at 0% 0%,var(--tc-glow,#1b2746),transparent 58%),#0d1322;border:1px solid rgba(255,255,255,.09);backdrop-filter:none;box-shadow:0 14px 30px -20px rgba(0,0,0,.9)}
.cap-cards-sold-glow .cap-ov-soldcard:hover{border-color:rgba(255,255,255,.18)}

.cap-cards-sold-outline .cap-ov-soldcard{background:rgba(10,14,26,.55);border:1.6px solid var(--tc,#3b82f6);backdrop-filter:none;box-shadow:0 8px 24px -16px rgba(0,0,0,.8);padding-left:18px}
.cap-cards-sold-outline .cap-ov-soldcard .cap-ov-soldbar{display:none}
.cap-cards-sold-outline .cap-ov-soldcard:hover{box-shadow:0 0 16px -3px var(--tc,#3b82f6),0 8px 24px -14px rgba(0,0,0,.9)}

.cap-cards-sold-pill .cap-ov-soldcard{background:#121a30;border:1px solid rgba(255,255,255,.06);border-radius:18px;backdrop-filter:none;box-shadow:0 18px 38px -22px rgba(0,0,0,1),0 4px 12px -8px rgba(0,0,0,.7)}
.cap-cards-sold-pill .cap-ov-soldcard:hover{transform:translateY(-3px);box-shadow:0 28px 48px -22px rgba(0,0,0,1),0 0 0 1px rgba(255,122,24,.3)}



/* =====================================================================
 * Full-viewport break-out for ALL frontend CAP views.
 * Pulls each .cap-app out of the theme's constrained content column so the
 * dashboards span the whole screen. Scoped to the front end only — the
 * in-admin live screen (body.wp-admin) keeps its normal boxed layout.
 * ===================================================================== */
body:not(.wp-admin):not(.cap-fullscreen) .cap-app{
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
	border-left:0;
	border-right:0;
	border-radius:0;
	padding:26px clamp(32px,7vw,140px);
	overflow-x:hidden;
}
/* The big screen wants every pixel — minimal chrome. */
body:not(.wp-admin) .cap-app.cap-bigscreen{padding:4vh clamp(20px,4vw,64px)}

/* =====================================================================
 * Isolated full-screen template (body.cap-fullscreen).
 * No theme container to escape, so cancel the 100vw break-out — that
 * avoids the horizontal scrollbar — and let the app fill the screen.
 * Placed after the break-out rule so it wins on source order.
 * ===================================================================== */
html, body.cap-fullscreen { overflow-x: hidden; }
body.cap-fullscreen { margin: 0; background: var(--cap-bg, #070b16); }
body.cap-fullscreen .cap-app{
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	margin: 0;
	border: 0;
	border-radius: 0;
	min-height: 100vh;
	padding: 20px clamp(32px,7vw,140px) 32px;
	overflow-x: hidden;
}
body.cap-fullscreen .cap-app.cap-bigscreen{ padding: 3vh clamp(20px,4vw,64px); }
/* Tighten the gap above the top bar inside the isolated page. */
body.cap-fullscreen .cap-ov-head{ margin-top: 18px; }

/* =====================================================================
 * Frontend header / nav (sits outside .cap-app, so colours are explicit).
 * ===================================================================== */
.cap-header{
	position:sticky;top:0;z-index:60;
	background:rgba(8,12,22,.92);
	backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
	border-bottom:1px solid rgba(255,255,255,.08);
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.cap-header *{box-sizing:border-box}
.cap-header-inner{max-width:1480px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:12px clamp(14px,3vw,34px);position:relative}
.cap-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff}
.cap-brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:18px;
	background:conic-gradient(from 210deg,#ff7a18,#ff4d2e,#ffb01f,#ff7a18);box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.cap-brand-text{font-size:18px;font-weight:800;letter-spacing:.4px}
.cap-nav{display:flex;gap:4px;margin-left:6px;flex:1;flex-wrap:wrap}
.cap-nav-link{color:#aeb6d4;text-decoration:none;font-weight:600;font-size:14px;padding:8px 12px;border-radius:9px;transition:.18s;white-space:nowrap}
.cap-nav-link:hover{color:#fff;background:rgba(255,255,255,.06)}
.cap-nav-link.active{color:#fff;background:rgba(255,122,24,.20)}
.cap-acct{display:flex;align-items:center;gap:10px;margin-left:auto}
.cap-acct-user{display:flex;flex-direction:column;line-height:1.1;text-align:right}
.cap-acct-name{color:#fff;font-weight:700;font-size:13px}
.cap-acct-role{color:#8b94b3;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em}
.cap-header .cap-btn{display:inline-block;padding:8px 14px;border-radius:10px;font-weight:700;text-decoration:none;font-size:13px;
	border:1px solid rgba(255,255,255,.14);color:#fff;background:rgba(255,255,255,.08);cursor:pointer}
.cap-header .cap-btn-good{background:linear-gradient(135deg,#ff7a18,#ff4d2e);border-color:transparent;color:#1a1205}
.cap-header .cap-btn-inc{background:linear-gradient(135deg,rgba(45,212,191,.28),rgba(45,212,191,.12));border-color:rgba(45,212,191,.4)}
.cap-header .cap-btn-ghost{background:transparent}
.cap-nav-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.14);color:#fff;width:40px;height:36px;border-radius:9px;cursor:pointer;align-items:center;justify-content:center}
.cap-nav-toggle svg{width:20px;height:20px}
@media(max-width:880px){
	.cap-nav-toggle{display:inline-grid;place-items:center}
	.cap-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:rgba(8,12,22,.99);
		border-bottom:1px solid rgba(255,255,255,.08);padding:8px 14px;margin:0}
	.cap-nav.open{display:flex}
	.cap-acct-user{display:none}
}

/* =====================================================================
 * Frontend login — modern SaaS split-panel UI (v1.7.0).
 * Posts to WordPress core auth; only the presentation is custom.
 * Scoped under .cap-auth so nothing leaks into the host theme.
 * ===================================================================== */
.cap-auth{
	font-family:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
	display:grid;place-items:center;min-height:auto;padding:clamp(14px,3vw,32px);
}
.cap-auth-card{
	width:100%;max-width:620px;display:grid;grid-template-columns:1.06fr .94fr;
	background:#fff;border-radius:20px;overflow:hidden;
	border:1px solid rgba(255,255,255,.5);
	box-shadow:0 20px 52px -22px rgba(8,15,40,.55),0 5px 16px -12px rgba(8,15,40,.4);
}

/* ---- Panes ---- */
.cap-auth-pane{position:relative}
.cap-auth-form{background:#fff;display:flex;align-items:center}
.cap-auth-form-inner,.cap-auth-signedin{width:100%;padding:clamp(20px,2.4vw,28px)}

/* ---- Brand mark ---- */
.cap-auth-mark{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.cap-auth-mark svg{width:27px;height:27px;border-radius:8px;display:block;box-shadow:0 6px 16px -6px rgba(37,99,235,.6)}
.cap-auth-mark-text{font-weight:800;font-size:15px;color:#0f172a;letter-spacing:-.01em}

/* ---- Headings ---- */
.cap-auth-title{font-size:clamp(19px,2vw,22px);font-weight:800;color:#0f172a;margin:0 0 4px;letter-spacing:-.02em;line-height:1.15}
.cap-auth-sub{font-size:12.5px;color:#475569;margin:0 0 16px;line-height:1.45;text-transform:none;letter-spacing:0}
.cap-auth-tabs{display:flex;gap:4px;background:#eef1f6;border:1px solid #e2e6ee;border-radius:12px;padding:4px;margin:0 0 16px}
.cap-auth-tab{flex:1;border:0;background:transparent;cursor:pointer;font:inherit;font-size:13px;font-weight:700;color:#64748b;padding:9px 10px;border-radius:9px;transition:background .15s,color .15s,box-shadow .15s}
.cap-auth-tab:hover{color:#1f2937}
.cap-auth-tab.is-active{background:#fff;color:#0f172a;box-shadow:0 1px 3px rgba(15,23,42,.12)}
.cap-auth-formwrap[hidden]{display:none}

/* ---- Error banner ---- */
.cap-auth-error{display:flex;align-items:center;gap:8px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;
	padding:9px 12px;border-radius:11px;font-size:12.5px;font-weight:500;margin-bottom:14px}
.cap-auth-error svg{width:17px;height:17px;flex:none}

/* ---- Fields ---- */
.cap-auth-fields{display:flex;flex-direction:column;gap:11px}
.cap-auth-field{display:block}
.cap-auth-label{display:block;font-size:12px;font-weight:600;color:#0f172a;margin:0 0 5px;letter-spacing:0;text-transform:none}
.cap-auth-input-wrap{position:relative;display:flex;align-items:center}
.cap-auth-ico{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:#94a3b8;pointer-events:none;z-index:2}
/* Scoped + !important so a host theme's own input padding can't slide the
   placeholder text under the leading icon. */
.cap-auth .cap-auth-input-wrap input{
	box-sizing:border-box;width:100%;height:42px;border-radius:11px;
	padding:0 14px 0 42px !important;
	background:#f4f6fb;border:1.5px solid #dfe4ee;color:#0f172a;
	font-family:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:14px;font-weight:500;line-height:normal;
	transition:border-color .15s,box-shadow .15s,background .15s;outline:none;text-indent:0}
.cap-auth .cap-auth-input-wrap input::placeholder{color:#9aa6bd;font-weight:400;opacity:1}
.cap-auth .cap-auth-input-wrap input:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.18)}
.cap-auth .cap-auth-input-wrap input[name=pwd]{padding-right:44px !important}
.cap-auth-eye{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;border:0;background:transparent;
	color:#94a3b8;cursor:pointer;border-radius:8px;transition:color .15s,background .15s;z-index:2}
.cap-auth-eye svg{width:17px;height:17px}
.cap-auth-eye:hover{color:#475569;background:#eef1f7}
.cap-auth-eye.is-on{color:#2563eb}

/* ---- Row: remember + forgot ---- */
.cap-auth-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:1px}
.cap-auth-remember{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#475569;cursor:pointer;user-select:none;font-weight:500}
.cap-auth-remember input{position:absolute;opacity:0;width:0;height:0}
.cap-auth-check{width:17px;height:17px;border-radius:6px;border:1.5px solid #cbd3e1;background:#fff;display:inline-grid;place-items:center;transition:all .15s;flex:none}
.cap-auth-check::after{content:"";width:8px;height:8px;border-radius:2px;background:#2563eb;transform:scale(0);transition:transform .15s}
.cap-auth-remember input:checked + .cap-auth-check{border-color:#2563eb;background:rgba(37,99,235,.08)}
.cap-auth-remember input:checked + .cap-auth-check::after{transform:scale(1)}
.cap-auth-remember input:focus-visible + .cap-auth-check{box-shadow:0 0 0 4px rgba(37,99,235,.18)}
.cap-auth-link{color:#2563eb;font-size:12.5px;font-weight:600;text-decoration:none}
.cap-auth-link:hover{text-decoration:underline}

/* ---- Buttons ---- */
.cap-auth-btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:43px;
	border-radius:11px;font-family:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:14px;font-weight:700;cursor:pointer;
	text-decoration:none;border:1.5px solid transparent;transition:transform .12s,box-shadow .2s,background .2s,border-color .2s;letter-spacing:.01em}
.cap-auth-btn:active{transform:translateY(1px)}
.cap-auth-submit{margin-top:15px}
.cap-auth-btn-primary{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 12px 24px -12px rgba(37,99,235,.85),inset 0 1px 0 rgba(255,255,255,.25)}
.cap-auth-btn-primary:hover{box-shadow:0 16px 30px -12px rgba(37,99,235,.95);transform:translateY(-1px)}
.cap-auth-btn-soft{color:#0f172a;background:#f1f4fa;border-color:#e6e9f0}
.cap-auth-btn-soft:hover{background:#e8edf6}

/* ---- Divider ---- */
.cap-auth-divider{display:flex;align-items:center;gap:13px;margin:14px 0 11px;color:#94a3b8;font-size:12px;font-weight:600;text-transform:lowercase}
.cap-auth-divider::before,.cap-auth-divider::after{content:"";height:1px;flex:1;background:#e6e9f0}

/* ---- Social (auto-fit: one button spans full width, two share the row) ---- */
.cap-auth-social{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.cap-auth-social-btn{display:flex;align-items:center;justify-content:center;gap:9px;height:42px;border-radius:11px;
	background:#fff;border:1.5px solid #e6e9f0;color:#0f172a;font-size:13px;font-weight:600;
	text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s}
.cap-auth-social-btn svg{width:17px;height:17px;flex:none}
.cap-auth-social-btn:hover{background:#f8fafc;border-color:#cdd6e6;box-shadow:0 4px 12px -6px rgba(8,15,40,.25)}

.cap-auth-foot{margin-top:15px;text-align:center;font-size:11.5px;color:#94a3b8;text-transform:none;letter-spacing:0}

/* ---- Signed-in state ---- */
.cap-auth-signedin{text-align:center}
.cap-auth-avatar{width:62px;height:62px;border-radius:18px;margin:6px auto 18px;display:grid;place-items:center;
	font-size:26px;font-weight:800;color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 12px 26px -12px rgba(37,99,235,.8)}
.cap-auth-rolepill{display:inline-block;margin-left:8px;padding:3px 10px;border-radius:999px;background:rgba(37,99,235,.1);color:#2563eb;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}
.cap-auth-cta-stack{display:flex;flex-direction:column;gap:11px;margin-top:24px}

/* ---- Hero pane ---- */
.cap-auth-hero{
	display:flex;align-items:center;justify-content:center;overflow:hidden;
	background:
		radial-gradient(120% 90% at 20% 0%,rgba(45,212,191,.28),transparent 55%),
		radial-gradient(120% 100% at 100% 100%,rgba(255,176,31,.22),transparent 50%),
		linear-gradient(150deg,#123b2e 0%,#0e2a45 48%,#0a1730 100%);
}
.cap-auth-hero-glow{position:absolute;inset:0;background:
	radial-gradient(60% 50% at 50% 38%,rgba(255,255,255,.10),transparent 70%);pointer-events:none}
.cap-auth-hero-content{position:relative;z-index:1;text-align:center;color:#fff;padding:28px 24px;max-width:300px}
.cap-auth-emblem{width:88px;height:88px;margin:0 auto 15px;filter:drop-shadow(0 16px 30px rgba(0,0,0,.45))}
.cap-auth-emblem svg{width:100%;height:100%;display:block}
.cap-auth-emblem.has-image{border-radius:18px;overflow:hidden}
.cap-auth-emblem.has-image img{width:100%;height:100%;object-fit:cover;display:block;border-radius:18px}
.cap-auth-hero-title{font-size:20px;font-weight:800;margin:0 0 8px;letter-spacing:-.02em;color:#fff;line-height:1.15}
.cap-auth-hero-tag{font-size:12.5px;line-height:1.5;color:rgba(226,234,255,.82);margin:0 0 15px;text-transform:none;letter-spacing:0}
.cap-auth-hero-points{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;text-align:left}
.cap-auth-hero-points li{position:relative;padding-left:26px;font-size:13px;font-weight:500;color:rgba(232,238,255,.92)}
.cap-auth-hero-points li::before{content:"";position:absolute;left:0;top:1px;width:17px;height:17px;border-radius:50%;
	background:rgba(45,212,191,.22);border:1px solid rgba(45,212,191,.5)}
.cap-auth-hero-points li::after{content:"";position:absolute;left:6px;top:5px;width:5px;height:9px;border:2px solid #5eead4;border-top:0;border-left:0;transform:rotate(40deg)}

/* ---- Responsive ---- */
@media(max-width:760px){
	.cap-auth-card{grid-template-columns:1fr;max-width:380px}
	.cap-auth-hero{order:-1;min-height:auto}
	.cap-auth-hero-content{padding:30px 28px 26px}
	.cap-auth-emblem{width:84px;height:84px;margin-bottom:12px}
	.cap-auth-hero-points{display:none}
	.cap-auth-hero-tag{margin-bottom:0}
}
@media(max-width:420px){
	.cap-auth-social{grid-template-columns:1fr}
}

/* Header offset is unnecessary because it's sticky; ensure app starts clean */
body.cap-fullscreen .cap-header + .cap-app{padding-top:8px}

/* ---- Teams grid cards ([cricket_teams]) ----------------------------- */
.cap-team-card{position:relative;overflow:hidden}
.cap-team-card::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--team,#1e88e5)}
.cap-team-head{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.cap-team-head h3{margin:0;font-size:18px}
.cap-team-card .cap-meter{margin:12px 0 8px}
.cap-team-spend{font-variant-numeric:tabular-nums;font-weight:600;margin:0}
.cap-team-stats{display:flex;justify-content:space-between;gap:10px;margin-top:8px;color:var(--cap-muted);font-size:13px;text-transform:capitalize}
.cap-players-table td:first-child{font-weight:600}

/* =====================================================================
 * My Profile — self-service player form (Player role).
 * ===================================================================== */
.cap-myprofile{max-width:940px;margin:0 auto}
/* Center + compact the profile view (overrides the full-bleed .cap-app rules). */
body.cap-fullscreen .cap-app.cap-myprofile,
body:not(.wp-admin):not(.cap-fullscreen) .cap-app.cap-myprofile{
	width:auto;max-width:960px;margin-left:auto;margin-right:auto;
	padding-left:clamp(16px,4vw,32px);padding-right:clamp(16px,4vw,32px)
}
.cap-pview .pf-cols{gap:16px}
/* The lighter layouts read better a touch narrower and centered. */
.cap-pview-circle.cap-app.cap-myprofile,
.cap-pview-card.cap-app.cap-myprofile{max-width:880px}
.cap-pview-circle .pf-cols,
.cap-pview-card .pf-cols{grid-template-columns:1.5fr 1fr}
.cap-pintro{color:#cdd6ea;font-size:14px;margin:10px 0 0;line-height:1.5}
.cap-psaved{margin:12px 0 0;padding:11px 15px;border-radius:12px;background:rgba(52,211,153,.12);border:1px solid rgba(52,211,153,.4);color:#a7f3d0;font-size:13.5px}
.cap-perror{margin:12px 0 0;padding:11px 15px;border-radius:12px;background:rgba(244,63,94,.12);border:1px solid rgba(244,63,94,.4);color:#fecdd3;font-size:13.5px}
.cap-pstatus{margin:12px 0 0;padding:12px 16px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#eaf0fb;font-size:13.5px}
.cap-pstatus.sold{border-color:rgba(52,211,153,.4);background:rgba(52,211,153,.1);color:#d1fae5}
.cap-pform{margin-top:14px}
.cap-pform .cap-pgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.cap-pform label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#cdd6ea;margin:0}
.cap-pform label.cap-pwide{grid-column:1/-1}
.cap-pform > label.cap-pwide{margin-bottom:14px}
.cap-pform label > span{font-weight:600;color:#eaf0fb;font-size:12.5px}
.cap-pform input,.cap-pform select{background:#0e1424;border:1px solid #2a3450;color:#fff;border-radius:10px;padding:10px 12px;font:inherit;font-size:14px;width:100%}
.cap-pform input::placeholder{color:#6c7494}
.cap-pform select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:38px;cursor:pointer;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%239fb0d6' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 14px center;background-size:14px}
.cap-pform input:focus,.cap-pform select:focus{outline:none;border-color:#ff8a3c;box-shadow:0 0 0 3px rgba(255,122,24,.2)}
.cap-pform h3{margin:20px 0 10px;font-family:var(--ov-cond,"Barlow Condensed",sans-serif);font-size:14px;color:#ff8a3c;text-transform:uppercase;letter-spacing:.07em}
.cap-pform .cap-check{flex-direction:row;align-items:center;gap:9px;margin-top:14px;color:#eaf0fb;font-size:13.5px}
.cap-pform .cap-check input{width:auto}
.cap-pform-actions{margin-top:20px}

/* =====================================================================
 * My Profile — two-column layouts (Frontend Design → "Profile Layout").
 * A `cap-pview-{slug}` class on the wrapper picks one. Left = details,
 * right = photo panel. Single markup; CSS shows the right extras per style.
 * ===================================================================== */
.cap-pview .pf-cols{display:grid;grid-template-columns:1.65fr 1fr;gap:18px;align-items:start}
.cap-pview .pf-left{min-width:0;background:rgba(8,12,24,.55);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:18px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.cap-pview .pf-right{min-width:0}
.cap-pform .cap-pwide{grid-column:1/-1}
.cap-pform > label.cap-pwide{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;max-width:520px}

/* photo panel — shared bits; extras hidden by default */
.cap-photo{position:relative}
.cap-photo-img{position:relative;aspect-ratio:4/5;border-radius:14px;display:flex;align-items:center;justify-content:center;
	background:#0c1322 center/cover no-repeat;border:1px solid #232d49;color:#67708f;overflow:hidden}
.cap-photo-img.has-photo .cap-photo-empty{display:none}
.cap-photo-empty{display:flex;flex-direction:column;align-items:center;gap:8px}
.cap-photo-ico{width:52px;height:52px;opacity:.6}
.cap-photo-add{font-size:12.5px}
.cap-photo-num,.cap-photo-name,.cap-photo-chips,.cap-photo-hint{display:none}
.cap-photo-name{font-weight:800;font-size:17px;color:#fff}
.cap-photo-name small{display:block;font-weight:600;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#ffce47;margin-top:2px}
.cap-photo-file{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0)}
.cap-photo-btn{display:block;text-align:center;margin-top:12px;background:#1b2440;border:1px solid #33405f;color:#dbe4fb;border-radius:9px;padding:9px;font-weight:600;font-size:13px;cursor:pointer}
.cap-photo-btn:hover{border-color:#ff8a3c}
.cap-photo-chips{grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:12px}
.cap-photo-chips span{background:#0e1424;border:1px solid #232d49;border-radius:9px;padding:8px 4px;text-align:center;font-size:10px;color:#aeb6d4;display:flex;flex-direction:column;gap:2px}
.cap-photo-chips b{font-family:var(--ov-cond,"Barlow Condensed",sans-serif);font-size:17px;color:#fff}
.cap-photo-hint{margin:8px 0 0;font-size:11px;color:#8b94b3;text-align:center}

/* 1 Split Card */
.cap-pview-split .cap-photo{background:rgba(8,12,24,.55);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.cap-pview-split .cap-photo-img{border-style:dashed;border-color:#33405f}

/* 2 Portrait Hero */
.cap-pview-hero .cap-photo-img{aspect-ratio:3/4;border-radius:16px;background-color:#101830}
.cap-pview-hero .cap-photo-name{display:block;position:absolute;left:0;right:0;bottom:0;padding:16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.82))}

/* 3 Player Card */
.cap-pview-card .cap-photo{position:relative;border-radius:18px;padding:18px 16px 16px;text-align:center;
	background-image:linear-gradient(#0d1322,#0d1322),linear-gradient(140deg,#ff7a18,#ff3d2e);
	background-origin:border-box;background-clip:padding-box,border-box;border:2px solid transparent;box-shadow:0 18px 40px -22px rgba(255,77,46,.6)}
.cap-pview-card .cap-photo-img{aspect-ratio:1/1;width:130px;margin:4px auto 12px;border-radius:50%;border:3px solid rgba(255,138,60,.6)}
.cap-pview-card .cap-photo-name{display:block}
.cap-pview-card .cap-photo-num{display:block;position:absolute;top:8px;right:14px;font-family:var(--ov-display,"Anton",sans-serif);font-size:26px;color:rgba(255,138,60,.55)}
.cap-pview-card .cap-photo-btn{background:#fff;color:#0c1322;border:0}

/* 4 Circle Avatar */
.cap-pview-circle .cap-photo{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px 16px;text-align:center}
.cap-pview-circle .cap-photo-img{aspect-ratio:1/1;width:150px;margin:0 auto;border-radius:50%;box-shadow:0 0 0 4px #0c1322,0 0 0 7px rgba(255,138,60,.7)}
.cap-pview-circle .cap-photo-btn{background:transparent;border:1px solid #ff8a3c;color:#ffb27a;border-radius:999px;display:inline-block;padding:8px 18px;margin-top:14px}
.cap-pview-circle .cap-photo-hint{display:block}

/* 5 Glass Panel */
.cap-pview-glass .cap-photo{border-radius:18px;padding:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}
.cap-pview-glass .cap-photo-img{aspect-ratio:1/1;border-radius:12px;background-color:rgba(8,12,24,.5);border:0}
.cap-pview-glass .cap-photo-btn{position:absolute;right:24px;bottom:24px;margin:0;background:#ff7a18;border:0;color:#fff;border-radius:999px;padding:9px 16px;box-shadow:0 8px 20px -8px rgba(255,122,24,.8)}

/* 6 Photo + Quick Stats */
.cap-pview-stats .pf-cols{grid-template-columns:2fr 1fr}
.cap-pview-stats .cap-photo{background:rgba(8,12,24,.55);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.cap-pview-stats .cap-photo-img{aspect-ratio:1/1;border-radius:12px}
.cap-pview-stats .cap-photo-chips{display:grid}

@media(max-width:760px){.cap-pview .pf-cols{grid-template-columns:1fr!important}}
