:root{--paper:#f6efe2;--card:#fffaf1;--terracotta:#c8623f;--terracotta-soft:#f6e2d8;--sage:#7d9471;--sage-soft:#e9eee4;--cocoa:#3a3027;--muted:#7a6a5a;--line:#e0d2ba;--line-strong:#cbb99b;--shadow:#3a302721;--dur-card:.26s;--dur-tap:90ms;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-reduced-motion:reduce){:root{--dur-card:.01ms;--dur-tap:.01ms}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--cocoa);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--terracotta);outline-offset:2px}.app{max-width:560px;padding:0 16px 32px;padding-bottom:calc(32px + env(safe-area-inset-bottom));margin:0 auto}.bar{min-height:74px;padding:18px 130px 12px 2px}.bar__title{letter-spacing:-.3px;margin:0;font-size:26px;font-weight:700;line-height:34px}.bar__sub{color:var(--muted);margin:2px 0 0;font-size:15px;line-height:22px}.back{background:var(--card);border:2px solid var(--line-strong);min-width:160px;min-height:48px;box-shadow:2px 3px 0 var(--shadow);transition:transform var(--dur-tap) ease, box-shadow var(--dur-tap) ease;border-radius:26px 24px 26px 22px;align-items:center;gap:8px;padding:0 18px 0 14px;font-size:16px;font-weight:600;display:inline-flex}.back:active{box-shadow:0 0 0 var(--shadow);transform:translate(2px,3px)}.recents,.filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recents{margin-bottom:12px}.recents__label{letter-spacing:.6px;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:700;line-height:20px}.filters{margin-bottom:14px}.chip{border:2px solid var(--line-strong);min-width:52px;min-height:44px;color:var(--cocoa);transition:transform var(--dur-tap) ease, background-color var(--dur-tap) ease;background:0 0;border-radius:24px;padding:0 13px;font-size:15px;font-weight:600}.chip:active{transform:scale(.96)}.chip.is-on{background:var(--cocoa);border-color:var(--cocoa);color:var(--paper)}.chip--recent{background:var(--sage-soft);border-color:var(--sage);border-style:dashed}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tile{text-align:left;background:var(--card);border:2px solid var(--line);min-height:104px;box-shadow:3px 4px 0 var(--shadow);transition:transform var(--dur-tap) ease, box-shadow var(--dur-tap) ease;flex-direction:column;gap:6px;padding:14px 14px 16px;display:flex}.tile--0{border-radius:22px 26px 20px 24px/26px 20px 26px 22px}.tile--1{border-radius:26px 20px 26px 22px/20px 26px 22px}.tile--2{border-radius:20px 24px 26px 20px/24px 22px 20px 26px}.tile--3{border-radius:24px 22px 22px 26px/22px 26px 24px 20px}.tile:active{box-shadow:0 0 0 var(--shadow);transform:translate(3px,4px)}.tile__name{letter-spacing:-.2px;overflow-wrap:anywhere;font-size:18px;font-weight:700;line-height:24px}.tile__teaser{color:var(--muted);-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:13px;line-height:19px;display:-webkit-box;overflow:hidden}.tile__teaser:before{content:"→ ";color:var(--sage);font-weight:700}.card{animation:rise var(--dur-card) ease-out forwards}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card__name{letter-spacing:-.6px;overflow-wrap:anywhere;margin:6px 0 0;font-size:32px;font-weight:700;line-height:40px}.card__hint{color:var(--muted);margin:4px 0 0;font-size:14px;line-height:21px}.amount{flex-wrap:wrap;gap:6px;margin:16px 0 12px;display:flex}.amount__step{background:var(--card);border:2px solid var(--line-strong);white-space:nowrap;min-width:46px;min-height:48px;transition:transform var(--dur-tap) ease;border-radius:16px 18px 15px 17px;flex:1 1 0;padding:0 4px;font-size:16px;font-weight:700}.amount__step:active{transform:scale(.94)}.amount__step.is-on{background:var(--terracotta);border-color:var(--terracotta);color:#fff}.card__need{color:var(--terracotta);margin:0 0 12px;font-size:17px;font-weight:700;line-height:25px}.card__need:after{content:" →";color:var(--muted)}.subs{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.sub{background:var(--card);border:2px solid var(--line);box-shadow:3px 4px 0 var(--shadow);border-radius:20px 24px 21px 23px/24px 20px 23px 21px;padding:14px 16px 16px}.sub__tag{letter-spacing:.8px;text-transform:uppercase;border:2px solid #0000;border-radius:12px;margin-bottom:8px;padding:3px 10px;font-size:11px;font-weight:800;line-height:16px;display:inline-block}.sub--best .sub__tag{background:var(--sage);color:#fff}.sub--good .sub__tag{border-color:var(--sage);color:#556b4b}.sub--pinch .sub__tag{border-color:var(--terracotta);color:var(--terracotta)}.sub--heads{background:var(--terracotta-soft);border-color:#e2b8a5}.sub--heads .sub__tag{background:var(--terracotta);color:#fff}.sub__swap{letter-spacing:-.2px;overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:700;line-height:29px}.sub__note{color:var(--muted);overflow-wrap:anywhere;margin:8px 0 0;font-size:15px;line-height:23px}.card__filtered{color:var(--sage);margin:14px 0 0;font-size:14px;font-weight:600;line-height:21px}.footnote{border-top:2px dashed var(--line-strong);color:var(--muted);margin:26px 0 0;padding-top:16px;font-size:13px;line-height:20px}
