/* LT Digital Store Pro Max v1.7.0 — Unified UI/UX Design System */
:root{
  --ltds-primary:#0877F9;
  --ltds-primary-hover:#0668DA;
  --ltds-primary-soft:#EEF6FF;
  --ltds-cyan:#22C7FF;
  --ltds-text:#172033;
  --ltds-text-2:#475467;
  --ltds-muted:#7C899F;
  --ltds-border:#DCE4EF;
  --ltds-border-strong:#C9D5E5;
  --ltds-surface:#FFFFFF;
  --ltds-surface-soft:#F8FAFD;
  --ltds-bg:#F6F8FC;
  --ltds-success:#12B76A;
  --ltds-warning:#F79009;
  --ltds-danger:#E5484D;
  --ltds-info:#2E90FA;
  --ltds-radius-sm:10px;
  --ltds-radius-md:14px;
  --ltds-radius-lg:20px;
  --ltds-radius-xl:24px;
  --ltds-shadow-sm:0 8px 24px rgba(16,34,67,.055);
  --ltds-shadow-md:0 18px 48px rgba(16,34,67,.085);
  --ltds-shadow-lg:0 28px 72px rgba(16,34,67,.12);
  --ltds-ease:cubic-bezier(.2,.8,.2,1);
  --ltds-fast:160ms;
  --ltds-normal:220ms;
  --ltds-container:1200px;
}

