@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#20352c;background:#f5f3e9}body{margin:0}h1,h2,h3,.brand{font-family:Manrope,sans-serif}a{color:inherit;text-decoration:none}.brand-mark{background:#dce9d9;color:#286746}.panel{background:#fffdf7;border:1px solid #e5e6d9;box-shadow:0 12px 32px #233f2910}.field{width:100%;border:1px solid #d9dfd2;border-radius:12px;background:#fff;padding:.75rem .9rem;color:#20352c;outline:none}.field:focus{border-color:#4a855c;box-shadow:0 0 0 3px #4a855c20}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:12px;padding:.75rem 1rem;font-weight:700;transition:.2s}.btn-primary{background:#286746;color:white}.btn-primary:hover{background:#1e5237}.btn-soft{background:#e9f0e5;color:#286746}.badge{display:inline-flex;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:700;background:#edf1e8;color:#536b4c}.badge-warn{background:#fff1d7;color:#8e621b}.badge-good{background:#e0f2e5;color:#286746}.badge-bad{background:#fce7e2;color:#a34635}.muted{color:#78847a}.nav-link{padding:.55rem .8rem;border-radius:10px;color:#607066;font-weight:600}.nav-link:hover,.nav-link.active{background:#e9f0e5;color:#286746}.metric{background:linear-gradient(135deg,#fffdf7,#f0f4e9)}.leaf{color:#70a66f}.toast{position:fixed;right:1rem;bottom:1rem;z-index:20;max-width:25rem;border-radius:14px;padding:1rem 1.2rem;background:#20352c;color:white;box-shadow:0 12px 30px #0003}.toast.error{background:#9f4035}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:.8rem .7rem;border-bottom:1px solid #edf0e8;vertical-align:top}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#78847a}