:root{--bg: #f7f5ef;--panel: #fffdf8;--text: #2d2a22;--muted: #6d6758;--border: #d7cfbe;--olive: #6b7f3a;--olive-dark: #4f6229;--tan: #cbb89a;--earth: #8b5e3c;--danger: #9b3d2f}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:linear-gradient(180deg,#f8f6f1,#f3efe4)}.app-shell{margin:1.5rem auto 3rem;max-width:860px;padding:0 1rem}h1{margin:0 0 1rem;font-size:2rem;color:var(--olive-dark)}h2{margin:0 0 .75rem;color:var(--earth)}section{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:1rem;margin-bottom:1rem;box-shadow:0 1px #00000008}form{display:grid;gap:.7rem}label{display:grid;gap:.35rem;font-weight:600;color:var(--muted)}input,select,button{font:inherit}input,select{border:1px solid var(--border);border-radius:8px;padding:.55rem .65rem;background:#fff;color:var(--text)}input:focus,select:focus{outline:2px solid color-mix(in srgb,var(--olive) 45%,white);outline-offset:1px}button{border:1px solid var(--olive-dark);background:var(--olive);color:#fff;border-radius:8px;padding:.5rem .75rem;cursor:pointer}button:hover{background:var(--olive-dark)}ul{margin:.5rem 0 0;padding-left:1.1rem}li{margin-bottom:.4rem}p[role=alert]{color:var(--danger);font-weight:600}.topbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem}.signed-in{margin:0}.topbar-actions{display:flex;gap:.5rem;flex-wrap:wrap}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:1rem}.summary-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.summary-cards p{margin:0;padding:.5rem;border:1px solid var(--border);border-radius:8px;background:#fff}.plant-list{list-style:none;padding:0;margin:.5rem 0 0;display:grid;gap:.6rem}.plant-row{border:1px solid var(--border);border-radius:10px;padding:.6rem;background:#fff}.plant-title{display:block;margin-bottom:.4rem;font-weight:600}.plant-actions{display:flex;flex-wrap:wrap;gap:.4rem}@media (max-width: 680px){.app-shell{margin-top:.75rem;padding:0 .6rem}.topbar{flex-direction:column;align-items:flex-start}.summary-cards{grid-template-columns:1fr}section{padding:.8rem}button{width:100%}.plant-actions button{width:auto}}
