/* ===== LLC FILING PLUGIN v2 — PIXEL PERFECT STYLES ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root {
  --llc-navy: #1a365d;
  --llc-blue: #2d6a9f;
  --llc-blue-light: #4a90c4;
  --llc-accent: #3b82f6;
  --llc-border: #d1d5db;
  --llc-border-light: #e5e7eb;
  --llc-bg: #f9fafb;
  --llc-red: #dc2626;
  --llc-green: #16a34a;
  --llc-yellow: #f59e0b;
  --llc-radius: 6px;
  --llc-radius-lg: 10px;
  --llc-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.04);
  --llc-shadow-lg: 0 4px 16px rgba(0,0,0,0.12);
  --llc-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ===== GLOBAL RESET ===== */
.llc-form-wrap, .llc-dashboard-wrap {
  font-family: var(--llc-font);
  color: #1f2937;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
}
.llc-form-wrap *, .llc-dashboard-wrap * { box-sizing: border-box; }

/* ===== HERO (STEP 1) ===== */
.llc-form-wrap {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 20px 60px;
}

.llc-hero {
  text-align: center;
  padding: 50px 20px 36px;
  background: transparent;
}
.llc-hero-title {
  font-size: 36px;
  font-weight: 800;
  color: #1f2937;
  margin: 0 0 12px;
  line-height: 1.15;
  letter-spacing: -0.5px;
}
.llc-hero-sub {
  font-size: 18px;
  font-weight: 600;
  color: #374151;
  margin: 0;
}

.llc-state-box {
  background: rgba(255,255,255,0.95);
  border: 1px solid var(--llc-border);
  border-radius: 12px;
  padding: 32px 36px;
  box-shadow: var(--llc-shadow-lg);
  margin-bottom: 40px;
  backdrop-filter: blur(8px);
}

/* ===== FORM HEADER ===== */
.llc-form-header {
  text-align: center;
  padding: 36px 0 24px;
}
.llc-form-title {
  font-size: 28px;
  font-weight: 800;
  color: #1f2937;
  margin: 0 0 8px;
  letter-spacing: -0.3px;
}
.llc-form-subtitle {
  font-size: 14px;
  color: #6b7280;
  margin: 0;
  font-weight: 400;
}

/* ===== SECTIONS ===== */
.llc-section {
  background: #fff;
  border: 1px solid var(--llc-border-light);
  border-radius: var(--llc-radius-lg);
  padding: 24px 28px;
  margin-bottom: 16px;
  box-shadow: var(--llc-shadow);
}
.llc-section-title {
  font-size: 15px;
  font-weight: 700;
  color: #111827;
  margin: 0 0 20px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--llc-border-light);
  letter-spacing: 0;
}
.llc-sub-title {
  font-size: 13px;
  font-weight: 600;
  color: #374151;
  margin: 16px 0 10px;
}

/* ===== INPUTS ===== */
.llc-field { margin-bottom: 16px; }
.llc-label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #374151;
  margin-bottom: 5px;
}
.llc-req { color: var(--llc-red); margin-left: 1px; }

.llc-input, .llc-select {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid var(--llc-border);
  border-radius: var(--llc-radius);
  font-size: 14px;
  font-family: var(--llc-font);
  color: #1f2937;
  background: #fff;
  transition: border-color .12s, box-shadow .12s;
  -webkit-appearance: none;
  appearance: none;
  line-height: 1.4;
}
.llc-input::placeholder { color: #9ca3af; }
.llc-input:focus, .llc-select:focus {
  outline: none;
  border-color: var(--llc-navy);
  box-shadow: 0 0 0 3px rgba(26,54,93,0.12);
}
.llc-input.error { border-color: var(--llc-red); background: #fef2f2; }
.llc-select.error { border-color: var(--llc-red); }
.llc-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
  padding-right: 38px;
  cursor: pointer;
}

/* State select with flag icon */
.llc-select-with-icon {
  position: relative;
}
.llc-select-with-icon .llc-select-flag {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #9ca3af;
  pointer-events: none;
  font-size: 18px;
}
.llc-select-with-icon .llc-select {
  padding-left: 44px !important;
  font-size: 16px;
  font-weight: 500;
  color: var(--llc-accent);
  height: 52px;
  border-radius: 8px;
}

/* Grid layouts */
.llc-row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.llc-row-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; }
@media (max-width: 600px) { .llc-row-2, .llc-row-3 { grid-template-columns: 1fr; } }

/* ===== RADIO ===== */
.llc-radio-row {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  padding: 4px 0;
}
.llc-radio-row .llc-label { margin-bottom: 0; flex: 1; min-width: 180px; font-size: 14px; }
.llc-radios { display: flex; gap: 24px; align-items: center; }
.llc-radios label {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 14px;
  color: #374151;
  cursor: pointer;
  font-weight: 400;
}
.llc-radios input[type="radio"] {
  width: 16px;
  height: 16px;
  accent-color: var(--llc-navy);
  cursor: pointer;
}
.llc-radios-block { flex-direction: column; gap: 10px; }
.llc-radios-block label { font-size: 14px; }

/* ===== CHECKBOX ===== */
.llc-checkbox-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  color: #374151;
  cursor: pointer;
  line-height: 1.6;
  font-weight: 400;
}
.llc-checkbox-label input[type="checkbox"] {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-top: 2px;
  accent-color: var(--llc-navy);
  cursor: pointer;
}
.llc-agreement-box {
  background: #f9fafb;
  border: 1px solid var(--llc-border-light);
  border-radius: var(--llc-radius);
  padding: 16px 18px;
}
.llc-agreement-box a { color: var(--llc-accent); text-decoration: underline; }

