/* Grow a Garden Calculator Tools — garden greens / lime / cream theme.
   Original styles for ggardencalc.com. No competitor design copied. */
.ggc-tool{--ggc-leaf:#1f5c2e;--ggc-leaf-dark:#143d1f;--ggc-lime:#c9e735;--ggc-lime-soft:#eef7c8;--ggc-cream:#f7f9f0;--ggc-border:#d8e3c8;--ggc-text:#22301f;--ggc-muted:#5a6b52;background:var(--ggc-cream);border:1px solid var(--ggc-border);border-radius:16px;padding:18px;margin:18px 0;color:var(--ggc-text);font-size:16px;line-height:1.55;box-sizing:border-box}
.ggc-tool *{box-sizing:border-box}
.ggc-tool h3,.ggc-tool h4{color:var(--ggc-leaf-dark);margin:14px 0 8px;line-height:1.3}
.ggc-tool h3{font-size:1.25rem}
.ggc-tool p{margin:8px 0}
.ggc-badge{display:inline-block;background:var(--ggc-leaf);color:#fff;font-size:.8rem;font-weight:700;padding:3px 10px;border-radius:999px;margin-bottom:8px}
.ggc-badge.gag2{background:#7a5a00}
.ggc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:640px){.ggc-grid{grid-template-columns:1fr}}
.ggc-field label{display:block;font-weight:700;margin:10px 0 4px}
.ggc-field input[type=number],.ggc-field input[type=text],.ggc-field select{width:100%;padding:10px 12px;border:1px solid var(--ggc-border);border-radius:10px;font-size:16px;background:#fff;color:var(--ggc-text)}
.ggc-field input[type=range]{width:100%}
.ggc-fieldset{border:1px solid var(--ggc-border);border-radius:12px;padding:12px 14px;margin:14px 0;background:#fff}
.ggc-fieldset legend{font-weight:800;color:var(--ggc-leaf-dark);padding:0 6px}
.ggc-checks{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}
@media(max-width:640px){.ggc-checks{grid-template-columns:1fr}}
.ggc-checks label{font-weight:400;display:flex;gap:8px;align-items:flex-start;margin:0}
.ggc-result{background:#fff;border:2px solid var(--ggc-leaf);border-radius:14px;padding:16px;margin-top:16px}
.ggc-result .ggc-total{font-size:2rem;font-weight:800;color:var(--ggc-leaf-dark);line-height:1.2;overflow-wrap:anywhere}
.ggc-result .ggc-per{font-weight:700}
.ggc-break{font-size:.9rem;color:var(--ggc-muted);overflow-wrap:anywhere}
.ggc-note{background:var(--ggc-lime-soft);border-left:4px solid var(--ggc-lime);border-radius:0 10px 10px 0;padding:10px 12px;font-size:.92rem}
.ggc-warn{background:#fff7e0;border-left:4px solid #c49000;border-radius:0 10px 10px 0;padding:10px 12px;font-size:.92rem}
.ggc-btn{background:var(--ggc-leaf);color:#fff;border:0;border-radius:999px;padding:10px 18px;font-size:15px;font-weight:700;cursor:pointer;margin:6px 6px 6px 0}
.ggc-btn:hover{background:var(--ggc-leaf-dark)}
.ggc-btn.secondary{background:#fff;color:var(--ggc-leaf-dark);border:1px solid var(--ggc-border)}
.ggc-btn.lime{background:var(--ggc-lime);color:#1c2b00}
.ggc-list{width:100%;border-collapse:collapse;margin-top:10px}
.ggc-list th,.ggc-list td{border:1px solid var(--ggc-border);padding:8px;text-align:left}
.ggc-list th{background:var(--ggc-lime-soft)}
.ggc-verdict{font-size:1.4rem;font-weight:800}
.ggc-verdict.win{color:#1f7a2e}
.ggc-verdict.loss{color:#a83232}
.ggc-verdict.fair{color:#7a5a00}
.ggc-tool a{color:var(--ggc-leaf)}
.ggc-tool button:focus-visible,.ggc-tool input:focus-visible,.ggc-tool select:focus-visible{outline:3px solid var(--ggc-lime);outline-offset:2px}

/* v1.1 GAG2 plant picker — garden greens/lime theme, not a dark theme. */
.ggc-plant-picker{margin:14px 0}
.ggc-plant-grid{display:grid;grid-template-columns:repeat(6, minmax(0,1fr));gap:10px;margin-top:10px}
.ggc-plant-card{background:#fff;border:2px solid var(--ggc-border);border-radius:12px;padding:8px;cursor:pointer;color:var(--ggc-text);min-width:0}
.ggc-plant-card:hover{border-color:var(--ggc-leaf)}
.ggc-plant-card.is-selected{border-color:var(--ggc-leaf);background:var(--ggc-lime-soft);box-shadow:0 0 0 2px var(--ggc-lime)}
.ggc-plant-card img{width:100%;height:auto;display:block;border-radius:8px}
.ggc-plant-name{display:block;font-weight:700;font-size:.9rem;line-height:1.3;overflow-wrap:anywhere;margin-top:6px}
.ggc-plant-label{display:block;font-size:.8rem;color:var(--ggc-muted)}
@media(max-width:900px){.ggc-plant-grid{grid-template-columns:repeat(4, minmax(0,1fr))}}
@media(max-width:640px){.ggc-plant-grid{grid-template-columns:repeat(3, minmax(0,1fr))}}
@media(max-width:400px){.ggc-plant-grid{grid-template-columns:repeat(2, minmax(0,1fr))}}

/* v1.2 GAG2 two-column layout — LEFT: small plant picker, RIGHT: tool.
   Scoped to .ggc-gag2-layout so GAG1 and every other tool are untouched. */
.ggc-gag2-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:18px;align-items:start;margin-top:14px;min-width:0}
.ggc-gag2-layout .ggc-plant-picker{margin:0;background:#fff;border:1px solid var(--ggc-border);border-radius:12px;padding:12px;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;min-width:0}
.ggc-gag2-layout .ggc-plant-picker h4{margin-top:0}
.ggc-gag2-layout .ggc-plant-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.ggc-gag2-layout .ggc-plant-card{padding:6px;border-radius:10px}
.ggc-gag2-layout .ggc-plant-card img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain}
.ggc-gag2-layout .ggc-plant-name{font-size:.74rem}
.ggc-gag2-layout .ggc-plant-label{font-size:.72rem}
.ggc-gag2-main{min-width:0}
.ggc-plant-selected-right{background:var(--ggc-lime-soft);border-left:4px solid var(--ggc-lime);border-radius:0 10px 10px 0;padding:10px 12px;font-weight:700;font-size:.95rem;margin:0 0 14px}
@media(max-width:768px){
  .ggc-gag2-layout{grid-template-columns:minmax(0,1fr)}
  .ggc-gag2-layout .ggc-plant-picker{position:static;max-height:520px}
  .ggc-gag2-layout .ggc-plant-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:480px){
  .ggc-gag2-layout .ggc-plant-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* v1.3 GAG1 two-column layout — LEFT: small plant picker, RIGHT: tool.
   Mirrors .ggc-gag2-layout (60/40 picker/tool, 4 cards/row). Scoped to
   .ggc-gag1-layout so GAG2 and every other tool are untouched. */
.ggc-gag1-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:18px;align-items:start;margin-top:14px;min-width:0}
.ggc-gag1-layout .ggc-plant-picker{margin:0;background:#fff;border:1px solid var(--ggc-border);border-radius:12px;padding:12px;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;min-width:0}
.ggc-gag1-layout .ggc-plant-picker h4{margin-top:0}
.ggc-gag1-layout .ggc-plant-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.ggc-gag1-layout .ggc-plant-card{padding:6px;border-radius:10px}
.ggc-gag1-layout .ggc-plant-card img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain}
.ggc-gag1-layout .ggc-plant-name{font-size:.74rem}
.ggc-gag1-layout .ggc-plant-label{font-size:.72rem}
.ggc-gag1-main{min-width:0}
@media(max-width:768px){
  .ggc-gag1-layout{grid-template-columns:minmax(0,1fr)}
  .ggc-gag1-layout .ggc-plant-picker{position:static;max-height:520px}
  .ggc-gag1-layout .ggc-plant-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:480px){
  .ggc-gag1-layout .ggc-plant-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* v1.4 selected-plant sprite in tool area (both tools). Hidden until a
   plant is picked (inline display:none); JS shows it on click. */
.ggc-plant-sprite{width:64px;height:64px;object-fit:contain;display:block;margin:0 0 8px}
