:root{--garden-green:#2D5016;--garden-green-light:#4A7A2E;--garden-brown:#8B6914;--garden-cream:#FFF8E7;--garden-terracotta:#C84B31;--garden-sage:#87A878;--garden-soil:#3E2723}.weather-card{background:var(--garden-cream);border:2px solid var(--garden-sage);border-radius:12px;padding:1rem;margin:1rem 0;max-width:400px}[data-theme=dark] .weather-card{background:#1a2e1a;border-color:var(--garden-green)}.weather-header{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#666;margin-bottom:.5rem}.weather-current{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.weather-main{display:flex;align-items:center;gap:.5rem}.weather-icon-large{font-size:2.5rem}.weather-temp{font-size:2rem;font-weight:700;color:var(--garden-green)}[data-theme=dark] .weather-temp{color:var(--garden-sage)}.weather-details{font-size:.85rem;line-height:1.5}.frost-warning{background:#fff3cd;border:1px solid gold;border-radius:8px;padding:.5rem;margin:.5rem 0;font-size:.9rem;text-align:center}[data-theme=dark] .frost-warning{background:#3a2f00;border-color:#8b6914}.weather-forecast{display:flex;gap:.5rem;margin-top:.5rem;border-top:1px solid var(--garden-sage);padding-top:.5rem}.forecast-day{flex:1;text-align:center;font-size:.8rem}.forecast-day-name{font-weight:700;margin-bottom:.25rem}.forecast-icon{font-size:1.5rem}.temp-high{font-weight:700;color:var(--garden-terracotta)}.temp-low{color:#888}.frost-badge{font-size:.7rem}.weather-error{padding:1rem;text-align:center;color:#888}.monthly-summary{background:var(--garden-cream);border:2px solid var(--garden-sage);border-radius:12px;padding:1.25rem 1.5rem;margin:1rem 0 1.5rem}[data-theme=dark] .monthly-summary{background:#1a2e1a;border-color:var(--garden-green)}.monthly-summary-title{margin:0 0 1rem;font-size:1.2rem;color:var(--garden-green)}[data-theme=dark] .monthly-summary-title{color:var(--garden-sage)}.monthly-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.summary-card{border-radius:8px;padding:.75rem;border-left:4px solid transparent}.summary-card--sow-indoors{background:rgba(255,179,71,.15);border-left-color:#ffb347}.summary-card--sow-outdoors{background:rgba(123,198,126,.15);border-left-color:#7bc67e}.summary-card--plant-out{background:rgba(91,155,213,.15);border-left-color:#5b9bd5}.summary-card--harvest{background:rgba(232,102,93,.15);border-left-color:#e8665d}.summary-card-title{font-size:.85rem;font-weight:700;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.04em;color:var(--garden-soil)}[data-theme=dark] .summary-card-title{color:#ccc}.summary-veg-list{display:flex;flex-wrap:wrap;gap:.3rem}.summary-veg-tag{display:inline-block;background:#fff;border:1px solid #ddd;border-radius:10px;padding:.15rem .5rem;font-size:.8rem;white-space:nowrap}[data-theme=dark] .summary-veg-tag{background:#2a3e2a;border-color:#444;color:#ddd}.monthly-summary-empty{color:#888;font-style:italic;margin:0}.calendar-table-wrap{overflow-x:auto;margin:1rem 0}.calendar-table{width:100%;border-collapse:collapse;font-size:.85rem}.calendar-table th,.calendar-table td{padding:.4rem .3rem;text-align:center;border:1px solid #ddd;min-width:2.5rem}[data-theme=dark] .calendar-table th,[data-theme=dark] .calendar-table td{border-color:#444}.calendar-table th{background:var(--garden-green);color:#fff;font-weight:600}.veg-header{text-align:left!important;min-width:8rem}.veg-name-cell{text-align:left!important;font-weight:500;white-space:nowrap}.veg-row{cursor:pointer;transition:background .15s}.veg-row:hover{background:rgba(45,80,22,8%)}[data-theme=dark] .veg-row:hover{background:rgba(135,168,120,.15)}.current-month{background:rgba(45,80,22,5%)!important;border-bottom:3px solid var(--garden-green)!important}td.sow-indoors{background:#ffb347!important}td.sow-outdoors{background:#7bc67e!important}td.plant-out{background:#5b9bd5!important}td.harvest{background:#e8665d!important;color:#fff}td.planted-marker{position:relative;font-size:.9rem}.planted-badge{font-size:.75rem}.calendar-legend{margin:1rem 0}.legend-items{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem}.legend-item{display:flex;align-items:center;gap:.3rem}.legend-colour{display:inline-block;width:1rem;height:1rem;border-radius:3px;border:1px solid #ccc}.legend-colour.sow-indoors{background:#ffb347}.legend-colour.sow-outdoors{background:#7bc67e}.legend-colour.plant-out{background:#5b9bd5}.legend-colour.harvest{background:#e8665d}.legend-colour.planted-marker{background:var(--garden-green)}.veg-details-panel{background:var(--garden-cream);border:2px solid var(--garden-sage);border-radius:12px;padding:1.5rem;margin:1rem 0}[data-theme=dark] .veg-details-panel{background:#1a2e1a;border-color:var(--garden-green)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin:1rem 0}.gallery-placeholder{grid-column:1/-1;text-align:center;padding:3rem;font-size:1.2rem;color:#888}.garden-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;margin:1rem 0}.stat-card{background:var(--garden-cream);border:1px solid var(--garden-sage);border-radius:8px;padding:.75rem;text-align:center}[data-theme=dark] .stat-card{background:#1a2e1a;border-color:var(--garden-green)}.stat-number{font-size:1.8rem;font-weight:700;color:var(--garden-green);display:block}[data-theme=dark] .stat-number{color:var(--garden-sage)}.stat-label{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.05em}.amazon-card{display:flex;align-items:center;gap:1rem;background:var(--garden-cream);border:1px solid var(--garden-sage);border-radius:8px;padding:.75rem 1rem;margin:.5rem 0;transition:box-shadow .2s}.amazon-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}[data-theme=dark] .amazon-card{background:#1a2e1a;border-color:var(--garden-green)}.amazon-card a{color:var(--garden-green);font-weight:600;text-decoration:none}.amazon-card a:hover{color:var(--garden-terracotta)}.post-weather-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--garden-cream);border:1px solid var(--garden-sage);border-radius:20px;padding:.25rem .75rem;font-size:.8rem;margin:.5rem 0}[data-theme=dark] .post-weather-badge{background:#1a2e1a;border-color:var(--garden-green)}.veg-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}.veg-tag{background:var(--garden-green);color:#fff;border-radius:12px;padding:.2rem .6rem;font-size:.75rem;text-decoration:none}.veg-tag:hover{background:var(--garden-green-light)}.share-buttons{display:flex;gap:.5rem;margin:1rem 0;flex-wrap:wrap}.share-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border-radius:6px;font-size:.8rem;text-decoration:none;color:#fff;transition:opacity .2s}.share-btn:hover{opacity:.85;color:#fff}.share-btn.twitter{background:#1da1f2}.share-btn.facebook{background:#4267b2}.share-btn.pinterest{background:#e60023}.share-btn.whatsapp{background:#25d366}@media(max-width:768px){.weather-current{flex-direction:column;align-items:flex-start}.weather-forecast{gap:.25rem}.forecast-day{font-size:.7rem}.calendar-table{font-size:.7rem}.calendar-table th,.calendar-table td{padding:.25rem .15rem;min-width:1.8rem}.veg-header{min-width:5rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}