:root{--bg:#fcf6ec;--card:#fffcf7;--ink:#003049;--muted:#3d5668;--line:#ede2cf;--p0:#77a7c4;--p0-soft:#d9e2df;--p0-ink:#003049;--p0-strong:#3f7699;--p1:#c1121f;--p1-soft:#f8d5c3;--p1-ink:#780000;--p1-strong:#c1121f;--accent:#003049;--field:#fff;--edge:#748694;--accent-ink:#fcf6ec;--good:#003049;--bad:#780000;--radius:18px;--shadow:0 2px 10px #00304914;--font:ui-rounded, "SF Pro Rounded", "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;overscroll-behavior:none;margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border:0}.muted{color:var(--muted)}.screen{max-width:480px;min-height:100dvh;padding:env(safe-area-inset-top) 16px 0;flex-direction:column;margin:0 auto;display:flex}.btn{border-radius:var(--radius);background:var(--card);min-height:56px;box-shadow:var(--shadow);flex:1;padding:0 20px;font-size:17px;font-weight:700;transition:transform 80ms}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.big{flex:none;width:100%;min-height:64px;font-size:20px}.actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 75%, #fcf6ec00);gap:12px;margin:auto -16px 0;display:flex;position:sticky;bottom:0}.home{padding-bottom:calc(24px + env(safe-area-inset-bottom));justify-content:center;gap:32px}.hero{text-align:center}.hero-icon{font-size:64px;line-height:1}.hero h1{margin:8px 0 4px;font-size:34px}.hero p{max-width:280px;margin:0 auto}.hero-p0{color:var(--p0-ink)}.hero-p1{color:var(--p1-ink)}.setup{flex-direction:column;gap:12px;display:flex}.restaurant{position:relative}.restaurant-field{border-radius:var(--radius);background:var(--card);align-items:center;gap:10px;padding:6px 6px 6px 18px;font-weight:700;display:flex}.restaurant-field input{border:1.5px solid var(--edge);background:var(--field);text-align:right;border-radius:14px;outline:none;flex:1;min-width:0;height:48px;padding:0 14px;font-size:18px;font-weight:800}.restaurant-field input::placeholder{color:var(--muted);font-weight:700}.restaurant-field input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.restaurant-list{z-index:4;border:1.5px solid var(--edge);border-radius:var(--radius);background:var(--card);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 8px 24px #0030492e}.restaurant-list li{cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;min-height:52px;padding:0 12px;font-weight:700;display:flex}.restaurant-list li+li{border-top:1px solid var(--line)}.restaurant-list li:active{background:var(--p0-soft)}.restaurant-list li span:last-child{flex:none;font-size:14px}.restaurant-list .restaurant-new{cursor:default;font-weight:600}.top{z-index:2;background:var(--bg);margin:0 -16px;padding:12px 16px 10px;position:sticky;top:0}.scoreboard{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:8px;display:grid}.score{border-radius:var(--radius);border:2px solid #0000;flex-direction:column;min-width:0;padding:10px 14px;line-height:1.15;transition:border-color .2s;display:flex}.score.p0{background:var(--p0-soft)}.score.p1{background:var(--p1-soft)}.score.p0.lead{border-color:var(--p0-strong)}.score.p1.lead{border-color:var(--p1-strong)}.score-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.score-points{font-variant-numeric:tabular-nums;font-size:26px}.score.p0 .score-points{color:var(--p0-ink)}.score.p1 .score-points{color:var(--p1-ink)}.score-pieces{color:var(--muted);font-size:12px}.worth{margin-top:6px}.worth-bar{background:#0030492e;border-radius:999px;height:5px;overflow:hidden}.worth-bar span{border-radius:inherit;height:100%;transition:width .25s;display:block}.score.p0 .worth-bar span{background:var(--p0-strong)}.score.p1 .worth-bar span{background:var(--p1-strong)}.worth-text{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;margin-top:3px;font-size:11px;font-weight:700;display:block;overflow:hidden}.score.p0 .worth.done .worth-text{color:var(--p0-ink)}.score.p1 .worth.done .worth-text{color:var(--p1-ink)}.cloud{text-align:center;margin:4px 0 0;font-size:13px}.cloud-error{color:var(--bad);margin-top:8px;font-weight:700}.cloud-form{border-radius:var(--radius);background:var(--card);align-items:center;gap:8px;padding:6px 6px 6px 16px;font-size:14px;font-weight:700;display:flex}.cloud-form span{flex:1}.cloud-form input{border:1.5px solid var(--edge);background:var(--field);border-radius:14px;outline:none;width:90px;height:44px;padding:0 12px;font-size:18px;font-weight:800}.cloud-form input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.cloud-form .btn{flex:none;min-height:44px;padding:0 16px}.home-price{border-radius:var(--radius);background:var(--card);padding:6px 16px 6px 18px}.tabs{gap:6px;display:flex}.tab{border:1.5px solid var(--edge);height:40px;color:var(--muted);background:0 0;border-radius:999px;flex:1;font-weight:700}.tab.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.items{min-height:calc(100dvh - var(--top-h,150px));flex-direction:column;gap:8px;padding-bottom:8px;display:flex}.play .actions{background:0 0;margin-top:0;position:static}.row{grid-template-columns:100px 1fr 100px;align-items:center;gap:8px;min-height:56px;display:grid}.label{text-align:center;flex-direction:column;align-items:center;line-height:1.15;display:flex}.label-emoji{font-size:22px}.label-name{font-size:14px;font-weight:700}.label-points{color:var(--muted);font-size:12px}.tap{border-radius:16px;height:52px;font-size:20px;font-weight:800;transition:transform 80ms,background-color .15s;position:relative}.tap:active{transform:scale(.92)}.tap.p0{background:var(--p0-soft);color:var(--p0-ink)}.tap.p1{background:var(--p1-soft);color:var(--p1-ink)}.tap.p0.has{background:var(--p0)}.tap.p1.has{background:var(--p1);color:var(--bg)}.tap:not(.has) .tap-count{opacity:.75}.pop{pointer-events:none;font-size:15px;animation:.7s ease-out forwards pop;position:absolute;top:4px;left:50%}@keyframes pop{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-36px)}}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:3;background:var(--ink);max-width:calc(100% - 32px);color:var(--bg);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;padding:10px 16px;font-size:14px;position:fixed;overflow:hidden;transform:translate(-50%)}.result{padding-top:calc(24px + env(safe-area-inset-top));gap:20px}.winner{text-align:center}.winner-emoji{font-size:72px;line-height:1}.winner h1{margin:8px 0 2px;font-size:30px}.winner p{margin:0}.final-scores{grid-template-columns:1fr 1fr;gap:10px;display:grid}.final{border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:14px 10px;display:flex}.final.p0{background:var(--p0-soft)}.final.p1{background:var(--p1-soft)}.final-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:700;overflow:hidden}.final-points{font-variant-numeric:tabular-nums;font-size:34px}.final.p0 .final-points{color:var(--p0-ink)}.final.p1 .final-points{color:var(--p1-ink)}.final-fav{margin-top:6px;font-size:13px}.awards{flex-direction:column;gap:8px;display:flex}.award{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);grid-template-columns:36px 1fr auto;align-items:center;gap:8px;padding:12px 14px;display:grid}.award-emoji{font-size:24px}.award-title{font-weight:700}.award-who{text-align:right;font-size:14px}.record{margin-top:6px;font-size:13px;font-weight:700}.value-card{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);padding:16px}.value-card h2,.history h2{margin:0 0 12px;font-size:18px}.price-field{align-items:center;gap:10px;font-weight:700;display:flex}.price-field span:first-child{flex:1}.price-field input{border:1.5px solid var(--edge);background:var(--field);text-align:right;border-radius:14px;outline:none;width:110px;height:48px;padding:0 14px;font-size:20px;font-weight:800}.price-field input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.value-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.value{text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:12px 8px;display:flex}.value.p0{background:var(--p0-soft)}.value.p1{background:var(--p1-soft)}.value-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:700;overflow:hidden}.value-per-piece{font-variant-numeric:tabular-nums;font-size:24px}.value-casa{margin-top:4px;font-size:13px}.value-ratio{font-size:12px}.verdict{text-align:center;border-radius:12px;margin-top:6px;padding:4px 10px;font-size:13px;font-weight:800}.verdict.good{background:var(--good);color:var(--bg)}.verdict.bad{background:var(--bad);color:var(--bg)}.value-note{text-align:center;margin:12px 0 0;font-size:13px}.history{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);padding:16px}.h2h{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.h2h-side{border-radius:14px;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.h2h-side.p0{background:var(--p0-soft);justify-content:space-between}.h2h-side.p1{background:var(--p1-soft);justify-content:space-between}.h2h-side strong{font-variant-numeric:tabular-nums;font-size:28px}.h2h-side.p0 strong{color:var(--p0-ink)}.h2h-side.p1 strong{color:var(--p1-ink)}.h2h-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.h2h-x{color:var(--muted);font-weight:700}.h2h-note{text-align:center;margin:10px 0 0;font-size:13px}.history-list{margin:12px 0 0;padding:0;list-style:none}.history-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 2px;font-size:15px;display:flex}.history-when{flex-direction:column;min-width:0;line-height:1.25;display:flex}.history-place{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.history-score{font-variant-numeric:tabular-nums;flex:none;font-weight:700}.history-score .won.p0{color:var(--p0-ink)}.history-score .won.p1{color:var(--p1-ink)}.stats{gap:14px}.stats-top{padding-top:16px}.stats-top h1{margin:0;font-size:28px}.stats-top p{margin:2px 0 0;font-size:15px}.stats-card{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);padding:16px}.stats-card h2{margin:0 0 12px;font-size:18px}.stats-card h3{margin:18px 0 4px;font-size:15px}.stats-card .h2h{margin-bottom:8px}.vs-head,.vs-row{grid-template-columns:1fr 76px 76px;align-items:center;gap:8px;display:grid}.vs-head{text-align:right;padding:6px 0 4px;font-size:13px;font-weight:800}.vs-head span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vs-row{border-top:1px solid var(--line);min-height:40px;font-size:15px}.vs-row strong{text-align:right;font-variant-numeric:tabular-nums}.vs .p0{color:var(--p0-ink)}.vs .p1{color:var(--p1-ink)}.stats-notes{color:var(--muted);margin:10px 0 0;padding:0;font-size:14px;list-style:none}.stats-notes li+li{margin-top:4px}.stats-notes-line{margin:12px 0 0;font-size:14px}.stats-top5{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-bottom:8px;display:grid}.stats-top5 ol{border-radius:14px;margin:0;padding:10px 12px;font-size:14px;list-style:none}.stats-top5 ol.p0{background:var(--p0-soft)}.stats-top5 ol.p1{background:var(--p1-soft)}.stats-top5 li{justify-content:space-between;gap:6px;padding:3px 0;display:flex}.stats-top5 li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stats-top5 .stats-top5-name{font-weight:800}.stats-top5 .p0 strong{color:var(--p0-ink)}.stats-top5 .p1 strong{color:var(--p1-ink)}.stats-big{flex-direction:column;margin:0 0 6px;display:flex}.stats-big strong{font-variant-numeric:tabular-nums;font-size:30px}.stats-big span{font-size:14px}.stats-time{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stats-time div{background:var(--bg);border-radius:14px;flex-direction:column;padding:12px;display:flex}.stats-time strong{font-size:22px}.stats-time span{font-size:13px}.evo{margin:0;padding:0;list-style:none}.evo li{border-top:1px solid var(--line);grid-template-columns:44px 1fr;align-items:center;gap:8px;padding:6px 0;display:grid}.evo-date{font-variant-numeric:tabular-nums;font-size:13px}.evo-bars{flex-direction:column;gap:4px;display:flex}.evo-bar{align-items:center;gap:6px;display:flex}.evo-bar span{border-radius:999px;min-width:3px;height:12px}.evo-bar.p0 span{background:var(--p0-strong)}.evo-bar.p1 span{background:var(--p1-strong)}.evo-bar b{font-variant-numeric:tabular-nums;font-size:13px}.evo-bar.p0 b{color:var(--p0-ink)}.evo-bar.p1 b{color:var(--p1-ink)}.stats-link{border:1.5px solid var(--edge);width:100%;min-height:48px;box-shadow:none;flex:none;margin-top:14px}
