:root{color-scheme:light;--bg: #faf9f7;--card-bg: #ffffff;--text: #1c1c1c;--muted: #6b6b6b;--accent: #1f6f4f;--border: #e5e2dd}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.page{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.site-header{margin-bottom:2rem;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.site-header h1{margin:0 0 .25rem;font-size:2rem}.tagline{margin:0;color:var(--muted)}.status-message{color:var(--muted)}.status-error{color:#a4383a}.category-heading{font-size:1.1rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:2rem 0 1rem}.product-section:first-of-type .category-heading{margin-top:0}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.product-card{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.product-icon{font-size:2.25rem;line-height:1}.product-body{display:flex;flex-direction:column;gap:.15rem}.product-category{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.product-name{margin:0;font-size:1rem;font-weight:600}.product-price{margin-top:.25rem;font-weight:600;color:var(--accent)}.product-card{position:relative}.add-to-cart{margin-top:auto;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:8px;padding:.5rem .75rem;font:inherit;font-weight:600;cursor:pointer}.add-to-cart:hover{background:#1a5f43}.cart-button{position:relative;border:1px solid var(--border);background:var(--card-bg);border-radius:8px;padding:.5rem .7rem;font-size:1.25rem;line-height:1;cursor:pointer;flex-shrink:0}.cart-badge{position:absolute;top:-.5rem;right:-.5rem;min-width:1.25rem;height:1.25rem;padding:0 .25rem;border-radius:.75rem;background:var(--accent);color:#fff;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center}.drawer-overlay{position:fixed;inset:0;background:#00000059;opacity:0;pointer-events:none;transition:opacity .15s ease}.drawer-overlay.is-open{opacity:1;pointer-events:auto}.cart-drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100vw);background:var(--bg);border-left:1px solid var(--border);transform:translate(100%);transition:transform .2s ease;display:flex;flex-direction:column;padding:1.25rem;overflow-y:auto}.cart-drawer.is-open{transform:translate(0)}.cart-drawer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.cart-drawer-header h2{margin:0;font-size:1.25rem}.drawer-close{border:none;background:none;font-size:1.1rem;cursor:pointer;color:var(--muted)}.cart-empty{color:var(--muted)}.cart-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.cart-line{display:flex;gap:.75rem;align-items:flex-start;padding-bottom:1rem;border-bottom:1px solid var(--border)}.cart-line-icon{font-size:1.5rem;line-height:1;flex-shrink:0}.cart-line-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.cart-line-top{display:flex;justify-content:space-between;gap:.5rem}.cart-line-name{font-weight:600;min-width:0}.cart-line-total{font-weight:600;white-space:nowrap;flex-shrink:0}.cart-line-unit{font-size:.8rem;color:var(--muted)}.qty-stepper{display:flex;align-items:center;gap:.25rem;margin-top:.25rem;flex-wrap:wrap}.qty-stepper button{border:1px solid var(--border);background:var(--card-bg);border-radius:6px;width:1.75rem;height:1.75rem;font:inherit;cursor:pointer}.qty-value{min-width:1.5rem;text-align:center}.line-remove{width:auto!important;padding:0 .5rem;margin-left:.25rem;font-size:.8rem;color:var(--muted)}.cart-footer{margin-top:auto;padding-top:1rem}.cart-subtotal{display:flex;justify-content:space-between;font-weight:600;font-size:1.05rem;margin-bottom:.75rem}.checkout-button{width:100%;border:1px solid var(--border);background:var(--border);color:var(--muted);border-radius:8px;padding:.65rem;font:inherit;font-weight:600;cursor:not-allowed}.checkout-button.is-enabled{border-color:var(--accent);background:var(--accent);color:#fff;cursor:pointer}.checkout-button.is-enabled:hover{background:#1a5f43}.checkout-as{font-size:.85rem;color:var(--muted);margin:0 0 .5rem}.checkout-hint{font-size:.85rem;color:#8a5a1a;margin:0 0 .5rem}.checkout-error{font-size:.85rem;color:#a4383a;margin:0 0 .5rem}.confirmation{max-width:34rem}.confirmation-eyebrow{text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;color:var(--muted);margin:0 0 .25rem}.confirmation-headline{margin:0 0 .75rem;font-size:1.6rem}.confirmation-summary{color:var(--muted);margin:0 0 1.5rem}.confirmation-summary code{background:var(--card-bg);border:1px solid var(--border);border-radius:4px;padding:.1rem .35rem;color:var(--text)}.confirmation-note{color:var(--muted);margin:0 0 1.5rem}.milestones{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.6rem}.milestone{display:flex;align-items:baseline;gap:.6rem}.milestone-mark{width:1.4rem;height:1.4rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;flex-shrink:0;border:1px solid var(--border)}.milestone-done .milestone-mark{background:var(--accent);border-color:var(--accent);color:#fff}.milestone-failed .milestone-mark{background:#a4383a;border-color:#a4383a;color:#fff}.milestone-waiting .milestone-mark,.milestone-skipped{color:var(--muted)}.confirmation-problem{border:1px solid #e2b8b8;background:#fbf1f1;border-radius:8px;padding:.9rem 1rem;margin:0 0 1.5rem}.confirmation-problem strong{display:block;margin-bottom:.25rem}.confirmation-problem p{margin:0;color:#7a3335}.confirmation-continue{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:8px;padding:.6rem 1.2rem;font:inherit;font-weight:600;cursor:pointer}.confirmation-continue:hover{background:#1a5f43}.confirmation-footnote{margin:1.75rem 0 0;font-size:.8rem;color:var(--muted)}.site-header-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.customer-picker{display:flex;flex-direction:column;gap:.15rem;font-size:.75rem}.customer-picker-label{text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.customer-picker select{font:inherit;padding:.35rem .4rem;border:1px solid var(--border);border-radius:6px;background:var(--card-bg);max-width:14rem}.site-footer{margin-top:3rem;border-top:1px solid var(--border);padding-top:1rem}.settings-toggle{border:none;background:none;font:inherit;font-size:.85rem;color:var(--muted);cursor:pointer;padding:0}.settings-body{margin-top:.75rem;max-width:32rem;display:flex;flex-direction:column;gap:.75rem}.settings-note{font-size:.85rem;color:var(--muted);margin:0}.settings-body label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.settings-body input{font:inherit;padding:.4rem .5rem;border:1px solid var(--border);border-radius:6px}.settings-hint{color:var(--muted)}.settings-actions{display:flex;align-items:center;gap:.75rem}.settings-actions button{font:inherit;padding:.4rem .9rem;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:6px;cursor:pointer}.settings-effective{font-size:.8rem;color:var(--muted);word-break:break-all}
