*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-green:#2d6a4f;--color-green-light:#52b788;--color-cream:#f4f1ea;--color-brown:#6b5b3f;--color-text:#1a1a1a;--color-text-muted:#6b7280;--color-border:#d4d0c8;--color-white:#fff;--color-water:#3b82f6;--color-fertilize:#f59e0b;--color-danger:#ef4444;--nav-height:64px;--radius:12px;--radius-sm:8px}html,body{background:var(--color-cream);height:100%;color:var(--color-text);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#app{flex-direction:column;min-height:100vh;display:flex}.main-content{padding-bottom:calc(var(--nav-height) + 16px);flex:1;padding:16px}.bottom-nav{height:var(--nav-height);background:var(--color-white);border-top:1px solid var(--color-border);z-index:100;padding-bottom:env(safe-area-inset-bottom);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--color-text-muted);flex-direction:column;align-items:center;gap:2px;padding:4px 12px;font-size:11px;text-decoration:none;transition:color .15s;display:flex}.nav-item.router-link-active{color:var(--color-green)}.nav-icon{font-size:22px;line-height:1}.nav-add .nav-icon{background:var(--color-green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;margin-top:-12px;font-size:20px;display:flex}.card{background:var(--color-white);border-radius:var(--radius);border:1px solid var(--color-border);padding:16px}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:500;transition:background .15s,opacity .15s;display:inline-flex}.btn:active{opacity:.8}.btn-primary{background:var(--color-green);color:var(--color-white)}.btn-water{background:var(--color-water);color:var(--color-white)}.btn-photo{background:var(--color-blue,#3b82f6);color:var(--color-white)}.btn-fertilize{background:var(--color-fertilize);color:var(--color-white)}.btn-outline{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.btn-sm{padding:6px 12px;font-size:12px}
