/* ═══════════════════════════════════════════════════════
   Farm App v7.0 — Base CSS: Variables, Reset, Typography
   ═══════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500;600&display=swap');

*{box-sizing:border-box;margin:0;padding:0}

:root{
  --primary:#16a34a;
  --primary-dark:#15803d;
  --primary-light:#dcfce7;
  --accent:#0ea5e9;
  --surface:#ffffff;
  --surface-2:#f8fafc;
  --surface-3:#f1f5f9;
  --background:#f0fdf4;
  --text:#0f172a;
  --text-muted:#64748b;
  --border:#e2e8f0;
  --border-strong:#cbd5e1;
  --danger:#ef4444;
  --warning:#f59e0b;
  --info:#3b82f6;
  --success:#16a34a;
  --shadow-sm:0 1px 3px rgba(0,0,0,0.06),0 1px 2px rgba(0,0,0,0.04);
  --shadow-md:0 4px 12px rgba(0,0,0,0.08),0 2px 4px rgba(0,0,0,0.04);
  --shadow-lg:0 10px 30px rgba(0,0,0,0.1);
  --radius-sm:6px;
  --radius-md:10px;
  --radius-lg:16px;
  --radius-xl:20px;
}

html{font-size:16px;-webkit-text-size-adjust:100%}

body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--background);
  color:var(--text);
  min-height:100vh;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,h6{
  font-family:'DM Sans',sans-serif;
  line-height:1.2;
  font-weight:700;
}

/* Monospace/numbers */
.mono,.stat-value{
  font-family:'JetBrains Mono','Courier New',monospace;
}

/* Scrollbar styling */
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}

/* Focus ring */
:focus-visible{outline:2px solid var(--primary);outline-offset:2px}

/* Selection */
::selection{background:var(--primary-light);color:var(--primary-dark)}

/* Smooth transitions globally */
button,a,input,select,textarea{transition:border-color .15s,box-shadow .15s,background .15s,color .15s,opacity .15s}

/* ── Print ──────────────────────────────────────────────── */
.print-only{display:none !important}

@media print{
  #side-menu,#menu-button,#sync-dot,#offline-toast{display:none !important}
  .no-print{display:none !important}
  .print-only{display:block !important}
  body,html{background:#fff !important}
  .card{box-shadow:none !important;border:1px solid #d1d5db !important;break-inside:avoid}
  @page{margin:1.5cm}
}
