
/* Levi's Toolbox FBA Calculator — Scoped Styles (no Tailwind) v1.1.1 */
#ltfba-root { --lt-primary:#2563eb; --lt-primary-700:#1d4ed8; --lt-text:#111827; --lt-muted:#6b7280; --lt-border:#e5e7eb; --lt-bg:#ffffff; --lt-card:#ffffff; font-family: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Noto Sans',sans-serif; color: var(--lt-text); }
#ltfba-root .min-h-screen { min-height: auto !important; }
#ltfba-root .bg-white { background: var(--lt-card); }
#ltfba-root .shadow-lg { box-shadow: 0 10px 20px rgba(0,0,0,0.06); }
#ltfba-root .rounded-lg { border-radius: 12px; }  #ltfba-root .rounded-md { border-radius: 8px; }
#ltfba-root .p-4 { padding: 16px; }  #ltfba-root .p-6 { padding: 24px; }  #ltfba-root .p-8 { padding: 32px; }
#ltfba-root .py-10 { padding-top: 40px; padding-bottom: 40px; }
#ltfba-root .px-4 { padding-left: 16px; padding-right: 16px; }
#ltfba-root .sm\:px-6 { padding-left: 24px; padding-right: 24px; }  #ltfba-root .lg\:px-8 { padding-left: 32px; padding-right: 32px; }
#ltfba-root .w-full { width: 100%; }  #ltfba-root .max-w-3xl { max-width: 768px; margin: 0 auto; }
#ltfba-root h1 { font-size: 2rem; line-height: 1.2; font-weight: 700; text-align: center; margin: 0 0 24px; }
#ltfba-root .text-xl { font-size: 1.25rem; }  #ltfba-root .text-lg { font-size: 1.125rem; }  #ltfba-root .text-2xl { font-size: 1.5rem; }
#ltfba-root .font-semibold { font-weight: 600; }  #ltfba-root .font-bold { font-weight: 700; }  #ltfba-root .font-medium { font-weight: 500; }
#ltfba-root .mb-1 { margin-bottom: 6px; }  #ltfba-root .mb-2 { margin-bottom: 8px; }  #ltfba-root .mb-4 { margin-bottom: 16px; }
#ltfba-root .mt-2 { margin-top: 8px; }  #ltfba-root .mt-4 { margin-top: 16px; }  #ltfba-root .mt-6 { margin-top: 24px; }  #ltfba-root .mt-8 { margin-top: 32px; }
#ltfba-root .ml-1 { margin-left: 4px; }
#ltfba-root .grid { display: grid; gap: 16px; }  #ltfba-root .gap-4 { gap: 16px; }  #ltfba-root .space-x-4 > * + * { margin-left: 16px; }
#ltfba-root .grid-cols-1 { grid-template-columns: 1fr; }
@media (min-width:640px){ #ltfba-root .sm\:grid-cols-2 { grid-template-columns: repeat(2,1fr); } }
@media (min-width:768px){ #ltfba-root .md\:grid-cols-3 { grid-template-columns: repeat(3,1fr); } }
#ltfba-root .flex { display: flex; }  #ltfba-root .items-center { align-items: center; }  #ltfba-root .justify-center { justify-content: center; }
#ltfba-root .text-center { text-align: center; }  #ltfba-root .text-gray-500 { color: #6b7280; }  #ltfba-root .text-gray-800 { color: #1f2937; }
#ltfba-root .bg-gray-100 { background: #f3f4f6; }  #ltfba-root .border { border: 1px solid var(--lt-border); }  #ltfba-root .border-gray-200 { border-color: #e5e7eb; }  #ltfba-root .border-gray-300 { border-color: #d1d5db; }
#ltfba-root .rounded-lg { border-radius: 12px; }
#ltfba-root .hidden { display: none !important; }

/* Inputs */
#ltfba-root label { display: block; font-size: 0.875rem; color: var(--lt-text); margin-bottom: 6px; }
#ltfba-root input[type="number"], #ltfba-root input[type="text"], #ltfba-root select {
  width: 100%; padding: 12px 12px; border: 1px solid #d1d5db; border-radius: 8px; background: #f3f4f6; color: var(--lt-text); font-size: 1rem; line-height: 1.4;
}
#ltfba-root input[type="number"]::-webkit-outer-spin-button, #ltfba-root input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* Buttons */
#ltfba-root button[type="submit"] {
  display: inline-block; width: 100%; padding: 12px 16px; border: 0; border-radius: 8px;
  background: var(--lt-primary); color: #fff; font-weight: 600; cursor: pointer;
}
#ltfba-root button[type="submit"]:hover { background: var(--lt-primary-700); }
#ltfba-root #toggle-advanced { background: transparent; color: #1f2937; padding: 0; border: 0; cursor: pointer; }

/* Range slider */
#ltfba-root input[type=range] {
  -webkit-appearance: none; width: 100%; height: 6px; background: #e5e7eb; border-radius: 9999px; outline: none;
}
#ltfba-root input[type=range]::-webkit-slider-thumb {
  -webkit-appearance: none; height: 18px; width: 18px; border-radius: 9999px; background: #4b5563; border: 2px solid #ffffff; box-shadow: 0 0 0 2px #4b5563; cursor: pointer;
}
#ltfba-root input[type=range]::-moz-range-track { height: 6px; background: #e5e7eb; border: none; border-radius: 9999px; }
#ltfba-root input[type=range]::-moz-range-thumb { height: 18px; width: 18px; border-radius: 9999px; background: #4b5563; border: 2px solid #ffffff; cursor: pointer; }

/* Cards for results */
#ltfba-root .result-card { padding:16px; border:1px solid #e5e7eb; border-radius:12px; }
#ltfba-root .result-card .value { font-size: 1.5rem; font-weight: 700; }
#ltfba-root .bg-red-50 { background:#fef2f2; }  #ltfba-root .bg-orange-50 { background:#fff7ed; }  #ltfba-root .bg-yellow-50 { background:#fefce8; }  #ltfba-root .bg-green-50 { background:#ecfdf5; }  #ltfba-root .bg-emerald-50 { background:#ecfdf5; }
#ltfba-root .text-red-700 { color:#b91c1c; }  #ltfba-root .text-orange-700 { color:#c2410c; }  #ltfba-root .text-yellow-700 { color:#a16207; }  #ltfba-root .text-green-700 { color:#15803d; }  #ltfba-root .text-emerald-700 { color:#047857; }

/* Typography used in sections */
#ltfba-root h2 { font-size: 1.125rem; font-weight: 600; margin: 0 0 8px; }
#ltfba-root h3 { font-size: 1rem; font-weight: 600; margin: 0 0 8px; }

/* Fee table */
#ltfba-root table { width: 100%; border-collapse: collapse; }
#ltfba-root th, #ltfba-root td { padding: 12px; border-bottom: 1px solid #e5e7eb; text-align: left; }
#ltfba-root th { font-size: 0.75rem; color: #6b7280; font-weight: 600; text-transform: uppercase; letter-spacing: .02em; }
#ltfba-root tbody tr:hover { background:#f9fafb; }