/* ===== BUTTONS ===== */
.llc-btn-primary {
  background: var(--llc-navy);
  color: #fff;
  border: none;
  border-radius: var(--llc-radius);
  padding: 13px 28px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s, transform .1s;
  font-family: var(--llc-font);
  letter-spacing: 0.1px;
}
.llc-btn-primary:hover { background: var(--llc-blue); }
.llc-btn-primary:active { transform: translateY(1px); }
.llc-btn-primary:disabled { opacity: 0.6; cursor: not-allowed; }
.llc-btn-full { width: 100%; }
.llc-btn-lg { padding: 15px 28px; font-size: 16px; }
.llc-btn-add {
  width: 100%;
  background: var(--llc-navy);
  color: #fff;
  border: none;
  border-radius: var(--llc-radius);
  padding: 13px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  margin-top: 10px;
  font-family: var(--llc-font);
  transition: background .15s;
}
.llc-btn-add:hover { background: var(--llc-blue); }
.llc-btn-remove {
  background: #fee2e2;
  color: var(--llc-red);
  border: 1px solid #fca5a5;
  border-radius: var(--llc-radius);
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  font-family: var(--llc-font);
  transition: background .15s;
  white-space: nowrap;
}
.llc-btn-remove:hover { background: #fecaca; }

/* ===== MEMBERS ===== */
.llc-member-row {
  background: #f9fafb;
  border: 1px solid var(--llc-border-light);
  border-radius: var(--llc-radius);
  padding: 16px 18px;
  margin-bottom: 10px;
}
.llc-member-name-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr auto;
  gap: 10px;
  align-items: center;
}
@media (max-width: 640px) { .llc-member-name-row { grid-template-columns: 1fr; } }

/* ===== ERRORS ===== */
.llc-error {
  background: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: var(--llc-radius);
  color: #b91c1c;
  padding: 11px 16px;
  font-size: 13px;
  margin-bottom: 14px;
  line-height: 1.5;
}

/* ===== INFO / HINT ===== */
.llc-field-hint { font-size: 13px; line-height: 1.5; margin-top: 6px; }

