@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/figtree-latin-500-normal-BWnGEVsr.woff2)format("woff2"),url(/assets/figtree-latin-500-normal-B_yy1phn.woff)format("woff")}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2)format("woff2"),url(/assets/instrument-serif-latin-400-italic-u__WvvIK.woff)format("woff")}:root{--bg:#f2f4ee;--surface:#fff;--tint:#e8ede4;--ink:#1c2620;--muted:#5e6b62;--faint:#8c978f;--line:#dce2d8;--on:#0e6656;--on-ink:#fff;--accent:#e8a33a;--accent-soft:#f6ddb0;--accent-ink:#2a1c05;--display:"Bricolage Grotesque Variable", "Bricolage Grotesque", "Avenir Next", Roboto, sans-serif;--body:"Figtree", Roboto, "Segoe UI", sans-serif;--serif:"Instrument Serif", Georgia, serif;--r:18px}body.night{--bg:#121815;--surface:#1a221e;--tint:#222c27;--ink:#e7ede8;--muted:#9aa79f;--faint:#6f7c74;--line:#2b3530;--on:#2e9a84;--on-ink:#04140f;--accent:#f0b457;--accent-soft:#3a2e18;--accent-ink:#2a1c05}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0;overflow:hidden}body{background:var(--bg);color:var(--ink);font:500 18px/1.3 var(--body);user-select:none;transition:background-color .6s}button{font:inherit;color:inherit;cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}b{font-weight:700}h1,h2{margin:0}.muted{color:var(--muted)}.small{font-size:15px}.ico{flex:none;display:block}img.emo{vertical-align:-.2em;flex:none;width:1.15em;height:1.15em}img.emo.big,.emo-text.big{width:44px;height:44px;font-size:38px}.emo-text{font-family:Noto Color Emoji,sans-serif}.eyebrow{font:700 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);width:100%;padding:18px 20px;display:block}button.card:active,.kid:active,.tile:active{transform:scale(.99)}#app{height:100%;display:flex}.side{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;flex:none;align-items:stretch;width:92px;padding:14px 0;display:flex}.nav{color:var(--muted);font:700 11px/1 var(--body);letter-spacing:.1em;text-transform:uppercase;border-radius:14px;flex-direction:column;align-items:center;gap:6px;margin:2px 10px;padding:14px 0;display:flex;position:relative}.nav .ico{width:26px;height:26px}.nav .logo{border-radius:7px;display:block}.nav.on .logo{box-shadow:0 0 0 2px var(--bg)}.eyebrow-logo{align-items:center;gap:8px;display:flex}.eyebrow-logo .logo{border-radius:5px}.nav.on{background:var(--ink);color:var(--bg)}.badge{background:var(--accent);min-width:20px;height:20px;color:var(--accent-ink);font:700 12px/20px var(--body);text-align:center;letter-spacing:0;border-radius:10px;padding:0 5px;font-style:normal;position:absolute;top:6px;right:10px}.side-foot{text-align:center;margin-top:auto;padding-top:12px}.side-time{font:800 22px/1 var(--display);letter-spacing:-.02em}.side-ampm{font:700 11px/1.6 var(--body);letter-spacing:.12em;color:var(--muted)}.live{background:var(--on);border-radius:50%;width:8px;height:8px;margin:8px auto 0}.live.off{background:#c0533f}.view{flex-direction:column;flex:1;min-width:0;height:100%;padding:22px 28px 24px;display:flex}.today-top{border-bottom:1.5px solid var(--ink);align-items:flex-start;gap:36px;margin-bottom:22px;padding-bottom:18px;display:flex}.clock{flex:none}.time{font:800 196px/.82 var(--display);letter-spacing:-.05em;margin-left:-6px}.time sup{font:700 30px/1 var(--body);letter-spacing:.06em;vertical-align:top;margin-left:10px;position:relative;top:14px}.date{margin-top:18px;font-size:20px}.date b{letter-spacing:.14em;font-size:18px}.date em{font:italic 400 34px/1 var(--serif);color:var(--muted);margin-left:8px}.offline{color:#c0533f;margin-left:auto;padding-top:10px;font-size:16px;font-weight:600}.today-low{flex:1;gap:18px;min-height:0;display:flex}.rings{flex-direction:column;flex:1;min-width:0;padding:20px 24px;display:flex}.ring-row{flex:1;justify-content:space-around;align-items:center;gap:12px;display:flex}.ring-kid{flex-direction:column;align-items:center;min-width:0;display:flex}.ring-wrap{width:200px;height:200px;position:relative}.ring{width:100%;height:100%;display:block}.ring-n{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-n b{font:800 68px/.9 var(--display);letter-spacing:-.03em}.ring-n span{font:italic 400 22px/1.2 var(--serif);color:var(--muted)}.ring-name{font:800 22px/1 var(--display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;max-width:220px;margin-top:12px;overflow:hidden}.ring-sub{color:var(--muted);align-items:center;gap:6px;margin-top:8px;font-size:16px;font-weight:600;display:flex}.side-cards{flex-direction:column;flex:none;gap:14px;width:300px;display:flex}.wait-card{background:var(--on);border-color:var(--on);color:var(--on-ink)}.wait-card .eyebrow{color:#ffffffbf}.wait-n{font:800 52px/1 var(--display);letter-spacing:-.03em;align-items:center;gap:12px;margin:12px 0 8px;display:flex}.wait-n span{font:600 17px/1.2 var(--body);letter-spacing:0;opacity:.85}.wait-card ul{margin:0;padding:0;font-size:15px;list-style:none}.wait-card li{white-space:nowrap;text-overflow:ellipsis;opacity:.92;padding:2px 0;overflow:hidden}.shop-card{flex-direction:column;flex:1;justify-content:flex-start;min-height:0;display:flex;overflow:hidden}.shop-n{font:800 52px/1 var(--display);letter-spacing:-.03em;align-items:baseline;gap:10px;margin:10px 0 8px;display:flex}.shop-n span{font:italic 400 22px/1 var(--serif);letter-spacing:0;color:var(--muted)}.shop-card ul{color:var(--muted);margin:0;padding-left:20px;font-size:16px}.shop-card li{white-space:nowrap;text-overflow:ellipsis;padding:2px 0;overflow:hidden}.shop-card li::marker{color:var(--on)}.quest-top{gap:16px;margin-top:18px;display:flex}.kid-card{border-top:4px solid var(--kid);flex:0 0 42%;min-width:0}.kid-card-head{align-items:center;gap:12px;display:flex}.kid-card-head b{min-width:0;font:800 24px/1 var(--display);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.kid-card-head span{color:var(--muted);font-size:15px;font-weight:700}.av{border:2px solid var(--kid);width:34px;height:34px;color:var(--kid);background:var(--surface);font:800 16px/1 var(--display);border-radius:50%;flex:none;place-items:center;display:grid}.av.sm{width:28px;height:28px;font-size:14px}.xp{background:var(--line);border-radius:99px;height:8px;margin:14px 0 12px;overflow:hidden}.xp i{background:var(--kid);border-radius:99px;height:100%;display:block}.kid-card-stats{color:var(--muted);align-items:center;gap:18px;font-size:17px;display:flex}.kid-card-stats span{align-items:center;gap:5px;display:flex}.kid-card-stats b{color:var(--ink)}.kid-card-stats .today-n{margin-left:auto}.quest-card{background:var(--accent);border-color:var(--accent);min-width:0;color:var(--accent-ink);flex:1;padding:16px 22px}.quest-card .eyebrow{color:#2a1c05b3}.quest-row{align-items:flex-end;gap:18px;display:flex}.quest-main{flex:1;min-width:0}.quest-card h2{font:400 34px/1.05 var(--serif);white-space:nowrap;text-overflow:ellipsis;margin:8px 0 10px;overflow:hidden}.qbar{background:#2a1c0526;border-radius:99px;height:7px;overflow:hidden}.qbar i{background:var(--accent-ink);border-radius:99px;height:100%;display:block}.quest-sub{margin-top:8px;font-size:15px;font-weight:600}.quest-big{font:800 60px/.85 var(--display);letter-spacing:-.04em}.quest-big small{font:700 22px/1 var(--display);margin-left:2px}.page-head{border-bottom:1.5px solid var(--ink);align-items:flex-end;gap:24px;margin-bottom:4px;padding-bottom:16px;display:flex}.page-head>div:first-child{flex:1;min-width:0}.page-head h1{font:400 56px/1 var(--serif);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.page-head p{margin:8px 0 0;font-size:17px}.kid-pick,.list-pick{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:62%;display:flex}.pick{background:var(--surface);border:1px solid var(--line);border-radius:99px;align-items:center;gap:8px;padding:8px 16px 8px 8px;font-size:17px;font-weight:700;display:flex}.list-pick .pick{padding:10px 16px}.pick i{background:var(--tint);text-align:center;border-radius:12px;min-width:24px;height:24px;padding:0 6px;font-size:13px;font-style:normal;line-height:24px}.pick.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pick.on i{background:var(--accent);color:var(--accent-ink)}.pick.on .av{background:var(--bg)}.scroll{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding-bottom:80px;overflow-y:auto}.group-head{align-items:center;gap:14px;margin:20px 0 12px;display:flex}.group-head span{font:700 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.group-head i{background:var(--line);flex:1;height:1px}.tiles{flex-wrap:wrap;gap:14px;display:flex}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;width:calc(25% - 10.5px);padding:16px;display:flex}.tile-top{justify-content:space-between;align-items:flex-start;display:flex}.times{color:var(--on);font-size:13px;font-weight:700}.tile-name{font:700 20px/1.15 var(--display);min-height:2.3em;margin:12px 0 6px}.tile-rewards{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin-bottom:14px;font-size:14px;font-weight:600;display:flex}.tile-rewards img.emo{width:16px;height:16px}.did,.state{width:100%;font:700 18px/1 var(--body);text-align:center;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:auto;padding:14px 8px;display:flex}.did{background:var(--on);color:var(--on-ink)}.did:active{filter:brightness(.9)}.state{font-size:15px}.state.done{background:var(--tint);color:var(--on)}.state.wait{background:var(--accent-soft);color:#7a4f0e}body.night .state.wait{color:var(--accent)}.tile.q-done{opacity:.7}.basket-body{flex:1;gap:28px;min-height:0;display:flex}.basket-body>.scroll{flex:1;min-width:0}.aisles{columns:2;column-gap:32px;padding-top:18px}.add-panel{flex-direction:column;flex:none;width:380px;min-height:0;padding-top:16px;display:flex}.add-box{gap:8px;display:flex}.add-box input{min-width:0;font:600 20px/1 var(--body);color:var(--ink);background:var(--surface);border:1.5px solid var(--line);user-select:text;border-radius:14px;outline:none;flex:1;padding:14px 16px}.add-box input:focus{border-color:var(--on)}.add-box input::placeholder{color:var(--faint)}.add-box button{background:var(--on);width:54px;color:var(--on-ink);border-radius:14px;flex:none;place-items:center;display:grid}.add-results{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:4px 0 80px;overflow-y:auto}.add-head{font:700 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:18px 0 8px}.opt{background:var(--surface);border:1px solid var(--line);text-align:left;border-radius:14px;align-items:center;gap:12px;width:100%;margin-bottom:6px;padding:8px 10px 8px 8px;display:flex}.opt .ico{color:var(--on)}.opt-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:18px;font-weight:600;overflow:hidden}.opt-name small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;display:block;overflow:hidden}.opt.sugg{border-color:var(--accent);background:var(--accent-soft)}body.night .opt.sugg{background:#2e2614}.opt.new{border-style:dashed}.opt.on-list{opacity:.6}.opt:active,.tile-sm:active{transform:scale(.98)}.recent{flex-wrap:wrap;gap:8px;display:flex}.tile-sm{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:6px;width:calc(33.3333% - 5.33333px);padding:12px 6px 10px;display:flex}.tile-sm .thumb{width:40px;height:40px;font-size:26px}.tile-sm .thumb img.emo{width:28px;height:28px}.tile-sm span:not(.thumb){text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:15px;font-weight:600;line-height:1.15;overflow:hidden}.tile-sm small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:-4px;font-size:12px;overflow:hidden}.aisle{break-inside:avoid;margin-bottom:22px}.aisle-name{font:700 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:8px}.item{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;display:flex}.thumb{background:var(--tint);object-fit:cover;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-size:22px;display:grid}.thumb img.emo{width:24px;height:24px}.item-name{flex:1;min-width:0;font-size:19px;font-weight:600}.item-name small{color:var(--muted);font-size:14px;font-weight:500;display:block}.qty{font:800 17px/1 var(--display);color:var(--on)}.item-wrap{break-inside:avoid}button.item{text-align:left;width:100%}.item-wrap.open button.item{border-bottom-color:#0000}.item-wrap.open .item-name{color:var(--on)}.item-edit{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:4px 0 12px 46px;display:flex}.stepper{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:4px;padding:3px;display:flex}.stepper button{width:44px;height:40px;color:var(--on);border-radius:9px;place-items:center;display:grid}.stepper button:active{background:var(--tint)}.stepper button:disabled{color:var(--line)}.stepper b{text-align:center;min-width:36px;font:800 20px/1 var(--display);font-variant-numeric:tabular-nums}.item-edit .remove{color:#b3402f;border-radius:12px;align-items:center;gap:6px;padding:10px 14px;font-size:16px;font-weight:700;display:flex}.item-edit .remove:active{background:var(--tint)}body.night .item-edit .remove{color:#e0715f}.empty-big{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:90px 0;display:flex}.empty-big .ico{color:var(--on)}.empty-big b{font:400 36px/1.1 var(--serif);color:var(--ink)}#overlay{z-index:10;background:#12181573;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}#overlay.show{display:flex}.menu{background:var(--surface);border-radius:22px;flex-direction:column;gap:10px;width:520px;max-width:100%;padding:26px;display:flex}.menu h2{font:400 36px/1.1 var(--serif);margin:6px 0 2px}.menu p{margin:0 0 8px;font-size:16px}.menu button{background:var(--tint);border-radius:14px;padding:16px;font-weight:700}.menu button.ghost{border:1px solid var(--line);background:0 0}#toast{z-index:20;background:var(--ink);max-width:80%;color:var(--bg);opacity:0;visibility:hidden;border-radius:16px;align-items:center;gap:18px;padding:14px 14px 14px 22px;font-size:18px;font-weight:600;transition:transform .25s,opacity .25s,visibility 0s .25s;display:flex;position:fixed;bottom:24px;left:calc(50% + 46px);transform:translate(-50%,140%)}#toast.show{opacity:1;visibility:visible;transition:transform .25s,opacity .25s;transform:translate(-50%)}#toast button{background:var(--accent);color:var(--accent-ink);border-radius:12px;padding:12px 22px;font-weight:800}.pair{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.pair-card{background:var(--surface);border:1px solid var(--line);border-radius:26px;width:880px;max-width:100%;padding:34px 40px}.pair-title{font:400 50px/1.05 var(--serif);margin:10px 0 18px}.pair-body{align-items:center;gap:36px;display:flex}.pair-steps{flex:1;margin:0;padding-left:26px;font-size:20px;line-height:1.5}.pair-steps li{padding:4px 0}.pair-steps li::marker{font-family:var(--display);color:var(--on);font-weight:800}.pair-qr{border:1px solid var(--line);background:#fff;border-radius:16px;flex:none;width:210px;height:210px;padding:6px}.pair-qr svg{width:100%;height:100%;display:block}.pair-code{font:800 92px/1 var(--display);letter-spacing:.08em;font-variant-numeric:tabular-nums;margin:18px 0 8px}.pair-code span{width:26px;display:inline-block}@media (max-aspect-ratio:1){.today-low,.quest-top{flex-direction:column}.side-cards{width:auto}.ring-wrap{width:150px;height:150px}.tile{width:calc(33.3333% - 9.33333px)}.aisles{columns:1}.basket-body{flex-direction:column}.add-panel{width:auto}.pair-body{flex-direction:column}}body.night .quest-card{color:var(--accent);background:#2e2614;border-color:#3d3219}body.night .quest-card .eyebrow{color:#f0b457b3}body.night .qbar{background:#f0b4572e}body.night .qbar i{background:var(--accent)}body.night .wait-card{color:#9bd9c8;background:#14302a;border-color:#1c3d35}body.night .wait-card .eyebrow{color:#9bd9c8b3}
