:root{font-family:Arial,Helvetica,sans-serif;color:#1c2a33;background:#e9eef1}*{box-sizing:border-box}body{margin:0}.toolbar{position:sticky;top:0;background:#204b68;color:white;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:2;flex-wrap:wrap}.actions{display:flex;gap:7px;flex-wrap:wrap}button,.filebtn{border:1px solid #9fb4c2;border-radius:6px;background:white;color:#183c54;padding:7px 10px;font:inherit;cursor:pointer}.toolbar button,.toolbar .filebtn{font-size:13px}.hint{max-width:1100px;margin:12px auto;padding:0 12px;font-size:13px;color:#435866}.sheet{background:white;width:min(100%,210mm);min-height:297mm;margin:14px auto 35px;padding:12mm 10mm;box-shadow:0 2px 18px #0002}h1{text-align:center;font-size:17px;font-weight:400;margin:0}.legend{text-align:center;font-size:13px;margin:3px 0 23px}.sections{display:flex;flex-direction:column;gap:20px}.section-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:9mm;align-items:stretch;min-width:0}.pair-placeholder{display:none}.category{min-width:0;border-top:1px solid #a5a5a5;padding-top:7px}.section-pair:first-child .category{border-top:none}.cathead{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:6px}.catname{font-weight:bold;font-size:14px;min-width:0;flex:1}.cattools{display:flex;gap:3px}.cattools button,.additem{font-size:11px;padding:3px 6px}.item{display:flex;align-items:center;gap:4px;min-height:28px}.name{flex:1;min-width:0;font-size:12px;overflow-wrap:anywhere;padding:2px}.name:focus,.catname:focus,h1:focus{outline:2px solid #7db8dc;border-radius:3px}.quantity{white-space:nowrap;font-size:12px;letter-spacing:-.4px}.quantity .selected{font-weight:bold;color:#135a90}.quantity .unused{color:#a5a5a5}.controls{display:flex;gap:2px}.controls button{padding:2px 5px;font-size:13px;min-width:22px}.controls .delete{color:#9a3333}.additem{margin-top:7px;border-style:dashed}.empty{font-size:11px;color:#aaa}#status{position:fixed;bottom:12px;right:12px;background:#204b68;color:white;padding:8px 12px;border-radius:6px;opacity:0;pointer-events:none}#status.show{opacity:1}@media screen and (max-width:700px){
 .sheet{width:100%;min-height:0;padding:20px 12px}
 .sections{gap:20px}
 .section-pair{grid-template-columns:minmax(0,1fr);gap:20px}
 .section-pair:first-child .category + .category{border-top:1px solid #a5a5a5}
 .catname{font-size:16px;overflow-wrap:anywhere}
 .item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;padding:9px 0}
 .name{grid-column:1 / -1;font-size:16px;line-height:1.35;overflow-wrap:break-word}
 .quantity{font-size:14px}
 .controls{flex-wrap:nowrap;gap:4px}
 .controls button{min-width:30px;min-height:32px;padding:4px 6px}
 .hint{font-size:12px}
}
@page{size:A4 portrait;margin:12mm}
@media print{
 html,body{background:white;margin:0;padding:0}
 .toolbar,.hint,.controls,.cattools,.additem,#status{display:none!important}
 .sheet{width:auto;height:auto;min-height:0;max-height:none;box-shadow:none;margin:0;padding:0;overflow:visible;font-family:"Avenir Next Condensed","Arial Narrow","Liberation Sans Narrow",Arial,sans-serif}
 .sections{display:flex!important;flex-direction:column!important;gap:7mm!important}
 .section-pair{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:8mm!important;break-inside:avoid}
 .category{padding-top:3mm;break-inside:auto}
 .section-pair:first-child .category{border-top:none;padding-top:0}
 .cathead{margin-bottom:2mm}
 .item{min-height:9mm;gap:1.5mm;break-inside:avoid}
 .name{font-size:12pt;line-height:1.2;padding:0;overflow-wrap:break-word}
 .quantity{font-family:Arial,Helvetica,sans-serif;font-size:10pt;letter-spacing:-.4px}
 .quantity .unused{visibility:hidden}
 .quantity .selected{color:black;font-weight:900}
 .catname{font-size:14pt;line-height:1.15}
 h1{font-size:20pt;line-height:1.2}
 .legend{font-size:11pt;margin:2mm 0 7mm}
 *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

.page-warning{max-width:210mm;margin:10px auto;padding:9px 12px;background:#fff2cd;border:1px solid #e0bd54;font-size:13px;color:#6d4d00}.page-warning[hidden]{display:none}@media print{.page-warning{display:none!important}}
