.zip-builder{border:1px solid var(--line);background:var(--surface);padding:1.3rem;margin:1.5rem 0 2.5rem;max-width:68rem;border-radius:.4rem}
.zip-builder>h2{margin-top:0}
.zip-builder fieldset{border:0;min-width:0;padding:0;margin:0}
.zip-builder legend{font-weight:650;font-size:1.1rem;padding:0}
.zip-picker{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:1rem;align-items:end}
.zip-picker select{max-width:100%}
.zip-builder .zip-picker button{margin:0}
.zip-builder button,.zip-builder .button{margin:.5rem 0}
.zip-work{border:1px solid var(--line);padding:.65rem 1rem;margin:1rem 0;border-radius:.3rem}
.zip-work>summary{font-weight:650;cursor:pointer;min-height:44px;padding:.3rem 0;overflow-wrap:anywhere}
.zip-work-count{display:block;font-size:.85rem;font-weight:400;color:var(--muted);margin-top:.3rem}
.zip-work-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1.5rem;margin:.4rem 0}
.zip-builder .zip-secondary{background:var(--surface);color:var(--green);border:1px solid var(--line);font-size:.95rem}
.zip-builder .zip-secondary:hover{border-color:var(--green)}
.zip-category{border-top:1px solid var(--line);padding:.3rem 0}
.zip-category>summary{cursor:pointer;font-weight:650;min-height:44px;padding:.5rem 0}
.zip-builder .zip-checkbox{display:flex;align-items:flex-start;gap:.65rem;font-weight:400;min-height:44px;padding:.45rem .15rem;margin:0;cursor:pointer}
.zip-builder .zip-checkbox input{flex:0 0 20px;width:20px;min-height:20px;height:20px;padding:0;margin:.25rem 0 0;accent-color:var(--green)}
.zip-checkbox span{overflow-wrap:anywhere;min-width:0}
.zip-file-list{list-style:none;padding:0 0 0 1.1rem;margin:.25rem 0 1rem}
.zip-file-list li{border-top:1px solid var(--line);padding:.2rem 0}
.zip-file-meta{font-size:.85rem;color:var(--muted);margin:0 0 .3rem 1.9rem}
.zip-file-meta a{display:inline-block;padding:.2rem 0}
.zip-checkout{border-top:2px solid var(--line);margin-top:1.2rem;padding-top:.7rem}
#zip-summary{font-weight:650}
#zip-progress{overflow-wrap:anywhere}
.zip-builder button:disabled{opacity:.65;cursor:not-allowed}
@media(max-width:760px){.zip-picker{grid-template-columns:minmax(0,1fr)}.zip-picker button{justify-self:start}.zip-builder{padding:1rem}.zip-work{padding:.5rem .7rem}}
@media(forced-colors:active){.zip-builder button:disabled{color:GrayText;opacity:1}.zip-builder,.zip-work{border-color:CanvasText}}
@media print{.zip-builder{display:none}}
