*{box-sizing:border-box}body{--accent:#206453;--tint:#e1eee4;margin:0;background:#f6f5ef;color:#1e302d;font:16px/1.5 "Avenir Next",system-ui,sans-serif}body[data-tool=water]{--accent:#165f77;--tint:#dceef2}body[data-tool=power]{--accent:#80551c;--tint:#f5ead2}.wrap{max-width:1180px;margin:auto;padding-inline:clamp(18px,4vw,64px)}header{background:#172e2a;color:white}header .wrap,nav,.actions,.axis{display:flex;align-items:center;gap:14px;flex-wrap:wrap}header .wrap{min-height:64px;justify-content:space-between}header a{color:white}header strong{font-size:20px}a{color:var(--accent)}.intro{border:0;padding:38px 0 24px}.intro h1,h2,.headline{font-family:Georgia,serif;font-weight:500}.intro h1{font-size:clamp(36px,6vw,66px);letter-spacing:-.045em;line-height:1;margin:0}.intro p{font-size:18px}h2{font-size:30px;margin:0 0 12px}h3{font-size:17px}.dashboard{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:0;border:0}.editor,article{padding:24px;border-radius:12px;background:white;border:1px solid #ccd3ca}article{background:var(--tint);align-self:start}.headline{font-size:clamp(32px,6vw,60px);margin:8px 0;line-height:1.1}.label,.axis{font:700 12px/1.6 system-ui;letter-spacing:.08em;text-transform:uppercase}.bars{height:100px;display:flex;align-items:end;gap:5px;border-bottom:1px solid var(--accent);margin-top:25px}.bars i{flex:1;background:var(--accent);border-radius:3px 3px 0 0}.axis{justify-content:space-between}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(175px,100%),1fr));gap:12px}label{display:block;font-size:14px;font-weight:600}input,select,button,.button{max-width:100%;font:inherit;border:1px solid #889b93;border-radius:5px;padding:8px;background:white;color:inherit}input:not([type=file]),select{width:100%}.actions select{width:auto}.button,button{cursor:pointer;font-weight:600}.actions{margin:16px 0}.button input{display:block;padding:0;font-size:12px;border:0}.button:focus-within,button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c67719}section{border-top:1px solid #bdc9bc;padding:28px 0}summary{cursor:pointer;font-weight:650;padding:10px 0}details{margin:10px 0}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px;font-variant-numeric:tabular-nums}td,th{text-align:right;padding:8px;border-bottom:1px solid #c7d1c9}td:first-child,th:first-child{text-align:left}.stat{display:inline-block;margin:4px 20px 12px 0}.stat b{font-size:24px;display:block}#notice{color:var(--accent);font-weight:650}#ranking ol{padding-left:22px}#ranking li{margin:8px 0}.bed{display:flex;height:18px;background:#d5ded6;border-radius:4px;overflow:hidden}nav{padding:22px 0}small{display:block}button:hover{background:var(--tint)}[hidden]{display:none!important}@media(max-width:700px){.dashboard{grid-template-columns:1fr}.wrap{padding-inline:16px}.intro{padding-top:28px}}@media print{header,button,.actions,nav,.editor,#other,#budget,#snapshots label,.bars,.axis,input,select,#project>p{display:none}.dashboard{display:block}body{background:white;color:black}.wrap{max-width:none;padding:0}.scroll{overflow:visible}table{font-size:9px}td,th{padding:3px}section{break-inside:auto}.intro{padding:0}.intro h1{font-size:26px}article{padding:10px}summary{list-style:none}}
[aria-invalid=true]{outline:2px solid #a43c26}#paper{display:none}@media print{body:has(#paper)>:not(#paper){display:none!important}#paper{display:block;white-space:pre-wrap;overflow-wrap:anywhere;font:10pt/1.45 monospace}}
#layout{white-space:pre-wrap;font:inherit}#feedback:empty{display:none}#feedback:not(:empty){padding:8px;border-left:3px solid var(--accent)}#share-counts{width:auto}small{font-weight:400}input:focus-visible,select:focus-visible,summary:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #613909;outline-offset:2px}
@media print{@page{margin:14mm}#paper{white-space:normal;font:10pt/1.45 system-ui}#paper p{white-space:pre-wrap;margin:0 0 5pt}#paper h2{font:700 15pt Georgia;break-after:avoid}#paper table{font-size:9pt;margin-bottom:12pt}#paper thead{display:table-header-group}#paper tr{break-inside:avoid}#paper td,#paper th{padding:3pt}}
#sharing-status{font-weight:600}.scroll:focus-visible{outline:3px solid var(--accent)}.editor,article{min-width:0}
