* {margin:0;padding:0;box-sizing:border-box}
body {font-family:system-ui,Arial,sans-serif;line-height:1.6;color:#1a1a2e;background-color:#0f0f23;min-height:100vh}
header {background:linear-gradient(135deg,#2d1b69 0%,#1a0f4d 100%);color:#fff;padding:1rem 0;box-shadow:0 2px 10px rgba(0,0,0,0.3)}
nav {display:flex;gap:1.5rem;flex-wrap:wrap}
nav a {color:#e6d9ff;text-decoration:none;font-weight:500;transition:color 0.2s}
nav a:hover {color:#ffd43b}
.hero {background:linear-gradient(135deg,#1a0f4d 0%,#0f0f23 100%);padding:2rem 0;color:#fff;text-align:center}
.hero h2 {font-size:2rem;margin-bottom:0.5rem}
.hero p {opacity:0.9;margin-bottom:1rem}
.preset-buttons {display:flex;gap:0.5rem;flex-wrap:wrap;justify-content:center;margin-top:1rem}
.preset-btn {background:#ffd43b;color:#1a0f4d;border:none;padding:0.5rem 1rem;border-radius:4px;font-weight:bold;cursor:pointer;transition:background 0.2s}
.preset-btn:hover {background:#e6c92e}
planner-section {padding:2rem 0;min-height:100vh;background:#0f0f23;color:#e6e6e6}
.container {max-width:1200px;margin:0 auto;padding:0 1rem}
.input-grid {display:grid;grid-template-columns:1fr;gap:2rem;align-items:stretch}
.inputs {background:#1a0f4d;border-radius:8px;padding:1.5rem;box-shadow:0 4px 15px rgba(0,0,0,0.2)}
.inputs h3 {color:#ffd43b;margin-bottom:1rem;font-size:1.25rem}
.form-group {margin-bottom:1rem}
.form-group label {display:block;margin-bottom:0.25rem;color:#e6e6e6;font-weight:500}
.form-group input, .form-group select {width:100%;padding:0.5rem;border:1px solid #3a3a5c;border-radius:4px;background:#2d1b69;color:#fff;font-size:1rem}
.form-group input:focus, .form-group select:focus {outline:none;border-color:#ffd43b}
.checkbox-group {display:flex;flex-wrap:wrap;gap:0.75rem}
.checkbox-group label {display:flex;align-items:center;gap:0.25rem;color:#e6e6e6}
.calc-btn {width:100%;background:#ffd43b;color:#1a0f4d;border:none;padding:0.75rem;font-size:1.1rem;font-weight:bold;border-radius:4px;cursor:pointer;transition:background 0.2s}
.calc-btn:hover {background:#e6c92e}
.results {background:#1a0f4d;border-radius:8px;padding:1.5rem;box-shadow:0 4px 15px rgba(0,0,0,0.2)}
.results h3 {color:#ffd43b;margin-bottom:1rem}
#results-content {margin-bottom:1rem}
.placeholder-text {opacity:0.6;color:#a0a0c0}
.result-card {background:#2d1b69;border-radius:6px;padding:1rem;margin-bottom:1rem;border-left:4px solid #ffd43b}
.result-card h4 {color:#ffd43b;margin-bottom:0.5rem}
.result-card p {color:#e6e6e6;margin:0.25rem 0}
.risk-high {border-left-color:#ff4757}
.risk-medium {border-left-color:#ffa502}
.risk-low {border-left-color:#2ed573}
.action-buttons {display:flex;gap:0.5rem;flex-wrap:wrap;margin-top:1rem}
.secondary-btn {background:#3a3a5c;color:#e6e6e6;border:none;padding:0.5rem 1rem;border-radius:4px;cursor:pointer;transition:background 0.2s}
.secondary-btn:hover {background:#4a4a6c}
.reference-section {background:#1a0f4d;padding:2rem 0}
.reference-section h3 {color:#ffd43b;margin-bottom:1.5rem;text-align:center}
.reference-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}
.ref-card {background:#2d1b69;border-radius:8px;padding:1rem;box-shadow:0 2px 8px rgba(0,0,0,0.15)}
.ref-card h4 {color:#ffd43b;margin-bottom:0.5rem;font-size:1rem}
.ref-card ul {margin:0;padding-left:1rem;color:#e6e6e6}
.ref-card li {margin-bottom:0.25rem}
.ref-card li strong {color:#ffd43b}
.tips-section {padding:2rem 0;background:#0f0f23;color:#e6e6e6}
.tips-section h3 {color:#ffd43b;margin-bottom:1rem;text-align:center}
.tips-section p {max-width:800px;margin:0 auto 1rem;padding:0 1rem}
.faq-block {background:#2d1b69;border-radius:8px;padding:1rem;margin-top:1rem}
.faq-block h4 {color:#ffd43b;margin-bottom:0.5rem}
.faq-block dl {margin:0}
.faq-block dt {font-weight:bold;color:#e6e6e6;margin:0.5rem 0}
.faq-block dd {margin:0 0 0.5rem 0;color:#a0a0c0}
.ad-placeholder {background:#3a3a5c;border-radius:4px;padding:1rem;text-align:center;color:#a0a0c0;font-size:09rem;margin:1rem 0;border:1px dashed #4a4a6c}
footer {background:#1a0f4d;color:#e6e6e6;padding:1rem 0;margin-top:2rem;box-shadow:0 -2px 10px rgba(0,0,0,0.3)}
footer p {text-align:center;font-size:0.875rem}
footer a {color:#ffd43b}
@media (min-width:768px) {input-grid {grid-template-columns:1fr 1fr;gap:3rem}.inputs, .results {height:fit-content}}
@media (min-width:1024px) {.hero h2 {font-size:2.5rem}}}



/* Factory-injected deployment helpers. The AI owns the site design above this block. */
.ad-unit {
  width: min(100%, 720px);
  min-height: 120px;
  margin: 24px auto;
  display: block;
}

.legal-page {
  width: min(900px, calc(100% - 32px));
  margin: 40px auto;
}

.factory-fallback-nav {
  width: min(900px, calc(100% - 32px));
  margin: 24px auto 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  align-items: center;
  font-size: 0.95rem;
}

.factory-fallback-nav a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}
