:root{--tg-bg-color: #0b0f19;--tg-secondary-bg-color: #141a28;--tg-text-color: #ffffff;--tg-hint-color: #8b93a7;--tg-link-color: #64baf0;--tg-button-color: #3390ec;--tg-button-text-color: #ffffff;--brand-from: #7c5cff;--brand-mid: #5b8def;--brand-to: #22d3ee;--brand: #7c5cff;--brand-soft: rgba(124, 92, 255, .15);--brand-line: rgba(124, 92, 255, .35);--success: #34d399;--danger: #fb7185;--glass: rgba(255, 255, 255, .045);--glass-strong: rgba(255, 255, 255, .075);--glass-line: rgba(255, 255, 255, .09);--surface: var(--tg-secondary-bg-color);--r-sm: 12px;--r-md: 18px;--r-lg: 26px;--r-full: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 36px;--shadow-soft: 0 2px 8px rgba(0, 0, 0, .2), 0 12px 32px rgba(0, 0, 0, .16);--shadow-brand: 0 6px 16px rgba(124, 92, 255, .25), 0 16px 40px rgba(34, 211, 238, .14);--ease: cubic-bezier(.22, .61, .36, 1);--spring: cubic-bezier(.34, 1.56, .64, 1)}:root[data-scheme=light]{--tg-bg-color: #fbfbfd;--tg-secondary-bg-color: #ffffff;--tg-text-color: #0b1020;--tg-hint-color: #6b7280;--glass: rgba(11, 16, 32, .028);--glass-strong: rgba(11, 16, 32, .05);--glass-line: rgba(11, 16, 32, .07);--shadow-soft: 0 1px 3px rgba(11, 16, 32, .06), 0 10px 28px rgba(11, 16, 32, .07);--shadow-brand: 0 6px 16px rgba(124, 92, 255, .22), 0 16px 36px rgba(34, 211, 238, .12)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Roboto,system-ui,sans-serif;background:var(--tg-bg-color);color:var(--tg-text-color);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior-y:none}.aurora{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.aurora span{position:absolute;display:block;border-radius:50%;filter:blur(72px);opacity:.5;will-change:transform}.aurora span:nth-child(1){top:-14%;left:-18%;width:62vw;height:62vw;background:var(--brand-from);animation:drift-a 22s var(--ease) infinite alternate}.aurora span:nth-child(2){top:6%;right:-24%;width:56vw;height:56vw;background:var(--brand-to);opacity:.34;animation:drift-b 26s var(--ease) infinite alternate}.aurora span:nth-child(3){top:34%;left:12%;width:48vw;height:48vw;background:var(--brand-mid);opacity:.26;animation:drift-c 30s var(--ease) infinite alternate}:root[data-scheme=light] .aurora span{opacity:.22}:root[data-scheme=light] .aurora span:nth-child(2),:root[data-scheme=light] .aurora span:nth-child(3){opacity:.16}@keyframes drift-a{to{transform:translate3d(10vw,8vh,0) scale(1.12)}}@keyframes drift-b{to{transform:translate3d(-12vw,12vh,0) scale(1.18)}}@keyframes drift-c{to{transform:translate3d(8vw,-10vh,0) scale(.9)}}.app{position:relative;z-index:1;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.content{flex:1;width:100%;max-width:520px;margin:0 auto;padding:var(--s-3) var(--s-4) calc(96px + env(safe-area-inset-bottom))}.stagger>*{opacity:0;animation:rise .5s var(--ease) forwards}.stagger>*:nth-child(1){animation-delay:.02s}.stagger>*:nth-child(2){animation-delay:.07s}.stagger>*:nth-child(3){animation-delay:.12s}.stagger>*:nth-child(4){animation-delay:.17s}.stagger>*:nth-child(5){animation-delay:.22s}.stagger>*:nth-child(6){animation-delay:.27s}.stagger>*:nth-child(7){animation-delay:.32s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.brandbar{display:flex;align-items:center;justify-content:space-between;padding:var(--s-2) var(--s-1) var(--s-4)}.wordmark{display:flex;align-items:center;gap:9px;font-size:19px;font-weight:700;letter-spacing:-.4px}.wordmark-dot{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));color:#fff;box-shadow:var(--shadow-brand)}.brandbar-status{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--r-full);border:1px solid var(--glass-line);background:var(--glass);font-size:12px;font-weight:600;color:var(--tg-hint-color)}.brandbar-status .dot{width:6px;height:6px;border-radius:50%;background:var(--tg-hint-color)}.brandbar-status.on{color:var(--success);border-color:#34d3994d}.brandbar-status.on .dot{background:var(--success);box-shadow:0 0 0 3px #34d3992e;animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 6px #34d3990d}}.section-title{font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--tg-hint-color);margin:var(--s-5) 0 var(--s-3)}.hint{color:var(--tg-hint-color);font-size:13px;line-height:1.55;margin:var(--s-4) var(--s-2) 0}.card{border:1px solid var(--glass-line);border-radius:var(--r-lg);padding:var(--s-2) var(--s-4);margin-bottom:var(--s-3);background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-soft)}.hero{position:relative;overflow:hidden;border:1px solid var(--glass-line);border-radius:var(--r-lg);padding:var(--s-5) var(--s-4);margin-bottom:var(--s-3);background:var(--glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:var(--shadow-soft);text-align:center}.hero:before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent)}.hero-inner{display:flex;flex-direction:column;align-items:center;gap:var(--s-3)}.ring{position:relative;width:176px;height:176px}.ring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.ring circle{fill:none;stroke-linecap:round}.ring .track{stroke:var(--glass-line)}.ring .value{stroke:url(#ring-gradient);filter:drop-shadow(0 0 10px rgba(124,92,255,.5));transition:stroke-dashoffset 1.1s var(--ease)}.ring-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.ring-number{font-size:54px;font-weight:700;line-height:1;letter-spacing:-2.5px;font-variant-numeric:tabular-nums;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));-webkit-background-clip:text;background-clip:text;color:transparent}.ring-unit{font-size:13px;font-weight:500;color:var(--tg-hint-color)}.hero-caption{font-size:14px;color:var(--tg-hint-color)}.hero-caption b{color:var(--tg-text-color);font-weight:600}.hero-shield{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;border:1px solid var(--brand-line);background:radial-gradient(circle at 50% 30%,var(--brand-soft),transparent 70%);color:var(--brand)}.btn,.btn-secondary{display:flex;align-items:center;justify-content:center;gap:var(--s-2);width:100%;padding:16px var(--s-4);border:none;border-radius:var(--r-md);font:inherit;font-size:16px;font-weight:650;letter-spacing:-.2px;text-decoration:none;cursor:pointer;transition:transform .16s var(--spring),opacity .14s var(--ease)}.btn{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--brand-from),var(--brand-mid) 55%,var(--brand-to));color:#fff;box-shadow:var(--shadow-brand)}.btn:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:skew(-20deg);animation:sheen 4.5s ease-in-out infinite}@keyframes sheen{0%,62%{left:-60%}92%,to{left:130%}}.btn-secondary{border:1px solid var(--glass-line);background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--tg-text-color)}.btn:active,.btn-secondary:active{transform:scale(.975)}.btn:disabled,.btn-secondary:disabled{opacity:.45;box-shadow:none;cursor:default;transform:none}.btn:disabled:after{display:none}.btn+.btn,.btn+.btn-secondary,.btn-secondary+.btn,.btn-secondary+.btn-secondary{margin-top:var(--s-2)}.btn-ghost{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--tg-hint-color)}.tariff{position:relative;display:flex;align-items:center;gap:var(--s-3);width:100%;padding:var(--s-4);margin-bottom:var(--s-2);border:1.5px solid var(--glass-line);border-radius:var(--r-md);background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--tg-text-color);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s var(--ease),background .2s var(--ease),transform .16s var(--spring)}.tariff:active{transform:scale(.985)}.tariff.selected{border-color:var(--brand-line);background:linear-gradient(135deg,var(--brand-soft),transparent 60%),var(--glass-strong)}.tariff-check{flex:0 0 auto;display:grid;place-items:center;width:24px;height:24px;border:2px solid var(--glass-line);border-radius:50%;color:#fff;transition:all .2s var(--spring)}.tariff.selected .tariff-check{border-color:transparent;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));box-shadow:0 3px 10px #7c5cff66}.tariff-check svg{opacity:0;transform:scale(.4);transition:all .2s var(--spring)}.tariff.selected .tariff-check svg{opacity:1;transform:scale(1)}.tariff-body{flex:1;min-width:0}.tariff-title{display:flex;align-items:center;gap:7px;font-size:16px;font-weight:650;letter-spacing:-.2px}.tariff-sub{display:block;margin-top:2px;font-size:13px;color:var(--tg-hint-color)}.tariff-price{text-align:right;white-space:nowrap}.tariff-price b{font-size:18px;font-weight:700;letter-spacing:-.4px;font-variant-numeric:tabular-nums}.tariff-old{display:block;font-size:12px;color:var(--tg-hint-color);text-decoration:line-through;opacity:.75}.badge{padding:3px 8px;border-radius:var(--r-full);background:linear-gradient(135deg,var(--brand-from),var(--brand-to));color:#fff;font-size:9.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.rows{display:flex;flex-direction:column}.row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:13px 0;border-bottom:1px solid var(--glass-line);font-size:15px}.row:last-child{border-bottom:none}.row-key{color:var(--tg-hint-color)}.row-val{font-weight:650;text-align:right;letter-spacing:-.2px}.segmented{display:flex;gap:4px;padding:4px;margin-bottom:var(--s-4);border:1px solid var(--glass-line);border-radius:var(--r-md);background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow-x:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{flex:1 0 auto;padding:10px 15px;border:none;border-radius:13px;background:transparent;color:var(--tg-hint-color);font:inherit;font-size:14px;font-weight:550;white-space:nowrap;cursor:pointer;transition:all .22s var(--ease)}.segmented button.active{background:linear-gradient(135deg,var(--brand-from),var(--brand-to));color:#fff;font-weight:650;box-shadow:0 4px 14px #7c5cff52}.qr-card{display:flex;flex-direction:column;align-items:center;gap:var(--s-3);padding:var(--s-4);margin-bottom:var(--s-3);border:1px solid var(--glass-line);border-radius:var(--r-lg);background:var(--glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-soft)}.qr-frame{position:relative;padding:15px;border-radius:20px;background:#fff;line-height:0;box-shadow:0 8px 26px #00000038}.qr-frame canvas{display:block;max-width:100%;height:auto}.key-row{display:flex;align-items:center;gap:var(--s-2);width:100%;padding:12px 14px;border:1px solid var(--glass-line);border-radius:var(--r-sm);background:var(--glass)}.key-text{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--tg-hint-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{flex:0 0 auto;display:grid;place-items:center;width:36px;height:36px;border:none;border-radius:11px;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));color:#fff;cursor:pointer;box-shadow:0 3px 12px #7c5cff59;transition:transform .16s var(--spring)}.icon-btn:active{transform:scale(.9)}.steps{list-style:none;counter-reset:step;margin:var(--s-2) 0;padding:0}.steps li{position:relative;counter-increment:step;padding:0 0 var(--s-4) var(--s-5);font-size:14px;line-height:1.55}.steps li:before{content:counter(step);position:absolute;left:0;top:1px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));color:#fff;font-size:11px;font-weight:700}.steps li:not(:last-child):after{content:"";position:absolute;left:10.5px;top:27px;bottom:6px;width:1.5px;background:linear-gradient(var(--brand-line),transparent)}.steps li:last-child{padding-bottom:0}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--glass-line);background:color-mix(in srgb,var(--tg-bg-color) 82%,transparent);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4)}.tabbar button{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px 9px;border:none;background:none;color:var(--tg-hint-color);font:inherit;font-size:10px;font-weight:550;cursor:pointer;transition:color .22s var(--ease)}.tabbar button.active{color:var(--brand)}.tabbar button.active:before{content:"";position:absolute;top:0;left:50%;width:26px;height:2.5px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,var(--brand-from),var(--brand-to));transform:translate(-50%);animation:tab-in .3s var(--spring)}@keyframes tab-in{0%{width:0;opacity:0}}.tabbar svg{transition:transform .24s var(--spring)}.tabbar button.active svg{transform:translateY(-1px) scale(1.08)}.center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-4);min-height:72vh;padding:var(--s-5);text-align:center}.center-icon{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;border:1px solid var(--glass-line);background:var(--glass);color:var(--brand);font-size:30px}.center-text{max-width:300px;font-size:15px;color:var(--tg-hint-color)}.skeleton{border-radius:var(--r-lg);background:linear-gradient(100deg,var(--glass) 30%,var(--glass-strong) 50%,var(--glass) 70%);background-size:220% 100%;animation:shimmer 1.5s infinite linear}@keyframes shimmer{to{background-position:-220% 0}}.skeleton-hero{height:290px;margin-bottom:var(--s-3)}.skeleton-row{height:56px;margin-bottom:var(--s-2);border-radius:var(--r-md)}.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));z-index:40;max-width:calc(100vw - 32px);padding:12px 20px;border:1px solid var(--glass-line);border-radius:var(--r-full);background:#10121beb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#fff;font-size:14px;font-weight:550;text-align:center;box-shadow:0 10px 32px #00000059;transform:translate(-50%);animation:toast-in .3s var(--spring)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,14px) scale(.94)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.stagger>*{opacity:1}}.row-when{display:block;margin-top:1px;font-size:12px;opacity:.65}.burst{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-5);text-align:center;background:color-mix(in srgb,var(--tg-bg-color) 78%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);animation:burst-in .28s var(--ease)}@keyframes burst-in{0%{opacity:0}}.burst-stage{position:relative;display:grid;place-items:center;width:200px;height:200px;margin-bottom:var(--s-3)}.burst-check{width:118px;height:118px;overflow:visible}.burst-ring,.burst-tick{fill:none;stroke-linecap:round;stroke-linejoin:round}.burst-ring{stroke:var(--brand);stroke-width:3;stroke-dasharray:202;stroke-dashoffset:202;animation:draw-ring .55s var(--ease) forwards;filter:drop-shadow(0 0 12px rgba(124,92,255,.45))}.burst-tick{stroke:var(--success);stroke-width:5.5;stroke-dasharray:44;stroke-dashoffset:44;animation:draw-tick .34s var(--ease) .42s forwards;filter:drop-shadow(0 0 10px rgba(52,211,153,.5))}@keyframes draw-ring{to{stroke-dashoffset:0}}@keyframes draw-tick{to{stroke-dashoffset:0}}.burst-particle{position:absolute;border-radius:50%;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));opacity:0;animation:fly .85s var(--ease) var(--delay) forwards}@keyframes fly{0%{opacity:0;transform:translate(0) scale(.4)}35%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.7)}}.burst-title{font-size:22px;font-weight:700;letter-spacing:-.5px;animation:rise .45s var(--ease) .5s both}.burst-subtitle{max-width:280px;font-size:15px;color:var(--tg-hint-color);animation:rise .45s var(--ease) .6s both}
