/* Easy Home public pages (easyhome.ee). Same palette as /registreeru/. */
:root { --bg:#f7f5f1; --fg:#1f2a24; --muted:#5d665f; --accent:#2f6b4f; --accent-fg:#ffffff; --card:#ffffff;
        --line:#e3dfd6; --note:#fbf3df; --note-line:#ead9a8; }
@media (prefers-color-scheme: dark) {
  :root { --bg:#141714; --fg:#e8ebe7; --muted:#a6afa8; --accent:#7cc4a0; --accent-fg:#0f1a14; --card:#1c211d;
          --line:#2d342f; --note:#2a2618; --note-line:#4a4126; }
}
* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body { margin:0; background:var(--bg); color:var(--fg); font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
main { max-width:760px; margin:0 auto; padding:32px 16px 48px; }
.site { display:flex; justify-content:space-between; align-items:baseline; gap:16px; flex-wrap:wrap; margin:0 0 28px; }
.site a.brand { color:var(--fg); text-decoration:none; font-weight:700; letter-spacing:.02em; }
.site nav { display:flex; gap:16px; flex-wrap:wrap; font-size:15px; }
.site nav a { color:var(--muted); text-decoration:none; }
.site nav a:hover, .site nav a[aria-current] { color:var(--accent); }
h1 { font-size:32px; line-height:1.2; margin:0 0 12px; }
h2 { font-size:23px; line-height:1.25; margin:40px 0 10px; }
h3 { font-size:18px; margin:24px 0 6px; }
.lead { font-size:19px; margin:0 0 20px; }
p, ul, ol { margin:0 0 14px; }
li { margin:4px 0; }
a { color:var(--accent); }
.note { background:var(--note); border:1px solid var(--note-line); border-radius:10px; padding:12px 16px; font-size:15px; margin:0 0 24px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:12px; padding:20px 22px; margin:24px 0; }
.card h2, .card h3 { margin-top:0; }
.button { display:inline-block; padding:12px 20px; border-radius:8px; background:var(--accent); color:var(--accent-fg);
          text-decoration:none; font-weight:700; border:0; font:inherit; font-weight:700; cursor:pointer; }
.button:hover { filter:brightness(1.08); }
.button.secondary { background:transparent; color:var(--accent); border:1px solid var(--accent); }
.actions { display:flex; gap:12px; flex-wrap:wrap; margin:16px 0; }
.small { font-size:14px; color:var(--muted); }
.table-wrap { overflow-x:auto; margin:8px 0 18px; border:1px solid var(--line); border-radius:10px; background:var(--card); }
table { border-collapse:collapse; width:100%; font-size:15px; }
th, td { border-bottom:1px solid var(--line); padding:8px 10px; text-align:left; vertical-align:top; }
th { font-weight:600; background:var(--bg); }
tr:last-child td { border-bottom:0; }
td.fill { min-width:90px; border-left:1px solid var(--line); }
tr:has(td.fill) th + th, thead tr th:not(:first-child) { border-left:1px solid var(--line); }
.steps { counter-reset:step; list-style:none; padding:0; }
.steps > li { counter-increment:step; position:relative; padding:0 0 12px 44px; margin:0 0 8px; }
.steps > li::before { content:counter(step); position:absolute; left:0; top:0; width:30px; height:30px; border-radius:50%;
                      background:var(--accent); color:var(--accent-fg); font-weight:700; display:flex; align-items:center; justify-content:center; font-size:15px; }
.checks { list-style:none; padding:0; }
.checks li { padding-left:30px; position:relative; }
.checks li::before { content:""; position:absolute; left:0; top:5px; width:16px; height:16px; border:2px solid var(--muted); border-radius:3px; }
footer { margin-top:48px; border-top:1px solid var(--line); padding-top:16px; font-size:14px; color:var(--muted); }
footer p { margin:0 0 6px; }
@media print {
  body { background:#fff; color:#000; font-size:12pt; }
  .site nav, .actions, .no-print, footer .cta { display:none !important; }
  main { max-width:none; padding:0; }
  .table-wrap { border-color:#999; overflow:visible; }
  th, td { border-color:#999; }
  td.fill { height:28px; }
  h2 { page-break-after:avoid; }
  .table-wrap, .card { page-break-inside:avoid; }
  a { color:#000; text-decoration:none; }
}
