:root{--brand-primary: var(--tg-theme-button-color, #2481cc);--brand-on-primary: var(--tg-theme-button-text-color, #ffffff);--brand-bg: var(--tg-theme-secondary-bg-color, #eef0f4);--brand-card: var(--tg-theme-bg-color, #ffffff);--brand-text: var(--tg-theme-text-color, #14161a);--brand-hint: var(--tg-theme-hint-color, #70757c);--danger: #e04545;--radius-card: 18px;--radius-control: 13px;--shadow-card: 0 1px 2px rgb(0 0 0 / 4%), 0 4px 16px rgb(0 0 0 / 4%)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--brand-bg);color:var(--brand-text);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;transition:transform .12s ease,opacity .15s ease,background-color .15s ease,color .15s ease}button:active:not(:disabled){transform:scale(.97)}h1,h2,h3{letter-spacing:-.01em}.page{padding:14px 16px 92px;max-width:480px;margin:0 auto;animation:page-in .22s ease}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.card{background:var(--brand-card);border-radius:var(--radius-card);padding:16px;margin-bottom:12px;box-shadow:var(--shadow-card)}.balance-card{position:relative;overflow:hidden;background:radial-gradient(120% 160% at 100% 0%,rgb(255 255 255 / 18%) 0%,transparent 55%),linear-gradient(135deg,var(--brand-primary) 0%,color-mix(in srgb,var(--brand-primary) 78%,#000) 100%);color:var(--brand-on-primary);border-radius:22px;padding:22px 20px;margin-bottom:12px;box-shadow:0 8px 24px color-mix(in srgb,var(--brand-primary) 35%,transparent),var(--shadow-card)}.balance-card .label{font-size:13px;letter-spacing:.02em;text-transform:uppercase;opacity:.8}.balance-card .amount{font-size:clamp(28px,9.5vw,42px);font-weight:800;line-height:1.15;margin:6px 0 10px;font-variant-numeric:tabular-nums}.balance-card .percent{display:inline-block;font-size:13px;font-weight:600;background:#ffffff38;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:999px;padding:4px 12px}.tenant-header{display:flex;align-items:center;gap:10px;margin:4px 0 14px}.tenant-header img{width:38px;height:38px;border-radius:12px;object-fit:cover}.tenant-header .name{font-size:18px;font-weight:700}.level-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;gap:8px}.level-name{font-weight:600;text-transform:capitalize}.progress-track{height:8px;background:var(--brand-bg);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,color-mix(in srgb,var(--brand-primary) 70%,#fff) 0%,var(--brand-primary) 100%);border-radius:999px;transition:width .5s cubic-bezier(.22,1,.36,1)}.progress-hint{font-size:12px;color:var(--brand-hint);margin-top:7px}.qr-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 16px}.qr-card svg{background:#fff;border-radius:14px;padding:10px;box-shadow:inset 0 0 0 1px #0000000d}.qr-card .hint{font-size:13px;color:var(--brand-hint)}.txn{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid color-mix(in srgb,var(--brand-hint) 14%,transparent)}.txn:last-child{border-bottom:none}.txn .meta{font-size:12px;color:var(--brand-hint);margin-top:3px}.txn .delta{font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.txn .delta.plus{color:#17a15a}.txn .delta.minus{color:#e04545}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:color-mix(in srgb,var(--brand-card) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid color-mix(in srgb,var(--brand-hint) 15%,transparent);padding-bottom:env(safe-area-inset-bottom);z-index:20}.bottom-nav a,.bottom-nav .nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 0 11px;font-size:11.5px;font-weight:500;color:var(--brand-hint);text-decoration:none;background:none;border:none;transition:color .15s ease}.bottom-nav a.active,.bottom-nav .nav-btn.active{color:var(--brand-primary);font-weight:700}.bottom-nav .icon{display:block;font-size:21px;margin-bottom:2px;transition:transform .15s ease}.bottom-nav a.active .icon,.bottom-nav .nav-btn.active .icon{transform:translateY(-1px) scale(1.08)}.skeleton{background:linear-gradient(90deg,color-mix(in srgb,var(--brand-hint) 12%,var(--brand-bg)) 25%,var(--brand-card) 50%,color-mix(in srgb,var(--brand-hint) 12%,var(--brand-bg)) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:14px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.centered{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:24px}.centered .emoji{font-size:52px;filter:drop-shadow(0 4px 10px rgb(0 0 0 / 10%))}.lang-switch{display:flex;gap:8px}.lang-switch button{flex:1;padding:11px;border-radius:var(--radius-control);border:1.5px solid color-mix(in srgb,var(--brand-hint) 20%,transparent);background:var(--brand-card);color:var(--brand-text);font-size:15px}.lang-switch button.active{background:var(--brand-primary);color:var(--brand-on-primary);border-color:var(--brand-primary)}.field{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid color-mix(in srgb,var(--brand-hint) 14%,transparent)}.field:last-child{border-bottom:none}.field .k{color:var(--brand-hint)}button.retry{padding:11px 26px;border-radius:var(--radius-control);border:none;background:var(--brand-primary);color:var(--brand-on-primary);font-size:15px;font-weight:600}.mode-switch{position:sticky;top:8px;z-index:30;display:flex;gap:4px;margin:10px auto 0;padding:4px;background:color-mix(in srgb,var(--brand-card) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:14px;max-width:448px;width:calc(100% - 32px);box-shadow:var(--shadow-card)}.mode-switch button,.seg-control button{flex:1;padding:9px;border-radius:10px;border:none;background:transparent;color:var(--brand-text);font-size:14px}.mode-switch button.active,.seg-control button.active{background:var(--brand-primary);color:var(--brand-on-primary);font-weight:600;box-shadow:0 2px 8px color-mix(in srgb,var(--brand-primary) 40%,transparent)}.seg-control{display:flex;gap:4px;padding:4px;background:var(--brand-bg);border-radius:14px}.big-input{width:100%;padding:14px;font-size:32px;font-weight:700;text-align:center;border:1.5px solid transparent;border-radius:var(--radius-control);background:var(--brand-bg);color:var(--brand-text);outline:none;font-variant-numeric:tabular-nums;transition:border-color .15s ease,box-shadow .15s ease}.big-input::placeholder{color:color-mix(in srgb,var(--brand-hint) 60%,transparent)}.big-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 18%,transparent)}.big-input.invalid,.big-input.invalid:focus{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 16%,transparent)}.card.invalid{box-shadow:var(--shadow-card),inset 0 0 0 1.5px var(--danger)}.primary-btn.invalid{box-shadow:0 0 0 2px var(--danger)}.field-error{margin:0;font-size:13px;text-align:center;color:var(--danger)}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 20px;border-radius:15px;border:none;background:linear-gradient(180deg,color-mix(in srgb,var(--brand-primary) 92%,#fff) 0%,var(--brand-primary) 100%);color:var(--brand-on-primary);font-size:16px;font-weight:650;letter-spacing:-.01em;box-shadow:0 1px #ffffff38 inset,0 6px 18px -4px color-mix(in srgb,var(--brand-primary) 55%,transparent);transition:transform .14s cubic-bezier(.2,.8,.2,1),box-shadow .18s ease,filter .15s ease}.primary-btn:active:not(:disabled){transform:translateY(1px) scale(.99);filter:brightness(.97)}.primary-btn.soft{background:color-mix(in srgb,var(--brand-primary) 12%,var(--brand-card));color:var(--brand-primary);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--brand-primary) 32%,transparent)}.primary-btn:disabled{opacity:.42;box-shadow:none}.ghost-btn{padding:12px 22px;border-radius:13px;border:none;background:transparent;color:var(--brand-hint);font-size:15px;font-weight:500}.sub-hero{position:relative;overflow:hidden;border-radius:20px;padding:20px;margin-bottom:14px;color:#fff;background:linear-gradient(140deg,#1c1830,#322a52);box-shadow:var(--shadow-card)}.sub-hero.trial{background:linear-gradient(140deg,var(--brand-primary) 0%,color-mix(in srgb,var(--brand-primary) 62%,#1a1030) 100%)}.sub-hero.expired{background:linear-gradient(140deg,#3a2230,#2a1a20)}.sub-hero:after{content:"";position:absolute;top:-50%;right:-15%;width:60%;height:180%;background:radial-gradient(closest-side,rgb(255 255 255 / 14%),transparent)}.sub-hero-label{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.85}.sub-hero-plan{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:3px 0 2px}.sub-hero-days{font-size:14px;opacity:.9}.plan-card{position:relative;background:var(--brand-card);border-radius:18px;padding:18px;margin-bottom:12px;box-shadow:var(--shadow-card);border:1.5px solid transparent}.plan-card.current{border-color:color-mix(in srgb,var(--brand-primary) 45%,transparent)}.plan-badge{position:absolute;top:14px;right:14px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--brand-primary);background:color-mix(in srgb,var(--brand-primary) 12%,transparent);padding:4px 9px;border-radius:999px}.plan-name{font-size:19px;font-weight:800;letter-spacing:-.02em;margin-bottom:10px}.plan-feats{list-style:none;padding:0;margin:0 0 14px;display:flex;flex-direction:column;gap:6px}.plan-feats li{font-size:14px;color:var(--brand-hint)}.plan-feats b{color:var(--brand-text)}.row-btn{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:14px 10px;background:none;border:none;border-bottom:1px solid color-mix(in srgb,var(--brand-hint) 14%,transparent);color:var(--brand-text);font-size:15px;text-align:left}.row-btn:last-child{border-bottom:none}.chip{padding:9px 15px;border-radius:999px;border:1px solid color-mix(in srgb,var(--brand-hint) 18%,transparent);background:color-mix(in srgb,var(--brand-hint) 6%,var(--brand-card));color:var(--brand-text);font-size:13px;font-weight:550;transition:transform .14s ease,background .15s ease}.chip:active:not(:disabled){transform:scale(.96)}.chip.active{background:var(--brand-primary);color:var(--brand-on-primary);border-color:transparent;box-shadow:0 4px 12px -3px color-mix(in srgb,var(--brand-primary) 50%,transparent)}.chip:disabled{opacity:.45}.md-preview{border:1.5px solid color-mix(in srgb,var(--brand-hint) 18%,transparent);border-radius:var(--radius-control);padding:10px 14px;min-height:90px;font-size:15px}.md-preview p{margin:6px 0}.md-preview code{background:var(--brand-bg);border-radius:5px;padding:1px 5px;font-size:13px}.md-preview a{color:var(--brand-primary)}.numpad-display{text-align:center;font-size:40px;font-weight:800;font-variant-numeric:tabular-nums;padding:10px 0 14px;letter-spacing:-.01em;min-height:64px}.numpad-display.empty{color:color-mix(in srgb,var(--brand-hint) 55%,transparent)}.numpad-currency{font-size:17px;font-weight:600;color:var(--brand-hint)}.numpad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.numpad-key{padding:16px 0;font-size:22px;font-weight:600;border:none;border-radius:14px;background:var(--brand-bg);color:var(--brand-text);font-variant-numeric:tabular-nums}.numpad-key:active{background:color-mix(in srgb,var(--brand-primary) 18%,var(--brand-bg))}.numpad-key.muted{color:var(--brand-hint);font-size:20px}.balance-card .card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.balance-card .card-brand{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:700;min-width:0}.balance-card .card-level{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#ffffff38;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:999px;padding:4px 11px;white-space:nowrap}.balance-card:after{content:"";position:absolute;top:-60%;right:-20%;width:65%;height:160%;background:radial-gradient(closest-side,rgb(255 255 255 / 14%),transparent);transform:rotate(18deg);pointer-events:none}.txn-icon{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}.txn-icon.plus{background:color-mix(in srgb,#17a15a 14%,var(--brand-card))}.txn-icon.minus{background:color-mix(in srgb,#e04545 12%,var(--brand-card))}.txn-left{display:flex;align-items:center;gap:11px;min-width:0}.icon-chip{padding:8px;width:38px;display:inline-flex;align-items:center;justify-content:center}.bottom-nav .icon{display:flex;align-items:center;justify-content:center;height:22px;margin:0}.bottom-nav a.active .icon svg,.bottom-nav .nav-btn.active .icon svg{transform:translateY(-1px) scale(1.06)}.warn-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;width:calc(100% - 32px);margin:12px 16px -4px;padding:11px 14px;border:none;border-radius:14px;text-align:left;font-size:13px;line-height:1.35;color:#7a5b00;background:#fdf3d6}.warn-banner b{white-space:nowrap;font-size:12.5px}.warn-banner.danger{color:#8a1f1f;background:#fde3e3}.balance-card .card-ttl{margin-top:10px;font-size:11.5px;opacity:.75;padding-right:72px}.balance-card .card-chip{flex-shrink:0;width:26px;height:19px;border-radius:5px;background:linear-gradient(135deg,#ffffffd9,#ffffff73);box-shadow:inset 0 0 0 1px #00000014;position:relative}.balance-card .card-chip:before,.balance-card .card-chip:after{content:"";position:absolute;left:4px;right:4px;height:1px;background:#0000002e}.balance-card .card-chip:before{top:6px}.balance-card .card-chip:after{bottom:6px}.balance-card .card-tenant-logo{flex-shrink:0;width:26px;height:26px;border-radius:8px;object-fit:cover;background:#ffffff1f;box-shadow:0 1px 4px #00000040}.balance-card .card-issuer{position:absolute;right:18px;bottom:14px;font-size:18px;font-weight:800;letter-spacing:.005em;line-height:1;color:#ffffff94;text-shadow:0 1px 0 rgb(255 255 255 / 15%);pointer-events:none;-webkit-user-select:none;user-select:none}.balance-card .card-issuer i{font-style:normal;color:color-mix(in srgb,var(--brand-lime, #d6ff3f) 75%,transparent)}.period-pick{display:flex;gap:8px;margin:10px 0 4px}.period-opt{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:11px 8px;border-radius:var(--radius-control);border:1.5px solid color-mix(in srgb,var(--brand-hint) 22%,transparent);background:var(--brand-card);color:var(--brand-text)}.period-opt b{font-size:20px}.period-opt small{font-size:11px;color:var(--brand-hint)}.period-opt .period-label{font-size:11.5px;color:var(--brand-hint)}.period-opt.active{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary) inset}.period-opt .save-badge{position:absolute;top:-9px;right:8px;background:#1d9e55;color:#fff;font-size:10px;font-weight:700;border-radius:999px;padding:2px 8px}.save-hint{font-size:12px;color:#1d9e55;margin:2px 2px 6px}.discount-card{display:flex;flex-direction:column;gap:6px}.discount-title{font-weight:700;font-size:15px}.discount-sub{margin:0;font-size:12.5px;line-height:1.45;color:var(--brand-hint)}.discount-row{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:8px;padding:12px;border-radius:var(--radius-control);background:var(--brand-bg);text-align:center}.discount-label{font-size:11px;color:var(--brand-hint)}.discount-value{font-size:24px;font-weight:800;font-variant-numeric:tabular-nums}.discount-value.accent{color:var(--brand-primary)}.discount-arrow{font-size:20px;color:var(--brand-hint)}.discount-formula{text-align:center;font-size:11.5px;color:var(--brand-hint);margin-top:4px}.discount-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:10px}.discount-cell{border-radius:10px;padding:7px 2px;text-align:center;background:var(--brand-bg)}.discount-cell.on{background:color-mix(in srgb,var(--brand-primary) 16%,transparent);box-shadow:0 0 0 1.5px var(--brand-primary) inset}.discount-cell b{display:block;font-size:12.5px}.discount-cell small{font-size:10px;color:var(--brand-hint)}.discount-note{margin:8px 0 0;font-size:11px;line-height:1.45;color:var(--brand-hint)}
