@font-face{font-family:Archivo;src:url(../fonts/archivo.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}:root{color-scheme:light;--surface: #F3F4F1;--surface-container: #E7E9E5;--surface-raised: #FFFFFF;--on-surface: #1A1C1E;--muted: #565B60;--outline: #D3D7D4;--outline-strong: #7A8086;--accent: #2445A6;--on-accent: #FFFFFF;--accent-container: #D3DCF5;--on-accent-container: #14275E;--indicator: #BCC8EE;--inverse-accent: #9DB2FF;--success: #1F6B3A;--warn: #8A5300;--error: #A3231B;--scrim: rgb(26 28 30 / .45);--font: Archivo, "Archivo Fallback", sans-serif;--fig-xl: 800 48px/.95 var(--font);--fig-dock: 800 40px/.95 var(--font);--fig-l: 800 28px/1 var(--font);--fig-m: 800 22px/1 var(--font);--fs-headline: 32px;--fs-title: 22px;--fs-section: 15px;--headline: 700 var(--fs-headline)/1.1 var(--font);--title: 700 var(--fs-title)/1.2 var(--font);--section: 600 var(--fs-section)/1.3 var(--font);--body: 400 16px/1.45 var(--font);--body-strong: 600 16px/1.35 var(--font);--label: 500 14px/1.3 var(--font);--caption: 400 14px/1.45 var(--font);--stamp: 700 12px/1.05 var(--font);--stretch-xl: 68%;--stretch-fig: 72%;--stretch-title: 85%;--stretch-stamp: 70%;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 24px;--s8: 32px;--s10: 40px;--gutter: 16px;--row-min: 56px;--target: 48px;--content-max: 560px;--page-max: 680px;--nav-h: 80px;--bar-h: 56px;--r-paper: 2px;--r-control: 8px;--r-sheet: 16px;--r-full: 9999px;--e1: 0 1px 2px rgb(0 0 0 / .1), 0 4px 12px rgb(0 0 0 / .06);--e2: 0 8px 24px rgb(0 0 0 / .18);--e1-paper: drop-shadow(0 1px 1px rgb(0 0 0 / .12)) drop-shadow(0 4px 10px rgb(0 0 0 / .06));--fade: .12s}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--surface: #1A1E22;--surface-container: #22272C;--surface-raised: #2B3138;--on-surface: #ECEEEB;--muted: #A9AFB4;--outline: #353B42;--outline-strong: #7D858D;--accent: #9DB2FF;--on-accent: #0F1E4A;--accent-container: #2E3F73;--on-accent-container: #E3E8FF;--indicator: #33467F;--inverse-accent: #2445A6;--success: #7FD49B;--warn: #F2C06B;--error: #FF9C8F;--scrim: rgb(0 0 0 / .6);--e1: 0 1px 2px rgb(0 0 0 / .4), 0 4px 12px rgb(0 0 0 / .25);--e2: 0 8px 24px rgb(0 0 0 / .5);--e1-paper: drop-shadow(0 1px 1px rgb(0 0 0 / .45)) drop-shadow(0 4px 10px rgb(0 0 0 / .25))}}@media(prefers-reduced-motion:reduce){:root{--fade: 0ms}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0}body{background:var(--surface);color:var(--on-surface);font:var(--body);font-stretch:100%;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}h1,h2,h3,p,ul,ol{margin:0}p,li,dd,dt{text-wrap:pretty}button,input{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--on-surface);text-underline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.icon.sm{width:18px;height:18px}.num{font-variant-numeric:tabular-nums}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.section{font:var(--section);color:var(--muted);margin:var(--s6) 0 var(--s1)}.caption{font:var(--caption);color:var(--muted)}.fig-xl{font:var(--fig-xl);font-stretch:var(--stretch-xl);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.fig-l{font:var(--fig-l);font-stretch:var(--stretch-fig);font-variant-numeric:tabular-nums}.fig-m{font:var(--fig-m);font-stretch:var(--stretch-fig);font-variant-numeric:tabular-nums}.btn{display:flex;align-items:center;justify-content:center;gap:var(--s2);width:100%;min-height:var(--target);padding:0 var(--s4);border:0;border-radius:var(--r-control);font:var(--body-strong);text-decoration:none;text-align:center}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.secondary{background:transparent;color:var(--on-surface);border:1px solid var(--outline-strong)}.btn.ghost{background:transparent;color:var(--accent);width:auto;padding:0 var(--s3)}.btn[disabled]{opacity:.5;cursor:default}.btn+.btn{margin-top:var(--s2)}.ticket{position:relative;background:var(--surface-raised);border-radius:0 0 var(--r-paper) var(--r-paper);padding:var(--s4) var(--s4) var(--s3);filter:var(--e1-paper)}.ticket:before{content:"";position:absolute;left:0;right:0;top:-7px;height:8px;background:var(--surface-raised);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M0 8 6 .5 12 8z'/%3E%3C/svg%3E") 0 0 / 12px 8px repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M0 8 6 .5 12 8z'/%3E%3C/svg%3E") 0 0 / 12px 8px repeat-x}.t-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s3)}.t-main{display:flex;align-items:baseline;gap:var(--s1);flex-wrap:wrap;min-width:0}.t-main .unit{font:var(--fig-l);font-stretch:var(--stretch-fig)}.t-main .what{font:var(--body);color:var(--muted);margin-left:var(--s1)}.t-foot{align-items:center;margin-top:var(--s2);padding-top:var(--s2);border-top:1px dashed var(--outline-strong)}.t-foot .stamp{margin:calc(-1 * var(--s3)) var(--s1) calc(-1 * var(--s1)) 0;background:var(--surface-raised)}.t-row>.fig-l{white-space:nowrap}.t-ctx{font:var(--body);color:var(--muted);min-width:0}.t-split{flex:1;margin:0;display:grid;grid-template-columns:1fr auto;align-items:baseline;row-gap:var(--s2);column-gap:var(--s3)}.t-split dt{font:var(--body-strong);white-space:nowrap}.t-split dd{margin:0;text-align:right}.ticket .btn{margin-top:var(--s3)}.ticket .fig-xl,.ticket .fig-l{transition:opacity var(--fade) ease-out}.ticket.changing .fig-xl,.ticket.changing .fig-l{opacity:.35}.stamp{flex:none;width:54px;height:54px;border:2px solid var(--accent);border-radius:var(--r-full);display:grid;place-items:center;text-align:center;color:var(--accent);font:var(--stamp);font-stretch:var(--stretch-stamp);transform:rotate(-10deg);margin-right:var(--s1);padding:var(--s1)}.rows{list-style:none;padding:0;margin:0}.rows>li,.row{display:grid;align-items:center;min-height:var(--row-min);border-bottom:1px solid var(--outline)}.rows>li:last-child,.row:last-child{border-bottom:0}.who{display:flex;flex-direction:column;min-width:0;padding:var(--s2) 0}.who b{font:var(--body-strong)}.who small{font:var(--label);color:var(--muted)}.step{grid-template-columns:1fr var(--target) 44px var(--target)}.pm{width:var(--target);height:var(--target);border:0;padding:0;background:none;display:grid;place-items:center;border-radius:var(--r-full)}.pm>span{width:36px;height:36px;border:1px solid var(--outline-strong);border-radius:var(--r-full);display:grid;place-items:center}.pm:active>span{background:var(--surface-container)}.pm[disabled]{opacity:.4;cursor:default}.pm:focus-visible{outline:0}.pm:focus-visible>span{outline:2px solid var(--accent);outline-offset:2px}.step output{text-align:center}.seg{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;height:var(--target);border:1px solid var(--outline-strong);border-radius:var(--r-control);overflow:hidden}.seg button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s1);border:0;border-left:1px solid var(--outline-strong);background:none;padding:0;font:var(--label);font-variant-numeric:tabular-nums;white-space:nowrap}.seg button:first-child{border-left:0}.seg button .icon{display:none}.seg button[aria-checked=true]{background:var(--accent);color:var(--on-accent);font-weight:700}.seg button[aria-checked=true] .icon{display:block;width:16px;height:16px}@media(max-width:359px){.seg button[aria-checked=true] .icon{display:none}}.seg button:focus-visible{outline-offset:-4px;outline-color:var(--on-surface)}.chips{display:flex;flex-wrap:wrap;column-gap:var(--s2)}.chip{position:relative;display:inline-flex;align-items:center;gap:var(--s1);height:40px;margin:var(--s1) 0;padding:0 var(--s4);border:1px solid var(--outline-strong);border-radius:var(--r-control);background:none;font:var(--label)}.chip:after{content:"";position:absolute;inset:-4px 0}.chip .icon{display:none}.chip[aria-pressed=true]{background:var(--accent-container);color:var(--on-accent-container);border-color:var(--accent);padding-left:var(--s2)}.chip[aria-pressed=true] .icon{display:block}input.price{width:80px;height:var(--target);padding:0 var(--s3);text-align:right;font:var(--body-strong);font-variant-numeric:tabular-nums;background:var(--surface-container);border:0;border-bottom:1px solid var(--outline-strong);border-radius:var(--r-control) var(--r-control) 0 0}input.price:focus{outline:2px solid var(--accent);outline-offset:1px}.switch-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:var(--s3);min-height:var(--row-min);padding:var(--s2) 0;cursor:pointer}.switch{appearance:none;-webkit-appearance:none;margin:0;width:52px;height:32px;border-radius:var(--r-full);border:2px solid var(--outline-strong);background:var(--surface-container);position:relative;cursor:pointer;transition:background var(--fade)}.switch:after{content:"";position:absolute;top:6px;left:6px;width:16px;height:16px;border-radius:var(--r-full);background:var(--outline-strong);transition:transform var(--fade),width var(--fade)}.switch:checked{background:var(--accent);border-color:var(--accent)}.switch:checked:after{transform:translate(18px) translateY(-4px);width:24px;height:24px;background:var(--on-accent)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th,td{padding:var(--s3) var(--s2);border-bottom:1px solid var(--outline);text-align:right;font:var(--body)}th[scope=row],thead th:first-child{text-align:left;padding-left:0}thead th{font:var(--label);color:var(--muted);white-space:nowrap}td{font:var(--fig-m);font-stretch:var(--stretch-fig)}tbody tr:last-child>*{border-bottom:0}html{scroll-padding-bottom:calc(var(--nav-h) + 200px)}#app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:var(--s1);height:calc(var(--bar-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--s1) 0 var(--gutter);background:var(--surface)}.topbar h1{flex:1;min-width:0;font:var(--title);font-stretch:var(--stretch-title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{width:var(--target);height:var(--target);flex:none;display:grid;place-items:center;border:0;padding:0;background:none;border-radius:var(--r-full)}.icon-btn:active{background:var(--surface-container)}#view{flex:1;width:100%;max-width:var(--content-max);margin:0 auto;padding:0 var(--gutter) var(--s6)}#view>:first-child.section,#view>:first-child.group-head{margin-top:var(--s2)}.screen-end{padding-bottom:var(--s4)}.season{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);min-height:var(--target);margin-top:var(--s6);padding:var(--s2) 0;border-top:1px solid var(--outline);border-bottom:1px solid var(--outline);font:var(--label);color:var(--muted);text-decoration:none}.season b{font-weight:600;color:var(--on-surface)}.season .icon{color:var(--muted)}.season+.foot{margin-top:var(--s4)}.dock{position:sticky;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));z-index:2;margin:var(--s6) 0 0;padding-top:var(--s6);background:linear-gradient(transparent,var(--surface) var(--s6))}.dock .ticket{padding:var(--s3) var(--s4)}.dock .fig-xl{font:var(--fig-dock);font-stretch:var(--stretch-xl)}.dock .t-main{flex-wrap:nowrap}.t-act{margin-top:var(--s3);align-items:center}.t-act .btn{flex:1;margin-top:0}@media(max-width:359px){.dock .what{display:none}}.helper{font:var(--caption);color:var(--muted);margin-top:var(--s2)}.foot{margin-top:var(--s6);font:var(--caption);color:var(--muted)}.foot a{color:var(--on-surface)}.foot p+p{margin-top:var(--s1)}.list-head{margin-top:var(--s4)}.group-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);margin-top:var(--s6)}.group-head .section{margin:0}.shop>li{grid-template-columns:64px 1fr auto;column-gap:var(--s3);padding:var(--s1) 0}.shop .q{white-space:nowrap}.actions{margin-top:var(--s6)}.note{margin-top:var(--s6);font:var(--caption);color:var(--muted)}.note+.note{margin-top:var(--s2)}.empty{padding:var(--s2) 0}.empty p{font:var(--body)}.empty .btn{margin-top:var(--s3)}.navbar{position:sticky;bottom:0;z-index:3;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface-container)}.navbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s1);color:var(--muted);text-decoration:none;font:var(--label);font-weight:600}.navbar .pill{width:64px;height:32px;border-radius:var(--r-full);display:grid;place-items:center}.navbar a[aria-current=page]{color:var(--on-surface)}.navbar a[aria-current=page] .pill{background:var(--indicator);color:var(--on-accent-container)}.navbar a:focus-visible{outline-offset:-4px}.scrim{position:fixed;inset:0;z-index:10;background:var(--scrim);display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:var(--content-max);max-height:85vh;overflow-y:auto;background:var(--surface-raised);border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--e2);padding:var(--s2) var(--gutter) calc(var(--s6) + env(safe-area-inset-bottom))}.sheet:before{content:"";display:block;width:32px;height:4px;margin:0 auto var(--s2);border-radius:var(--r-full);background:var(--outline-strong)}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);min-height:var(--target)}.sheet-head h2{font:var(--title);font-stretch:var(--stretch-title)}.sheet p{margin-top:var(--s3)}.sheet .btn{margin-top:var(--s5)}.menu{list-style:none;padding:0;margin:0 calc(-1 * var(--gutter))}.menu a,.menu button{display:flex;align-items:center;gap:var(--s4);width:100%;min-height:var(--row-min);padding:0 var(--gutter);border:0;background:none;text-align:left;color:var(--on-surface);text-decoration:none;font:var(--body)}.menu small{display:block;font:var(--label);color:var(--muted)}.menu .icon{color:var(--muted)}.menu a:active,.menu button:active{background:var(--surface-container)}.snackbar{position:fixed;left:var(--gutter);right:var(--gutter);z-index:20;bottom:calc(var(--nav-h) + var(--s3) + env(safe-area-inset-bottom));max-width:calc(var(--content-max) - 2 * var(--gutter));margin:0 auto;background:var(--on-surface);color:var(--surface);border-radius:var(--r-control);box-shadow:var(--e2);padding:var(--s3) var(--s4);font:var(--body)}.snackbar.has-action{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);padding:var(--s1) var(--s1) var(--s1) var(--s4)}.snackbar .btn.ghost{flex:none;color:var(--inverse-accent)}.copy-fallback{width:100%;min-height:160px;margin-top:var(--s3);padding:var(--s3);font:var(--caption);color:var(--on-surface);background:var(--surface);border:1px solid var(--outline-strong);border-radius:var(--r-control)}.form-row{display:flex;gap:var(--s2);align-items:flex-end;margin-top:var(--s2)}.field{display:flex;flex-direction:column;gap:var(--s1);flex:1;min-width:0}.field span{font:var(--label);color:var(--muted)}.field input{height:var(--target);padding:0 var(--s3);background:var(--surface);border:1px solid var(--outline-strong);border-radius:var(--r-control);font:var(--body)}.form-row .btn{width:auto}.saved>li{grid-template-columns:1fr var(--target)}.saved .open{border:0;background:none;text-align:left;padding:var(--s2) 0}@media(min-width:720px){.topbar,.navbar{padding-left:calc((100% - var(--content-max)) / 2 + var(--gutter));padding-right:calc((100% - var(--content-max)) / 2)}}
