*{box-sizing:border-box}body{margin:0;background:#f4f6f5;color:#202c2a;font:16px Inter,system-ui,sans-serif}main{max-width:780px;min-height:100vh;margin:auto;padding-bottom:40px}header{height:68px;position:sticky;top:0;z-index:5;background:#fff;border-bottom:1px solid #e1e8e4;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.brand{font-size:21px;letter-spacing:-.04em;color:#183d35}.brand span{font-size:14px;color:#82898d;font-weight:500;letter-spacing:0}nav{position:sticky;top:68px;z-index:4;display:flex;overflow:auto;background:#fff;border-bottom:1px solid #e7e9e9;padding:0 8px}button{min-height:44px;padding:9px 13px;border:1px solid #d7e1dc;border-radius:9px;background:white;color:#31594e;font:inherit;cursor:pointer}nav button{flex:1;min-width:55px;border:0;border-radius:0;background:transparent;color:#737b80;font-size:13px}nav button.selected{border-bottom:2px solid #356f67;color:#245c53;font-weight:700}.content{padding:22px 16px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-head h1{margin:0;font-size:26px;letter-spacing:-.04em}.sub{color:#75827e;font-size:13px}.card,.todo{background:#fff;border:1px solid #e5eae7;border-radius:14px;padding:14px;margin:9px 0;box-shadow:0 2px 8px #20382f06}.row{display:flex;align-items:center;gap:9px}.row>*{min-width:0}.row input{flex:1}.grow{flex:1}.quick{display:flex;gap:8px;padding:5px;background:#fff;border:1px solid #e1e8e4;border-radius:14px;margin:12px 0}.input,select,input,textarea{min-height:44px;width:100%;min-width:0;padding:10px 11px;border:1px solid #dfe7e2;border-radius:9px;background:white;font:inherit;color:inherit}.quick input{border:0}.primary{background:#286b60;border-color:#286b60;color:#fff;font-weight:650}.danger{color:#8b3d35}.muted{color:#75827e;font-size:13px}.price{font-weight:700;white-space:nowrap}.list{display:grid;gap:8px}.item{display:flex;align-items:center;gap:10px;min-height:66px;background:white;border:1px solid #e5eae7;border-radius:14px;padding:10px}.item .name{font-weight:600;flex:1;overflow-wrap:anywhere}.qty{display:flex;align-items:center;gap:6px}.qty button{width:40px;padding:0;font-size:20px}.pill{border-radius:30px;background:#e8efec;padding:6px 10px;font-size:12px}.tabs{display:flex;gap:7px;overflow:auto;margin-bottom:14px}.tabs button.active{background:#dcebe4}.empty{text-align:center;color:#89918f;padding:38px 10px;border:1px dashed #dbe5e0;border-radius:14px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.product-tile{text-align:left;min-height:86px}.product-tile strong{display:block;margin-bottom:7px}.total{font-size:23px;font-weight:750}.shade{position:fixed;inset:0;background:#0007;z-index:9;display:flex;align-items:flex-end;justify-content:center}.sheet{width:min(100%,600px);max-height:92vh;overflow:auto;background:white;border-radius:18px 18px 0 0;padding:20px;display:grid;gap:12px}.sheet h2{margin:0}.sheet label{display:grid;gap:5px;font-size:14px}.sheet-actions{display:flex;gap:8px}.sheet-actions>*{flex:1}.group-head{margin:18px 0 6px;color:#426e61;font-weight:700}@media(min-width:640px){.content{padding:26px 20px}.shade{align-items:center}.sheet{border-radius:16px;max-height:85vh}}@media(max-width:380px){nav button{padding:8px 3px;font-size:12px}.item{padding:8px}.grid{gap:6px}}#notice{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:12;background:#183d35;color:white;padding:10px 16px;border-radius:20px;display:none}dialog{max-width:calc(100% - 24px);border:0;border-radius:16px;padding:20px}
dialog#modal{width:min(calc(100dvw - 20px),560px);max-width:calc(100dvw - 20px);max-height:calc(100dvh - 20px);overflow:hidden;padding:0;border:0;border-radius:16px}dialog#modal[open]{display:block}dialog#modal::backdrop{background:#14211fcc}.sheet{width:100%;max-height:calc(100dvh - 20px);overflow-y:auto;overflow-x:hidden;padding:16px}.sheet .row{flex-wrap:wrap}.sheet .row>button{flex:1 1 120px;min-width:0}.payment-sheet,.payment-sheet .row{max-height:calc(100dvh - 20px);flex-wrap:wrap}.payment-sheet img{display:block;width:min(100%,38dvh,calc(100dvw - 56px));height:auto;max-height:38dvh;object-fit:contain;margin:8px auto}.payment-sheet .card,.payment-sheet #payfields{max-width:100%;overflow-wrap:anywhere}.payment-sheet input{max-width:100%}.sheet-actions{position:sticky;bottom:-16px;background:white;padding:8px 0}.payment-sheet .sheet-actions{bottom:-16px}.sheet>.row:first-child>button{flex:0 0 44px;width:44px;min-width:44px;padding:9px}.sheet>.row:first-child>h2,.sheet>.row:first-child>h3{flex:1;min-width:0}.payment-sheet img{width:min(100%,34dvh,calc(100dvw - 56px));height:min(34dvh,calc(100dvw - 56px));max-height:none;aspect-ratio:1;object-fit:contain}
