:root{font-family:Inter,"SF Pro Display",system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;color:#142e27;background:#f1f4f1;--green:#103f34;--muted:#53665e;--border:#dce5df;--error:#a22b36;--amber:#8a4b09}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;line-height:1.65;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.65}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b56817;outline-offset:4px}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.page{width:min(100%,520px);margin:auto;padding:24px 20px max(24px,env(safe-area-inset-bottom));min-height:100dvh}.page-header{display:flex;align-items:center;justify-content:space-between;margin:0 0 24px}.wordmark{display:flex;gap:9px;align-items:center;color:var(--green);text-decoration:none;font-size:27px;font-weight:800}.wordmark>svg{width:34px;height:34px;background:var(--green);color:#fff;border-radius:11px;padding:7px}.language-button{min-height:44px;min-width:78px;padding:7px 14px;border:1px solid #c5d2c9;border-radius:11px;background:#ffffffa8;color:#2e4c3f;font-size:13px;font-weight:600}.order-card{background:#fff;border:1px solid var(--border);border-radius:26px;padding:24px 22px 20px;text-align:center;box-shadow:0 7px 26px #103f3405;border-top:5px solid #d89a36;overflow:hidden}.restaurant{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:24px;color:#334e42}.restaurant p{font-size:17px;line-height:1.5;font-weight:650;margin:0;overflow-wrap:anywhere}.restaurant-mark{display:grid;place-items:center;width:30px;height:30px;background:#f1f4ef;border-radius:9px}.restaurant-mark svg{width:18px;height:18px}.state-symbol{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 16px;border-radius:18px;background:#fff3d6;color:var(--amber)}.state-symbol svg{width:30px;height:30px;stroke-width:1.8}.eyebrow{font-size:14px;font-weight:550;color:var(--muted);margin:0}.order-number{font-family:Inter,system-ui,-apple-system,Arial,sans-serif;font-size:clamp(76px,22vw,108px);line-height:1.15;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-4px;margin:2px 0 19px;color:#173e32;overflow-wrap:anywhere}.state-copy{padding:17px 14px;border-radius:16px;background:#fff5df;color:#784008}.state-copy h1{font-size:clamp(26px,7.2vw,34px);line-height:1.45;margin:0;font-weight:800;text-wrap:balance}.state-copy p{font-size:15px;line-height:1.7;margin:8px 0 0;color:#77531d}.progress{list-style:none;padding:24px 0 0;margin:22px 0 0;border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.progress li{position:relative;color:#66756d;font-size:12px;line-height:1.5}.progress li:not(:last-child):after{content:'';position:absolute;width:calc(100% - 32px);height:2px;background:#e1e7df;inset-inline-start:calc(50% + 16px);top:13px}.progress li>span{width:28px;height:28px;display:grid;place-items:center;background:#edf1ed;color:#5f7167;border-radius:50%;margin:auto;font-size:12px;font-weight:700}.progress li.done>span{background:#dff1e6;color:#17543a}.progress li.current>span{background:#98600d;color:#fff;box-shadow:0 0 0 4px #fff1d0}.progress p{margin:9px 0 0;font-weight:550}.progress li.current{color:#704007;font-weight:700}.order-card.ready{border-top-color:#198553}.ready .state-symbol{background:#dcf4e6;color:#11643f}.ready .state-copy{background:#def5e7;color:#0e5a37}.ready .state-copy p{color:#215f44}.ready .order-number{color:#103f34}.ready .progress li.current>span{background:#147645;box-shadow:0 0 0 4px #e3f6eb}.ready .progress li.current{color:#165d3a}.order-card.collected{border-top-color:#768b80}.collected .state-symbol,.collected .state-copy{background:#edf2ef;color:#354e42}.collected .state-copy p{color:#53665e}.notification-card{background:#fff;border:1px solid var(--border);border-radius:22px;margin-top:16px;padding:22px}.notification-heading{display:flex;align-items:center;gap:12px;margin-bottom:17px;text-align:start}.notification-icon{width:44px;height:44px;border:1px solid #dce8df;border-radius:13px;background:#f3f7f2;color:var(--green);display:grid;place-items:center;flex-shrink:0}.notification-heading h2{font-size:17px;line-height:1.5;margin:0;font-weight:750}.notification-heading p,#enabled-help{font-size:13px;color:var(--muted);margin:4px 0 0;line-height:1.75}.primary,.secondary{width:100%;min-height:50px;padding:12px 14px;border-radius:12px;font-size:15px;font-weight:650;border:1px solid transparent;line-height:1.6}.primary{background:var(--green);color:#fff;box-shadow:0 3px 0 #082a22}.primary:hover{background:#185744}.secondary{background:#f3f6f2;border-color:#c6d6ca;color:#204c36;margin-top:15px}.secondary:hover{background:#e5eee4}.primary:active,.secondary:active{filter:brightness(.95)}.text-button{background:none;border:0;min-height:44px;color:var(--muted);font-size:12px;padding:9px;margin-top:3px;width:100%}.enabled-label{font-size:16px;font-weight:700;color:#11643f;margin:0}.enabled-label:before{content:'✓';display:inline-block;margin-inline-end:7px}.fine-print{font-size:11px;line-height:1.8;color:var(--muted);text-align:center;margin:13px 0 0}.feedback{font-size:13px;line-height:1.8;margin:12px 0 0;color:#175638}.feedback:empty{display:none}.feedback.error,.connection.error{color:var(--error)}.notice{margin-top:16px;border:1px solid #d6e0d8;background:#e8efe8;border-radius:16px;padding:16px;font-size:13px;line-height:1.85;color:#405f4e}.connection{font-size:12px;color:var(--muted);text-align:center;margin:20px 0 0}.connection:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#2c8357;margin-inline-end:6px}.connection.error:before{background:var(--error)}footer{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:16px;color:#586b61;font-size:11px}.secure-dot{width:5px;height:5px;border-radius:50%;background:#859b8b}details{font-size:13px;color:var(--muted);margin-top:10px}summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}details p{margin:0;line-height:1.9}@media(min-width:700px){.page{padding-top:36px}.page-header{margin-bottom:28px}}@media(max-width:360px){.page{padding-inline:14px}.order-card{padding-inline:17px}.notification-card{padding:18px}.state-copy h1{font-size:25px}.state-copy p{font-size:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
