:root{--forest-green:#2d5016;--forest-deep:#1a3a0d;--botanical-gold:#8b6914;--parchment-cream:#f5f0e8;--deep-burgundy:#6b1f1f;--background:#faf8f4;--text-primary:#2c2c2c;--text-secondary:#6b6b6b;--text-muted:#9b9b9b;--border:#e0dcd4;--card-bg:#fff;--font-display:"Fraunces", Georgia, serif;--font-body:"DM Sans", -apple-system, sans-serif;--radius-sm:6px;--radius-md:12px;--radius-lg:20px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--background);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5}h1,h2,h3{font-family:var(--font-display);font-weight:700}.container{max-width:960px;margin:0 auto;padding:0 24px}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px}input,textarea,select{font-family:var(--font-body);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text-primary);width:100%;padding:10px 14px;font-size:16px}input:focus,textarea:focus,select:focus{border-color:var(--forest-green);outline:none;box-shadow:0 0 0 3px #2d50161a}textarea{resize:vertical;min-height:120px}label{color:var(--text-secondary);margin-bottom:6px;font-size:14px;font-weight:500;display:block}.btn{font-family:var(--font-body);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:10px 20px;font-size:16px;font-weight:700;transition:opacity .15s}.btn:hover{opacity:.85}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--forest-green);color:#fff}.btn-secondary{color:var(--forest-green);border:1px solid var(--forest-green);background:0 0}.btn-danger{background:var(--deep-burgundy);color:#fff}.btn-small{padding:6px 14px;font-size:14px}.toggle{background:var(--border);cursor:pointer;border:none;border-radius:13px;flex-shrink:0;width:48px;height:26px;transition:background .2s;position:relative}.toggle.active{background:var(--forest-green)}.toggle:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px}.toggle.active:after{transform:translate(22px)}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.badge-note{color:var(--forest-green);background:#e8f0e0}.badge-special{color:var(--botanical-gold);background:#f5edd4}.badge-update{color:#1f4b6b;background:#e0e8f0}.badge-seasonal{color:var(--deep-burgundy);background:#f0e0e0}