.ltds-site,.ltds-admin{
  --ds:var(--ltds-primary);
  --ds-primary:var(--ltds-primary);
  --ds-primary-hover:var(--ltds-primary-hover);
  --ds-primary-soft:var(--ltds-primary-soft);
  --ds-text:var(--ltds-text);
  --ds-text-2:var(--ltds-text-2);
  --ds-muted:var(--ltds-muted);
  --ds-border:var(--ltds-border);
  --ds-border-strong:var(--ltds-border-strong);
  --ds-surface:var(--ltds-surface);
  --ds-surface-soft:var(--ltds-surface-soft);
  --ds-bg:var(--ltds-bg);
  --ds-success:var(--ltds-success);
  --ds-warning:var(--ltds-warning);
  --ds-danger:var(--ltds-danger);
  --ds-info:var(--ltds-info);
  --ds-radius-sm:var(--ltds-radius-sm);
  --ds-radius-md:var(--ltds-radius-md);
  --ds-radius-lg:var(--ltds-radius-lg);
  --ds-radius-xl:var(--ltds-radius-xl);
  --ds-shadow-sm:var(--ltds-shadow-sm);
  --ds-shadow-md:var(--ltds-shadow-md);
  --ds-shadow-lg:var(--ltds-shadow-lg);
  --ds-ease:var(--ltds-ease);
  color:var(--ltds-text);
  font-family:inherit;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.ltds-site *,.ltds-site *::before,.ltds-site *::after,.ltds-admin *,.ltds-admin *::before,.ltds-admin *::after{box-sizing:border-box}
.ltds-site :focus-visible,.ltds-admin :focus-visible{outline:3px solid rgba(8,119,249,.18);outline-offset:2px}

/* Shared cards */
.ltds-site .ltds-card-box,.ltds-site .ltds-auth-card,.ltds-site .ltds-account-section,.ltds-site .ltds-payment-card,.ltds-admin .ltds-card{
  border:1px solid var(--ltds-border);
  border-radius:var(--ltds-radius-lg);
  background:var(--ltds-surface);
  box-shadow:var(--ltds-shadow-sm);
}

/* Shared form controls */
.ltds-site input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
.ltds-site select,.ltds-site textarea,
.ltds-admin input[type="text"],.ltds-admin input[type="email"],.ltds-admin input[type="password"],.ltds-admin input[type="url"],.ltds-admin input[type="number"],.ltds-admin input[type="search"],.ltds-admin select,.ltds-admin textarea{
  width:100%;max-width:none;border:1px solid var(--ltds-border);border-radius:var(--ltds-radius-md);background:#fff;color:var(--ltds-text);box-shadow:none;outline:0;transition:border-color var(--ltds-fast) ease,box-shadow var(--ltds-fast) ease,background var(--ltds-fast) ease;
}
.ltds-site input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),.ltds-site select{min-height:40px;padding:0 12px;font-size:14px}
.ltds-site textarea{min-height:120px;padding:14px 16px;font-size:16px;line-height:1.58;resize:vertical}
.ltds-admin input[type="text"],.ltds-admin input[type="email"],.ltds-admin input[type="password"],.ltds-admin input[type="url"],.ltds-admin input[type="number"],.ltds-admin input[type="search"],.ltds-admin select{min-height:48px;padding:0 14px;font-size:14px}
.ltds-admin textarea{min-height:110px;padding:12px 14px;font-size:14px;line-height:1.55;resize:vertical}
.ltds-site input:focus,.ltds-site select:focus,.ltds-site textarea:focus,.ltds-admin input:focus,.ltds-admin select:focus,.ltds-admin textarea:focus{border-color:#8BBcff;box-shadow:0 0 0 4px rgba(8,119,249,.085)}
.ltds-site input[readonly],.ltds-site textarea[readonly],.ltds-admin input[readonly]{background:#F7F9FC;color:#667085;cursor:not-allowed}
.ltds-site input:disabled,.ltds-site select:disabled,.ltds-site textarea:disabled,.ltds-admin input:disabled,.ltds-admin select:disabled,.ltds-admin textarea:disabled{background:#F5F7FA;color:#98A2B3;cursor:not-allowed}

/* Labels and helper text */
.ltds-site label,.ltds-admin label{color:#344054;font-weight:600}
.ltds-site label>span:first-child,.ltds-admin label>span:first-child{font-size:14px}
.ltds-site .description,.ltds-site .ltds-field-help,.ltds-admin .description{color:var(--ltds-muted);font-size:12px;line-height:1.55}

/* Unified buttons */
.ltds-site .ltds-btn,.ltds-site .ltds-mini-btn,.ltds-admin .button,.ltds-admin .ltds-table-action{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--ltds-radius-md);font-weight:600;line-height:1;text-decoration:none;cursor:pointer;transition:transform var(--ltds-fast) var(--ltds-ease),border-color var(--ltds-fast) ease,background var(--ltds-fast) ease,color var(--ltds-fast) ease,box-shadow var(--ltds-fast) ease;
}
.ltds-site .ltds-btn,.ltds-admin .button{min-height:46px;padding:0 18px}
.ltds-site .ltds-btn:hover,.ltds-admin .button:hover,.ltds-admin .ltds-table-action:hover{transform:translateY(-1px)}
.ltds-site .ltds-btn:active,.ltds-admin .button:active{transform:translateY(0) scale(.99)}
.ltds-site .ltds-btn.primary,.ltds-admin .button-primary{border:1px solid var(--ltds-primary);background:var(--ltds-primary);color:#fff;box-shadow:0 10px 24px rgba(8,119,249,.18)}
.ltds-site .ltds-btn.primary:hover,.ltds-admin .button-primary:hover{border-color:var(--ltds-primary-hover);background:var(--ltds-primary-hover);box-shadow:0 14px 28px rgba(8,119,249,.24)}
.ltds-site .ltds-btn.ghost,.ltds-site .ltds-btn.secondary,.ltds-admin .button:not(.button-primary){border:1px solid var(--ltds-border-strong);background:#fff;color:#344054}
.ltds-site .ltds-btn.ghost:hover,.ltds-site .ltds-btn.secondary:hover,.ltds-admin .button:not(.button-primary):hover{border-color:#AAC8F3;background:#F8FBFF;color:#075FC5}
.ltds-site .ltds-btn.danger,.ltds-admin .button.danger{border:1px solid #F2B8B5;background:#FFF7F6;color:#B42318}
.ltds-site .ltds-btn[disabled],.ltds-admin .button[disabled]{opacity:.56;cursor:not-allowed;transform:none;box-shadow:none}
.ltds-site .ltds-btn svg,.ltds-admin .button svg,.ltds-admin .ltds-table-action svg{width:18px;height:18px;flex:0 0 auto}

/* Shared statuses */
.ltds-status,.ltds-badge,.ltds-state{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}
.ltds-status.active,.ltds-status.paid,.ltds-badge.ok,.ltds-state.ok{background:#ECFDF3;color:#087443;border:1px solid #ABEFC6}
.ltds-status.pending,.ltds-status.awaiting_payment,.ltds-status.warning,.ltds-badge.warn,.ltds-state.warn{background:#FFFAEB;color:#B54708;border:1px solid #FEDF89}
.ltds-status.failed,.ltds-status.cancelled,.ltds-status.revoked,.ltds-state.error{background:#FEF3F2;color:#B42318;border:1px solid #FECDCA}
.ltds-status.mismatch,.ltds-status.unmatched{background:#EFF8FF;color:#175CD3;border:1px solid #B2DDFF}

/* Shared SVG optical rules */
.ltds-site svg,.ltds-admin svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}

/* Toasts */
.ltds-toast-stack{position:fixed;top:18px;right:18px;z-index:99999;display:grid;gap:10px;max-width:min(390px,calc(100vw - 32px))}
.ltds-toast{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid var(--ltds-border);border-radius:14px;background:#fff;color:#344054;box-shadow:var(--ltds-shadow-md);animation:ltdsToastIn .2s var(--ltds-ease) both}
.ltds-toast.success{border-color:#ABEFC6}.ltds-toast.error{border-color:#FECDCA}.ltds-toast strong{display:block;color:var(--ltds-text);font-size:13px}.ltds-toast span{display:block;margin-top:3px;color:var(--ltds-muted);font-size:12px;line-height:1.45}
@keyframes ltdsToastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* Mobile precision */
@media(max-width:767px){
  .ltds-toast-stack{top:auto;right:12px;bottom:12px;left:12px;max-width:none}
  .ltds-site .ltds-btn,.ltds-admin .button{min-height:48px}
  .ltds-site input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),.ltds-site select{font-size:14px}.ltds-site textarea{font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .ltds-site *,.ltds-site *::before,.ltds-site *::after,.ltds-admin *,.ltds-admin *::before,.ltds-admin *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
