* {box-sizing: border-box;margin:0;padding:0;}
body {font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;line-height:1.6;color:#333;background:#fff;}
header {background:#2c3e50;color:#fff;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;}
.logo {color:#fff;font-weight:700;font-size:1.25rem;text-decoration:none;}
.nav-link {color:#ecf0f1;margin-left:2rem;text-decoration:none;font-size:0.9rem;}
.nav-link:hover {text-decoration:underline;}
main {max-width:900px;margin:0 auto;padding:2rem;}
.hero h1 {font-size:2rem;margin-bottom:0.5rem;color:#2c3e50;}
.subtitle {font-size:1.1rem;color:#7f8c8d;margin-bottom:2rem;}
.inputs {background:#f8f9fa;padding:2rem;border-radius:12px;margin-bottom:2rem;}
.input-group {margin-bottom:1.5rem;}
.input-group label {display:block;margin-bottom:0.5rem;font-weight:600;color:#2c3e50;}
.input-group input, .input-group select {width:100%;padding:0.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;}
.input-group select {height:2.5rem;}
.help-text {font-size:0.85rem;color:#7f8c8d;margin-top:0.25rem;}
.CTA-button {width:100%;padding:1rem;background:#e74c3c;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background 0.2s;}
.CTA-button:hover {background:#c0392b;}
.CTA-button:disabled {background:#bdc3c7;cursor:not-allowed;}
.secondary-button {padding:0.75rem 1.5rem;background:#3498db;color:#fff;border:none;border-radius:6px;margin-right:0.5rem;cursor:pointer;transition:background 0.2s;}
.secondary-button:hover {background:#2980b9;}
.secondary-button:disabled {background:#bdc3c7;cursor:not-allowed;}
.actions {display:flex;gap:0.5rem;margin-top:1rem;}
.results h2, .tracking-section h2, .planning-section h2, .hydration-section h2, .assumptions-section h2, .caveats-section h2 {font-size:1.5rem;margin-bottom:1rem;color:#2c3e50;}
.output-container {background:#fff;border:1px solid #eee;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;min-height:200px;}
.placeholder-state {text-align:center;color:#7f8c8d;padding:2rem 0;}
.quick-tips {display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1rem;}
.tip-card {background:#f8f9fa;padding:1.25rem;border-radius:8px;}
.tip-card h3 {font-size:1.1rem;margin-bottom:0.5rem;color:#2c3e50;}
.tip-card p {font-size:0.9rem;color:#555;}
.hydration-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:1rem;}
.hydration-item ul {margin-top:0.5rem;padding-left:1.25rem;}
.hydration-item li {margin-bottom:0.25rem;color:#555;}
.assumptions-list, .caveats-list {list-style:disc inside;color:#555;line-height:1.8;}
.footer {background:#2c3e50;color:#ecf0f1;padding:2rem;text-align:center;margin-top:3rem;}
.footer a {color:#3498db;text-decoration:none;}
.footer a:hover {text-decoration:underline;}
@media (max-width:600px) {
header {flex-direction:column;gap:1rem;text-align:center;}
.nav-link {margin-left:0;margin-right:1rem;}
.main {padding:1rem;}
.hero h1 {font-size:1.5rem;}
.actions {flex-direction:column;}
.secondary-button {margin-right:0;margin-bottom:0.5rem;}
.quick-tips {grid-template-columns:1fr;}
.hydration-grid {grid-template-columns:1fr;}
}
@media (max-width:400px) {
.header {padding:0.75rem 1rem;}
.logo {font-size:1rem;}
.inputs {padding:1.5rem;}
.CTA-button {padding:0.75rem;font-size:1rem;}
.secondary-button {padding:0.5rem 1rem;font-size:0.9rem;}
}


/* 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;
}
