:root{--bg:#f1f5f2;--surface:#fff;--ink:#1f2e27;--muted:#5d6e65;--card-border:#dce6e0;--card-radius:10px;--accent:#4f7d67;--accent-strong:#3c6250;--accent-soft:#deebe4;--on-accent:#fff;--mood-good:#3e7a82;--mood-mid:#c9a227;--mood-low:#b0655b;--font-display:"Avenir Next", Optima, ui-sans-serif, "Segoe UI", sans-serif;--font-body:"Avenir Next", Optima, ui-sans-serif, "Segoe UI", sans-serif}html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--ink);background:var(--bg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;display:flex}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}.card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:1.25rem}.btn{border-radius:var(--card-radius);border:1px solid var(--card-border);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.95rem;display:inline-flex}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.btn-google{background:var(--surface);border-color:var(--card-border);color:var(--ink)}.field{flex-direction:column;gap:.35rem;display:flex}.field label{color:var(--muted);font-size:.85rem}.input{border:1px solid var(--card-border);border-radius:calc(var(--card-radius) - 4px);font:inherit;color:var(--ink);background:var(--surface);padding:.55rem .7rem}.input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.badge{color:var(--muted);background:var(--accent-soft);border-radius:999px;padding:.15rem .6rem;font-size:.75rem;display:inline-block}.app-header{border-bottom:1px solid var(--card-border);background:var(--surface);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}
