.attribution{position:absolute;right:12px;bottom:46px;background:#fffffff0;color:#26352a;padding:3px 6px;border-radius:3px;font-size:.65rem;max-width:70%;text-align:right}.attribution a{color:inherit}
.scenario-title strong.editable{cursor:pointer;text-decoration:underline dotted;text-underline-offset:4px}.scenario-title strong.editable::after{content:' ✎';font-size:.8em;color:#58744a}.scenario-title strong.editable:focus{outline:2px solid #799451;outline-offset:4px;border-radius:2px}
.scenario-title strong.editing{cursor:text;text-decoration:none}.scenario-title strong.editing::after{content:''}
.catalog-groups{display:grid;gap:7px;margin:12px 0}.catalog-category{border:1px solid #d5dcd2;border-radius:8px;background:#f3f6f1;overflow:hidden}.catalog-category>summary{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px;cursor:pointer;font-weight:700;text-transform:capitalize}.catalog-category>summary small{font-weight:400;color:#68756d}.catalog-category[open]>summary{border-bottom:1px solid #d5dcd2}.catalog-category-items{display:grid;gap:7px;padding:7px}.catalog-category-items .item{margin:0}.empty-category{margin:5px;color:#68756d;font-size:.85rem}
@media(max-width:800px){.actions #export{display:none}}
.brand-logo-login{display:block;width:min(260px,70vw);height:auto;margin:0 auto -24px}.logo{display:grid;place-items:center;width:52px;height:52px;padding:2px!important;overflow:hidden}.brand-logo-header{display:block;width:48px;height:48px;object-fit:contain}
.catalog-summary{display:flex;align-items:center;gap:5px}.catalog-actions{display:flex;gap:6px;margin-top:8px}.catalog-actions button{flex:1;border:1px solid #bcc6bd;background:#f7f8f4;border-radius:5px;padding:5px}.catalog-actions .danger{border-color:#d7aaa3;background:#fff5f3}
.map-tooltip{position:absolute;z-index:5;pointer-events:none;transform:translate(12px,-110%);padding:6px 9px;border-radius:5px;background:#173d2bf2;color:#fff;font-size:.8rem;font-weight:650;box-shadow:0 3px 12px #0004;white-space:nowrap}
.map-toolbar{max-width:calc(100% - 24px);flex-wrap:wrap}
.category-filter{position:relative}
.category-filter summary{cursor:pointer;border:1px solid #b9c4ba;background:white;border-radius:6px;padding:.5rem .7rem;white-space:nowrap}
.category-filter summary:focus-visible{outline:2px solid #173d2b;outline-offset:2px}
.category-filter-menu{position:absolute;top:calc(100% + 8px);left:0;width:260px;max-width:calc(100vw - 48px);padding:10px;background:#fff;border:1px solid #b9c4ba;border-radius:8px;box-shadow:0 8px 24px #0003}
.category-filter-actions{display:flex;gap:6px;padding-bottom:8px;border-bottom:1px solid #d5dcd2}
.category-filter-actions button{flex:1;font-size:.8rem}
#categoryFilterOptions{max-height:min(320px,45vh);overflow:auto;padding-top:6px}
.map-toolbar #categoryFilterOptions label{display:flex;align-items:center;gap:8px;padding:8px 4px;cursor:pointer;font-size:.9rem;overflow-wrap:anywhere}
#categoryFilterOptions input{width:17px;height:17px;accent-color:#173d2b;flex-shrink:0}
@media(max-width:800px){.category-filter-menu{left:auto;right:0}}

.category-row{display:flex;align-items:center;gap:10px}.category-row b{min-width:0;overflow-wrap:anywhere}.category-row button{margin-left:auto;flex-shrink:0}

.item-coordinates{margin:12px 0;padding:8px 10px;border:1px solid #ccd3ca;border-radius:6px;min-width:0}.item-coordinates legend{font-weight:600;font-size:.9rem}.item-coordinates small{color:#68756d}
.solar-menu{width:300px;max-height:65vh;overflow:auto;left:auto;right:0}
.map-toolbar .solar-menu label.field{display:grid;font-size:.85rem}
.solar-help{font-size:.75rem;line-height:1.4;color:#526354;margin:8px 0}
#solarMissing:empty{display:none}
#solarMissing{color:#8a4a15}
#solarLegend{position:absolute;bottom:85px;left:18px;max-width:calc(100% - 36px);width:330px;background:#fffffff2;border:1px solid #bdc9bf;border-radius:8px;padding:10px 12px;font-size:.8rem;pointer-events:none;box-shadow:0 3px 12px #0002}
.solar-gradient{height:12px;margin:8px 0 3px;border-radius:4px;background:linear-gradient(to right,rgb(60,48,125),rgb(64,126,170),rgb(101,183,151),rgb(223,207,98),rgb(255,224,70))}
.solar-ticks{display:flex;justify-content:space-between;margin-bottom:6px;font-size:.72rem}

.scenario-actions{display:flex;justify-content:flex-end;margin-top:8px}.scenario-actions button{border:1px solid #d7aaa3;background:#fff5f3;border-radius:5px;padding:5px 8px}