/* ===== INFO SECTION (STEP 1) ===== */
.llc-info-section {
  padding: 32px;
  background: #fff;
  border-radius: var(--llc-radius-lg);
  border: 1px solid var(--llc-border-light);
  text-align: center;
  box-shadow: var(--llc-shadow);
}
.llc-info-section h2 { font-size: 20px; font-weight: 700; color: #fff; background: var(--llc-navy); margin: 0 -32px 24px; padding: 16px 32px; }
.llc-how-it-works { text-align: left; display: inline-block; margin: 0 auto 24px; }
.llc-how-it-works ol { margin: 0; padding-left: 20px; }
.llc-how-it-works li { font-size: 14px; color: #374151; margin-bottom: 6px; }
.llc-icons-row { display: flex; justify-content: center; gap: 40px; flex-wrap: wrap; margin-top: 20px; }
.llc-icon-item { display: flex; flex-direction: column; align-items: center; gap: 8px; font-size: 13px; color: #374151; }
.llc-icon-item span:first-child { font-size: 36px; }

/* ===== PAYMENT LAYOUT ===== */
.llc-payment-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 24px;
  align-items: start;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px 60px;
  font-family: var(--llc-font);
}
@media (max-width: 800px) { .llc-payment-layout { grid-template-columns: 1fr; } }

.llc-payment-main .llc-section {
  border-radius: 0;
  border-bottom: none;
  margin-bottom: 0;
}
.llc-payment-main .llc-section:first-child { border-radius: var(--llc-radius-lg) var(--llc-radius-lg) 0 0; }
.llc-payment-main > form > .llc-section:last-of-type { border-radius: 0 0 var(--llc-radius-lg) var(--llc-radius-lg); border-bottom: 1px solid var(--llc-border-light); }

/* ===== SPEED OPTIONS ===== */
.llc-speed-option {
  display: flex;
  align-items: center;
  gap: 14px;
  border: 2px solid var(--llc-border-light);
  border-radius: 8px;
  padding: 16px 18px;
  margin-bottom: 10px;
  cursor: pointer;
  transition: border-color .15s, background .15s;
}
.llc-speed-option:hover { border-color: var(--llc-navy); }
.llc-speed-selected { border-color: var(--llc-navy); background: #f0f4ff; }
.llc-speed-option input[type="radio"] { accent-color: var(--llc-navy); width: 16px; height: 16px; flex-shrink: 0; }
.llc-speed-label { flex: 1; font-size: 14px; font-weight: 500; color: #1f2937; }
.llc-speed-price { text-align: right; font-weight: 700; font-size: 20px; color: #1f2937; white-space: nowrap; line-height: 1.2; }
.llc-speed-price small { display: block; font-size: 12px; color: #6b7280; font-weight: 400; }

/* ===== REMINDER BOX ===== */
.llc-reminder-box {
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: var(--llc-radius);
  padding: 11px 16px;
  font-size: 13px;
  color: #92400e;
  margin-top: 12px;
}

/* ===== CARD INPUT ===== */
.llc-card-input-wrap { position: relative; }
.llc-card-icons {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  gap: 4px;
  pointer-events: none;
}
.llc-card-icon {
  font-size: 9px;
  font-weight: 800;
  padding: 4px 8px;
  border-radius: 4px;
  letter-spacing: 0.5px;
  line-height: 1;
}
.llc-visa { background: #1a1f71; color: #fff; font-style: italic; }
.llc-mc { background: linear-gradient(135deg,#eb001b 50%,#f79e1b 50%); color: #fff; }
.llc-card-number { padding-right: 100px; letter-spacing: .5px; }

/* ===== SIDEBAR ===== */
.llc-payment-sidebar { position: sticky; top: 24px; }
.llc-sidebar-card {
  background: #fff;
  border: 1px solid var(--llc-border-light);
  border-radius: var(--llc-radius-lg);
  padding: 22px 24px;
  margin-bottom: 16px;
  box-shadow: var(--llc-shadow);
}
.llc-sidebar-card h3 { font-size: 16px; font-weight: 700; color: #1f2937; margin: 0 0 10px; }
.llc-sidebar-card h3 a { color: var(--llc-navy); text-decoration: none; border-bottom: 1px solid var(--llc-navy); }
.llc-sidebar-card p { font-size: 13px; color: #4b5563; line-height: 1.65; margin: 0; }
.llc-card-brands { text-align: center; margin-bottom: 14px; display: flex; gap: 8px; align-items: center; justify-content: center; }

/* ===== PHONE ===== */
.llc-phone { letter-spacing: .3px; }

/* ===== STRIPE ELEMENT ===== */
#llc-stripe-card-element {
  padding: 11px 14px;
  border: 1px solid var(--llc-border);
  border-radius: var(--llc-radius);
  background: #fff;
  transition: border-color .12s;
}
#llc-stripe-card-element.StripeElement--focus { border-color: var(--llc-navy); box-shadow: 0 0 0 3px rgba(26,54,93,0.12); }

/* ===== SUCCESS MODAL ===== */
#llc-success-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.65);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(4px);
}
.llc-success-inner {
  background: #fff;
  border-radius: 20px;
  padding: 52px 48px;
  text-align: center;
  max-width: 440px;
  width: calc(100% - 40px);
  box-shadow: 0 24px 48px rgba(0,0,0,0.2);
  animation: llcPopIn .3s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes llcPopIn { from { transform: scale(.85); opacity: 0; } to { transform: scale(1); opacity: 1; } }
.llc-success-icon { font-size: 64px; margin-bottom: 16px; display: block; }
.llc-success-title { font-size: 24px; font-weight: 800; color: var(--llc-navy); margin: 0 0 10px; }
.llc-success-sub { font-size: 15px; color: #4b5563; margin: 0 0 20px; line-height: 1.6; }
.llc-filing-code-display {
  background: #f3f4f6;
  border-radius: 8px;
  padding: 12px 16px;
  font-family: monospace;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--llc-navy);
  margin: 12px 0;
}

/* ===== DASHBOARD ===== */
.llc-dashboard-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px 60px;
}

/* Login */
.llc-dash-login-card {
  max-width: 480px;
  margin: 60px auto;
  background: #fff;
  border: 1px solid var(--llc-border-light);
  border-radius: 20px;
  padding: 48px 44px;
  box-shadow: var(--llc-shadow-lg);
}
.llc-dash-logo {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 36px;
  justify-content: center;
}
.llc-dash-logo-title { font-size: 22px; font-weight: 800; color: var(--llc-navy); line-height: 1.1; }
.llc-dash-logo-sub { font-size: 12px; color: #6b7280; }
.llc-dash-h2 { font-size: 20px; font-weight: 700; color: #111827; margin: 0 0 8px; }
.llc-dash-p { font-size: 14px; color: #6b7280; margin: 0 0 24px; line-height: 1.6; }
.llc-dash-field { margin-bottom: 16px; }
.llc-dash-label { display: block; font-size: 13px; font-weight: 500; color: #374151; margin-bottom: 5px; }
.llc-dash-input {
  width: 100%;
  padding: 11px 14px;
  border: 1px solid var(--llc-border);
  border-radius: var(--llc-radius);
  font-size: 15px;
  font-family: var(--llc-font);
  transition: border-color .12s;
}
.llc-dash-input:focus { outline: none; border-color: var(--llc-navy); box-shadow: 0 0 0 3px rgba(26,54,93,0.12); }
.llc-dash-btn-primary {
  width: 100%;
  background: var(--llc-navy);
  color: #fff;
  border: none;
  border-radius: var(--llc-radius);
  padding: 13px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  font-family: var(--llc-font);
  transition: background .15s;
}
.llc-dash-btn-primary:hover { background: var(--llc-blue); }
.llc-dash-btn-primary:disabled { opacity: 0.6; cursor: not-allowed; }
.llc-dash-btn-link {
  background: none;
  border: none;
  color: var(--llc-accent);
  font-size: 13px;
  cursor: pointer;
  font-family: var(--llc-font);
  text-decoration: underline;
}
.llc-dash-error {
  background: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: var(--llc-radius);
  color: #b91c1c;
  padding: 10px 14px;
  font-size: 13px;
  margin-bottom: 12px;
}

/* OTP digit inputs */
.llc-otp-inputs {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin: 24px 0 8px;
}
.llc-otp-digit {
  width: 52px;
  height: 60px;
  text-align: center;
  font-size: 26px;
  font-weight: 700;
  border: 2px solid var(--llc-border);
  border-radius: 10px;
  font-family: monospace;
  color: var(--llc-navy);
  transition: border-color .12s;
}
.llc-otp-digit:focus { outline: none; border-color: var(--llc-navy); box-shadow: 0 0 0 3px rgba(26,54,93,0.12); }
.llc-otp-digit.filled { border-color: var(--llc-navy); background: #f0f4ff; }
@media (max-width: 400px) { .llc-otp-digit { width: 42px; height: 52px; font-size: 22px; } }

/* Dashboard home */
.llc-dash-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0 16px;
  border-bottom: 1px solid var(--llc-border-light);
  margin-bottom: 24px;
  flex-wrap: wrap;
  gap: 12px;
}
.llc-dash-header-logo { display: flex; align-items: center; gap: 12px; }
.llc-dash-header-right { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.llc-dash-user-email { font-size: 13px; color: #6b7280; }
.llc-dash-btn-outline {
  background: #fff;
  color: var(--llc-navy);
  border: 1.5px solid var(--llc-navy);
  border-radius: var(--llc-radius);
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  font-family: var(--llc-font);
  transition: background .12s;
}
.llc-dash-btn-outline:hover { background: #f0f4ff; }

.llc-dash-main { padding: 0; }
.llc-dash-banner {
  background: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 8px;
  padding: 12px 18px;
  margin-bottom: 20px;
}

.llc-dash-topbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.llc-dash-title { font-size: 24px; font-weight: 800; color: #111827; margin: 0 0 4px; }
.llc-dash-sub { font-size: 13px; color: #6b7280; margin: 0; }
.llc-dash-topbar-right { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.llc-dash-search-wrap { position: relative; display: flex; align-items: center; }
.llc-dash-search {
  padding: 9px 14px 9px 14px;
  border: 1px solid var(--llc-border);
  border-radius: var(--llc-radius);
  font-size: 13px;
  width: 220px;
  font-family: var(--llc-font);
}
.llc-dash-search-btn {
  position: absolute;
  right: 10px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 14px;
  padding: 0;
}
.llc-dash-filter-select {
  padding: 9px 32px 9px 12px;
  border: 1px solid var(--llc-border);
  border-radius: var(--llc-radius);
  font-size: 12px;
  font-weight: 600;
  font-family: var(--llc-font);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z' clip-rule='evenodd'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  background-size: 14px;
  -webkit-appearance: none;
  color: #1f2937;
  cursor: pointer;
}
.llc-dash-btn-primary-sm {
  background: var(--llc-accent);
  color: #fff;
  border: none;
  border-radius: var(--llc-radius);
  padding: 10px 16px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  font-family: var(--llc-font);
  letter-spacing: 0.3px;
  white-space: nowrap;
  transition: background .15s;
}
.llc-dash-btn-primary-sm:hover { background: #2563eb; }
.llc-dash-btn-primary-lg {
  background: var(--llc-navy);
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 14px 32px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  font-family: var(--llc-font);
  transition: background .15s;
}
.llc-dash-btn-primary-lg:hover { background: var(--llc-blue); }

/* Filing cards */
.llc-filing-card {
  background: #fff;
  border: 1px solid var(--llc-border-light);
  border-radius: var(--llc-radius-lg);
  padding: 22px 24px;
  margin-bottom: 14px;
  box-shadow: var(--llc-shadow);
  display: flex;
  align-items: flex-start;
  gap: 20px;
  justify-content: space-between;
  flex-wrap: wrap;
  transition: box-shadow .15s;
}
.llc-filing-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.1); }
.llc-filing-card-body { flex: 1; min-width: 0; }
.llc-filing-status-badge {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 99px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.llc-filing-status-completed { background: #dcfce7; color: #15803d; }
.llc-filing-status-in_progress { background: #fef9c3; color: #a16207; }
.llc-filing-status-payment_pending { background: #fff7ed; color: #c2410c; }
.llc-filing-name { font-size: 20px; font-weight: 700; color: #111827; margin: 0 0 10px; }
.llc-filing-meta { display: flex; gap: 24px; flex-wrap: wrap; }
.llc-filing-meta-label { font-size: 12px; color: #6b7280; font-weight: 500; margin-right: 4px; }
.llc-filing-meta span:not(.llc-filing-meta-label) { font-size: 13px; color: #374151; }
.llc-filing-code { font-family: monospace; background: #f3f4f6; padding: 2px 6px; border-radius: 4px; font-size: 12px; }
.llc-filing-card-actions { display: flex; flex-direction: column; gap: 8px; align-items: flex-end; min-width: 100px; }
.llc-dash-resume-btn {
  background: var(--llc-accent);
  color: #fff;
  border: none;
  border-radius: var(--llc-radius);
  padding: 9px 16px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  font-family: var(--llc-font);
  white-space: nowrap;
  width: 100%;
  text-align: center;
  transition: background .15s;
}
.llc-dash-resume-btn:hover { background: #2563eb; }
.llc-dash-view-btn {
  background: #fff;
  color: var(--llc-navy);
  border: 1.5px solid var(--llc-navy);
  border-radius: var(--llc-radius);
  padding: 7px 16px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  font-family: var(--llc-font);
  white-space: nowrap;
  width: 100%;
  text-align: center;
  transition: background .12s;
}
.llc-dash-view-btn:hover { background: #f0f4ff; }

/* Spinner */
.llc-spinner {
  width: 36px;
  height: 36px;
  border: 3px solid #e5e7eb;
  border-top-color: var(--llc-navy);
  border-radius: 50%;
  animation: llcSpin .8s linear infinite;
  margin: 0 auto;
}
@keyframes llcSpin { to { transform: rotate(360deg); } }

/* PayPal container */
#llc-paypal-btn-container { margin: 12px 0; }

/* ===== ENHANCED STYLING v2.1.0 ===== */

/* Grey Header with smooth styling */
.llc-form-header {
  background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
  padding: 40px 0 32px;
  margin: 0 -20px 32px;
  border-bottom: 1px solid #d1d5db;
}

.llc-form-title {
  font-size: 28px;
  font-weight: 800;
  color: #1f2937;
  margin: 0 0 8px;
  letter-spacing: -0.3px;
}

.llc-form-subtitle {
  font-size: 14px;
  color: #6b7280;
  margin: 0;
  font-weight: 500;
}

/* Full-width Add Member Button */
.llc-btn-add.llc-btn-full {
  width: 100%;
  padding: 14px 20px;
  font-size: 15px;
  font-weight: 600;
  background: linear-gradient(135deg, #2d6a9f 0%, #1a365d 100%);
  color: white;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 16px;
  box-shadow: 0 2px 8px rgba(42, 106, 159, 0.2);
}

.llc-btn-add.llc-btn-full:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(42, 106, 159, 0.3);
}

.llc-btn-add.llc-btn-full:active {
  transform: translateY(0);
}

/* Smooth Remove Button */
.llc-btn-remove {
  padding: 8px 16px;
  background: #f3f4f6;
  color: #ef4444;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.llc-btn-remove:hover {
  background: #fee2e2;
  border-color: #fecaca;
  color: #dc2626;
}

.llc-btn-remove:active {
  background: #fecaca;
}

/* Smooth Input Fields */
.llc-input, .llc-select {
  border: 1px solid #d1d5db;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 14px;
  transition: all 0.2s ease;
  background: #ffffff;
}

.llc-input:focus, .llc-select:focus {
  outline: none;
  border-color: #2d6a9f;
  box-shadow: 0 0 0 3px rgba(45, 106, 159, 0.1);
  background: #fafbfc;
}

/* Member fields layout */
.llc-member-name-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr auto;
  gap: 10px;
  align-items: flex-end;
  margin-bottom: 12px;
}

.llc-member-name-row .llc-input {
  width: 100%;
}

.llc-member-name-row .llc-btn-remove {
  margin-bottom: 0;
}

/* Section styling improvements */
.llc-section {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 24px;
  margin-bottom: 20px;
  transition: all 0.2s ease;
}

.llc-section:hover {
  border-color: #d1d5db;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.llc-section-title {
  font-size: 16px;
  font-weight: 700;
  color: #1f2937;
  margin: 0 0 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid #f3f4f6;
}

/* Radio and Checkbox improvements */
.llc-radios-block label {
  display: block;
  padding: 12px 14px;
  margin-bottom: 8px;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
  background: #fafbfc;
}

.llc-radios-block label:hover {
  background: #f3f4f6;
  border-color: #d1d5db;
}

.llc-radios-block input[type="radio"]:checked + label,
.llc-radios-block label:has(input[type="radio"]:checked) {
  background: #eff6ff;
  border-color: #2d6a9f;
  color: #1a365d;
  font-weight: 600;
}

/* Button primary styling */
.llc-btn-primary {
  padding: 12px 28px;
  background: linear-gradient(135deg, #2d6a9f 0%, #1a365d 100%);
  color: white;
  border: none;
  border-radius: 6px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(42, 106, 159, 0.2);
}

.llc-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(42, 106, 159, 0.3);
}

.llc-btn-primary:active {
  transform: translateY(0);
}

/* Field improvements */
.llc-field {
  margin-bottom: 16px;
}

.llc-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #374151;
  margin-bottom: 6px;
  letter-spacing: 0.3px;
}

.llc-req {
  color: #ef4444;
  font-weight: 700;
}

/* Smooth transitions for all interactive elements */
button, input, select, textarea {
  transition: all 0.2s ease;
}


/* =====================================================
   MOBILE-FIRST RESPONSIVE — v2.4.0
   Full mobile support for all screens ≤ 768px
   ===================================================== */

/* Base: constrain width, add padding */
.llc-form-wrap {
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
}

/* ---- STEP 1 ---- */
@media (max-width: 480px) {
  .llc-hero-title { font-size: 24px; }
  .llc-hero-sub { font-size: 15px; }
  .llc-hero { padding: 32px 12px 24px; }
  .llc-state-box { padding: 20px 16px; }
  .llc-state-btn { font-size: 15px; padding: 13px 20px; }
}

/* ---- ALL SECTIONS ---- */
@media (max-width: 600px) {
  .llc-section { padding: 16px 14px; margin-bottom: 14px; }
  .llc-section-title { font-size: 15px; }

  /* All 2-col and 3-col grids → single column */
  .llc-row-2,
  .llc-row-3,
  .llc-member-name-row {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  /* Suffix + Title side by side still on mobile */
  .llc-row-suffix-title {
    grid-template-columns: 1fr 1fr !important;
  }

  .llc-input,
  .llc-select {
    font-size: 16px !important; /* prevents iOS zoom */
    padding: 12px 14px !important;
  }

  /* Radios */
  .llc-radios { gap: 12px !important; flex-wrap: wrap; }
  .llc-radios-block label { padding: 11px 12px; font-size: 14px; }

  /* Member row remove button */
  .llc-btn-remove {
    width: 100% !important;
    margin-top: 8px !important;
  }

  /* Add member button */
  .llc-btn-add { font-size: 15px; padding: 14px 20px; }

  /* Form submit */
  .llc-submit-btn { font-size: 16px; padding: 15px 24px; }

  /* Agreement */
  .llc-agreement { padding: 14px; }
  .llc-agreement label { font-size: 13px; }
}

/* ---- STEP 2 (PAYMENT) ---- */
@media (max-width: 800px) {
  .llc-payment-layout {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .llc-payment-sidebar {
    order: -1; /* Move sidebar ABOVE form on mobile */
    margin-bottom: 20px;
  }
}

@media (max-width: 600px) {
  .llc-payment-main { padding: 0 !important; }

  .llc-speed-option {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    padding: 14px !important;
  }
  .llc-speed-price { font-size: 18px !important; }

  .llc-card-input-wrap { flex-direction: column !important; }
  .llc-card-icons { margin-top: 8px; }

  .llc-billing-grid {
    grid-template-columns: 1fr !important;
  }

  /* Expiry + CVC row */
  .llc-row-3 { grid-template-columns: 1fr 1fr !important; }

  .llc-submit-bar {
    padding: 16px !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  .llc-submit-bar button { width: 100% !important; }

  .llc-payment-sidebar { padding: 16px !important; }
  .llc-sidebar-card { padding: 16px !important; margin-bottom: 12px !important; }
}

/* ---- DASHBOARD (My Companies) ---- */
@media (max-width: 768px) {
  /* Topbar */
  .llc-dash-topbar {
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 14px 16px !important;
    gap: 10px !important;
  }
  .llc-dash-topbar-right {
    width: 100% !important;
    justify-content: space-between !important;
  }
  .llc-dash-email { font-size: 12px !important; }

  /* Content */
  .llc-dash-content { padding: 16px !important; }

  /* Title row */
  .llc-dash-page-title {
    flex-direction: column !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
  }
  .llc-dash-page-title h1 { font-size: 20px !important; }

  /* Search row */
  .llc-dash-search-row { flex-direction: column !important; width: 100% !important; }
  .llc-dash-search-box { width: 100% !important; }
  .llc-dash-search-box input { width: 100% !important; min-width: unset !important; flex: 1; }
  #dash-filter { width: 100% !important; }

  /* Filing cards — stack everything */
  .llc-filing-card { border-radius: 8px !important; }
  .llc-filing-card-head {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    padding: 14px 14px 10px !important;
  }
  .llc-filing-name { font-size: 16px !important; }

  .llc-filing-details {
    grid-template-columns: 1fr !important;
    padding: 0 14px !important;
  }
  .llc-filing-detail-row { padding: 7px 0 !important; }

  .llc-filing-actions {
    padding: 12px 14px !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }
  .llc-filing-btn-resume,
  .llc-filing-btn-view {
    flex: 1 1 auto !important;
    text-align: center !important;
    justify-content: center !important;
  }
}

/* ---- LOGIN / OTP ---- */
@media (max-width: 480px) {
  .llc-dash-login-card {
    margin: 20px 12px !important;
    padding: 28px 20px !important;
  }
  .llc-dash-h2 { font-size: 20px !important; }

  .llc-otp-inputs { gap: 8px !important; }
  .llc-otp-digit {
    width: 44px !important;
    height: 54px !important;
    font-size: 22px !important;
  }

  /* login.php OTP boxes */
  .otp-box {
    width: 44px !important;
    height: 54px !important;
    font-size: 22px !important;
  }
}

/* ---- GLOBAL TOUCH TARGETS ---- */
@media (max-width: 600px) {
  /* All buttons at least 44px tall for touch */
  button,
  .llc-dash-btn-new,
  .llc-dash-btn-logout,
  .llc-filing-btn-resume,
  .llc-filing-btn-view,
  .llc-btn-primary,
  .llc-submit-btn {
    min-height: 44px !important;
  }

  /* Inputs at least 44px */
  .llc-input,
  .llc-select,
  .llc-dash-input {
    min-height: 44px !important;
    font-size: 16px !important; /* prevent iOS zoom */
  }
}

/* ---- MEMBER ROW MOBILE ---- */
@media (max-width: 600px) {
  .llc-member-row {
    padding: 14px !important;
    border-radius: 8px !important;
  }
  .llc-member-name-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }
  .llc-member-name-row .llc-input { width: 100% !important; }
}


/* =====================================================
   v2.5.0 OVERRIDES — !important fixes + 1200px + UI
   ===================================================== */

/* ---- Container width 1200px ---- */
.llc-form-wrap {
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 0 24px 60px !important;
  width: 100% !important;
}
.llc-payment-layout {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

/* ---- .llc-btn-primary with !important ---- */
.llc-btn-primary {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 13px 32px !important;
  background: linear-gradient(135deg, #1a365d 0%, #2d6a9f 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 7px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  letter-spacing: 0.3px !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 2px 10px rgba(26,54,93,0.25) !important;
  font-family: inherit !important;
  text-decoration: none !important;
  min-height: 46px !important;
}
.llc-btn-primary:hover {
  background: linear-gradient(135deg, #2d6a9f 0%, #1a365d 100%) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 16px rgba(26,54,93,0.3) !important;
  color: #fff !important;
}
.llc-btn-primary:active { transform: translateY(0) !important; }
.llc-btn-primary:disabled { opacity: 0.6 !important; cursor: not-allowed !important; transform: none !important; }

/* ---- .llc-radios align fix ---- */
.llc-radios {
  display: flex !important;
  gap: 20px !important;
  align-items: normal !important;  /* requested: normal not center */
  flex-wrap: wrap !important;
}
.llc-radios label {
  display: flex !important;
  align-items: normal !important;
  gap: 8px !important;
  cursor: pointer !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* ---- Better section cards ---- */
.llc-section {
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 10px !important;
  padding: 28px !important;
  margin-bottom: 20px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.05) !important;
}
.llc-section-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1a365d !important;
  margin: 0 0 20px !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid #f0f4f8 !important;
  letter-spacing: 0.2px !important;
}

/* ---- Input improvements ---- */
.llc-input, .llc-select {
  width: 100% !important;
  padding: 12px 14px !important;
  border: 1.5px solid #d1d5db !important;
  border-radius: 7px !important;
  font-size: 15px !important;
  font-family: inherit !important;
  color: #1f2937 !important;
  background: #fff !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  outline: none !important;
}
.llc-input:focus, .llc-select:focus {
  border-color: #2d6a9f !important;
  box-shadow: 0 0 0 3px rgba(45,106,159,0.12) !important;
}
.llc-input.error, .llc-select.error {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,0.1) !important;
}
.llc-label {
  display: block !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #374151 !important;
  margin-bottom: 7px !important;
}

/* ---- Submit button full width ---- */
#llc-step2-submit, #llc-step3-submit,
button[type="submit"].llc-submit-btn {
  width: 100% !important;
  font-size: 16px !important;
  padding: 15px 28px !important;
}

/* ========================================================
   DASHBOARD — COMPLETE MOBILE-FIRST REDESIGN
   ======================================================== */

/* Reset dashboard page */
.llc-dash-page {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  min-height: 100vh !important;
  background: #f0f4f8 !important;
}

/* Topbar */
.llc-dash-topbar {
  background: linear-gradient(135deg, #1a365d 0%, #2d6a9f 100%) !important;
  padding: 14px 24px !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.2) !important;
}
.llc-dash-topbar-brand strong {
  font-size: 16px !important;
  font-weight: 800 !important;
  color: #fff !important;
  letter-spacing: 0.3px !important;
}
.llc-dash-topbar-brand span {
  font-size: 11px !important;
  color: rgba(255,255,255,0.65) !important;
  display: block !important;
}
.llc-dash-topbar-right {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
.llc-dash-email {
  color: rgba(255,255,255,0.8) !important;
  font-size: 13px !important;
}
.llc-dash-btn-new {
  background: rgba(255,255,255,0.18) !important;
  color: #fff !important;
  text-decoration: none !important;
  padding: 8px 16px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border: 1px solid rgba(255,255,255,0.3) !important;
  transition: all 0.2s !important;
}
.llc-dash-btn-new:hover {
  background: rgba(255,255,255,0.28) !important;
  color: #fff !important;
}
.llc-dash-btn-logout {
  background: #ef4444 !important;
  color: #fff !important;
  border: none !important;
  padding: 8px 16px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: inherit !important;
}

/* Main content */
.llc-dash-content {
  padding: 28px 24px !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
}

/* Page title row */
.llc-dash-page-title {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  margin-bottom: 24px !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}
.llc-dash-page-title h1 {
  font-size: 24px !important;
  font-weight: 800 !important;
  color: #1a365d !important;
  margin: 0 0 4px !important;
}
.llc-dash-page-title p {
  font-size: 14px !important;
  color: #6b7280 !important;
  margin: 0 !important;
}

/* Search row */
.llc-dash-search-row {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
.llc-dash-search-box {
  display: flex !important;
}
.llc-dash-search-box input {
  padding: 10px 14px !important;
  border: 1.5px solid #d1d5db !important;
  border-radius: 7px 0 0 7px !important;
  font-size: 14px !important;
  font-family: inherit !important;
  border-right: none !important;
  min-width: 220px !important;
  outline: none !important;
  background: #fff !important;
}
.llc-dash-search-box input:focus {
  border-color: #2d6a9f !important;
}
.llc-dash-search-box button {
  padding: 10px 16px !important;
  background: #2d6a9f !important;
  color: #fff !important;
  border: none !important;
  border-radius: 0 7px 7px 0 !important;
  cursor: pointer !important;
  font-size: 15px !important;
}
#dash-filter {
  padding: 10px 14px !important;
  border: 1.5px solid #d1d5db !important;
  border-radius: 7px !important;
  font-size: 14px !important;
  font-family: inherit !important;
  background: #fff !important;
  cursor: pointer !important;
  outline: none !important;
}

/* ---- Filing Cards — Beautiful UI ---- */
.llc-filing-card {
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  margin-bottom: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.06) !important;
  transition: box-shadow 0.2s, transform 0.15s !important;
}
.llc-filing-card:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.1) !important;
  transform: translateY(-1px) !important;
}

/* Card header */
.llc-filing-card-head {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 16px 20px 12px !important;
  border-bottom: 1px solid #f3f4f6 !important;
  flex-wrap: wrap !important;
}
.llc-filing-name {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #1a365d !important;
  flex: 1 !important;
}

/* Card details grid */
.llc-filing-details {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 0 !important;
  padding: 0 !important;
}
.llc-filing-detail-row {
  display: flex !important;
  flex-direction: column !important;
  padding: 12px 20px !important;
  border-bottom: 1px solid #f8fafc !important;
  border-right: 1px solid #f3f4f6 !important;
}
.llc-filing-detail-row:nth-child(3n) { border-right: none !important; }
.llc-detail-label {
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #9ca3af !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 3px !important;
}
.llc-detail-val {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1f2937 !important;
}

/* Card actions */
.llc-filing-actions {
  display: flex !important;
  gap: 10px !important;
  padding: 14px 20px !important;
  justify-content: flex-end !important;
  background: #fafbfc !important;
  border-top: 1px solid #f3f4f6 !important;
}
.llc-filing-btn-resume {
  background: linear-gradient(135deg, #15803d 0%, #16a34a 100%) !important;
  color: #fff !important;
  border: none !important;
  padding: 10px 20px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: inherit !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  transition: all 0.2s !important;
}
.llc-filing-btn-resume:hover {
  background: linear-gradient(135deg, #166534 0%, #15803d 100%) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}
.llc-filing-btn-view {
  background: #fff !important;
  color: #2d6a9f !important;
  border: 1.5px solid #2d6a9f !important;
  padding: 10px 20px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  font-family: inherit !important;
  transition: all 0.2s !important;
}
.llc-filing-btn-view:hover {
  background: #2d6a9f !important;
  color: #fff !important;
}

/* Status badges */
.llc-filing-card-head [style*="border-radius:20px"],
.llc-filing-card-head span[style] {
  border-radius: 20px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.6px !important;
  padding: 4px 12px !important;
}

/* Primary btn at bottom */
.llc-dash-btn-primary {
  display: inline-block !important;
  background: linear-gradient(135deg, #1a365d, #2d6a9f) !important;
  color: #fff !important;
  text-decoration: none !important;
  padding: 14px 28px !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

/* ---- MOBILE DASHBOARD — 768px and below ---- */
@media (max-width: 768px) {
  .llc-dash-topbar {
    padding: 12px 16px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .llc-dash-topbar-right {
    width: 100% !important;
    justify-content: space-between !important;
  }
  .llc-dash-email { display: none !important; } /* hide email on tiny screens */

  .llc-dash-content { padding: 16px !important; }

  .llc-dash-page-title {
    flex-direction: column !important;
    margin-bottom: 16px !important;
  }
  .llc-dash-page-title h1 { font-size: 20px !important; }

  .llc-dash-search-row { flex-direction: column !important; width: 100% !important; }
  .llc-dash-search-box { width: 100% !important; }
  .llc-dash-search-box input { width: 100% !important; min-width: unset !important; flex: 1 !important; }
  #dash-filter { width: 100% !important; }

  /* Cards go full-width single column */
  .llc-filing-card { border-radius: 10px !important; margin-bottom: 12px !important; }

  .llc-filing-card-head {
    padding: 14px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }
  .llc-filing-name { font-size: 16px !important; }

  /* Details: 2 columns on mobile, stacked */
  .llc-filing-details {
    grid-template-columns: 1fr 1fr !important;
  }
  .llc-filing-detail-row {
    padding: 10px 14px !important;
    border-right: none !important;
  }
  .llc-filing-detail-row:nth-child(odd) {
    border-right: 1px solid #f3f4f6 !important;
  }

  .llc-filing-actions {
    padding: 12px 14px !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
  }
  .llc-filing-btn-resume,
  .llc-filing-btn-view {
    flex: 1 !important;
    text-align: center !important;
    justify-content: center !important;
    padding: 11px 12px !important;
    font-size: 13px !important;
    min-height: 44px !important;
  }
}

@media (max-width: 480px) {
  .llc-dash-btn-new { font-size: 12px !important; padding: 7px 12px !important; }
  .llc-dash-btn-logout { font-size: 12px !important; padding: 7px 12px !important; }

  /* Stack buttons vertically on very small screens */
  .llc-filing-actions { flex-direction: column !important; }
  .llc-filing-btn-resume,
  .llc-filing-btn-view { width: 100% !important; flex: none !important; }

  /* Details: 1 column on tiny phones */
  .llc-filing-details { grid-template-columns: 1fr !important; }
  .llc-filing-detail-row:nth-child(odd) { border-right: none !important; }
}

/* ---- FORM MOBILE ---- */
@media (max-width: 600px) {
  .llc-form-wrap { padding: 0 14px 40px !important; }
  .llc-section { padding: 18px 14px !important; }
  .llc-row-2, .llc-row-3 { grid-template-columns: 1fr !important; gap: 12px !important; }
  .llc-member-name-row { display: flex !important; flex-direction: column !important; gap: 10px !important; }
  .llc-input, .llc-select { font-size: 16px !important; min-height: 46px !important; }
  button, .llc-btn-primary { min-height: 46px !important; }
}

@media (max-width: 800px) {
  .llc-payment-layout { grid-template-columns: 1fr !important; padding: 0 14px !important; }
  .llc-payment-sidebar { order: -1 !important; margin-bottom: 16px !important; }
}

