/* ReptiCart Plan Limits — plan-limits.css
   Reptinetics dark design system */

:root {
  --rc-bg:#111;--rc-bg2:#1c1c1c;--rc-bg3:#252525;--rc-bg4:#2e2e2e;
  --rc-green:#4ade80;--rc-amber:#fbbf24;--rc-red:#ef4444;
  --rc-text:#f0f0f0;--rc-text2:#a0a0a0;--rc-text3:#555;
  --rc-border:#2a2a2a;--rc-border2:#383838;
  --rc-mono:'Space Mono','Courier New',monospace;
}

/* ── Quota Widget ── */
.rc-quota-widget { background:var(--rc-bg2); border:1px solid var(--rc-border); border-radius:12px; overflow:hidden; }
.rc-quota-header { background:var(--rc-bg3); padding:10px 14px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--rc-border); }
.rc-quota-label { font-family:var(--rc-mono); font-size:10px; color:var(--rc-text3); text-transform:uppercase; letter-spacing:.08em; }
.rc-plan-badge { font-family:var(--rc-mono); font-size:10px; font-weight:700; padding:3px 9px; border-radius:4px; }
.rc-plan-free      { background:var(--rc-bg4);              color:var(--rc-text2); }
.rc-plan-basic     { background:rgba(96,165,250,.15);        color:#60a5fa; }
.rc-plan-breeder   { background:rgba(74,222,128,.15);        color:var(--rc-green); }
.rc-plan-pro       { background:rgba(251,191,36,.15);        color:var(--rc-amber); }
.rc-plan-unlimited { background:rgba(239,68,68,.15);         color:var(--rc-red); }

.rc-quota-row { display:flex; align-items:center; gap:10px; padding:10px 14px; border-bottom:1px solid var(--rc-border); }
.rc-quota-row:last-of-type { border-bottom:none; }
.rc-quota-icon { font-size:16px; flex-shrink:0; }
.rc-quota-body { flex:1; }
.rc-quota-name { font-size:12px; color:var(--rc-text2); margin-bottom:4px; }
.rc-quota-nums { font-size:11px; color:var(--rc-text2); margin-bottom:4px; font-family:var(--rc-mono); }
.rc-unlimited { color:var(--rc-green) !important; }
.rc-blocked   { color:var(--rc-red)   !important; }
.rc-warn      { color:var(--rc-amber); }
.rc-ok        { color:var(--rc-green); }
.rc-quota-bar { height:4px; background:var(--rc-bg3); border-radius:99px; overflow:hidden; }
.rc-quota-fill { height:100%; border-radius:99px; transition:width .4s; }
.rc-fill-ok   { background:var(--rc-green); }
.rc-fill-warn { background:var(--rc-amber); }
.rc-fill-full { background:var(--rc-red); }

.rc-quota-perks { display:flex; gap:6px; flex-wrap:wrap; padding:10px 14px; border-bottom:1px solid var(--rc-border); }
.rc-perk { font-size:10px; padding:2px 7px; border-radius:4px; }
.rc-perk-on   { background:rgba(74,222,128,.12); color:var(--rc-green); }
.rc-perk-off  { background:var(--rc-bg3); color:var(--rc-text3); }
.rc-perk-info { background:rgba(96,165,250,.12); color:#60a5fa; }

.rc-quota-footer { padding:10px 14px; display:flex; justify-content:space-between; align-items:center; }
.rc-reset-label { font-size:11px; color:var(--rc-text3); font-family:var(--rc-mono); }
.rc-upgrade-btn { font-size:11px; color:var(--rc-green); text-decoration:none; font-weight:600; }
.rc-upgrade-btn:hover { text-decoration:underline; }

.rc-quota-alert { margin:0 14px 10px; padding:8px 12px; border-radius:6px; font-size:12px; line-height:1.5; }
.rc-alert-red { background:rgba(239,68,68,.1); border:1px solid rgba(239,68,68,.3); color:var(--rc-red); }
.rc-alert-red a { color:var(--rc-red); text-decoration:underline; }

/* ── Seller Dashboard ── */
.rc-seller-dashboard { max-width:1100px; margin:0 auto; padding:20px; }
.rc-sd-header { display:flex; justify-content:space-between; align-items:flex-start; padding:16px 0 0; margin-bottom:0; }
.rc-sd-eyebrow { font-family:var(--rc-mono); font-size:10px; color:var(--rc-green); letter-spacing:.1em; text-transform:uppercase; margin-bottom:4px; }
.rc-sd-title { font-size:22px; font-weight:700; color:var(--rc-text); font-family:var(--rc-mono); margin:0; }

.rc-sd-tabs { display:flex; gap:5px; padding:12px 0 0; border-bottom:1px solid var(--rc-border); margin-bottom:20px; }
.rc-sd-tab { display:flex; align-items:center; gap:6px; padding:7px 16px; border-radius:99px 99px 0 0; font-size:13px; cursor:pointer; border:1px solid transparent; color:var(--rc-text2); background:transparent; transition:all .15s; font-family:'DM Sans',sans-serif; }
.rc-sd-tab:hover { color:var(--rc-text); }
.rc-sd-tab.active { background:var(--rc-bg2); border-color:var(--rc-border2); color:var(--rc-green); font-weight:600; }
.rc-tab-dot { width:6px; height:6px; border-radius:50%; background:currentColor; }

.rc-sd-body { display:grid; grid-template-columns:1fr 260px; gap:20px; }
@media(max-width:768px){ .rc-sd-body { grid-template-columns:1fr; } }
.rc-sd-main { min-width:0; }

/* Steps */
.rc-steps { display:flex; align-items:center; gap:0; margin-bottom:18px; }
.rc-step { display:flex; align-items:center; gap:7px; }
.rc-step-n { width:22px; height:22px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:700; font-family:var(--rc-mono); flex-shrink:0; background:var(--rc-bg3); border:1px solid var(--rc-border2); color:var(--rc-text3); }
.rc-step-l { font-size:12px; color:var(--rc-text2); }
.rc-step-active .rc-step-n { background:rgba(74,222,128,.15); border-color:var(--rc-green); color:var(--rc-green); }
.rc-step-active .rc-step-l { color:var(--rc-green); font-weight:500; }
.rc-step-done .rc-step-n { background:var(--rc-green); border-color:var(--rc-green); color:#000; }
.rc-step-line { flex:1; height:1px; background:var(--rc-border); margin:0 8px; min-width:16px; }

/* Form fields */
.rc-field { margin-bottom:14px; }
.rc-field label, .rc-field-label { display:block; font-size:12px; color:var(--rc-text2); margin-bottom:6px; font-weight:500; }
.rc-optional { color:var(--rc-text3); font-weight:400; }
.rc-input { width:100%; background:var(--rc-bg3); border:1px solid var(--rc-border2); border-radius:8px; color:var(--rc-text); font-size:14px; font-family:'DM Sans',sans-serif; padding:10px 14px; outline:none; transition:border-color .15s; }
.rc-input:focus { border-color:var(--rc-green); }
.rc-input option { background:var(--rc-bg3); }
.rc-search-input { width:100%; background:var(--rc-bg3); border:1px solid var(--rc-border2); border-radius:8px; color:var(--rc-text); font-size:13px; font-family:'DM Sans',sans-serif; padding:9px 14px; outline:none; margin-bottom:8px; transition:border-color .15s; }
.rc-search-input:focus { border-color:var(--rc-green); }

/* Product list */
.rc-product-list { display:flex; flex-direction:column; gap:5px; max-height:220px; overflow-y:auto; margin-bottom:12px; }
.rc-product-item { display:flex; align-items:center; gap:10px; background:var(--rc-bg3); border:1px solid var(--rc-border); border-radius:8px; padding:9px 12px; cursor:pointer; transition:all .15s; }
.rc-product-item:hover { border-color:var(--rc-border2); background:var(--rc-bg4); }
.rc-product-item.rc-prod-sel { border-color:var(--rc-green); background:rgba(74,222,128,.08); }
.rc-prod-thumb { width:36px; height:36px; border-radius:6px; background:var(--rc-bg4); display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; overflow:hidden; }
.rc-prod-thumb img { width:100%; height:100%; object-fit:cover; }
.rc-prod-name { font-size:13px; color:var(--rc-text); font-weight:500; }
.rc-prod-price { font-size:12px; color:var(--rc-text2); font-family:var(--rc-mono); }

/* Pills */
.rc-pill-row { display:flex; gap:7px; flex-wrap:wrap; }
.rc-pill { padding:7px 16px; border-radius:99px; border:1.5px solid var(--rc-border2); background:transparent; color:var(--rc-text2); font-size:13px; font-weight:500; cursor:pointer; transition:all .15s; font-family:'DM Sans',sans-serif; }
.rc-pill:hover { border-color:var(--rc-green); color:var(--rc-text); }
.rc-pill.rc-pill-sel { background:var(--rc-green); border-color:var(--rc-green); color:#000; font-weight:700; }

/* Price row */
.rc-price-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }

/* Toggle */
.rc-toggle-list { background:var(--rc-bg2); border:1px solid var(--rc-border); border-radius:10px; padding:4px 14px; margin:12px 0; }
.rc-toggle-row { display:flex; justify-content:space-between; align-items:center; padding:10px 0; border-bottom:1px solid var(--rc-border); }
.rc-toggle-row:last-child { border-bottom:none; }
.rc-toggle-label { font-size:13px; color:var(--rc-text); }
.rc-toggle-sub { font-size:11px; color:var(--rc-text3); margin-top:2px; }
.rc-toggle { width:34px; height:19px; background:var(--rc-bg4); border-radius:99px; border:1px solid var(--rc-border2); cursor:pointer; position:relative; transition:background .2s; flex-shrink:0; }
.rc-toggle::after { content:''; position:absolute; width:13px; height:13px; border-radius:50%; background:#fff; top:2px; left:2px; transition:transform .2s; }
.rc-toggle.rc-toggle-on { background:var(--rc-green); border-color:var(--rc-green); }
.rc-toggle.rc-toggle-on::after { transform:translateX(15px); }

/* Selected product bar */
.rc-selected-product { background:var(--rc-bg3); border:1px solid var(--rc-green); border-radius:8px; padding:10px 14px; display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; font-size:13px; font-weight:500; color:var(--rc-text); }
.rc-change-btn { background:transparent; border:none; color:var(--rc-text3); cursor:pointer; font-size:12px; }

/* Summary */
.rc-summary { background:var(--rc-bg3); border:1px solid var(--rc-green); border-radius:10px; padding:14px 16px; margin-bottom:14px; }
.rc-summary-row { display:flex; justify-content:space-between; font-size:13px; padding:4px 0; }
.rc-summary-row span:first-child { color:var(--rc-text2); }
.rc-summary-row span:last-child { color:var(--rc-text); font-weight:500; }
.rc-sum-highlight span:last-child { color:var(--rc-green); font-family:var(--rc-mono); }
.rc-summary-div { height:1px; background:var(--rc-border); margin:6px 0; }

/* Buttons */
.rc-btn-launch { width:100%; padding:13px; background:var(--rc-green); color:#000; border:none; border-radius:8px; font-size:15px; font-weight:700; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .15s; }
.rc-btn-launch:hover { background:#22c55e; transform:translateY(-1px); }
.rc-btn-launch:disabled { background:var(--rc-bg4); color:var(--rc-text3); cursor:not-allowed; transform:none; }
.rc-btn-schedule { background:rgba(74,222,128,.15); color:var(--rc-green); border:1.5px solid var(--rc-green); }
.rc-btn-schedule:hover { background:var(--rc-green); color:#000; }
.rc-btn-next { padding:9px 20px; background:var(--rc-green); color:#000; border:none; border-radius:7px; font-size:13px; font-weight:700; cursor:pointer; font-family:'DM Sans',sans-serif; transition:background .15s; }
.rc-btn-next:disabled { background:var(--rc-bg4); color:var(--rc-text3); cursor:not-allowed; }
.rc-btn-next:not(:disabled):hover { background:#22c55e; }
.rc-btn-secondary { padding:9px 16px; background:transparent; color:var(--rc-text2); border:1px solid var(--rc-border2); border-radius:7px; font-size:13px; cursor:pointer; font-family:'DM Sans',sans-serif; transition:all .15s; }
.rc-btn-secondary:hover { border-color:var(--rc-text2); color:var(--rc-text); }
.rc-btn-golive { width:100%; padding:12px; background:var(--rc-red); color:#fff; border:none; border-radius:7px; font-size:14px; font-weight:700; cursor:pointer; font-family:'DM Sans',sans-serif; display:flex; align-items:center; justify-content:center; gap:8px; transition:background .15s; }
.rc-btn-golive:hover { background:#dc2626; }
.rc-btn-golive:disabled { background:var(--rc-bg4); color:var(--rc-text3); cursor:not-allowed; }
.rc-live-dot-btn { width:8px; height:8px; border-radius:50%; background:currentColor; }
.rc-qa-next-row { display:flex; justify-content:flex-end; gap:8px; margin-top:12px; }

/* Animal grid */
.rc-animal-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:8px; margin-bottom:14px; }
.rc-animal-card { background:var(--rc-bg3); border:1px solid var(--rc-border); border-radius:8px; padding:10px 8px; cursor:pointer; transition:all .15s; text-align:center; }
.rc-animal-card:hover { border-color:var(--rc-border2); }
.rc-animal-card.rc-animal-sel { border-color:var(--rc-green); background:rgba(74,222,128,.08); }
.rc-animal-img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:6px; margin-bottom:4px; }
.rc-animal-emoji { font-size:28px; margin-bottom:4px; }
.rc-animal-name { font-size:11px; font-weight:500; color:var(--rc-text); margin-bottom:2px; line-height:1.3; }
.rc-animal-price { font-size:10px; color:var(--rc-green); font-family:var(--rc-mono); }

/* Time row */
.rc-time-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:12px; }

/* Info box */
.rc-info-box { background:var(--rc-bg3); border-left:3px solid var(--rc-green); border-radius:0 8px 8px 0; padding:10px 14px; font-size:12px; color:var(--rc-text2); margin-bottom:14px; line-height:1.6; }

/* Fee notice */
.rc-fee-notice { background:rgba(251,191,36,.08); border:1px solid rgba(251,191,36,.3); border-radius:8px; padding:10px 14px; font-size:12px; color:var(--rc-amber); margin-top:10px; }

/* Locked */
.rc-locked-msg { background:rgba(239,68,68,.08); border:1px solid rgba(239,68,68,.3); border-radius:10px; padding:16px; font-size:13px; color:var(--rc-red); line-height:1.6; }
.rc-locked-warn { background:rgba(251,191,36,.08); border-color:rgba(251,191,36,.3); color:var(--rc-amber); }
.rc-upgrade-link { color:var(--rc-green); font-weight:600; text-decoration:none; margin-left:6px; }
.rc-upgrade-link:hover { text-decoration:underline; }

/* Activity */
.rc-activity-section { font-family:var(--rc-mono); font-size:10px; color:var(--rc-text3); text-transform:uppercase; letter-spacing:.08em; margin-bottom:8px; }
.rc-activity-row { display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid var(--rc-border); }
.rc-activity-row:last-child { border-bottom:none; }
.rc-act-thumb { font-size:24px; flex-shrink:0; }
.rc-act-info { flex:1; }
.rc-act-name { font-size:13px; font-weight:500; color:var(--rc-text); margin-bottom:2px; }
.rc-act-meta { font-size:12px; color:var(--rc-text2); }
.rc-act-bid { color:var(--rc-green); font-family:var(--rc-mono); }
.rc-act-timer { font-family:var(--rc-mono); font-size:12px; color:var(--rc-amber); font-weight:700; }
.rc-act-link { background:transparent; border:1px solid var(--rc-border2); color:var(--rc-text2); padding:5px 12px; border-radius:6px; font-size:12px; cursor:pointer; text-decoration:none; white-space:nowrap; transition:all .15s; font-family:'DM Sans',sans-serif; }
.rc-act-link:hover { border-color:var(--rc-green); color:var(--rc-green); }
.rc-act-status-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.rc-dot-live { background:var(--rc-red); animation:rc-blink 1.2s ease-in-out infinite; }
.rc-dot-scheduled { background:var(--rc-amber); }
.rc-dot-ended { background:var(--rc-text3); }
@keyframes rc-blink { 0%,100%{opacity:1} 50%{opacity:.4} }

/* No products */
.rc-no-products { padding:20px; text-align:center; font-size:13px; color:var(--rc-text2); }
.rc-no-products a { color:var(--rc-green); }
