
:root{
  --vg-green:#2f7d53;--vg-green-dark:#1d513b;--vg-text:#2f3f39;--vg-muted:#68756f;--vg-line:#dce7df;
  --food-accent:#2e8b57;--food-accent-soft:#e8f7ed;--food-hero-1:#f8fff7;--food-hero-2:#eef9f0;
  --vg-blue:#4d8fbe;--vg-purple:#6b70b7;--vg-shadow:0 10px 28px rgba(36,61,48,.055)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--vg-text);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.7}img{display:block;max-width:100%;height:auto}.shell{width:min(1120px,calc(100% - 32px));margin:0 auto}a{color:inherit}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(47,125,83,.08)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:13px;color:var(--vg-green-dark);text-decoration:none}.brand-logo{width:46px;height:46px;object-fit:contain}.brand-copy{display:flex;flex-direction:column;line-height:1.15}.brand-copy strong{font-size:1.45rem}.brand-copy small{margin-top:4px;color:var(--vg-muted);font-size:.9rem}.main-nav{display:flex;gap:24px}.main-nav a{color:var(--vg-muted);font-size:14px;font-weight:800;text-decoration:none}.main-nav a:hover{color:var(--vg-green)}
.food-breadcrumb{display:flex;gap:9px;align-items:center;padding:18px 0 10px;color:#7b8882;font-size:12px}.food-breadcrumb a{color:var(--vg-green);font-weight:800;text-decoration:none}
.food-hero{padding:14px 0 38px}.food-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr);align-items:center;min-height:420px;overflow:hidden;background:linear-gradient(135deg,var(--food-hero-1),var(--food-hero-2));border:1px solid var(--vg-line);border-radius:30px;box-shadow:0 16px 38px rgba(36,61,48,.07)}.food-hero-copy{padding:50px 0 50px 54px}.food-pill{display:inline-block;padding:7px 13px;color:#fff;background:var(--food-accent);border-radius:999px;font-size:12px;font-weight:900}.food-hero h1{margin:16px 0 13px;color:var(--vg-green-dark);font-size:clamp(36px,5vw,58px);line-height:1.18;letter-spacing:-.035em}.food-hero-copy>p{max-width:680px;margin:0;color:#52635d;font-size:15px;line-height:1.9}.food-hero-image{display:grid;place-items:center;min-height:360px;padding:28px}.food-hero-image img{width:min(92%,480px);max-height:360px;object-fit:contain}.hero-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.hero-links a{padding:9px 13px;color:var(--vg-green-dark);background:rgba(255,255,255,.88);border:1px solid var(--vg-line);border-radius:999px;font-size:11px;font-weight:900;text-decoration:none}
.food-section{padding:64px 0}.soft-section{background:#fbfcfb}.section-heading{display:flex;align-items:center;gap:13px;margin-bottom:25px}.section-heading p,.related-title p{margin:0 0 3px;color:#829487;font-size:11px;font-weight:900;letter-spacing:.12em}.section-heading h2,.related-title h2{margin:0;color:var(--vg-green-dark);font-size:clamp(26px,3vw,34px);line-height:1.3}.section-number{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;color:#fff;background:var(--vg-green);border-radius:50%;font-size:18px;font-weight:900}
.state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.state-card,.storage-card{padding:22px;background:#fff;border:1px solid var(--vg-line);border-radius:22px;box-shadow:var(--vg-shadow)}.state-good{background:linear-gradient(180deg,#f6fcf5,#fff);border-color:#cee6cf}.state-soon{background:linear-gradient(180deg,#fffaf0,#fff);border-color:#efddb1}.state-bad{background:linear-gradient(180deg,#fff6f6,#fff);border-color:#efcccc}.state-title{display:flex;align-items:center;gap:10px}.state-title h3{margin:0;color:var(--vg-green-dark);font-size:21px}.state-title span{display:grid;place-items:center;width:34px;height:34px;color:#fff;background:#4fa75a;border-radius:50%;font-size:20px;font-weight:900}.state-soon .state-title h3{color:#996012}.state-soon .state-title span{background:#e9a116}.state-bad .state-title h3{color:#a83434}.state-bad .state-title span{background:#df5151}.state-summary{min-height:42px;margin:7px 0 0;color:#6a7671;font-size:12px;font-weight:800;line-height:1.55}.state-image{display:grid;place-items:center;height:205px;margin:10px 0 8px;overflow:hidden}.state-image img{max-width:100%;max-height:195px;object-fit:contain}.state-card ul{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.state-card li{position:relative;padding-left:21px;color:#43514c;font-size:14px;line-height:1.62}.state-card li:before{content:"•";position:absolute;left:6px;color:#4fa75a;font-size:19px;font-weight:900}.state-soon li:before{color:#e9a116}.state-bad li:before{color:#df5151}.card-note{margin:15px 0 0;padding:11px 13px;color:#745c2d;background:#fff5da;border-radius:12px;font-size:12px;line-height:1.6}.card-note.danger{color:#983b3b;background:#ffecec}.common-note{margin:18px 0 0;padding:14px 17px;color:#68756f;background:#f8faf9;border:1px solid var(--vg-line);border-radius:14px;font-size:12px;line-height:1.7}
.storage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}.storage-card{display:flex;flex-direction:column;min-width:0;background:linear-gradient(180deg,var(--food-accent-soft),#fff)}.storage-title{display:flex;align-items:center;gap:11px}.storage-title small{display:block;margin-bottom:2px;color:#7e8c86;font-size:11px;font-weight:800}.storage-title h3{margin:0;color:var(--vg-green-dark);font-size:20px;line-height:1.35}.storage-symbol{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;background:rgba(255,255,255,.82);border-radius:50%;font-size:17px;color:var(--food-accent)}.storage-desc{margin:13px 0 0;color:#53655e;font-size:12px;line-height:1.75}.storage-visuals{display:grid;gap:8px;align-items:center;min-height:230px;margin:12px 0}.storage-visuals-1{grid-template-columns:1fr}.storage-visuals-2{grid-template-columns:repeat(2,1fr)}.storage-visuals-3,.storage-visuals-4{grid-template-columns:repeat(3,1fr)}.storage-visuals figure{display:grid;place-items:center;margin:0;height:215px;padding:6px;background:rgba(255,255,255,.45);border-radius:13px}.storage-visuals img{max-width:100%;max-height:205px;object-fit:contain}.storage-card ol{display:grid;gap:8px;margin:auto 0 0;padding:0;list-style:none}.storage-card ol li{display:grid;grid-template-columns:23px minmax(0,1fr);gap:8px;align-items:start;color:#43514c;font-size:13px;line-height:1.65}.storage-card ol li span{display:grid;place-items:center;width:22px;height:22px;color:#fff;background:var(--food-accent);border-radius:50%;font-size:11px;font-weight:900}
.period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.period-card{display:grid;grid-template-columns:minmax(0,1fr) 165px;align-items:center;min-height:195px;padding:24px 28px;background:linear-gradient(135deg,#f1f9ff,var(--food-accent-soft));border:1px solid #d3e3e3;border-radius:22px}.period-label{display:block;margin-bottom:5px;color:var(--food-accent);font-size:15px;font-weight:900}.period-subtitle{display:block;margin-bottom:7px;color:#60736c;font-size:12px;font-weight:800}.period-card strong{display:flex;align-items:baseline;flex-wrap:nowrap;gap:5px;color:#174a39;line-height:1.08;white-space:nowrap}.period-card strong>span{font-size:clamp(31px,4vw,48px);font-weight:900}.period-card strong small{font-size:16px;font-weight:800}.period-card p{margin:10px 0 0;color:#60716b;font-size:11px;line-height:1.65}.period-card img{max-width:160px;max-height:125px;justify-self:end;object-fit:contain}.period-mark{display:grid;place-items:center;width:100px;height:100px;justify-self:center;color:#fff;background:var(--food-accent);border-radius:50%;font-size:44px}.period-note{margin-top:18px;padding:18px 20px;background:#fafcfb;border:1px solid var(--vg-line);border-radius:16px}.period-note strong{color:var(--vg-green-dark);font-size:14px}.period-note p{margin:5px 0 0;color:var(--vg-muted);font-size:12px;line-height:1.75}
.point-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.point-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:11px;align-items:center;padding:17px;background:#fff;border:1px solid var(--vg-line);border-radius:16px}.point-card>img{width:58px;height:58px;object-fit:contain}.point-icon{display:grid;place-items:center;width:58px;height:58px;color:#fff;background:var(--food-accent);border-radius:18px;font-size:20px;font-weight:900}.point-card h3{margin:0 0 5px;color:var(--vg-green-dark);font-size:14px}.point-card p{margin:0;color:var(--vg-muted);font-size:11px;line-height:1.6}
.safety-section{padding-top:0}.safety-card{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:center;padding:24px 28px;background:#fff8e9;border:1px solid #efd8a1;border-radius:22px}.safety-kicker{margin:0;color:#b4771b;font-size:11px;font-weight:900;letter-spacing:.14em}.safety-card h2{margin:4px 0 8px;color:#704b19;font-size:24px}.safety-card p,.safety-card li{color:#675943;font-size:12px}.safety-card img{max-width:220px;max-height:170px;justify-self:end;object-fit:contain}
.related-block{margin-top:52px;padding-top:34px;border-top:1px solid var(--vg-line)}.related-title{display:flex;justify-content:space-between;align-items:end;gap:20px}.related-title a{color:var(--vg-green);font-size:12px;font-weight:800;text-decoration:none}.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:18px}.related-grid a{display:flex;align-items:center;gap:10px;min-height:82px;padding:10px 14px;color:var(--vg-green-dark);background:#fff;border:1px solid var(--vg-line);border-radius:14px;font-size:14px;font-weight:800;text-decoration:none}.related-grid img{width:70px;height:58px;object-fit:contain}.page-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.master-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;color:var(--vg-green-dark);background:#fff;border:1px solid var(--vg-line);border-radius:999px;font-size:12px;font-weight:900;text-decoration:none}.master-btn-primary{color:#fff;background:var(--vg-green);border-color:var(--vg-green)}
@media(max-width:980px){.food-hero-grid{grid-template-columns:1fr;min-height:0}.food-hero-copy{padding:46px 42px 0}.food-hero-image{min-height:270px}.food-hero-image img{max-width:470px}.state-grid{grid-template-columns:1fr}.period-grid{grid-template-columns:1fr}.safety-card{grid-template-columns:1fr}.safety-card img{justify-self:center}}
@media(max-width:720px){.header-inner{min-height:70px}.main-nav{display:none}.food-section{padding:50px 0}.food-hero h1{font-size:36px}.food-hero-copy{padding:38px 26px 0}.period-card{grid-template-columns:minmax(0,1fr) 115px;min-height:160px;padding:20px}.period-card img{max-width:110px}.point-grid{grid-template-columns:1fr}.related-title{align-items:flex-start;flex-direction:column}.storage-visuals-3,.storage-visuals-4{grid-template-columns:1fr}.storage-visuals-3 figure,.storage-visuals-4 figure{height:150px}.storage-visuals-3 img,.storage-visuals-4 img{max-height:140px}}
@media(max-width:520px){.shell{width:min(100% - 24px,1120px)}.food-breadcrumb{padding-top:12px}.food-hero-grid{border-radius:24px}.food-hero-copy{padding:30px 18px 0}.food-hero h1{font-size:31px}.food-hero-copy>p{font-size:14px}.hero-links a{flex:1 1 auto;text-align:center}.section-heading{align-items:flex-start}.section-number{width:36px;height:36px;font-size:15px}.state-card,.storage-card{padding:17px}.state-summary{min-height:0}.period-card{grid-template-columns:1fr 80px;padding:18px}.period-card strong>span{font-size:clamp(27px,9vw,38px)}.period-card strong small{font-size:13px}.period-card img{max-width:78px}.page-actions .master-btn{width:100%}}

/* VegeCompass: キウイ (kiwi) */

/* Ingredient-specific additions: master tomato layout is retained above. */
.food-section[id]{scroll-margin-top:100px}
.state-grid.has-ripening{grid-template-columns:repeat(2,minmax(0,1fr))}
.state-ripening{background:linear-gradient(180deg,#f3f7ff,#fff);border-color:#d4e0ef}
.state-ripening .state-title h3{color:#43688a}
.state-ripening .state-title span{background:#6893b9}
.ripening-detail{padding:20px 0 10px;line-height:1.85;font-size:14px;color:#52635d}
.state-card .ready-note{font-size:13px;line-height:1.8;color:#52635d}
.storage-symbol-only{display:grid;place-items:center;min-height:150px;margin:12px 0;background:rgba(255,255,255,.45);border-radius:13px}
.storage-symbol-only img{width:100px;height:100px;object-fit:contain}
.period-card strong{white-space:normal;overflow-wrap:anywhere;line-height:1.3;flex-wrap:wrap}
.period-card strong>span{font-size:clamp(27px,3.1vw,40px)}
.period-card.period-observe strong>span{font-size:23px;line-height:1.5}
.storage-grid{grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr))}
.state-title span{flex-shrink:0}
.state-card,.state-image{min-width:0}
.state-image img{width:auto;height:auto}
.storage-visuals-1{grid-template-columns:minmax(0,1fr)}
.storage-visuals figure{min-width:0}
.storage-visuals img{width:auto;height:auto}
.state-title h3{overflow-wrap:anywhere}
.common-note ul{margin:6px 0;padding-left:1.5em}
.food-hero-image img{aspect-ratio:1; height:auto}
.illustration-note{font-size:12px;color:var(--vg-muted);margin:16px 0 0}
@media(max-width:980px){.state-grid,.state-grid.has-ripening{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.period-card strong>span{font-size:clamp(24px,7.5vw,34px)}.period-card.period-observe strong>span{font-size:20px}.brand-copy strong{font-size:1.3rem}.state-title h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Storage illustrations for every method. */
.storage-visuals-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.storage-visuals-2 figure{height:auto;min-height:245px;grid-template-rows:205px auto;gap:6px;align-content:center}
.storage-visuals figcaption{font-size:12px;font-weight:700;color:var(--vg-green-dark);line-height:1.5;text-align:center}
@media(max-width:720px){.storage-visuals-2{grid-template-columns:minmax(0,1fr)}}
