.btn{--h:3rem;justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--h);padding:0 var(--sp-5);border-radius:var(--r-md);font-size:var(--fs-body);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-short) var(--ease-out), opacity var(--dur-short) var(--ease-out), transform var(--dur-instant) var(--ease-out);font-weight:600;display:inline-flex;position:relative}.btn>svg{flex:none}.btn:active{transform:scale(.98)}.btn[disabled],.btn[aria-disabled=true]{opacity:.4;pointer-events:none}.btn-primary{background:var(--action);color:var(--on-action)}.btn-secondary{background:var(--fill);color:var(--ink)}.btn-tint{background:var(--tint);color:var(--on-tint)}.btn-pay{background:var(--ok);color:var(--on-ok)}.btn-danger{background:var(--tint-soft);color:var(--tint-ink)}.btn-plain{min-height:2.75rem;padding:0 var(--sp-3);color:var(--tint);font-weight:500}.btn-block{width:100%}.btn-sm{--h:2.5rem;padding:0 var(--sp-4);font-size:var(--fs-sub);border-radius:var(--r-sm)}.btn-sm:before{content:"";position:absolute;inset:-.25rem 0}.btn-icon{border-radius:var(--r-full);width:2.75rem;min-height:2.75rem;padding:0}.btn[data-loading=true]{color:#0000;pointer-events:none}.btn[data-loading=true]:after{content:"";border:2px solid var(--on-action);border-right-color:#0000;border-radius:50%;width:1.25rem;height:1.25rem;animation:.7s linear infinite spin;position:absolute}.btn-pay[data-loading=true]:after{border-color:var(--on-ok);border-right-color:#0000}.btn-secondary[data-loading=true]:after,.btn-danger[data-loading=true]:after,.btn-plain[data-loading=true]:after{border-color:var(--ink);border-right-color:#0000}@media (hover:hover){.btn-primary:hover{background:color-mix(in oklch, var(--action) 86%, var(--paper))}.btn-secondary:hover{background:var(--fill-strong)}.btn-pay:hover{background:color-mix(in oklch, var(--ok) 88%, var(--ink))}.btn-tint:hover{background:color-mix(in oklch, var(--tint) 88%, var(--ink))}}@keyframes spin{to{transform:rotate(360deg)}}.field{gap:var(--sp-2);display:grid}.field-row{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.label{font-size:var(--fs-sub);color:var(--ink-2);align-items:center;gap:var(--sp-2);font-weight:500;display:flex}.input,.select,.textarea{width:100%;min-height:3rem;padding:0 var(--sp-4);background:var(--surface);border:.5px solid var(--rule);border-radius:var(--r-md);font-size:var(--fs-base);color:var(--ink);appearance:none}.input::placeholder,.textarea::placeholder{color:var(--ink-3)}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--ink);outline-offset:0;border-color:var(--ink)}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--tint)}.textarea{padding-block:var(--sp-3);resize:vertical;min-height:5.5rem;line-height:1.4}.select-wrap{position:relative}.select-wrap>svg{right:var(--sp-4);color:var(--ink-3);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.select{padding-right:var(--sp-10)}.input-affix{position:relative}.input-affix>svg{left:var(--sp-4);color:var(--ink-3);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-affix .input{padding-left:2.75rem}.input-affix .affix-end{right:var(--sp-1);min-height:2.75rem;padding:0 var(--sp-3);color:var(--ink-2);font-size:var(--fs-sub);font-weight:500;position:absolute;top:50%;transform:translateY(-50%)}.hint{font-size:var(--fs-footnote);color:var(--ink-2);line-height:1.35}.error-text{gap:var(--sp-2);font-size:var(--fs-footnote);color:var(--tint-ink);align-items:flex-start;line-height:1.35;display:flex}.error-text svg{flex:none;margin-top:.1rem}.form-stack{gap:var(--sp-4);display:grid}.switch{border-radius:var(--r-full);background:var(--fill-strong);width:3.1875rem;height:1.9375rem;transition:background-color var(--dur-short) var(--ease-out);flex:none;position:relative}.switch:after{content:"";background:var(--knob);width:1.6875rem;height:1.6875rem;box-shadow:var(--shadow-knob);transition:transform var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px}.switch[aria-checked=true]{background:var(--action)}.switch[aria-checked=true]:after{background:var(--on-action);transform:translate(1.25rem)}.switch[disabled]{opacity:.4}.segmented{background:var(--fill);border-radius:var(--r-sm);grid-auto-columns:1fr;grid-auto-flow:column;padding:2px;display:grid;position:relative}.segmented button{z-index:1;min-height:2.5rem;padding:0 var(--sp-3);border-radius:calc(var(--r-sm) - 2px);font-size:var(--fs-sub);color:var(--ink);white-space:nowrap;font-weight:500;position:relative}.segmented button[aria-pressed=true]{font-weight:600}.segmented-thumb{width:calc((100% - 4px) / var(--n));transform:translateX(calc(var(--i) * 100%));border-radius:calc(var(--r-sm) - 2px);background:var(--surface);box-shadow:var(--shadow-thumb);transition:transform var(--dur-medium) var(--ease-out);position:absolute;top:2px;bottom:2px;left:2px}.group{background:var(--surface);border-radius:var(--r-lg);overflow:hidden}.group+.group,.group-head+.group{margin-top:var(--sp-2)}.stack>*+*{margin-top:var(--sp-4)}.group-head{padding:var(--sp-6) var(--sp-4) 0;font-size:var(--fs-footnote);color:var(--ink-2);font-weight:600}.group-foot{padding:var(--sp-2) var(--sp-4) 0;font-size:var(--fs-footnote);color:var(--ink-2);line-height:1.4}.row{align-items:center;gap:var(--sp-3);width:100%;min-height:3.5rem;padding:var(--sp-3) var(--sp-4);text-align:left;background:0 0;display:flex;position:relative}.row+.row:before{content:"";top:0;left:var(--sp-4);border-top:.5px solid var(--rule);position:absolute;right:0}.row.has-icon+.row.has-icon:before{left:3.25rem}a.row,button.row{transition:background-color var(--dur-instant) var(--ease-out)}a.row:active,button.row:active{background:var(--fill)}@media (hover:hover){a.row:hover,button.row:hover{background:var(--fill)}}.row-icon{width:1.75rem;color:var(--ink-2);flex:none;place-items:center;display:grid}.row-main{flex:1;min-width:0}.row-title{overflow-wrap:anywhere;font-weight:500;line-height:1.25}.row-sub{font-size:var(--fs-sub);color:var(--ink-2);overflow-wrap:anywhere;margin-top:.125rem;line-height:1.3}.row-trail{align-items:center;gap:var(--sp-1);color:var(--ink-3);font-size:var(--fs-sub);flex:none;display:flex}.row-trail strong{color:var(--ink);font-weight:600}.badge{align-items:center;gap:var(--sp-1);border-radius:var(--r-full);background:var(--fill);color:var(--ink-2);font-size:var(--fs-caption);white-space:nowrap;padding:.125rem .5rem;font-weight:600;line-height:1.4;display:inline-flex}.badge-pro{background:var(--ink);color:var(--paper)}.badge-tint{background:var(--tint-soft);color:var(--tint-ink)}.badge-ok{background:var(--ok-soft);color:var(--ok-ink)}.badge-warn{background:var(--warn-soft);color:var(--warn-ink)}.avatar{background:var(--fill);width:2.75rem;height:2.75rem;color:var(--ink-2);font-size:var(--fs-sub);letter-spacing:0;border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.avatar-sm{width:2rem;height:2rem;font-size:var(--fs-footnote)}.banner{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--warn-soft);color:var(--warn-ink);display:flex}.content>.banner{margin-bottom:var(--sp-4)}.banner-main{min-width:0;font-size:var(--fs-sub);flex:1;line-height:1.3}.banner-main strong{font-weight:600;display:block}.screen{min-height:100dvh;max-width:var(--app-max);padding-bottom:var(--tab-space);margin-inline:auto}.navbar{z-index:var(--z-nav);min-height:calc(3rem + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--sp-2) 0;background:color-mix(in oklch, var(--paper) 0%, transparent);transition:background-color var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:0}.navbar[data-scrolled=true]{background:var(--paper);background:color-mix(in oklch, var(--paper) 78%, transparent);-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);box-shadow:0 .5px 0 var(--rule)}.navbar-side{align-items:center;gap:var(--sp-1);display:flex}.navbar-side:last-child{justify-content:flex-end}.navbar-title{text-overflow:ellipsis;white-space:nowrap;max-width:14rem;font-size:var(--fs-body);opacity:0;transition:opacity var(--dur-short) var(--ease-out);font-weight:600;overflow:hidden}.navbar[data-scrolled=true] .navbar-title{opacity:1}.nav-btn{min-width:2.75rem;min-height:2.75rem;padding:0 var(--sp-2);border-radius:var(--r-full);color:var(--tint);font-size:var(--fs-body);justify-content:center;align-items:center;gap:.125rem;font-weight:500;display:inline-flex;position:relative}.nav-btn.is-neutral{color:var(--ink)}.nav-btn:active{opacity:.5}.nav-dot{background:var(--tint);width:.5rem;height:.5rem;box-shadow:0 0 0 2px var(--paper);border-radius:50%;position:absolute;top:.55rem;right:.6rem}.largetitle{padding:var(--sp-1) var(--sp-4) var(--sp-4);font-family:var(--font-display);font-size:var(--fs-large);letter-spacing:-.026em;overflow-wrap:anywhere;font-weight:700;line-height:1.15}.largetitle h1{font:inherit;letter-spacing:inherit;overflow-wrap:anywhere}.largetitle-sub{margin-top:var(--sp-1);font-size:var(--fs-body);letter-spacing:-.011em;color:var(--ink-2);font-weight:400;line-height:1.35}.content{padding:0 var(--sp-4)}.tabbar-wrap{inset-inline:0;z-index:var(--z-tab);padding:0 var(--sp-4) calc(var(--sp-3) + env(safe-area-inset-bottom));pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:0}.tabbar{align-items:center;gap:var(--sp-3);pointer-events:auto;width:100%;max-width:26rem;display:flex}.tabs{background:var(--surface);background:var(--glass);-webkit-backdrop-filter:blur(24px)saturate(180%);backdrop-filter:blur(24px)saturate(180%);border:.5px solid var(--glass-border);border-radius:var(--r-full);box-shadow:var(--shadow-float);flex:1;grid-template-columns:repeat(4,minmax(0,1fr));padding:4px;display:grid}.tab{border-radius:var(--r-full);min-height:3.25rem;font-size:var(--fs-caption);color:var(--ink-2);white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:500;display:flex}.tab[aria-current=page]{color:var(--tint);background:color-mix(in oklch, var(--ink) 7%, transparent)}.fab{background:var(--action);width:3.75rem;height:3.75rem;color:var(--on-action);box-shadow:var(--shadow-float);transition:transform var(--dur-instant) var(--ease-out);border-radius:50%;flex:none;place-items:center;display:grid}.fab:active{transform:scale(.94)}.sheet-backdrop{z-index:var(--z-sheet);background:var(--scrim);opacity:0;transition:opacity var(--dur-medium) var(--ease-out);position:fixed;inset:0}.sheet-backdrop[data-open=true]{opacity:1}.sheet{z-index:var(--z-sheet);inset-inline:0;background:var(--paper);border-radius:var(--r-xl) var(--r-xl) 0 0;width:100%;max-width:32rem;max-height:min(92dvh,52rem);box-shadow:var(--shadow-float);transition:transform var(--dur-medium) var(--ease-out);will-change:transform;flex-direction:column;margin-inline:auto;display:flex;position:fixed;bottom:0;transform:translateY(100%)}.sheet:focus{outline:none}.sheet[data-open=true]{transform:translateY(var(--drag,0px))}.sheet[data-dragging=true]{transition:none}.sheet-grab{touch-action:none;cursor:grab;flex:none;place-items:center;height:1.5rem;display:grid}.sheet-grab:before{content:"";border-radius:var(--r-full);background:var(--fill-strong);width:2.25rem;height:.3125rem}.sheet-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-1) var(--sp-4) var(--sp-3);touch-action:none;flex:none;display:flex}.sheet-title{font-family:var(--font-display);font-size:var(--fs-title1);letter-spacing:-.024em;font-weight:700;line-height:1.15}.sheet-lede{margin-top:var(--sp-2);color:var(--ink-2);font-size:var(--fs-body);line-height:1.4}.sheet-close{background:var(--fill);width:2.25rem;height:2.25rem;color:var(--ink-2);border-radius:50%;flex:none;place-items:center;margin-top:.125rem;display:grid}.sheet-close:before{content:"";position:absolute;inset:-.25rem}.sheet-body{overscroll-behavior:contain;min-height:0;padding:0 var(--sp-4) var(--sp-4);flex:1;overflow-y:auto}.sheet-foot{gap:var(--sp-2);padding:var(--sp-3) var(--sp-4) calc(var(--sp-4) + env(safe-area-inset-bottom));flex:none;display:grid}.toast-region{z-index:var(--z-toast);inset-inline:0;bottom:calc(5.75rem + env(safe-area-inset-bottom));gap:var(--sp-2);padding-inline:var(--sp-4);pointer-events:none;justify-items:center;display:grid;position:fixed}.toast{align-items:flex-start;gap:var(--sp-3);max-width:min(100%,26rem);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);background:var(--ink);color:var(--paper);font-size:var(--fs-sub);box-shadow:var(--shadow-float);pointer-events:auto;animation:toast-in var(--dur-long) var(--ease-out);line-height:1.35;display:flex}.toast svg{flex:none;margin-top:.05rem}.toast-action{margin-left:var(--sp-2);text-underline-offset:2px;font-weight:600;text-decoration:underline}@keyframes toast-in{0%{opacity:0;transform:translateY(.75rem)}}.empty{justify-items:center;gap:var(--sp-2);padding:var(--sp-12) var(--sp-6);text-align:center;color:var(--ink-2);display:grid}.empty svg{color:var(--ink-3)}.empty-title{color:var(--ink);font-size:var(--fs-title3);font-weight:600}.empty .btn{margin-top:var(--sp-3)}.skeleton{border-radius:var(--r-md);background:var(--fill);animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.55}}.splash{place-items:center;min-height:100dvh;display:grid}.row-gap{gap:var(--sp-2);flex-wrap:wrap;display:flex}.row-gap>.btn-block{flex:9rem;width:auto}.muted{color:var(--ink-2)}.center{text-align:center}.mt-2{margin-top:var(--sp-2)}.mt-4{margin-top:var(--sp-4)}.mt-6{margin-top:var(--sp-6)}.link{color:var(--tint);font-weight:500}.link:active{opacity:.6}.cat-grid{gap:var(--sp-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cat-tile{gap:var(--sp-2);min-height:5.5rem;padding:var(--sp-3) var(--sp-4);text-align:left;background:var(--surface);border:.5px solid var(--rule);border-radius:var(--r-md);color:var(--ink);transition:background-color var(--dur-short) var(--ease-out), border-color var(--dur-short) var(--ease-out);justify-items:start;display:grid;position:relative}.cat-tile[aria-checked=true]{background:var(--fill);border-color:var(--ink)}.cat-icon{color:var(--ink-2);display:inline-flex}.cat-name{font-size:var(--fs-sub);font-weight:600}.cat-tick{top:var(--sp-3);right:var(--sp-3);border:1.5px solid var(--ink-3);width:1.25rem;height:1.25rem;color:var(--on-action);border-radius:50%;place-items:center;display:grid;position:absolute}.cat-tile[aria-checked=true] .cat-tick{background:var(--action);border-color:var(--action)}.logo-tile{fill:var(--brand-tile)}.logo-base{fill:var(--brand-base)}.logo-red{fill:var(--brand-red)}.logo-ring,.logo-check{fill:none;stroke-linecap:round;stroke-linejoin:round}.logo-ring{stroke:var(--brand-base);stroke-width:3.5px}.logo-check{stroke:var(--brand-tile);stroke-width:3.6px}.wordmark{align-items:center;gap:var(--sp-3);display:inline-flex}.wordmark-text{font-family:var(--font-display);font-size:var(--fs-title3);letter-spacing:-.03em;white-space:nowrap;font-weight:700}
