.garden-planner{min-height:100vh;background-color:var(--background-color);padding:1rem}.garden-planner__container{max-width:80rem;margin:0 auto}.garden-planner__title{font-size:1.875rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem;text-align:center}.garden-planner__subtitle{color:var(--text-muted);text-align:center;margin-bottom:.25rem;font-size:.875rem}.garden-planner__autosave{color:var(--text-muted);opacity:.7;text-align:center;margin-bottom:1rem;font-size:.75rem}.garden-planner__layout{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:1024px){.garden-planner__layout{grid-template-columns:1fr 3fr}}.garden-planner__sidebar{display:flex;flex-direction:column;gap:1rem}.garden-planner__card{background-color:var(--surface-color);border-radius:var(--border-radius);padding:1rem;border:1px solid var(--border-color)}.garden-planner__card-title{font-size:.875rem;font-weight:600;color:var(--text-color);margin-bottom:.75rem}.garden-planner__file-input{display:none}.garden-planner__btn{width:100%;padding:.5rem 1rem;border-radius:var(--border-radius);font-size:.875rem;cursor:pointer;transition:all .2s ease;border:none}.garden-planner__btn:disabled{opacity:.5;cursor:not-allowed}.garden-planner__btn--primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text)}.garden-planner__btn--primary:hover:not(:disabled){background-color:var(--btn-primary-hover)}.garden-planner__btn--secondary{background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.garden-planner__btn--secondary:hover:not(:disabled){background-color:var(--btn-secondary-hover)}.garden-planner__btn--accent{background-color:var(--btn-accent-bg);color:var(--btn-accent-text)}.garden-planner__btn--accent:hover:not(:disabled){background-color:var(--btn-accent-hover)}.garden-planner__btn--danger{background-color:var(--error-bg);color:var(--error-color)}.garden-planner__btn--danger:hover:not(:disabled){background-color:#ff6b6b40}.garden-planner__slider-group{margin-top:.75rem}.garden-planner__label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem}.garden-planner__slider{width:100%;accent-color:var(--primary-color)}.garden-planner__hint{font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.garden-planner__controls{display:flex;flex-direction:column;gap:.75rem}.garden-planner__plants{display:flex;flex-wrap:wrap;gap:.375rem}.garden-planner__plant-btn{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:var(--border-radius);font-size:.75rem;transition:all .2s ease;background-color:var(--surface-elevated);color:var(--text-color);border:2px solid transparent;cursor:pointer}.garden-planner__plant-btn:hover{background-color:var(--btn-secondary-hover)}.garden-planner__plant-btn--selected{border-color:var(--tertiary-color);background-color:#0ff4c626}.garden-planner__plant-btn--eraser{background-color:#6b728033}.garden-planner__plant-divider{width:1px;height:24px;background-color:var(--border-color);margin:0 .25rem;align-self:center}.garden-planner__plant-name{display:none}@media(min-width:640px){.garden-planner__plant-name{display:inline}}.garden-planner__actions{display:flex;flex-direction:column;gap:.5rem}.garden-planner__save-status{font-size:.75rem;text-align:center;color:var(--text-muted);padding:.25rem}.garden-planner__summary{display:flex;flex-direction:column;gap:.25rem}.garden-planner__summary-row{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;color:var(--text-color)}.garden-planner__summary-count{font-weight:500;color:var(--tertiary-color)}.garden-planner__summary-total{display:flex;justify-content:space-between;font-size:.875rem;font-weight:500;border-top:1px solid var(--border-color);padding-top:.5rem;margin-top:.5rem;color:var(--primary-color)}.garden-planner__main{grid-column:span 1}@media(min-width:1024px){.garden-planner__main{grid-column:span 1}}.garden-planner__canvas{position:relative;background-color:var(--surface-elevated);border-radius:var(--border-radius);overflow:hidden;border:1px solid var(--border-color)}.garden-planner__dropzone{position:absolute;inset:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);border:2px dashed var(--border-color);border-radius:var(--border-radius)}.garden-planner__dropzone-icon{font-size:4rem;margin-bottom:1rem}.garden-planner__dropzone-title{font-size:1.125rem;font-weight:500}.garden-planner__dropzone-subtitle{font-size:.875rem}.garden-planner__dropzone-hint{font-size:.75rem;margin-top:1rem;opacity:.7}.garden-planner__image{width:100%;height:auto;display:block}.garden-planner__grid{position:absolute;border:2px solid var(--primary-color);border-radius:4px}.garden-planner__grid--export{border-color:var(--primary-color)}.garden-planner__grid-handle{position:absolute;top:-1.5rem;left:0;right:0;height:1.5rem;background-color:var(--primary-color);border-radius:4px 4px 0 0;cursor:move;display:flex;align-items:center;justify-content:center;color:var(--black);font-size:.75rem;font-weight:500;opacity:1!important;touch-action:none}.garden-planner__grid-cells{width:100%;height:100%;display:grid}.garden-planner__cell{border:1px solid rgba(214,143,214,.4);display:flex;align-items:center;justify-content:center;transition:all .15s ease;cursor:pointer}.garden-planner__cell--empty{background-color:#464f514d}.garden-planner__cell--empty:hover{background-color:#0ff4c64d}.garden-planner__cell--planted:hover{filter:brightness(1.1)}.garden-planner__cell--dragging{opacity:.3}.garden-planner__cell--ready:hover{box-shadow:inset 0 0 0 2px var(--tertiary-color)}.garden-planner__cell-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.garden-planner__grid-resize{position:absolute;bottom:-.75rem;right:-.75rem;width:1.5rem;height:1.5rem;background-color:var(--primary-color);border-radius:50%;cursor:se-resize;display:flex;align-items:center;justify-content:center;color:var(--black);font-size:.75rem;opacity:1!important;touch-action:none}.garden-planner__export{position:fixed;left:0;top:0;background-color:var(--background-color);padding:1.5rem;width:1200px;z-index:-1}.garden-planner__export-header{margin-bottom:1rem}.garden-planner__export-title{font-size:1.5rem;font-weight:700;color:var(--primary-color)}.garden-planner__export-date{font-size:.875rem;color:var(--text-muted)}.garden-planner__export-canvas{position:relative;display:inline-block;border:2px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden}.garden-planner__export-legend{margin-top:1rem;padding:1rem;background-color:var(--surface-color);border-radius:var(--border-radius);border:1px solid var(--border-color)}.garden-planner__export-legend-title{font-size:.875rem;font-weight:600;color:var(--text-color);margin-bottom:.75rem}.garden-planner__export-legend-items{display:flex;flex-wrap:wrap;gap:1rem}.garden-planner__export-legend-item{display:flex;align-items:center;gap:.5rem}.garden-planner__export-legend-icon{width:1.5rem;height:1.5rem;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.875rem}.garden-planner__export-legend-name{font-size:.875rem;color:var(--text-color)}.garden-planner__export-legend-count{font-size:.875rem;color:var(--text-muted)}.garden-planner__export-legend-total{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color);font-size:.875rem;color:var(--text-muted)}.garden-planner__plant-wrapper{position:relative;display:inline-flex}.garden-planner__plant-delete{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;background-color:var(--error-color);color:#fff;border:none;font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease}.garden-planner__plant-wrapper:hover .garden-planner__plant-delete{opacity:1}.garden-planner__plant-delete:hover{background-color:#dc2626}.garden-planner__add-plant-btn{width:100%;margin-top:.75rem;padding:.5rem;border:2px dashed var(--border-color);border-radius:var(--border-radius);background:transparent;color:var(--text-muted);font-size:.75rem;cursor:pointer;transition:all .2s ease}.garden-planner__add-plant-btn:hover{border-color:var(--tertiary-color);color:var(--tertiary-color)}.garden-planner__add-plant-form{margin-top:.75rem;padding:.75rem;background-color:var(--surface-elevated);border-radius:var(--border-radius);border:1px solid var(--border-color)}.garden-planner__form-row{margin-bottom:.5rem}.garden-planner__form-row:last-of-type{margin-bottom:.75rem}.garden-planner__input{width:100%;padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--surface-color);color:var(--text-color);font-size:.875rem}.garden-planner__input:focus{outline:none;border-color:var(--tertiary-color)}.garden-planner__input--emoji{width:4rem;text-align:center;font-size:1.25rem}.garden-planner__color-picker{display:flex;align-items:center;gap:.5rem}.garden-planner__color-swatches{display:flex;flex-wrap:wrap;gap:4px}.garden-planner__color-swatch{width:20px;height:20px;border-radius:4px;border:2px solid transparent;cursor:pointer;transition:all .15s ease}.garden-planner__color-swatch:hover{transform:scale(1.1)}.garden-planner__color-swatch--selected{border-color:#fff;box-shadow:0 0 0 2px var(--tertiary-color)}.garden-planner__color-input{width:28px;height:28px;padding:0;border:none;border-radius:4px;cursor:pointer;background:transparent}.garden-planner__color-input::-webkit-color-swatch-wrapper{padding:0}.garden-planner__color-input::-webkit-color-swatch{border:1px solid var(--border-color);border-radius:4px}.garden-planner__form-actions{display:flex;gap:.5rem}.garden-planner__btn--small{padding:.375rem .75rem;font-size:.75rem}.garden-planner__cell--orphaned{opacity:.7}.garden-planner__summary-row--orphaned{opacity:.7;font-style:italic}
