:root{--bg: #f5f5f7;--bg-elevated: #ffffff;--ink: #1d1d1f;--ink-2: #6e6e73;--ink-3: #86868b;--line: rgba(0, 0, 0, .08);--fill: rgba(118, 118, 128, .12);--accent: #0071e3;--accent-press: #0062c3;--accent-ink: #ffffff;--success: #34c759;--warning: #ff9f0a;--danger: #ff3b30;--material: rgba(255, 255, 255, .72);--material-border: rgba(0, 0, 0, .06);--shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--shadow-2: 0 2px 6px rgba(0, 0, 0, .06), 0 24px 60px rgba(0, 0, 0, .14);--radius-l: 22px;--radius-m: 14px;--radius-s: 10px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--tabbar-h: 64px;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);color-scheme:light}@media (prefers-color-scheme: dark){:root{--bg: #000000;--bg-elevated: #1c1c1e;--ink: #f5f5f7;--ink-2: #a1a1a6;--ink-3: #8e8e93;--line: rgba(255, 255, 255, .1);--fill: rgba(118, 118, 128, .24);--accent: #0a84ff;--accent-press: #0071e3;--success: #30d158;--warning: #ff9f0a;--danger: #ff453a;--material: rgba(28, 28, 30, .72);--material-border: rgba(255, 255, 255, .08);--shadow-1: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-2: 0 24px 60px rgba(0, 0, 0, .6);color-scheme:dark}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.47;letter-spacing:-.022em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none}button,input{font:inherit;color:inherit;letter-spacing:inherit}a{color:var(--accent);text-decoration:none}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px;border-radius:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.t-hero{font-size:clamp(2.5rem,7vw,4.25rem);line-height:1.04;letter-spacing:-.045em;font-weight:700;margin:0}.t-large{font-size:2.125rem;line-height:1.1;letter-spacing:-.035em;font-weight:700;margin:0}.t-title{font-size:1.375rem;line-height:1.2;letter-spacing:-.028em;font-weight:700;margin:0}.t-head{font-size:1.0625rem;line-height:1.3;font-weight:600;margin:0}.t-body{font-size:1.0625rem;line-height:1.47;margin:0}.t-sub{font-size:.9375rem;line-height:1.4;color:var(--ink-2);letter-spacing:-.012em;margin:0}.t-foot{font-size:.8125rem;line-height:1.35;color:var(--ink-3);letter-spacing:-.004em;margin:0}.t-caps{font-size:.75rem;line-height:1.3;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-weight:600}.num{font-variant-numeric:tabular-nums}.grad-text{background:linear-gradient(92deg,#5e5ce6,#0a84ff 40%,#30b0c7,#34c759);-webkit-background-clip:text;background-clip:text;color:transparent}.app{min-height:100%;overflow-x:clip}.page{max-width:980px;margin:0 auto;padding:calc(var(--safe-t) + 8px) 20px calc(var(--tabbar-h) + var(--safe-b) + 32px)}.section{margin-top:36px}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin:0 4px 12px}.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:12px}.spacer{flex:1}.material{background:var(--material);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border:.5px solid var(--material-border)}.navbar{position:sticky;top:0;z-index:30;height:calc(52px + var(--safe-t));padding-top:var(--safe-t);display:flex;align-items:center;justify-content:center;margin:0 -20px;border-width:0 0 .5px 0;transition:opacity .2s ease}.navbar .t-head{font-size:1.0625rem}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;height:calc(var(--tabbar-h) + var(--safe-b));padding-bottom:var(--safe-b);display:flex;justify-content:center;border-width:.5px 0 0 0}.tabbar-inner{width:100%;max-width:520px;display:grid;grid-template-columns:repeat(4,1fr)}.tab{background:none;border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.6875rem;letter-spacing:0;color:var(--ink-3);cursor:pointer;position:relative}.tab[aria-current=page]{color:var(--accent)}.tab svg{width:26px;height:26px}@media (min-width: 900px){.tabbar{top:16px;bottom:auto;left:50%;right:auto;transform:translate(-50%);width:440px;height:52px;border-radius:999px;border-width:.5px;box-shadow:var(--shadow-1);padding:0 6px}.tab{flex-direction:row;gap:6px;font-size:.875rem;border-radius:999px}.tab svg{width:20px;height:20px}.page{padding-top:92px;padding-bottom:64px}.navbar{display:none}}.card{background:var(--bg-elevated);border-radius:var(--radius-l);box-shadow:var(--shadow-1);padding:20px;position:relative;overflow:hidden}.list{background:var(--bg-elevated);border-radius:var(--radius-m);overflow:hidden}.list-row{display:flex;align-items:center;gap:14px;padding:14px 16px;min-height:56px;width:100%;background:none;border:0;text-align:left;cursor:pointer}.list-row+.list-row{box-shadow:inset 0 .5px 0 var(--line)}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--fill);font-size:.8125rem;font-weight:500;letter-spacing:-.006em;white-space:nowrap}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:0}.pill.done{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.pill.failed{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.pill.running,.pill.queued{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;border-radius:999px;min-height:50px;padding:0 24px;font-size:1.0625rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--accent-ink);width:100%;transition:background-color .15s ease,opacity .15s ease}.btn:active{background:var(--accent-press)}.btn[disabled]{opacity:.4;cursor:default}.btn.secondary{background:var(--fill);color:var(--accent)}.btn.plain{background:none;color:var(--accent);min-height:44px;width:auto;padding:0 8px}.btn.small{min-height:36px;font-size:.9375rem;padding:0 16px;width:auto}.field{width:100%;min-height:52px;padding:0 16px;border-radius:var(--radius-m);border:0;background:var(--fill);font-size:1.0625rem;outline:none}.field:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 30%,transparent)}.search{position:relative}.search svg{position:absolute;z-index:1;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--ink-3);pointer-events:none}.search .field{padding-left:44px;background:var(--material);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-1);min-height:56px;border-radius:18px}.tile{cursor:pointer;display:flex;flex-direction:column;gap:14px;min-height:196px;border:0;text-align:left;width:100%;color:inherit}.tile .icon{width:56px;height:56px;border-radius:15px;display:grid;place-items:center;color:#fff;box-shadow:inset 0 0 0 .5px #ffffff40,0 6px 16px #0000001f}.tile .icon svg{width:30px;height:30px}.tile.soon{cursor:default}.tile.soon .icon{filter:saturate(.35);opacity:.7}.tile .foot{margin-top:auto;display:flex;align-items:center;gap:8px}.hero{position:relative;padding:28px 4px 8px}.aurora{position:absolute;top:-160px;right:-40vw;bottom:-60px;left:-40vw;z-index:-1;overflow:hidden;pointer-events:none;filter:blur(60px) saturate(140%);opacity:.55;-webkit-mask-image:linear-gradient(to bottom,#000 45%,transparent 100%);mask-image:linear-gradient(to bottom,#000 45%,transparent 100%)}.aurora span{position:absolute;width:46vmax;height:46vmax;border-radius:50%;mix-blend-mode:normal}.aurora span:nth-child(1){background:#5e5ce6;left:8%;top:-12%;animation:drift1 22s ease-in-out infinite alternate}.aurora span:nth-child(2){background:#0a84ff;left:42%;top:-22%;animation:drift2 26s ease-in-out infinite alternate}.aurora span:nth-child(3){background:#30b0c7;left:62%;top:6%;animation:drift3 30s ease-in-out infinite alternate;opacity:.8}.aurora span:nth-child(4){background:#ff9f0a;left:20%;top:18%;animation:drift2 34s ease-in-out infinite alternate-reverse;opacity:.35}@media (prefers-color-scheme: dark){.aurora{opacity:.42}}@keyframes drift1{to{transform:translate3d(12vw,8vh,0) scale(1.15)}}@keyframes drift2{to{transform:translate3d(-14vw,10vh,0) scale(.9)}}@keyframes drift3{to{transform:translate3d(-8vw,-6vh,0) scale(1.2)}}.fade-bottom{display:none}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#00000059}.sheet{position:fixed;z-index:61;left:0;right:0;bottom:0;max-height:92vh;overflow:auto;background:var(--bg-elevated);border-radius:26px 26px 0 0;box-shadow:var(--shadow-2);padding:8px 20px calc(24px + var(--safe-b));touch-action:pan-y}.grabber{width:38px;height:5px;border-radius:3px;background:var(--fill);margin:4px auto 14px;cursor:grab}@media (min-width: 700px){.sheet{left:50%;right:auto;bottom:auto;top:50%;width:560px;border-radius:26px;max-height:86vh;padding:24px}.grabber{visibility:hidden;height:0;margin:4px}}.sheet-close{position:absolute;right:14px;top:14px;width:32px;height:32px;border-radius:50%;border:0;background:var(--fill);color:var(--ink-2);display:grid;place-items:center;cursor:pointer}.drop{border-radius:var(--radius-l);border:1.5px dashed color-mix(in srgb,var(--ink-3) 55%,transparent);padding:28px 18px;text-align:center;cursor:pointer;background:color-mix(in srgb,var(--fill) 50%,transparent);transition:border-color .2s ease,background-color .2s ease}.drop.over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.drop svg{width:40px;height:40px;color:var(--accent)}.quote{border-radius:var(--radius-m);background:var(--fill);overflow:hidden}.quote .qrow{display:flex;justify-content:space-between;gap:16px;padding:13px 16px}.quote .qrow+.qrow{box-shadow:inset 0 .5px 0 var(--line)}.toast{position:fixed;left:50%;bottom:calc(var(--tabbar-h) + var(--safe-b) + 16px);z-index:80;padding:12px 18px;border-radius:999px;box-shadow:var(--shadow-2);font-size:.9375rem;font-weight:500}@media (min-width: 900px){.toast{bottom:32px}}.balance{position:relative;overflow:hidden;color:#fff;background:linear-gradient(135deg,#1d1d1f,#3a3a3c)}.balance:after{content:"";position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;background:conic-gradient(from 180deg,#5e5ce6,#0a84ff,#30b0c7,#34c759,#5e5ce6);opacity:.35;filter:blur(50px);animation:spin 18s linear infinite}.balance>*{position:relative;z-index:1}@keyframes spin{to{transform:rotate(1turn)}}.pack{cursor:pointer;text-align:center;border:0;color:inherit;width:100%}@media (prefers-reduced-motion: reduce){.aurora span,.balance:after{animation:none!important}*{scroll-behavior:auto!important}}@media (prefers-reduced-transparency: reduce){.material,.search .field{background:var(--bg-elevated)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.aurora{display:none}}@media (prefers-contrast: more){:root{--line: rgba(0,0,0,.3);--ink-2: #3a3a3c;--ink-3: #48484a}.card,.list,.quote{box-shadow:none;outline:1px solid var(--ink)}.btn.secondary{outline:1.5px solid var(--accent)}}.tab>svg,.tab>span:not(.tab-pill){position:relative;z-index:1}.tab-pill{position:absolute;top:6px;right:10px;bottom:6px;left:10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,transparent);z-index:0}@media (min-width: 900px){.tab-pill{top:6px;right:2px;bottom:6px;left:2px}}.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pack{padding:14px 8px 16px;display:flex;flex-direction:column;align-items:center;gap:2px}.pack .pill{font-size:.6875rem;padding:2px 8px}.pack-price{margin-top:8px;font-size:clamp(1.625rem,6vw,2.125rem)}.seg{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.seg-opt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border-radius:var(--radius-m);border:0;background:var(--fill);text-align:left;cursor:pointer;box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow .15s ease,background-color .15s ease}.seg-opt.on{background:color-mix(in srgb,var(--accent) 10%,var(--bg-elevated));box-shadow:inset 0 0 0 1.5px var(--accent)}
