:root{--bg:#faf6f0;--panel:#fff;--ink:#1b1b1b;--muted:#6b6560;--line:#ebe3d8;--red:#e8604c;--blue:#4aa8e0;--gold:#f0b25a;--accent:var(--red);--radius:18px;--head:52px;--tabs:64px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.theme-tokyo{--accent:#111}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;margin:0;overflow:hidden}body{color:var(--ink);-webkit-tap-highlight-color:transparent;background:#e9e4dc;font:16px/1.4 ui-rounded,Nunito,system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,p{margin:0}h1{font-size:1.35rem;line-height:1.2}h2{font-size:1.1rem}.muted{color:var(--muted)}.small,small{font-size:.85rem}.tiny{font-size:.75rem}.center{text-align:center}.right{text-align:right}.stack{gap:10px;display:grid}.row{align-items:center;gap:8px;display:flex}.row>input{flex:1;min-width:0}.full{width:100%}.spread{justify-content:space-between}.app{background:var(--bg);grid-template-rows:auto 1fr auto;max-width:480px;height:100dvh;margin:0 auto;display:grid;position:relative;overflow:hidden}.app-head{padding:calc(env(safe-area-inset-top) + 8px) 12px 0}.app-main{min-height:0;display:grid;overflow:hidden}.screen-host{min-height:0;display:grid}.screen-host[hidden]{display:none}.screen{flex-direction:column;gap:12px;min-height:0;padding:12px 16px;display:flex;overflow:hidden}.center-screen{text-align:center;justify-content:center;align-items:center}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:800}.tabbar{border-top:1px solid var(--line);background:var(--panel);padding-bottom:env(safe-area-inset-bottom);display:flex}.tab{height:var(--tabs);font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:1;align-content:center;place-items:center;gap:2px;font-size:.72rem;font-weight:700;display:grid}.tab.on{color:var(--accent)}.tab-icon{display:grid;position:relative}.tab-badge{background:var(--gold);color:#3a2400;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-style:normal;display:grid;position:absolute;top:-4px;right:-10px}.toast{left:16px;right:16px;bottom:calc(var(--tabs) + env(safe-area-inset-bottom) + 12px);color:#fff;z-index:5;background:#1f6f3d;border-radius:14px;padding:12px 14px;font-weight:700;animation:.2s ease-out rise;position:absolute;box-shadow:0 8px 24px #0000002e}.toast.bad{background:#b3261e}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.brand{height:var(--head);letter-spacing:.05em;border-radius:14px;font-size:.78rem;display:flex;position:relative;overflow:hidden}.brand>div{white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:6px;display:flex}.brand-kids{color:var(--red);background:repeating-linear-gradient(90deg,#fde9e4 0 14px,#e6f2fb 14px 28px)}.brand-tokyo{color:#fff;background:#111}.brand>div span{font-size:1.3rem}.brand-right{position:absolute;inset:auto 6px 6px auto;flex:none!important}.brand-right select{border-radius:8px;width:auto;padding:2px 6px;font-size:.75rem}.till-title{height:var(--head);justify-content:space-between;align-items:center;gap:8px;display:flex}.till-title select{width:auto;padding:8px 12px;font-size:1.05rem;font-weight:800}.pill{background:var(--ink);color:#fff;text-transform:capitalize;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:700}label{text-align:left;gap:4px;font-size:.9rem;font-weight:700;display:grid}input,select{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;width:100%;padding:12px}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.check{align-items:flex-start;gap:10px;font-size:.85rem;font-weight:400;display:flex}.check input{flex:none;width:20px;height:20px;margin-top:1px}.switch{justify-content:space-between;align-items:center;font-weight:400;display:flex}.switch input{appearance:none;cursor:pointer;background:#ccc;border:0;border-radius:13px;flex:none;width:44px;height:26px;padding:0;position:relative}.switch input:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:left .15s;position:absolute;top:3px;left:3px}.switch input:checked{background:var(--accent)}.switch input:checked:after{left:21px}.button{min-height:48px;font:inherit;cursor:pointer;background:var(--accent);color:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:100%;padding:12px 20px;font-weight:800;text-decoration:none;display:inline-flex}.button:disabled{opacity:.45;cursor:default}.button.ghost{background:var(--panel);color:var(--ink);border:2px solid var(--line)}.button.big{min-height:58px;font-size:1.15rem}.button.gift{background:var(--gold);color:#3a2400}.row .button{width:auto}.link{color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;padding:6px;text-decoration:underline}.mini{border:1px solid var(--line);font:inherit;cursor:pointer;background:#fff;border-radius:999px;margin-left:8px;padding:4px 10px;font-size:.75rem;font-weight:700}.error{color:#b3261e}.notice{background:#eef8ee;border-radius:10px;padding:8px 10px;font-size:.9rem}.sheet{background:var(--panel);border-radius:var(--radius);text-align:left;gap:10px;width:100%;padding:16px;display:grid}.tile{background:var(--panel);border-radius:14px;gap:8px;padding:12px 14px;display:grid}.hero{text-align:center;gap:10px;display:grid}.rule-chips{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.rule-chips span{background:var(--panel);border-radius:999px;padding:6px 10px;font-size:.8rem}.name{font-size:1.5rem}.qr{background:#fff;border-radius:16px;width:min(54vw,34dvh,230px);padding:4px}.qr svg{width:100%;height:auto;display:block}.code{letter-spacing:.14em;font:800 1.35rem/1 ui-monospace,Menlo,monospace}.stat-row{gap:10px;width:100%;display:flex}.stat{background:var(--panel);font:inherit;cursor:pointer;color:var(--ink);border:0;border-radius:14px;flex:1;padding:10px;display:grid}.stat b{font-size:1.3rem}.stat span{color:var(--muted);font-size:.8rem}.big-number{font-size:3rem;line-height:1}.big-number small{color:var(--muted);font-size:1.4rem}.stamps{gap:10px;width:100%;max-width:min(340px,52dvh);margin:0;padding:0;list-style:none;display:grid}.stamp{aspect-ratio:1;color:#b9a582;background:#fffaf2;border:2px dashed #d8c7a8;border-radius:50%;place-items:center;font-size:.8rem;font-weight:800;display:grid}.stamp.on{background:var(--gold);color:#fff;border:2px solid #d48f2c;font-size:1.3rem}.stamp.gift{border-color:var(--red);font-size:1.2rem}.ready{background:#fff4dc;border-radius:12px;padding:10px 12px;font-weight:800}.rewards{gap:10px;margin:0;padding:0;list-style:none;display:grid}.rewards li{background:var(--panel);border-radius:14px;gap:6px;padding:12px 14px;display:grid}.bar{background:#f1ebe2;border-radius:4px;height:8px;overflow:hidden}.bar i{background:var(--gold);border-radius:4px;height:100%;display:block}.rewards li.ok .bar i{background:#2e9d57}.feed{background:var(--panel);border-radius:14px;margin:0;padding:0;list-style:none;overflow:hidden}.feed li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.feed li:first-child{border-top:0}.feed li>span:first-child{min-width:0;display:grid}.feed b{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.delta{white-space:nowrap;align-items:center;font-weight:800;display:flex}.struck{opacity:.45}.struck b{text-decoration:line-through}.scanner{aspect-ratio:1;object-fit:cover;background:#000;border-radius:16px;width:min(100%,40dvh)}.customer{background:var(--panel);border-radius:14px;justify-content:space-between;padding:12px 14px;display:flex}.customer>div{display:grid}.customer b{font-size:1.1rem}.amount{gap:6px}.amount-input{border:2px solid var(--ink);background:#fff;border-radius:14px;align-items:center;padding:0 14px;display:flex}.amount-input i{font-size:2rem;font-style:normal;font-weight:800}.amount-input input{background:0 0;border:0;padding:8px;font-size:2.2rem;font-weight:800}.amount-input input:focus-visible{outline:none}.preview{min-height:1.2em}.actions{gap:8px;display:grid}.next{margin-top:auto}@media (max-width:360px){.brand{font-size:.68rem}.brand>div span{font-size:1.05rem}}@media (max-height:640px){:root{--head:44px;--tabs:56px}.screen{gap:8px;padding:8px 14px}.big-number{font-size:2.3rem}.button.big{min-height:50px}.amount-input input{padding:4px;font-size:1.7rem}}.button.danger{color:#fff;background:#b3261e;border-color:#b3261e}.button.ghost.danger{background:var(--panel);color:#b3261e;border-color:#f0c7c3}.row .button.full{flex:1}.legal{background:var(--bg);max-width:640px;height:100dvh;padding:calc(env(safe-area-inset-top) + 16px) 20px 40px;margin:0 auto;overflow-y:auto}.legal h1{margin-bottom:4px}.legal h2{margin:20px 0 6px}.legal p,.legal li{margin:0 0 8px;font-size:.95rem}.legal ul{margin:0 0 8px;padding-left:20px}.legal a,.check a{color:inherit}
