@font-face{font-family:Manrope;src:url('/static/fonts/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--header:#06483f;--green:#006452;--ink:#182d35;--muted:#526773;--line:#dce5e8;--pale:#edf7f6;--pending:#edf3fa;--danger:#91392d}
*{box-sizing:border-box}body{margin:0;background:#f5f8f9;color:var(--ink);font:1rem/1.6 Manrope,sans-serif}button,input,select,textarea{font:inherit}a{color:var(--green)}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3e879a;outline-offset:3px}h1,h2,h3,p{margin:0 0 12px}h1{font-size:1.625rem;line-height:1.25;letter-spacing:-.8px}h2{font-size:1.375rem;line-height:1.4;letter-spacing:-.6px}h3{font-size:1.125rem;line-height:1.4}b,strong{font-weight:750}
.top{background:var(--header);color:white;max-width:1040px;margin:auto;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{font-size:1.25rem;letter-spacing:-.6px;color:white;font-weight:800;text-decoration:none}.top span{font-size:0.75rem}.skip{position:absolute;left:-10000px}.skip:focus{left:16px;top:10px;z-index:20;background:white;padding:12px}main{background:white;max-width:1040px;margin:auto;min-height:70vh;padding-bottom:100px}.section{padding:24px 20px}.batch{background:var(--pale);padding:24px 20px;border-bottom:1px solid var(--line)}.batch h1{font-size:1.4375rem}.batch .status{font-size:0.8125rem;color:var(--green);font-weight:750}.batch-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.deadline{border-top:1px solid #cce0e0;margin-top:16px;padding-top:12px;font-size:0.875rem}.small{font-size:0.875rem;color:var(--muted)}.products{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.product{padding:12px;border:1px solid var(--line);border-radius:12px;min-width:0;display:flex;flex-direction:column}.product img{width:100%;height:112px;background:#f1f6f7;border-radius:8px;margin-bottom:14px}.product h3{margin-bottom:8px}.product .unit{font-size:0.875rem;color:var(--muted);margin-top:auto;min-height:42px}.product .price{font-size:1.1875rem;font-weight:800;margin:10px 0}.qty{display:flex;background:#f0f8f7;border:1px solid #b8d7d3;border-radius:8px;overflow:hidden}.qty button{width:44px;height:46px;flex:0 0 44px;border:0;color:var(--green);background:transparent;font-size:1.375rem}.qty output{flex:1;text-align:center;align-content:center;min-width:20px;font-weight:750}.qty button:first-child{border-right:1px solid #cde2de}.qty button:last-child{border-left:1px solid #cde2de}.unavailable{background:#f1f4f6;color:var(--muted)}.unavailable img{filter:grayscale(1);opacity:.6}.badge{font-size:0.8125rem;font-weight:750}.sticky{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:1040px;padding:14px 20px max(14px,env(safe-area-inset-bottom));background:white;border-top:1px solid var(--line);z-index:5}.summary,.line,.buy,.customer-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.summary{font-size:0.875rem;margin-bottom:10px}.summary strong{font-size:1.375rem;color:var(--green)}.button{display:block;width:100%;min-height:48px;border:0;background:var(--green);color:white;font-weight:750;padding:12px 16px;border-radius:8px;text-align:center;text-decoration:none;line-height:1.5}.button.secondary{background:white;border:1px solid #b6cece;color:var(--green)}.button.danger{background:white;color:var(--danger);border:1px solid #dbb7b0}.actions{display:grid;gap:12px;margin-top:22px}.line{padding:14px 0;border-bottom:1px solid var(--line);align-items:start}.line b{white-space:nowrap}.total{font-size:1.375rem;font-weight:800;padding:18px 0}.field{display:block;margin:16px 0}.field>span,legend{display:block;font-size:0.875rem;font-weight:750;margin-bottom:6px}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;min-height:48px;border:1px solid #a9bcc4;border-radius:7px;background:white;color:var(--ink);padding:10px 12px;max-width:100%}input:read-only{background:#f1f4f6}fieldset{border:0;padding:0;margin:22px 0;min-width:0}.options{display:grid;gap:10px}.option,.check{display:flex;gap:10px;align-items:center;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:8px}.option input,.check input{width:20px;height:20px;accent-color:var(--green);flex-shrink:0}.note{padding:16px 0;border-top:1px solid var(--line);font-size:0.875rem;margin:18px 0}.warning{background:var(--pending);border-left:3px solid #708aa5;padding:14px;margin:16px 0;border-radius:4px;font-size:0.875rem}.error{color:var(--danger);background:#fff3f0;border-left:3px solid var(--danger);padding:14px;margin:14px 0}.success{color:var(--green);font-size:0.875rem;font-weight:750}.loading{padding:32px 20px}.private-link{word-break:break-all;font-size:0.875rem;width:100%}.site-footer{max-width:1040px;margin:auto;padding:24px 20px 120px;display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;font-size:0.75rem;color:var(--muted)}.site-footer a{min-height:44px;display:inline-flex;align-items:center}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-bottom:1px solid var(--line)}.tabs button{border:0;background:white;padding:12px 4px;min-height:48px;font-size:0.8125rem;color:var(--muted)}.tabs button[aria-selected=true]{border-bottom:3px solid var(--green);color:var(--green);font-weight:800}.buy{padding:20px 0;border-bottom:1px solid var(--line)}.buy strong{font-size:1.75rem}.customer{padding:20px 0;border-bottom:1px solid var(--line)}.customer summary{cursor:pointer;min-height:44px;font-weight:750}.customer-head{font-size:1.125rem}.compact{display:grid;gap:12px}.divider{margin:30px 0;border:0;border-top:1px solid var(--line)}.toolbar{display:flex;align-items:center;gap:12px;justify-content:space-between}.toolbar button{width:auto}.checklist{display:grid;gap:8px;max-height:380px;overflow-y:auto;padding:3px}.empty{padding:24px 0;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:350px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}.options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:700px){.top{padding:24px 40px}.section,.batch{padding:32px 40px}.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.sticky{padding-inline:40px}.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.site-footer{padding-inline:40px}.tabs button{font-size:1rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

.top{flex-wrap:wrap}.line{flex-wrap:wrap}.line b{white-space:normal;overflow-wrap:anywhere;max-width:100%}.qty output{overflow-wrap:anywhere;line-height:1.2}.option,.tabs button{overflow-wrap:anywhere}
.batch-head h1{min-width:0;overflow-wrap:anywhere;flex:1}.brand{overflow-wrap:anywhere;max-width:100%}h1,h2,h3{overflow-wrap:anywhere}
