:root{--bg-cream: #f5f1e5;--bg-moss: #dce4cf;--bg-clay: #eadfcb;--ink-900: #1f2a20;--ink-700: #344138;--ink-500: #5c6c60;--accent-green: #3c6f46;--accent-green-2: #2f5c38;--accent-amber: #b07a3f;--danger: #a43f3f;--line-soft: rgba(43, 58, 44, .14);--surface: rgba(255, 253, 248, .88);--surface-strong: #fffaf1;--shadow-soft: 0 12px 30px rgba(45, 57, 46, .1);--shadow-card: 0 14px 40px rgba(50, 65, 50, .14);--radius-xl: 28px;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:var(--ink-900);background:radial-gradient(circle at 12% 10%,rgba(148,178,120,.25),transparent 38%),radial-gradient(circle at 88% 5%,rgba(167,125,88,.22),transparent 34%),linear-gradient(140deg,var(--bg-cream) 0%,var(--bg-moss) 55%,var(--bg-clay) 100%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.17;background-image:linear-gradient(45deg,rgba(0,0,0,.08) 25%,transparent 25%),linear-gradient(-45deg,rgba(0,0,0,.06) 25%,transparent 25%);background-size:56px 56px;z-index:-2}.page-shell{width:min(1300px,94vw);margin:28px auto 36px;display:grid;gap:22px}.surface-block{background:var(--surface);border:1px solid rgba(255,255,255,.75);box-shadow:var(--shadow-soft);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero{padding:30px;display:grid;gap:18px;position:relative;overflow:hidden;animation:rise-in .7s ease both}.hero:after{content:"";position:absolute;right:-40px;top:-48px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#3e6f4633,#3e6f4600)}.hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.hero h1{margin:0;font-family:ZCOOL XiaoWei,serif;font-size:clamp(2rem,3.8vw,3rem);line-height:1.05;letter-spacing:.02em}.hero p{margin:8px 0 0;color:var(--ink-700);max-width:700px;line-height:1.6}.hero-badge{padding:9px 14px;border-radius:999px;font-size:.88rem;font-weight:700;color:var(--accent-green-2);background:#3d6f461a;border:1px solid rgba(61,111,70,.25);white-space:nowrap}.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.stat-card{background:var(--surface-strong);border-radius:var(--radius-md);padding:14px;border:1px solid var(--line-soft);display:grid;gap:6px}.stat-card span{font-size:.82rem;color:var(--ink-500)}.stat-card strong{font-size:1.15rem}.workspace{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px;align-items:start}.form-panel{padding:20px;display:grid;gap:16px;position:sticky;top:18px;animation:rise-in .9s ease both}.form-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.form-header h2{margin:0;font-size:1.15rem}.form-header button{border:1px solid var(--line-soft);border-radius:999px;padding:7px 11px;background:#fff;color:var(--ink-700);cursor:pointer}form{display:grid;gap:12px}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field{display:grid;gap:5px}.field label{font-size:.82rem;font-weight:700;color:var(--ink-700)}.field input,.field select,.field textarea{width:100%;border-radius:var(--radius-sm);border:1px solid rgba(57,70,57,.2);padding:10px 11px;background:#fffffff0;font:inherit;color:var(--ink-900)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:#3a6842b3;box-shadow:0 0 0 3px #41744a26}textarea{min-height:80px;resize:vertical}.range-row{display:grid;gap:6px}.range-head{display:flex;justify-content:space-between;font-size:.82rem;color:var(--ink-700)}.photo-preview{border-radius:var(--radius-md);height:148px;overflow:hidden;border:1px solid var(--line-soft);background:#f0f4eb}.photo-preview img{width:100%;height:100%;object-fit:cover;display:block}.form-actions{display:flex;gap:9px}.btn{flex:1;border:none;border-radius:999px;padding:11px 14px;font:inherit;font-weight:700;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--accent-green),#5e8a57);color:#fff;box-shadow:0 10px 20px #31593940}.btn-secondary{background:#fff;color:var(--ink-700);border:1px solid var(--line-soft)}.plants-panel{padding:20px;display:grid;gap:15px;animation:rise-in 1s ease both}.toolbar{display:flex;flex-wrap:wrap;gap:10px}.toolbar input,.toolbar select{border-radius:999px;border:1px solid rgba(58,74,60,.2);padding:10px 14px;background:#fff;font:inherit;color:var(--ink-900)}.toolbar input{min-width:220px;flex:1}#empty-state{margin:12px 0 0;padding:18px;border-radius:var(--radius-md);border:1px dashed rgba(47,76,52,.3);color:var(--ink-700);background:#ffffffa8}.plant-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.plant-card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(66,81,67,.12);background:var(--surface-strong);box-shadow:var(--shadow-card);display:grid;transform:translateY(0);transition:transform .18s ease,box-shadow .18s ease}.plant-card:hover{transform:translateY(-4px);box-shadow:0 20px 38px #34423533}.plant-card.is-due{border-color:#b07a3f94}.plant-photo-wrap{position:relative;height:170px}.plant-photo{width:100%;height:100%;object-fit:cover;display:block}.plant-health{position:absolute;right:10px;bottom:10px;padding:5px 9px;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff;background:#1f2a20cc}.plant-body{padding:14px;display:grid;gap:10px}.plant-body h3{margin:0;font-size:1.16rem}.plant-body header p{margin:2px 0 0;color:var(--ink-500);font-size:.86rem}.chip-row{display:flex;flex-wrap:wrap;gap:7px}.chip{font-size:.74rem;color:var(--ink-700);background:#687e6c24;border-radius:999px;padding:4px 8px}.meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.meta-grid p{margin:0;border-radius:var(--radius-sm);background:#5f776314;padding:8px;display:grid;gap:2px}.meta-grid span{font-size:.74rem;color:var(--ink-500)}.meta-grid strong{font-size:.96rem}.survival-track{width:100%;height:7px;border-radius:99px;background:#36523924;overflow:hidden}.survival-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#5f8f66,#88b480)}.watering-line{display:grid;gap:2px;padding:8px 9px;border-radius:var(--radius-sm);background:#4d78561a}.watering-line strong{font-size:.83rem}.watering-line small{color:var(--ink-500)}.watering-line.is-warning{background:#b07a3f2b}.plant-notes{margin:0;color:var(--ink-700);font-size:.84rem;line-height:1.5}.plant-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.plant-actions button{border-radius:9px;border:1px solid rgba(57,71,58,.18);background:#fff;color:var(--ink-700);padding:7px 6px;font-size:.77rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.plant-actions button span{display:inline-block;max-width:2em;line-height:1.2;text-align:center;white-space:normal;word-break:break-all}.plant-actions .danger{color:var(--danger);border-color:#a43f3f59}.watering-board{padding:20px;animation:rise-in 1.1s ease both}.watering-board h2{margin:0 0 10px;font-size:1.12rem}.watering-board p{margin:0 0 12px;color:var(--ink-700)}.watering-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}.watering-item{padding:12px;border-radius:var(--radius-md);border:1px solid rgba(54,76,58,.14);background:#ffffffb8;display:flex;justify-content:space-between;gap:12px}.watering-item h4{margin:0;font-size:1rem}.watering-item p,.watering-item small{margin:3px 0 0;color:var(--ink-500);font-size:.81rem}.watering-item strong{display:block;text-align:right}.watering-item.is-due{border-color:#b07a3f66;background:#f5dbba59}@keyframes rise-in{0%{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 1130px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace{grid-template-columns:1fr}.form-panel{position:static}}@media (max-width: 780px){.page-shell{width:min(96vw,1180px);margin:16px auto 24px}.hero,.plants-panel,.form-panel,.watering-board{padding:16px;border-radius:20px}.hero-top{flex-direction:column;align-items:flex-start}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-row{grid-template-columns:1fr}.toolbar{flex-direction:column}.toolbar input,.toolbar select{width:100%}.plant-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.watering-item{flex-direction:column}.watering-item strong{text-align:left}}
