:root{--ink:#17181b;--orange:#f45d22;--cobalt:#1951aa;--cream:#f7f1e5;--paper:#fffdf7;--line:#2d2f35;--muted:#656a73;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#cbc8c0}*{box-sizing:border-box}body{margin:0;font-size:16px;background:radial-gradient(#a7a49d 1.2px,transparent 1.2px),#d9d6ce;background-size:18px 18px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:white;padding:.8rem;z-index:20}.topbar{min-height:58px;display:flex;align-items:center;gap:1.2rem;padding:.65rem 1.5rem;background:var(--ink);color:#fff;border-bottom:6px solid var(--orange)}.brand{font-weight:900;letter-spacing:.16em;color:#fff;text-decoration:none}.topbar>span{font:700 .8rem 'Courier New',monospace;letter-spacing:.08em;color:#bbb}.topbar nav{margin-left:auto;display:flex;gap:.35rem}.topbar button,.file{font:700 .78rem 'Courier New',monospace;color:#fff;border:1px solid #676970;background:transparent;padding:.55rem .65rem;cursor:pointer}.file input{position:absolute;width:1px;height:1px;opacity:0}.file:focus-within,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffb28f;outline-offset:2px}.mast{max-width:1500px;margin:auto;padding:2rem 1.5rem 1.2rem;display:grid;grid-template-columns:1fr auto;align-items:end;gap:1rem}.kicker{font:900 .74rem 'Courier New',monospace;letter-spacing:.13em;margin:0 0 .35rem}.mast h1{font-size:clamp(3rem,6vw,6.7rem);line-height:.82;letter-spacing:-.065em;text-transform:uppercase;margin:0}.mast h1 em{font-style:normal;color:var(--orange)}.mast-actions,.manifest-actions,.form-actions{display:flex;gap:.5rem;flex-wrap:wrap}button{font:inherit;cursor:pointer}.black,.orange,.light{border:2px solid var(--ink);padding:.68rem .85rem;font-weight:900;background:var(--ink);color:white}.orange{background:var(--orange)}.light{background:var(--paper);color:var(--ink)}#notice{max-width:1500px;margin:.3rem auto;padding:0 1.5rem;min-height:1.4rem;color:#9e2500;font-weight:800}.project-strip{max-width:1500px;margin:0 auto 1rem;padding:.5rem 1.5rem;display:grid;grid-template-columns:1fr 1fr 1fr;background:var(--orange);border:3px solid var(--ink)}.project-strip label{border-right:2px solid var(--ink);padding:0 1rem}.project-strip label:first-child{padding-left:0}.project-strip label:last-child{border:0}.project-strip input{background:transparent;border:0;border-bottom:2px solid var(--ink);font-size:1.1rem;font-weight:900}.workgrid{max-width:1500px;margin:auto;display:grid;grid-template-columns:430px minmax(0,1fr);gap:1rem;padding:0 1.5rem 1.5rem}.setup{display:grid;gap:1rem;align-content:start}.crate{background:var(--orange);border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink);padding:1rem}.crate.cobalt{background:#6c9ff2}.crate-head{display:flex;justify-content:space-between;gap:.7rem;align-items:start;border-bottom:4px solid var(--ink);padding-bottom:.7rem}.crate-head span{font:900 .72rem 'Courier New',monospace;letter-spacing:.12em}.crate h2{font-size:2rem;line-height:1;margin:.2rem 0 0;text-transform:uppercase}.file.dark{background:var(--ink);border-color:var(--ink);white-space:nowrap}label{display:block;font-weight:900;font-size:.86rem;margin:.65rem 0}input,select,textarea{width:100%;font:inherit;border:2px solid var(--ink);background:var(--paper);padding:.58rem;margin-top:.28rem;border-radius:0}textarea{resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem}.hidden{display:none}.text-button{border:0;background:transparent;padding:.75rem 0;text-decoration:underline;font-weight:900}.list-row{display:grid;grid-template-columns:1fr auto;gap:.4rem;border-top:2px solid rgba(23,24,27,.45);padding:.65rem 0}.list-row strong,.list-row span{display:block}.list-row span{font:700 .73rem/1.35 'Courier New',monospace;margin-top:.15rem}.list-row button{background:var(--paper);border:1px solid var(--ink);padding:.3rem .4rem;margin-left:.2rem;font-size:.78rem}.list-row .delete{color:#9e2500}.manifest{background:var(--paper);border:3px solid var(--ink);box-shadow:7px 7px 0 rgba(23,24,27,.32);padding:1.3rem;min-width:0}.manifest-head{display:flex;align-items:start;justify-content:space-between;border-bottom:6px solid var(--ink);padding-bottom:.8rem}.manifest-head h2{font-size:clamp(2rem,4vw,4rem);letter-spacing:-.04em;margin:0}.manifest-stamp{display:grid;place-items:center;background:var(--orange);border:3px solid var(--ink);width:92px;height:92px;transform:rotate(2deg)}.manifest-stamp span{font-size:2rem;font-weight:900}.manifest-stamp small{font:900 .66rem 'Courier New',monospace}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border:2px solid var(--ink);margin:1rem 0}.metrics div{padding:.8rem;border-right:2px solid var(--ink)}.metrics div:last-child{border:0}.metrics strong,.metrics span{display:block}.metrics strong{font-size:1.55rem}.metrics span{font:700 .7rem 'Courier New',monospace;text-transform:uppercase;margin-top:.2rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{background:var(--ink);color:#fff;font:900 .72rem 'Courier New',monospace;text-transform:uppercase;text-align:left;padding:.7rem}td{padding:.72rem;border-bottom:1px solid #bbb7ad}th:nth-child(n+3),td:nth-child(n+3){text-align:right}.supply-name{font-weight:900}.supply-meta{display:block;color:var(--muted);font-size:.77rem;margin-top:.2rem}.rule{font:700 .76rem 'Courier New',monospace}.manifest-actions{margin:1rem 0}.notes textarea{background:#fff6c5}.packing-sheet{border:2px solid var(--ink);margin-top:1rem;break-inside:avoid}.sheet-head{display:flex;justify-content:space-between;gap:1rem;background:var(--cobalt);color:white;padding:.8rem}.sheet-head h3{margin:0;font-size:1.35rem}.sheet-head p{margin:.2rem 0 0;font:700 .75rem 'Courier New',monospace}.sheet-head .count{text-align:right;font-weight:900}.pack-lines{display:grid;grid-template-columns:repeat(2,1fr)}.pack-line{display:grid;grid-template-columns:30px 1fr auto;gap:.45rem;align-items:start;padding:.7rem;border-bottom:1px solid #c7c3ba}.pack-line:nth-child(odd){border-right:1px solid #c7c3ba}.check{width:20px;height:20px;border:2px solid var(--ink)}.pack-line strong,.pack-line small{display:block}.pack-line small{color:var(--muted);margin-top:.15rem}.pack-qty{font-size:1.2rem;font-weight:900;color:var(--cobalt);white-space:nowrap}.empty{display:grid;place-items:center;min-height:180px;border:2px dashed #999;color:var(--muted);text-align:center}.empty strong,.empty span{display:block}footer{background:var(--ink);color:#ddd;padding:1rem 1.5rem;display:flex;justify-content:space-between;gap:1rem;font-size:.78rem}
@media(max-width:900px){.topbar{flex-wrap:wrap}.topbar>span{display:none}.topbar nav{order:2;margin:0;width:100%;overflow:auto}.topbar button,.file{white-space:nowrap}.mast{grid-template-columns:1fr;padding:1.5rem 1rem}.mast h1{font-size:3.5rem}.project-strip{margin-bottom:1rem;border-left:0;border-right:0;padding:.5rem 1rem}.workgrid{grid-template-columns:1fr;padding:0 1rem 1rem}.crate{box-shadow:5px 5px 0 var(--ink)}.manifest{box-shadow:5px 5px 0 rgba(23,24,27,.32)}footer{flex-direction:column}}
@media(max-width:540px){.project-strip{grid-template-columns:1fr}.project-strip label{padding:.3rem 0;border-right:0;border-bottom:1px solid var(--ink)}.two,.three{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.metrics div:nth-child(2){border-right:0}.metrics div:nth-child(-n+2){border-bottom:2px solid var(--ink)}.manifest-head{gap:.5rem}.manifest-stamp{width:76px;height:76px}.table-wrap{overflow:visible}#shopping-table,thead,tbody,tr,th,td{display:block}#shopping-table thead{position:absolute;left:-9999px}#shopping-table tr{padding:.7rem 0;border-bottom:2px solid var(--ink);display:grid;grid-template-columns:1fr auto}#shopping-table td{border:0;padding:.15rem;text-align:left!important}#shopping-table td:first-child{grid-column:1/-1}#shopping-table td:nth-child(n+3){text-align:right!important}.pack-lines{grid-template-columns:1fr}.pack-line:nth-child(odd){border-right:0}.manifest-actions{flex-direction:column}.manifest-actions button{width:100%}.mast-actions>*{flex:1}.workgrid{padding-left:0;padding-right:0}.crate,.manifest{border-left:0;border-right:0;box-shadow:none}}
@media print{@page{size:A4 portrait;margin:9mm}html,body,main,.workgrid,.manifest{background:white!important}.topbar,.mast,#notice,.project-strip,.setup,.manifest-actions,.notes,footer{display:none!important}.workgrid{display:block;padding:0}.manifest{border:0;box-shadow:none;padding:0}.manifest-head{border-bottom:4px solid #000}.metrics{margin:5mm 0}.table-wrap{overflow:visible}th,td{padding:2.2mm;font-size:9pt}.packing-sheet{break-inside:avoid;margin-top:5mm}.sheet-head{background:#eee!important;color:#000!important;border-bottom:2px solid #000}.pack-line{padding:2.2mm;font-size:9pt}.pack-qty{color:#000}.empty{display:none}}
