.interactive-widget{margin-block:24px;border:1px solid #dce3d8;border-radius:12px;background:#fff;padding:24px}
.interactive-widget [hidden]{display:none!important}.widget-instruction{font-size:13px;color:#506359;margin-bottom:18px}
.timeline-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;position:relative;margin-bottom:20px}
.interactive-widget button{font-family:inherit;cursor:pointer}.timeline-step,.waste-card,.comparison-tab{background:#f7f8f2;color:#17392f;border:1px solid #dce3d8;padding:16px;text-align:left;border-radius:8px;transition:background .15s,border-color .15s}
.timeline-step:hover,.waste-card:hover,.comparison-tab:hover{border-color:#176b50;background:#eaf0e0}
.timeline-step[aria-selected=true],.waste-card[aria-selected=true],.comparison-tab[aria-selected=true]{border-color:#176b50;box-shadow:inset 0 0 0 1px #176b50;background:#eaf0e0}
.timeline-date{display:block;font-size:17px;color:#176b50;margin-bottom:8px}.timeline-title{display:block;font-size:14px;line-height:1.5}.timeline-step:before{content:'';display:block;width:12px;height:12px;background:#176b50;border-radius:28% 0 28% 28%;margin-bottom:11px}
.reveal-panel{padding:23px;background:#f7f8f2;border-left:4px solid #176b50;border-radius:0 8px 8px 0}.reveal-panel h3{font-size:21px}.reveal-panel h4{font-size:15px;color:#176b50;margin:18px 0 6px}.reveal-panel p:last-child{margin-bottom:0}
.waste-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.waste-card{padding:15px}.waste-letter{display:grid;place-items:center;width:34px;height:34px;background:#176b50;color:#d6ed89;border-radius:28% 0 28% 28%;font-size:21px;margin-bottom:10px}.waste-name{display:block;font-size:15px;margin-bottom:7px}.waste-meaning{display:block;font-size:12px;line-height:1.6;color:#506359}
.comparison-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.comparison-tab{padding:10px 16px;font-size:14px}
.lean-reveal{border:1px solid #dce3d8;background:white;border-radius:8px;margin-block:24px;padding:15px 20px}.lean-reveal summary{cursor:pointer;color:#176b50;font-size:15px;list-style:revert}.lean-reveal[open] summary{margin-bottom:16px}.lean-reveal summary:hover{text-decoration:underline;text-underline-offset:4px}.lean-reveal p:last-child{margin-bottom:0}
.concept-button{margin-top:14px;background:#176b50;color:#fff;border:0;border-radius:5px;padding:10px 14px;font:inherit;font-size:13px;cursor:pointer}
.lean-dialog{width:min(640px,calc(100vw - 40px));max-height:80vh;overflow:auto;border:1px solid #dce3d8;border-radius:12px;padding:30px;color:#17392f;background:#f7f8f2;font-family:Arial,Helvetica,sans-serif;line-height:1.7}.lean-dialog::backdrop{background:rgba(23,57,47,.48)}.dialog-top{display:flex;align-items:start;justify-content:space-between;gap:20px}.dialog-top h2{font-size:26px}.dialog-close{background:white;color:#176b50;border:1px solid #dce3d8;padding:8px 12px;border-radius:5px;font:inherit;cursor:pointer}
.interactive-widget button:focus-visible,.concept-button:focus-visible,.dialog-close:focus-visible,.lean-reveal summary:focus-visible{outline:3px solid #90b841;outline-offset:4px}
@media(max-width:650px){.waste-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.interactive-widget{padding:17px}.timeline-step{padding:13px}.reveal-panel{padding:18px}.lean-dialog{padding:22px}}
@media(prefers-reduced-motion:reduce){.interactive-widget button{transition:none}}
@media print{.interactive-widget [role=tabpanel][hidden]{display:block!important}.interactive-widget [role=tablist],.concept-button,.lean-dialog{display:none}.lean-reveal{break-inside:avoid}}

/* Historical timeline: chronological points along one horizontal line. */
#history .timeline-tabs{display:flex;flex-wrap:nowrap;gap:0;overflow-x:auto;padding:18px 0 14px;margin-bottom:20px;scrollbar-width:thin}
#history .timeline-step{position:relative;flex:1 0 140px;min-width:140px;max-width:none;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0 12px 12px;text-align:center}
#history .timeline-step:before{content:'';display:block;width:18px;height:18px;margin:0 auto 16px;border:3px solid #176b50;border-radius:50%;background:#fff;position:relative;z-index:2;box-sizing:border-box}
#history .timeline-step:after{content:'';position:absolute;top:8px;left:0;right:0;height:3px;background:#8ca856;z-index:1}
#history .timeline-step:first-child:after{left:50%}#history .timeline-step:last-child:after{right:50%}
#history .timeline-step:hover:before,#history .timeline-step[aria-selected=true]:before{background:#176b50;box-shadow:0 0 0 5px #eaf0e0}
#history .timeline-step:hover,#history .timeline-step[aria-selected=true]{background:transparent;box-shadow:none;border:0}
#history .timeline-date{font-size:15px;margin-bottom:8px}#history .timeline-title{font-size:13px;line-height:1.5}
#history .timeline-step:focus-visible{outline:3px solid #90b841;outline-offset:-3px;border-radius:5px}
@media(max-width:650px){#history .timeline-step{flex-basis:145px;min-width:145px}}

/* Pin every point to one shared track; labels cannot shift its position. */
#history .timeline-tabs{align-items:stretch}
#history .timeline-step{display:block;align-self:stretch;padding-top:34px;vertical-align:top}
#history .timeline-step:before{position:absolute;top:0;left:50%;transform:translateX(-50%);margin:0;z-index:2}
#history .timeline-step:after{top:8px}
