/* FarmDash public site. Pixel-art identity, enterprise restraint: cream space,
   1px ink lines, hard 2px shadows, live text, no motion, no web fonts. */
:root{
  --bg:#f4efe4;--surface:#fffcf6;--ink:#29291f;--ink-2:#5d5848;--ink-3:#7a735f;
  --line:#29291f;--rule:#e3d8c3;--green:#223629;--green-2:#2e4a39;--sage:#e2eadb;--focus:#33607a;
  --font:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;color:var(--ink);font:15px/1.55 var(--font);
  background-color:var(--bg);
  /* engineering-paper dot grid, 16px pitch, barely there */
  background-image:radial-gradient(#e2d8c4 1px,transparent 1px);background-size:16px 16px;background-position:8px 8px;
  -webkit-font-smoothing:antialiased}
img.px{display:block;image-rendering:pixelated;image-rendering:crisp-edges;max-width:none;flex:none}
a{color:var(--green-2);text-underline-offset:3px}
a:hover{color:var(--green)}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}

/* top status line */
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;font-size:12px;color:var(--ink-2)}
.topbar .mark{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:650;letter-spacing:.02em;text-decoration:none}
.topbar .mark .logo{display:block;flex:none;width:50px;height:32px}
.topbar nav{display:flex;gap:18px}

/* sign-in panel */
main{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}
.panel{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--line);box-shadow:4px 4px 0 var(--line);text-align:center}
.panel-bar{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);background:var(--bg)}
.panel-bar .dots{display:flex;gap:4px}
.panel-bar .dots i{display:block;width:6px;height:6px;border:1px solid var(--ink-2)}
.panel-body{padding:32px 36px 28px}
.brand-art{display:flex;justify-content:center;align-items:flex-end;height:112px;margin:0 auto 14px}
.brand-art .hero-logo{display:block;width:151px;height:96px;flex:none}
h1{margin:0;font-size:40px;line-height:1.15;letter-spacing:-.03em;font-weight:700}
.purpose{margin:10px 0 0;color:var(--ink-2)}
.signin{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin:26px 0 0;min-width:220px;min-height:44px;padding:10px 28px;
  background:var(--green);color:#fffcf6;border:1px solid var(--green);box-shadow:2px 2px 0 var(--line);font:650 15px var(--font);text-decoration:none}
.signin:hover{background:var(--green-2);color:#fff}
.signin:active{transform:translate(2px,2px);box-shadow:none}
.signin .arrow{display:inline-block;width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);margin-left:2px}
.access{margin:16px 0 0;font-size:12px;color:var(--ink-3)}
.panel-foot{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-top:1px solid var(--rule);font-size:11px;color:var(--ink-3);text-align:left}
.panel-foot .ok{display:inline-flex;align-items:center;gap:6px}
.panel-foot .ok i{display:block;width:6px;height:6px;background:var(--green-2)}

/* footer horizon */
.horizon{display:flex;justify-content:center;overflow:hidden;margin-top:8px}
.horizon img{width:512px;height:96px}
footer{text-align:center;font-size:11px;color:var(--ink-3);padding:6px 16px 14px}
footer a{color:var(--ink-2)}

/* privacy page */
.doc{flex:1;width:100%;max-width:720px;margin:8px auto 32px;padding:0 16px}
.doc article{background:var(--surface);border:1px solid var(--line);box-shadow:4px 4px 0 var(--line)}
.doc .content{padding:28px 32px 32px}
.doc h1{font-size:28px}
.doc h2{font-size:17px;margin:26px 0 6px}
.doc p,.doc li{color:var(--ink)}
.doc .muted{color:var(--ink-3);font-size:13px;margin-top:4px}

@media (max-width:600px){
  .horizon{display:none}
  .panel-body{padding:24px 20px 22px}
  h1{font-size:32px}
  .brand-art{height:80px}
  .brand-art .hero-logo{width:101px;height:64px}
  .doc .content{padding:22px 18px}
}
@media (max-height:760px){.horizon{display:none}}
@media (forced-colors:active){
  .panel,.doc article{box-shadow:none;border-color:CanvasText}
  .signin{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}
  img.px{display:none}
}
@media (prefers-reduced-motion:reduce){.signin:active{transform:none}}
@media print{body{background:#fff}.horizon,.topbar nav{display:none}.panel,.doc article{box-shadow:none}}
